文档库 最新最全的文档下载
当前位置:文档库 › 【CN109981289A】隐式证书下的椭圆曲线数字签名算法的批认证方法【专利】

【CN109981289A】隐式证书下的椭圆曲线数字签名算法的批认证方法【专利】

【CN109981289A】隐式证书下的椭圆曲线数字签名算法的批认证方法【专利】
【CN109981289A】隐式证书下的椭圆曲线数字签名算法的批认证方法【专利】

(19)中华人民共和国国家知识产权局

(12)发明专利申请

(10)申请公布号 (43)申请公布日 (21)申请号 201910231811.5

(22)申请日 2019.03.26

(71)申请人 电子科技大学

地址 611731 四川省成都市高新区(西区)

西源大道2006号

(72)发明人 孙罡 刘伟 虞红芳 孙健 

(74)专利代理机构 成都正华专利代理事务所

(普通合伙) 51229

代理人 陈选中

(51)Int.Cl.

H04L 9/32(2006.01)

H04L 9/30(2006.01)

H04L 9/16(2006.01)

(54)发明名称

隐式证书下的椭圆曲线数字签名算法的批

认证方法

(57)摘要

本发明公开了一种隐式证书下的椭圆曲线

数字签名算法的批认证方法,其主要方法为:判

断“每个待认证数据的签名的第一个参数的和”

是否等于“每个待认证数据的签名的第二个参数

的逆与该待认证数据的摘要值的乘积之和与对

应的椭圆曲线上的基点的乘积的结果”加上“每

个待认证数据的签名的第二个参数的逆与签名

的第一个参数的x坐标值、隐式证书的待签名部

分的摘要值、数据发送方的公钥的重构因子的乘

积之和”加上“每个待认证数据的签名的第二个

参数的逆与签名的第一个参数的x坐标值的乘积

之和与证书中心的公钥的乘积得到的结果”,若

是则该批次的数据包均合法,通过认证,否则不

通过认证。本发明提出的批认证方法能够明显提

高系统吞吐率。权利要求书2页 说明书6页 附图2页CN 109981289 A 2019.07.05

C N 109981289

A

1.一种隐式证书下的椭圆曲线数字签名算法的批认证方法,其特征在于,包括以下步骤:

S1、获取每个待认证数据、发送方对该待认证数据生成的签名和对应的隐式证书;S2、获取每个待认证数据的签名的第一个参数的和,得到第一结果;

S3、获取每个待认证数据的签名的第二个参数的逆与该待认证数据的摘要值的乘积之和,得到第二结果;

S4、获取每个待认证数据的签名的第二个参数的逆与签名的第一个参数的x坐标值、隐式证书的待签名部分的摘要值、数据发送方的公钥的重构因子的乘积之和,得到第三结果;

S5、获取每个待认证数据的签名的第二个参数的逆与签名的第一个参数的x坐标值的乘积之和,得到第四结果;

S6、获取第二结果与对应的椭圆曲线上的基点的乘积,得到更新后的第二结果;获取第四结果与证书中心的公钥的乘积,得到更新后的第四结果;

S7、判断第一结果是否等于更新后的第二结果与第三结果、更新后的第四结果之和,若是则该批次的数据包均合法,通过认证,否则不通过认证。

2.根据权利要求1所述的隐式证书下的椭圆曲线数字签名算法的批认证方法,其特征在于,所述步骤S2的具体方法为:

根据公式

获取每个待认证数据的签名的第一个参数的和,得到第一结果A;其中l为待认证数据的总数;R i 为第i个待认证数据的签名的第一个参数。

3.根据权利要求1所述的隐式证书下的椭圆曲线数字签名算法的批认证方法,其特征在于,所述步骤S3的具体方法为:

根据公式

获取每个待认证数据的签名的第二个参数的逆与该待认证数据的摘要的乘积之和,得到第二结果B;其中l为待认证数据的总数;s i 为第i个待认证数据的签名的第二个参数;为第i个待认证数据的摘要值。

4.根据权利要求1所述的隐式证书下的椭圆曲线数字签名算法的批认证方法,其特征在于,所述步骤S4的具体方法为:

根据公式

获取每个待认证数据的签名的第二个参数的逆与签名的第一个参数的x坐标值、隐式证书的待签名部分的摘要值、数据发送方的公钥的重构因子的乘积之和,得到第三结果C;

权 利 要 求 书1/2页2CN 109981289 A

企业财务系统的身份认证和电子签名解决方案

企业财务系统的CA身份认证和电子签名解决方案 1、用户需求: 总结用户需求如下: ●财务系统需要提升安全级别。财务系统的基本情况如下: ?财务系统的系统结构、操作系统、开发语言等(略) ?三种主要应用功能:预算申请、审批、修正;费用的申报;对财务系统查阅。 ●需要解决单纯的用户名/密码登录的脆弱性问题,确保登录财务系统的身 份的真实性。 ●需要对财务系统的操作、交易实现签名,满足不可抵赖性、事后溯性的 应用需求。 2、解决方案 具体设计方案如下: ●建设数字证书认证服务器,解决服务器和个人用户身份真实性的问题。 具体建设方案如下: ?证书服务器负责证书的日常管理。 ?管理终端完成证书的申请和发放工作。 ?为应用服务器颁发服务器证书,为个人用户颁发个人证书。登录时,实现双向验证,确保应用服务器身份和个人身份的真实性。 ?用户手持USB KEY,带有密码芯片算法的KEY,存储量大于等于32K。 用于私钥存储,确保私钥的安全。 ?采用SQL数据库,用于证书服务器生成证书和CRL的存储 ●建设数字签名中间件,对用户在财务系统中的操作实现数字签名,实现 抗抵赖的功能。具体建设方案如下: ?将数字签名服务器与应用服务器共同部署; ?在IE中部署签名插件; ?用户的操作需要用私钥进行签名; ?服务器端对用户的签名数据进行验签;

