MD5
Section: C Library Functions (3)
索引
jman
BSD mandoc
FreeBSD 2
索引
名称
MD5Init
MD5Update
MD5Pad
MD5Final
MD5End
MD5File
MD5Data
- RSA Data Security 社の ``MD5'' メッセージダイジェストを計算する
索引
書式
Fd #include <sys/types.h>
Fd #include <md5.h>
Ft void
Fn MD5Init MD5_CTX *context
Ft void
Fn MD5Update MD5_CTX *context const unsigned char *data unsigned int len
Ft void
Fn MD5Pad MD5_CTX *context
Ft void
Fn MD5Final unsigned char digest[16] MD5_CTX *context
Ft char *
Fn MD5End MD5_CTX *context char *buf
Ft char *
Fn MD5File const char *filename char *buf
Ft char *
Fn MD5Data const unsigned char *data unsigned int len char *buf
索引
解説
MD5 関数群は、任意の数の入力バイトについて
128 ビット暗号チェックサム ( ダイジェスト ) を計算します。
暗号チェックサムは一方向ハッシュ関数なので
特定出力に対応する入力を ( 徹底的な検索を除いて) 見つけることはできません。
結果的には入力データの「指紋」しか見つからず、
実際の入力が明らかになることはありません。
MD2 は最も遅く、 MD4 は最も高速で、 MD5 はその中間です。
MD2 は、プライバシが重要なメールのみで使用できます。
MD4 は弱すぎると酷評されたため、
「安全ベルトを付けた MD4」として MD5 が開発されました。
疑わしいときは MD5 を使用してください。
Fn MD5Init ,
Fn MD5Update ,
Fn MD5Final
関数は中心的な関数群です。
MD5_CTX を割り当て、
Fn MD5Init
で初期化し、
Fn MD5Update
でデータを処理し、最後に
Fn MD5Final
で結果を取り出してください。
Fn MD5Pad
は、計算を終了しないで
Fn MD5Final
と同じ方法でメッセージデータをつめることができます。
Fn MD5End
は
Fn MD5Final
のラッパで、
16 進 128 ビットを表現する
33 文字 ( 最後の「 \0 」を含む ) の
ASCII
文字列に戻り値を変換します。
Fn MD5File
はファイルのダイジェストを計算し、
Fn MD5End
を使用して結果を返します。
ファイルを開けない場合はヌルポインタを返します。
Fn MD5Data
はメモリに存在するデータのダイジェストを計算し、
Fn MD5End
を使用して結果を返します。
Fn MD5End ,
Fn MD5File ,
Fn MD5Data
の使用にあたっては
buf
を NULL ポインタとすることができます。
この場合は
malloc(3)
で割り当てられた文字列が返されるので、使用後は
free(3)
で割り当てを解除しなければなりません。
buf
が NULL でない時は、少なくとも 33 文字分のバッファを
指していなければなりません。
索引
関連項目
md2(3),
md4(3),
md5(3)
-
B. Kaliski
The MD2 Message-Digest Algorithm
RFC 1319
-
R. Rivest
The MD4 Message-Digest Algorithm
RFC 1186
-
R. Rivest
The MD5 Message-Digest Algorithm
RFC 1321
-
RSA Laboratories
Frequently Asked Questions About today's Cryptography
索引
作者
オリジナルの MD5 ルーチンは、
RSA
Data Security 社によって開発され、
上記のリファレンスで公開されました。
このコードは、
An Poul-Henning Kamp Aq phk@login.dkuug.dk
により、この実装から直接引き出されています。
Phk ristede runen.
索引
歴史
この関数は、
Fx 2.0
で現れました。
索引
バグ
同じハッシュ値を持つような 2 つのファイルを見つける方法、
または特定のハッシュ値を持つようなファイルを見つける方法は
知られていません。
一方、そのような方法が存在しないという保証もありません。
MD2 は、プライバシが重要なメールに使用する場合のみライセンス供与されます。
その他の場合は MD4 か MD5 を使用してください。
索引
COPYRIGHT
Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
rights reserved.
このソフトウェアの複製や使用のためのライセンスは、
このソフトウェアやこの関数について言及したり参照したりする
すべての資料で
「 RSA Data Security 社の MD2 メッセージダイジェストアルゴリズム」
であることが明示されていれば、
プライバシが重要となる非営利インターネットメールに供与されます。
RSA Data Security 社は、このソフトウェアの商業性、またはこの
特定の目的に対するこのソフトウェアの適合性について表明しません。
このソフトウェアは、いかなる種類の、明示的または暗黙的な保証もなく、
「現状のまま」で提供されます。
この警告は、この文書かソフトウェア、またはその両方のすべてのコピーに
掲載しなければなりません。
索引
Index
- 名称
-
- 書式
-
- 解説
-
- 関連項目
-
- 作者
-
- 歴史
-
- バグ
-
- COPYRIGHT
-
Time: 07:06:59 GMT, January 12, 2009