备注:如果使用python3.* 在Windows进行开发,不要用windows系统安装M2Crypto,基本不会安装成功。可以使用vmware workstation或者virtualbox安装liunx或者Mac OS系统进行开发。
Python 2.*版本
import base64
import M2Crypto
class RsaUtil:
@staticmethod
def encrypt(digest, private_key):
digest=base64.b64encode(digest)
result = ""
while (len(digest) > 117):
some = digest[0:117]
digest = digest[117:]
result += private_key.private_encrypt(some, M2Crypto.RSA.pkcs1_padding).encode("hex")
result += private_key.private_encrypt(digest, M2Crypto.RSA.pkcs1_padding).encode("hex")
return result
if __name__ == "__main__":
private_key = M2Crypto.RSA.load_key('8000013189_pri.pem')
result= RsaUtil.encrypt("123456",private_key)
print result
Python 3.*版本
import base64
import M2Crypto
class RsaUtil:
private_key = M2Crypto.RSA.load_key('8000013189_test.pem')
@staticmethod
def encrypt(digest, private_key):
digest=base64.b64encode(digest.encode('utf-8'))
result = ""
while (len(digest) > 117):
some = digest[0:117]
digest = digest[117:]
result += private_key.private_encrypt(some, M2Crypto.RSA.pkcs1_padding).hex()
result += private_key.private_encrypt(digest, M2Crypto.RSA.pkcs1_padding).hex()
return result
if __name__ == "__main__":
rsaUtil=RsaUtil()
result=rsaUtil.encrypt("123456",RsaUtil.private_key)
print(result)
文档更新时间: 2019-06-17 11:14 作者:support