?应用数据和签名数据进行分别的存储。 具体部署的拓扑图如下(略) 3、用户收益 采用本方案后用户收益如下: ●通过强身份认证手段的采用,确保所有登录财务系统用户的身份的真实 性 对财务系统的操作、交易实现签名,满足不可抵赖性、事后溯性的应用需求。 ---------------------------------------------------------------------------------------------------------------------- 北京安软天地科技有限公司 专业的应用安全服务提供商,主要提供CA系统、SSL VPN设备,以及身份认证、电子签名、电子印章、文档保护、加密解密等解决方案,在金融、政府、电力、石油石化行业有大规模成熟应用。

基于椭圆曲线的一种高效率数字签名

第26卷第2期 计算机应用与软件 Vol 126No .2 2009年2月 Computer App licati ons and Soft w are Feb .2009 基于椭圆曲线的一种高效率数字签名 侯爱琴 高宝建 张万绪 强 媛 (西北大学信息科学与技术学院 陕西西安710069) 收稿日期:2007-07-09。陕西省自然科学基金项目(2004A11)。侯爱琴,讲师,主研领域:信息安全,电子信息技术。 摘 要 为给出一种基于椭圆曲线密码的高效率的数字签名方案。不仅在算法设计时完全避免了费时的求逆运算,而且利用消 息HASH 值的汉明重量作为消息摘要进行签名与验证。结果在同等安全性下,该方案比通用的ECDS A 等方案运行时间更短。新方案可适用于网络等对签名实时性要求较高的场合。 关键词 椭圆曲线密码 哈希函数 汉明重量 椭圆曲线数字签名 A H I GH EFF IC I ENCY D IG ITAL S IGNATURE BASED O N ELL I PT IC CURVE Hou A iqin Gao Baojian Zhang W anxu Q iang Yuan (School of Infor m ation Science and Technology,N orthw est U niversity,X i ’an 710069,Shaanxi,China ) Abstract T o offer a high efficiency digital signature based on elli p tic curve cryp t ography .The design of the algorith m not only avoids ti m e 2costing inverse operati on comp letely but als o uses the hamm ing weight of HASH code of a message instead of HASH code itself as the message digest t o partici pate in the signature and verifying calculati on .The ne w scheme cost less ti m e than the popular EC DS A.The ne w sche me is a 2dap ted t o higher real 2ti m e needs f or signature such as internet . Keywords Elli p tic curve cryp t ography (ECC ) Hash Ha mm ing weight Elli p tic curve digital signature (EC DS A ) 0 引 言 数字签名是电子商务和网络安全认证的核心技术。基于公钥密码的数字签名体制一般有三类:基于大整数分解问题(I FP )的,如RS A;基于离散对数问题(DLP )的,如著名的E I Ga 2mal,DS A 等;基于椭圆曲线离散对数问题(EC DLP )的,如I EEE P1363标准中的EC DS A 等椭圆曲线数字签名。其中ECDLP 最难解,除几类特殊椭圆曲线外迄今没有找到有效的求解算法。椭圆曲线密码(ECC )是迄今为止每比特具有最高安全强度的密码系统,160位ECC 密钥的安全性能与1024位RS A 或ElGa mals 的密钥相当。 本文研究了以椭圆曲线密码理论为基础的一种高效率数字签名系统。 1 基于ECC 的数字签名方案分析 现有的椭圆曲线数字签名方案,典型的如ECDS A 是美国国家标准技术研究所(N I ST )出台的ANSI X9.62标准,其详细描述可参见文献[1-3];EC 2KC DS A 方案是韩国基于证书数字签名算法(KC DS A )的椭圆曲线版本,具体方案可参见文献[1]描述。还有E I Ga mal 方案等都是将有限域F p 上离散对数签名方案移植到椭圆曲线群上。 据文献[4]把一个传统的离散对数体制转变为椭圆曲线体制需要进行以下转换:①把模乘运算转变为椭圆曲线上的点加运算;②把模幂运算转换为椭圆曲线上的点乘运算。 而有限域F p 上离散对数签名方案一般是基于签名方程u =dv +kw (mod p -1),详见文献[5,6]。它由五个元素(d,k,u, v,w )组成,其中d 是签名者的密钥,k 是每次签名时生成的随机 整数(即消息密钥),u,v,w 可以分别取e,r ,s,其中,e =h (m )为被签名消息的Hash 值,r 是一个与k 有关的量,s 是消息m 的签名。 可以用不同的(e,r ,s )组合代替(u,v,w ),并且e,r,s 可分别换成其加法或乘法逆元,由此可以衍生出不同的签名方程,即可得到不同的数字签名方案。但不是所有的数学组合都能产生安全的数字签名方案,Harn 和Xu 给出了安全的离散对数签名方案的设计规则,并列出所有符合这种设计规则的数字签名方案[7]。 基于ECC 的E I Ga mal 方案和EC DS A 是其中的第(4)种方案,取u =e,v =r ,w =s,即为通用方程u =vd +kw (mod p )的变体:e =dr +ks,等价于s =k -1(e +dr ),该方程为EC DS A 签名方程;相应的验证方程s -1(eG +r Q )=kG 。 ECDS A 方案中的公钥产生算法是Q =dG,在签名的生成和验证时分别计算k -1mod n 和s -1mod n ,需要模逆运算。EC 2 KC DS A 方案最大的特点是公钥产生算法是Q =d -1 P ,采用了逆的预运算,这使得签名的生成和验证过程不需要进行模逆运算;EC 2KC DS A 方案的另一个特点是在计算消息的Hash 值前,将签名者的证书数据加入消息(计算e =H (hcert,m )),能够抵抗基于参数组数据的攻击。 在现有的椭圆曲线加密或者签名过程中,求逆是最费时的操作,一次求逆的时间大约相当于80次点乘运算,因而求逆是

