发明名称 基于小特征的双曲数字签名方法
摘要 本发明公开了一种基于小特征的双曲数字签名方法,它包括有以下步骤,假设发件人是A,收件人是B,明文为m,①发件人A利用硬件进行的操作为:随机生成私钥数对(X<SUB>1</SUB>,X<SUB>2</SUB>)、生成公钥数对(Y<SUB>1</SUB>,Y<SUB>2</SUB>)、对明文生成文摘数对、生成签名数对(r,s)并将上述数对和明文发送到收件人B,②收件人B利用硬件进行的操作是:接收从A发来的公钥数对、签名数对和明文,然后对收到明文取文摘数对,最后验证等式。本方法能保证在相等安全级别的基础上,大大减少所使用基本密钥位数,从而降低开发费用和运行成本,减少对计算机资源的占用,提高生成相关素数运算速度,缩短签名认证时间。
申请公布号 CN1391168A 申请公布日期 2003.01.15
申请号 CN02136177.0 申请日期 2002.07.24
申请人 上海氯碱化工股份有限公司;上海燕托计算机有限公司 发明人 汪振华;陈志杰
分类号 G06F12/14;G06F12/16 主分类号 G06F12/14
代理机构 中原信达知识产权代理有限责任公司 代理人 罗大忱
主权项 1、一种基于小特征的双曲数字签名方法,其特征在于:它包括有以下步骤,假设发件人是A,收件人是B,明文为m,小特征为P,α为多项式X<sup>P</sup>-X-1在含有P个元素的伽罗瓦域F<sub>P</sub>上的零点,参数为c,检验参数为Q1、Q2,①发件人A利用硬件进行的操作为a:随机生成私钥X<sub>1</sub>和X<sub>2</sub>,取数对(X<sub>1</sub>,X<sub>2</sub>)为私钥<maths num="001"><![CDATA[ <math><mrow><msub><mi>X</mi><mn>1</mn></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>P</mi><mo>-</mo><mn>1</mn></mrow></munderover><msub><mi>a</mi><mi>i</mi></msub><msup><mi>P</mi><mi>i</mi></msup></mrow></math>]]></maths><maths num="002"><![CDATA[ <math><mrow><msub><mi>X</mi><mn>2</mn></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>P</mi><mo>-</mo><mn>1</mn></mrow></munderover><msub><mi>b</mi><mi>i</mi></msub><msup><mi>P</mi><mi>i</mi></msup></mrow></math>]]></maths>其中有<maths num="003"><![CDATA[ <math><mrow><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>P</mi><mo>-</mo><mn>1</mn></mrow></munderover><msub><mi>a</mi><mi>i</mi></msub><mo>&lt;</mo><mi>P</mi></mrow></math>]]></maths><maths num="004"><![CDATA[ <math><mrow><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>P</mi><mo>-</mo><mn>1</mn></mrow></munderover><msub><mi>b</mi><mi>i</mi></msub><mo>&lt;</mo><mi>P</mi></mrow></math>]]></maths>b:对所生成的私钥进行安全化检验,所述安全化检验是判断Q1能否整除X<sub>1</sub>或Q2能否整除X<sub>2</sub>,如果有其中一个判断是否定的,那么需要重新生成私钥X<sub>1</sub>和X<sub>2</sub>;c:生成公钥Y<sub>1</sub>=(cα)<sup>X1</sup>,Y<sub>2</sub>=(cα)<sup>X2</sup>,取(Y<sub>1</sub>,Y<sub>2</sub>)为相应于私钥(X<sub>1</sub>,X<sub>2</sub>)的公钥,Y<sub>1</sub>、Y<sub>2</sub>表示为在含有P个元素的伽罗瓦域上的α的多项式;d:对明文m取文摘数对(d<sub>1</sub>,d<sub>2</sub>),及形成签名数对(r,s),先在非负整数域内随机取k和k<sup>-1</sup>,并满足条件k k<sup>-1</sup>≡1(mod P<sup>P</sup>-1),得出签名数对的一个分量r,r为<img file="A0213617700025.GIF" wi="1724" he="134" />然后将所得的R<sub>0</sub>,…,R<sub>p-1</sub>顺序加入到明文m中产生一新的明文,记为m<sub>1</sub>(R<sub>0</sub>,…,R<sub>p-1</sub>),用文摘函数MD5和SHA1对明文m<sub>1</sub>进行运算,得出相应的文摘数对(d<sub>1</sub>,d<sub>2</sub>),其中           d<sub>1</sub>=Md5(m(R<sub>0</sub>,…,R<sub>p-1</sub>)),           d<sub>2</sub>=SHA1(m(R<sub>0</sub>,…,R<sub>p-1</sub>)),再令s≡k<sup>-1</sup>(X<sub>1</sub>d<sub>1</sub>+X<sub>2</sub>d<sub>2</sub>)(mod p<sup>P</sup>-1),得出签名数对另一分量s,由此签名数对(r,s)形成,其中r为在含有P个元素的伽罗瓦域上的α的多项式,系数为R<sub>0</sub>,…,R<sub>P-1</sub>,而s为一个整数;e:向B发送公钥数对,签名数对和明文;②收件人B利用硬件进行的操作是a:接收从A发来的公钥数对(Y*<sub>1</sub>,Y*<sub>2</sub>),签名数对(r*,s*)和明文m*;b:将接收到签名数对的第一分量r*中的系数R<sub>0</sub>,…,R<sub>p-1</sub>加入到B所接收的明文m*中产生一新的明文,记为m*<sub>1</sub>(R<sub>0</sub>,…,R<sub>p-1</sub>),用文摘函数MD5和SHA1对明文m*<sub>1</sub>进行运算,得出相应的文摘数对(d*<sub>1</sub>,d*<sub>2</sub>),其中         d*<sub>1</sub>=Md5(m*<sub>1</sub>(R<sub>0</sub>,…,R<sub>p-1</sub>)),         d*<sub>2</sub>=SHA1(m*<sub>1</sub>(R<sub>0</sub>,…,R<sub>p-1</sub>));c:验证等式,取         verL(r*,s*)=r*<sup>S*</sup> ∈ F<sub>P</sub>[α],         verR(m*,r*,Y*<sub>1</sub>,Y*<sub>2</sub>)=Y*<sub>1</sub><sup>d*1</sup>Y*<sub>2</sub><sup>d*2</sup>如果上述等式中verL(r*,s*)=verR(m*,r*,Y*<sub>1</sub>,Y*<sub>2</sub>),表明验证通过,所收到的明文m*为A所发出的明文m。
地址 200241上海市龙吴路4747号