作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我通过 evp.h 接口(interface)使用 openssl v1.0.2。我正在使用 EVP_aes_256_ctr()
函数,需要管理我的计数器并确保它们不会被重用。我在 FIPS 模式下使用 EVP 接口(interface)。
openssl ctr模式使用什么增量函数?它是否执行 128 位计数器增量或其他操作?我的愿望是 32 位增量,有办法配置吗?
类似的代码:GitHub | AES-encrypt .
最佳答案
What increment function does the openssl ctr mode use? Does it do a 128 bit counter increment or something else?
OpenSSL 使用整个 16 字节缓冲区/128 位整数作为计数器。来自 ctr128.c
:
/* increment counter (128-bit int) by 1 */
static void ctr128_inc(unsigned char *counter)
{
u32 n = 16, c = 1;
do {
--n;
c += counter[n];
counter[n] = (u8)c;
c >>= 8;
} while (n);
}
My desire would be a 32 bit increment, is there a way to configure this?
不,不能使用配置参数更改它。
但是,调整 ctr128.c
并重新编译该库的新副本非常容易。
关于openssl - OpenSSL EVP_aes_256_ctr 使用什么计数器递增函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57486687/
我是一名优秀的程序员,十分优秀!