cryptopp中的des和 网上找的des,算出来结果不一样
某网上找的des算法,这个算法应该没问题,因为某知名软件中使用了相同的算法,相同的输入,会有相同的输出。
比如:
但用cryptopp::des来解相同的数据/key, 结果却不对:
请问是为啥。
比如:
string key = "ef73781e"; // key
string plain;
plain.assign("\xDF\xF8\x39\xAA\xBC\x7A\xF9\x8E", 8); // 输入是加密过的数据
CDes des;
string decrypted = des.Des_DecryptText(plain, key); // des解密
display(decrypted);
// 正确的输出: 52 8B F3 B6 EA 72 2C 68
但用cryptopp::des来解相同的数据/key, 结果却不对:
string key = "ef73781e";
string plain;
plain.assign("\xDF\xF8\x39\xAA\xBC\x7A\xF9\x8E", 8);
char buf[128];
memset(buf, 0, sizeof(buf));
DES::Decryption d;
d.SetKey((uchar*)key.data(), DES::KEYLENGTH);
d.ProcessBlock((uchar*)plain.data(), (uchar*)buf);
dump_hex("cryptopp", buf, 8); // 输出不对。
请问是为啥。
...全文


图形处理/算法
