评价保密系统的5条标准,即保密度、密钥量、加密操作的复杂性、误差传播和消息扩展。
密码学发展大致分为三个阶段:
古典密码时期、近代密码时期、现代密码时期
古典密码时期、近代密码时期都是传统密码
密码学发展阶段
古典密码时期
起始时间:从古代到19世纪末,长达几千年。
技术工具:手工。
通信手段:信使。
密码体制:纸、笔或者简单器械实现的代换及置换,是一 种艺术(富有创造性的方式、方法)。
典型密码:凯撒密码、维吉尼亚密码等。
近代密码时期
起始时间:从20世纪初到20世纪50年代,即一战及二战时期。
技术工具:机械设备。
通信手段:电报。
密码体制:手工或电动机械实现复杂的代换及置换,仍是 一门艺术。
典型密码:Vernam密码、转轮密码等。
现代密码时期
起始时间:从1949年至今。
技术工具:计算机。(针对二进制的比特位,而不是字符)
通信手段:无线通信、有线通信、计算网络等。
密码体制:对称密码(分组密码、序列密码)和非对称密码 (公钥密码) ,有坚实的数学理论基础,成为一门科学。
典型密码:DES、AES、RC4、RSA 、SHA等。
1949年Shannon(香农)发表题为《保密系统的通信理论》,为密码 系统建立了理论基础,从此密码学成了一门科学。(第一次 飞跃)
1976年后,美国数据加密标准(DES)的公布使密码学的研 究公开,密码学得到了迅速发展(里程碑的事件)
1976年,Diffe和Hellman发表了《密码学的新方向》,提出了 一种新的密码设计思想,从而开创了公钥密码学的新纪元。 (第二次飞跃)
1978年由Rivest、Shamire和Adleman 首先提出第一个实用的公 钥密码体制RSA,使公钥密码的研究进入了快速发展阶段。
里程碑的事件)
密码学
密码学是结合数学、计算机科学、电子与通信等诸多学科于一体的交叉学科,研究信息及信息系统安全的科学。
密码编码学(Cryptography):研究如何对信息编码以 实现信息和通信安全的科学。
密码分析学(Cryptanalytics):研究如何破解或攻击 受保护的信息的科学。
密码分析俗称为密码破译。
解密和密码破译都是设法将密文还原成明文的过程, 但具备的条件是不同的。
现代密码体制
密码体制的安全性是依赖密钥的安全性,密码算法是公开 的。
对称密码体制(Symmetric Syetem)
加密密钥和解密密钥相同,或者虽然不相同,但由其中一个可以很容易地推出另一
个,又称传统密码体制、秘密密钥体制或单密钥体制。从密钥使用方式上分为分组密码和序列密码。
非对称密码体制(Asymmetric System)
加密密钥和解密密钥不相同,并且从一个很难推出另一个,又称公钥密码体制。
公钥密码体制用一个密钥进行加密(验证), 而用另一个进行解密(签名)。其中一个密钥可以公开,成为公开密钥(pulic key),简称公钥;另一个密钥需要秘密保存,称为私有密钥(private key),简称私钥。
公钥密码体制的保密系统:公钥加密,私钥解密
密码攻击类型(针对对称密码体制)
抵御这五种类型的攻击是密码算法的基本要求。
惟密文攻击
密码分析者除了拥有截获的密文外,没有其它可以利用的信息。
穷 举搜索法
已知明文攻击
密码分析者不仅掌握了相当数量的密文,还有一些已知的明-密文对可供利用。
选择明文攻击
密码分析者不仅能够获得一定数量的明-密文对,还可以选择任何明文并在使用同一未知密钥的情况下能得到相应的密文。
这种情况往往是密码分析者通过某种手段暂时控制加密机。
选择密文攻击
密码分析者能选择不同被加密的密文,并还可得到对应的明文,密码分析者的任务是推出密钥及其它密文对应 的明文。
这种情况往往是密码分析者通过某种手段暂时控制解密机。
选择文本攻击
它是选择明文攻击和选择密文攻击的组合,即密码分析者在掌握密码算法的前提下,不仅能够选择明文并得 到对应的密文,而且还能选择密文得到对应的明文.
这种 情况往往是密码分析者通过某种手段暂时控制加密机和解 密机。
攻击密码体制的常用方法
穷举攻击
抵御穷举攻击最好方法是有足够密钥空间
统计分析攻击
对抗 统计分析攻击的方法是设法使明文的统计特征尽可能地不 带入密文。
数学分析攻击
对抗这种攻击,应该选用具有坚实的数学基础和足够复杂的加密方法。
密码体制的安全性
无条件安全性
计算安全性,
也称为
实际安全
任何密码总有一天都会被破译的。
可证明安全性
通过有效的转化,将对密码体制的任何有效攻击归约到解一类已知难处理问题,即使用多项式归约技术形式化证明一种密码体制的安全性,称为可证明安全性。
复杂性理论
复杂性理论提供了一种分析不同密码技术和算法的计算复杂性的方法,对密码算法及技术进行对比,然后确定它们的安全性。
计算复杂性是密码分析技术中分析计算需求和研究破译密码的固有难度的基础。密码的强度是破译该密码所用的算法的计算复杂性决定的。
算法的计算复杂性由它所需的时间和空间量级来度量,其优点是独立于所用的系统并且使人们看到时间和空间的需求随输入的规模n而增长。
通常按时间T(或空间)复杂性对算法进行分类。
保密系统破译程度的划分(对称密码)
全部破译
攻击者找到密钥Key。彻底破译
全盘推导
攻击者找到一个替代算法, 在不知道密钥Key的情况下, 能够得到明文。基本破译
实例(或局部)推导
攻击者在特定条件下,从获 的密文中找出明文。部分破译
信息推导
攻击者获得一些有关密钥或明文的信 息。这些信息可能是密钥的几个位、有关明文格式的信等。可能破译