当您运行该命令时,openssl enc -ciphers
会打印受支持的密码列表。在 OpenSSL 实用程序的最新版本中,密码 -id-aes256-wrap、-id-aes256-wrap-pad 和 -aes256-wrap 出现在该列表中。我相信这些是 RFC3394 和 RFC5649 中指定的 AES 密钥包装算法的实现。当我使用它们来包装 256 位密钥时,如下所示,我收到错误...
openssl enc -id-aes256-wrap -in test.key -out test.key.wrp
Error setting cipher id-aes256-wrap
140403454670488:error:0607B0AA:digital envelope routines:EVP_CipherInit_ex:wrap mode not allowed:evp_enc.c:218:
当我搜索错误“不允许换行模式”时,我发现此留言板文本讨论如何设置一些特殊标志。但讨论与使用 openssl 库的 C API 相关。是否可以使用 openssl enc 实用程序中的这些密钥包装密码?如果可以,如何使用?
答案1
您运行的是哪个版本?
这 https://github.com/openssl/openssl/issues/2485 转向 https://github.com/openssl/openssl/issues/2486
问题是,它在 2017 年 2 月不起作用,除非你的 openssl 版本比那个版本更新,而且你很幸运,它可能会起作用......但我找不到报告为已修复的问题,所以我怀疑它是否有效最新和最好的。
简而言之,恭喜您发现了一个错误 - 我建议您报告它。他们有很多错误需要解决,如果没有人报告这一点,那么他们修复它的机会就很低(为什么要修复一个没有人使用或抱怨的功能)。