|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
javax.crypto
类 ExemptionMechanismSpi
java.lang.Object javax.crypto.ExemptionMechanismSpi
-
public abstract class ExemptionMechanismSpi
- extends Object
此类为 ExemptionMechanism
类定义了服务提供程序接口 (SPI)。此类中的所有抽象方法都必须由希望提供特定豁免机制实现的各个加密服务提供程序来实现。
- 从以下版本开始:
- 1.4
构造方法摘要 | |
---|---|
ExemptionMechanismSpi() |
方法摘要 | |
---|---|
protected abstract byte[] |
engineGenExemptionBlob() 生成豁免机制密钥 blob。 |
protected abstract int |
engineGenExemptionBlob(byte[] output, int outputOffset) 生成豁免机制密钥 blob 并将结果存储在从 outputOffset (包括)开始的 output 缓冲区中。 |
protected abstract int |
engineGetOutputSize(int inputLen) 给定了输入长度 inputLen (以字节为单位)的情况下,返回用于保存下一个 engineGenExemptionBlob 操作结果所需的输出缓冲区长度的字节长度。 |
protected abstract void |
engineInit(Key key) 用密钥初始化此豁免机制。 |
protected abstract void |
engineInit(Key key, AlgorithmParameters params) 用一个密钥和一组算法参数初始化此豁免机制。 |
protected abstract void |
engineInit(Key key, AlgorithmParameterSpec params) 用一个密钥和一组算法参数初始化此豁免机制。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
ExemptionMechanismSpi
public ExemptionMechanismSpi()
方法详细信息 |
---|
engineGetOutputSize
protected abstract int engineGetOutputSize(int inputLen)
-
给定了输入长度
inputLen
(以字节为单位)的情况下,返回用于保存下一个engineGenExemptionBlob
操作结果所需的输出缓冲区长度的字节长度。下一个
engineGenExemptionBlob
调用的实际输出长度可能小于此方法返回的长度。 -
- 参数:
-
inputLen
- 输入长度(以字节为单位) - 返回:
- 所需的输出缓冲区大小(以字节为单位)
engineInit
protected abstract void engineInit(Key key) throws InvalidKeyException, ExemptionMechanismException
-
用密钥初始化此豁免机制。
如果此豁免机制需要的任何算法参数无法从给定的
key
派生,基础豁免机制实现将自己生成所需的参数(使用特定于提供程序的默认值);如果算法参数必须由调用方指定,则会引发InvalidKeyException
异常。 -
- 参数:
-
key
- 用于此豁免机制的密钥 - 抛出:
-
InvalidKeyException
- 如果给定的密钥不适合此豁免机制。 -
ExemptionMechanismException
- 如果初始化过程中出现问题。
engineInit
protected abstract void engineInit(Key key, AlgorithmParameterSpec params) throws InvalidKeyException, InvalidAlgorithmParameterException, ExemptionMechanismException
-
用一个密钥和一组算法参数初始化此豁免机制。
如果此豁免机制需要使用任何算法参数,而
params
为 null,基础豁免机制实现将自己生成所需的参数(使用特定于提供程序的默认值);如果算法参数必须由调用方指定,则会引发InvalidAlgorithmParameterException
异常。 -
- 参数:
-
key
- 用于此豁免机制的密钥 -
params
- 算法参数 - 抛出:
-
InvalidKeyException
- 如果给定的密钥不适合此豁免机制。 -
InvalidAlgorithmParameterException
- 如果给定的算法参数不适合此豁免机制。 -
ExemptionMechanismException
- 如果初始化过程中出现问题。
engineInit
protected abstract void engineInit(Key key, AlgorithmParameters params) throws InvalidKeyException, InvalidAlgorithmParameterException, ExemptionMechanismException
-
用一个密钥和一组算法参数初始化此豁免机制。
如果此豁免机制需要使用任何算法参数,而
params
为 null,基础豁免机制实现将自己生成所需的参数(使用特定于提供程序的默认值);如果算法参数必须由调用方指定,则会引发InvalidAlgorithmParameterException
异常。 -
- 参数:
-
key
- 用于此豁免机制的密钥 -
params
- 算法参数 - 抛出:
-
InvalidKeyException
- 如果给定的密钥不适合此豁免机制。 -
InvalidAlgorithmParameterException
- 如果给定的算法参数不适合此豁免机制。 -
ExemptionMechanismException
- 如果初始化过程中出现问题。
engineGenExemptionBlob
protected abstract byte[] engineGenExemptionBlob() throws ExemptionMechanismException
- 生成豁免机制密钥 blob。
-
- 返回:
- 具有结果密钥 blob 的新缓冲区。
- 抛出:
-
ExemptionMechanismException
- 如果生成过程中出现问题。
engineGenExemptionBlob
protected abstract int engineGenExemptionBlob(byte[] output, int outputOffset) throws ShortBufferException, ExemptionMechanismException
-
生成豁免机制密钥 blob 并将结果存储在从
outputOffset
(包括)开始的output
缓冲区中。如果
output
缓冲区太小无法保存该结果,则抛出ShortBufferException
异常。这种情况下,使用一个稍大的缓冲区再次调用。使用engineGetOutputSize
确定输出缓冲区应为多大。 -
- 参数:
-
output
- 用于保存结果的缓冲区 -
outputOffset
-output
中的偏移量,即结果保存的位置 - 返回:
-
output
中存储的字节数 - 抛出:
-
ShortBufferException
- 如果给定的输出缓冲区太小无法保存该结果。 -
ExemptionMechanismException
- 如果生成过程中出现问题。
所有类
|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |