md5()とは? わかりやすく解説

エム‐ディー‐ファイブ【MD5】

読み方:えむでぃーふぁいぶ

message digest algorithm 5デジタル署名などに使われるハッシュ関数


MD5

セキュリティのほかの用語一覧
暗号化方式:  公開鍵  公開鍵暗号  公開鍵基盤  MD5  PCT  RC6  ROT13

md5

(PHP 4, PHP 5)
md5 — 文字列のmd5ハッシュ値を計算する

説明

string md5 ( string str [, bool raw_output] )
» RSA Data Security, Inc. の MD5メッセージダイジェストアルゴリズム を用いて strのMD5ハッシュ値を計算し、そのハッシュを 返します。このハッシュは、32文字の16進数となります。 オプションのraw_outputTRUEが指定された場 合、md5ダイジェストが16バイト長のバイナリ形式で返されます。
注意: オプションのraw_outputパラメータは、 PHP 5.0.0で追加され、デフォルトはFALSEです。
例 2274. md5() の例
<?php
$str = 'apple';

if (md5($str) === '1f3870be274f6c49b3e31a0c6728957f') {
   echo "Would you like a green or red apple?";
   exit;
}
?>


crc32()md5_file()sha1()も参照ください。

MD5 クラス

MD5 ハッシュ アルゴリズムすべての実装継承する抽象クラス表します

名前空間: System.Security.Cryptography
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<ComVisibleAttribute(True)> _
Public MustInherit Class
 MD5
    Inherits HashAlgorithm
[ComVisibleAttribute(true)] 
public abstract class MD5 : HashAlgorithm
[ComVisibleAttribute(true)] 
public ref class MD5 abstract : public
 HashAlgorithm
/** @attribute ComVisibleAttribute(true) */ 
public abstract class MD5 extends HashAlgorithm
ComVisibleAttribute(true) 
public abstract class MD5 extends
 HashAlgorithm
解説解説
使用例使用例

文字列MD5 ハッシュ値計算し32 文字16 進形式文字列としてハッシュ返すコード例次に示します。このコード例作成されるハッシュ文字列は、32 文字16 進形式ハッシュ文字列作成する (任意のプラットフォーム上の) MD5 ハッシュ関数互換性あります

Imports System
Imports System.Security.Cryptography
Imports System.Text

Module Example

    ' Hash an input string and return the hash as
    ' a 32 character hexadecimal string.
    Function getMd5Hash(ByVal input As
 String) As String
        ' Create a new instance of the MD5 object.
        Dim md5Hasher As MD5 = MD5.Create()

        ' Convert the input string to a byte array and compute the hash.
        Dim data As Byte()
 = md5Hasher.ComputeHash(Encoding.Default.GetBytes(input))

        ' Create a new Stringbuilder to collect the bytes
        ' and create a string.
        Dim sBuilder As New
 StringBuilder()

        ' Loop through each byte of the hashed data 
        ' and format each one as a hexadecimal string.
        Dim i As Integer
        For i = 0 To data.Length - 1
            sBuilder.Append(data(i).ToString("x2"))
        Next i

        ' Return the hexadecimal string.
        Return sBuilder.ToString()

    End Function


    ' Verify a hash against a string.
    Function verifyMd5Hash(ByVal input As
 String, ByVal hash As
 String) As Boolean
        ' Hash the input.
        Dim hashOfInput As String
 = getMd5Hash(input)

        ' Create a StringComparer an comare the hashes.
        Dim comparer As StringComparer = StringComparer.OrdinalIgnoreCase

        If 0 = comparer.Compare(hashOfInput, hash) Then
            Return True
        Else
            Return False
        End If

    End Function



    Sub Main()
        Dim source As String
 = "Hello World!"

        Dim hash As String
 = getMd5Hash(source)

        Console.WriteLine("The MD5 hash of " + source
 + " is: " + hash + ".")

        Console.WriteLine("Verifying the hash...")

        If verifyMd5Hash(source, hash) Then
            Console.WriteLine("The hashes are the same.")
        Else
            Console.WriteLine("The hashes are not same.")
        End If

    End Sub
End Module
' This code example produces the following output:
'
' The MD5 hash of Hello World! is: ed076287532e86365e841e92bfc50d8c.
' Verifying the hash...
' The hashes are the same.
using System;
using System.Security.Cryptography;
using System.Text;

