现代密码学论文
院(系)名称理学院
专业班级计算131班学号********* 学生姓名王云英
摘要
现代密码学研究信息从发端到收端的安全传输和安全存储,是研究“知己知彼”的一门科学。
其核心是密码编码学和密码分析学。
前者致力于建立难以被敌方或对手攻破的安全密码体制,即“知己”,后者则力图破译敌方或对手已有的密码体制,即“知彼”。
人类有记载的通信密码始于公元前400年。
1881年世界上的第一个电话保密专利出现。
电报、无线电的发明使密码学成为通信领域中不可回避的研究课题。
现有的密码体制千千万万各不相同。
但是它们都可以分为私钥密码体制(如DES密码)和公钥密码(如公开密钥密码)。
前者的加密过程和脱密过程相同,而且所用的密钥也相同;后者,每个用户都有公开和秘密钥。
现代密码学是一门迅速发展的应用科学。
随着因特网的迅速普及,人们依靠它传送大量的信息,但是这些信息在网络上的传输都是公开的。
因此,对于关系到个人利益的信息必须经过加密之后才可以在网上传送,这将离不开现代密码技术。
PKI是一个用公钥概念与技术来实施和提供安全服务的具有普适性的安全基础设施。
PKI公钥基础设施的主要任务是在开放环境中为开放性业务提供数字签名服务。
现代密码学的算法研究
密码算法主要分为对称密码算法和非对称密码算法两大类。
对称加密算法指加密密钥和解密密钥相同,或知道密钥之一很容易推导得到另一个密钥。
通常情况下,对称密钥加密算法的加\解密速度非常快,因此,这类算法适用于大批量数据的场合。
这类算法又分为分组密码和流密码两大类。
1.1 分组密码
分组密码算法实际上就是密钥控制下,通过某个置换来实现对明文分组的加密变换。
为了保证密码算法的安全强度,对密码算法的要求如下。
1.分组长度足够大:当分组长度较小时,分组密码类似于古典的代替密码,它仍然保留了明文的统计信息,这种统计信息将给攻击者留下可乘之机,攻击者可以有效地穷举明文空间,得到密码变换本身。
2.密钥量足够大:分组密码的密钥所确定密码变换只是所有置换中极小一部分。
如果这一部分足够小,攻击者可以有效地穷举明文空间所确定所有的置换。
这时,攻击者就可以对密文进行解密,以得到有意义的明文。
3.密码变换足够复杂:使攻击者除了穷举法以外,找不到其他快捷的破译方法。
分组密码的优点:明文信息良好的扩展性,对插入的敏感性,不需要密钥同步,较强的适用性,适合作为加密标准。
分组密码的缺点:加密速度慢,错误扩散和传播。
分组密码将定长的明文块转换成等长的密文,这一过程在秘钥的控制之下。
使用逆向变换和同一密钥来实现解密。
对于当前的许多分组密码,分组大小是 64 位,但这很可能会增加。
明文消息通常要比特定的分组大小长得多,而且使用不同的技术或操作方式。
1.2流密码
流密码(也叫序列密码)的理论基础是一次一密算法,它是对称密码算法的一种,它的主要原理是:生成与明文信息流同样长度的随机密钥序列(如
Z=Z1Z2Z3…),使用此密钥流依次对明文(如X=X0X1X2...)进行加密,得到密文序列,解密变换是加密变换的逆过程。
根据Shannon的研究,这样的算法可以达到完全保密的要求。
但是,在现实生活中,生成完全随机的密钥序列是不可行的,因此只能生成一些类似随机的密钥序列,称之为伪随机序列。
流密码具有实现简单、便于硬件实施、加解密处理速度快、没有或只有有限的错误传播等特点,因此在实际应用中,特别是专用或机密机构中保持着优势,典型的应用领域包括无线通信、外交通信。
如果序列密码所使用的是真正随机方式的、与消息流长度相同的密钥流,则此时的序列密码就是一次一密的密码体制。
若能以一种方式产生一随机序列(密钥流),这一序列由密钥所确定,则利用这样的序列就可以进行加密,即将密钥、明文表示成连续的符号或二进制,对应地进行加密,加解密时一次处理明文中的一个或几个比特。
流密码研究内容集中在如下两方面:
(1)衡量密钥流序列好坏的标准:通常,密钥序列的检验标准采用Golomb的3点随机性公设,除此之外,还需做进一步局部随机性检验,包括频率检验、序列
检验、扑克检验、自相关检验和游程检验,以及反映序列不可预测性的复杂度测试等。
但是,究竟什么样的序列可以作为安全可靠的密钥序列,还是一个未知的问题。
(2)构造线性复杂度高、周期大的密钥流序列。
当前最常用的密钥序列产生器主要有:基于线性反馈移位寄存器的前馈序列产生器、非线性组合序列产生器、钟控序列产生器、基于分组密码技术的密钥生成器等。
2.1 Hash函数
HASH主要用于信息安全领域中加密算法,它把一些不同长度的信息转化成杂乱的128位的编码里,叫做HASH值. 也可以说,hash就是找到一种数据内容和数据存放地址之间的映射关系。
Hash算法在信息安全方面的应用主要体现在以下的3个方面:
1)文件校验:我们比较熟悉的校验算法有奇偶校验和CRC校验,这2种校验并没有抗数据篡改的能力,它们一定程度上能检测并纠正数据传输中的信道误码,但却不能防止对数据的恶意破坏。
MD5 Hash算法的"数字指纹"特性,使它成为目前应用最广泛的一种文件完整性校验和(Checksum)算法,不少Unix系统有提供计算md5 checksum的命令。
2)数字签名:Hash 算法也是现代密码体系中的一个重要组成部分。
由于非对称算法的运算速度较慢,所以在数字签名协议中,单向散列函数扮演了一个重要的角色。
对 Hash 值,又称"数字摘要"进行数字签名,在统计上可以认为与对文件本身进行数字签名是等效的。
而且这样的协议还有其他的优点。
3)鉴权协议:如下的鉴权协议又被称作"挑战--认证模式:在传输信道是可被侦听,但不可被篡改的情况下,这是一种简单而安全的方法。
3.1密码协议
所谓协议,就是两个或者两个以上的参与者为完成某项特定的任务而采取的一系列步骤。
密码协议的参与者可能是可以信任的人,也可能是攻击者。
在网络通信中最常用的基本的密码协议按照其完成的功能可以分成以下3类:
(1)密钥交换协议:参与协议的两个或者多个实体之间建立共享的秘密,例如在一次通信中所使用的会话密钥。
协议可以采用对称密码体制,也可以采用非对称密码体制,例如Diffie-Hellman密钥交换协议。
日本政府的密码研究与评估委员会推荐了3个密钥交换协议(DH、ECDH、PSEC-KEM )。
(2)认证协议:认证协议中包括实体认证(身份认证)协议、消息认证协议、数据源认证和数据目的认证协议等,用来防止假冒、篡改、否认等攻击。
NESSIE 工程中推荐了一个由法国的EcoleNormalSuperieure大学和电信公司提交的鉴别方案GPS。
(3)解决特殊问题的安全协议:解决特殊问题的安全协议有电子选举协议、电子钱币协议、安全多方计算协议等。
密码协议研究方面又被划分了3个研究小组:1.模型和定义小组,主要负责认证、密钥协商、零知识和身份认证的研究;2.安全计算小组,主要负责高效的多方计算协议、实用协议的可证明安全性和安全协议的无条件安全性研究;3.合理密码协议小组,主要负责密码协议模型的定义和合理参与者的多方计算问题研究。
学习现代密码学的感受
密码学充满了神秘性,让我对她产生了浓厚的兴趣和好奇。
最近的这次人类战争中,即二战,认识到密码和情报是一件事情。
而在当代密码学跟数学,计算机只是一个大背景,因为信息将会以网络为媒介,所以现代密码学更多的是以数字化的信息而非纸质为研究对象。
所以密码学归根结底是数学问题,计算能力是数学的一个方面,高性能的计算机可以成为国力的象征,分析情报就是一方面。
数学研究等一些自然基础学科的研究才是国家实力的坚定的基石,才是一个自然科学的学生的理想所在。
数学研究很广泛,而密码学涉及很有限,大多与计算机学科相关,如离散数学。
从数学的分类包括:数论、近世代数、矩阵论、域论。
以及其它结合较为紧密地理论:信息论、编码论、量子学、混沌论。
密码学还有许许多多这样的问题。
当前,密码学发展面临着挑战和机遇。
计算机网络通信技术的发展和信息时代的到来,给密码学提供了前所未有的发展机遇。
在密码理论、密码技术、密码保障、密码管理等方面进行创造性思维,去开辟密码学发展的新纪元才是我们的追求。
参考文献
[1] 朱文宇,孙琦. 计算机密码应用基础.北京:科学出版社,2000
[2] 杨义先,林须端.编码密码学.北京:人民邮电出版社.1992
[3] 万哲先.代数和编码.北京:高等教育出版社,2007
[4] 沈先溢.近代密码学.桂林:广西师范大学出版社,1998
[5] 沈先溢.组合密码学.杭州:浙江科学技术出版社,1992
[6] 卿斯汉.密码学与计算机网络安全.北京:清华大学出版社,2001
[7] 冯登国,裴定义.密码学导引.北京:科学出版社,2000。