python3常用加密方式整理了一下,
主要就是各路大神博客经常道理一大片,在py3里一运行就崩
这里只写了加密的代码,专为新手服务,至于什么流程图什么的出门右转,各路大神博客里面多得是
另外,这是我第一次写东西,新人混脸熟,求个星~!
加密代码连接 https://github.com/a33486/python3Encrypty
1.base64加密解密
https://github.com/a33486/python3Encrypty/blob/master/base64Encrypt.py
2.md5加密
MD5是一种单向加密方式,每次加密结果相同,通常情况下可加密不可解密,
一般用于密码两个密码加密后对比
https://github.com/a33486/python3Encrypty/blob/master/md5Encrypt.py
3.SHA1加密
SHA1是一种单向加密方式,每次加密结果相同,通常情况下可加密不可解密,
一般用于密码两个密码加密后对比
https://github.com/a33486/python3Encrypty/blob/master/sha1Encrypt.py
4.SHA256加密
SH256是一种单向加密方式,每次加密结果相同,通常情况下可加密不可解密,用于密码两个密码加密后对比,
在目前sha1 和MD5都已经被破解的情况下
sha256已成目前最流行的单向加密手段
https://github.com/a33486/python3Encrypty/blob/master/sha256Encrypt.py
5.Aes_ecb加密
aes可解密加密,cbc模式需要偏移量,ebc模式不需要
ecb 模式是把被加密文件分割后用统一密钥进行加密,
如果有一个模块被破解后,所有的模块都将被破解
https://github.com/a33486/python3Encrypty/blob/master/aes_ecb.py
6.Aes_cbc加密
aes_cbc 是把被加密文件分割后用密钥加偏移量进行加密,
如果有一个模块被破解后,无法破解其他模块
因此cbc相对ebc更安全
https://github.com/a33486/python3Encrypty/blob/master/aes_cbc.py
7.RSA加密(公钥加密私钥解密)
最常用的非对称加密解密方式 公钥加密 私钥解密
因为RSA为非对称加密,每一次加密出来的值都是不一样的,
但是解密出来的值是一样的
如果想加密出来的值一样需要选择rsa.nopadding加密
注:这里因为我过去是做支付接口的,所以用base64做了一下其他加密,如果不需要或其他需求请注意移除
https://github.com/a33486/python3Encrypty/blob/master/rsa_pub_enc_pri_dec.py
8.RSA加密(私钥加密公钥解密)
非主流加密解密方式 私钥加密 公钥解密
因为RSA为非对称加密,每一次加密出来的值都是不一样的,
但是解密出来的值是一样的
注:这里因为我过去是做支付接口的,所以用base64做了一下其他加密,如果不需要或其他需求请注意移除,hex() 是十六进制,有时候爬虫解析会用到
https://github.com/a33486/python3Encrypty/blob/master/rsa_pri_enc_pub_dec.py
9.RSA_NOPADDING加密(零填充加密)
吐槽一下:第一个做js零填充反爬的程序员估计是了解python3里面最开始没有零填充的实现方法,要额外去组填充
需要一个填充值,每一次加密后的结果都是一样的
https://github.com/a33486/python3Encrypty/blob/master/rsa_nopadding.py