【发布时间】:2021-11-24 20:17:50
【问题描述】:
嘿,我正在寻找一些关于
的解释void AES_cfb128_encrypt(const unsigned char *in, unsigned char *out, size_t length,
const AES_KEY *key, unsigned char *ivec, int *num, int enc)
我理解简单的变量,例如in 是我们的输入缓冲区out 是我们的输出缓冲区length 是我们的输入大小/输入缓冲区的字节数key 是指向我们通过 AES_set_encrypt_key 设置的密钥的指针enc 是我们想要的模式(无论是加密还是解密)
但是,我不明白 ivec 和 num 的作用。
我只知道(可能是错误的)是 ivec 代表初始向量,而我在网上找到的代码中的另一件事有一条评论:
/* set where on the 128 bit encrypted block to begin encryption*/。起初,我认为这会在加密数据中留下未加密数据的空白,但当我在调试和打印值时查看字节值时,情况并非如此。
【问题讨论】:
-
ivec 保护您第二次加密同一消息。
标签: c++ linux ssl encryption aes