EIGamal体制

EIGamal公钥密码体制

简介

ElGamal是1985年由T. EIGamal提出的一个著名的公钥密码算法
该算法既能用于数据加密也能用于数字签名
其安全性是依赖于计算有限域上离散对数这一难题

密钥产生

任选一个大素数p,使得p-1有大素因子,g是模p的一个本原根,公开p与g。
使用者任选一私钥x,x∈[0, p-1]
计算公钥 y=gx mod p
公开公钥: y, p, g
保密私钥: x

本原根简介:
如果a的阶m等于φ(n),则称a为n的本原根(生成元)。如果a是n的本原根,则a, a2, …, aφ(n)在mod n下互不相同且都与n互素。
特别地,如果a是素数p的本原根,则a, a2, …, ap-1在 mod p下都不相同。

加密

欲加密明文消息M,随机选一与p-1互素的整数k,计算
C1=g^k mod p,
C2=(y^k)*M mod p,
密文为C=(C1,C2)

解密

先计算 w=(c1x)-1 mpd p再计算出明文 m=c2*wmod p

也可以
M=C2/(C1^x)modp

这是因为:
C2/(C1^x)modp=((y^k)M)/g^k* xmod p=((y^k)M)/y^k mod p=M mod p

例子

假设Alice采用了EIGamal密码体制,并选择素数p&#

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值