发明名称 一种安全可靠的受控授权电子签名方法
摘要 本发明涉及一种基于椭圆曲线的可控授权电子签名方法,具体步骤是:第一步骤:基于有限乘法群确定系统参数;第二步骤:委托人进行委托授权;第三步骤:代理人验证委托请求;第四步骤:代理人行使电子签名权力;第五步骤:接受者验证所收到的数据电文。本发明能够实现对电子签名权力进行安全可靠的委托授权。委托人能够严格地控制包括限制代理人行使签名的范围、设定委托授权的时效、限制最大签名次数等在内的委托授权电子签名行为。
申请公布号 CN100571122C 申请公布日期 2009.12.16
申请号 CN200510019215.9 申请日期 2005.08.03
申请人 武汉理工大学 发明人 周祖德;肖攸安;李方敏;刘泉
分类号 H04L9/00(2006.01)I;H04L9/32(2006.01)I;G06Q90/00(2006.01)I 主分类号 H04L9/00(2006.01)I
代理机构 武汉开元知识产权代理有限公司 代理人 潘 杰
主权项 1、一种安全可靠的受控授权电子签名方法,其具体步骤是:第一步骤:确定系统参数,系统参数的确定方法是:随机选定大素数p,系统生成元g为一个小于p的正整数,当委托人的私钥为SK<sub>A</sub>,代理人的私钥为SK<sub>B</sub>,两者均为小于p-1的随机正整数,则委托人的公钥为<maths num="0001"><![CDATA[<math><mrow><msub><mi>PK</mi><mi>A</mi></msub><mo>=</mo><msup><mi>g</mi><msub><mi>SK</mi><mi>A</mi></msub></msup><mi>mod</mi><mi>p</mi><mo>,</mo></mrow></math>]]></maths>代理人的公钥为<maths num="0002"><![CDATA[<math><mrow><msub><mi>PK</mi><mi>B</mi></msub><mo>=</mo><msup><mi>g</mi><msub><mi>SK</mi><mi>B</mi></msub></msup><mi>mod</mi><mi>p</mi><mo>;</mo></mrow></math>]]></maths>第二步骤:委托人进行委托授权,其过程是:①委托人生成用于限制代理人的签名权限的授权文书A<sub>p</sub>,其中包括约定的认证中心、有关代理人身份说明的电子证书、委托授权的有效期限、代理人代表委托人行使电子签名权力的权限范围、代理人代表委托人行使电子签名权力的最大签名次数;②委托人利用自己的私钥SK<sub>A</sub>,对限制代理人的签名权限的授权文书A<sub>p</sub>进行普通电子签名,得到用于限制代理人的签名权限的授权证书C<sub>p</sub>;③委托人将授权证书C<sub>p</sub>发送给认证中心CA;④认证中心CA在认证了所收到的授权证书合法性的基础上,根据授权证书在内部数据库中设定代理人代表委托人行使电子签名权力的最大签名次数;⑤委托人随机选取一个小于p-1的正整数k,计算委托参数Q<sub>p</sub>=g<sup>k</sup>modp;⑥委托人根据约定的杂凑摘要算法,计算杂凑摘要值H<sub>p</sub>=Hash(C<sub>p</sub>,Q<sub>p</sub>);⑦委托人根据自己的私钥SK<sub>A</sub>,计算授权参数S<sub>p</sub>=H<sub>p</sub>×SK<sub>A</sub>+k;⑧委托人根据委托参数和授权参数,生成委托授权信息M<sub>p</sub>=(S<sub>p</sub>,Q<sub>p</sub>);⑨委托人将授权证书C<sub>p</sub>和委托授权信息M<sub>p</sub>作为委托请求(C<sub>p</sub>,M<sub>P</sub>),发送给代理人;第三步骤:代理人验证委托请求;第四步骤:代理人行使电子签名权力,其过程是:①代理人根据所收到的授权参数S<sub>p</sub>,计算授权电子签名私钥SK<sub>p</sub>=S<sub>p</sub>+SK<sub>B</sub>;②代理人利用所生成的授权电子签名私钥SK<sub>p</sub>和所收到的委托授权信息M<sub>p</sub>,按照约定的普通电子签名方法,对需要签署的电子文书M进行普通电子签名,可得普通签名S′=Sig(SK<sub>p</sub>,M,M<sub>p</sub>),则授权电子签名为S=(S′,Q<sub>p</sub>);③代理人生成请求认证文书,其中包括:代理人的身份信息、第②步中所得到的授权电子签名S以及请求对所签署的电子签名进行公证的认证消息;④代理人利用自己的私钥SK<sub>B</sub>签署请求认证文书,得到请求认证电文;⑤代理人将请求认证电文发送给认证中心CA,请求认证;⑥认证中心CA在收到代理人提交的请求认证电文后,确认该电文的完整性和真实性,当有错误,则拒绝提供认证服务,并要求代理人重新发送;当认证通过,进行下一步操作;⑦认证中心CA在内部数据库中搜索由委托人设定的最大签名次数,以及代理人已经代表委托人行使电子签名权力的签名次数,如果在委托授权的最大签名次数的范围内,则根据收到请求认证电文的时间,对所收到的请求认证电文中的授权电子签名签发时戳证书T<sub>P</sub>,同时修改内部数据库中的签名次数信息;否则,将拒绝提供认证服务,并终止操作;⑧认证中心CA将所签署的时戳证书T<sub>P</sub>返还给代理人;⑨代理人在收到由认证中心签署的时戳证书T<sub>P</sub>之后,将该时戳证书附在消息之后,作为其代表委托人对电子文书所签署的授权电子签名的时间证明,与电子文书M、授权电子签名S、授权证书C<sub>p</sub>一起,形成数据电文(M,S,C<sub>P</sub>,T<sub>P</sub>);第五步骤:接受者验证所收到的数据电文;其过程是:①接受者从所收到的数据电文中析出电子文书M、授权电子签名S、授权证书C<sub>p</sub>和时戳证书T<sub>P</sub>;②接受者利用委托人的公钥PK<sub>A</sub>,验证授权证书的合法性,利用认证中心的公钥,验证时戳证书T<sub>P</sub>的合法性,当验证不通过,则说明该数据电文无效;③接受者根据授权证书C<sub>p</sub>以及时戳证书T<sub>P</sub>,检查代理人是否有权签署该电子文书,即是否在限定的签名范围、限定的授权时效、限制的最大签名次数内进行的授权电子签名行为;当检查不通过,则说明该数据电文无效;④接受者从授权电子签名S中析出委托参数Q<sub>p</sub>;⑤接受者根据所约定的杂凑摘要算法,计算杂凑摘要值H<sub>p</sub>=Hash(C<sub>P</sub>,Q<sub>p</sub>);⑥接受者根据授权电子签名S,以及委托人的公钥PK<sub>A</sub>和代理人的公钥PK<sub>B</sub>,计算授权电子签名公钥<maths num="0003"><![CDATA[<math><mrow><msub><mi>PK</mi><mi>P</mi></msub><mo>=</mo><msub><mi>Q</mi><mi>P</mi></msub><mo>&times;</mo><msup><mrow><mo>(</mo><msub><mi>PK</mi><mi>A</mi></msub><mo>)</mo></mrow><msub><mi>H</mi><mi>P</mi></msub></msup><mo>&times;</mo><msub><mi>PK</mi><mi>B</mi></msub><mrow><mo>(</mo><mi>mod</mi><mi>p</mi><mo>)</mo></mrow><mo>;</mo></mrow></math>]]></maths>⑦接受者按照约定的普通电子签名方法,验证由代理人代表委托人签署的数据电文的合法性,即函数Ver(S′,PK<sub>p</sub>,M)是否为真,当值为真,则该授权电子签名是合法的;反之,则该授权电子签名是不合法的。
地址 430070湖北省武汉市武昌珞狮路122号