MessageDigest クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。
[Android.Runtime.Register("java/security/MessageDigest", DoNotGenerateAcw=true)]
public abstract class MessageDigest : Java.Security.MessageDigestSpi
[<Android.Runtime.Register("java/security/MessageDigest", DoNotGenerateAcw=true)>]
type MessageDigest = class
inherit MessageDigestSpi
- 継承
- 属性
注釈
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 メッセージ ダイジェストは、任意のサイズのデータを受け取り、固定長ハッシュ値を出力する安全な一方向ハッシュ関数です。
MessageDigest オブジェクトの初期化が開始されます。 データは、 メソッドを使用して #update(byte) update
処理されます。 いつでも #reset() reset
ダイジェストをリセットするために呼び出すことができます。 更新するすべてのデータが更新されたら、ハッシュ計算を #digest() digest
完了するためにいずれかのメソッドを呼び出す必要があります。
メソッドは digest
、特定の数の更新に対して 1 回呼び出すことができます。 digest
が呼び出されると、MessageDigest オブジェクトは初期化された状態にリセットされます。
実装は、Cloneable インターフェイスを自由に実装できます。 クライアント アプリケーションでは、複製を試み、CloneNotSupportedException をキャッチすることで、複製可能性をテストできます。
{@code
MessageDigest md = MessageDigest.getInstance("SHA-256");
try {
md.update(toChapter1);
MessageDigest tc1 = md.clone();
byte[] toChapter1Digest = tc1.digest();
md.update(toChapter2);
...etc.
} catch (CloneNotSupportedException cnse) {
throw new DigestException("couldn't make digest of partial content");
}
}
特定の実装が複製できない場合でも、ダイジェストの数が事前にわかっている場合は、複数のインスタンスをインスタンス化して中間ダイジェストを計算できます。
このクラスは抽象であり、歴史的な理由から から MessageDigestSpi
拡張されていることに注意してください。 アプリケーション開発者は、この MessageDigest
クラスで定義されているメソッドにのみ注目する必要があります。スーパークラス内のすべてのメソッドは、メッセージ ダイジェスト アルゴリズムの独自の実装を提供する暗号化サービス プロバイダーを対象としています。
Android には、次MessageDigest
のアルゴリズム<が用意されています。テーブル><thead><tr<>th>Algorithm</th><>Supported API Levels</th<>/tr></thead><tbody<>tr><td>MD5</td<>td td>1+</td<>/tr td>><><SHA-1</td><td td>1+</td<>/tr td>><<>SHA-224</td><td>1-8,22+</td></tr tr<>td>><SHA-256</td><td>1+</td<>/tr tr><><td>SHA-384</td<>td>1+</td/tr td<><<>>> SHA-512</td<>td>1+</td<>/tr/tbody><></table>
これらのアルゴリズムについては、Java 暗号化アーキテクチャの標準アルゴリズム名に関するドキュメントの MessageDigest セクション で説明されています。
1.1 に追加されました。
の java.security.MessageDigest
Java ドキュメント。
このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。
コンストラクター
MessageDigest(IntPtr, JniHandleOwnership) |
JNI オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。 |
MessageDigest(String) |
指定したアルゴリズム名を使用してメッセージ ダイジェストを作成します。 |
プロパティ
Algorithm |
実装の詳細に関係なく、アルゴリズムを識別する文字列を返します。 |
Class |
この |
DigestLength |
ダイジェストの長さをバイト単位で返します。この操作がプロバイダーでサポートされておらず、実装が複製できない場合は 0 を返します。 |
Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
JniIdentityHashCode |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
JniPeerMembers |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 |
PeerReference |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
Provider |
このメッセージ ダイジェスト オブジェクトのプロバイダーを返します。 |
ThresholdClass |
この API は Mono for Android インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 |
ThresholdType |
この API は Mono for Android インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 |
メソッド
Clone() |
実装が複製可能な場合は、複製を返します。 (継承元 MessageDigestSpi) |
Digest() |
パディングなどの最終的な操作を実行して、ハッシュ計算を完了します。 |
Digest(Byte[]) |
指定したバイト配列を使用してダイジェストの最終更新を実行し、ダイジェスト計算を完了します。 |
Digest(Byte[], Int32, Int32) |
パディングなどの最終的な操作を実行して、ハッシュ計算を完了します。 |
Dispose() |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
Dispose(Boolean) |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
EngineDigest() |
パディングなどの最終的な操作を実行して、ハッシュ計算を完了します。 (継承元 MessageDigestSpi) |
EngineDigest(Byte[], Int32, Int32) |
パディングなどの最終的な操作を実行して、ハッシュ計算を完了します。 (継承元 MessageDigestSpi) |
EngineGetDigestLength() |
ダイジェストの長さをバイト単位で返します。 (継承元 MessageDigestSpi) |
EngineReset() |
ダイジェストをリセットして、さらに使用します。 (継承元 MessageDigestSpi) |
EngineUpdate(Byte[], Int32, Int32) |
指定したバイト配列を使用してダイジェストを更新します。これは、指定したオフセットから始まります。 (継承元 MessageDigestSpi) |
EngineUpdate(ByteBuffer) |
指定した ByteBuffer を使用してダイジェストを更新します。 (継承元 MessageDigestSpi) |
EngineUpdate(SByte) |
指定したバイトを使用してダイジェストを更新します。 (継承元 MessageDigestSpi) |
Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
GetInstance(String) |
指定したダイジェスト アルゴリズムを実装する MessageDigest オブジェクトを返します。 |
GetInstance(String, Provider) |
指定したダイジェスト アルゴリズムを実装する MessageDigest オブジェクトを返します。 |
GetInstance(String, String) |
指定したダイジェスト アルゴリズムを実装する MessageDigest オブジェクトを返します。 |
IsEqual(Byte[], Byte[]) |
2 つのダイジェストを等しいかどうかを比較します。 |
JavaFinalize() |
オブジェクトへの参照がなくなったとガベージ コレクションが判断したときに、オブジェクトのガベージ コレクターによって呼び出されます。 (継承元 Object) |
Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドを起動します。 (継承元 Object) |
NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドを起動します。 (継承元 Object) |
Reset() |
ダイジェストをリセットして、さらに使用します。 |
SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
ToArray<T>() |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
UnregisterFromRuntime() |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
Update(Byte[]) |
指定したバイト配列を使用してダイジェストを更新します。 |
Update(Byte[], Int32, Int32) |
指定したバイト配列を使用してダイジェストを更新します。これは、指定したオフセットから始まります。 |
Update(ByteBuffer) |
指定した ByteBuffer を使用してダイジェストを更新します。 |
Update(SByte) |
指定したバイトを使用してダイジェストを更新します。 |
Wait() |
現在のスレッドが起動するまで待機します。通常<は、通知</em> または>< em 中断</em によって待機します>。> (継承元 Object) |
Wait(Int64) |
現在のスレッドが起動するまで待機します。通常<は、通知></em> または <>em 中断</em>、または特定のリアルタイムが経過するまで待機します。 (継承元 Object) |
Wait(Int64, Int32) |
現在のスレッドが起動するまで待機します。通常<は、通知></em> または <>em 中断</em>、または特定のリアルタイムが経過するまで待機します。 (継承元 Object) |
明示的なインターフェイスの実装
IJavaPeerable.Disposed() |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
IJavaPeerable.DisposeUnlessReferenced() |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
IJavaPeerable.Finalized() |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
IJavaPeerable.JniManagedPeerState |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 (継承元 Object) |
拡張メソッド
JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
JavaCast<TResult>(IJavaObject) |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 |
GetJniTypeName(IJavaPeerable) |
この MessageDigest クラスは、SHA-1 や SHA-256 などのメッセージ ダイジェスト アルゴリズムの機能をアプリケーションに提供します。 |