MD5 クラス

定義

MD5 ハッシュ アルゴリズムのすべての実装が継承する、抽象クラスを表します。Represents the abstract class from which all implementations of the MD5 hash algorithm inherit.

public ref class MD5 abstract : System::Security::Cryptography::HashAlgorithm
public abstract class MD5 : System.Security.Cryptography.HashAlgorithm
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class MD5 : System.Security.Cryptography.HashAlgorithm
type MD5 = class
    inherit HashAlgorithm
[<System.Runtime.InteropServices.ComVisible(true)>]
type MD5 = class
    inherit HashAlgorithm
Public MustInherit Class MD5
Inherits HashAlgorithm
継承
派生
属性

注釈

ハッシュ関数は、任意の長さのバイナリ文字列を固定長の小さなバイナリ文字列にマップします。Hash functions map binary strings of an arbitrary length to small binary strings of a fixed length. 暗号ハッシュ関数には、同じ値にハッシュされる2つの異なる入力を見つけることができるというプロパティがあります。つまり、対応するデータも一致する場合、2つのデータセットのハッシュが一致する必要があります。A cryptographic hash function has the property that it is computationally infeasible to find two distinct inputs that hash to the same value; that is, hashes of two sets of data should match if the corresponding data also matches. データに小さな変更を加えると、ハッシュに大きな変更が加えられることがあります。Small changes to the data result in large, unpredictable changes in the hash.

アルゴリズムのハッシュサイズ MD5 は128ビットです。The hash size for the MD5 algorithm is 128 bits.

ComputeHashクラスのメソッドは、 MD5 16 バイトの配列としてハッシュを返します。The ComputeHash methods of the MD5 class return the hash as an array of 16 bytes. MD5 実装によっては、32文字の16進形式のハッシュが生成されることに注意してください。Note that some MD5 implementations produce a 32-character, hexadecimal-formatted hash. このような実装を相互運用するには、メソッドの戻り値を ComputeHash 16 進数値として書式設定します。To interoperate with such implementations, format the return value of the ComputeHash methods as a hexadecimal value.

注意

MD5/SHA1 の衝突の問題のため、SHA256 または SHA512 をお勧めします。Due to collision problems with MD5/SHA1, Microsoft recommends SHA256 or SHA512. クラスの代わりにクラスまたはクラスを使用することを検討してください SHA256 SHA512 MD5Consider using the SHA256 class or the SHA512 class instead of the MD5 class. MD5レガシアプリケーションとデータとの互換性のためだけに使用してください。Use MD5 only for compatibility with legacy applications and data.

コンストラクター

MD5()

MD5 の新しいインスタンスを初期化します。Initializes a new instance of MD5.

フィールド

HashSizeValue

計算されたハッシュ コードのサイズをビット単位で表します。Represents the size, in bits, of the computed hash code.

(継承元 HashAlgorithm)
HashValue

計算されたハッシュ コードの値を表します。Represents the value of the computed hash code.

(継承元 HashAlgorithm)
State

ハッシュ計算の状態を表します。Represents the state of the hash computation.

(継承元 HashAlgorithm)

プロパティ

CanReuseTransform

現在の変換を再利用できるかどうかを示す値を取得します。Gets a value indicating whether the current transform can be reused.

(継承元 HashAlgorithm)
CanTransformMultipleBlocks

派生クラスでオーバーライドされると、複数のブロックを変換できるかどうかを示す値を取得します。When overridden in a derived class, gets a value indicating whether multiple blocks can be transformed.

(継承元 HashAlgorithm)
Hash

計算されたハッシュ コードの値を取得します。Gets the value of the computed hash code.

(継承元 HashAlgorithm)
HashSize

計算されたハッシュ コードのサイズをビット単位で取得します。Gets the size, in bits, of the computed hash code.

(継承元 HashAlgorithm)
InputBlockSize

派生クラスでオーバーライドされると、入力ブロック サイズを取得します。When overridden in a derived class, gets the input block size.

(継承元 HashAlgorithm)
OutputBlockSize

派生クラスでオーバーライドされると、出力ブロック サイズを取得します。When overridden in a derived class, gets the output block size.

(継承元 HashAlgorithm)

メソッド

Clear()

HashAlgorithm クラスによって使用されているすべてのリソースを解放します。Releases all resources used by the HashAlgorithm class.

(継承元 HashAlgorithm)
ComputeHash(Byte[])

指定したバイト配列のハッシュ値を計算します。Computes the hash value for the specified byte array.

