我正在尝试使用 PyCrypto 加密/解密一些字符串,但我遇到了汉字问题。
当我尝试加密“ ni-hao ”时(你好)......
pemFile = open("/home/borrajax/keys/myKey.pem", "r")
encryptor = RSA.importKey(pemFile, passphrase="f00")
return encryptor.encrypt("你好", 0)[0]
...我不断收到错误:
Module Crypto.PublicKey.pubkey:64 in encrypt
>> ciphertext=self._encrypt(plaintext, K)
Module Crypto.PublicKey.RSA:92 in _encrypt
>> return (self.key._encrypt(c),)
ValueError: Plaintext too large
我尝试了很多组合,
encryptor.encrypt(u"你好"...
encryptor.encrypt(u"你好".encode("utf-8")...
没有任何运气。
我想我总是可以在编码之前尝试使用base64,但我想把它作为“最后的资源”......我希望有一种更“优雅”的方式来做到这一点。
有没有人遇到过同样的问题?任何提示将不胜感激。先感谢您。