class Example
{
    // Hash an input string and return the hash as
    // a 32 character hexadecimal string.
    static string getMd5Hash(string
 input)
    {
        // Create a new instance of the MD5CryptoServiceProvider object.
        MD5 md5Hasher = MD5.Create();

        // Convert the input string to a byte array and compute the
 hash.
        byte[] data = md5Hasher.ComputeHash(Encoding.Default.GetBytes(input));

        // Create a new Stringbuilder to collect the bytes
        // and create a string.
        StringBuilder sBuilder = new StringBuilder();

        // Loop through each byte of the hashed data 
        // and format each one as a hexadecimal string.
        for (int i = 0; i < data.Length;
 i++)
        {
            sBuilder.Append(data[i].ToString("x2"));
        }

        // Return the hexadecimal string.
        return sBuilder.ToString();
    }

    // Verify a hash against a string.
    static bool verifyMd5Hash(string
 input, string hash)
    {
        // Hash the input.
        string hashOfInput = getMd5Hash(input);

        // Create a StringComparer an comare the hashes.
        StringComparer comparer = StringComparer.OrdinalIgnoreCase;

        if (0 == comparer.Compare(hashOfInput, hash))
        {
            return true;
        }
        else
        {
            return false;
        }
    }


    static void Main()
    {
        string source = "Hello World!";
        
        string hash = getMd5Hash(source);

        Console.WriteLine("The MD5 hash of " + source + " is: "
 + hash + ".");

        Console.WriteLine("Verifying the hash...");

        if (verifyMd5Hash(source, hash))
        {
            Console.WriteLine("The hashes are the same.");
        }
        else
        {
            Console.WriteLine("The hashes are not same.");
        }
        
    }
}
// This code example produces the following output:
//
// The MD5 hash of Hello World! is: ed076287532e86365e841e92bfc50d8c.
// Verifying the hash...
// The hashes are the same.
継承階層継承階層
System.Object
   System.Security.Cryptography.HashAlgorithm
    System.Security.Cryptography.MD5
       System.Security.Cryptography.MD5CryptoServiceProvider
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

MD5 コンストラクタ


MD5 フィールド


プロテクト フィールドプロテクト フィールド

  名前 説明
プロテクト フィールド HashSizeValue  計算されハッシュ コードサイズビット単位表します。 ( HashAlgorithm から継承されます。)
プロテクト フィールド HashValue  計算されハッシュ コードの値を表します。 ( HashAlgorithm から継承されます。)
プロテクト フィールド State  ハッシュ計算の状態を表します。 ( HashAlgorithm から継承されます。)
参照参照

関連項目

MD5 クラス
System.Security.Cryptography 名前空間

その他の技術情報

暗号サービス

MD5 プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ CanReuseTransform  現在の変換再利用できるかどうかを示す値を取得します。 ( HashAlgorithm から継承されます。)
パブリック プロパティ CanTransformMultipleBlocks  派生クラスオーバーライドされると、複数ブロック変換できるかどうかを示す値を取得します。 ( HashAlgorithm から継承されます。)
パブリック プロパティ Hash  計算されハッシュ コードの値を取得します。 ( HashAlgorithm から継承されます。)
パブリック プロパティ HashSize  計算されハッシュ コードサイズビット単位取得します。 ( HashAlgorithm から継承されます。)
パブリック プロパティ InputBlockSize  派生クラスオーバーライドされると、入力ブロック サイズ取得します。 ( HashAlgorithm から継承されます。)
パブリック プロパティ OutputBlockSize  派生クラスオーバーライドされると、出力ブロック サイズ取得します。 ( HashAlgorithm から継承されます。)
参照参照

関連項目

MD5 クラス
System.Security.Cryptography 名前空間

その他の技術情報

暗号サービス

MD5 メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド参照)
  名前 説明
