密码系统的安全性不是取决于算法的保密性,而是取决于密钥的保密性,即密码算法可以公开,而密钥需要保密。
私钥管理(单钥管理)
需要考虑的问题是,如何生成、传输、保存密钥。
密钥分配
1.人工信道
2.非人工信道
大致意思是已经存在一个密钥供双方使用,双方通过此密钥对新密钥进行加密然后 传送给对方或通过第三方传(密钥分配中心KDC)送给双方。
密钥协商
是双发通过交互,协商出一个密钥
传送门:模运算规则
但是此协议可能会存在中间人攻击,解决方法就是对发送信息进行签名。
秘密共享
密钥存储
公钥管理
在公钥加密算法中,发送者需要用接收者的公钥进行加密;
在数字签名算法中,接收者需要用发送者的公钥进行验证。
公钥管理的重点:如何有效的将用户的公钥发布出去,而且保证公钥的真实有效性。
1.公开发布
用户将自己的公钥发给每一用户,或向某一团体广播。但任何人都可伪造这种公开发布。
2.公钥目录表:
此表由可信组织管理
用户名:用户公钥
但攻击者如果得到组织管理权限就可伪造目录表。
3.公钥管理结构在线管理
每次密钥的获得都由公钥管理机构查询并认证发布,但需要此机构一直在线