Golang OpenSSL 错误的 iv 大小

标签 go openssl

我正在尝试创建以下内容:

cipher, err := openssl.GetCipherByName("aes-128-ecb")
decryptionTool, err := openssl.NewDecryptionCipherCtx(cipher, nil, byteKey, iv)

byteKey 和 iv 都是 16 字节长。

当我构建我的代码时,出现以下错误:

panic: bad IV size (16 bytes instead of 0)

我阅读了文档并检查了源代码,但我仍然找不到添加 IV 而不会出错的方法。我正在使用 spacemonkeygo 的 OpenSSL。

有人知道怎么回事吗? 提前致谢!

编辑:我在上面添加了密码类型,以及关于 biteKey 和 iv 的更多细节

编辑 2:ECB 没有 IV!我完全忘记了。好吧,我想这就解决了。

最佳答案

第一次用ECB,想换成CBC。我忘记将其更改为 aes-cbc,因此在尝试添加 IV 时出现错误。

关于Golang OpenSSL 错误的 iv 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43603590/

相关文章:

go - 具有更改键值的多级 Unmarshall JSON

go - 不能返回 nil,但 slice 的值为零

c - 加密数据作为字符串

c++ - fatal error : openssl/ssl. h:没有这样的文件或目录

c - 如果用户没有在他的计算机上安装/信任我的私有(private) CA,则从服务器端检测

c - 相互身份验证并将用户证书限制为服务器上的特定集合

go - 如何更改 logrus 中的日志输出格式?

go - 框架 GoColly - 重定向到 HTTPS 不起作用

go - 生产就绪的 Google Cloud Function 是什么样的?

ssl - 服务器如何加密? (特别是 openSSL)