java.lang.Object javax.crypto.MacSpi
This class defines the Service Provider Interface ( SPI ) for the Mac class. All the abstract methods in this class must be implemented by each cryptographic service provider who wishes to supply the implementation of a particular MAC algorithm.
Implementations are free to implement the Cloneable interface.
Constructor Summary | |
---|---|
MacSpi
() |
Method Summary | |
---|---|
Object |
clone
() Returns a clone if the implementation is cloneable. |
protected abstract byte[] |
engineDoFinal
() Completes the MAC computation and resets the MAC for further use, maintaining the secret key that the MAC was initialized with. |
protected abstract int |
engineGetMacLength
() Returns the length of the MAC in bytes. |
protected abstract void |
engineInit
(
Key
key,
AlgorithmParameterSpec
params) Initializes the MAC with the given (secret) key and algorithm parameters. |
protected abstract void |
engineReset
() Resets the MAC for further use, maintaining the secret key that the MAC was initialized with. |
protected abstract void |
engineUpdate
(byte input) Processes the given byte. |
protected abstract void |
engineUpdate
(byte[] input, int offset, int len) Processes the first len bytes in input, starting at offset inclusive. |
protected void |
engineUpdate
(
ByteBuffer
Processes input.remaining() bytes in the ByteBuffer input, starting at input.position(). |
Methods inherited from class java.lang. Object |
---|
equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
Constructor Detail |
---|
public MacSpi()
Method Detail |
---|
protected abstract int engineGetMacLength()
protected abstract void engineInit(Key key, AlgorithmParameterSpec params) throws InvalidKeyException, InvalidAlgorithmParameterException
protected abstract void engineUpdate(byte input)
protected abstract void engineUpdate(byte[] input, int offset, int len)
protected void engineUpdate ( ByteBuffer input)
Subclasses should consider overriding this method if they can process ByteBuffers more efficiently than byte arrays.
protected abstract byte[] engineDoFinal()
protected abstract void engineReset()
public Object clone() throws CloneNotSupportedException