椭圆曲线上的部分盲签名方案

第27卷第4期纺织高校基础科学学报Vol.27,No.4 2014年12月BASICSCIENCESJOURNALOFTEXTILEUNIVERSITIESDec.,2014  文章编号:1006‐8341(2014)04‐0508‐04 椭圆曲线上的部分盲签名方案 张建中,陈 楠,苑 飞 (陕西师范大学数学与信息科学学院,陕西西安710062) 摘要:针对椭圆曲线密码体制具有签名密钥短、运行速度快等优点,结合动态秘密共享和部分盲签名技术,提出了一个新的动态部分盲签名方案.该方案不但具备门限签名和盲签名的特性而且还可以随时更新签名密钥,密钥的分发和更新过程采用公开验证的方法,可以有效地抵抗相互欺诈行为的发生.分析表明,该方案操作简单,安全性高,应用范围广. 关键词:椭圆曲线;动态秘密共享;部分盲签名;门限签名 中图分类号:TP393 文献标识码:A 0 引 言 在现实生活中,人们从安全和保险的角度考虑,对一些具有重要价值的信息的访问权限不能只交给一个人掌握,如果只有一人拥有打开某信息的密钥,一旦密钥丢失或持有者无法提供正确的密钥,就会带来严重的损失.因此,1979年Shamir[1]提出了将秘钥分解成多个碎片发送给多个人掌管,其中达到一定数量的成员的集合便可以恢复密钥的(t,n)秘密分享的思想.秘密分享是门限密码学的基础,人们在这种思想的基础上提出了可验证的秘密分享体制[2],公开可验证秘密分享体制[3].为了避免密钥受到长期的、逐步的攻击,有时需要随时更新签名者的密钥,人们又提出了动态秘密分享体制[4],其后又提出许多新的秘密共享体制[5‐6].将这些思想与一些密码体制相结合形成了一些更安全、高效的新方案,比如基于RSA的门限签名方案,基于ELGamal的门限签名方案,还有基于椭圆曲线的门限签名方案等.与同等条件下的一些密码体制相比,椭圆曲线密码体制因具有签名密钥短、运行速度快、安全性高等优点而成为密码学界研究的热点.1992年ScottVanstone提出了椭圆曲线数字签名的算法[7](ECDSA),由于这种算法需要求解椭圆曲线上的逆元,运算复杂,经不断被改进,新的高效的椭圆曲线数字签名方案[8‐9]被提出,算法中尽量避免求解逆元,从而提高了椭圆曲线数字签名方案的运行效率. 盲签名的概念[10]是1982年Chaum在美国密码学会上首次提出的,盲签名要求用户和签名者之间达成一个协议,如果协议被正确执行,则用户获得签名者的签名,但是对签名人来说却不知道所签消息的具体内容[11].部分盲签名[12]是在盲签名的基础上由Abe和Fujisaki在1996年提出的,在部分盲签名方案中[13],签名人可以在签名中嵌入一个和用户事先约定好的公共信息,用来防止普通盲签名中被签名的消 收稿日期:2014‐01‐10 基金项目:国家自然科学基金资助项目(61173190,61273311);陕西省自然科学基础研究计划资助项目(2010JQ8027); 陕西省教育厅科研计划项目(2010JK398,12JK1003);中央高校基本科研业务费专项资金资助项目 (GK201002041) 通讯作者:张建中(1960‐),男,陕西省周至县人,陕西师范大学教授,博士.研究方向为信息安全与密码学及认证理论.E‐mail:jzzhang@snnu.edu.cn

基于椭圆曲线和RSA的数字签名的性能分析,数字签名,椭圆曲线

基于椭圆曲线和RSA的数字签名的性能分析,数字签名,椭圆曲线密码体制,RSA,C++ 1引言数字签名是实现认证的重要工具,他在身份认证、数据完整性、抗抵赖性以及匿名性等方面有重要的应用,是电子商务应用、电子政务推广中的核心技术,数字签名能保证文件中每页内容均不会被改动或替换。数字签名是特指以公钥密码实现的签名,或者可以定义为记录的一次变换,通过一个非对称密码系统和一个杂凑函数,使得有初始记录和签名者公钥的任何人都可以准确地判断该变换是否由相对应的私钥产生、初始记录在变换之后是否被修 1 引言 数字签名是实现认证的重要工具,他在身份认证、数据完整性、抗抵赖性以及匿名性等方面有重要的应用,是电子商务应用、电子政务推广中的核心技术,数字签名能保证文件中每页内容均不会被改动或替换。数字签名是特指以公钥密码实现的签名,或者可以定义为记录的一次变换,通过一个非对称密码系统和一个杂凑函数,使得有初始记录和签名者公钥的任何人都可以准确地判断该变换是否由相对应的私钥产生、初始记录在变换之后是否被修改。 常用的数字签名体制:RSA,EIGamal,ECC。其中基于RSA的数字签名算法现在应用十分广泛,而基于ECC的数字签名算法ECDSA则是未来签名算法的热点方向,本文就两种算法的性能进行了分析和比较,同时讨论了各自的应用范围。 2 RSA的数字签名算法 RSA算法是公钥密码体制中最著名的算法,他是以其发明人Rivest,Shamir和Adleman三人的首字母来命名的。RSA是建立在大整数分解的困难上的,是一种分组密码体制。RSA即可用于数据加密,也可用于数字签名。 2.1 RSA数字签名算法密钥对产生的过程 (1)选择2个大的素数p,q。 (2)计算n:n=pq。 (3)随机选取e,满足1<e<φ(n),gcd(e.φ(n))=1,那么公钥就是(e,n)。 (4)计算d:满足ed=1modφ(n),那么私钥就是(d,n)。 2.2 RSA数字签名算法的签名过程

