我试图对公钥和私钥算法做一个简单的解释。加密部分工作正常,但解密部分有点偏。我只希望29是剩下的模数(2 ^ 7,33)。这就是我到目前为止所做的:
p= 3
q= 11
n = p*q
z = (p-1)*(q-1)
e = 7
d = (z + 1)/e
a= divmod(d*e,z)
PublicKey = (e,n)
PrivateKey = (d,n)
#Encrypt
message = 2
c = divmod(2**e,n)
print c
#Decrypt
decryption = divmod((c**2),n)
print decryption
错误是:
Traceback (most recent call last):
File "C:/Python27/rsa2.py", line 17, in <module>
decryption = divmod((c**2),n)
TypeError: unsupported operand type(s) for ** or pow(): 'tuple' and 'int'
答案 0 :(得分:0)
你的问题在最后,在这一行:
decryption = divmod((c**2),n)
删除c变量周围的()