赞
踩
ZA:关于用户A的可辨别标识、部分椭圆曲线系统参数和用户A公钥的杂凑值。
推导:
sG + tQ
= ((k-rd) / (1+d)) G + (r + s) dG
= ((k-rd) / (1+d)) G + ( ((r+rd) + (k-rd))/(d+1) ) dG
= ((k-rd) / (1+d)) G + ( (r + k)/(d+1) ) dG
= ((k-rd) / (1+d)) G + ( (dr + dk)/(d+1) ) G
= (k+dk) / (1+d)) G
= kG
= (x1, y1)
整个流程其实和ecdsa相似,区别在于:
https://github.com/C0deStarr/CryptoImp/tree/main/pubkey/ecc
实现时有一个坑,s的符号大概率是负的,但big_to_bytes接口并不会存储符号,需要手动记录。
国家密码管理局关于发布《SM2椭圆曲线公钥密码算法》公告(国密局公告第21号)_国家密码管理局 (sca.gov.cn)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。