Knowledge

Pseudorandom number generator

Source 📝

418:, whether there is any way to distinguish the output of a high-quality PRNG from a truly random sequence. In this setting, the distinguisher knows that either the known PRNG algorithm was used (but not the state with which it was initialized) or a truly random algorithm was used, and has to distinguish between the two. The security of most cryptographic algorithms and protocols using PRNGs is based on the assumption that it is infeasible to distinguish use of a suitable PRNG from use of a truly random sequence. The simplest examples of this dependency are 1896:. The algorithm is as follows: take any number, square it, remove the middle digits of the resulting number as the "random number", then use that number as the seed for the next iteration. For example, squaring the number "1111" yields "1234321", which can be written as "01234321", an 8-digit number being the square of a 4-digit number. This gives "2343" as the "random" number. Repeating this procedure gives "4896" as the next result, and so on. Von Neumann used 10 digit numbers, but the process was the same. 2441: 1515: 1324: 214:. The quality of LCGs was known to be inadequate, but better methods were unavailable. Press et al. (2007) described the result thus: "If all scientific papers whose results are in doubt because of were to disappear from library shelves, there would be a gap on each shelf about as big as your fist." 1899:
A problem with the "middle square" method is that all sequences eventually repeat themselves, some very quickly, such as "0000". Von Neumann was aware of this, but he found the approach sufficient for his purposes and was worried that mathematical "fixes" would simply hide errors rather than remove
174:
The list of widely used generators that should be discarded is much longer . Do not trust blindly the software vendors. Check the default RNG of your favorite software and be ready to replace it if needed. This last recommendation has been made over and over again over the past 40 years. Perhaps
1903:
Von Neumann judged hardware random number generators unsuitable, for, if they did not record the output generated, they could not later be tested for errors. If they did record their output, they would exhaust the limited computer memories then available, and so the computer's ability to read and
111:
Good statistical properties are a central requirement for the output of a PRNG. In general, careful mathematical analysis is required to have any confidence that a PRNG generates numbers that are sufficiently close to random to suit the intended use.
1510:{\displaystyle \forall E\in {\mathfrak {F}}\quad \forall \varepsilon >0\quad \exists N\in \mathbb {N} _{1}\quad \forall n\geq N,\quad \left|{\frac {\#\left\{i\in \left\{1,2,\dots ,n\right\}:f(i)\in E\right\}}{n}}-P(E)\right|<\varepsilon } 748: 434:. The design of cryptographically adequate PRNGs is extremely difficult because they must meet additional criteria. The size of its period is an important factor in the cryptographic suitability of a PRNG, but not the only one. 254:
family of generators was developed. The WELL generators in some ways improves on the quality of the Mersenne Twister, which has a too-large state space and a very slow recovery from state spaces with a large number of zeros.
284:
in distinguishing the generator's output sequence from a random sequence. In other words, while a PRNG is only required to pass certain statistical tests, a CSPRNG must pass all statistical tests that are restricted to
1878: 859: 163:
simulations, or in other ways relied on PRNGs, were much less reliable than ideal as a result of using poor-quality PRNGs. Even today, caution is sometimes required, as illustrated by the following warning in the
507:
K3 – It should be impossible for an attacker (for all practical purposes) to calculate, or otherwise guess, from any given subsequence, any previous or future values in the sequence, nor any inner state of the
198:(discussed below), which was published in 1998. Other higher-quality PRNGs, both in terms of computational and statistical performance, were developed before and after this date; these can be identified in the 1774: 3041: 2088: 511:
K4 – It should be impossible, for all practical purposes, for an attacker to calculate, or guess from an inner state of the generator, any previous numbers in the sequence or any previous inner generator
1199: 1136: 1318: 587: 675: 2165: 116:
cautioned about the misinterpretation of a PRNG as a truly random generator, joking that "Anyone who considers arithmetical methods of producing random digits is, of course, in a state of sin."
2411: 2342: 448: 217:
A major advance in the construction of pseudorandom generators was the introduction of techniques based on linear recurrences on the two-element field; such generators are related to
889: 264: 105: 3052: 1620: 1049: 993: 1245: 796: 772: 641: 611: 1697: 2258: 2628: 504:
zeros (or ones), the next bit a one (or zero) with probability one-half; and any selected subsequence contains no information about the next element(s) in the sequence.
166: 2932: 2207: 340: 2290: 2006: 1977: 1541: 247:
generators, again based on a linear recurrence. Such generators are extremely fast and, combined with a nonlinear operation, they pass strong statistical tests.
30:
This page is about commonly encountered characteristics of pseudorandom number generator algorithms. For the formal concept in theoretical computer science, see
2362: 1794: 1717: 1664: 1640: 1584: 1561: 1265: 1221: 1089: 1069: 1013: 957: 929: 909: 545: 380:
algorithm, which provide a strong security proof (such algorithms are rather slow compared to traditional constructions, and impractical for many applications)
680: 2592: 2567: 2847: 2795: 236:
in (up to) 623 dimensions (for 32-bit values), and at the time of its introduction was running faster than other statistically reasonable generators.
3350: 3079: 489: 443: 251: 228:, in particular, avoided many of the problems with earlier generators. The Mersenne Twister has a period of 2 − 1 iterations (≈ 4.3 1799: 2955: 2455: 199: 801: 2891: 2637: 3193:
von Neumann J., "Various techniques used in connection with random digits," in A.S. Householder, G.E. Forsythe, and H.H. Germond, eds.,
2706: 466:
K2 – A sequence of numbers is indistinguishable from "truly random" numbers according to specified statistical tests. The tests are the
373: 3337:
a simple online random number generator. Random numbers are generated by Javascript pseudorandom number generators (PRNGs) algorithms
1908:
computer he was using, the "middle square" method generated numbers at a rate some hundred times faster than reading numbers in from
3214: 3188: 3173: 1941: 1722: 365:
combination PRNGs which attempt to combine several PRNG primitive algorithms with the goal of removing any detectable non-randomness
302: 1141: 500:
test. In essence, these requirements are a test of how well a bit sequence: has zeros and ones equally often; after a sequence of
3074: 1948: 1643: 72: 1098: 3197:, National Bureau of Standards Applied Mathematics Series, 12 (Washington, D.C.: U.S. Government Printing Office, 1951): 36–38. 3160: 2742: 1277: 550: 411: 290: 646: 2495: 2096: 218: 2664: 2368:
When using practical number representations, the infinite "tails" of the distribution have to be truncated to finite values.
2465: 1935: 211: 184: 3282: 2014: 2475: 459:, BSI) has established four criteria for quality of deterministic random number generators. They are summarized here: 383:
generic PRNGs: while it has been shown that a (cryptographically) secure PRNG can be constructed generically from any
180: 144:
Distances between where certain values occur are distributed differently from those in a random sequence distribution.
3008: 2527: 3328: 3271: 3257: 3230: 3114: 2460: 2293: 71:(which may include truly random values). Although sequences that are closer to truly random can be generated using 2374: 2305: 1880:. Intuitively, an arbitrary distribution can be simulated from a simulation of the standard uniform distribution. 463:
K1 – There should be a high probability that generated sequences of random numbers are different from each other.
1904:
write numbers. If the numbers were written to cards, they would take very much longer to write and read. On the
3275: 2490: 2470: 392: 281: 58: 866: 488:
test (checks whether there exists any run of length 34 or greater in 20 000 bits of the sequence)—both from
148:
Defects exhibited by flawed PRNGs range from unnoticeable (and unknown) to very obvious. An example was the
132:
Shorter-than-expected periods for some seed states (such seed states may be called "weak" in this context);
2947: 2505: 294: 31: 2976: 2422: 2300: 932: 306: 97: 2440: 1589: 1018: 962: 2426: 1923: 1893: 1226: 777: 753: 622: 592: 396: 298: 188: 104:. Cryptographic applications require the output not to be predictable from earlier outputs, and more 2916:"Cryptography Engineering: Design Principles and Practical Applications, Chapter 9.4: The Generator" 3118: 936: 289:
in the size of the seed. Though a proof of this property is beyond the current state of the art of
278: 2691: 2652: 1669: 210:
In the second half of the 20th century, the standard class of algorithms used for PRNGs comprised
3316: 3300: 2864: 2761: 2718: 2480: 2446: 2414: 2218: 160: 153: 89: 57:
for generating a sequence of numbers whose properties approximate the properties of sequences of
2839: 387:, this generic construction is extremely slow in practice, so is mainly of theoretical interest. 309:. In general, years of review may be required before an algorithm can be certified as a CSPRNG. 187:(LCG) for its PRNG, which is of low quality (see further below). Java support was upgraded with 2692:"Mersenne twister: a 623-dimensionally equi-distributed uniform pseudo-random number generator" 516:
For cryptographic applications, only generators meeting the K3 or K4 standards are acceptable.
414:
by any of several tests. It is an open question, and one central to the theory and practice of
3225: 3210: 3184: 3169: 2926: 2887: 2633: 159:
In many fields, research work prior to the 21st century that relied on random selection or on
3042:"Functionality Classes and Evaluation Methodology for Deterministic Random Number Generators" 468: 3286: 3130: 3004: 2856: 2821: 2800: 2751: 2710: 2542: 2485: 2177: 1889: 477: 384: 348: 240: 225: 195: 125: 113: 2266: 1982: 1953: 452: 329: 286: 233: 93: 81:
are important in practice for their speed in number generation and their reproducibility.
2364:
would produce a sequence of (positive only) values with a Gaussian distribution; however
1523: 2526:
Barker, Elaine; Barker, William; Burr, William; Polk, William; Smid, Miles (July 2012).
743:{\displaystyle {\mathfrak {F}}=\left\{\left(-\infty ,t\right]:t\in \mathbb {R} \right\}} 277:(CSPRNG). A requirement for a CSPRNG is that an adversary not knowing the seed has only 3135: 2911: 2907: 2626:
L'Ecuyer, Pierre (2010). "Uniform random number generators". In Lovric, Miodrag (ed.).
2347: 1779: 1702: 1649: 1625: 1569: 1546: 1268: 1250: 1206: 1074: 1054: 998: 942: 914: 894: 530: 377: 360: 344: 3088: 1940:
Numbers selected from a non-uniform probability distribution can be generated using a
3344: 3308: 3304: 3267: 3203: 3120:
Recommendation for Random Number Generation Using Deterministic Random Bit Generators
2765: 1919: 419: 316: 156:. It was seriously flawed, but its inadequacy went undetected for a very long time. 3312: 3156: 2868: 2793:
Vigna S. (2016), "An experimental exploration of Marsaglia’s xorshift generators",
2722: 2421:
Similar considerations apply to generating other non-uniform distributions such as
1909: 423: 415: 404: 335:
PRNGs that have been designed specifically to be cryptographically secure, such as
325: 321: 270: 101: 3253: 1915:
The middle-square method has since been supplanted by more elaborate generators.
368:
special designs based on mathematical hardness assumptions: examples include the
194:
One well-known PRNG to avoid major problems and still run fairly quickly is the
67: 2546: 3322: 3236: 2825: 2500: 2436: 431: 85: 3243:", in Proc. 19th Annual Computer Security Applications Conference, Dec. 2003. 135:
Lack of uniformity of distribution for large quantities of generated numbers;
65:, because it is completely determined by an initial value, called the PRNG's 2860: 2171:
from a uniform distribution as the probability density to "pass by", we get
614: 427: 336: 128:
that cause them to fail statistical pattern-detection tests. These include:
54: 3334: 2816:
Vigna S. (2017), "Further scramblings of Marsaglia’s xorshift generators",
1071:
is not specified, it is assumed to be some set contained in the support of
3240: 2756: 2714: 1873:{\displaystyle F^{*}(x):=\inf \left\{t\in \mathbb {R} :x\leq F(t)\right\}} 2737: 352: 244: 854:{\displaystyle \left\{\left(-\infty ,t\right]:t\in \mathbb {R} \right\}} 2915: 2668: 356: 2840:"Improved long-period generators based on linear recurrences modulo 2" 1922:. This method produces high-quality output through a long period (see 17: 3133:, "Some long-period random number generators using shifts and xors", 62: 27:
Algorithm that generates an approximation of a random number sequence
2804: 1586:
is a pseudo-random number generator for the uniform distribution on
3261: 3223:
Press W.H., Teukolsky S.A., Vetterling W.T., Flannery B.P. (2007),
108:, which do not inherit the linearity of simpler PRNGs, are needed. 3293: 1905: 179:
As an illustration, consider the widely used programming language
149: 3124: 3084: 2838:
Panneton, François; L'Ecuyer, Pierre; Matsumoto, Makoto (2006).
2538: 493: 400: 175:
amazingly, it remains as relevant today as it was 40 years ago.
1769:{\displaystyle F^{*}:\left(0,1\right)\rightarrow \mathbb {R} } 1194:{\displaystyle \mathbb {N} _{1}=\left\{1,2,3,\dots \right\}} 3296:" by Zvi Gutterman, Benny Pinkas, and Tzachy Reinman (2006) 3087:. 1994-01-11. p. 4.11.1 Power-Up Tests. Archived from 1918:
A recent innovation is to combine the middle square with a
2780: 2593:"Various techniques used in connection with random digits" 1131:{\displaystyle f:\mathbb {N} _{1}\rightarrow \mathbb {R} } 1313:{\displaystyle f\left(\mathbb {N} _{1}\right)\subseteq A} 582:{\displaystyle \left(\mathbb {R} ,{\mathfrak {B}}\right)} 1944:
PRNG and a function that relates the two distributions.
670:{\displaystyle {\mathfrak {F}}\subseteq {\mathfrak {B}}} 484:
test (counts the frequency of runs of various lengths),
472:
test (equal numbers of ones and zeros in the sequence),
2600:
National Bureau of Standards Applied Mathematics Series
2160:{\displaystyle 0=F(-\infty )\leq F(b)\leq F(\infty )=1} 891:– a non-empty set (not necessarily a Borel set). Often 124:
In practice, the output from many common PRNGs exhibit
3205:
The Jungles of Randomness : a mathematical safari
2781:"xorshift*/xorshift+ generators and the PRNG shootout" 2344:
with an ideal uniform PRNG with range (0, 1) as input
265:
Cryptographically secure pseudorandom number generator
2377: 2350: 2308: 2269: 2221: 2180: 2099: 2017: 1985: 1956: 1802: 1782: 1725: 1705: 1672: 1652: 1628: 1592: 1572: 1549: 1526: 1327: 1280: 1253: 1229: 1209: 1144: 1101: 1077: 1057: 1021: 1001: 965: 945: 917: 897: 869: 804: 780: 756: 683: 649: 625: 595: 553: 533: 141:
Poor dimensional distribution of the output sequence;
3149:
Hörmann W., Leydold J., Derflinger G. (2004, 2011),
2699:
ACM Transactions on Modeling and Computer Simulation
3053:
Bundesamt für Sicherheit in der Informationstechnik
2083:{\displaystyle F(b)=\int _{-\infty }^{b}f(b')\,db'} 457:
Bundesamt für Sicherheit in der Informationstechnik
3202: 2405: 2356: 2336: 2284: 2252: 2201: 2159: 2082: 2000: 1971: 1872: 1788: 1768: 1711: 1691: 1658: 1634: 1614: 1578: 1555: 1535: 1509: 1312: 1259: 1239: 1215: 1193: 1130: 1091:and containing its interior, depending on context. 1083: 1063: 1043: 1007: 987: 951: 923: 903: 883: 853: 790: 766: 742: 669: 635: 605: 581: 539: 430:of a message with the output of a PRNG, producing 3075:"Security requirements for cryptographic modules" 2655:, Java Platform Standard Edition 8 Documentation. 2629:International Encyclopedia of Statistical Science 1543:denotes the number of elements in the finite set 167:International Encyclopedia of Statistical Science 3144:Random Number Generation and Monte Carlo Methods 2818:Journal of Computational and Applied Mathematics 2263:is a number randomly selected from distribution 1825: 410:Most PRNG algorithms produce sequences that are 3181:Pseudorandomness and Cryptographic Applications 341:Cryptographic Application Programming Interface 312:Some classes of CSPRNGs include the following: 172: 3241:Practical Random Number Generation in Software 3151:Automatic Nonuniform Random Variate Generation 3294:Analysis of the Linux Random Number Generator 3049:Anwendungshinweise und Interpretationen (AIS) 2690:Matsumoto, Makoto; Nishimura, Takuji (1998). 8: 3035: 3033: 2931:: CS1 maint: multiple names: authors list ( 2406:{\displaystyle \operatorname {erf} ^{-1}(x)} 2337:{\displaystyle \operatorname {erf} ^{-1}(x)} 959:is the uniform distribution on the interval 152:random number algorithm used for decades on 1888:An early computer-based PRNG, suggested by 61:. The PRNG-generated sequence is not truly 84:PRNGs are central in applications such as 2977:"Lecture 11: The Goldreich-Levin Theorem" 2848:ACM Transactions on Mathematical Software 2796:ACM Transactions on Mathematical Software 2755: 2382: 2376: 2349: 2313: 2307: 2268: 2232: 2220: 2179: 2098: 2068: 2045: 2037: 2016: 1984: 1955: 1840: 1839: 1807: 1801: 1781: 1762: 1761: 1730: 1724: 1704: 1677: 1671: 1651: 1627: 1591: 1571: 1548: 1525: 1401: 1373: 1369: 1368: 1338: 1337: 1326: 1294: 1290: 1289: 1279: 1252: 1231: 1230: 1228: 1208: 1151: 1147: 1146: 1143: 1124: 1123: 1114: 1110: 1109: 1100: 1076: 1056: 1020: 1000: 964: 944: 916: 896: 877: 876: 868: 842: 841: 803: 782: 781: 779: 758: 757: 755: 731: 730: 685: 684: 682: 661: 660: 651: 650: 648: 627: 626: 624: 597: 596: 594: 568: 567: 560: 559: 552: 532: 403:-certified pseudorandom number generator 3022:Katz, Jonathan; Yehuda, Lindell (2014). 1699:is a pseudo-random number generator for 391:It has been shown to be likely that the 183:. Up until 2020, Java still relied on a 3168:, Third Edition. Addison-Wesley, 1997. 2518: 2299:For example, the inverse of cumulative 1646:of some given probability distribution 884:{\displaystyle A\subseteq \mathbb {R} } 643:– a non-empty collection of Borel sets 444:Federal Office for Information Security 2984:COM S 687 Introduction to Cryptography 2924: 2456:List of pseudorandom number generators 206:Generators based on linear recurrences 200:List of pseudorandom number generators 3040:Schindler, Werner (2 December 1999). 293:, strong evidence may be provided by 7: 3331:by Stephan Lavavej (Microsoft, 2013) 3303:" by Parikshit Gopalan, Raghu Meka, 3209:. New York: John Wiley & Sons. 3024:Introduction to modern cryptography 2528:"Recommendation for Key Management" 2413:should be reduced by means such as 1339: 1232: 1203:pseudo-random number generator for 1201:is the set of positive integers) a 783: 774:is not specified, it may be either 759: 686: 662: 652: 628: 598: 569: 374:Naor-Reingold pseudorandom function 2145: 2115: 2041: 1527: 1404: 1380: 1358: 1345: 1328: 818: 707: 47:deterministic random bit generator 25: 138:Correlation of successive values; 73:hardware random number generators 3009:"The Many Flaws of Dual_EC_DRBG" 2948:"IV.4 Perfect Random Generators" 2568:"Pseudorandom number generators" 2439: 1949:cumulative distribution function 1615:{\displaystyle \left(0,1\right)} 1044:{\displaystyle \left(0,1\right]} 988:{\displaystyle \left(0,1\right]} 547:– a probability distribution on 476:test (a special instance of the 3161:The Art of Computer Programming 2882:Song Y. Yan (7 December 2007). 2743:Journal of Statistical Software 2736:Marsaglia, George (July 2003). 2535:NIST Special Publication 800-57 1395: 1379: 1357: 1344: 1240:{\displaystyle {\mathfrak {F}}} 791:{\displaystyle {\mathfrak {B}}} 767:{\displaystyle {\mathfrak {F}}} 636:{\displaystyle {\mathfrak {F}}} 606:{\displaystyle {\mathfrak {B}}} 291:computational complexity theory 219:linear-feedback shift registers 3351:Pseudorandom number generators 3301:Better pseudorandom generators 3183:, Princeton Univ Press, 1996. 2886:. Springer, 2007. p. 73. 2496:Random number generator attack 2400: 2394: 2331: 2325: 2279: 2273: 2247: 2241: 2190: 2184: 2148: 2142: 2133: 2127: 2118: 2109: 2065: 2054: 2027: 2021: 1995: 1989: 1966: 1960: 1862: 1856: 1819: 1813: 1758: 1493: 1487: 1461: 1455: 1120: 212:linear congruential generators 78:pseudorandom number generators 1: 2680:Press et al. (2007) §7.1 2466:Linear congruential generator 1936:Pseudo-random number sampling 422:, which (most often) work by 275:cryptographically-secure PRNG 185:linear congruential generator 39:pseudorandom number generator 3256:: A free, state-of-the-art ( 2884:Cryptanalytic Attacks on RSA 2476:Pseudorandom binary sequence 2371:Repetitive recalculation of 1692:{\displaystyle F^{*}\circ f} 395:has inserted an asymmetric 2653:Random (Java Platform SE 8) 2616:Press et al. (2007), chap.7 2253:{\displaystyle b=F^{-1}(c)} 1979:of the target distribution 3367: 3231:Cambridge University Press 2946:Klaus Pommerening (2016). 2914:, Tadayoshi Kohno (2010). 2632:. Springer. p. 1629. 2591:Von Neumann, John (1951). 2547:10.6028/NIST.SP.800-57p1r3 2461:Applications of randomness 2294:inverse transform sampling 1933: 262: 224:The 1997 invention of the 29: 3324:rand() Considered Harmful 3283:Generating random numbers 3278:Random Number Test Suite. 3264:Random Number Test Suite. 2826:10.1016/j.cam.2016.11.006 2167:. Using a random number 1892:in 1946, is known as the 273:applications is called a 243:introduced the family of 3201:Peterson, Ivars (1997). 3166:Seminumerical Algorithms 3026:. CRC press. p. 70. 2491:Random number generation 2471:Low-discrepancy sequence 1566:It can be shown that if 370:Micali–Schnorr generator 3127:SP800-90A, January 2012 2861:10.1145/1132973.1132974 2292:. This is based on the 861:, depending on context. 520:Mathematical definition 438:BSI evaluation criteria 2506:Statistical randomness 2417:for faster generation. 2407: 2358: 2338: 2286: 2254: 2203: 2202:{\displaystyle F(b)=c} 2161: 2084: 2002: 1973: 1930:Non-uniform generators 1874: 1790: 1770: 1713: 1693: 1660: 1636: 1616: 1580: 1557: 1537: 1511: 1314: 1261: 1241: 1217: 1195: 1132: 1085: 1065: 1045: 1009: 989: 953: 925: 905: 885: 855: 792: 768: 744: 671: 637: 607: 583: 541: 456: 301:that is assumed to be 177: 32:Pseudorandom generator 3289:) by Eric Uner (2004) 3007:(18 September 2013). 2757:10.18637/jss.v008.i14 2715:10.1145/272991.272995 2408: 2359: 2339: 2301:Gaussian distribution 2287: 2255: 2204: 2162: 2085: 2003: 1974: 1947:First, one needs the 1875: 1791: 1776:is the percentile of 1771: 1714: 1694: 1661: 1637: 1617: 1581: 1558: 1538: 1512: 1315: 1262: 1242: 1218: 1196: 1133: 1086: 1066: 1046: 1010: 990: 954: 926: 906: 886: 856: 793: 769: 745: 672: 638: 608: 584: 542: 412:uniformly distributed 307:integer factorization 297:to the CSPRNG from a 232:10), is proven to be 98:procedural generation 3142:Gentle J.E. (2003), 3139:, 2007; 48:C188–C202 2375: 2348: 2306: 2285:{\displaystyle f(b)} 2267: 2219: 2178: 2097: 2015: 2001:{\displaystyle f(b)} 1983: 1972:{\displaystyle F(b)} 1954: 1942:uniform distribution 1924:middle-square method 1894:middle-square method 1800: 1780: 1723: 1703: 1670: 1650: 1626: 1590: 1570: 1547: 1524: 1325: 1278: 1251: 1227: 1207: 1142: 1099: 1075: 1055: 1019: 999: 963: 943: 915: 895: 867: 802: 778: 754: 681: 647: 623: 593: 551: 531: 269:A PRNG suitable for 106:elaborate algorithms 2050: 1536:{\displaystyle \#S} 1095:We call a function 939:; for instance, if 259:Cryptographic PRNGs 154:mainframe computers 45:), also known as a 3317:Microsoft Research 3195:Monte Carlo Method 3153:, Springer-Verlag. 2481:Pseudorandom noise 2447:Mathematics portal 2415:ziggurat algorithm 2403: 2354: 2334: 2282: 2250: 2199: 2157: 2080: 2033: 1998: 1969: 1870: 1786: 1766: 1709: 1689: 1656: 1632: 1612: 1576: 1553: 1533: 1507: 1310: 1257: 1237: 1213: 1191: 1128: 1081: 1061: 1041: 1005: 985: 949: 921: 901: 881: 851: 788: 764: 740: 667: 633: 603: 579: 537: 90:Monte Carlo method 3226:Numerical Recipes 2893:978-0-387-48741-0 2639:978-3-642-04897-5 2357:{\displaystyle x} 1789:{\displaystyle P} 1712:{\displaystyle P} 1659:{\displaystyle P} 1635:{\displaystyle F} 1579:{\displaystyle f} 1556:{\displaystyle S} 1479: 1260:{\displaystyle A} 1247:taking values in 1216:{\displaystyle P} 1084:{\displaystyle P} 1064:{\displaystyle A} 1008:{\displaystyle A} 952:{\displaystyle P} 924:{\displaystyle P} 911:is a set between 904:{\displaystyle A} 617:on the real line) 540:{\displaystyle P} 351:(incorporated in 16:(Redirected from 3358: 3325: 3287:embedded systems 3220: 3208: 3101: 3100: 3098: 3096: 3071: 3065: 3064: 3062: 3060: 3046: 3037: 3028: 3027: 3019: 3013: 3012: 3001: 2995: 2994: 2992: 2990: 2981: 2972: 2966: 2965: 2963: 2962: 2943: 2937: 2936: 2930: 2922: 2920: 2904: 2898: 2897: 2879: 2873: 2872: 2844: 2835: 2829: 2814: 2808: 2791: 2785: 2784: 2776: 2770: 2769: 2759: 2733: 2727: 2726: 2696: 2687: 2681: 2678: 2672: 2662: 2656: 2650: 2644: 2643: 2623: 2617: 2614: 2608: 2607: 2597: 2588: 2582: 2581: 2579: 2578: 2564: 2558: 2557: 2555: 2553: 2532: 2523: 2486:Pseudorandomness 2449: 2444: 2443: 2412: 2410: 2409: 2404: 2390: 2389: 2363: 2361: 2360: 2355: 2343: 2341: 2340: 2335: 2321: 2320: 2291: 2289: 2288: 2283: 2259: 2257: 2256: 2251: 2240: 2239: 2208: 2206: 2205: 2200: 2166: 2164: 2163: 2158: 2089: 2087: 2086: 2081: 2079: 2064: 2049: 2044: 2007: 2005: 2004: 1999: 1978: 1976: 1975: 1970: 1890:John von Neumann 1884:Early approaches 1879: 1877: 1876: 1871: 1869: 1865: 1843: 1812: 1811: 1795: 1793: 1792: 1787: 1775: 1773: 1772: 1767: 1765: 1757: 1753: 1735: 1734: 1718: 1716: 1715: 1710: 1698: 1696: 1695: 1690: 1682: 1681: 1665: 1663: 1662: 1657: 1641: 1639: 1638: 1633: 1621: 1619: 1618: 1613: 1611: 1607: 1585: 1583: 1582: 1577: 1562: 1560: 1559: 1554: 1542: 1540: 1539: 1534: 1516: 1514: 1513: 1508: 1500: 1496: 1480: 1475: 1474: 1470: 1448: 1444: 1402: 1378: 1377: 1372: 1343: 1342: 1319: 1317: 1316: 1311: 1303: 1299: 1298: 1293: 1266: 1264: 1263: 1258: 1246: 1244: 1243: 1238: 1236: 1235: 1222: 1220: 1219: 1214: 1200: 1198: 1197: 1192: 1190: 1186: 1156: 1155: 1150: 1137: 1135: 1134: 1129: 1127: 1119: 1118: 1113: 1090: 1088: 1087: 1082: 1070: 1068: 1067: 1062: 1050: 1048: 1047: 1042: 1040: 1036: 1014: 1012: 1011: 1006: 994: 992: 991: 986: 984: 980: 958: 956: 955: 950: 930: 928: 927: 922: 910: 908: 907: 902: 890: 888: 887: 882: 880: 860: 858: 857: 852: 850: 846: 845: 831: 827: 797: 795: 794: 789: 787: 786: 773: 771: 770: 765: 763: 762: 749: 747: 746: 741: 739: 735: 734: 720: 716: 690: 689: 676: 674: 673: 668: 666: 665: 656: 655: 642: 640: 639: 634: 632: 631: 613:is the standard 612: 610: 609: 604: 602: 601: 588: 586: 585: 580: 578: 574: 573: 572: 563: 546: 544: 543: 538: 478:chi-squared test 451: 385:one-way function 349:Yarrow algorithm 241:George Marsaglia 231: 226:Mersenne Twister 196:Mersenne Twister 120:Potential issues 114:John von Neumann 94:electronic games 21: 3366: 3365: 3361: 3360: 3359: 3357: 3356: 3355: 3341: 3340: 3323: 3250: 3217: 3200: 3110: 3105: 3104: 3094: 3092: 3091:on May 27, 2013 3073: 3072: 3068: 3058: 3056: 3055:. pp. 5–11 3044: 3039: 3038: 3031: 3021: 3020: 3016: 3003: 3002: 2998: 2988: 2986: 2979: 2974: 2973: 2969: 2960: 2958: 2945: 2944: 2940: 2923: 2918: 2906: 2905: 2901: 2894: 2881: 2880: 2876: 2842: 2837: 2836: 2832: 2815: 2811: 2805:10.1145/2845077 2792: 2788: 2778: 2777: 2773: 2738:"Xorshift RNGs" 2735: 2734: 2730: 2694: 2689: 2688: 2684: 2679: 2675: 2663: 2659: 2651: 2647: 2640: 2625: 2624: 2620: 2615: 2611: 2595: 2590: 2589: 2585: 2576: 2574: 2566: 2565: 2561: 2551: 2549: 2530: 2525: 2524: 2520: 2515: 2510: 2445: 2438: 2435: 2378: 2373: 2372: 2346: 2345: 2309: 2304: 2303: 2265: 2264: 2228: 2217: 2216: 2176: 2175: 2095: 2094: 2072: 2057: 2013: 2012: 1981: 1980: 1952: 1951: 1938: 1932: 1886: 1832: 1828: 1803: 1798: 1797: 1778: 1777: 1743: 1739: 1726: 1721: 1720: 1701: 1700: 1673: 1668: 1667: 1648: 1647: 1624: 1623: 1597: 1593: 1588: 1587: 1568: 1567: 1545: 1544: 1522: 1521: 1422: 1418: 1411: 1407: 1403: 1400: 1396: 1367: 1323: 1322: 1288: 1284: 1276: 1275: 1249: 1248: 1225: 1224: 1205: 1204: 1164: 1160: 1145: 1140: 1139: 1108: 1097: 1096: 1073: 1072: 1053: 1052: 1026: 1022: 1017: 1016: 997: 996: 970: 966: 961: 960: 941: 940: 913: 912: 893: 892: 865: 864: 814: 810: 809: 805: 800: 799: 776: 775: 752: 751: 703: 699: 698: 694: 679: 678: 645: 644: 621: 620: 591: 590: 558: 554: 549: 548: 529: 528: 522: 498:autocorrelation 447: 440: 330:output feedback 287:polynomial time 267: 261: 234:equidistributed 229: 208: 122: 35: 28: 23: 22: 15: 12: 11: 5: 3364: 3362: 3354: 3353: 3343: 3342: 3339: 3338: 3332: 3320: 3297: 3290: 3279: 3265: 3249: 3248:External links 3246: 3245: 3244: 3234: 3221: 3215: 3198: 3191: 3177: 3154: 3147: 3140: 3136:ANZIAM Journal 3128: 3109: 3106: 3103: 3102: 3066: 3029: 3014: 2996: 2975:Pass, Rafael. 2967: 2938: 2912:Bruce Schneier 2908:Niels Ferguson 2899: 2892: 2874: 2830: 2819: 2809: 2798: 2786: 2771: 2728: 2682: 2673: 2657: 2645: 2638: 2618: 2609: 2583: 2559: 2517: 2516: 2514: 2511: 2509: 2508: 2503: 2498: 2493: 2488: 2483: 2478: 2473: 2468: 2463: 2458: 2452: 2451: 2450: 2434: 2431: 2419: 2418: 2402: 2399: 2396: 2393: 2388: 2385: 2381: 2369: 2353: 2333: 2330: 2327: 2324: 2319: 2316: 2312: 2281: 2278: 2275: 2272: 2261: 2260: 2249: 2246: 2243: 2238: 2235: 2231: 2227: 2224: 2210: 2209: 2198: 2195: 2192: 2189: 2186: 2183: 2156: 2153: 2150: 2147: 2144: 2141: 2138: 2135: 2132: 2129: 2126: 2123: 2120: 2117: 2114: 2111: 2108: 2105: 2102: 2091: 2090: 2078: 2075: 2071: 2067: 2063: 2060: 2056: 2053: 2048: 2043: 2040: 2036: 2032: 2029: 2026: 2023: 2020: 1997: 1994: 1991: 1988: 1968: 1965: 1962: 1959: 1934:Main article: 1931: 1928: 1885: 1882: 1868: 1864: 1861: 1858: 1855: 1852: 1849: 1846: 1842: 1838: 1835: 1831: 1827: 1824: 1821: 1818: 1815: 1810: 1806: 1785: 1764: 1760: 1756: 1752: 1749: 1746: 1742: 1738: 1733: 1729: 1708: 1688: 1685: 1680: 1676: 1655: 1631: 1610: 1606: 1603: 1600: 1596: 1575: 1552: 1532: 1529: 1518: 1517: 1506: 1503: 1499: 1495: 1492: 1489: 1486: 1483: 1478: 1473: 1469: 1466: 1463: 1460: 1457: 1454: 1451: 1447: 1443: 1440: 1437: 1434: 1431: 1428: 1425: 1421: 1417: 1414: 1410: 1406: 1399: 1394: 1391: 1388: 1385: 1382: 1376: 1371: 1366: 1363: 1360: 1356: 1353: 1350: 1347: 1341: 1336: 1333: 1330: 1320: 1309: 1306: 1302: 1297: 1292: 1287: 1283: 1269:if and only if 1256: 1234: 1212: 1189: 1185: 1182: 1179: 1176: 1173: 1170: 1167: 1163: 1159: 1154: 1149: 1126: 1122: 1117: 1112: 1107: 1104: 1093: 1092: 1080: 1060: 1039: 1035: 1032: 1029: 1025: 1004: 983: 979: 976: 973: 969: 948: 920: 900: 879: 875: 872: 862: 849: 844: 840: 837: 834: 830: 826: 823: 820: 817: 813: 808: 785: 761: 738: 733: 729: 726: 723: 719: 715: 712: 709: 706: 702: 697: 693: 688: 664: 659: 654: 630: 618: 600: 577: 571: 566: 562: 557: 536: 521: 518: 514: 513: 509: 505: 464: 439: 436: 420:stream ciphers 389: 388: 381: 378:Blum Blum Shub 366: 363: 345:CryptGenRandom 333: 319: 317:stream ciphers 263:Main article: 260: 257: 207: 204: 146: 145: 142: 139: 136: 133: 121: 118: 88:(e.g. for the 59:random numbers 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 3363: 3352: 3349: 3348: 3346: 3336: 3333: 3330: 3326: 3321: 3318: 3314: 3310: 3309:Luca Trevisan 3306: 3305:Omer Reingold 3302: 3298: 3295: 3291: 3288: 3284: 3280: 3277: 3273: 3269: 3266: 3263: 3259: 3255: 3252: 3251: 3247: 3242: 3238: 3235: 3232: 3228: 3227: 3222: 3218: 3216:0-471-16449-6 3212: 3207: 3206: 3199: 3196: 3192: 3190: 3189:9780691025469 3186: 3182: 3178: 3176:. Chapter 3. 3175: 3174:0-201-89684-2 3171: 3167: 3163: 3162: 3158: 3155: 3152: 3148: 3145: 3141: 3138: 3137: 3132: 3129: 3126: 3122: 3121: 3116: 3112: 3111: 3107: 3090: 3086: 3082: 3081: 3076: 3070: 3067: 3054: 3050: 3043: 3036: 3034: 3030: 3025: 3018: 3015: 3010: 3006: 3005:Matthew Green 3000: 2997: 2985: 2978: 2971: 2968: 2957: 2953: 2949: 2942: 2939: 2934: 2928: 2917: 2913: 2909: 2903: 2900: 2895: 2889: 2885: 2878: 2875: 2870: 2866: 2862: 2858: 2854: 2850: 2849: 2841: 2834: 2831: 2827: 2823: 2817: 2813: 2810: 2806: 2802: 2797: 2794: 2790: 2787: 2782: 2775: 2772: 2767: 2763: 2758: 2753: 2749: 2745: 2744: 2739: 2732: 2729: 2724: 2720: 2716: 2712: 2708: 2704: 2700: 2693: 2686: 2683: 2677: 2674: 2670: 2666: 2661: 2658: 2654: 2649: 2646: 2641: 2635: 2631: 2630: 2622: 2619: 2613: 2610: 2605: 2601: 2594: 2587: 2584: 2573: 2569: 2563: 2560: 2548: 2544: 2540: 2536: 2529: 2522: 2519: 2512: 2507: 2504: 2502: 2499: 2497: 2494: 2492: 2489: 2487: 2484: 2482: 2479: 2477: 2474: 2472: 2469: 2467: 2464: 2462: 2459: 2457: 2454: 2453: 2448: 2442: 2437: 2432: 2430: 2428: 2424: 2416: 2397: 2391: 2386: 2383: 2379: 2370: 2367: 2366: 2365: 2351: 2328: 2322: 2317: 2314: 2310: 2302: 2297: 2295: 2276: 2270: 2244: 2236: 2233: 2229: 2225: 2222: 2215: 2214: 2213: 2196: 2193: 2187: 2181: 2174: 2173: 2172: 2170: 2154: 2151: 2139: 2136: 2130: 2124: 2121: 2112: 2106: 2103: 2100: 2076: 2073: 2069: 2061: 2058: 2051: 2046: 2038: 2034: 2030: 2024: 2018: 2011: 2010: 2009: 1992: 1986: 1963: 1957: 1950: 1945: 1943: 1937: 1929: 1927: 1925: 1921: 1920:Weyl sequence 1916: 1913: 1911: 1910:punched cards 1907: 1901: 1897: 1895: 1891: 1883: 1881: 1866: 1859: 1853: 1850: 1847: 1844: 1836: 1833: 1829: 1822: 1816: 1808: 1804: 1783: 1754: 1750: 1747: 1744: 1740: 1736: 1731: 1727: 1706: 1686: 1683: 1678: 1674: 1653: 1645: 1629: 1608: 1604: 1601: 1598: 1594: 1573: 1564: 1550: 1530: 1504: 1501: 1497: 1490: 1484: 1481: 1476: 1471: 1467: 1464: 1458: 1452: 1449: 1445: 1441: 1438: 1435: 1432: 1429: 1426: 1423: 1419: 1415: 1412: 1408: 1397: 1392: 1389: 1386: 1383: 1374: 1364: 1361: 1354: 1351: 1348: 1334: 1331: 1321: 1307: 1304: 1300: 1295: 1285: 1281: 1274: 1273: 1272: 1270: 1267: 1254: 1210: 1187: 1183: 1180: 1177: 1174: 1171: 1168: 1165: 1161: 1157: 1152: 1115: 1105: 1102: 1078: 1058: 1037: 1033: 1030: 1027: 1023: 1002: 981: 977: 974: 971: 967: 946: 938: 934: 918: 898: 873: 870: 863: 847: 838: 835: 832: 828: 824: 821: 815: 811: 806: 736: 727: 724: 721: 717: 713: 710: 704: 700: 695: 691: 657: 619: 616: 575: 564: 555: 534: 527: 526: 525: 519: 517: 510: 506: 503: 499: 495: 491: 487: 483: 479: 475: 471: 470: 465: 462: 461: 460: 458: 454: 450: 445: 437: 435: 433: 429: 425: 421: 417: 413: 408: 406: 402: 398: 394: 386: 382: 379: 375: 371: 367: 364: 362: 358: 354: 350: 346: 342: 338: 334: 331: 327: 323: 322:block ciphers 320: 318: 315: 314: 313: 310: 308: 304: 300: 296: 292: 288: 283: 280: 276: 272: 271:cryptographic 266: 258: 256: 253: 250:In 2006, the 248: 246: 242: 237: 235: 227: 222: 220: 215: 213: 205: 203: 201: 197: 192: 190: 186: 182: 176: 171: 169: 168: 162: 157: 155: 151: 143: 140: 137: 134: 131: 130: 129: 127: 119: 117: 115: 109: 107: 103: 99: 95: 91: 87: 82: 80: 79: 74: 70: 69: 64: 60: 56: 52: 48: 44: 40: 33: 19: 3313:Salil Vadhan 3224: 3204: 3194: 3180: 3165: 3164:, Volume 2: 3159: 3150: 3143: 3134: 3119: 3108:Bibliography 3093:. Retrieved 3089:the original 3078: 3069: 3057:. Retrieved 3048: 3023: 3017: 2999: 2987:. Retrieved 2983: 2970: 2959:. Retrieved 2956:uni-mainz.de 2951: 2941: 2902: 2883: 2877: 2852: 2846: 2833: 2812: 2789: 2774: 2747: 2741: 2731: 2702: 2698: 2685: 2676: 2660: 2648: 2627: 2621: 2612: 2603: 2599: 2586: 2575:. Retrieved 2572:Khan Academy 2571: 2562: 2550:. Retrieved 2534: 2521: 2420: 2298: 2262: 2211: 2168: 2092: 1946: 1939: 1917: 1914: 1902: 1898: 1887: 1565: 1519: 1202: 1094: 523: 515: 501: 497: 485: 481: 473: 467: 441: 424:exclusive or 416:cryptography 409: 405:Dual_EC_DRBG 390: 369: 311: 274: 268: 249: 238: 223: 216: 209: 193: 178: 173: 165: 158: 147: 123: 110: 102:cryptography 83: 77: 76: 66: 50: 46: 42: 38: 36: 3146:, Springer. 3113:Barker E., 2855:(1): 1–16. 2665:Random.java 442:The German 324:running in 161:Monte Carlo 86:simulations 3270:: A free ( 3157:Knuth D.E. 3131:Brent R.P. 2961:2017-11-12 2952:Cryptology 2577:2016-01-11 2513:References 2501:Randomness 2093:Note that 508:generator. 496:, and the 432:ciphertext 305:, such as 279:negligible 96:(e.g. for 53:), is an 3268:DieHarder 3179:Luby M., 3115:Kelsey J. 3095:19 August 3059:19 August 2779:S.Vigna. 2766:250501391 2552:19 August 2392:⁡ 2384:− 2323:⁡ 2315:− 2234:− 2146:∞ 2137:≤ 2122:≤ 2116:∞ 2113:− 2042:∞ 2039:− 2035:∫ 1851:≤ 1837:∈ 1809:∗ 1759:→ 1732:∗ 1684:∘ 1679:∗ 1528:# 1505:ε 1482:− 1465:∈ 1436:… 1416:∈ 1405:# 1387:≥ 1381:∀ 1365:∈ 1359:∃ 1349:ε 1346:∀ 1335:∈ 1329:∀ 1305:⊆ 1184:… 1121:→ 1015:might be 874:⊆ 839:∈ 819:∞ 816:− 728:∈ 708:∞ 705:− 658:⊆ 615:Borel set 449:‹See Tfd› 428:plaintext 426:-ing the 399:into the 343:function 337:Microsoft 282:advantage 239:In 2003, 126:artifacts 55:algorithm 3345:Category 3237:Viega J. 2927:cite web 2709:: 3–30. 2606:: 36–38. 2433:See also 2423:Rayleigh 2212:so that 2077:′ 2062:′ 1719:, where 937:interior 935:and its 486:longruns 397:backdoor 376:and the 353:Mac OS X 295:reducing 245:xorshift 170:(2010). 3335:Wsphynx 3329:YouTube 3319:, 2012) 3254:TestU01 2989:20 July 2869:7368302 2820:, 315; 2723:3332028 2669:OpenJDK 2427:Poisson 1796:, i.e. 1666:, then 1642:is the 1622:and if 1138:(where 933:support 677:, e.g. 589:(where 524:Given: 512:states. 469:monobit 361:Fortuna 359:), and 357:FreeBSD 326:counter 299:problem 189:Java 17 100:), and 3311:, and 3285:" (in 3213:  3187:  3172:  2890:  2867:  2799:, 42; 2764:  2750:(14). 2721:  2636:  1900:them. 1223:given 453:German 347:, the 63:random 18:Rand() 3045:(PDF) 2980:(PDF) 2919:(PDF) 2865:S2CID 2843:(PDF) 2762:S2CID 2719:S2CID 2705:(1). 2695:(PDF) 2596:(PDF) 2531:(PDF) 1906:ENIAC 1051:. If 750:. If 474:poker 150:RANDU 3211:ISBN 3185:ISBN 3170:ISBN 3125:NIST 3097:2013 3085:NIST 3080:FIPS 3061:2013 2991:2016 2933:link 2888:ISBN 2634:ISBN 2554:2013 2539:NIST 2425:and 1502:< 1352:> 494:NIST 492:and 482:runs 401:NIST 355:and 332:mode 303:hard 252:WELL 181:Java 68:seed 51:DRBG 43:PRNG 3327:on 3272:GPL 3262:C++ 3258:GPL 3239:, " 2857:doi 2822:doi 2801:doi 2752:doi 2711:doi 2707:ACM 2667:at 2543:doi 2380:erf 2311:erf 1926:). 1826:inf 1644:CDF 1563:.) 931:'s 798:or 490:BSI 480:), 393:NSA 339:'s 328:or 92:), 3347:: 3307:, 3274:) 3260:) 3233:). 3123:, 3117:, 3083:. 3077:. 3051:. 3047:. 3032:^ 2982:. 2954:. 2950:. 2929:}} 2925:{{ 2910:, 2863:. 2853:32 2851:. 2845:. 2760:. 2746:. 2740:. 2717:. 2701:. 2697:. 2604:12 2602:. 2598:. 2570:. 2541:. 2537:. 2533:. 2429:. 2296:. 2008:: 1912:. 1823::= 1271:: 995:, 455:: 407:. 372:, 221:. 202:. 191:. 75:, 37:A 3315:( 3299:" 3292:" 3281:" 3276:C 3229:( 3219:. 3099:. 3063:. 3011:. 2993:. 2964:. 2935:) 2921:. 2896:. 2871:. 2859:: 2828:. 2824:: 2807:. 2803:: 2783:. 2768:. 2754:: 2748:8 2725:. 2713:: 2703:8 2671:. 2642:. 2580:. 2556:. 2545:: 2401:) 2398:x 2395:( 2387:1 2352:x 2332:) 2329:x 2326:( 2318:1 2280:) 2277:b 2274:( 2271:f 2248:) 2245:c 2242:( 2237:1 2230:F 2226:= 2223:b 2197:c 2194:= 2191:) 2188:b 2185:( 2182:F 2169:c 2155:1 2152:= 2149:) 2143:( 2140:F 2134:) 2131:b 2128:( 2125:F 2119:) 2110:( 2107:F 2104:= 2101:0 2074:b 2070:d 2066:) 2059:b 2055:( 2052:f 2047:b 2031:= 2028:) 2025:b 2022:( 2019:F 1996:) 1993:b 1990:( 1987:f 1967:) 1964:b 1961:( 1958:F 1867:} 1863:) 1860:t 1857:( 1854:F 1848:x 1845:: 1841:R 1834:t 1830:{ 1820:) 1817:x 1814:( 1805:F 1784:P 1763:R 1755:) 1751:1 1748:, 1745:0 1741:( 1737:: 1728:F 1707:P 1687:f 1675:F 1654:P 1630:F 1609:) 1605:1 1602:, 1599:0 1595:( 1574:f 1551:S 1531:S 1520:( 1498:| 1494:) 1491:E 1488:( 1485:P 1477:n 1472:} 1468:E 1462:) 1459:i 1456:( 1453:f 1450:: 1446:} 1442:n 1439:, 1433:, 1430:2 1427:, 1424:1 1420:{ 1413:i 1409:{ 1398:| 1393:, 1390:N 1384:n 1375:1 1370:N 1362:N 1355:0 1340:F 1332:E 1308:A 1301:) 1296:1 1291:N 1286:( 1282:f 1255:A 1233:F 1211:P 1188:} 1181:, 1178:3 1175:, 1172:2 1169:, 1166:1 1162:{ 1158:= 1153:1 1148:N 1125:R 1116:1 1111:N 1106:: 1103:f 1079:P 1059:A 1038:] 1034:1 1031:, 1028:0 1024:( 1003:A 982:] 978:1 975:, 972:0 968:( 947:P 919:P 899:A 878:R 871:A 848:} 843:R 836:t 833:: 829:] 825:t 822:, 812:( 807:{ 784:B 760:F 737:} 732:R 725:t 722:: 718:] 714:t 711:, 701:( 696:{ 692:= 687:F 663:B 653:F 629:F 599:B 576:) 570:B 565:, 561:R 556:( 535:P 502:n 446:( 230:× 49:( 41:( 34:. 20:)

Index

Rand()
Pseudorandom generator
algorithm
random numbers
random
seed
hardware random number generators
simulations
Monte Carlo method
electronic games
procedural generation
cryptography
elaborate algorithms
John von Neumann
artifacts
RANDU
mainframe computers
Monte Carlo
International Encyclopedia of Statistical Science
Java
linear congruential generator
Java 17
Mersenne Twister
List of pseudorandom number generators
linear congruential generators
linear-feedback shift registers
Mersenne Twister
equidistributed
George Marsaglia
xorshift

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.