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

jman



Time: 07:06:59 GMT, January 12, 2009