安卓加密算法

加密方式的分类:

对称加密算法: 加密和解密密钥相同,例如,DES、3DES、AES
AES: 高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称 Rijndael 加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的 DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院(NIST)于 2001 年 11 月26 日发布于 FIPS PUB 197,并在 2002 年 5 月 26 日成为有效的标准。AES 算法加密强度大,执行效率高,使用简单,实际开发中建议选择 AES 算法。
缺点:双方都使用同样密钥,安全性得不到保证

称加密算法 (公钥、私钥):加密和解密密钥不同,但是是一对,例如RSA、ECC

RSA
概述:非对称加密算法,最流行的公钥密码算法,使用长度可变的秘钥
优点:不可逆,既能用于数据加密,也可以应用于数字签名
缺点:RSA非对称加密内容长度有限制,1024位key的最多只能加密127位数
综上:
通常我们经常会将对称加密和非对称加密两种技术联合起来使用,例如用非对称加密来给对称加密里的秘钥进行加密(即秘钥交换)

摘要算法 :变长变定长,不能还原,MD5、SHA、CRC
app我常用md5加密密码给后台,后台数据库存的也是加密后的密码然后比对
数字证书也用md5
数字证书就是互联网通讯中标志通讯各方身份信息的一串数字,提供了一种在 Internet 上验证通信实体身份的方式,数字证书不是数字身份证,而是身份认证机构盖在数字身份证上的一个章或印(或者说加在数字身份证上的一个签名)。它是由权威机构——CA 机构,又称为证书授权(Certificate Authority)中心发行的,人们可以在网上用它来识别对方的身份
使用私钥签名,公钥校验,只要用公钥能校验通过,则该信息一定是私钥持有者发布的

拓展:Base64 编码加密后的结果(Base64不是加密算法)

加密后的结果是字节数组,这些被加密后的字节在码表(例如 UTF-8 码表)上找不到对应字符,会出现乱码,当乱码字符串再次转换为字节数组时,长度会变化,导致解密失败,所以转换后的数据是不安全的。使用 Base64 对字节数组进行编码,任何字节都能映射成对应的 Base64 字符,之后能恢复到字节数组,利于加密后数据的保存于传输,所以转换是安全的。同样,字节数组转换成 16 进制字符串也是安全的
可以用base64来传输小型图片

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章