スマートフォン用の表示で見る

MD5

コンピュータ

md5

えむでぃーふぁいぶ

md5とはMessageDigest 5の略で、一方向ハッシュ関数のひとつ。

ハッシュ値は128bit/16byte固定。

ハッシュ値から元の文章を復元するのが不可能なため、一方向(非可逆)ハッシュ関数と呼ばれる。ハッシュ値には一部偏りが見られることが解っているが、事実上問題無い範囲とされる。

非可逆な性質を使い、ファイルが改ざん/破損していないかの確認や、UNIXなどのパスワード暗号化にも使われる。

ハッシュ値は2^128≒10^38の値を取る事が出来るため、逆に考えると10^38個のファイルの区別に使う事ができるので、ファイルのシリアル番号として使える。事実、インターネット上のP2Pのファイル共有システムWinnyやネットニュースサーバINNにおいて、ファイル/記事のシリアル番号として使われている。しかし、この方法はシリアルの競合が起きる可能性もあるので、信頼性が必要なシステムでは使ってはならない。

RFC 1321で標準化されている。


2004年8月CRYPTOのランプ・セッションで実際にコリジョンを発見したという報告があった。

Eurocrypto2005にてXiaoyun WangとHongbo Yuが"How to Break MD5 and Other Hash Functions"で発表している。