我编码c ++ FYI
好的,我有Windows Crypto API生成RSA密钥对,以便我可以正确导出生成的AES密钥。
一切正常,我的代码解密全部数据 WITH EXCEPTION 10个字节,从输出明文的偏移量0x2开始
似乎偏移量0x2是随机的,而0x3是应该的,而0x4-0xC始终是0xB8。
- 消息生成
char message[700];
memset(message, 't', sizeof(message));
- 加密
CryptEncrypt(hKey, NULL, eof, 0, (LPBYTE)tmp_blk_buff, &p_block_size, TMP_BLOCK_BUFFER_SIZE(context->in_size))
- 解密
CryptDecrypt(context->aes_hKey, NULL, eof, 0, (LPBYTE)tmp_blk_buff, &p_block_size)
这里有很多代码要过去。
我错过了dwFlag或者其他什么......我对此感到非常难过。 感谢您的任何意见。