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)的功能表:

最近更新

大数据环境下的文件管理研究-全面剖析 28页

短期酒店租赁合同范本 6页

高效矿物分离技术-第1篇-全面剖析 25页

2025年度高端医用耗材配送与供应链管理服务协.. 9页

2025年心理健康协会工作计划的安排3篇 18页

短期借款合同格式合同范本 6页

2025年度高校学生实习协议书模板(电子信息工.. 8页

2025年度高新技术产业用地租赁合同面积调整与.. 9页

2025年度金融科技项目多人入股投资管理协议 9页

2025年影片《念书的孩子》的观后感想 2页

电子数据交换合同规定 6页

2025年度车辆租赁与保险一体化服务合同 9页

2025年度跨境并购对赌协议风险识别及处理合同.. 9页

2025年张姓一月男宝宝名字 8页

2025年度节能门窗个人选购与安装服务合同 8页

2025年羊水栓塞急救与护理策略全解析 23页

2025年开展社会实践报告篇 41页

2025年甲状腺功能亢进症深度解析与典型案例研.. 14页

2025年度股东退出股权变更及合作协议 8页

环保型全屋衣柜定制合同 6页

微生物组与作物病害关系的研究-全面剖析 22页

2025年度网络安全防护协议主要内容详述 9页

2025年株洲艾滋病职业暴露应对指南 32页

2025年度网红商业街区店面租赁合同 8页

工程质量控制中试验检测的重要性 24页

2级经销商分销协议 5页

2024年高中生情绪调控心得体会(热门24篇) 36页

【2023年】福建省龙岩市辅警协警笔试笔试真题.. 16页

村后备干部笔试试题A及答案(最新版) 12页

物理学英文论文 4页