JavaTM 2 Platform
Std. Ed. v1.3

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 をサポートしていない実装で呼び出された場合

JavaTM 2 Platform
Std. Ed. v1.3

バグや機能要求の報告
さらに詳しい API リファレンスおよび開発者ドキュメントについては、 Java 2 SDK SE Developer Documentation を参照してください。このドキュメントには、概念、用語の定義、回避策、 実用的なコード例など、開発者を対象にした詳細な解説が掲載されています。

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