1 / 28
文档名称:

DES 加密解密算法的C 实现.doc

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

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

分享

预览

DES 加密解密算法的C 实现.doc

上传人:镜花流水 2019/5/1 文件大小:318 KB

下载得到文件列表

DES 加密解密算法的C 实现.doc

文档介绍

文档介绍:workandSecurity——DES加密解密算法的C++实现姓名:李哲勇学号:学院:计算机学院2014年4月DES算法的实现DES简介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等)在公共通信网中传输的安全性和可靠性。DES算法详述DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密钥也是64位,其功能是把输入的64位数据块按位重新组合,并把输出分为L0、R0两部分,每部分各长32位,其置换规则见下表:58,50,12,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位换到第一位,第50位换到第2位,……,依此类推,最后一位是原来的第7位。L0、R0则是换位输出后的两部分,L0是输出的左32位,R0是右32位,例:设置换前的输入值为D1D2D3……D64,则经过初始置换后的结果为:L0=D550……D8;R0=D57D49...D7。经过26次迭代运算后,得到L16、R16,将此作为输入,进行逆置换,即得到密文输出。逆置换正好是初始置的逆运算,例如,第1位经过初始置换后,处于第40位,而通过逆置换,又将第40位换回到第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,37,5,45,13,53,21,61,29,36,4,44,12,52,20,60,28,35,3,43,11,51,19,59,27,34,2,42,10,50,18,5826,33,1,41,9,49,17,57,25,放大换位表32,1,2,3,4,5,4,5,6,7,8,9,8,9,10,11,12,13,12,13,14,15,16,17,16,17,18,19,20,21,20,21,22,23,24,25,24,25,26,27,28,29,28,29,30,31,32,1,单纯换位表16,7,20,21,29,12,28,17,1,15,23,26,5,18,31,10,2,8,24,14,32,27,3,9,19,13,30,6,22,11,4,25,在f(Ri,Ki)算法描述图中,S1,S2...S8为选择函数,其功能是把6bit数据变为4bit数据。下面给出选择函数Si(i=1,2......8)的功能表:

最近更新

计算机网络连接增强优化中的神经网络算法 3页

西安东航维修基地新机库钢屋盖结构整体提升若.. 3页

融媒环境下的电视编导核心素养研究 3页

营业税改征增值税实战解析(下) 3页

2025年度个人租赁合同范本:个人租赁教育培训.. 9页

2025年度不锈钢栏杆出口贸易与代理服务合同 9页

自由曲面网格的划分与优化方法 3页

聚风型风力机尾流的数值模拟研究 3页

翟镇煤矿动压大变形巷道交叉点挑顶整修技术 3页

绿色生态建筑在城市规划设计中的应用分析 3页

经济增加值与企业价值的相关性研究 3页

紫薯色素的微波提取及其稳定性和抗氧化活性的.. 3页

简谈氯气管道及氯压机室的工艺设计 4页

营销模式的实战分析与创新 92页

程控交换网络的演进和实现方法分析 3页

科技型中小企业云融资模式研究——基于云创新.. 3页

磁控溅射沉积TiN薄膜工艺优化 4页

矿物掺合料对桥梁混凝土收缩徐变影响研究进展.. 3页

肺部感染患者的护理 19页

2025年龙年温婉好听的季姓女孩名字 5页

2025年龙姓女孩取名霸气十足的名字 4页

2025年高适的诗 5页

2025年高考祝福语简短精辟 14页

2025年高考满分作文励志作文素材 18页

2025年高考数学六大解题方法 5页

2025年高考填志愿有什么技巧 4页

2025年属虎缺金鲍姓女宝宝名字推荐 7页

2025年高考前吃什么最补脑 4页

2025年高端的刘姓男孩名字 5页

2025年高大上励志qq个性签名 5页