理解Python中的AttributeError及其解决方法
我在控制台里遇到了这个错误:
data = cipher.encrypt(data)
File "/usr/lib/python2.7/dist-packages/Crypto/Cipher/PKCS1_OAEP.py", line 133, in encrypt
randFunc = self._key._randfunc
AttributeError: 'str' object has no attribute '_randfunc'
是在下面这段代码中出现的:
cipher = PKCS1_OAEP.new(PK_ID)
data = cipher.encrypt(data)
这里的 PK_ID 和 data 都是字符串类型。
这个错误信息是什么意思,我该怎么解决这个代码的问题呢?
1 个回答
1
PKCS1_OAEP.new()
这个函数需要一个RSA密钥对象,你可以从Crypto.PublicKey.RSA
模块中获取这个对象,而不是直接用一个字符串。