在加密和解密过程中使用相同的密钥。这种加密方法称为对称加密
分类
通用加密算法
特征
DES是一种数据加密标准,是使用密钥加密的块算法。
Java的加密和解密功能的类,在线文档:
AES是用于替换DES的高级别加密标准。
BASE64算法不是加密算法,它是用于传输8bit字节码的可读编码算法之一。
纯编码不会更改信息内容,而仅更改信息内容的表达式形式
base64表示在编码过程中使用了64个字符:大写A到Z,小写A到Z,数量0至9,“+”和“/”/“
构成
算法
Base64是3个字节的组,8个字节的8位数字,总计24位,然后将3个字节转换为4组,每个组6()。
当每个组为6位时,缺少2位数字,并且在高位置上补充了0位,因此基本64的值范围在0-63位控制,因此称为base64()
注意:
由于base64是三个字节组的组,因此,当三个字节的组不足时,将使用等量的数字来弥补。
欧洲央行:
电子密码簿,需要加密的信息根据块密码的大小分为几个块,每个块的独立加密
它可以并行处理数据,但是相同的原始文本会生成相同的密码文本,无法很好地保护数据
CBC
密码块链接。每个mingwen块都不同于或以后与以前的密文块不同。在此方法中,每个密文都取决于其前面的所有普通块
相同原始文本生成的密文是不同的,但是串行处理数据的速度很慢
当需要处理的数据的数据长度不符合块处理的要求时,它将根据某些方法和规则填充块。
通知:不填充
PKCS5PADDING:填充
注意:
默认情况下,加密模式和填充模式为:。如果使用CBC模式,则在初始化密码对象时,您需要添加初始化向量IV参数:
密码的加密类型如下:1。使用默认的欧洲央行加密模式和PKCS5PADDING填充模式
2.澄清欧洲央行加密模式和PKCS5填充模式
3.清楚地指定欧洲央行加密模式和通用填充模式
目前,原始文本必须是8byte的整数倍数,否则将报告错误:
4.澄清CBC加密模式和PKCS5填充模式
原始:https://juejin.cn/post/710272648660333662