如果私钥在ECB模式下由DES EDE加密,则PEM_read_bio_PrivateKey()
返回NULL
。在EVP_DecryptFinal_ex()
中出现问题
4128:error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:evp_enc.c:330:
如果相同的私钥在CBC模式下由DES EDE加密,则此函数工作正常。
我检查过,此问题可在openssl 0.9.8r/y版本(无FIPS)上重现。如果openssl是使用FIPS构建的,则不会发生此问题。
是什么导致了这种行为?
谢谢!
发布于 2013-10-26 22:59:17
查看OpenSSL源代码,只有在加密数据填充无效的情况下才会发生这种情况。这种情况会发生在不同的密钥中吗?你能提供一个示例吗?而且,使用什么工具来生成这样的密钥(例如,相同的OpenSSL或不同的密钥)?可能,它省略了填充,或者写入了零填充而不是正确的填充。
https://stackoverflow.com/questions/17463166
复制相似问题