加密算法、数字签名与数字证书详解
1. 加密算法的现状与迁移需求
在加密领域,一些算法被报告存在弱点,但这并不意味着这些算法突然就不安全了。不过,这些报告确实表明有必要迁移到其他替代算法。同时,这也凸显了设计身份系统时的重要性,要确保加密功能能够轻松更换,并且定期审查使用加密技术的系统及其相关策略。
例如,SHA - 3 是 2015 年发布的最新 NIST 标准,它在结构上与 SHA 家族的早期算法不同。虽然 NIST 并未撤回 SHA - 2,但在应用中,SHA - 3 可以直接替代 SHA - 2。
2. 数字签名
数字签名是一种重要的加密技术,它可以通过反向使用公钥密码系统来实现。具体来说,如果用私钥对文档进行加密,那么任何人都可以使用匹配的公钥进行解密。只要私钥得到妥善保管,这就可以作为签署者加密该文档的有力证据,从而起到签名的作用。
然而,这种方法存在一些缺点:
- 签署后的文档除非用公钥解密,否则无法理解其内容。这在只偶尔需要检查签名的应用中很不方便。
- 签名和文档不可分离,无法单独发送签名。
为了克服这些缺点,可以将公钥密码学和消息摘要相结合。具体操作步骤如下:
1. 为要签署的文档创建消息摘要。由于消息摘要在特定的加密约束下对特定文档是唯一的,所以可以对摘要进行签名,而不是对整个消息进行签名。
2. 签名后,消息仍然保持明文形式,并且签名和消息可以分离。
3. 验证签名时,使用发送者的公钥解密消息摘要,然后对签署的消息应用相同的消息摘要算法。如果两个消息摘要匹配,则说明消息与发送者签署的消息相同。
通过这种方式生成的数字签名,不
超级会员免费看
订阅专栏 解锁全文
1465

被折叠的 条评论
为什么被折叠?