パブリック メソッド Clear  HashAlgorithm クラスによって使用されているすべてのリソース解放します。 ( HashAlgorithm から継承されます。)
パブリック メソッド ComputeHash  オーバーロードされます入力データハッシュ値計算します。 ( HashAlgorithm から継承されます。)
パブリック メソッド Create オーバーロードされます。 この抽象クラス特定の実装作成できるようにします。
パブリック メソッド Equals  オーバーロードされます2 つObject インスタンス等しかどうか判断します。 ( Object から継承されます。)
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用適してます。 ( Object から継承されます。)
パブリック メソッド GetType  現在のインスタンスType取得します。 ( Object から継承されます。)
パブリック メソッド Initialize  HashAlgorithm クラス実装初期化します。 ( HashAlgorithm から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数Object インスタンス同一かどうか判断します。 ( Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String返します。 ( Object から継承されます。)
パブリック メソッド TransformBlock  入力バイト配列指定した領域ハッシュ値計算し結果ハッシュ値出力バイト配列指定した領域コピーします。 ( HashAlgorithm から継承されます。)
パブリック メソッド TransformFinalBlock  指定したバイト配列指定した領域ハッシュ値計算します。 ( HashAlgorithm から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

MD5 クラス
System.Security.Cryptography 名前空間

その他の技術情報

暗号サービス

MD5 メンバ

MD5 ハッシュ アルゴリズムすべての実装継承する抽象クラス表します

MD5 データ型公開されるメンバを以下の表に示します


プロテクト コンストラクタプロテクト コンストラクタ
プロテクト フィールドプロテクト フィールド
  名前 説明
プロテクト フィールド HashSizeValue  計算されハッシュ コードサイズビット単位表します。(HashAlgorithm から継承されます。)
プロテクト フィールド HashValue  計算されハッシュ コードの値を表します。(HashAlgorithm から継承されます。)
プロテクト フィールド State  ハッシュ計算の状態を表します。(HashAlgorithm から継承されます。)
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ CanReuseTransform  現在の変換再利用できるかどうかを示す値を取得します。(HashAlgorithm から継承されます。)
パブリック プロパティ CanTransformMultipleBlocks  派生クラスオーバーライドされると、複数ブロック変換できるかどうかを示す値を取得します。(HashAlgorithm から継承されます。)
パブリック プロパティ Hash  計算されハッシュ コードの値を取得します。(HashAlgorithm から継承されます。)
パブリック プロパティ HashSize  計算されハッシュ コードサイズビット単位取得します。(HashAlgorithm から継承されます。)
パブリック プロパティ InputBlockSize  派生クラスオーバーライドされると、入力ブロック サイズ取得します。(HashAlgorithm から継承されます。)
パブリック プロパティ OutputBlockSize  派生クラスオーバーライドされると、出力ブロック サイズ取得します。(HashAlgorithm から継承されます。)
パブリック メソッドパブリック メソッド
( プロテクト メソッド参照)
  名前 説明
パブリック メソッド Clear  HashAlgorithm クラスによって使用されているすべてのリソース解放します。 (HashAlgorithm から継承されます。)
パブリック メソッド ComputeHash  オーバーロードされます入力データハッシュ値計算します。 (HashAlgorithm から継承されます。)
パブリック メソッド Create オーバーロードされます。 この抽象クラス特定の実装作成できるようにします。
パブリック メソッド Equals  オーバーロードされます2 つObject インスタンス等しかどうか判断します。 (Object から継承されます。)
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用適してます。 (Object から継承されます。)
パブリック メソッド GetType  現在のインスタンスType取得します。 (Object から継承されます。)
パブリック メソッド Initialize  HashAlgorithm クラス実装初期化します。 (HashAlgorithm から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数Object インスタンス同一かどうか判断します。 (Object から継承されます。)
パブリック メソッド ToString  現在の Object を表す String返します。 (Object から継承されます。)
パブリック メソッド TransformBlock  入力バイト配列指定した領域ハッシュ値計算し結果ハッシュ値出力バイト配列指定した領域コピーします。 (HashAlgorithm から継承されます。)
パブリック メソッド TransformFinalBlock  指定したバイト配列指定した領域ハッシュ値計算します。 (HashAlgorithm から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

MD5 クラス
System.Security.Cryptography 名前空間

その他の技術情報

暗号サービス

MD5

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/11/02 13:44 UTC 版)

MD5(エムディーファイブ、: message digest algorithm 5)は、暗号学的ハッシュ関数のひとつである。ハッシュ値は128ビット。







固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「md5()」の関連用語

md5()のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



md5()のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
デジタル大辞泉デジタル大辞泉
(C)Shogakukan Inc.
株式会社 小学館
JMCJMC
2024 (C) JMC Corpyright All Rights Reserved
株式会社ジェイエムシー情報セキュリティ用語集
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2024 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリMD5の記事を利用しております。
PHP Documentation GroupPHP Documentation Group
Copyright © 1997 - 2024 by the PHP Documentation Group.
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2024 Microsoft.All rights reserved.
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのMD5 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS