专业信息安全工程师网站|培训机构|服务商(2018信息安全工程师学习QQ群:327677606,客服QQ:270019001)

软题库 培训课程
当前位置:信管网 >> 信息安全工程师 >> 综合知识 >> 文章内容
基本的EIGamal密码体制-信息安全工程师知识点
来源:信管网  2018年10月10日  【信管网:项目管理师专业网站所有评论

信息安全工程师知识点:基本的EIGamal密码体制

基本的EIGamal密码体制:参数,加密算法,解密算法

ELGamal改进了Diffie和Hellman 的基于离散对数的密钥分配协议,提出了基于离散对数的公开密钥密码和数字签名体制。

随机地选择一个大素数p,且要求p-1有大素数因子。再选择一个模p的本原元α。将p和α公开。

1.密钥生成

用户随机地选择一个整数d作为自己的秘密的解密钥,1≤d≤p-1,计算y=αd mod p,取y为自己的公开的加密钥。

由公开钥y计算秘密钥d,必须求解离散对数,而这是极困难的。

2.加密

将明文消息M(0≤M≤p-1)加密成密文的过程如下:

①随机地选取一个整数k,1≤k≤p-1。

②计算         U=yk mod p                      (2-46)

C1=ak mod p                    (2-47)

C2=UM mod p                   (2-48)

③取(C1,C2) 作为的密文。

3.解密

将密文(C1,C2)解密的过程如下:

①计算V=C1d mod p                             (2-49)

②计算M=C2 V-1 mod p                         (2-50)

解密的可还原性可证明如下:

因为,

C2 V-1 mod p=(UM)V-1 mod p

=UM(C1d) -1 mod p

=UM ((αk) d)-1 mod p

=UM ((αd) k)-1 mod p

=UM ((y)k)-1mod p

=UM (U)-1 mod p

=M mod p

故解密可还原。

例2-3设p=2579,取α=2,秘密钥d=765,计算出公开钥y=2765 mod 2579=949。再取明文M=1299,随机数k=853,则C1=853 mod 2579=435,C2=1299x949 835 mod2579=2396,所以密文为(C1,C2) =(435,2396) 。解密时计算

M=2396x(435765 )-1 mod 2579=1299

从而还原出明文。




分享到: 新浪微博 腾讯朋友 收藏本页
发表评论  查看完整评论  

相关内容

推荐文章
合作网站内容