Knowledge

Blum Blum Shub

Source 📝

66: 128: 25: 578: 692: 1510:
implementation provides a simple demonstration of the generator, in particular regarding the three bit selection methods. It is important to note that the requirements imposed upon the parameters
961: 334: 2720: 2636: 1024: 602: 1125: 1151: 1105: 1078: 1051: 988: 824: 798: 850: 870: 758:
makes the algorithm faster, doing so also reduces the security. A 2005 paper gives concrete, as opposed to asymptotic, security proof of BBS, for a given
2667: 149: 142: 494: 611: 1153:= 9, 81, 236, 36, 31, 202. The following table shows the output (in bits) for the different bit selection methods used to determine the output. 2605: 2715: 2594: 766:. The result can also be used to guide choices of the two numbers by balancing expected security against computational cost. 192: 164: 171: 229: 211: 109: 87: 52: 875: 80: 278: 2541:
Sidorenko, Andrey; Schoenmakers, Berry (2005). "Concrete Security of the Blum-Blum-Shub Pseudorandom Generator".
703: 38: 178: 1181: 732: 250: 2648: 160: 731:
grows large, distinguishing the output bits from random should be at least as difficult as solving the
2662: 74: 475:
An interesting characteristic of the Blum Blum Shub generator is the possibility to calculate any
453: 138: 2657: 91: 993: 587: 1164: 1110: 185: 2574: 1129: 1083: 1056: 1029: 966: 803: 777: 8: 872:
is the seed). We can expect to get a large cycle length for those small numbers, because
829: 605: 437: 44: 855: 485: 742:
The performance of the BBS random-number generator depends on the size of the modulus
2628: 2590: 441: 2700: 2620: 2582: 2550: 266: 2586: 573:{\displaystyle x_{i}=\left(x_{0}^{2^{i}{\bmod {\lambda }}(M)}\right){\bmod {M}}} 707: 2709: 2632: 1545:"Returns the number of 1-valued bits in the integer-encoded BITS." 687:{\displaystyle \lambda (M)=\lambda (p\cdot q)=\operatorname {lcm} (p-1,q-1)} 349: 262: 1719:"Returns the least significant bit of the integer-encoded BITS." 2690: 2685: 2646: 1507: 445: 397: 258: 254: 2554: 2647:
Geisler, Martin; Krøigård, Mikkel; Danielsen, Andreas (December 2004),
2619:(2). Society for Industrial & Applied Mathematics (SIAM): 364–383. 1159: 449: 370: 2695: 713: 2624: 1848:
generator parameters P, Q, and S (seed), and returning three values:
1632:"Returns the even parity bit of the integer-encoded BITS." 127: 1845:
Blum-Blum-Shub pseudorandom number generator, configured to use the
1842:"Returns a function of no arguments which represents a simple 2524: 2522: 2691:
BlumBlumShub, a Java-language implementation by Mark Rossmiller
2519: 2307:"~&Keys: E = even parity, L = least significant" 1863:
Please note that the parameters P, Q, and S are not checked in
561: 536: 359:. At each step of the algorithm, some output is derived from 317: 1866:
accordance to the conditions described in the article."
706:
of factoring. When the primes are chosen appropriately, and
2721:
Cryptographically secure pseudorandom number generators
2606:"A Simple Unpredictable Pseudo-Random Number Generator" 2686:
GMPBBS, a C-language implementation by Mark Rossmiller
2540: 1132: 1113: 1086: 1059: 1032: 996: 969: 878: 858: 832: 806: 780: 614: 590: 497: 281: 2575:"Comparison of Two Pseudo-Random Number Generators" 2573:Blum, Lenore; Blum, Manuel; Shub, Michael (1983). 2163:;; Update the state such that x becomes the new x. 1145: 1119: 1099: 1072: 1045: 1018: 982: 955: 864: 844: 818: 792: 686: 596: 572: 448:which is also a quadratic residue), and should be 328: 2707: 383:or one or more of the least significant bits of 1184:implementation that does check for primality. 956:{\displaystyle {\rm {gcd}}((p-3)/2,(q-3)/2)=2} 702:There is a proof reducing its security to the 2603: 2572: 2528: 1857:(3) the least significant bit of the number. 329:{\displaystyle x_{n+1}=x_{n}^{2}{\bmod {M}}} 2581:. Boston, MA: Springer US. pp. 61–78. 53:Learn how and when to remove these messages 2661: 406:should be an integer that is co-prime to 230:Learn how and when to remove this message 212:Learn how and when to remove this message 110:Learn how and when to remove this message 2076:;; Compute the random bit(s) based on x. 1411:"The RNG has fallen into a loop at 440:to 3 (mod 4) (this guarantees that each 73:This article includes a list of general 472:) (this makes the cycle length large). 2708: 1854:(2) the even parity bit of the number, 148:Please improve this article by adding 2604:Blum, L.; Blum, M.; Shub, M. (1986). 746:and the number of bits per iteration 369:; the output is commonly either the 121: 59: 18: 963:. The generator starts to evaluate 13: 887: 884: 881: 79:it lacks sufficient corresponding 14: 2732: 2679: 727:are output, then in the limit as 34:This article has multiple issues. 2642:from the original on 2021-08-14. 2352:"~&--------------" 126: 64: 23: 2673:from the original on 2016-03-31 2490:"~&~6d | ~d | ~d" 2199:;; Print the exemplary outputs. 42:or discuss these issues on the 2716:Pseudorandom number generators 2534: 944: 933: 921: 907: 895: 892: 681: 657: 645: 633: 624: 618: 551: 545: 272:Blum Blum Shub takes the form 1: 2507: 733:quadratic residuosity problem 251:pseudorandom number generator 150:secondary or tertiary sources 16:Pseudorandom number generator 2512: 348:is the product of two large 7: 2587:10.1007/978-1-4757-0602-4_6 2337:"~&x | E | L" 720:) lower-order bits of each 697: 10: 2737: 2565: 2529:Blum, Blum & Shub 1986 769: 2696:An implementation in Java 2613:SIAM Journal on Computing 2112:get-least-significant-bit 1707:get-least-significant-bit 1026:and creates the sequence 1524: 1522:(seed) are not checked. 1186: 1019:{\displaystyle x_{-1}=s} 704:computational difficulty 597:{\displaystyle \lambda } 2543:Cryptography and Coding 1120:{\displaystyle \ldots } 94:more precise citations. 2579:Advances in Cryptology 1147: 1121: 1101: 1074: 1047: 1020: 984: 957: 866: 846: 820: 794: 688: 598: 574: 330: 137:relies excessively on 2499:least-significant-bit 2475:least-significant-bit 2388:least-significant-bit 2193:least-significant-bit 2157:least-significant-bit 2106:least-significant-bit 1165:Least significant bit 1148: 1146:{\displaystyle x_{5}} 1122: 1102: 1100:{\displaystyle x_{2}} 1075: 1073:{\displaystyle x_{1}} 1048: 1046:{\displaystyle x_{0}} 1021: 985: 983:{\displaystyle x_{0}} 958: 867: 847: 821: 795: 689: 599: 575: 331: 269:'s one-way function. 265:that is derived from 1686:get-number-of-1-bits 1533:get-number-of-1-bits 1130: 1111: 1084: 1057: 1030: 994: 967: 876: 856: 830: 819:{\displaystyle q=23} 804: 793:{\displaystyle p=11} 778: 612: 588: 495: 484:value directly (via 279: 253:proposed in 1986 by 2555:10.1007/11586821_24 2531:, pp. 364–383. 2376:multiple-value-bind 2217:make-blum-blum-shub 2094:get-even-parity-bit 1797:make-blum-blum-shub 1620:get-even-parity-bit 1180:The following is a 845:{\displaystyle s=3} 606:Carmichael function 555: 418:are not factors of 315: 1143: 1117: 1097: 1070: 1043: 1016: 980: 953: 862: 842: 816: 790: 684: 594: 570: 515: 425:) and not 1 or 0. 326: 301: 2650:About Random Bits 2596:978-1-4757-0604-8 1851:(1) the number x, 1178: 1177: 865:{\displaystyle s} 750:. While lowering 442:quadratic residue 436:, should both be 240: 239: 232: 222: 221: 214: 196: 120: 119: 112: 57: 2728: 2701:Randomness tests 2674: 2672: 2665: 2655: 2643: 2641: 2610: 2600: 2559: 2558: 2538: 2532: 2526: 2503: 2500: 2497: 2494: 2491: 2488: 2485: 2482: 2479: 2476: 2473: 2470: 2467: 2464: 2461: 2458: 2455: 2452: 2449: 2446: 2443: 2440: 2437: 2434: 2431: 2428: 2425: 2422: 2419: 2416: 2413: 2410: 2407: 2404: 2401: 2398: 2395: 2392: 2389: 2386: 2383: 2380: 2377: 2374: 2371: 2368: 2365: 2362: 2359: 2356: 2353: 2350: 2347: 2344: 2341: 2338: 2335: 2332: 2329: 2326: 2323: 2320: 2317: 2314: 2311: 2308: 2305: 2302: 2299: 2296: 2293: 2290: 2287: 2284: 2281: 2278: 2275: 2272: 2269: 2266: 2263: 2260: 2257: 2254: 2251: 2248: 2245: 2242: 2239: 2236: 2233: 2230: 2227: 2224: 2221: 2218: 2215: 2212: 2209: 2206: 2203: 2200: 2197: 2194: 2191: 2188: 2185: 2182: 2179: 2176: 2173: 2170: 2167: 2164: 2161: 2158: 2155: 2152: 2149: 2146: 2143: 2140: 2137: 2134: 2131: 2128: 2125: 2122: 2119: 2116: 2113: 2110: 2107: 2104: 2101: 2098: 2095: 2092: 2089: 2086: 2083: 2080: 2077: 2074: 2071: 2068: 2065: 2062: 2059: 2056: 2053: 2050: 2047: 2044: 2041: 2038: 2035: 2032: 2029: 2026: 2023: 2020: 2017: 2014: 2011: 2008: 2005: 2002: 2001:;; x = x^2 mod M 1999: 1996: 1993: 1990: 1987: 1984: 1981: 1978: 1975: 1972: 1969: 1966: 1963: 1960: 1957: 1954: 1951: 1948: 1945: 1942: 1939: 1936: 1933: 1930: 1927: 1924: 1921: 1918: 1915: 1912: 1909: 1906: 1903: 1900: 1897: 1894: 1891: 1888: 1885: 1882: 1879: 1876: 1873: 1870: 1867: 1864: 1861: 1858: 1855: 1852: 1849: 1846: 1843: 1840: 1837: 1834: 1831: 1828: 1825: 1822: 1819: 1816: 1813: 1810: 1807: 1804: 1801: 1798: 1795: 1792: 1789: 1786: 1783: 1780: 1777: 1774: 1771: 1768: 1765: 1762: 1759: 1756: 1753: 1750: 1747: 1744: 1741: 1738: 1735: 1732: 1729: 1726: 1723: 1720: 1717: 1714: 1711: 1708: 1705: 1702: 1699: 1696: 1693: 1690: 1687: 1684: 1681: 1678: 1675: 1672: 1669: 1666: 1663: 1660: 1657: 1654: 1651: 1648: 1645: 1642: 1639: 1636: 1633: 1630: 1627: 1624: 1621: 1618: 1615: 1612: 1609: 1606: 1603: 1600: 1597: 1594: 1591: 1588: 1585: 1582: 1579: 1576: 1573: 1570: 1567: 1564: 1561: 1558: 1555: 1552: 1549: 1546: 1543: 1540: 1537: 1534: 1531: 1528: 1502: 1499: 1496: 1493: 1490: 1487: 1484: 1481: 1478: 1475: 1472: 1469: 1466: 1463: 1460: 1457: 1454: 1451: 1448: 1445: 1442: 1439: 1436: 1433: 1430: 1427: 1424: 1421: 1418: 1415: 1412: 1409: 1406: 1403: 1400: 1397: 1394: 1391: 1388: 1385: 1382: 1379: 1376: 1373: 1370: 1367: 1364: 1361: 1358: 1355: 1352: 1349: 1346: 1343: 1340: 1337: 1334: 1331: 1328: 1325: 1322: 1319: 1316: 1313: 1310: 1307: 1304: 1301: 1298: 1295: 1292: 1289: 1286: 1283: 1280: 1277: 1274: 1271: 1268: 1265: 1262: 1259: 1256: 1253: 1250: 1247: 1244: 1241: 1238: 1235: 1232: 1229: 1226: 1223: 1220: 1217: 1214: 1211: 1208: 1205: 1202: 1199: 1196: 1193: 1190: 1156: 1155: 1152: 1150: 1149: 1144: 1142: 1141: 1126: 1124: 1123: 1118: 1106: 1104: 1103: 1098: 1096: 1095: 1079: 1077: 1076: 1071: 1069: 1068: 1052: 1050: 1049: 1044: 1042: 1041: 1025: 1023: 1022: 1017: 1009: 1008: 989: 987: 986: 981: 979: 978: 962: 960: 959: 954: 940: 914: 891: 890: 871: 869: 868: 863: 851: 849: 848: 843: 825: 823: 822: 817: 799: 797: 796: 791: 693: 691: 690: 685: 608:. (Here we have 603: 601: 600: 595: 579: 577: 576: 571: 569: 568: 559: 554: 544: 543: 534: 533: 523: 507: 506: 428:The two primes, 335: 333: 332: 327: 325: 324: 314: 309: 297: 296: 267:Michael O. Rabin 235: 228: 217: 210: 206: 203: 197: 195: 161:"Blum Blum Shub" 154: 130: 122: 115: 108: 104: 101: 95: 90:this article by 81:inline citations 68: 67: 60: 49: 27: 26: 19: 2736: 2735: 2731: 2730: 2729: 2727: 2726: 2725: 2706: 2705: 2682: 2677: 2670: 2653: 2639: 2625:10.1137/0215025 2608: 2597: 2568: 2563: 2562: 2539: 2535: 2527: 2520: 2515: 2510: 2505: 2504: 2501: 2498: 2496:even-parity-bit 2495: 2492: 2489: 2486: 2483: 2480: 2477: 2474: 2471: 2468: 2465: 2462: 2459: 2456: 2454:even-parity-bit 2453: 2450: 2447: 2444: 2441: 2438: 2435: 2432: 2429: 2426: 2423: 2420: 2417: 2414: 2411: 2408: 2405: 2402: 2399: 2396: 2393: 2390: 2387: 2385:even-parity-bit 2384: 2381: 2378: 2375: 2372: 2369: 2366: 2363: 2360: 2357: 2354: 2351: 2348: 2345: 2342: 2339: 2336: 2333: 2330: 2327: 2324: 2322:"~2%" 2321: 2318: 2315: 2312: 2309: 2306: 2303: 2300: 2297: 2294: 2291: 2288: 2285: 2282: 2279: 2276: 2273: 2270: 2267: 2264: 2261: 2258: 2255: 2252: 2249: 2246: 2243: 2240: 2237: 2234: 2231: 2228: 2225: 2222: 2219: 2216: 2213: 2210: 2207: 2204: 2201: 2198: 2195: 2192: 2190:even-parity-bit 2189: 2186: 2183: 2180: 2177: 2174: 2171: 2168: 2165: 2162: 2159: 2156: 2153: 2150: 2147: 2144: 2141: 2138: 2136:even-parity-bit 2135: 2132: 2129: 2126: 2123: 2120: 2117: 2114: 2111: 2108: 2105: 2102: 2099: 2096: 2093: 2090: 2088:even-parity-bit 2087: 2084: 2081: 2078: 2075: 2072: 2069: 2066: 2063: 2060: 2057: 2054: 2051: 2048: 2045: 2042: 2039: 2036: 2033: 2030: 2027: 2024: 2021: 2018: 2015: 2012: 2009: 2006: 2003: 2000: 1997: 1994: 1991: 1988: 1985: 1982: 1979: 1976: 1973: 1970: 1967: 1964: 1961: 1958: 1955: 1952: 1949: 1946: 1943: 1940: 1937: 1934: 1931: 1928: 1925: 1922: 1919: 1916: 1913: 1910: 1907: 1904: 1901: 1898: 1895: 1892: 1889: 1886: 1883: 1880: 1877: 1874: 1871: 1868: 1865: 1862: 1859: 1856: 1853: 1850: 1847: 1844: 1841: 1838: 1835: 1832: 1829: 1826: 1823: 1820: 1817: 1814: 1811: 1808: 1805: 1802: 1799: 1796: 1793: 1790: 1787: 1784: 1781: 1778: 1775: 1772: 1769: 1766: 1763: 1760: 1757: 1754: 1751: 1748: 1745: 1742: 1739: 1736: 1733: 1730: 1727: 1724: 1721: 1718: 1715: 1712: 1709: 1706: 1703: 1700: 1697: 1694: 1691: 1688: 1685: 1682: 1679: 1676: 1673: 1670: 1667: 1664: 1661: 1658: 1655: 1652: 1649: 1646: 1643: 1640: 1637: 1634: 1631: 1628: 1625: 1622: 1619: 1616: 1613: 1610: 1607: 1604: 1601: 1598: 1595: 1592: 1589: 1586: 1583: 1580: 1577: 1574: 1571: 1568: 1565: 1562: 1559: 1556: 1553: 1550: 1547: 1544: 1541: 1538: 1535: 1532: 1529: 1526: 1504: 1503: 1500: 1497: 1494: 1491: 1488: 1485: 1482: 1479: 1476: 1473: 1470: 1467: 1464: 1461: 1458: 1455: 1452: 1449: 1446: 1443: 1440: 1437: 1434: 1431: 1428: 1425: 1422: 1419: 1416: 1413: 1410: 1407: 1404: 1401: 1398: 1395: 1392: 1389: 1386: 1383: 1380: 1377: 1374: 1371: 1368: 1365: 1362: 1359: 1356: 1353: 1350: 1347: 1344: 1341: 1338: 1335: 1332: 1329: 1326: 1323: 1320: 1317: 1314: 1311: 1308: 1305: 1302: 1299: 1296: 1293: 1290: 1287: 1284: 1281: 1278: 1275: 1272: 1269: 1266: 1263: 1260: 1257: 1254: 1251: 1248: 1245: 1242: 1239: 1236: 1233: 1230: 1227: 1224: 1221: 1218: 1215: 1212: 1209: 1206: 1203: 1200: 1197: 1194: 1191: 1188: 1137: 1133: 1131: 1128: 1127: 1112: 1109: 1108: 1091: 1087: 1085: 1082: 1081: 1064: 1060: 1058: 1055: 1054: 1037: 1033: 1031: 1028: 1027: 1001: 997: 995: 992: 991: 974: 970: 968: 965: 964: 936: 910: 880: 879: 877: 874: 873: 857: 854: 853: 831: 828: 827: 805: 802: 801: 779: 776: 775: 772: 725: 700: 613: 610: 609: 589: 586: 585: 564: 560: 539: 535: 529: 525: 524: 519: 511: 502: 498: 496: 493: 492: 486:Euler's theorem 483: 424: 405: 392: 382: 368: 320: 316: 310: 305: 286: 282: 280: 277: 276: 236: 225: 224: 223: 218: 207: 201: 198: 155: 153: 147: 143:primary sources 131: 116: 105: 99: 96: 86:Please help to 85: 69: 65: 28: 24: 17: 12: 11: 5: 2734: 2724: 2723: 2718: 2704: 2703: 2698: 2693: 2688: 2681: 2680:External links 2678: 2676: 2675: 2663:10.1.1.90.3779 2644: 2601: 2595: 2569: 2567: 2564: 2561: 2560: 2533: 2517: 2516: 2514: 2511: 2509: 2506: 1525: 1506:The following 1474:blum_blum_shub 1198:blum_blum_shub 1187: 1176: 1175: 1172: 1168: 1167: 1162: 1140: 1136: 1116: 1094: 1090: 1067: 1063: 1040: 1036: 1015: 1012: 1007: 1004: 1000: 977: 973: 952: 949: 946: 943: 939: 935: 932: 929: 926: 923: 920: 917: 913: 909: 906: 903: 900: 897: 894: 889: 886: 883: 861: 841: 838: 835: 815: 812: 809: 789: 786: 783: 771: 768: 754:or increasing 723: 699: 696: 683: 680: 677: 674: 671: 668: 665: 662: 659: 656: 653: 650: 647: 644: 641: 638: 635: 632: 629: 626: 623: 620: 617: 593: 582: 581: 567: 563: 558: 553: 550: 547: 542: 538: 532: 528: 522: 518: 514: 510: 505: 501: 479: 422: 403: 387: 377: 363: 338: 337: 323: 319: 313: 308: 304: 300: 295: 292: 289: 285: 243:Blum Blum Shub 238: 237: 220: 219: 202:September 2013 134: 132: 125: 118: 117: 100:September 2013 72: 70: 63: 58: 32: 31: 29: 22: 15: 9: 6: 4: 3: 2: 2733: 2722: 2719: 2717: 2714: 2713: 2711: 2702: 2699: 2697: 2694: 2692: 2689: 2687: 2684: 2683: 2669: 2664: 2659: 2652: 2651: 2645: 2638: 2634: 2630: 2626: 2622: 2618: 2614: 2607: 2602: 2598: 2592: 2588: 2584: 2580: 2576: 2571: 2570: 2556: 2552: 2548: 2544: 2537: 2530: 2525: 2523: 2518: 1935:;; M = p * q 1523: 1521: 1517: 1513: 1509: 1185: 1183: 1173: 1170: 1169: 1166: 1163: 1161: 1158: 1157: 1154: 1138: 1134: 1114: 1092: 1088: 1065: 1061: 1038: 1034: 1013: 1010: 1005: 1002: 998: 975: 971: 950: 947: 941: 937: 930: 927: 924: 918: 915: 911: 904: 901: 898: 859: 839: 836: 833: 813: 810: 807: 787: 784: 781: 767: 765: 761: 757: 753: 749: 745: 740: 738: 734: 730: 726: 719: 715: 711: 710: 705: 695: 678: 675: 672: 669: 666: 663: 660: 654: 651: 648: 642: 639: 636: 630: 627: 621: 615: 607: 591: 565: 556: 548: 540: 530: 526: 520: 516: 512: 508: 503: 499: 491: 490: 489: 487: 482: 478: 473: 471: 467: 463: 459: 455: 452:with a small 451: 447: 443: 439: 435: 431: 426: 421: 417: 413: 409: 402: 399: 394: 390: 386: 380: 376: 372: 366: 362: 358: 354: 351: 347: 343: 321: 311: 306: 302: 298: 293: 290: 287: 283: 275: 274: 273: 270: 268: 264: 260: 256: 252: 248: 244: 234: 231: 216: 213: 205: 194: 191: 187: 184: 180: 177: 173: 170: 166: 163: –  162: 158: 157:Find sources: 151: 145: 144: 140: 135:This article 133: 129: 124: 123: 114: 111: 103: 93: 89: 83: 82: 76: 71: 62: 61: 56: 54: 47: 46: 41: 40: 35: 30: 21: 20: 2649: 2616: 2612: 2578: 2546: 2542: 2536: 1950:;; x0 = seed 1519: 1515: 1511: 1505: 1179: 1174:1 1 0 0 1 0 1171:0 1 1 0 1 0 773: 763: 759: 755: 751: 747: 743: 741: 736: 728: 721: 717: 708: 701: 583: 480: 476: 474: 469: 465: 461: 457: 433: 429: 427: 419: 415: 411: 407: 400: 395: 388: 384: 378: 374: 364: 360: 356: 352: 345: 341: 339: 271: 263:Michael Shub 246: 242: 241: 226: 208: 199: 189: 182: 175: 168: 156: 136: 106: 97: 78: 50: 43: 37: 36:Please help 33: 2549:: 355–375. 1508:Common Lisp 1432:steps" 450:safe primes 446:square root 259:Manuel Blum 255:Lenore Blum 92:introducing 2710:Categories 2508:References 1354:iterations 1222:iterations 1160:Parity bit 371:bit parity 172:newspapers 139:references 75:references 39:improve it 2658:CiteSeerX 2633:0097-5397 2513:Citations 1115:… 1003:− 990:by using 928:− 902:− 676:− 664:− 655:⁡ 640:⋅ 631:λ 616:λ 592:λ 541:λ 438:congruent 45:talk page 2668:archived 2637:Archived 2256:function 1803:&key 1605:logcount 698:Security 444:has one 2566:Sources 2463:declare 2442:declare 2421:integer 2409:declare 2397:funcall 2271:integer 2244:declare 2145:declare 2124:declare 2058:integer 2046:declare 1968:integer 1956:declare 1884:integer 1872:declare 1737:integer 1725:declare 1650:integer 1638:declare 1590:integer 1563:integer 1551:declare 1465:numbers 1444:numbers 1441:numbers 1423:numbers 1396:numbers 1333:numbers 1300:isprime 1273:isprime 852:(where 770:Example 735:modulo 604:is the 249:) is a 186:scholar 88:improve 2660:  2631:  2593:  2484:format 2364:repeat 2346:format 2331:format 2316:format 2301:format 2265:values 2196:)))))) 2184:values 1995:lambda 1989:#' 1462:return 1450:append 1438:return 1291:assert 1264:assert 1246:assert 1228:assert 1189:import 1182:Python 584:where 410:(i.e. 350:primes 340:where 247:B.B.S. 188:  181:  174:  167:  159:  77:, but 2671:(PDF) 2654:(PDF) 2640:(PDF) 2609:(PDF) 1794:defun 1704:defun 1617:defun 1530:defun 1468:print 1402:print 1348:range 1294:sympy 1267:sympy 1192:sympy 193:JSTOR 179:books 2629:ISSN 2591:ISBN 2547:3796 2502:)))) 2469:type 2448:type 2415:type 2361:loop 2250:type 2169:setf 2151:type 2130:type 2052:type 1962:type 1878:type 1785:bits 1773:byte 1749:bits 1731:type 1713:bits 1689:bits 1662:bits 1644:type 1626:bits 1608:bits 1575:bits 1557:type 1539:bits 1518:and 1456:seed 1390:seed 1369:seed 1360:seed 1216:seed 826:and 774:Let 762:and 716:log 432:and 414:and 398:seed 396:The 355:and 261:and 165:news 2621:doi 2583:doi 2551:doi 2472:bit 2451:bit 2400:bbs 2292:bbs 2286:bit 2283:bit 2238:))) 2211:bbs 2205:let 2154:bit 2133:bit 2118:))) 2082:let 2040:))) 2019:mod 2007:let 1911:let 1860:--- 1788:))) 1767:ldb 1761:bit 1758:the 1698:))) 1680:mod 1674:bit 1671:the 1611:))) 1584:the 1498:100 1417:len 1339:for 1195:def 714:log 694:). 652:lcm 562:mod 537:mod 488:): 466:q-3 464:, ( 458:p-3 454:gcd 373:of 318:mod 141:to 2712:: 2666:, 2656:, 2635:. 2627:. 2617:15 2615:. 2611:. 2589:. 2577:. 2545:. 2521:^ 2478:)) 2457:)) 2436:)) 2370:do 2295:)) 2289:)) 2259:() 2232::s 2229:23 2226::q 2223:11 2220::p 2208:(( 2160:)) 2139:)) 2100:)) 2085:(( 2073:)) 2010:(( 1998:() 1986:)) 1947:)) 1932:)) 1914:(( 1905:)) 1839:)) 1824:23 1812:11 1752:)) 1665:)) 1578:)) 1514:, 1501:)) 1486:23 1480:11 1393:in 1387:if 1372:** 1357:): 1345:in 1330:p2 1324:p1 1309:// 1306:p2 1282:// 1279:p1 1258:== 1249:p2 1240:== 1231:p1 1225:): 1210:p2 1204:p1 1107:, 1080:, 1053:, 814:23 800:, 788:11 739:. 470:/2 462:/2 456:(( 393:. 391:+1 381:+1 367:+1 346:pq 344:= 257:, 152:. 48:. 2623:: 2599:. 2585:: 2557:. 2553:: 2493:x 2487:T 2481:( 2466:( 2460:( 2445:( 2439:( 2433:x 2430:) 2427:* 2424:0 2418:( 2412:( 2406:( 2403:) 2394:( 2391:) 2382:x 2379:( 2373:( 2367:6 2358:( 2355:) 2349:T 2343:( 2340:) 2334:T 2328:( 2325:) 2319:T 2313:( 2310:) 2304:T 2298:( 2280:) 2277:* 2274:0 2268:( 2262:( 2253:( 2247:( 2241:( 2235:3 2214:( 2202:( 2187:x 2181:( 2178:) 2175:x 2172:x 2166:( 2148:( 2142:( 2127:( 2121:( 2115:x 2109:( 2103:( 2097:x 2091:( 2079:( 2070:x 2067:) 2064:* 2061:0 2055:( 2049:( 2043:( 2037:M 2034:) 2031:x 2028:x 2025:* 2022:( 2016:( 2013:x 2004:( 1992:( 1983:x 1980:M 1977:) 1974:* 1971:0 1965:( 1959:( 1953:( 1944:s 1941:x 1938:( 1929:q 1926:p 1923:* 1920:( 1917:M 1908:( 1902:s 1899:q 1896:p 1893:) 1890:* 1887:0 1881:( 1875:( 1869:( 1836:3 1833:s 1830:( 1827:) 1821:q 1818:( 1815:) 1809:p 1806:( 1800:( 1791:( 1782:) 1779:0 1776:1 1770:( 1764:( 1755:( 1746:) 1743:* 1740:0 1734:( 1728:( 1722:( 1716:) 1710:( 1701:( 1695:2 1692:) 1683:( 1677:( 1668:( 1659:) 1656:* 1653:0 1647:( 1641:( 1635:( 1629:) 1623:( 1614:( 1602:( 1599:) 1596:* 1593:0 1587:( 1581:( 1572:) 1569:* 1566:0 1560:( 1554:( 1548:( 1542:) 1536:( 1527:( 1520:s 1516:q 1512:p 1495:, 1492:3 1489:, 1483:, 1477:( 1471:( 1459:) 1453:( 1447:. 1435:) 1429:} 1426:) 1420:( 1414:{ 1408:f 1405:( 1399:: 1384:n 1381:% 1378:) 1375:2 1366:( 1363:= 1351:( 1342:_ 1336:= 1327:* 1321:= 1318:n 1315:) 1312:2 1303:( 1297:. 1288:) 1285:2 1276:( 1270:. 1261:3 1255:4 1252:% 1243:3 1237:4 1234:% 1219:, 1213:, 1207:, 1201:( 1139:5 1135:x 1093:2 1089:x 1066:1 1062:x 1039:0 1035:x 1014:s 1011:= 1006:1 999:x 976:0 972:x 951:2 948:= 945:) 942:2 938:/ 934:) 931:3 925:q 922:( 919:, 916:2 912:/ 908:) 905:3 899:p 896:( 893:( 888:d 885:c 882:g 860:s 840:3 837:= 834:s 811:= 808:q 785:= 782:p 764:j 760:M 756:j 752:M 748:j 744:M 737:M 729:M 724:n 722:x 718:M 712:( 709:O 682:) 679:1 673:q 670:, 667:1 661:p 658:( 649:= 646:) 643:q 637:p 634:( 628:= 625:) 622:M 619:( 580:, 566:M 557:) 552:) 549:M 546:( 531:i 527:2 521:0 517:x 513:( 509:= 504:i 500:x 481:i 477:x 468:) 460:) 434:q 430:p 423:0 420:x 416:q 412:p 408:M 404:0 401:x 389:n 385:x 379:n 375:x 365:n 361:x 357:q 353:p 342:M 336:, 322:M 312:2 307:n 303:x 299:= 294:1 291:+ 288:n 284:x 245:( 233:) 227:( 215:) 209:( 204:) 200:( 190:· 183:· 176:· 169:· 146:. 113:) 107:( 102:) 98:( 84:. 55:) 51:(

Index

improve it
talk page
Learn how and when to remove these messages
references
inline citations
improve
introducing
Learn how and when to remove this message

references
primary sources
secondary or tertiary sources
"Blum Blum Shub"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
Learn how and when to remove this message
pseudorandom number generator
Lenore Blum
Manuel Blum
Michael Shub
Michael O. Rabin
primes
bit parity
seed
congruent
quadratic residue

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