(継承元 HashAlgorithm)
ComputeHash(Byte[], Int32, Int32)

指定したバイト配列の指定した領域のハッシュ値を計算します。Computes the hash value for the specified region of the specified byte array.

(継承元 HashAlgorithm)
ComputeHash(Stream)

指定された Stream オブジェクトのハッシュ値を計算します。Computes the hash value for the specified Stream object.

(継承元 HashAlgorithm)
ComputeHashAsync(Stream, CancellationToken)

指定された Stream オブジェクトのハッシュ値を非同期に計算します。Asynchronously computes the hash value for the specified Stream object.

(継承元 HashAlgorithm)
Create()

MD5 ハッシュ アルゴリズムの既定の実装のインスタンスを作成します。Creates an instance of the default implementation of the MD5 hash algorithm.

Create(String)

MD5 ハッシュ アルゴリズムの指定された実装のインスタンスを作成します。Creates an instance of the specified implementation of the MD5 hash algorithm.

Dispose()

HashAlgorithm クラスの現在のインスタンスによって使用されているすべてのリソースを解放します。Releases all resources used by the current instance of the HashAlgorithm class.

(継承元 HashAlgorithm)
Dispose(Boolean)

HashAlgorithm によって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。Releases the unmanaged resources used by the HashAlgorithm and optionally releases the managed resources.

(継承元 HashAlgorithm)
Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
HashCore(Byte[], Int32, Int32)

派生クラスでオーバーライドされると、ハッシュを計算するために、オブジェクトに書き込まれたデータをハッシュ アルゴリズムにルーティングします。When overridden in a derived class, routes data written to the object into the hash algorithm for computing the hash.

(継承元 HashAlgorithm)
HashCore(ReadOnlySpan<Byte>)

ハッシュを計算するために、オブジェクトに書き込んだデータをハッシュ アルゴリズムにルーティングします。Routes data written to the object into the hash algorithm for computing the hash.

(継承元 HashAlgorithm)
HashData(Byte[])

MD5 アルゴリズムを使用してデータのハッシュを計算します。Computes the hash of data using the MD5 algorithm.

HashData(ReadOnlySpan<Byte>)

MD5 アルゴリズムを使用してデータのハッシュを計算します。Computes the hash of data using the MD5 algorithm.

HashData(ReadOnlySpan<Byte>, Span<Byte>)

MD5 アルゴリズムを使用してデータのハッシュを計算します。Computes the hash of data using the MD5 algorithm.

HashFinal()

派生クラスでオーバーライドされると、暗号化ハッシュ アルゴリズムによって最後のデータが処理された後に、ハッシュ計算を終了します。When overridden in a derived class, finalizes the hash computation after the last data is processed by the cryptographic hash algorithm.

(継承元 HashAlgorithm)
Initialize()

ハッシュ アルゴリズムを初期状態にリセットします。Resets the hash algorithm to its initial state.

(継承元 HashAlgorithm)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(継承元 Object)
TransformBlock(Byte[], Int32, Int32, Byte[], Int32)

入力バイト配列の指定した領域のハッシュ値を計算し、入力バイト配列の指定した領域を出力バイト配列の指定した領域にコピーします。Computes the hash value for the specified region of the input byte array and copies the specified region of the input byte array to the specified region of the output byte array.

(継承元 HashAlgorithm)
TransformFinalBlock(Byte[], Int32, Int32)

指定したバイト配列の指定した領域のハッシュ値を計算します。Computes the hash value for the specified region of the specified byte array.

(継承元 HashAlgorithm)
TryComputeHash(ReadOnlySpan<Byte>, Span<Byte>, Int32)

指定したバイト配列のハッシュ値の計算を試みます。Attempts to compute the hash value for the specified byte array.

(継承元 HashAlgorithm)
TryHashData(ReadOnlySpan<Byte>, Span<Byte>, Int32)

MD5 アルゴリズムを使用してデータのハッシュの計算を試みます。Attempts to compute the hash of data using the MD5 algorithm.

TryHashFinal(Span<Byte>, Int32)

ハッシュ アルゴリズムによって最後のデータが処理された後、ハッシュ計算の終了を試みます。Attempts to finalize the hash computation after the last data is processed by the hash algorithm.

(継承元 HashAlgorithm)

明示的なインターフェイスの実装

IDisposable.Dispose()

HashAlgorithm によって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。Releases the unmanaged resources used by the HashAlgorithm and optionally releases the managed resources.

(継承元 HashAlgorithm)

適用対象

こちらもご覧ください