Rsa

使用 openssl 將 MGF 散列設置為不同於正常散列的值以用於 PSS 簽名

  • December 21, 2015

PKCS1 的機率簽名模式中,您擁有雜湊和 MGF 雜湊。預設情況下,使用 OpenSSL CLI 客戶端,兩者似乎都是 sha1,但是,我可以使用以下命令將其更改為 sha256:

openssl dgst -sha256 -sigopt rsa_padding_mode:pss -sigopt rsa_pss_saltlen:-1 -out signature.txt -sign privatekey.txt plaintext.txt

如果我想讓 Hash 是 sha256 而 MGF Hash 是 sha1 怎麼辦?那可能嗎?我只是想知道,因為對於 Java,OAEP 加密的預設模式會更改雜湊,但不會更改 MGF 雜湊(從而使它們不相交)

Meta:因為這是關於使用工具而不是底層算法/數學 AIUI 應該是 security.SE 代替。如果有人可以並且想要遷移,請隨意。

每個 1.0.2 源,-sigopt rsa_mgf1_md:name其中name可用的雜湊名稱在哪裡EVP_getdigestbyname- 即,實現而不是預設情況下 #if’ed (MD2) 或手動。

對於 FIPS 模式(如果相關),我認為您可以設置非 FIPS 雜湊,但使用它的操作將失敗,但我沒有設置 FIPS 建構來測試。

引用自:https://crypto.stackexchange.com/questions/31430