一种椭圆曲线快速生成算法

一种椭圆曲线参数生成的快速算法 谷勇浩 刘勇 (北京邮电大学通信网络综合技术研究所) 摘要:椭圆曲线密码体制是公钥密码中的研究热点。该文介绍了椭圆曲线密码体制的基本概念及相关知识,讨论了目前基于离散对数问题的椭圆曲线密码的研究动态。本文的创新点是针对目前椭圆曲线研究重点之一——椭圆曲线参数生成算法,给出了一种生成参数a 、b 的快速算法。这种算法利用了Jacobi 符号和二次剩余的理论,并且用matlab 计算出利用这种算法生成一个椭圆曲线的平均时间,最后我们分析了今后椭圆曲线密码系统的研究方向和重点。 关键词:椭圆曲线;离散对数问题;Jacobi 符号;二次剩余;阶 1976年Diffie 和Hellman 提出公钥密码思想以来,国际上提出了许多种公钥密码体制的实现方案。一些已经被攻破,一些被证明是不可行的。目前,只有3类公钥密码体制被认为是安全有效的,按照其所依据的数学难题划分为:基于大整数分解问题(IFP ),如RSA 体制和Rabin 体制;基于有限域离散对数问题(DLP ),如Diffie-Hellman 体制和ElGamal 体制;基于椭圆曲线离散对数问题(ECDLP ),如椭圆密码体制。椭圆曲线应用到密码学上最早是由Neal Koblitz 和Victor Miller 在1985年分别独立提出的。它是目前已知的公钥体制中,对每一比特所提供加密强度最高的一种体制。它具有安全性高、密钥量小、灵活性好的特点,受到了国际上的广泛关注。而SET(Secure Electronic Transaction)协议的制定者已把它作为下一代SET 协议中缺省的公钥密码算法。深入研究基于椭圆曲线离散对数问题的公钥密码具有很大的现实意义。 1建立椭圆曲线公钥密码体制 1.1椭圆曲线域的参数 在基于椭圆曲线的加解密和数字签名的实现方案中,首先要给出椭圆曲线域的参数来确定一条椭圆曲线。在 IEEE P1363标准中,定义其参数为一个七元组:T=(q,FR,a,b,G,n,h),其中q 代表有限域GF(q),q 为素数或 2 m ;FR 为域表示法,如f(x)为 2 m F 域元素的不可约 多项式的表示法;曲线的方程,当q 为素数时,方程为2 3 ax b y x =++,当q 为2m 时, 方程为 2 32 xy a b y x x +=++,a,b 是方程中的系数;G 为基点;n 为大素数并且等于点G 的阶,h 是小整数称为余因子且#()/q h E n F =。主要的安全性参数是n ,因此ECC 密钥 的长度就定义为n 的长度。 1.2椭圆曲线密码的密钥 选取了基域 q F 和椭圆曲线后,得到了在有限域 q F 上的曲线E 确定的具体形式,即 上述的椭圆曲线域参数的一个七元组。每个用户选取一个整数d(1≤d ≤n-1) 作为其私钥,而以点Q=dG(G 为基点)作其公钥,这样形成一个椭圆曲线公钥密码系统。在这个密码体制中,具体的曲线,基域 q F ,基点G 及其阶n ,以及每个用户的公钥都是该系统的公开参

2010-《数字签名与认证技术》讲义-4-7 章

第四章 短签名和基于身份的签名 ( 2 学时) 【讲授内容】 1. 双线性对 2. 短签名 3. 基于身份的签名 4.1 双线性对(pairing ) 为什么能够签名长度短?就是利用了双线性对的原因。(现在是一种趋势。) 假设21,G G 是两个群,阶数都是素数q 。1G 为加法群,2G 为乘法群。P 是1G 的任一生成元,aP 就是a 个P 相加。假设离散对数问题在21,G G 都是困难的。满足以下条件的映射211:G G G e →?叫做双线性映射(bilinear map ) (1) 双线性性:*∈∈=q ab Z b a and G Q P all for Q P e bQ aP e ,,,),(),(1 (2) 非退化性:如果P 是1G 的生成元,则),(P P e 是2G 的生成元,也即1),(≠P P e (3) 可计算性:容易计算1,), ,(G Q P all for Q P e ∈。 Bilinear map 也叫做Pairing 。椭圆曲线上或超椭圆曲线上的Weil 对和Tate 对可作为pairing 使用。(椭圆曲线上加群的离散对数问题,可构造数字签名。) 而基于椭圆曲线上的加法群的离散对数问题建立的方案,具有长度短,安全性高的优点。现在再结合双线性对的特性,可使方案具有长度短和证明简便的结合的优点。 计算DH (CDH )问题:给出一个随机生成元g 和随机元素G h h ∈21,,计算))(log (log 21h h g g g , 也即如果y x g h g h ==21,,计算输出xy g 。如果这是困难的,就说CDH 假设在G 成立。 对应于加法群: 1G 上的DDH (Decisional Diffie-Hellman )问题:给出*∈q Z c b a cP bP aP P ,,),,,,(,判断ab c =。这一问题可以在多项式时间解决(验证),(),(cP P e bP aP e =)。 习惯写法:),(),(),,,(B A e Q P e B Q P A V DDH =→ 1G 上CDH (Computational Diffie-Hellman )问题:给出*∈q Z b a bP aP P ,),,,(,计算 abP 。 Gap Diffie-Hellman group (GDH ):计算DDH 容易,计算CDH 困难。Pairing 的原象域domain 就是GDH 群的例子。

信息安全之电子签名技术的实现

滨江学院 课程论文 题目数字签名的发展 院系计算机系 专业软件工程(动画方向)学生姓名陈婷 学号20092358009 指导教师朱节中 职称副教授 二O一二年五月二十日

数字签名的发展 陈婷 南京信息工程大学滨江学院软件工程(动画方向),南京210044 摘要: 数字签名是电子商务安全的一个非常重要的分支。随着电子商务的发展,电子签名的使用越来越多。实现电子签名的技术手段有很多种,但比较成熟的、世界先进国家目前普遍使用的电子签名技术还是基于PKI的数字签名技术。 关键词: 数字签名信息安全电子商务 1引言 1.1 研究背景 在当今信息社会,计算机网络技术得到了突飞猛进的发展。计算机网络日益成为工业、农业和国防等领域的重要信息交换手段,并逐渐渗透到社会的各个领域。在现实生活中,人们常常需要进行身份鉴别、数据完整性认证和抗否认。身份鉴别允许我们确认一个人的身份;数据完整性认证则帮助我们识别消息的真伪、是否完整;抗否认则防止人们否认自己曾经做过的行为。随着无纸化办公的发展,计算机网络的安全越来越受到重视,防止信息被未经授权的泄漏、篡改和破坏等都是亟待解决的问题。在Internet上,数字签名作为一项重要的安全技术,在保证数据的保密性、完整性、可用性、真实性和可控性方面起着极为重要的作用。同时由于信息技术的发展及其在商业、金融、法律等部门的普及, 数字签名技术又面临着新的挑战。 1.2 开发意义 数字签名是实现电子交易安全的核心技术之一,它在实现身份认证、数字完整性、不可抵赖性等功 能方面都有重要应用。尤其是在密钥分配、电子银行、电子证券、电子商务和电子政务等许多领域有重要 的应用价值。 2相关技术介绍 2.1PKI/CA 技术的介绍 PKI 就是公开密钥基础设施。它是利用公开密钥技术所构建的,解决网络安全问题的,普遍适用的一种基础设施。公开密钥技术也就是利用非对称算法的技术。说PKI 是基础设施,就意味着它对信息网络的重要。PKI 通过延伸到用户本地的接口,为各种应用提供安全的服务,如认证、身份识别、数字签名、

椭圆曲线加密算法

椭圆曲线加密算法 椭圆曲线密码学(英语:Elliptic curve cryptography,缩写为 ECC),一种建立公开密钥加密的算法,基于椭圆曲线数学。椭圆曲线在密码学中的使用是在1985年由Neal Koblitz和Victor Miller分别独立提出的。 ECC的主要优势是在某些情况下它比其他的方法使用更小的密钥——比如RSA 加密算法——提供相当的或更高等级的安全。ECC的另一个优势是可以定义群之间的双线性映射,基于Weil对或是Tate对;双线性映射已经在密码学中发现了大量的应用,例如基于身份的加密。不过一个缺点是加密和解密操作的实现比其他机制花费的时间长 1.椭圆曲线 在数学上,椭圆曲线(英语:Elliptic curve,缩写为EC)为一代数曲线,被下列式子所定义 y2=x3+ax+b 其是无奇点的;亦即,其图形没有尖点或自相交。 满足此条件的a b满足:4a3+27b2≠0 图1 在基础上需要定义一个无穷远的点,将此点作为零点:此时椭圆曲线定义为:{(x,y)∈?2|y2=x3+ax+b,4a3+27b2≠0}∪{0} 在椭圆曲线中的群的运算律: 1. 所有的点都在椭圆曲线上 2. 0点作为群上的单元点即 P+0=P 3. P点关于X轴的对称点为P点的逆即 P+(?P)=0

4.对于位于同一条直线上的三个点P,Q,R.则有 P+Q+R=0 图2 P+Q+R=0(无限远点 P Q R三个点的位置是任意的,他们满足加法的结合律,因为这个群是一个阿贝尔群。 2.椭圆曲线加法 当P和Q不相等时(x P≠x Q) 由于是在阿贝尔群上可以将P+Q+R=0改写为P+Q=?R所以在椭圆曲线上的加法定义为P Q 两点加法为P,Q两点连线与曲线的交点R的关于X轴对称点?R 图2-3 P+Q=-R P Q两点的直线的斜率为: m=y P?y Q x P?x Q 这条线与曲线的交点为:R=(x R,y R) x R=m2?x P?x Q y R=y P+m(x R?x P) 因此(x P,y P)+(x Q,y Q)=(x R,?y R)如果在图上表示即为上述的P+Q=?R

数字证书和数字签名的关系

数字证书和数字签名的关系 什么是数字证书? 由于Internet网电子商务系统技术使在网上购物的顾客能够极其方便轻松地获得商家和企业的信息,但同时也增加了对某些敏感或有价值的数据被滥用的风险. 为了保证互联网上电子交易及支付的安全性,保密性等,防范交易及支付过程中的欺诈行为,必须在网上建立一种信任机制。这就要求参加电子商务的买方和卖方都必须拥有合法的身份,并且在网上能够有效无误的被进行验证。数字证书是一种权威性的电子文档。它提供了一种在Internet上验证您身份的方式,其作用类似于司机的驾驶执照或日常生活中的身份证。它是由一个由权威机构----CA证书授权(Certificate Authority)中心发行的,人们可以在互联网交往中用它来识别对方的身份。当然在数字证书认证的过程中,证书认证中心(CA)作为权威的、公正的、可信赖的第三方,其作用是至关重要的。 数字证书也必须具有唯一性和可靠性。为了达到这一目的,需要采用很多技术来实现。通常,数字证书采用公钥体制,即利用一对互相匹配的密钥进行加密、解密。每个用户自己设定一把特定的仅为本人所有的私有密钥(私钥),用它进行解密和签名;同时设定一把公共密钥(公钥)并由本人公开,为一组用户所共享,用于加密和验证签名。当发送一份保密文件时,发送方使用接收方的公钥对数据加密,而接收方则使用自己的私钥解密,这样信息就可以安全无误地到达目的地了。通过数字的手段保证加密过程是一个不可逆过程,即只有用私有密钥才能解密。公开密钥技术解决了密钥发布的管理问题,用户可以公开其公开密钥,而保留其私有密钥。 数字证书颁发过程一般为:用户首先产生自己的密钥对,并将公共密钥及部分个人身份信息传送给认证中心。认证中心在核实身份后,将执行一些必要的步骤,以确信请求确实由用户发送而来,然后,认证中心将发给用户一个数字证书,该证书内包含用户的个人信息和他的公钥信息,同时还附有认证中心的签名信息。用户就可以使用自己的数字证书进行相关的各种活动。数字证书由独立的证书发行机构发布。数字证书各不相同,每种证书可提供不同级别的可信度。可以从证书发行机构获得您自己的数字证书。 目前的数字证书类型主要包括:个人数字证书、单位数字证书、单位员工数字证书、服务器证书、VPN证书、W AP证书、代码签名证书和表单签名证书。 随着Internet的普及、各种电子商务活动和电子政务活动的飞速发展,数字证书开始广泛地应用到各个领域之中,目前主要包括:发送安全电子邮件、访问安全站点、网上招标投标、网上签约、网上订购、安全网上公文传送、网上缴费、网上缴税、网上炒股、网上购物和网上报关等。 什么是数字签名?数字签名与电子签名是不是一回事? 电子签名和数字签名的内涵并不一样,数字签名是电子签名技术中的一种,不过两者的关系也很密切,目前电子签名法中提到的签名,一般指的就是"数字签名"。

【CN109981284A】一种椭圆曲线数字签名的实现方法及装置【专利】

(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 201910181267.8 (22)申请日 2019.03.11 (71)申请人 北京三未信安科技发展有限公司 地址 100102 北京市朝阳区广顺北大街16 号院2号楼14层1406室 (72)发明人 杨国强  (74)专利代理机构 北京轻创知识产权代理有限 公司 11212 代理人 杨立 (51)Int.Cl. H04L 9/32(2006.01) H04L 9/08(2006.01) (54)发明名称 一种椭圆曲线数字签名的实现方法及装置 (57)摘要 本发明涉及一种椭圆曲线数字签名的实现 方法及装置,包括处理器将生成的签名消息数据 包发送至密码卡,签名消息数据包包括临时签名 公私钥对和待签名消息;密码卡接收签名消息数 据包,获取签名消息数据包中的临时签名公私钥 对和待签名消息,根据临时签名公私钥对、预先 存储的用户签名私钥和辅助公私钥对,得到待签 名消息的数字签名。本发明提高用户签名的安全 性, 同时提高数据处理的效率。权利要求书2页 说明书6页 附图1页CN 109981284 A 2019.07.05 C N 109981284 A

权 利 要 求 书1/2页CN 109981284 A 1.一种椭圆曲线数字签名的实现方法,其特征在于,包括: 处理器将生成的签名消息数据包发送至密码卡,所述签名消息数据包包括临时签名公私钥对和待签名消息; 密码卡接收所述签名消息数据包,获取所述签名消息数据包中的所述临时签名公私钥对和所述待签名消息,根据所述临时签名公私钥对、预先存储的用户签名私钥和辅助公私钥对,得到待签名消息的数字签名。 2.根据权利要求1所述的实现方法,其特征在于, 所述辅助公私钥对中的私钥由所述密码卡随机生成,所述辅助公私钥对中的公钥通过所述辅助公私钥对中的公钥和椭圆曲线的基点生成。 3.根据权利要求1所述的实现方法,其特征在于, 所述临时签名公私钥对中的私钥由所述处理器随机生成,所述临时签名公私钥中的公钥通过所述临时签名公私钥对中的私钥和椭圆曲线的基点生成。 4.根据权利要求2所述的实现方法,其特征在于, 所述辅助公私钥对定时更新。 5.根据权利要求1-4中任一项所述的实现方法,其特征在于,所述根据所述临时签名公私钥对、预先存储的用户签名私钥和辅助公私钥对,得到待签名消息的数字签名的具体步骤包括: 将所述临时签名公私钥对中的公钥和所述辅助公私钥对中的公钥执行点加运算,得到第一运算结果; 将所述临时签名公私钥对中的私钥和所述辅助公私钥对中的私钥执行模加运算,得到第二运算结果; 根据所述用户签名私钥、所述第一运算结果和所述第二运算结果,得到所述待签名消息的数字签名。 6.一种椭圆曲线数字签名的实现装置,其特征在于,包括处理器和密码卡; 所述处理器,用于将生成的签名消息数据包发送至所述密码卡,所述签名消息数据包包括临时签名公私钥对和待签名消息; 所述密码卡,用于接收所述签名消息数据包,获取所述签名消息数据包中的所述临时签名公私钥对和所述待签名消息,根据所述临时签名公私钥对、预先存储的用户签名私钥和辅助公私钥对,得到所述待签名消息的数字签名。 7.根据权利要求6所述的实现装置,其特征在于, 所述密码卡随机生成所述辅助公私钥对中的私钥,通过所述辅助公私钥对中的私钥和椭圆曲线的基点生成所述辅助公私钥对中的公钥。 8.根据权利要求6所述的实现装置,其特征在于, 所述处理器随机生成所述临时签名公私钥对中的私钥,通过所述临时签名公私钥对中的私钥和椭圆曲线的基点生成所述临时签名公私钥中的公钥。 9.根据权利要求6-8任一项所述的实现装置,其特征在于, 所述密码卡,用于将所述临时签名公私钥对中的公钥和所述辅助公私钥对中的公钥执行点加运算,得到第一运算结果; 将所述临时签名公私钥对中的私钥和所述辅助公私钥对中的私钥执行模加运算,得到 2

RSA数字签名算法的模拟实现

RSA数字签名算法的模拟实现 摘要 本程序为简易版RSA算法加密解密过程的模拟实现。 程序分为加密和验证两部分。根据课上所学的MD5加密过程,以及RSA算法,本程序采用MD5算法,先对文件内容进行加密,得到文字摘要;再利用RSA算法的私钥,对文字摘要进行加密,得到数字签名。在验证部分,用RSA公钥对数字证书签名解密,得到文字摘要S1,再将需要验证的文档用公用的MD5算法处理,得到文字摘要S2,检验文字摘要S1与S2的一致性,从而断定原文是否被篡改。程序采用树形图对文件进行直观的显示管理。采用文本文档存储数字签名。 关键词:RSA MD5 文字摘要数字签名

Abstract This program is simple version of the RSA algorithm encryption and decryption process simulation. The procedures are divided into two parts, encryption and authentication. Lessons learned based on the MD5 encryption process, as well as RSA algorithm, the procedures used MD5 algorithm, first pairs contents of the file carry on encrypt, to obtain text abstract; re-use RSA algorithm's private key, encryption for text abstract, obtain the digital signature. In the verification part, with the RSA algorithm's public key pairs of digital certificate signature decryption, get text abstract S1, and then using a public MD5 algorithm encryption the document which need to be verify, to obtain text abstract S2, text the consistency of S1 and S2, thereby conclude that original text whether the been tampered with. Program uses the file tree intuitively display management the files. Adopt text document storage digital signatures. Key words:RSA MD5 Text abstract Digital signature

数字签名技术的认证和分类

数字签名技术的认证和分类 摘要随着计算机网络的迅速发展,人们经常利用网络进行信息的传递和文件的传输,这种传递的方式非常方便,因此很多商家开始在Internet中进行电子交易,为了保证交易的安全性数字签名因此诞生。 关键词数字签名;密码学;认证技术 现代密码学有很多组成部分,数字签名就是其中非常重要的一部分。数字签名也是公钥密码学的重要应用之一,其研究的方向有信息论、概率论、数论等多方面的内容。数字签名与手写签名相类似,它能够帮助验证签名者是否是消息的发出者;另一方面,数字签名被接收者保存下来,一旦出现争执的情况时,数字签名可以作为证据交给第三方(例如法院),由第三方验证此签名的合法性。 因此,使用数字签名可以避免产生以下四类问题: 1)否认。发送方或接收方在事后否认已经发送或接收过此份文件; 2)伪造。接收方自己或让他人帮助伪造出一份来自发送方的文件; 3)篡改。接收方对从发送方接到的文件内容进行全部或部分篡改; 4)冒充。在计算机网络中,某一用户冒充他人成为接收方或发送方。 数字签名是一种认证技术,它可以认证下面的内容: 1)实体认证。采取一定的鉴别协议来验证是否在正确的接收方和发送方之间进行信息通信; 2)身份认证。用户身份认证的目的是防止非法的用户访问该数据,采用数字签名技术进行身份认证在很大程序上提高了控制的力度; 3)报文认证。确认用户双方无误之后,就可以开始报文通信了。为了验证传送数据是否真实,可以采用数字签名对对数据进行验证。例如验证传送数据的时间、来源地、目的地等的真实性。 我们在日常生活中经常需要签名,例如在银行进行存款和取款时需要签名;在商业活动中需要在契约和合同上签名。在互联网上进行网上交易时需要进行数字签名。这种手写签名和数字签名的主要区别在于:手写签名因人而异,每个人都会因为书写习惯不同或常用字体不同而拥有不同的签名;数字签名是由0 和1 组成的字符串,消息内容不同则数字签名结果也不同。它们之间的主要区别在于:

