JavaTM 2
Platform
Std. Ed. v1.4.0

java.security
クラス MessageDigestSpi

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

public abstract class MessageDigestSpi
extends Object

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

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

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()
バイト単位のダイジェスト長を返します。

この具象メソッドは、この定義済みの抽象クラスに追加されています (下位互換のため、抽象メソッドにはなれない)。

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

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

戻り値:
バイト単位のダイジェスト長
導入されたバージョン:
1.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 を参照)。リセット操作はエンジンの実装者が担当します。このメソッドは抽象メソッドでなければなりませんが、バイナリ互換を保つために具象メソッドのままにしておきます。互換性を配慮するプロバイダは、このメソッドをオーバーライドしてください。

パラメータ:
buf - ダイジェストを格納する出力バッファ
offset - 出力バッファの開始オフセット
len - ダイジェストに充当される buf 内のバイト長。このデフォルト実装と Sun のプロバイダはどちらも部分的なダイジェストを返さない。このパラメータは、Java API における統一性を保つためにだけ存在する。このパラメータの値が実際のダイジェスト長より短い場合、メソッドは DigestException をスローする。このパラメータは、その値が実際のダイジェスト長より長いか、あるいは等しい場合は無視される
戻り値:
出力バッファに格納されるダイジェスト長
例外:
DigestException - エラーが発生する場合
導入されたバージョン:
1.2

engineReset

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


clone

public Object clone()
             throws CloneNotSupportedException
実装が複製可能な場合は複製を返します。

オーバーライド:
クラス Object 内の clone
戻り値:
実装が複製可能な場合は複製
例外:
CloneNotSupportedException - Cloneable をサポートしていない実装で呼び出された場合
関連項目:
Cloneable

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.