原创 PlatON
导语:本课堂用通俗易懂的系列内容为大家呈现区块链与密码学领域相关知识。这里有知识也有故事,从感兴趣到有乐趣,全民课堂等你来学。
这个系列中的课程内容首先从区块链起源着手进行入门介绍,再延伸至区块链的相关技术原理与发展趋势,然后深入浅出地依次介绍在区块链中应用的各类密码学技术。欢迎大家订阅本公众号,持续进行学习。
【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链与密码学》授课讲义、教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系,我们将及时处理。】
11-01 密钥管理概述
| 密钥管理的重要性
所有的密码技术都依赖于密钥
现代密码体制要求加密算法是可以公开评估的,整个密码系统的安全性并不取决于对密码算法的保密或者是对加密设备等的保护。
决定整个密码体制安全性的因素将是密钥的保密性(“一切秘密予于密钥之中!”)。
密码算法可以公开,密码设备可以丢失,但它们都不危及密码体制的安全性;但一旦密钥丢失,非法用户将会有可能窃取信息。
在考虑密码系统的应用设计时,特别是在商用系统的设计时,需要解决的核心问题是密钥管理问题,而不是密码算法问题。例如:商用系统可以使用公开了的、经过大量评估分析认为抗攻击能力比较强的算法。
密钥的管理本身是一个很复杂的课题,而且是保证安全性的关键点。
| 密钥管理的概念
密钥管理是一门综合性的技术,涉及密钥的产生、检验、分发、传递、保管、使用、销毁的全部过程,还与密钥的行政管理制度以及人员的素质密切相关。
| 密钥管理的目的
维持系统中各实体之间的密钥关系,以抗击各种可能的威胁:
- 密钥的泄露
- 密钥或公钥的身份的真实性丧失
- 未经授权使用
| 密钥管理系统的要求
- 密钥难以被非法窃取;
- 在一定条件下获取了以前的密钥用处也很小;
- 密钥的分配和更换过程对用户是透明的。
| 密钥的组织结构
适应于对密钥管理系统的要求,现有的计算机网络系统与数据库系统的密钥管理系统的设计大都采用了层次化的密钥结构。
| 密钥的生成
对于一个密码体制,如何产生好的密钥是非常关键,密钥选择的不当将会极大地影响密码体制的安全性。好的密钥应当具有良好的随机性和密码特性(例如避免弱密钥的出现等)。
密钥的生成一般都首先通过密钥产生器借助于某种噪声源产生具有较好统计分布特性的序列,然后再对这些序列进行各种随机性检验以确保其具有较好的密码特性。
不向层次的密钥产生的方式一般也不相同:
- 主密钥:虽然一般它的密钥量很小,但作为整个密码系统的核心,需要严格保证它的随机性,避免可预测性。因此,主密钥通常采用掷硬币、骰子或使用其它物理噪声发生器的方法来产生。
- 二级密钥:可以采用伪随机数生成器、安全算法(例如,可以在主机主密钥的控制下由ANSI X9.17所给出的算法产生)或电子学噪声源产生。
- 会话密钥:可以在加密密钥的控制下通过安全算法动态地产生。
今天的课程就到这里啦,下节课我们将学习密钥管理的原则,敬请期待!
同学们可以关注PlatON公众号,持续学习哦。我们下节课见啦。
本文转载自https://mp.weixin.qq.com/s/ikolNaIGfxqPLo8Qcy5qCw