我使用以下命令加密了文件:
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 ...
我怎么知道与上述命令相对应的盐,迭代和摘要的参数是什么?
答案 0 :(得分:2)
ERR_CERT_AUTHORITY_INVALID
命令不是对输入文件的直接加密。它与盐一起在正面添加了“魔术”值。魔术值是字符串“ Salted __”(注意双下划线),后跟8个字节,这是一个随机生成的盐。或者,您可以在命令行上使用“ -S”选项(以十六进制指定)指定自己的盐。您可以使用“ -md”参数指定摘要。默认值为sha256。您可以使用“ -iter”参数指定迭代次数。默认值为1000。