- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
密码学中加密算法的研究和实现
密码学中加密算法的研究和实现
密码学是一门古老而深奥的学科,是研究计算机信息加密、解密及其变换的科学,是数学和计算机的交叉学科,也是一门新兴的学科[1]。早在四千年前,古埃及人就开始使用密码来保密传递消息。两千多年前,罗马国王Julius Caesar(恺撒)就开始使用目前称为“恺撒密码”的密码系统。长期以来,密码学仅在很小的范围内使用,直到20世纪40年代以后才有重大突破和发展。随着计算机网络和通信技术的发展,密码学得到前所未有的重视并迅速普及发展起来,深入到数据处理过程的各个环节。 nbsp; 密码学相关科学大致可以分为3个方面:密码学(Cryptology)是研究信息系统安全保密的科学;密码编码学(Cryptography)是研究对信息进行编码,实现对信息隐藏;密码分析学(Crypt analytics)是研究加密消息的破译或消息伪造。其发展经过3个阶段: nbsp; 第一阶段是1949年之前,密码学是一门艺术,这阶段的研究特点是:①密码学还不是科学,而是艺术;②出现一些密码算法和加密设备,比如:转轮密码机ENIGMA;③简单的密码分析手段出现,数据的安全完全基于算法的保密。 nbsp; 该阶段具有代表性的事件是1883年Kerchoffs第一次明确提出了编码的原则,即加密算法应建立在算法的公开且不影响明文和密钥的安全的基础上。这个原则成为传统密码和现代密码的分界线。 nbsp; 第二阶段是1949-1975年,密码学成为一门独立的科学,其主要特点:数据安全基于密钥而不是算法的保密。 nbsp; 第三阶段是1976年以后,密码学中公钥密码学成为主要研究方向,这阶段的主要特点是:公钥密码使得发送端和接收端无密钥传输的保密通信成为可能。 nbsp; 本文针对密码学进行了深入研究,分析了这一领域中的两种主流加密体制以及对应的典型加密算法,通过程序开发对算法进行实现,并总结了加密技术在现实生活中的应用。 nbsp; 2.主流加密体制 nbsp; 密码算法也叫密码函数,是用于加密和解密的数学函数[2]。如果算法本身是保密的,这种算法称为受限制的算法。受限制的密码算法不能进行质量控制或标准化,但对低密级的应用来说还是很流行。 nbsp; 现代密码学则用密钥解决了这个问题,加、解密运算都依赖于密钥,用KE表示加密密钥,KD表示解密密钥,用C表示密文,M表示明文。 nbsp; 2.1对称密钥密码体制 nbsp; 如果KE=KD,或KE和KD可以相互推导,则加解密函数表达为: nbsp; 加密:EK(M)=C;解密:DK(C)=M;整个过程:DK(EK(M))=M nbsp; 这种方式称为对称密钥密码体制。对称密钥密码体制的优点在于加解密速度快,安全强度高、加密算法比较简便高效、密钥简短和破译困难;便于硬件的实现和大规模使用。缺点是密钥的分配必须通过保密安全的信道,无法用来进行数字签名和抗抵赖。 nbsp; 2.2非对称密钥密码体制 nbsp; 如果加密和解密使用不同的密钥(Kp,Ks),把加密密钥公开,解密密钥保密,则加解密函数表达为: C= EKp(M);M= DKS(C);整个过程:DKS(EKp(M))=M nbsp; 这种方式称为非对称密钥密码体制,或公开密钥密码体制。其优点在于极大地简化了密钥管理;密钥的分配不必保持信道的保密性,可用来签名和抗抵赖。缺点主要是加密速度慢,不便于硬件实现和大规模使用。 nbsp; 3.加密算法 nbsp; 3.1 DES算法原理 nbsp; DES算法是对称密钥密码体制中的典型算法,目前,DES算法在国内POS、ATM、磁卡及智能卡、加油站等领域被广泛应用。算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是工作密钥;Data为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密/解密[3]。Mode为加密,则用Key把数据Data加密,生成Data的密码形式作为输出结果;Mode为解密,则用Key把密码形式的数据Data解密,还原为Data的明码形式作为输出结果。 nbsp; DES算法实现加密需要3个步骤,加密原理见图1。 nbsp; ①:变换明文。对给定的64位的明文x,首先通过一个置换IP表来重新排列x,从而构造出64位的X0,X0=IP(X)=L0R0,其中L0表示X0的前32位,R0表示X0的后32位。 nbsp; ②:按照规则迭代。规则为:Li=Ri-1,Ri= Li⊕F(Ri-1,Ki),(i=1,2,3, …,16)。符号⊕表示数学运算“异或”,F表示一种置换,由S盒置换构成,Ki是由密钥编排函数产生的比特块。 nbsp; ③:对L16R16利用IP-1作逆置换,就得
文档评论(0)