doc/ja_JP.eucJP/man/man3/md2.3
Kazuo Horikawa 6a00dc5ed2 man3 update to 4.5-RELEASE base done by jpman project <man-jp@jp.FreeBSD.org>
Submitted by:	Yuko Sasaki <yuko@veltec.co.jp>
2002-05-18 07:12:57 +00:00

170 lines
4.4 KiB
Groff

.\"
.\" ----------------------------------------------------------------------------
.\" "THE BEER-WARE LICENSE" (Revision 42):
.\" <phk@login.dkuug.dk> wrote this file. As long as you retain this notice you
.\" can do whatever you want with this stuff. If we meet some day, and you think
.\" this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp
.\" ----------------------------------------------------------------------------
.\"
.\" $Id: md2.3,v 1.4 2002-05-18 07:12:55 horikawa Exp $
.\"
.\" $FreeBSD$
.Dd October 9, 1996
.Dt MD2 3
.Os FreeBSD 2
.Sh 名称
.Nm MD2Init ,
.Nm MD2Update ,
.Nm MD2Pad ,
.Nm MD2Final ,
.Nm MD2End ,
.Nm MD2File ,
.Nm MD2Data
.Nd RSA Data Security
.Sh 書式
.Fd #include <sys/types.h>
.Fd #include <md2.h>
.Ft void
.Fn MD2Init "MD2_CTX *context"
.Ft void
.Fn MD2Update "MD2_CTX *context" "const unsigned char *data" "unsigned int len"
.Ft void
.Fn MD2Pad "MD2_CTX *context"
.Ft void
.Fn MD2Final "unsigned char digest[16]" "MD2_CTX *context"
.Ft "char *"
.Fn MD2End "MD2_CTX *context" "char *buf"
.Ft "char *"
.Fn MD2File "const char *filename" "char *buf"
.Ft "char *"
.Fn MD2Data "const unsigned char *data" "unsigned int len" "char *buf"
.Sh 解説
MD2 関数群は、任意の数の入力バイトに対して
128 ビット暗号チェックサム ( ダイジェスト ) を計算します。
暗号チェックサムは一方向ハッシュ関数なので
特定出力に対応する入力を ( 徹底的な検索を除いて ) 見つけることはできません。
結果的には入力データの「指紋」しか見つからず、
実際の入力が明らかになることはありません。
.Pp
MD2 は最も遅く、 MD4 は最も高速で、 MD5 はその中間です。
MD2 は、プライバシが重要なメールのみで使用できます。
MD4 には弱すぎると酷評されたため、
「安全ベルトを付けた MD4」として MD5 が開発されました。
疑わしいときは MD5 を使用してください。
.Pp
.Fn MD2Init ,
.Fn MD2Update ,
.Fn MD2Final
関数は中心的な関数群です。
MD2_CTX を割り当て、
.Fn MD2Init
で初期化し、
.Fn MD2Update
でデータを処理し、最後に
.Fn MD2Final
で結果を取り出してください。
.Pp
.Fn MD2Pad
計算を終了しないで、
.Fn MD2Final
と同じ方法でメッセージデータをつめることができます。
.Pp
.Fn MD2End
.Fn MD2Final
のラッパで、
16 進 128 ビットを表現する
33 文字 ( 最後の「 \e0 」を含む ) の
.Tn ASCII
文字列に戻り値を変換します。
.Pp
.Fn MD2File
はファイルのダイジェストを計算し、
.Fn MD2End
を使用して結果を返します。
ファイルを開けない場合はヌルポインタを返します。
.Fn MD2Data
はメモリに存在するデータのダイジェストを計算し、
.Fn MD2End
を使用して結果を返します。
.Pp
.Fn MD2End ,
.Fn MD2File ,
.Fn MD2Data
の使用にあたっては
.Ar buf
を NULL ポインタとすることができます。
この場合は
.Xr malloc 3
で割り当てられた文字列が返されるので、使用後は
.Xr free 3
で割り当てを解除しなければなりません。
.Ar buf
が NULL でない時は、少なくとも 33 文字分のバッファを
指していなければなりません。
.Sh 関連項目
.Xr md2 3 ,
.Xr md4 3 ,
.Xr md5 3
.Rs
.%A B. Kaliski
.%T The MD2 Message-Digest Algorithm
.%O RFC 1319
.Re
.Rs
.%A R. Rivest
.%T The MD4 Message-Digest Algorithm
.%O RFC 1186
.Re
.Rs
.%A R. Rivest
.%T The MD5 Message-Digest Algorithm
.%O RFC 1321
.Re
.Rs
.%A RSA Laboratories
.%T Frequently Asked Questions About today's Cryptography
.Re
.Sh 作者
オリジナルの MD2 ルーチンは、
.Tn RSA
Data Security 社によって開発され、
上記のリファレンスで公開されました。
このコードは、
.An Poul-Henning Kamp Aq phk@login.dkuug.dk
により、この実装から直接引き出されました。
.Pp
Phk ristede runen.
.Sh 歴史
この関数は、
.Fx 2.0
に現れました。
.Pp
.Sh バグ
同じハッシュ値を持つような 2 つのファイルを見つける方法、
または特定のハッシュ値を持つようなファイルを見つける方法は
知られていません。
一方、そのような方法が存在しないという保証もありません。
.Pp
MD2 は、プライバシが重要なメールに使用する場合のみライセンス供与されます。
その他の場合は MD4 か MD5 を使用してください。
.Pp
.Sh COPYRIGHT
Copyright (C) 1990-2, RSA Data Security, Inc. Created 1990. All
rights reserved.
.Pp
このソフトウェアの複製や使用のためのライセンスは、
このソフトウェアやこの関数について言及したり参照したりする
すべての資料で
「 RSA Data Security 社の MD2 メッセージダイジェストアルゴリズム」
であることが明示されていれば、
プライバシが重要となる非営利インターネットメールに供与されます。
.Pp
RSA Data Security 社は、このソフトウェアの商業性、またはこの
特定の目的に対するこのソフトウェアの適合性について表明しません。
このソフトウェアは、いかなる種類の、明示的または暗黙的な保証もなく、
「現状のまま」で提供されます。
.Pp
この警告は、この文書かソフトウェア、またはその両方のすべてのコピーに
掲載しなければなりません。