AlgorithmParameterSpec

IvParameterSpec详解
本文详细介绍了IvParameterSpec类的使用方法,包括构造方法和getIV()方法。IvParameterSpec是AlgorithmParameterSpec接口的一个实现,用于指定加密过程中的初始化向量。
AlgorithmParameterSpec是一个用于规范加密参数的接口。此接口不包含任何方法或常量。它仅用于将所有参数规范分组,并为其提供类型安全。所有参数规范都必须实现此接口。IvParameterSpec是其一个已知实现类。但是IvParameterSpec是位于javax.crypto.spec.IvParameterSpec包下,类声明为:public class IvParameterSpec extends Object implements AlgorithmParameterSpec此类指定一个初始化向量 (IV)。使用 IV 的例子是反馈模式中的密码,如,CBC 模式中的 DES 和使用 OAEP 编码操作的 RSA 密码。 1、构造方法:①public IvParameterSpec(byte[] iv) 使用 iv 中的字节作为 IV 来构造一个 IvParameterSpec 对象。参数: iv - 具有 IV 的缓冲区。复制该缓冲区的内容来防止后续修改。如果iv为null,则会抛出NullPointerException异常 ②public IvParameterSpec(byte[] iv,int offset,int len) 使用 iv 中始于且包含 offset 的前 len 个字节作为 IV 来构造一个 IvParameterSpec 对象。组成 IV 的字节在 iv[offset] 和 iv[offset+len-1] 范围内(包含两者)。 参数:iv - 具有 IV 的缓冲区。复制该缓冲区始于且包含 offset 的前 len 个字节来防止后续修改。 offset - iv 中的偏移量,IV 从此处开始。 len - IV 字节的数目。抛出:IllegalArgumentException - 如果 iv 为 null 或者 (iv.length - offset ArrayIndexOutOfBoundsException - 如果 offset 或 len 索引字节超出 iv 范围,则抛出该异常。 2、方法:public byte[] getIV() 初始化向量 (IV)。每次调用此方法都返回一个新数组。如下例:byte[] DESIV = { 0x12, 0x34, 0x56, 0x78, (byte) 0x90, (byte) 0xAB,(byte) 0xCD, (byte) 0xEF };// 缓冲区IvParameterSpec iv1 = new IvParameterSpec(DESIV);// 设置向量IvParameterSpec iv2 = new IvParameterSpec(DESIV, 2, 5);// 设置向量byte[] DESIV1 = iv1.getIV();//获取初始化向量byte[] DESIV2 = iv2.getIV();//获取初始化向量
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值