Java プラットフォーム 1.2

java.security
クラス MessageDigestSpi

java.lang.Object
  |
  +--java.security.MessageDigestSpi
直接の既知のサブクラス:
MessageDigest

public abstract class MessageDigestSpi
extends Object

MessageDigest クラスの Service Provider Interface (SPI) を定義します。これは、MD5 や SHA といったメッセージダイジェストアルゴリズムの機能を提供します。メッセージダイジェストは、任意サイズのデータを取得して固定長のハッシュ値を出力するセキュリティ保護された単方向ハッシュ機能です。

すべての abstract メソッドは、特定のメッセージダイジェストアルゴリズムの実装を供給しようとする暗号サービスプロバイダによって実装されなければなりません。

Cloneable インタフェースは、自由に実装できます。

関連項目:
MessageDigest

コンストラクタの概要
MessageDigestSpi()
           
 
メソッドの概要
 Object clone()
          実装が複製可能な場合に複製を返します。
protected abstract  byte[] engineDigest()
          パディングなどの最終処理を行なってハッシュ計算を完了します。
protected  int engineDigest(byte[] buf, int offset, int len)
          パディングなどの最終処理を行なってハッシュ計算を完了します。
protected  int engineGetDigestLength()
          バイト単位のダイジェスト長を返します。
protected abstract  void engineReset()
          再利用のためにダイジェストをリセットします。
protected abstract  void engineUpdate(byte input)
          指定されたバイトデータを使ってダイジェストを更新します。
protected abstract  void engineUpdate(byte[] input, int offset, int len)
          指定されたバイトデータの配列を使って、指定されたオフセットから開始してダイジェストを更新します。
 
クラス java.lang.Object から継承したメソッド
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

MessageDigestSpi

public MessageDigestSpi()
メソッドの詳細

engineGetDigestLength

protected int engineGetDigestLength()
バイト単位のダイジェスト長を返します。

この具象メソッドは、この定義済みの abstract クラスに追加されています。下位互換を保つため、abstract メソッドにはできません。

デフォルト動作は 0 を返します。

このメソッドがプロバイダによってオーバーライドされると、ダイジェスト長を返します。

戻り値:
バイト単位のダイジェスト長
導入されたバージョン:
JDK1.2

engineUpdate

protected abstract void engineUpdate(byte input)
指定されたバイトデータを使ってダイジェストを更新します。
パラメータ:
input - 更新に使うバイトデータ

engineUpdate

protected abstract void engineUpdate(byte[] input,
                                     int offset,
                                     int len)
指定されたバイトデータの配列を使って、指定されたオフセットから開始してダイジェストを更新します。
パラメータ:
input - 更新に使うバイトデータの配列
offset - バイトデータの配列の開始オフセット
len - offset で始まる、使用するバイトの数

engineDigest

protected abstract byte[] engineDigest()
パディングなどの最終処理を行なってハッシュ計算を完了します。engineDigest の呼び出しのあと、エンジンはリセットされます (engineReset を参照)。リセット操作はエンジンの実装者が担当します。
戻り値:
結果のハッシュ値に対するバイトデータの配列

engineDigest

protected int engineDigest(byte[] buf,
                           int offset,
                           int len)
                    throws DigestException
パディングなどの最終処理を行なってハッシュ計算を完了します。engineDigest の呼び出しのあと、エンジンはリセットされます (engineReset を参照)。リセット操作はエンジンの実装者が担当します。 このメソッドは abstract でなければなりませんが、バイナリレベルの互換性を保つために具象メソッドのままにしておきます。互換性に配慮するプロバイダは、このメソッドをオーバーライドしてください。
パラメータ:
buf - ダイジェストを格納する出力バッファ
offset - 出力バッファの開始オフセット
len - ダイジェストに充当される buf 内のバイト長。このデフォルト実装と Sun プロバイダはどちらも部分的なダイジェストを返さない。このパラメータは、Java API における統一性を保つためにだけ存在する。このパラメータの値が実際のダイジェスト長より短い場合、メソッドは DigestException をスローする。このパラメータは、その値が実際のダイジェスト長より長いか、あるいは等しい場合は無視される
戻り値:
出力バッファに格納されるダイジェスト長
例外:
DigestException - エラーが発生する場合
導入されたバージョン:
JDK1.2

engineReset

protected abstract void engineReset()
再利用のためにダイジェストをリセットします。

clone

public Object clone()
             throws CloneNotSupportedException
実装が複製可能な場合に複製を返します。
戻り値:
実装が複製可能な場合は複製
例外:
CloneNotSupportedException - このメソッドが Cloneable をサポートしない実装で呼び出される場合
オーバーライド:
クラス Object 内の clone

Java プラットフォーム 1.2

バグや機能要求の報告
新しい javadoc の表示についてのコメントやご提案
Java は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.