java.lang.Object
javax.crypto.MacSpi
此类为
Mac类定义了服务提供者接口(SPI)。该类中的所有抽象方法必须由每个希望提供特定MAC算法实现的加密服务提供者来实现。
实现可以自由实现Cloneable接口。
- 自版本:
- 1.4
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionclone()如果实现支持克隆,则返回克隆对象。protected abstract byte[]完成MAC计算并重置MAC以供进一步使用,保持MAC初始化时使用的密钥。protected abstract int返回MAC的字节长度。protected abstract voidengineInit(Key key, AlgorithmParameterSpec params) 使用给定的(秘密)密钥和算法参数初始化MAC。protected abstract void重置MAC以供进一步使用,保持MAC初始化时使用的密钥。protected abstract voidengineUpdate(byte input) 处理给定的字节。protected abstract voidengineUpdate(byte[] input, int offset, int len) 处理input中从offset开始的前len个字节。protected voidengineUpdate(ByteBuffer input) 处理ByteBufferinput中input.remaining()个字节,从input.position()开始。
-
Constructor Details
-
MacSpi
public MacSpi()子类调用的构造函数。
-
-
Method Details
-
engineGetMacLength
protected abstract int engineGetMacLength()返回MAC的字节长度。- 返回:
- MAC的字节长度。
-
engineInit
protected abstract void engineInit(Key key, AlgorithmParameterSpec params) throws InvalidKeyException, InvalidAlgorithmParameterException 使用给定的(秘密)密钥和算法参数初始化MAC。- 参数:
-
key- (秘密)密钥。 -
params- 算法参数。 - 抛出:
-
InvalidKeyException- 如果给定的密钥不适合初始化此MAC。 -
InvalidAlgorithmParameterException- 如果给定的算法参数不适合此MAC。
-
engineUpdate
protected abstract void engineUpdate(byte input) 处理给定的字节。- 参数:
-
input- 要处理的输入字节。
-
engineUpdate
protected abstract void engineUpdate(byte[] input, int offset, int len) 处理input中从offset开始的前len个字节。- 参数:
-
input- 输入缓冲区。 -
offset- 输入开始的偏移量。 -
len- 要处理的字节数。
-
engineUpdate
处理ByteBufferinput中input.remaining()个字节,从input.position()开始。返回时,缓冲区的位置将等于其限制;其限制不会改变。如果子类可以比处理字节数组更有效地处理ByteBuffer,则应考虑重写此方法。
- 参数:
-
input- ByteBuffer - 抛出:
-
NullPointerException- 如果input为null - 自版本:
- 1.5
-
engineDoFinal
protected abstract byte[] engineDoFinal()完成MAC计算并重置MAC以供进一步使用,保持MAC初始化时使用的密钥。- 返回:
- MAC结果。
-
engineReset
protected abstract void engineReset()重置MAC以供进一步使用,保持MAC初始化时使用的密钥。 -
clone
如果实现支持克隆,则返回克隆对象。- 覆盖:
-
clone在类Object中 - 返回:
- 如果实现支持克隆,则返回克隆对象。
- 抛出:
-
CloneNotSupportedException- 如果在不支持Cloneable的实现上调用此方法。 - 参见:
-