DSA数字签名算法

DSA数字签名算法 1 引言 为了确保数据传输的安全性,不得不采取一系列的安全技术,如加密技术、数字签名、身份认证、密钥管理、防火墙、安全协议等。其中数字签名就是实现网上交易安全的核心技术之一,它可以保证信息传输的保密性、数据交换的完整性、发送信息的不可否认性、交易者身份的确定性等。DSA(Digital Signature Algorithm,数字签名算法,用作数字签名标准的一部分),它是另一种公开密钥算法,它不能用作加密,只用作数字签名。DSA使用公开密钥,为接受者验证数据的完整性和数据发送者的身份。它也可用于由第三方去确定签名和所签数据的真实性。DSA算法的安全性基于解离散对数的困难性,这类签字标准具有较大的兼容性和适用性,成为网络安全体系的基本构件之一。 2. 数字签名 2.1 数字签名的概念 数字签名在ISO7498—2标准中定义为:“附加在数据单元上的一些数据,或是对数据单元所作的密码变换,这种数据和变换允许数据单元的接收者用以确认数据单元来源和数据单元的完整性,并保护数据,防止被人(例如接收者)进行伪造”。 数字签名是通过一个单向函数对要传送的信息进行处理得到的用以认证信息来源并核实信息在传送过程中是否发生变化的一个字母数字串。数字签名提供了对信息来源的确定并能检测信息是否被篡改。 数字签名要实现的功能是我们平常的手写签名要实现功能的扩展。平常在书面文件上签名的主要作用有两点,一是因为对自己的签名本人难以否认,从而确定了文件已被自己签署这一事实;二是因为自己的签名不易被别人模仿,从而确定了文件是真的这一事实。采用数字签名,也能完成这些功能: (1)确认信息是由签名者发送的; (2)确认信息自签名后到收到为止,未被修改过; 签名者无法否认信息是由自己发送的。 数字签名和手签的区别是:手签是模拟的,易伪造,而数字签名是基于数学原理的,更难伪造。

