gpt4 book ai didi

c++ - 使用无 header 的 AES 加密

转载 作者:行者123 更新时间:2023-11-28 00:00:35 24 4
gpt4 key购买 nike

我正在尝试使用 AES 加密一个 16KiB 的 block 。

我试着用 openssl 来做,但大小从 16384 增加到 16416。看起来 openssl 放了一个 32B 的 header 。

有什么方法可以“删除”32B header 吗?如果重要的话,我的环境是Redhat 5.11。

编辑:我只尝试了openssl的命令行工具:加密:

openssl aes-256-cbc -in text.txt -out encrypted.txt

解密:

openssl aes-256-cbc -d -in encrypted.txt -out decrypted.txt

另外 - 我需要一个可以与 C++ 一起使用的工具。

最佳答案

不,它没有放置标题。它做到了padding .

AES 是一种 block 大小为 128 位的 block 密码,要求被加密的数据长度与密码 block 大小相等。该padding也用于解密后恢复原始数据流长度。

编辑:

根据@jww 的说法,openssl 库还在流前面添加了 16 字节的 header ,其中包含一个神奇的 8 字节字符串“Salted__”和一个从密码派生的 IV

关于c++ - 使用无 header 的 AES 加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39374906/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com