1、MD5加密html
MD5加密的特色:前端
不可逆运算python
对不一样的数据加密的结果是定长的32位字符(无论文件多大都同样)算法
对相同的数据加密,获得的结果是同样的(也就是复制)后端
抗修改性 : 信息“指纹”,对原数据进行任何改动,哪怕只修改一个字节,所获得的 安全
MD5 值都有很大区别.服务器
弱抗碰撞 : 已知原数据和其 MD5 值,想找到一个具备相同 MD5 值的数据(即伪造ide
数据)是很是困难的网站
强抗碰撞: 想找到两个不一样数据,使他们具备相同的 MD5 值,是很是困难的加密
#coding=utf-8 """ =========================== Author:多测师_王sir Time:2020-07-06 15:54 Wechat:15367499889 Company:上海多测师信息有限公司 =========================== """ import hashlib def duoceshi_cn(): '''对多测师网站www.duoceshi.cn进行加密''' data = 'www.duoceshi.cn' md5 = hashlib.md5() #生成md5加密对象 md5.update(data.encode('utf-8')) sign = md5.hexdigest() print('对多测师网站www.duoceshi.cn进行加密获得的密文为:{}'.format(sign)) def duoceshi_com(): '''对多测师网站www.duoceshi.com进行加密''' data = 'www.duoceshi.com' md5 = hashlib.md5() #生成md5加密对象 md5.update(data.encode('utf-8')) sign = md5.hexdigest() print('对多测师网站www.duoceshi.com进行加密获得的密文为:{}'.format(sign)) if __name__ == '__main__': duoceshi_cn() duoceshi_com() 运行结果以下: 对多测师网站www.duoceshi.cn进行加密获得的密文为:6288f286d86886810215373b0916e47e 对多测师网站www.duoceshi.com进行加密获得的密文为:78c97debe231347bb7f7447c6ad8d1fa
2、对称加密 简介: 对称加密算法又称传统加密算法。 加密和解密使用同一个密钥。 加密解密过程:明文->密钥加密->密文,密文->密钥解密->明文 示例: 密钥:www.duoceshi.cn 加密算法:每一个字符+www.duoceshi.cn 明文:dcs 密钥为 1时加密结果:abmmx 密钥为 2时加密结果:dwddx 优缺点: 算法公开,计算量小,加密速度快,加密效率高 双方使用相同的钥匙,安全性得不到保证 经典加密算法有三种: 1. DES(Data Encryption Standard):数据加密标准(如今用的比较少,由于它的加密强度不够,可以暴力破解) 2. 3DES:原理和DES几乎是同样的,只是使用3个密钥,对相同的数据执行三次加密,加强加密强度。(缺点:要维护3个密钥,大大增长了维护成本) 3. AES(Advanced Encryption Standard):高级加密标准,目前美国国家安全局使用的,苹果的钥匙串访问采用的就AES加密。是如今公认的最安全的加密方式,是对称密钥加密中最流行的算法。
3、非对称加密RSA 简介: 1. 对称加密算法又称现代加密算法。 2. 非对称加密是计算机通讯安全的基石,保证了加密数据不会被破解。 3. 非对称加密算法须要两个密钥:公开密钥(publickey) 和私有密(privatekey) 4. 公开密钥和私有密钥是一对 特色: 加密的公钥和私钥不一样、都是后端服务器生成给到前端的 若是用公开密钥对数据进行加密,只有用对应的私有密钥才能解密。 若是用私有密钥对数据进行加密,只有用对应的公开密钥才能解密。 算法强度复杂,安全性依赖于算法与密钥。 加密解密速度慢。 与对称加密算法的对比: 对称加密只有一种密钥,而且是非公开的,若是要解密就得让对方知道密钥。 非对称加密有两种密钥,其中一个是公开的。 RSA应用场景: 因为RSA算法的加密解密速度要比对称算法速度慢不少,在实际应用中,一般采起 数据自己的加密和解密使用对称加密算法(AES)。 用RSA算法加密并传输对称算法所需的密钥。