我用以下命令加密了一个文件:
openssl enc -aes-192-cbc -e -pbkdf2 -in <infile> -out <outfile> -pass pass: <password>
现在我尝试在 c 中解密它并利用 pbkdf2 我正在使用该函数:
int PKCS5_PBKDF2_HMAC (const char * pass, int passlen,
const unsigned char * salt, int saltlen, int iter,
const EVP_MD * digest,
int keylen, unsigned char * out);
但问题是:我知道参数 pass、passlen、keyless 和 *out...
我如何知道与上面编写的命令相对应的 salt、iter 和digest 的参数是什么?
The openssl enc
命令不是输入文件的直接加密。它与盐一起在前面增加了“神奇”的价值。神奇的值是字符串“Salted__”(注意双下划线)后跟 8 个字节,这是随机生成的盐。或者,您可以使用“-S”选项(以十六进制指定)在命令行上指定您自己的盐。您可以通过“-md”参数指定要使用的摘要。默认为 sha256。您可以使用“-iter”参数指定迭代次数。默认值为 10000。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)