crypt库和块大小

时间:2018-03-08 06:23:08

标签: c encryption encryption-symmetric

我正在使用提供给我的 128位AES 对称密钥加密功能。我在解密时不断遇到这个段错误:

  

:错误:0606506D:LIB(6):函数(101):原因(109):evp_enc.c:518:

首先在测试加密/解密时,我会收到此错误,因为我存储加密和解密的缓冲区不够大。请帮我解决问题:

  1. 当存储密钥(使用fgets)时,由于某种原因,存储它的char数组需要34而不是33(我不认为这是问题,但谁知道)

  2. 我用来解密的格式是错误的(我很确定它需要原始二进制文件,我也尝试过十六进制)

  3. 其他东西正在搞乱块大小。

  4. 还有什么可以来自?

1 个答案:

答案 0 :(得分:0)

128位aes对称密钥长度必须为16字节。

256位aes对称密钥长度必须为32字节。