public enum Mode extends Enum<Mode>
推荐使用CBC和CTR模式
CFB,OFB,CTR模式不需要padding
ECB:最基本的加密模式,也就是通常理解的加密,相同的明文将永远加密成相同的密文,无初始向量,容易受到密码本重放攻击,一般情况下很少用。 CBC:明文被加密前要与前面的密文进行异或运算后再加密,因此只要选择不同的初始向量,相同的密文加密后会形成不同的密文,这是目前应用最广泛的模式。 CBC加密后的密文是上下文相关的,但明文的错误不会传递到后续分组,但如果一个分组丢失,后面的分组将全部作废(同步错误)。 CFB:类似于自同步序列密码,分组加密后,按8位分组将密文和明文进行移位异或后得到输出同时反馈回移位寄存器,优点最小可以按字节进行加解密, 也可以是n位的,CFB也是上下文相关的,CFB模式下,明文的一个错误会影响后面的密文(错误扩散)。 OFB:将分组密码作为同步序列密码运行,和CFB相似,不过OFB用的是前一个n位密文输出分组反馈回移位寄存器,OFB没有错误扩散问题。
public static final Mode ECB
public static final Mode CBC
public static final Mode CFB
public static final Mode OFB
public static final Mode CTR
public static final Mode EAX
public static final Mode OCB
public static final Mode CFB8
public static final Mode CFB64
public static final Mode CFB128
public static final Mode OpenPGPCFB
public static final Mode GCM
public static final Mode CCM
public static Mode[] values()
for (Mode c : Mode.values()) System.out.println(c);
public static Mode valueOf(String name)
name - 要返回的枚举常量的名称。IllegalArgumentException - 如果该枚举类型没有带有指定名称的常量NullPointerException - 如果参数为空值Copyright © 2023. All rights reserved.