发明名称 点对点的椭圆曲线数字签名算法及验签方法
摘要 本发明公开了一种改进的点对点椭圆曲线数字签名算法,步骤(1),计算t=Hash(ID<sub>A</sub>||ID<sub>B</sub>||count)mod n,count=0x00000001,如果t=0,那么count++,重新计算t;步骤(2),随机选择k∈[1,n‑1];步骤(3),运算kP=(x<sub>1</sub>,y<sub>1</sub>),之后把x<sub>1</sub>转化为整数;步骤(4)计算r=x<sub>1</sub> mod n,如果r=0,那么跳回步骤(2);步骤(5),计算e=H(m),其中,H(x)为哈希函数;步骤(6),计算s=k<sup>‑1</sup>t(e+dr)mod n,如果s=0,那么跳回步骤(2)获取随机数;步骤(7),输出签名对(r,s)。本发明还公开了一种基于所述改进的椭圆曲线数字签名算法的验签方法。本发明可以有效解决点对点的签名验签行为。
申请公布号 CN106533682A 申请公布日期 2017.03.22
申请号 CN201610991199.8 申请日期 2016.11.10
申请人 上海华虹集成电路有限责任公司 发明人 张宇
分类号 H04L9/30(2006.01)I;H04L9/32(2006.01)I;H04L29/06(2006.01)I 主分类号 H04L9/30(2006.01)I
代理机构 上海浦一知识产权代理有限公司 31211 代理人 戴广志
主权项 一种点对点的椭圆曲线数字签名算法,其特征在于,包括如下步骤:输入参数组D=(ID<sub>A</sub>,ID<sub>B</sub>,q,FR,S,a,b,P,n,h),私钥d,公钥Q,消息m,其中,ID<sub>A</sub>,ID<sub>B</sub>分别是交易双方的ID;输出签名对(r,s);步骤(1),计算t=Hash(ID<sub>A</sub>||ID<sub>B</sub>||count)mod n,count=0x00000001,如果t=0,那么count++,重新计算t;步骤(2),随机选择k∈[1,n‑1];步骤(3),运算kP=(x<sub>1</sub>,y<sub>1</sub>),之后把x<sub>1</sub>转化为整数;步骤(4),计算r=x<sub>1</sub>mod n,如果r=0,那么跳回步骤(2);步骤(5),计算e=H(m),其中,H(x)为哈希函数;步骤(6),计算s=k<sup>‑1</sup>t(e+dr)mod n,如果s=0,那么跳回步骤(2)获取随机数;步骤(7),输出签名对(r,s)。
地址 201203 上海市浦东新区碧波路572弄39号