由于冲突,我需要将 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?)。谢谢!!