椭圆曲线数字签名中阈下信道通信研究

椭圆曲线数字签名中阈下信道通信研究 摘要:针对阈下信道技术在椭圆曲线数字签名中的应用可能以及存在的安全隐患问题,通过对其中存在的窄带阈下信道进行实时性测试,在平衡传输信息容量与签名时间的条件下,确定了合理的阈下信息传输位数。实验结果表明,窄带阈下信道在椭圆曲线数字签名中可以被有效利用。 关键词:椭圆曲线密码体制;数字签名;窄带阈下信道;信息隐藏;Miracl大数库 中图分类号: TP309 文献标志码:A Covert communication based on subliminal channel in?? elliptic curve digital signature algorithm ZHANG Qiuyu, SUN Zhanhui College of Computer and Communication, Lanzhou University of Technology, Lanzhou Gansu 730050, China ) Abstract: There are narrowband and broadband subliminal

channels in the Elliptic Curve Digital Signature Algorithm (ECDSA),but broadband subliminal channel cannot be safely used. Therefore, the realtime test of narrowband subliminal channel was done. The reasonable bit rate of the sent message was confirmed when the capacity and realtime requests of narrowband subliminal channel were satisfied. The result shows narrowband subliminal channel can be effectively used in ECDSA. Key words: Elliptic Curve Cryptography (ECC); digital signature; narrowband subliminal channel; information hiding; Miracl large number library 0 引言 自Simmons[1]于1978年提出阈下信道概念以来,阈下信道已经发展成为一种典型的信息隐藏手段。研究表明,绝大多数数字签名方案中都可包含阈下信道的通信,其最大的特点是阈下信息包含于数字签名之中,但对数字签名和验证过程无任何影响。目前,关于阈下信道的研究主要分为两个方面:一是研究如何建立阈下信道;二是研究如何封闭阈下信道。虽然已经提出许多构造阈下信道[2-4]和封闭阈下信道[5-8] 的方案,但多存在于理论研究阶段,真正得到的应用很少。

