DES的C语言源码.docVIP

  • 4
  • 0
  • 约1.65万字
  • 约 16页
  • 2018-04-27 发布于河南
  • 举报
DES的C语言源码

DES算法由加密、解密和子密钥的生成三部分组成。 ?? DES算法处理的数据对象是一组64比特的明文串。设该明文串为m=m1m2…m64 (mi=0或1)。明文串经过64比特的密钥K来加密,最后生成长度为64比特的密文E。 ?? 加密过程主要涉及 明文串的IP置换,F函数,子密钥的生成,SBox置换,IP逆置换。 ??? ?? DES算法密钥有效位是56位,即用56位的密钥来加密64位的数据。加密期间56位密钥要扩展成64位的密钥,加入奇偶效验位。我想主要是用来传输密钥用的吧,怕传输过程中出错。当然传输过程中还得对密钥加密(一般使用非对称加密)。 ?? uchar VerifyOddEven(uchar x) { ??? unsigned int n; ??? uchar ucTemp =x; ??? x = 1; ??? for(n=0; x; n++) ??? { ??? ??? x = x-1; ??? } ??? if (n%2 == 0) ??? { ??? ??? if (!(ucTemp 1)) ??? ??? { ??? ??? ??? ucTemp += 1; ??? ??? } ??? } ??? return ucTemp; } void ChgKey56To64(uchar *pszKey,uchar *pszKeyOut) { ??? uchar uc

文档评论(0)

1亿VIP精品文档

相关文档