public abstract class ExemptionMechanismSpi extends Object
ExemptionMechanism
类。在这个类中的所有的抽象方法必须实现由每个密码服务提供商,谁希望提供一个特定的豁免机制的实施。
Constructor and Description |
---|
ExemptionMechanismSpi() |
Modifier and Type | Method and Description |
---|---|
protected abstract byte[] |
engineGenExemptionBlob()
产生的免责机制的关键点。
|
protected abstract int |
engineGenExemptionBlob(byte[] output, int outputOffset)
生成密钥blob豁免机制,并存储在
output 缓冲的结果,从
outputOffset 包容。
|
protected abstract int |
engineGetOutputSize(int inputLen)
返回的字节长度,输出缓冲区将需要为了保持下一
engineGenExemptionBlob 操作的结果,给定输入的长度(以字节为单位)
inputLen 。
|
protected abstract void |
engineInit(Key key)
一个关键的初始化这个免责机制。
|
protected abstract void |
engineInit(Key key, AlgorithmParameters params)
用钥匙和一套算法参数初始化这个免责机制。
|
protected abstract void |
engineInit(Key key, AlgorithmParameterSpec params)
用钥匙和一套算法参数初始化这个免责机制。
|
protected abstract int engineGetOutputSize(int inputLen)
engineGenExemptionBlob
操作的结果,给定输入的长度(以字节为单位)
inputLen
。
第二engineGenExemptionBlob
称实际输出的长度可以小于由该方法返回的长度。
inputLen
-输入长度(以字节为单位)
protected abstract void engineInit(Key key) throws InvalidKeyException, ExemptionMechanismException
如果这项豁免机制需要任何算法的参数不能被来自给定的key
,底层的免责机制的实现应该是生成所需的参数本身(使用提供程序特定的默认值);在这种情况下,算法的参数必须由调用方指定,一个InvalidKeyException
升起。
key
-这种豁免机制的关键
InvalidKeyException
-如果它的键是不适合这种豁免机制。
ExemptionMechanismException
如果问题(S)在初始化过程中遇到。
protected abstract void engineInit(Key key, AlgorithmParameterSpec params) throws InvalidKeyException, InvalidAlgorithmParameterException, ExemptionMechanismException
如果这项豁免机制需要任何算法参数和params
是空的,底层的免责机制的实现应该是生成所需的参数本身(使用提供程序特定的默认值);在这种情况下,算法的参数必须由调用方指定,一个InvalidAlgorithmParameterException
升起。
key
-这种豁免机制的关键
params
-算法参数
InvalidKeyException
-如果它的键是不适合这种豁免机制。
InvalidAlgorithmParameterException
-如果给定的算法参数的豁免机制是不合适的。
ExemptionMechanismException
如果问题(S)在初始化过程中遇到。
protected abstract void engineInit(Key key, AlgorithmParameters params) throws InvalidKeyException, InvalidAlgorithmParameterException, ExemptionMechanismException
如果这项豁免机制需要任何算法参数和params
是空的,底层的免责机制的实现应该是生成所需的参数本身(使用提供程序特定的默认值);在这种情况下,算法的参数必须由调用方指定,一个InvalidAlgorithmParameterException
升起。
key
-这种豁免机制的关键
params
-算法参数
InvalidKeyException
-如果它的键是不适合这种豁免机制。
InvalidAlgorithmParameterException
-如果给定的算法参数的豁免机制是不合适的。
ExemptionMechanismException
如果问题(S)在初始化过程中遇到。
protected abstract byte[] engineGenExemptionBlob() throws ExemptionMechanismException
ExemptionMechanismException
如果问题(S)在生成过程中遇到。
protected abstract int engineGenExemptionBlob(byte[] output, int outputOffset) throws ShortBufferException, ExemptionMechanismException
output
缓冲的结果,从
outputOffset
包容。
如果output
缓冲太小装不下的结果,一个ShortBufferException
抛出。在这种情况下,重复此调用具有较大的输出缓冲区。使用engineGetOutputSize
确定多大的输出缓冲区应。
output
-结果缓冲区
outputOffset
-抵消
output
哪里结果存储
output
字节数
ShortBufferException
如果给定的输出缓冲区太小,保存结果。
ExemptionMechanismException
如果问题(S)在生成过程中遇到。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.