由于冲突,我需要将CryptLib迁移到OpenSSL。
我(我想)发现了我需要的一些差异,如下所示,格式为cryptlib_function => openssl_function
aes_encrypt_key256() => AES_set_encrypt_key();
derive_key() => PKCS5_PBKDF2_HMAC_SHA1();
我不确定的是:
aes_mode_reset() => ???????
aes_ctr_crypt() => ????
cryptlib中的注释在那里说:
/* ... To reset CFB, OFB and CTR */
/* without setting the key, aes_mode_reset() must be called and the */
/* IV must be set. ... */
寻找aes_ctr我看到一个AES_ctr128_encrypt
和一个隐藏的'aes_ctr_cipher`但不确定它们是否匹配。 128我认为也许openssl仅限于aes128并且不支持我需要的aes256,这意味着我想我将把openssl部分迁移到cryptlib。
在任何情况下,重置模式的方法是什么(只是在再次呼叫之前清除IV?)。谢谢!