最近在搞项目的接口持续性自动化测试,好久没有更新博客了。
项目中接触到很多加密相关的数据,很多项目都会用到非对称加密算法来保证前端和服务器交互的数据安全。
下面介绍下python下怎么使用RSA加密算法:
import rsa
(publickey,privatekey)=rsa,newkeys(1000)#对数字1000加密得到公钥和私钥
pub = publickey.save_pkcs1()#获取公钥
#将公钥保存到文件*************
filepub = open("public.pem",'w+')
filepub.write(pub.encode('utf-8'))
filepub.close()
pri = privatekey.save_pkcs1()#获取私钥
#将私钥保存到文件***********
filepri = open('private.pem','w+')
filepri.write(pri.encode('utf-8'))
filepri.close()
string = "laomomoblog"#待加密的字符串
#取出公钥
with open('publick.pem','r') as file_pub:
f_pub = file_pub.read()
pubkey = rsa.PublicKey.load_pkcs1(f_pub)
#取出私钥
with open('private.pem','r') as file_pri:
f_pri =file_pri.read()
prikey = rsa.PrivateKey.load_pkcs1(f_pri)
#加密字符串string
crypt = rsa.encryt(string.encode('utf-8'),pubkey)#使用公钥去加密字符串
#解密
de_crypt = rsa.decrypt(crypt,prikey)#用私钥去解密
#解出来的de_crypt与string应该是相等的,判断一下
assert string,de_crypt
这样应该比较清楚怎么使用了,怎么加密,怎么解密。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。