发明名称 p元域SM2椭圆曲线的数字签名生成、验证及混合系统
摘要 本发明涉及一种p元域SM2椭圆曲线的数字签名生成、验证及混合系统。该系统包括:将待签名消息m与签名方杂凑值ZA拼接成的m’发送到密码杂凑模块;将r=(e+x1)mod n计算得到的r发送到s生成模块;在r=0、r+k=n或s=0的情况下,通知随机数生成模块重新生成k;将r和s作为m的数字签名输出的签名控制中心;对m’进行密码杂凑运算生成拼接消息杂凑值e的密码杂凑模块;生成随机数k的随机数生成模块;对椭圆曲线的基G进行k倍点运算,将生成的坐标(x1,y1)作为运算结果[k]G的倍点运算模块;根据s=[(1+dA)-1·(k-r·dA)]mod n生成s的s生成模块;其中,n为椭圆曲线的阶,dA为签名方的私钥。本发明能用硬件实现SM2椭圆曲线公钥密码算法中的数字签名算法。
申请公布号 CN102761415A 申请公布日期 2012.10.31
申请号 CN201110107553.3 申请日期 2011.04.27
申请人 航天信息股份有限公司 发明人 徐树民;屈善新;刘振;王绍麟;田心;刘建巍
分类号 H04L9/32(2006.01)I 主分类号 H04L9/32(2006.01)I
代理机构 北京科龙寰宇知识产权代理有限责任公司 11139 代理人 孙皓晨
主权项 一种p元域SM2椭圆曲线的数字签名生成系统,所述数字签名包括一号签名段r和二号签名段s;其特征在于,该系统包括:签名控制中心、密码杂凑模块、随机数生成模块、倍点运算模块、s生成模块;其中,所述签名控制中心用于,将待签名消息m与签名方杂凑值ZA进行拼接,将得到的拼接消息m’发送到所述密码杂凑模块;根据r=(e+x1)mod n计算得到r;将r发送到所述s生成模块;在r=0、r+k=n或s=0的情况下,通知所述随机数生成模块重新生成k;将k发送到所述倍点运算模块、s生成模块;将r和s作为m的数字签名输出;所述密码杂凑模块用于,对m’进行密码杂凑运算,将生成的拼接消息杂凑值e发送到所述签名控制中心;所述随机数生成模块用于,将生成的随机数k发送到所述签名控制中心;所述倍点运算模块用于,对所述椭圆曲线的基G进行k倍点运算,将生成的坐标(x1,y1)作为运算结果[k]G发送到所述签名控制中心;所述s生成模块用于,根据s=[(1+dA)‑1·(k‑r·dA)]mod n生成s,将生成的s发送到所述签名控制中心;其中,n为所述椭圆曲线的阶,dA为签名方的私钥。
地址 100195 北京市海淀区杏石口路甲18号
您可能感兴趣的专利