数字签名算法原理

实验1-5 数字签名算法 DSS 一.实验目的 通过对数字签名算法DSS的实际操作,理解DSS的基本工作原理。 二.实验原理 以往的文件或书信可以通过亲笔签名来证明其真实性,而通过计算机网络传输的信息则通过数字签名技术实现其真实性的验证。 数字签名目前采用较多的是非对称加密技术,其实现原理简单的说,就是由发送方利用哈希算法对要传送的信息计算得到一个固定位数的消息摘要值,用发送者的私有密钥加密此消息的哈希值所产生的密文即数字签名。然后数字签名和消息一同发给接收方。接收方收到消息和数字签名后,用同样的哈希算法对消息进行计算得出新的哈希值,然后用发送者的公开密钥对数字签名解密,将解密后的结果与新的哈希值相比较,如相等则说明报文确实来自发送方。 下面我们以DSA(Digital Signature Algorithm)为例,介绍数字签名算法。DSA源于ElGamal和Schnorr签名算法,被美国NIST采纳作为DSS(Digital Signature Standard)数字签名标准。DSS数字签名算法的具体实现过程课参见图1-5。 比较 a 签名过程 b 验证过程 图1-5 DSS算法的实现过程 首先介绍DSS算法的主要参数: 1. 全局公开密钥分量  1)素数p, 2511

椭圆曲线数字签名算法(ECDSA)

摘要 椭圆曲线数字签名算法(ECDSA)是使用椭圆曲线对数字签名算法(DSA)的模拟。 ECDSA于1999年成为ANSI标准,并于2000年成为IEEE和NIST标准。它在1998年既已为ISO所接受,并且包含它的其他一些标准亦在ISO的考虑之中。与普通的离散对数问题(discrete logarithm problem DLP)和大数分解问题(integer factorization problem IFP)不同,椭圆曲线离散对数问题(elliptic curve discrete logarithm problem ECDLP)没有亚指数时间的解决方法。 因此椭圆曲线密码的单位比特强度要高于其他公钥体制。 本文将详细论述ANSIX9.62标准及其协议,安全,实现,互操作性方面的问题。 1、介绍 数字签名算法(DSA)在联邦信息处理标准FIPS中有详细论述,称为数字签名标准。它的安全性基于素域上的离散对数问题。椭圆曲线密码(ECC)由Neal Koblitz和Victor Miller 于1985年发明。它可以看作是椭圆曲线对先前基于离散对数问题(DLP)的密码系统的模拟,只是群元素由素域中的元素数换为有限域上的椭圆曲线上的点。椭圆曲线密码体制的安全性基于椭圆曲线离散对数问题(ECDLP)的难解性。椭圆曲线离散对数问题远难于离散对数问题,椭圆曲线密码系统的单位比特强度要远高于传统的离散对数系统。因此在使用较短的密钥的情况下,ECC可以达到于DL系统相同的安全级别。这带来的好处就是计算参数更小,密钥更短,运算速度更快,签名也更加短小。因此椭圆曲线密码尤其适用于处理能力、存储空间、带宽及功耗受限的场合。 ECDSA是椭圆曲线对DSA的模拟。ECDSA首先由Scott和Vanstone在1992年为了响应NIST对数字签名标准(DSS)的要求而提出。ECDSA于1998年作为ISO标准被采纳,在1999年作为ANSI标准被采纳,并于2000年成为IEEE和FIPS标准。包含它的其他一些标准亦在ISO的考虑之中。本文中我们将介绍ANSI X9.62标准。也将介绍一些签名的基础知识以及协议、安全性、实现、互操作性方面的问题。 本文其他部分的安排如下: 第二节中我们将回顾数字签名方案和DSA, 第三节和第四节将分别介绍有限域和椭圆曲线, 第五节将讲述域参数的产生和参数有效性的验证, 第六节将讲述密钥对的产生和公钥有效性的验证, 第七节的内容是ECDSA的签名和验证过程。第八章论证ECDSA的安全性, 第九节和第十节讲述的是ECDSA协议和实现方面的问题。

相关文档