【问题标题】:Mcrypt for rijndael-128 : how do I set the Initialization Vector?rijndael-128 的 Mcrypt:如何设置初始化向量?
【发布时间】:2011-02-01 00:52:54
【问题描述】:

我想通过 mcrypt 命令行工具使用 AES (rijndael 128) 加密文件。 我想将初始化向量设置为特定值。我该怎么做?

顺便说一句,我对加密还很陌生。

谢谢!

【问题讨论】:

    标签: aes mcrypt


    【解决方案1】:

    显然没有办法使用命令行工具指定 IV,除非使用 --noiv 标志将 IV 设置为一堆零。来自mcrypt的源代码,文件src/classic.c,第142行:

    IV = _secure_mcrypt_malloc(mcrypt_enc_get_iv_size(td));
    if (noiv==FALSE)
            mcrypt_randomize( IV, mcrypt_enc_get_iv_size(td), real_random_flag);
    else
            memset( IV, 0, mcrypt_enc_get_iv_size(td));
    

    所以代码清楚地表明你要么得到一个随机的 IV 要么得到零。

    不过,您可以修补 mcrypt。提供源代码,这是免费软件。我上面展示的代码 sn-p 正是你要打补丁的地方。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-26
      • 2013-06-06
      • 1970-01-01
      • 1970-01-01
      • 2011-03-04
      • 2011-05-18
      • 1970-01-01
      • 2013-06-08
      相关资源
      最近更新 更多