在我使用此代码加密 gpg.txt 之后
$ gpg -c --cipher-algo AES256 --digest-algo SHA512 "GPG.txt"
Run Code Online (Sandbox Code Playgroud)
我检查了结果,看它是否用 AES256 加密并用 SHA512 散列
$ gpg --list-packets GPG.txt.gpg
symkey enc packet: version 4, cipher 9, s2k 3, ***hash 2***
gpg: AES256 encrypted data
Run Code Online (Sandbox Code Playgroud)
我发现 Cipher=9,这是我问的 AES256,但是 Hash=2,它代表 SHA1,而不是我想要的 10=SHA512!
为什么会这样?有谁知道如何强制 gpg 使用 SHA512 而不是 SHA1?
我不想这么说,但请阅读 gpg 手册页。
该--digest-algo选项为消息选择消息摘要算法......即,如果您创建签名。
该--s2k-digest-algo选项设置用于散列密码短语的算法。如果您将THAT设置为 sha512,那么您将hash 10在该 symkey enc 数据包行上看到。
在下面的评论中回答您的问题:
--cipher-algo指定用于加密实际消息的对称密码算法。--digest-algo指定用于哈希时签署的消息摘要算法。--s2k-digest-algo指定的算法用于在各种操作散列密码短语的摘要(例如,使用时指定的对称密码-c)。| 归档时间: |
|
| 查看次数: |
5302 次 |
| 最近记录: |