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、クラス: ObjectCloneNotSupportedException - Cloneable をサポートしていない実装で呼び出された場合Cloneable バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.