文档介绍:《信息安全技术》课程论文实验名称: ECDSA 算法实现及其安全性分析专 业: 计算机科学与技术班 级: 2012 级(1)班学 号: 1220040622姓 名: 曾宪泽2015 年 12 月 5 日ECDSA 算法实现及其安全性分析【摘要】:阐述了 ANSI  椭圆曲线数字签名算法(ECDSA)基本 原理;对其安全性进行了初步探讨;并根据该原理对ECDSA 进行了程序实现;通过对该程序的运行分析与测试表明, 该程序实现了 ECDSA 的基本功能,且具有系统参数小、处 理速度快、密钥尺寸小等优点。【关键词】:椭圆曲线密码学;ECDSA;算法实现;安全性中图分类号: 文献标示码:A1、前言椭圆曲线密码系统(ECC)于 1985 年由 Neal Koblitz 和 VictorMiller 发明,可看作是传统离散对数(DL)密码系统的椭圆曲线对等表示。传统系统中的 Z*p 子群被有限域上的椭圆曲线点群所代替。椭圆曲线密码系统安全性的数学基础是椭圆曲线离散对数问题(ECDLP)的计算复杂性。 由于 ECDLP 比 DLP 困难得多,椭圆曲线统中每个密钥位的强度在本质上要比传统的离散对数系统大得多。因而除了具有相同等级的安全性外,ECC 系统所用的参数比 DL 系统所用的参数少。该系统的优点是参数少、速度快以及密钥和证书都较小。这些优点在处理能力、存储空间、带宽和能源受限的环境中尤其重要。本文阐述了 ANSI  ECDSA 算法及其软件实现,并对其安全性进行了初步探讨。2、、数字签名方案数字签名方案用于提供手写体签名(或其它签名)的数字副本。数字签名是只有签名者才知道的一些秘密数字(签名者的私钥,该数字用来对消息内容进行签名)。签名必须是可以验证的——如果出现诸如某个成员是否签署某个文档的争执,则没有偏见的第三方不需要访问签名者的私钥就能公正地解决该问题。 数字签名方案可用于提供如下基本密码学服务:消息完整性(确保消息不被以非授权或未知方式改变),消息源可信(确保消息源和声明相同)以及抗抵赖性(确保成员不能否认先前的行为和委托)。ANSI  (ECDSA)表达为:当运用适当的控制时,该标准的技术提供消息源、消息内容的完整性,、有限域有限域由在 F 上具有二元操作的 F 元素的有限集组成,二元操作指满足某一算法特性的加法和乘法。有限域的阶是域中元素的数量。当且仅当 q 为素数次方时存在 q 阶有限域。如果 q 为素数次方,则本质上只有一个 q 阶有限域;这个域记为 Fq。有很多方法描述 Fq中的元素。如果(q=pm),这里 p 为素数,m 为正整数,则 p 称为Fq的特征值,m 称为 Fq 的扩展阶。大部分标准指定将椭圆曲线密码学技术限定在奇素数阶(q=p)或 2 的幂(q=2m)之内。p 为一奇素数时,称为素数域的有限域 Fq,由具有相应算法操作特性的整数集{0,1,2, …,p-1}组成。有限域 m2F 称为特征双有限域和二元有限域,可以看作是由 0 和 1 组成的有限域 F2 上的 m 维向量空间。也就是 m2F 中存在 m 个元素 12m1,,,−α α⋅⋅⋅α,满足每个α∈m2F 能用以下的形式唯一写出:0011m1m1aaa−−α=α+α+⋅⋅⋅+α,这里 ai∈{0,1}。、有限域上的椭圆曲线在 ECC 中,我们关心的是某种特殊形式的椭圆曲线,即定义在有限域上的椭圆曲线。、Fp 上的椭圆曲线令 p>3 为素数,Fp 上的椭圆曲线由形如公式(1)的等式定义:y2 = x3 + ax + b (1)这里 a,b∈Fp,且 4a3+27b20(mod p)。椭圆曲线的点集 E(Fp)由所有满足等式(1)的点(x,y), x∈Fp,y∈Fp 组成,包括被称之为无穷点的特殊点 Ο。对于椭圆曲线上的两点相加给出椭圆曲线上第三点,有一条规则,称之为弦切律。伴随这种加法操作,E(Fp)的点集形成了一个用 Ο点作为标记的群。正是这个群被用来构造椭圆曲线密码系统。加法律最好用几何解释。令 P=(x1,y1)且 Q=(x2,y2)是椭圆曲线 E 上两个截然不同的点,则 P 和 Q 的和,记为 R=(x3,y3),定义如下:首先通过点 P 和 Q 作一条直线;这条直线与椭圆曲线交于第三点;则点 R 就是这个点关于 x-轴的映像,如图 1 所示。图中的椭圆曲线由两部分组成,象椭圆的图形和无穷曲线。如果 P=(x1,y1),则 P 的加倍为 R=(x3,y3)定义如下:首先做一条直线与椭圆曲线相切于点 P;这条直线与椭圆曲线交于第二点;则点 R 就是这个点关于 x-轴的映像,如图 2 所示。图 1 两个不同的椭圆曲线点相