-------------疯狂软件java培训分享-------------

java中的AlgorithmParameterSpec接口及其IvParameterSpec实现类

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 的缓冲区。广州java培训复制该缓冲区的内容来防止后续修改。如果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 < len)

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();//获取初始化向量

java ivparameterspec_java中的AlgorithmParameterSpec接口相关推荐

  1. Java 8中的功能接口是什么? @功能注释和示例

    函数接口是Java 8最重要的概念之一,实际上为lambda表达式提供了动力,但是许多开发人员没有首先了解函数接口在Java 8中的作用就花了很多精力来理解它,并花时间学习lambda表达式和Stre ...

  2. 妙用Java 8中的 Function接口 消灭if...else...

    妙用Java 8中的 Function接口 消灭if-else- Function函数式接口

  3. JAVA程序中访问别人接口

    说明:前台访问你的接口,传过来参数,你返回对应数据.同理,你在java程序中访问别人接口,你给别人参数,别人返回给你相应数据. 这个功能相当于前端调用你的接口传过来参数,你解决不了,需要调用别的接口解 ...

  4. lambda java 接口_lambda – Java 8中的功能接口是什么“功能形状”?

    在 Java 8中,新包java.util.function包含许多功能接口.该软件包的文档( http://docs.oracle.com/javase/8/docs/api/java/util/f ...

  5. Java 8 中的这个接口真好用!

    在开发过程中经常会使用if...else...进行判断抛出异常.分支处理等操作.这些if...else...充斥在代码中严重影响了代码代码的美观,这时我们可以利用Java 8的Function接口来消 ...

  6. 妙用Java 8中的 Function接口 消灭if...else(非常新颖的写法)

    欢迎关注方志朋的博客,回复"666"获面试宝典 来源:juejin.cn/post/7011435192803917831 在开发过程中经常会使用if...else...进行判断抛 ...

  7. (020)java后台开发之JAVA集合中的List接口

    转载:http://blog.csdn.net/self_realian/article/details/51881977 原文写的很好.请看原文. JAVA中的集合类: JAVA中的集合类,是一种工 ...

  8. java actionsupport_struts2中的Action接口和Actionsupport接口各有什么作用

    展开全部 1.Struts 2的Action无须实现任何接口或继承任何类型,普通的POJO类就可以用32313133353236313431303231363533e78988e69d83313333 ...

  9. 妙用Java 8中的 Function接口,消灭if...else(非常新颖的写法)

    在开发过程中经常会使用if...else...进行判断抛出异常.分支处理等操作.这些if...else...充斥在代码中严重影响了代码代码的美观,这时我们可以利用Java 8的Function接口来消 ...

最新文章

  1. 超越RetinaFace,腾讯优图 ASFD 已在 WIDER FACE 霸榜半年!
  2. Android IOS WebRTC 音视频开发总结(三八)-- tx help
  3. PV,TPS,QPS,RPS
  4. 《Microsoft Sql server 2008 Internals》读书笔记--第十一章DBCC Internals(11)
  5. 使用Hadoop自带的例子pi计算圆周率
  6. 清除sqlserver日志方法(不适合always on)
  7. java里的进制转换函数_基于Java中进制的转换函数详解
  8. 在arm上运行x86动态库_苹果官宣:Arm取代英特尔
  9. python教程(六)·字符串
  10. 《手机测试Robotium实战教程》——第2章,第2.2节Eclipse的安装
  11. 导入maven项目出现 Unsupported IClasspathEntry kind=4
  12. 七月算法机器学习5 回归分析与工程应用 小案例
  13. Android免root流量防火墙,简单小程序
  14. 浅谈RS-485协议
  15. 用以太坊区块链和jwt token保证Asp.Net Core的API交互安全(上)
  16. 360度全景标定方法_基于IMU辅助的360度全景视图多相机标定方法与流程
  17. Be Better:遇见更好的自己-2016年记
  18. Codeforces Young Physicist
  19. 超详细:安装Linux系统教程
  20. 怎么卸载光速头条_教你怎么卸载光速浏览器

热门文章

  1. Ubuntu 13.04 Linux 3D桌面完全教程,显卡驱动安装方法,compiz特效介绍,常见问题解答
  2. Prometheus GPU 监控
  3. 数据结构算法——1095. 公路村村通
  4. win7 旗舰版自定义开机画面
  5. 64位 regsrv win10_怎么把Win10注册表恢复初始?
  6. python网站设计开题报告_网站设计类型的毕业设计开题报告 完整
  7. 小说瓦尔登湖单词词频统计
  8. table中加表单元素怎么验证_element-ui 解决 table 里包含表单验证的问题!
  9. 车载以太网时间同步之EthTsync
  10. python 三维数据绘制等值高线剖面图_基于MapGIS数字高程模型基岩面高程等值线图的制作...