1 / 21
文档名称:

DES 加密解密算法的C 实现--实验报告.doc

格式:doc   大小:292KB   页数:21页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

DES 加密解密算法的C 实现--实验报告.doc

上传人:在水一方 2019/5/3 文件大小:292 KB

下载得到文件列表

DES 加密解密算法的C 实现--实验报告.doc

文档介绍

文档介绍:芅分组密码实验报告螁蒀DES算法的实现芈DES简介羆本世纪五十年代以来,密码学研究领域出现了最具代表性的两大成就。其中之一就是1971年美国学者塔奇曼(Tuchman)和麦耶(Meyer)根据信息论创始人香农(Shannon)提出的“多重加密有效性理论”创立的,后于1977年由美国国家标准局颁布的数据加密标准。袂DES密码实际上是Lucifer密码的进一步发展。它是一种采用传统加密方法的区组密码。它的算法是对称的,既可用于加密又可用于解密。薈美国国家标准局1973年开始研究除国防部外的其它部门的计算机系统的数据加密标准,于1973年5月15日和1974年8月27日先后两次向公众发出了征求加密算法的公告。加密算法要达到的目的通常称为DES密码算法要求主要为以下四点:螇提供高质量的数据保护,防止数据未经授权的泄露和未被察觉的修改;具有相当高的复杂性,使得破译的开销超过可能获得的利益,同时又要便于理解和掌握DES密码体制的安全性应该不依赖于算法的保密,其安全性仅以加密密钥的保密为基础实现经济,运行有效,并且适用于多种完全不同的应用。蚆1977年1月,美国政府颁布:采纳IBM公司设计的方案作为非机密数据的正式数据加密标准(DES枣DataEncryptionStandard)。袃目前在这里,随着三金工程尤其是金卡工程的启动,DES算法在POS、ATM、磁卡及智能卡(IC卡)、加油站、高速公路收费站等领域被广泛应用,以此来实现关键数据的保密,如信用卡持卡人的PIN的加密传输,IC卡与POS间的双向认证、金融交易数据包的MAC校验等,均用到DES算法。羁DES算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密。***DES算法是这样工作的:如Mode为加密,则用Key去把数据Data进行加密,生成Data的密码形式(64位)作为DES的输出结果;如Mode为解密,则用Key去把密码形式的数据Data解密,还原为Data的明码形式(64位)作为DES的输出结果。在通信网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行DES加密,然后以密码形式在公共通信网(如电话网)中传输到通信网络的终点,数据到达目的地后,用同样的Key对密码数据进行解密,便再现了明码形式的核心数据。这样,便保证了核心数据(如PIN、MAC等)在公共通信网中传输的安全性和可靠性。蒇通过定期在通信网络的源端和目的端同时改用新的Key,便能更进一步提高数据的保密性,这正是现在金融交易网络的流行做法。(1)DES加密标准薆现如今,的分布式计算能力,用穷举密钥搜索攻击方法破译已成为可能。数据加密标准DES已经达到它的信任终点。但是作为一种Feistel加密算法的例子仍然有讨论的价值。羃DES是对二元数字分组加密的分组密码算法,分组长度为64比特。每64位明文加密成64位密文,没有数据压缩和扩展,密钥长度为56比特,若输入64比特,则第8,16,24,32,40,48,56,64为奇偶校验位,所以,实际密钥只有56位。DES算法完全公开,其保密性完全依赖密钥。螂它的缺点就在于密钥太短。膈设明文串m=m1m2…m64;密钥串k=k1k2…k64。羅在后面的介绍中可以看到k8,k16,k24,k32,k40,k48,k56,k64实际上是不起作用的。蚃DES的加密过程可表示为:袃DES(m)=IP-1T16·T15…T2·T1·IP(m).薀下面是完全16轮DES算法框图:虿蒄图1完全16轮DES算法薁1初始置换IP蚈初始置换是将输入的64位明文分为8个数组,每一组包括8位,按1至64编号。膈IP的置换规则如下表:膄表1IP置换规则蚂58羁50薇42袄34螄26腿18羇10蚅2薁60蒁52莆44莅36薂28薀20袅12膆4蚄62螈54蕿46袆38蒁30肁22羈14蚆6蒂64腿56莈48肃40薄32薁24螇16袃8莁57蚀49芆41薃33蒃25螈17蚆9莄1蒄59膀51肅43肄35芁27艿19蝿11袄3莃61蚁53膈45薅37膀29螀21蚇13芅5膁63袈55肇47肆39芃31芀23蒆15螆7肀即将输入的第58位换到第1位,第50位换到第2位……,依次类推,最后一位是原来的第7位。荿2IP-1是IP的逆置换袅由于第1位经过初始置换后,已处于第40位。逆置换就是再将第40位换回到第1位。薆逆置换规则如下表所示:肂表2IP-1置换螁40蕿8肃48膃16衿56肈24螃64羀32羈39蒈7蒃47肂15莀55袇23芄63肃31葿38莆6羄46袀14袁54螆22螅62羂30罿葿5蒅羃肈袈芅螁374513532161