admin管理员组

文章数量:1561464

2023年12月12日发(作者:)

SH1算法、数字摘要与数字签名的应用

黎狸

一、 SHA1算法

1.算法简介

SHA-1(英语:Secure Hash Algorithm 1,中文名:安全散列算法1)是一种密码散列函数,美国国家安全局设计,并由美国国家标准技术研究所(NIST)发布为联邦数据处理标准(FIPS)。SHA-1可以生成一个被称为消息摘要的160位(20字节)散列值,散列值通常的呈现形式为40个十六进制数。

2. SHA1哈希算法流程

对于任意长度的明文,SHA1首先对其进行分组,使得每一组的长度为512位,然后对这些明文分组反复重复处理。

对于每个明文分组的摘要生成过程如下:

(1) 将512位的明文分组划分为16个子明文分组,每个子明文分组为32位。

(2) 申请5个32位的链接变量,记为A、B、C、D、E。

(3) 16份子明文分组扩展为80份。

(4) 80份子明文分组进行4轮运算。

(5) 链接变量与初始链接变量进行求和运算。

(6) 链接变量作为下一个明文分组的输入重复进行以上操作。

(7) 最后,5个链接变量里面的数据就是SHA1摘要。

二、数字摘要和数字签名的应用

数字签名把公钥加密技术和数字摘要结合起来,形成了实用的数字签名技术。

① 契约锁。基于标准的电子签名PKI标准,为政府、企业及个人用户提供可用性、稳定性及前瞻性的电子签署、数据存证及印章管理服务,支付宝,钉钉,蚂蚁金服,阿里云等多家企业与其合作。在欧洲大陆、拉丁美洲和亚洲,数字化签名是一种被广泛使用的电子化签名技术。

② 安全信息公告。

一些信息安全方面的组织会在其网站上发布一些关于安全漏洞的警告,这些警告信息是否真的是该组织发布,如何确认发布这些信息的网站没有被第三方篡改?

在这样的情况下,就可以使用数字签名,即该组织可以对警告信息的文件施加数字签名,这样一来世界上所有人就都可以验证警告信息的发布者是否合法。

③ 公钥证书。

在验证数字签名时我们需要合法的公钥,但是如何知道自己得到的公钥是否合法?我们可以将公钥当做消息,对它加上数字签名。像这样对公钥施加数字签名所得到的就是公钥证书。

本文标签: 数字签名摘要分组信息