网络信息安全论文

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

网络信息与安全——EIGamal数字签名方法的研究与分析

姓名:

学号:

班级:

指导老师:

时间:

EIGamal数字签名方法的研究与分析

【摘要】在实际生活和工作中,许多事物的处理需要当事人的签名。尤其在现代通信中,签名更是起到了认证、核准、有效和负责等功效。数字签名是现代密码学的一个重要组成部分,自从Diffie和Hellman于1976年首次提出数字签名以来,数字签名就在学术界和计算机网络界得到了迅猛的发展。ElGamal就是一种原理简单,应用广泛的数字签名方法,它的成功很大程度上取决于求解离散对数问题的困难。本文介绍了这种数字签名方法,阐述了实现的方法,分析了其安全性及可能的攻击方法,并分析了EIGamal改进型算法及其证明。

【关键词】EIGamal体制数字签名计算机网络

一、前言

众所周知,一个人在一份文件的最后想证明自己身份可以用他的印章或手写签名,而一个单位可以用公章。在信息高度电子数字化的今天,很多文件,数据都不是纸质的,难道我们可以在一份数据文件上盖印章吗?回答是肯定的,这就是要使用数字签名技术。数字签名技术作为计算机数据安全的一项重要手段,现在正被广泛应用,电子邮件(E—mail)、电子资金转账(EFT)、电子数据交换(EDI)和软件分发等方面,都要使用数字签名技术。随着计算机网络的应用普及,网络对等实体的识别、通信保密和数据完整性显得越来越重要,而确实解决这一问题则必须要使用数字签名技术。

在1976年公钥密码体制没有发明以前,人们使用传统的密码技术解决数据交换中的安全问题,一个人能使用密码加密一个文件给另外一个人,那么另外的那个人必须要利用解密密钥才能读懂加密过的文件,这时通信双方的身份和文件的

完整性都随着文件的解密是否成功而不言而喻。1976年,W.Diffie 和M.Hell-man 发明了公钥密码体制,美国公布了数据加密标准(DES ),标志着现代密码技术到达了一个新的阶段,数字签名技术也得到了飞速地发展。采用私钥密码体制(DES )技术和公钥算法(如RSA 等)都可以实现数字签名。由于私钥密码体制本身的特性,使用私钥的数字签名体制在存储和通信上花费都比较大,故一般不考虑使用。而由于公钥密码体制的特点,其非常适合应用于签名技术,因此现在公布的几种数字签名建议标准中使用的都是公钥密码体制。如ISO 建议过的RSA 算法和美国国家标准与技术研究所(NIST )建议标准DSS (Digital Signature Stantard ),也是从下面我们介绍的EIGamal 公钥密码体制演变而来的。

二、什么是EIGamal 公钥密码体制

EIGamal 公钥密码体制是1984年Stanford 大学的Tather EIGamal 提出的,这是基于离散对数运算基础上的公钥体制,它采用的是Diffe —Helfman 密钥分配体制的思想,综合了其他一些加密体制的优点。利用EIGamal 公钥密码体制设计出的数字签名方法与一般公钥密码体制签名方法的不同之处,是具有高安全性和实用性。

Diffie-Hdlman 体制是指;在基于素散的有限域GF(p)上,其中P 是一素数,g 是其本原元,A 、B 两方想要通信,首先要得到双方都知道的一个通信密钥KAB ,假设A 、B 各持有一私用密钥XA 、XB ,A 可计算YA=p g XA mod ,将YA 发往B 。B 可计算YB=p g XB mod ,将YB 发往A 。然后双方同时计算:KAB=)mod (mod mod p g p YB p YA XAXB XA XB ==

EIGamal 密码体制也是通信双方各持有一私钥密钥XA 、XB ,并将YA (p g XA mod )、YB (p g XB mod )作为公开密钥公布。双方加解密的方法是通过生成一组随机数混入明文块中以产生一个二维密文数组,达到随机密码的效果。

EIGamal 数组签名方法具体如下:

1.体制参数

p :一个大素数,可使p Z 中求解离散对数为困难的问题 g: 是p Z 中乘群*p Z 的一个生成元或本原元素 M: 消息空间为*p Z

S :签名空间为1*-⨯p p

Z Z X :用户密钥*p Z x ∈,公钥为p g y x mod =

安全参数为k=(p,g,x,y),其中p 、g 、y 为公钥,x 为密钥。 2.签名过程

给定消息M ,发送端用户进行下述工作: (1)选择秘密随机数*p Z k ∈。 (2)计算压缩值H(M),并计算:

p g r k mod =

)1mod())((1--=-p k xr M H s

(3)将Sig(M ,k)=(M ,r ,s)作为签名,将(M ,r ,s)送给对方。 3.验证过程

收信人收到(M ,r ,s),先计算H(M),并按下式验证签名

p g r y M H s r mod )(=

这是因为p g g g r y sk rx sk rx s r mod )(+==,由上式有)1mod()()(-=+p M H sk rx 。在此方案中,对同一消息M ,由于随机数k 不同而有不同的签名值(M ,r ,s)。

三、EIGamal 加密算法的安全性分析

很明显,EIGamal 加密算法的安全性等价于Diffie-Hdlman 体制的安全性。虽然还没有完全证明破译ELGamal 签名体制等价于求解H(M)上的离散对数问题,但从可能的攻击方法来看,其破译方法大多都等价于求解H(M)上的离散对数问题。

破译签名体制,本质上就是试图从(M,r,s)中得到签名者的私用密钥x 。假设

给定一组明文{}...2,1:=i m r 及其相关的签名{}n i s r i i ,...,1:),(=,那么破译者可根据下式列出n 个方程组:

())1mod()(-+=p sk rx M H

但是n 个方程有n+1个未知数,n k k k ,...,,21,x ,故有无数组解。因此,在k 互不相同的情况下,用此方法破译ELGamal 签名体制是不行的。

若从其他途径来攻击,如求解p g r y M H s r mod )(=方程来得到x ,其等价于求解H(M)上的离散数对问题。

另外,一种威胁EIGamal 签名体制的方法是假冒签名,这分为两种情况。一种是假冒者有任一组明文H(M),他想假冒别人的签名,但不知道别人的私用密钥,若想满足p g r y M H s r mod )(=这一关系式,只有构造一对(r ,s),但现在还没有有效的算法解决这一问题。

另一种是假冒者已知一组合法明文及其对应的签名,那么他就能伪造另外一组合法的明文及签名。假设伪造者已知的明文及签名为(M,r,s),那么他可构造另外一组(''',,s r M )如下:

p y g r B A mod '= )1mod(/-''-=p B r s )1mod(/''--=p B r M A

这里A 、B 是两整数,且gcd (B ,p-1)=1。

这一情况在其他签名体制中也存在,但假冒者想伪造任一组明文是不可能的。这可以用限制明文的结构和采用均匀性较好的HASH 函数压缩明文来客服这一弱点。

公钥密码体制的安全强度一般等价于求解数学中某一难题,现在已知最好的求解离散对数问题和大数分解问题的算法时间复杂性为:)ln 69.0(exp m m O ,这里m 为公钥系统的密码长度。因此,要保证EIGamal 体制的安全性,故其密钥长度(大素数p 的长度)不能低于RSA 中所用的密钥长度。一般要100位以上的十进制整数。在RSA 加密系统中,每两个用户之间就需要一对私用密钥和公开密

相关文档
最新文档