试验名称:DES 加密算法实现
实验环境:VC++6.0
试验原理:
DES 使用一个 56 位的密钥以及附加的 8 位奇偶校验位,产生最大 64 位的分
组大小。这是一个迭代的分组密码,使用称为 Feistel 的技术,其中将加密的
文本块分成两半。使用子密钥对其中一半应用循环功能,然后将输出与另一
半进行“异或”运算;接着交换这两半,这一过程会继续下去,但最后一个循
环不交换。DES 使用 16 个循环,使用异或,置换,代换,移位操作四种基本
运算。
算法流程设计:
数据结构:
#dene PLAIN_FILE_OPEN_ERROR -1
#dene CIPHER_FILE_OPEN_ERROR -2
#dene OK 1
//初始置换表 IP
int IP_Table[64] = { 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,
56,48,40,32,24,16,8,0,
58,50,42,34,26,18,10,2,
评论1
最新资源