public abstract class MacSpi extends Object
Mac
クラスのサービスプロバイダインタフェース (SPI) を定義します。特定の MAC アルゴリズムの実装を提供する各暗号化サービスプロバイダは、このクラスのすべての抽象メソッドを実装する必要があります。
Cloneable インタフェースは、自由に実装できます。
コンストラクタと説明 |
---|
MacSpi() |
修飾子と型 | メソッドと説明 |
---|---|
Object |
clone()
実装が複製可能な場合は複製を返します。
|
protected abstract byte[] |
engineDoFinal()
MAC の計算を完了し、将来の使用のために MAC をリセットします。MAC の初期化に使用された秘密鍵は維持します。
|
protected abstract int |
engineGetMacLength()
MAC の長さをバイト単位で返します。
|
protected abstract void |
engineInit(Key key, AlgorithmParameterSpec params)
指定された (秘密) 鍵とアルゴリズムパラメータを使用して MAC を初期化します。
|
protected abstract void |
engineReset()
将来の使用のために MAC をリセットします。MAC の初期化に使用された秘密鍵は維持します。
|
protected abstract void |
engineUpdate(byte input)
指定されたバイトを処理します。
|
protected abstract void |
engineUpdate(byte[] input, int offset, int len)
input 内の len バイトを処理します。offset から始めます。 |
protected void |
engineUpdate(ByteBuffer input)
ByteBuffer
input 内の input.position() から始まる input.remaining() バイトを処理します。 |
protected abstract int engineGetMacLength()
protected abstract void engineInit(Key key, AlgorithmParameterSpec params) throws InvalidKeyException, InvalidAlgorithmParameterException
key
- (秘密) 鍵。params
- アルゴリズムパラメータ。InvalidKeyException
- 指定された鍵がこの MAC の初期化に不適切な場合。InvalidAlgorithmParameterException
- 指定されたアルゴリズムパラメータがこの MAC に不適切な場合。protected abstract void engineUpdate(byte input)
input
- 処理される入力バイト。protected abstract void engineUpdate(byte[] input, int offset, int len)
input
内の len
バイトを処理します。offset
から始めます。input
- 入力バッファーoffset
- 入力を開始する input
内のオフセット。len
- 処理するバイト数。protected void engineUpdate(ByteBuffer input)
input
内の input.position()
から始まる input.remaining()
バイトを処理します。終了時に、バッファーの位置はリミットに等しくなりますが、リミットは変更されません。
ByteBuffer をバイト配列よりも効率的に処理できる場合、このメソッドをサブクラスでオーバーライドすることを検討してください。
input
- ByteBufferprotected abstract byte[] engineDoFinal()
protected abstract void engineReset()
public Object clone() throws CloneNotSupportedException
clone
、クラス: Object
CloneNotSupportedException
- Cloneable
をサポートしていない実装で呼び出された場合Cloneable
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.