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, 2014, Oracle and/or its affiliates. All rights reserved.