我正在我的密码学课程中研究 DES(数据加密标准)算法,作为其中的一部分,我必须编写一个 C 代码,其中包含一个检查 DES 密钥奇偶性的函数。
我怎样才能做到这一点?
我正在我的密码学课程中研究 DES(数据加密标准)算法,作为其中的一部分,我必须编写一个 C 代码,其中包含一个检查 DES 密钥奇偶性的函数。
我怎样才能做到这一点?
取自以上链接:
bool AdjustDESKeyParity(UCHAR* pucKey, int nKeyLen)
{
int cPar;
for(int i = 0; i < nKeyLen; i++)
{
cPar = 0;
for(int j = 0; j < DES::BLOCKSIZE; j++)
{
if(pucKey[i] & (0×01 << j))
cPar = !cPar;
}
if(!cPar)
pucKey[i] ^= 0×01;
}
return true;
}
这不是纯 C,但应该很容易翻译。