X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=draft%2Fman4%2Frandom.4;h=bb3e71982a065f671051048cbd371961a1584103;hb=c1dfa2f6ab1bbed84992d3c59ee9925f4d453668;hp=9827e5031de5f592a267d2583c53513f6664cef8;hpb=d64f6f809e331352f863bdb422001aaaaea4cbdd;p=linuxjm%2FLDP_man-pages.git diff --git a/draft/man4/random.4 b/draft/man4/random.4 index 9827e503..bb3e7198 100644 --- a/draft/man4/random.4 +++ b/draft/man4/random.4 @@ -1,9 +1,11 @@ .\" Copyright (c) 1997 John S. Kallal (kallal@voicenet.com) .\" +.\" %%%LICENSE_START(GPLv2+_DOC_ONEPARA) .\" This is free documentation; you can redistribute it and/or .\" modify it under the terms of the GNU General Public License as .\" published by the Free Software Foundation; either version 2 of .\" the License, or (at your option) any later version. +.\" %%%LICENSE_END .\" .\" Some changes by tytso and aeb. .\" @@ -19,9 +21,13 @@ .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* -.TH RANDOM 4 2010\-08\-29 Linux "Linux Programmer's Manual" +.TH RANDOM 4 2013\-03\-15 Linux "Linux Programmer's Manual" .SH 名前 random, urandom \- カーネル乱数ソースデバイス +.SH 書式 +#include +.sp +\fBint ioctl(\fP\fIfd\fP\fB, RND\fP\fIrequest\fP\fB, \fP\fIparam\fP\fB);\fP .SH 説明 (Linux 1.3.30 から提供されている) \fI/dev/random\fP 、 \fI/dev/urandom\fP キャラクタスペシャルファイルは カーネル乱数ジェネレータへのインタフェースを提供する。 \fI/dev/random\fP ファイルはメジャーデバイス番号 1 マイナーデバイス番号 8 @@ -40,6 +46,10 @@ random, urandom \- カーネル乱数ソースデバイス 論理的には弱くなることになる。 この攻撃をどのように行うかという事については、現在研究論文などの 形で入手できる資料はない、しかし、そのような攻撃は論理的に存在可能である。 もし、この事が心配なら、(\fI/dev/urandom\fP ではなく) \fI/dev/random\fP を利用すればいい。 +.LP +\fI/dev/random\fP や \fI/dev/urandom\fP に書き込みを行うと、 書き込まれたデータでエントロピー・プールが更新される。 しかし、 +エントロピー・カウントが増えるわけではない。 つまり、 \fI/dev/random\fP と \fI/dev/urandom\fP +の両方のファイルから読み出される内容に影響があるが、 \fI/dev/random\fP からの読み出しが早くなるわけではないということだ。 .SS 使い方 \fI/dev/random\fP と \fI/dev/urandom\fP のどちらを使うべきか迷った場合、たいていは \fI/dev/urandom\fP の方を使いたいと思っているはずだろう。 一般に、長期に渡って使われる GPG/SSL/SSH のキー以外の全てのものに \fI/dev/urandom\fP @@ -134,6 +144,40 @@ Linux 2.6: .LP 読み込み専用のファイル \fIuuid\fP と \fIboot_id\fP は 6fd5a44b\-35f4\-4ad4\-a9b9\-6b9be13e1fe9 のような ランダムな文字列を保持している。 前者は読み込みの度に新たに生成され、 後者は 1 度だけ生成される。 +.SS "ioctl(2) インタフェース" +以下の \fBioctl\fP(2) 要求が \fI/dev/random\fP や \fI/dev/urandom\fP +に接続されたファイルディスクリプタに対して定義されている。 実行されたすべての要求は、 \fI/dev/random\fP と \fI/dev/urandom\fP +に影響を与える入力エントロピー・プールとやり取りを行う。 \fBRNDGETENTCNT\fP 以外のすべての要求には \fBCAP_SYS_ADMIN\fP +ケーパビリティが必要である。 +.TP +\fBRNDGETENTCNT\fP +入力エントロピー・プールのカウントを取得する。 取得される内容は proc の \fIentropy_avail\fP ファイルと同じである。 +結果は引き数が指す整数 (int) に格納される。 +.TP +\fBRNDADDTOENTCNT\fP +入力エントロピー・プールのカウントを引き数が指す値だけ加算または減算する。 +.TP +\fBRNDGETPOOL\fP +Linux 2.6.9 で削除された。 +.TP +\fBRNDADDENTROPY\fP +入力プールに追加のエントロピーを追加し、エントロピー・カウントを増やす。 この要求は \fI/dev/random\fP や \fI/dev/urandom\fP +への書き込みとは異なる。 \fI/dev/random\fP や \fI/dev/urandom\fP への書き込みでは、 何らかのデータが追加されるだけで、 +エントロピー・カウントは増やされない。 以下の構造体が使用される。 +.IP +.nf + struct rand_pool_info { + int entropy_count; + int buf_size; + __u32 buf[0]; + }; +.fi +.IP +\fIentropy_count\fP はエントロピー・カウントに加算 (または減算) する値である。 \fIbuf\fP は大きさが \fIbuf_size\fP +のバッファで、この内容がエントロピー・プールに追加される。 +.TP +\fBRNDZAPENTCNT\fP, \fBRNDCLEARPOOL\fP +すべてのプールのエントロピー・カウントを 0 にし、何らかのシステムデータ (現在の時刻など) をプールに追加する。 .SH ファイル /dev/random .br @@ -142,10 +186,10 @@ Linux 2.6: .\" Theodore Ts'o (tytso@athena.mit.edu). /dev/urandom .SH 関連項目 -mknod (1) +\fBmknod\fP(1) .br RFC\ 1750, "Randomness Recommendations for Security" .SH この文書について -この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.40 の一部 +この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.53 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man\-pages/ に書かれている。