SM2的主要功能
A1. 公私钥
- 私钥:BN_大整数
- 公钥:EC-Point 椭圆曲线上的点
整体结构
A.2 数字签名算法
A.2.1 签名(User A)
- l 签名者用户A的密钥对包括其私钥dA和公钥PA=[dA]G= (xA,yA)
- 签名者用户A具有长度为entlenA比特的可辨别标识IDA,
- ENTLA是由整数entlenA转换而成的两个字节
- ZA=H256(ENTLA || IDA || a || b || xG || yG|| xA || yA)
- 待签名的消息为M,
- 数字签名(r,s)
说明:第5步若r=0或r+k=n则返回第3步;第6步若s=0则返回第3步。
A2.2 验签(User B)
- 签名者用户A的密钥对包括其私钥dA和公钥PA=[dA]G= (xA,yA)
- 签名者用户A具有长度为entlenA比特的可辨别标识IDA,
- ENTLA是由整数entlenA转换而成的两个字节
- ZA=H256(ENTLA || IDA || a || b || xG || yG|| xA || yA)。
- 消息为M,数字签名(r,s)