Module  java.base
软件包  javax.crypto

Class MacSpi



  • public abstract class MacSpi
    extends Object
    该类定义了Mac类的 ( SPI )。 该类中的所有抽象方法必须由希望提供特定MAC算法的实现的每个加密服务提供商来实现。

    实现可以实现Cloneable接口。

    从以下版本开始:
    1.4
    • 构造方法详细信息

      • MacSpi

        public MacSpi​()
    • 方法详细信息

      • engineGetMacLength

        protected abstract int engineGetMacLength​()
        以字节为单位返回MAC的长度。
        结果
        MAC长度(以字节为单位)。
      • engineUpdate

        protected abstract void engineUpdate​(byte input)
        处理给定的字节。
        参数
        input - 要处理的输入字节。
      • engineUpdate

        protected abstract void engineUpdate​(byte[] input,
                                             int offset,
                                             int len)
        处理第一 len字节 input ,起始于 offset以下。
        参数
        input - 输入缓冲区。
        offset - input中的输入开始的偏移量。
        len - 要处理的字节数。
      • engineUpdate

        protected void engineUpdate​(ByteBuffer input)
        处理input.remaining()字节的ByteBuffer input ,从input.position()开始。 返回时,缓冲区的位置将等于其限制; 其限制将不会改变。

        子类应该考虑覆盖此方法,如果它们可以比字节数组更有效地处理ByteBuffers。

        参数
        input - ByteBuffer
        从以下版本开始:
        1.5
      • engineDoFinal

        protected abstract byte[] engineDoFinal​()
        完成MAC计算并重置MAC进一步使用,维护MAC初始化的秘密密钥。
        结果
        MAC结果。
      • engineReset

        protected abstract void engineReset​()
        重置MAC进一步使用,维护MAC初始化的秘密密钥。