8.1 RSASSA-PSS簽名驗籤方案
採用EMSA-PSS編碼方案 + RSASP/RSAVP簽名驗籤
整個簽名/驗籤流程與加解密流程非常相似。
RSASSA-PSS-SIGN (K, M) (§8.1.1,見圖6)
輸入
- K RSA 私鑰 (記k爲模數n的字節長)
- M 消息,字節長度需滿足雜湊函數的輸出限制
輸出
- S 簽名,字節長度爲k或者錯誤信息
RSASSA-PSS-VERIFY ((n, e), M, S) (§8.1.2,見圖6)
輸入
- (n, e) RSA 公鑰 (記k爲模數n的字節長)
- M 消息,字節長度需滿足雜湊函數的輸出限制
- S 簽名,字節長度爲k或者錯誤信息
輸出
- “有效簽名”或“無效簽名”
圖6 簽名驗籤的流程
8.2 RSASSA-PKCS1-v1_5簽名驗籤方案
採用EMSA-PKCS1-V1_5編碼方案 + RSASP/RSAVP簽名驗籤
整個簽名/驗籤流程與加解密流程非常相似。
RSASSA-PKCS1-V1_5-SIGN (K, M) (§8.2.1,見圖6)
整體流程同RSASSA-PSS-SIGN (K, M),僅有的差別在於:
- 編碼方式不同,用EMSA-PKCS1-v1_5-encode代替EMSA-PSS-encode
RSASSA-PKCS1-V1_5-VERIFY ((n, e), M, S) (§8.2.1,見圖6)
整體流程同RSASSA- PSS-VERIFY (K, M),僅有的差別在於:
- 編碼方式不同,用EMSA-PKCS1-v1_5-encode代替EMSA-PSS-verify
輸出比較有微小差異:RSASSA-PSS-VERIFY在EMSA-PSS-verify中輸出比較結果;PKCS1-V1_5中EMSA-PKCS1-v1_5-encode輸出的EM和I2OSP(m)得到的EM比較得出結果。