图解PKCS#1——第四部分 签名验签方案

8.1 RSASSA-PSS签名验签方案

采用EMSA-PSS编码方案 + RSASP/RSAVP签名验签

 

整个签名/验签流程与加解密流程非常相似。

 

RSASSA-PSS-SIGN (K, M) (§8.1.1,见图6

输入

  1. K RSA 私钥 (记k为模数n的字节长)
  2. M 消息,字节长度需满足杂凑函数的输出限制

输出

  1. S 签名,字节长度为k或者错误信息

 

RSASSA-PSS-VERIFY ((n, e), M, S)      (§8.1.2,见图6

输入

  1. (n, e) RSA 公钥 (记k为模数n的字节长)
  2. M 消息,字节长度需满足杂凑函数的输出限制
  3. S 签名,字节长度为k或者错误信息

输出

  1. “有效签名”或“无效签名”

 

图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),仅有的差别在于:

  1. 编码方式不同,用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),仅有的差别在于:

  1. 编码方式不同,用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比较得出结果。

猜你喜欢

转载自blog.csdn.net/samsho2/article/details/84255305