From owner-FreeBSD-users-jp@jp.FreeBSD.org Wed Jun 19 10:14:39 2002
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) id g5J1Edi05898;
	Wed, 19 Jun 2002 10:14:39 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from gale.nintendo.co.jp (gale.nintendo.co.jp [211.8.190.211])
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) with ESMTP/inet id g5J1Ecc05893;
	Wed, 19 Jun 2002 10:14:38 +0900 (JST)
	(envelope-from shirai@nintendo.co.jp)
Received: from sky.nintendo.co.jp (sky.nintendo.co.jp [10.100.1.2])
	by gale.nintendo.co.jp (Postfix) with ESMTP
	id 8EEC1153FC; Wed, 19 Jun 2002 10:14:55 +0900 (JST)
Received: from pon.nintendo.co.jp (pon.nintendo.co.jp [10.115.1.1])
	by sky.nintendo.co.jp (8.9.3/3.7W/2002050715) with ESMTP id KAA24111;
	Wed, 19 Jun 2002 10:14:39 +0900
Received: from nintendo.co.jp (IDENT:shirai@localhost [127.0.0.1])
	by pon.nintendo.co.jp (8.9.3/3.7W/2002061716) with ESMTP id KAA17522;
	Wed, 19 Jun 2002 10:14:37 +0900
Message-Id: <200206190114.KAA17522@pon.nintendo.co.jp>
To: QandA@jp.FreeBSD.org
Cc: FreeBSD-users-jp@jp.FreeBSD.org
In-reply-to: Your message of Wed, 19 Jun 2002 00:16:00 JST.
             <20020619.001600.74689306.matsu@jp.FreeBSD.org>
Date: Wed, 19 Jun 2002 10:14:37 +0900
From: Takashi SHIRAI <shirai@nintendo.co.jp>
Reply-To: FreeBSD-users-jp@jp.FreeBSD.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+020611
X-Sequence: FreeBSD-users-jp 69406
Subject: [FreeBSD-users-jp 69406] Re: [info] Updated FreeBSD QandA
Errors-To: owner-FreeBSD-users-jp@jp.FreeBSD.org
Sender: owner-FreeBSD-users-jp@jp.FreeBSD.org
X-Originator: shirai@nintendo.co.jp

$B!!$7$i$$$G$9!#(B

