基于c的des加密解密算法实现

基于c的des加密解密算法实现

ID:31264438

大小:96.08 KB

页数:13页

时间:2019-01-07

基于c的des加密解密算法实现_第1页
基于c的des加密解密算法实现_第2页
基于c的des加密解密算法实现_第3页
基于c的des加密解密算法实现_第4页
基于c的des加密解密算法实现_第5页
资源描述:

《基于c的des加密解密算法实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、1■头文件:DES.h设计方法:类的共有接口只设计一个,即加密解密函数,用一个bool参数区分是加密还是解密。其他像读文件,写文件,加密变换函数等等设置为私有涉及内容:文件操作,STL向量,数制变换,位操作及函数设计等等。代码:#include#inelude#include#inelude#inelude#ineludeusingnamespacestd;*****************************

2、*******************************************//***********************************************************************/*DES类声明TclassDES{public:DES();/*构造函数*/voidencrypt(boolflag=true);/*加解密函数*/private:stringplaintextFilePath_;/*明文文件路径*/stringciphertextFilePath_;/*密文文

3、件路径*/stringkeyFilename_;/*密钥文件路径*/stringplaintext」/*明文存储*/stringciphertext_;/*密文存储*/stringkey_j/*密钥存储*/vector>subkey_;/*子密钥存储*/voidgetsubkeyj);/*计算子密钥*/voidsetPlaintextFilePath_();/*设置明文路径*/voidsetCiphertextFilePath_();/*设置密文路径*/voidsetKeyFilePathJ);/*设

4、置密钥路径*/stringreadData_(stringfilename);/*读取文件*/voidsaveData_(stringfilename,stringdata);/*保存文件*/vectorstring2bit_(stringstr);/*string类型转为ASCII二进制数*/stringbit2string_(vectorv);/*ASCII二进制数转为string类型*/vectorint2bit_(vectorveclnt);/*整形数0-15化为二进制*/ve

5、ctorvecXor_(vectorvint>vL,vectorvR);/*向量异或*/vectorleftlterMove_(vectormovVecJntloopStep);/*数据左移loopStep位*/vectorvecReplace_(vectorv,constunsignedintvArray[]);/*向暈数据按vArray中数据重排序=7vectorvecMerge_(vectorvL,vectorvR);/*合并两个

6、向量*/vectorf_(vectorvecR,vectorvint>vecKey);/*f函数*/vectorS_(vectorvecRKey);/*S盒函数*/***********************************************************************/*变换矩阵*/staticconstunsignedintPC_1_[56];staticconstunsignedintPC_2_[48];staticconstunsignedi

7、ntL00P_[16];staticconstunsignedintIP_[64];staticconstunsignedintIPR_[64];staticconstunsignedintSBOX_⑻⑷[16];staticconstunsignedintE_[48];staticconstunsignedintP_[32];************************************************************************/2.DES加密代码创建基于DES加解密的函数,以备后面

8、的代码调用。代码:include“DES.h”*//***********************************************************************/*静态常量放在这里*/constunsignedintDES::IP_[64]={5&50,4

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。