我目前正在使用 PyCrypto 库为学术作业实施 ElGamal 加密,但出现以下错误:
溢出错误:无法将“int”放入索引大小的整数中
from Crypto import Random
from Crypto.Random import random
from Crypto.PublicKey import ElGamal
from Crypto.Util.number import GCD
message = "Hello!"
key = ElGamal.generate(1024, Random.new().read)
while 1:
k = random.StrongRandom().randint(1, key.p - 1)
if GCD(k, key.p - 1) == 1:
break
h = key.encrypt(message, k)
d = key.decrypt(h)
print(d)
我不确定我是否错误地阅读了文档,但我基于此页面:
如果有人有任何正确实现的代码示例,我将不胜感激。