ELGamal算法.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EIGamal算法王亚星 叶达成 张常文历史背景 EIGamal公钥密码体制是1984年斯坦福大学的Tather EIGamal 提出的一种基于离散对数问题困难性的公钥体制。1985年,Tather EIGamal 利用EIGamal 公钥密码体制设计出EIGamal数字签名方案,该数字签名方案是经典数字签名方案之一,具有高度的安全性与实用性。后来,EIGamal数字签名体制的变体被使用于数字签名标准DSS中,直到今天,很多新的数字签名方案仍然属于EIGamal数字签名体制的变体或扩展。群? 群是一个集合G,连同一个运算 ·,它结合任何两个元素 a 和 b 而形成另一个元素,记为 a · b。符号 · 是对具体给出的运算,比如加法的一般的占位符。要具备成为群的资格,这个集合和运算 (G, ·) 必须满足叫做群公理的四个要求:1.封闭性。对于所有?G?中?a,?b,运算?a?·?b?的结果也在G?中。2.结合性。对于所有?G?中的?a,?b?和?c,等式 (a?·b) ·c?=?a?· (b?·?c) 成立。3.单位元。存在?G?中的一个元素?e,使得对于所有?G?中的元素?a,等式e?·?a?=?a?·?e?=?a?成立。4.反元素。对于每个?G?中的?a,存在?G?中的一个元素?b?使得?a?·b?=?b?·?a?=?e,这里的?e?是单位元。?群例如整数集合 和加法运算,具有以下性质1.对于任何两个整数 a 和 b,它们的和 a + b 也是整数。换句话说,在任何时候,把两个整数相加都能得出整数的结果。这个性质叫做在加法下封闭。2.对于任何整数?a,?b?和?c,(a?+?b) +?c?=a?+ (b?+?c)。用话语来表达,先把?a?加到?b,然后把它们的和加到c,所得到的结果与把?a?加到?b?与?c?的和是相等的。这个性质叫做结合律。3.如果?a?是任何整数,那么 0 +?a?=?a?+ 0 =?a。零叫做加法的单位元,因为把它加到任何整数都得到相同的整数。对于任何整数?a,存在另一个整数?b?使得?a?+?b?=?b?+a?= 0。整数 b 叫做整数 a 的逆元,记为 ?a。群一个群被称为有限群,如果它有有限个元素。元素的数阶叫做群 G 的阶例如,模19下7的阶为3,[1, 7, 49, 343, 2401, 16807, 117649, 823543, 5764801...]={1,7,11,1,7,11,1,7,11...}这里的1,7,11循环,实际只有3个元素循环群循环群是其所有元素都是特定元素 a 的幂的群(在群运算被写为加法的时候使用术语倍数)。在乘法符号下,群的元素是:...,?a?3,?a?2,?a?1,?a0?=?e,a,?a2,?a3, ...,这个元素?a叫做这个群的生成元或本原元。本原元模n下a的阶m=φ(n),m就是n的本原元,如3是19的本原元19为质数,因此φ(19)=18,模19下3的群为[1, 3, 9, 27, 81, 243, 729, 2187, 6561, 19683, 59049, 177147, 531441,1594323, 4782969 129140163, 387420489, 1162261467, 3486784401L,10460353203L, 31381059609L, 94143178827L...]用模19来表示[1, 3, 9, 8, 5, 15, 7, 2, 6, 18, 16, 10, 11, 14, 4, 12, 17, 13, 1, 3, 9L,8L, 5L, 15L]循环为1, 3, 9, 8, 5, 15, 7, 2, 6, 18, 16, 10, 11, 14, 4, 12, 17, 13,因此该循环群阶为18EIGamal用于加密密钥对的生成: 随机选择一个大素数p,要求p-1有大素数因子。再选择一个模p的本原元a。将p和a公开。随机选择一个整数d作为私钥,2≤d≤p-2 。计算y=a^d mod p,取y为公钥。实例解析:p=97;a=5,d=58,a,d均小于97,符合条件;y=5^58(mod97)=44公钥:y=44私钥:d=58EIGamal用于加密实例解析:m=3;k=36,满足k97-1计算c1=5^36mod97=50c2=44^36*3mod97=31所以密文为(50,31)加密过程:被加密信息为m;随机选择一个整数k,2≤k≤p-2;计算c1 = a^k ( mod p )c2 = y^k* m ( mod p )( c1, c2 )为密文,是明文的两倍长。EIGamal用于加密实例解析:m=31*(50^58)^-1mod97=31*(97-75)mod97=3

文档评论(0)

有一二三 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档