版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、DES的数据加密实现,目录,DES背景,DES背景,DES原理,程序运行结果,DES加密原理,DES加密实现过程,DES背景,DES是由美国IBM公司于20世纪70年代中期的密码算法发展而来的,在1977年1月15日,美国国家标准局正式公布实施,并得到了ISO的认可。在过去近20年的时间里,DES被广泛应用于美国联邦和各种商业信息的安全保密工作中,经受信了各种密码分析和攻击,体现出了令人满意的字全性。,DES算法在POS、ATM、磁卡及智能卡、加油站、高速公路收费站等领域被广泛应用,以此来实现关键数据的保密,如信用卡人的PIN码加密伟输,IC卡与POS机之间的双向认证、金融交易数据包的MAC校
2、验等,均用到DES算法,DES工作模式,DES算法是这样工作的:如Mode为加密,则用Key 去把数据Data进行加密, 生成Data的密码形式(64位)作为DES的输出结果;如Mode为解密,则用Key去把密码形式的数据Data解密,还原为Data的明码形式(64位)作为DES的输出结果。在通信网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行DES加密,然后以密码形式在公共通信网(如电话网)中传输到通信网络的终点,数据到达目的地后,用同样的Key对密码数据进行解密,便再现了明码形式的核心数据。,DES加密原理,DES算法是对称加密算法,加密时需要有两个输入:明文和密钥。明
3、文的长度为64位,密钥的长度为64位(64密钥中只有56位是有效的,其他为校验位)。,DES算法流程示意图,DES详细算法示意图,每轮变换的详细过程,S盒示意图,密钥产生示意图,/* DES类声明 */ class DES public: DES();/*构造函数*/ void encrypt(bool flag = true);/*加解密函数*/ private: string plaintextFilePath_;/*明文文件路径*/ string ciphertextFilePath_;/*密文文件路径*/ string keyFilename_;/*密钥文件路径*/ string pl
4、aintext_;/*明文存储*/ string ciphertext_;/*密文存储*/ string key_;/*密钥存储*/ vector subkey_;/*子密钥存储*/ void getsubkey_();/*计算子密钥*/ void setPlaintextFilePath_();/*设置明文路径*/ void setCiphertextFilePath_();/*设置密文路径*/ void setKeyFilePath_();/*设置密钥路径*/,DES加密实现过程,string readData_(string filename);/*读取文件*/ void saveDat
5、a_(string filename,string data);/*保存文件*/ vector string2bit_(string str); /*string类型转为ASCII二进制数*/ string bit2string_(vector v);/*ASCII二进制数转为string类型*/ vector int2bit_(vector vecInt);/*整形数0-15化为二进制*/ vector vecXor_(vector vL, vector vR);/*向量异或*/ vector leftIterMove_(vector movVec,int loopStep);/*数据左移l
6、oopStep位*/ vector vecReplace_(vector v,const unsigned int vArray);/*向量数据按vArray中数据重排序*/ vector vecMerge_(vector vL, vector vR);/*合并两个向量*/ vector f_(vector vecR, vector vecKey);/*f函数*/ vector S_(vector vecRKey);/*S盒函数*/,变换矩阵 */ static const unsigned int PC_1_56; static const unsigned int PC_2_48; static const unsigned int LOOP_16; static const unsigned int IP_64; static const unsigned int IPR_64; static const unsigned int SBOX_8416; static const unsigne
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全管理部部门经理岗位职责
- DB5308T 27-2017 绿色水产养殖企业评价规范
- 2026上海申康医院发展中心公开招聘备考题库及一套答案详解
- 2026甘肃人力委托招聘监理员20人备考题库完整参考答案详解
- 焊接作业准则
- 2026湖北咸宁赤壁市公安局监察勤务辅警招录6人备考题库有答案详解
- 2026广东广州南沙人力资源发展有限公司招聘中学教师岗16人备考题库带答案详解
- 2026云南西双版纳勐海县打洛镇幼儿园编外教师招聘5人备考题库及答案详解1套
- 2026第二季度湖北中国科学院武汉病毒研究所集中招聘备考题库及参考答案详解
- 春秋航空股份有限公司2027届暑期实习生招聘备考题库含答案详解
- 端午节父亲节双节主题班会课件
- 2026年高考政治时政热点(必背)
- 2025-2026学年度江苏省无锡市七年级下学期期末测试模拟卷(含答案)
- 2026云南文山州砚山县昌盛人力资源服务有限公司招聘工作人员1人笔试参考题库及答案详解
- 2026年中级银行从业资格之中级个人理财必刷题库带答案详解(能力提升)
- 城市公交车辆日常安全例检项目及流程
- 2026年陕西高速铁路投资有限公司招聘(5人)考试参考试题及答案解析
- 2025年辽宁高中学业水平合格性考试化学试卷真题(含答案详解)
- 滥用药物危害主题班会课件
- 2026年喷药机行业分析报告及未来发展趋势报告
- 2026年国企内部遴选工作人员笔试试题及答案解析
评论
0/150
提交评论