OpenSSL AES-CBC-256加密盐误差



在https://wiki.openssl.org/index.php/enc中,它指出,为了让我为openssl提供盐值以进行加密,我必须指定

使用-s盐,可以显式地给出其价值(以十六进制(。

这就是我所做的,openssl中的 openssl enc -aes256 -base64 -iv 40AA481FEB82C35D1CF35CD1C0468C2F -S F80EC003AA550000 -K DD9F547EDAA1373F85EB98D0608E2DCA66D7426F31FC66B87953799153844 -p -in hi.txt -out cipher.enc

,-p显示出盐的价值不同。有原因吗?如果是这样,我如何明确将盐定义为Openssl?

由于给您optessl的原始字节键(选项 -K(,因此不使用参数中给出的盐。

盐用于根据(字符串(密码计算原始字节键。

例如,您可以使用选项-k并将密码与盐一起提供:

$ openssl enc -aes-256-cbc -iv 40AA481FEB82C35D1CF35CD1C0468C2F -S F80EC003AA550000 -k "mypassword" -p  -base64 <<< "hello"
salt=F80EC003AA550000
key=4B3178E6330155D5CB9D5D0A17C1853526D9A38BB990671029730D9202A2E89D
iv =40AA481FEB82C35D1CF35CD1C0468C2F
U2FsdGVkX1/4DsADqlUAACw5WayUfFeijGYjYaI/SQw=

最新更新