$B!!<1<T$N0U8+$bJ9$-$?$$$N$G(B Cc: FreeBSD-users-jp $B$K$7$^$9!#(B

$B!t!!Mp?t5;=Q$K4X$7$F$bNr;KE*7P0^$K4X$7$F$b;d$O%IAG?M$J$N$G!"(B
$B!t$3$3$K=q$$$F$"$k$3$H$O1-F]$_$K$7$J$$$G2<$5$$!#(B

In Message-Id <20020619.001600.74689306.matsu@jp.FreeBSD.org>
        Matsumura Naoki <matsu@jp.FreeBSD.org>$B$5$s(Bwrites:
> $B$^$D$`$i!w(BQandA project $B$G$9!#(B

> Q. $BMp?t$rF@$h$&$H(B rand(3) $B$r;H$C$?$N$G$9$,!"Hs>o$K<A$N0-$$Mp?t$,(B
>    $B@8@.$5$l$F$7$^$$$^$9!#(B
> 
> A. FreeBSD $B$N(B rand $B4X?t$O<A$N0-$$Mp?tH/@84X?t$G$9!#(Brand(3) $B$K$O(B
> 
>       NAME
>         rand, srand, rand_r - bad random number generator
>                               ===
> 
>    $B$H=q$+$l$F$$$^$9!#$3$N%^%K%e%"%k$K$"$kDL$j!"<A$NNI$$Mp?tH/@8(B
>    $B4X?t$O(B random(3) $B$G$9$N$G!"$3$A$i$r;H$C$F$/$@$5$$!#(B

1.$B!V(BFreeBSD $B$N!W$H$$$&=$>~$OI,MW$J$s$G$7$g$&$+!)(B

$B!!(Brand(3) $B$O(B 3BSD $B$+$i$"$k$N$GB?J,(B AT&T $BM3Mh$N(B code $B$@$H;W$$(B
$B$^$9!#(Brandom(3) $B$O(B 4BSD $B$G=P$FMh$?$N$GB?J,(B BSD $BM3Mh$G$7$g$&!#(B
$B$I$NF;(B FreeBSD $B8GM-$NLdBj$G$O$J$$$H;W$$$^$9!#(B
$B!!4:$($F(B FreeBSD $BFCM-$NOC$r$9$k$J$i$P!"(B-CURRENT $B$G$O(B rand(3)
$B$N(B algorithm $B$KB?>/$N2~NI$,2C$($i$l$F$*$j!"(BBSD $B$N(B rand(3) $B$H(B
$BHf$Y$k$H$d$dIJ<A$NNI$$<BAu$H$J$C$F$$$^$9!#(B


2.random(3) $B$O<A$NNI$$Mp?tH/@84X?t$J$s$G$7$g$&$+!)(B

$B!!(Brandom(3) $B$OJ#?t$NMp?tH/@8(B algorithm $B$r;}$A!"(Binitstate(3)
$B$d(B setstate(3) $B$K$h$j$=$N<oJL$rA*Br=PMh$^$9!#(B
$B!!I8=`$G$O(B TYPE3 $BB($A(B 128 bytes $BJ,$N>uBV>pJs$r;}$D(B algorithm
$B$,A*Br$5$l$^$9$,!"0lHVIJ<A$N0-$$(B TYPE0 $B$O<B$O(B rand(3) $B$HA4$/(B
$BF1$8(B algorithm $B$G$9!#(B
$B!!L^O@!"(BTYPE1 $B0J>e$N(B algorithm $B$r;H$C$?>l9g$O!"(B-CURRENT $B$N<B(B
$BAu$K$h$k$b$N$r4^$a$F$b(B rand(3) $B$h$jIJ<A$NNI$$Mp?t$rH/@8$7$^(B
$B$9$,!"4pK\E*$J(B algorithm $B$O(B rand(3) $B$HBg:9$"$j$^$;$s!#(B


3.rand48() family $B$OG!2?$G$7$g$&!)(B

$B!!(BPOSIX $B$G$O(B rand(3) $B$d(B random(3) $B$NBe$o$j$K(B rand48() family
$B$r;H$&$3$H$r?d>)$7$F$$$^$9!#(BFreeBSD $B$K$bL^O@(B 1.0-RELEASE $B$+(B
$B$i<BAu$5$l$F$$$^$9!#(B
$B!!(Brand48() family $B$K$O>u67$K1~$8$FB?$/$N7ABV$,$"$j$^$9$,!"$3(B
$B$N$&$A(B lrand48(3) $B$H(B srand48(3) $B$,$=$l$>$l(B rand(3)/random(3)
$B$H(B srand(3)/srandom(3) $B$KAjEv$7$^$9!#(B
$B!!>\$7$/$O(B man rand48 $B$r;2>H$7$F2<$5$$!#(B


4.$B$=$b$=$bMp?t$N<A$H$O2?$G$7$g$&!)(B

$B!!0lHL$K!"7W;;5!2J3X$K1w$1$k5?;wMp?t$K5a$a$i$l$k$N$O!"<g$K0J(B
$B2<$NFs$D$N>r7o$G$9!#(B
	a.$B$I$NCM$bF1DxEY$N3NN($GH/@8$5$l$k$3$H(B
	b.$B$=$l$>$l$N;n9T$,FHN);v>]$H$7$F4QB,$5$l$k$3$H(B
$B!!%5%$%3%m$r2?2s$b?6$C$F(B 1 $B$+$i(B 6 $B$NL\$,$=$l$>$lF1$8?t$@$1=P(B
$B$k$3$H$,(B a. $B$N>r7o$G$9!#0lJ}(B b. $B$N>r7o$O!"$=$N(B a. $B$N>r7o$,D>(B
$BA0$N%5%$%3%m$NL\$K0MB8$;$:$K@.N)$9$k$3$H$G$9!#(B
$B!!(Ba. $B$N>r7o$OHf3SE*MF0W$KK~$?$9$3$H$,=PMh$^$9$,!"5?;wMp?t$,(B
$B?tNs$r4pHW$K<BAu$5$l$F$$$k0J>e!"(Bb. $B$N>r7o$O<B8=$,:$Fq$G$"$k(B
$B$H$5$l$F$$$^$9!#(B
$B!!$3$l$^$G5s$2$F$-$?Mp?t$O!"$I$l$bA22=<0$,C1=c$J0l<!<0$GI=$;(B
$B$k$h$&$J?tNs$H$7$F<BAu$5$l$F$$$^$9$N$G!"(Bb. $B$N>r7o$r==J,$KK~(B
$B$?$7$F$$$k$H$O8@$($^$;$s!#F1$8%5%$%3%m$NL\$,B3$1$F=P$K$/$/$J(B
$B$C$?$j!"(B1 $B$NL\$N<!$K$O(B 2 $B$NL\$,=P0W$/$J$C$?$j$H$$$C$?$P$i$D(B
$B$-$,H/@8$7$^$9!#(B
$B!!$3$N$?$a!"<B:]$N;HMQ;~$K$OH/@8$7$?Mp?t$r99$K2C9)$7$FMQ$$$k(B
$B$3$H$,?d>)$5$l$^$9!#Nc$($P>e0L(B 8 bits $B$@$1$r;H$&$H$+!"Mp?t$r(B
$B?t2sH/@8$5$;$F;H$o$:$K<N$F$k$H$+!#(B


5.$BMW5a$5$l$kIJ<A$O$I$NDxEY$N$b$N$G$7$g$&$+!)(B

$B!!Mp?tCM$r2C9)$7$FMQ$$$?$H$7$F$b!"0E9f2=5;=Q$X$N1~MQ$N$h$&$K!"(B
$B<!$KH/@8$9$kMp?tCM$r@dBP$KM=B,$5$l$F$O:$$k$h$&$J>l9g$K$O!"$3(B
$B$l$^$G5s$2$?4X?t$G$ONOITB-$G$9!#(B
$B!!??LLL\$K9M$($k$J$i$P!"(BOpenSSL $B$K4^$^$l$k(B RAND_...() $B4X?t$r(B
$BMQ$$$k$Y$-$G$7$g$&$,!"(BFreeBSD $B$N>l9g$O(B 2.2.6-RELEASE $B0J9_$G(B
arc4random(3) $B$,<BAu$5$l$F$$$^$9!#(B
$B!!$3$l$O(B RC4 algorithm $B$r%Y!<%9$K$7$?<BAu$G$9$N$G!"(BRAND_...()
$B$HF1DxEY$NIJ<A$,J]>Z$5$l$k$H;W$$$^$9!#0E9f2=5;=Q$X$N1~MQ$K$b(B
$B==J,4.$($i$l$k$G$7$g$&!#L^O@!"Mp?tCM$N:F2C9)$NI,MW$b$"$j$^$;(B
$B$s!#(B
$B!!>\$7$/$O(B man arc4random $B$r;2>H$7$F2<$5$$!#(B

                                               $B$7$i$$(B $B$?$+$7(B
