上传者: 42127783
|
上传时间: 2021-12-10 16:13:41
|
文件大小: 7KB
|
文件类型: -
Elgamal-api
具有加法同态性质的ElGamal实现。
表中的内容
理论
ElGamal加密由三部分组成:密钥生成器,加密算法和解密算法。
密钥生成
密钥生成器的工作方式如下:
爱丽丝用生成器g生成q阶循环群G的有效描述。 有关此组所需属性的讨论,请参见下文。
爱丽丝从{1,…,q − 1}中随机选择一个x。
爱丽丝计算h:= g ^ x。
爱丽丝发布h以及对G,q,g的描述作为她的公钥。 爱丽丝保留x作为她的私钥,必须对其保密。
加密
加密算法的工作原理如下:使用公钥(G,q,g,h)对消息mto Alice加密。
鲍勃从{1,…,q − 1}中选择一个随机y,然后计算c1:= g ^ y。
鲍勃计算共享秘密s:= h ^ y:= g ^ xy。
鲍勃将他的消息m映射到G的元素m'上。
鲍勃计算c2:= m。
鲍勃将密文(c1,c2)=(gy,m'‧hy)=(