c_cpp 见aes256.c

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 见aes256.c相关的知识,希望对你有一定的参考价值。

aes256_configureif(!RAND_bytes(salt, sizeof(salt))) { ERROR("Can't generate salt, please try again"); return -1; }
crypt_blowfish.c:BF_encode - the whole funtion

crypt_blowfish.c:_crypt_gensalt_blowfish_rn - the whole function

libsxclient/src/misc.c:sxi_derive_key

genkey = _crypt_blowfish_rn(pass, setting, out, len); if (!genkey) return -1;
aes256.c:derive_key
if (EVP_DigestInit_ex(ctx, EVP_sha512(), NULL) != 1) {
ERROR("EVP_DigestInit_ex failed");
break;
}
if (EVP_DigestUpdate(ctx, keybuf, strlen(keybuf)) != 1) {
ERROR("EVP_DigestUpdate failed");
break;
}
if (EVP_DigestFinal_ex(ctx, key, &len) != 1) {
ERROR("EVP_DigestFinal_ex failed");
break;
}
if (len != key_size) {
ERROR("Bad digest size: %d bytes", len);
break;
}
ret = 0;

aes256.c:derive_key
/ generate a key for meta encryption from the bcrypt one / if(PKCS5_PBKDF2_HMAC(keybuf, strlen(keybuf), salt, salt_size, 1, EVP_sha512(), meta_key_size, meta_key) == 0) {```

以上是关于c_cpp 见aes256.c的主要内容,如果未能解决你的问题,请参考以下文章

python AES对称加密

AESEncryption Aes 加密

JAVA Aes加解密详解

Fuzzy C Means 算法及其 Python 实现——写得很清楚,见原文

PHP:使用 mcrypt 在计数器模式下解密 AES

AEJoy —— 如何使用 AE 中的表达式控件预设