34:
3820:
2197:
RC5 messages encrypted with 56-bit and 64-bit keys and has been working on cracking a 72-bit key since
November 3, 2002. As of July 26, 2023, 10.409% of the keyspace has been searched and based on the rate recorded that day, it would take a little more than 59 years to complete 100% of the keyspace.
241:". The tantalising simplicity of the algorithm together with the novelty of the data-dependent rotations has made RC5 an attractive object of study for cryptanalysts. RC5 is basically denoted as RC5-w/r/b where w=word size in bits, r=number of rounds, b=number of bytes in the key.
2208:
encrypted with RC5, but these contests were discontinued as of May 2007. As a result, distributed.net decided to fund the monetary prize. The individual who discovers the winning key will receive US$ 1,000, their team (if applicable) will receive US$ 1,000, and the
1386:
Encryption involved several rounds of a simple function, with 12 or 20 rounds seemingly recommended, depending on security needs and time considerations. Beyond the variables used above, the following variables are used in this algorithm:
249:
RC5 encryption and decryption both expand the random key into 2(r+1) words that will be used sequentially (and only once each) during the encryption and decryption processes. All of the below comes from Rivest's revised paper on RC5.
225:-like network, similar to RC2. The encryption and decryption routines can be specified in a few lines of code. The key schedule, however, is more complex, expanding the key using an essentially
2384:
3800:
3630:
206:(0 to 2040 bits), and number of rounds (0 to 255). The original suggested choice of parameters were a block size of 64 bits, a 128-bit key, and 12 rounds.
891:
The example source code is provided from the appendix of Rivest's paper on RC5. The implementation is designed to work with w = 32, r = 12, and b = 16.
209:
A key feature of RC5 is the use of data-dependent rotations; one of the goals of RC5 was to prompt the study and evaluation of such operations as a
3483:
3418:
2499:
2464:
2321:
3245:
2601:
2284:
3235:
2729:
2380:
3398:
3372:
3240:
3136:
3213:
2376:
3476:
3382:
2492:
1787:
Decryption is a fairly straightforward reversal of the encryption process. The below pseudocode shows the process.
3261:
3679:
3439:
3853:
2459:
3469:
2529:
179:
3795:
3750:
3563:
3325:
2485:
238:
2444:
2204:, which had a (now expired) patent on the algorithm, offered a series of US$ 10,000 prizes for breaking
3674:
3342:
3252:
3230:
2543:
2179:
138:
3790:
3347:
3203:
3156:
2631:
380:
230:
195:
98:
2377:"PlayStation 3 supercomputer places UMass Dartmouth #1 in the world in code cracking challenge list"
3780:
3770:
3625:
3413:
3295:
3170:
2539:
2210:
263:
3775:
3765:
3568:
3528:
3521:
3511:
3506:
3352:
3141:
2512:
210:
156:
2454:
3848:
3516:
3444:
3320:
3315:
3267:
2254:
1527:# The ciphertext block consists of the two-word wide block composed of A and B, in that order.
3823:
3669:
3615:
3434:
3257:
3116:
2694:
2186:
278:– The length of a word in bits, typically 16, 32 or 64. Encryption is done in 2-word blocks.
3785:
3709:
3337:
3220:
3146:
2829:
2809:
119:
8:
3548:
3300:
3277:
2596:
2364:
2198:
The task has inspired many new and novel developments in the field of cluster computing.
2420:
2292:
Proceedings of the Second
International Workshop on Fast Software Encryption (FSE) 1994e
319:– A temporary working array used during key scheduling, initialized to the key in words.
3654:
3638:
3585:
3285:
3193:
2905:
2834:
2804:
2749:
2318:
2194:
214:
2295:
2182:
using 2 chosen plaintexts. 18–20 rounds are suggested as sufficient protection.
19:
This article is about the block cipher. For the infrared remote control protocol, see
3714:
3704:
3575:
3005:
2704:
2664:
2659:
2626:
2586:
2534:
2449:
2227:
76:
3649:
3377:
3272:
3151:
3010:
2890:
2859:
2553:
2263:
226:
3224:
3208:
3197:
3131:
3090:
3055:
2985:
2965:
2839:
2719:
2714:
2669:
2325:
2190:
269:
Following the naming scheme of the paper, the following variable names are used:
3724:
3644:
3605:
3553:
3538:
3362:
3310:
3121:
3106:
3045:
3040:
2925:
2674:
222:
111:
2406:
3842:
3805:
3760:
3719:
3699:
3595:
3558:
3533:
3357:
3305:
3184:
3166:
2955:
2930:
2920:
2744:
2734:
2581:
2250:
130:
3755:
3600:
3590:
3580:
3543:
3492:
3290:
3111:
3075:
2940:
2819:
2774:
2606:
2558:
2508:
2201:
455:
234:
175:
159:
148:
3734:
2900:
2895:
2779:
2404:
Rivest, R. L, "Block
Encryption Algorithm With Data Dependent Rotation",
3694:
3664:
3659:
3620:
3332:
3050:
2990:
2874:
2869:
2814:
2684:
2547:
2268:
2205:
259:
163:
54:
33:
3684:
3065:
3060:
2950:
2864:
2759:
2739:
1392:
305:– The key, considered as an array of bytes (using 0-based indexing).
170:
stands for "Rivest Cipher", or alternatively, "Ron's Code" (compare
3729:
3689:
3403:
3367:
3161:
2824:
2699:
2679:
2591:
619:# S is initially a t=2(r+1) length list of undefined w-length words
203:
88:
3070:
3020:
2980:
2970:
2915:
2910:
2754:
2563:
2340:
2222:
3610:
3408:
3030:
3025:
2960:
2945:
2935:
2880:
2854:
2849:
2844:
2724:
2709:
2335:
2333:
3126:
3085:
3035:
3015:
3000:
2789:
2769:
2689:
2654:
2185:
A number of these challenge problems have been tackled using
2975:
2884:
2799:
2794:
2784:
2764:
2636:
2621:
2330:
553:# L is initially a c-length list of 0-valued w-length words
258:
The key expansion algorithm is illustrated below, first in
20:
2178:
Twelve-round RC5 (with 64-bit blocks) is susceptible to a
3080:
2995:
2616:
218:
199:
183:
171:
72:
3631:
Cryptographically secure pseudorandom number generator
2421:"distributed.net: staff blogs – 2008 – September – 08"
137:
12-round RC5 (with 64-bit blocks) is susceptible to a
450:
is the nearest odd integer to the given input, where
266:
copied directly from the reference paper's appendix.
2507:
2469:
2319:
http://people.csail.mit.edu/rivest/Rivest-rc5rev.pdf
2249:
327:– The number of rounds to use when encrypting data.
40:
One round (two half-rounds) of the RC5 block cipher
2460:RSA Laboratories FAQ — What are RC5 and RC6?
2410:, issued on 3 March 1998, expired 1 November 2015.
313:– The length of the key in words (or 1, if b = 0).
616:# Initialize key-independent pseudorandom S array
3840:
373:is the nearest odd integer to the given input,
221:. The general structure of the algorithm is a
3477:
2493:
2445:Rivests's revised paper describing the cipher
1935:The example C code given by Rivest is this.
1544:The example C code given by Rivest is this.
1391:A, B - The two words composing the block of
3484:
3470:
2500:
2486:
2245:
2243:
2267:
438:– The second magic constant, defined as
194:Unlike many schemes, RC5 has a variable
162:notable for its simplicity. Designed by
2240:
464:is defined above. For common values of
389:is defined above. For common values of
357:– The first magic constant, defined as
340:– the number of round subkeys required.
3841:
2282:
2276:
3465:
2481:
2381:University of Massachusetts Dartmouth
2253:; Kushilevitz, Eyal (31 May 1998).
229:with the binary expansions of both
213:. RC5 also consists of a number of
13:
32:
14:
3865:
2438:
299:– The length of the key in bytes.
103:32, 64 or 128 bits (64 suggested)
3819:
3818:
3491:
2294:. pp. 86–96. Archived from
2173:
291:– The length of a word in bytes.
253:
2387:from the original on 2022-06-29
479:are given here in hexadecimal:
404:are given here in hexadecimal:
124:1-255 (12 suggested originally)
3680:Information-theoretic security
2413:
2398:
2369:
2365:RC5-72 / Overall Project Stats
2358:
2341:"distributed.net: Project RC5"
2312:
2285:"The RC5 Encryption Algorithm"
676:# The main key scheduling loop
189:
93:0 to 2040 bits (128 suggested)
1:
2256:Improved Cryptanalysis of RC5
2233:
1782:
1381:
381:base of the natural logarithm
2465:Helger Lipmaa's links on RC5
926:// c = max(1, ceil(8 * b/w))
244:
239:nothing up my sleeve numbers
180:Advanced Encryption Standard
7:
3796:Message authentication code
3751:Cryptographic hash function
3564:Cryptographic hash function
2455:SCAN's entry for the cipher
2216:
470:, the associated values of
395:, the associated values of
10:
3870:
3675:Harvest now, decrypt later
141:using 2 chosen plaintexts.
18:
3814:
3791:Post-quantum cryptography
3743:
3499:
3461:
3427:
3391:
3383:Time/memory/data tradeoff
3180:
3099:
2645:
2572:
2520:
2477:
2473:
923:// w = 32, r = 12, b = 16
346:– The round subkey words.
136:
128:
118:
107:
97:
87:
82:
68:
60:
50:
45:
31:
3781:Quantum key distribution
3771:Authenticated encryption
3626:Random number generation
3171:Whitening transformation
2213:will receive US$ 2,000.
2211:Free Software Foundation
1937:
1789:
1546:
1398:
893:
505:
500:= 64: 0x9E3779B97F4A7C15
425:= 64: 0xB7E151628AED2A6B
3776:Public-key cryptography
3766:Symmetric-key algorithm
3569:Key derivation function
3529:Cryptographic primitive
3522:Authentication protocol
3512:Outline of cryptography
3507:History of cryptography
3142:Confusion and diffusion
2450:Rivest's original paper
211:cryptographic primitive
3517:Cryptographic protocol
2283:Rivest, R. L. (1994).
2193:. Distributed.net has
37:
3670:End-to-end encryption
3616:Cryptojacking malware
3435:Initialization vector
2407:U.S. patent 5,724,428
2383:. 24 September 2014.
2187:distributed computing
36:
3854:Broken block ciphers
3786:Quantum cryptography
3710:Trusted timestamping
3214:3-subset MITM attack
2830:Intel Cascade Cipher
2810:Hasty Pudding cipher
508:# Break K into words
3549:Cryptographic nonce
3253:Differential-linear
2345:www.distributed.net
2180:differential attack
219:eXclusive OR (XOR)s
139:differential attack
28:
3655:Subliminal channel
3639:Pseudorandom noise
3586:Key (cryptography)
3326:Differential-fault
2544:internal mechanics
2324:2018-09-21 at the
2269:10.1007/BFb0054119
2262:. EUROCRYPT 1998.
186:was based on RC5.
38:
26:
3836:
3835:
3832:
3831:
3715:Key-based routing
3705:Trapdoor function
3576:Digital signature
3457:
3456:
3453:
3452:
3440:Mode of operation
3117:Lai–Massey scheme
2379:(Press release).
145:
144:
3861:
3822:
3821:
3650:Insecure channel
3486:
3479:
3472:
3463:
3462:
3311:Power-monitoring
3152:Avalanche effect
2860:Khufu and Khafre
2513:security summary
2502:
2495:
2488:
2479:
2478:
2475:
2474:
2471:
2470:
2432:
2431:
2429:
2427:
2417:
2411:
2409:
2402:
2396:
2395:
2393:
2392:
2373:
2367:
2362:
2356:
2355:
2353:
2351:
2337:
2328:
2316:
2310:
2309:
2307:
2306:
2300:
2289:
2280:
2274:
2273:
2271:
2261:
2247:
2169:
2166:
2163:
2160:
2157:
2154:
2151:
2148:
2145:
2142:
2139:
2136:
2133:
2130:
2127:
2124:
2121:
2118:
2115:
2112:
2109:
2106:
2103:
2100:
2097:
2094:
2091:
2088:
2085:
2082:
2079:
2076:
2073:
2070:
2067:
2064:
2061:
2058:
2055:
2052:
2049:
2046:
2043:
2040:
2037:
2034:
2031:
2028:
2025:
2022:
2019:
2016:
2013:
2010:
2007:
2004:
2001:
1998:
1995:
1992:
1989:
1986:
1983:
1980:
1977:
1974:
1971:
1968:
1965:
1962:
1959:
1956:
1953:
1950:
1947:
1944:
1941:
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:
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:
1540:
1537:
1534:
1531:
1528:
1525:
1522:
1519:
1516:
1513:
1510:
1507:
1504:
1501:
1498:
1495:
1492:
1489:
1486:
1483:
1480:
1477:
1474:
1471:
1468:
1465:
1462:
1459:
1456:
1453:
1450:
1447:
1444:
1441:
1438:
1435:
1432:
1429:
1426:
1423:
1420:
1417:
1414:
1411:
1408:
1405:
1402:
1395:to be encrypted.
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:
1185:
1182:
1179:
1176:
1173:
1170:
1167:
1164:
1161:
1158:
1155:
1152:
1149:
1146:
1143:
1140:
1137:
1134:
1131:
1128:
1125:
1122:
1119:
1116:
1113:
1110:
1107:
1104:
1101:
1098:
1095:
1092:
1089:
1086:
1083:
1080:
1077:
1074:
1071:
1068:
1065:
1062:
1059:
1056:
1053:
1050:
1047:
1044:
1041:
1038:
1035:
1032:
1029:
1026:
1023:
1020:
1017:
1014:
1011:
1008:
1005:
1002:
999:
996:
993:
990:
987:
984:
981:
978:
975:
972:
969:
966:
963:
960:
957:
954:
951:
948:
945:
942:
939:
936:
933:
930:
929:// t = 2 * (r+1)
927:
924:
921:
918:
915:
912:
909:
906:
903:
900:
897:
887:
884:
881:
878:
875:
872:
869:
866:
863:
860:
857:
854:
851:
848:
845:
842:
839:
836:
833:
830:
827:
824:
821:
818:
815:
812:
809:
806:
803:
800:
797:
794:
791:
788:
785:
782:
779:
776:
773:
770:
767:
764:
761:
758:
755:
752:
749:
746:
743:
740:
737:
734:
731:
728:
725:
722:
719:
716:
713:
710:
707:
704:
701:
698:
695:
692:
689:
686:
683:
680:
677:
674:
671:
668:
665:
662:
659:
656:
653:
650:
647:
644:
641:
638:
635:
632:
629:
626:
623:
620:
617:
614:
611:
608:
605:
602:
599:
596:
593:
590:
587:
584:
581:
578:
575:
572:
569:
566:
563:
560:
557:
554:
551:
548:
545:
542:
539:
536:
533:
530:
527:
524:
521:
518:
515:
512:
509:
493:= 32: 0x9E3779B9
478:
469:
463:
453:
449:
445:
443:
437:
418:= 32: 0xB7E15163
403:
394:
388:
378:
372:
368:
366:
356:
345:
339:
326:
318:
312:
304:
298:
290:
277:
227:one-way function
182:(AES) candidate
29:
25:
3869:
3868:
3864:
3863:
3862:
3860:
3859:
3858:
3839:
3838:
3837:
3828:
3810:
3739:
3495:
3490:
3449:
3423:
3392:Standardization
3387:
3316:Electromagnetic
3268:Integral/Square
3225:Piling-up lemma
3209:Biclique attack
3198:EFF DES cracker
3182:
3176:
3107:Feistel network
3095:
2720:CIPHERUNICORN-E
2715:CIPHERUNICORN-A
2647:
2641:
2574:
2568:
2522:
2516:
2506:
2441:
2436:
2435:
2425:
2423:
2419:
2418:
2414:
2405:
2403:
2399:
2390:
2388:
2375:
2374:
2370:
2363:
2359:
2349:
2347:
2339:
2338:
2331:
2326:Wayback Machine
2317:
2313:
2304:
2302:
2298:
2287:
2281:
2277:
2259:
2248:
2241:
2236:
2219:
2191:Distributed.net
2189:, organised by
2176:
2171:
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:
1999:
1996:
1993:
1990:
1987:
1984:
1981:
1978:
1975:
1972:
1969:
1966:
1963:
1960:
1957:
1954:
1951:
1948:
1945:
1942:
1939:
1933:
1932:
1929:
1926:
1923:
1920:
1917:
1914:
1911:
1908:
1905:
1902:
1899:
1896:
1893:
1890:
1887:
1884:
1881:
1878:
1875:
1872:
1869:
1866:
1863:
1860:
1857:
1854:
1851:
1848:
1845:
1842:
1839:
1836:
1833:
1830:
1827:
1824:
1821:
1818:
1815:
1812:
1809:
1806:
1803:
1800:
1797:
1794:
1791:
1785:
1780:
1779:
1776:
1773:
1770:
1767:
1764:
1761:
1758:
1755:
1752:
1749:
1746:
1743:
1740:
1737:
1734:
1731:
1728:
1725:
1722:
1719:
1716:
1713:
1710:
1707:
1704:
1701:
1698:
1695:
1692:
1689:
1686:
1683:
1680:
1677:
1674:
1671:
1668:
1665:
1662:
1659:
1656:
1653:
1650:
1647:
1644:
1641:
1638:
1635:
1632:
1629:
1626:
1623:
1620:
1617:
1614:
1611:
1608:
1605:
1602:
1599:
1596:
1593:
1590:
1587:
1584:
1581:
1578:
1575:
1572:
1569:
1566:
1563:
1560:
1557:
1554:
1551:
1548:
1542:
1541:
1538:
1535:
1532:
1529:
1526:
1523:
1520:
1517:
1514:
1511:
1508:
1505:
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:
1384:
1379:
1378:
1375:
1372:
1369:
1366:
1363:
1360:
1357:
1354:
1351:
1348:
1345:
1342:
1339:
1336:
1333:
1330:
1327:
1324:
1321:
1318:
1315:
1312:
1309:
1306:
1303:
1300:
1297:
1294:
1291:
1288:
1285:
1282:
1279:
1276:
1273:
1270:
1267:
1264:
1261:
1258:
1255:
1252:
1249:
1246:
1243:
1240:
1237:
1234:
1231:
1228:
1225:
1222:
1219:
1216:
1213:
1210:
1207:
1204:
1201:
1198:
1195:
1192:
1189:
1186:
1183:
1180:
1177:
1174:
1171:
1168:
1165:
1162:
1159:
1156:
1153:
1150:
1147:
1144:
1141:
1138:
1135:
1132:
1129:
1126:
1123:
1120:
1117:
1114:
1111:
1108:
1105:
1102:
1099:
1096:
1093:
1090:
1087:
1084:
1081:
1078:
1075:
1072:
1069:
1066:
1063:
1060:
1057:
1054:
1051:
1048:
1045:
1042:
1039:
1036:
1033:
1030:
1027:
1024:
1021:
1018:
1015:
1012:
1009:
1006:
1003:
1000:
997:
994:
991:
988:
985:
982:
979:
976:
973:
970:
967:
964:
961:
958:
955:
952:
949:
946:
943:
940:
937:
934:
931:
928:
925:
922:
919:
916:
913:
910:
907:
904:
901:
898:
895:
889:
888:
885:
882:
879:
876:
873:
870:
867:
864:
861:
858:
855:
852:
849:
846:
843:
840:
837:
834:
831:
828:
825:
822:
819:
816:
813:
810:
807:
804:
801:
798:
795:
792:
789:
786:
783:
780:
777:
774:
771:
768:
765:
762:
759:
756:
753:
750:
747:
744:
741:
738:
735:
732:
729:
726:
723:
720:
717:
714:
711:
708:
705:
702:
699:
696:
693:
690:
687:
684:
681:
678:
675:
672:
669:
666:
663:
660:
657:
654:
651:
648:
645:
642:
639:
636:
633:
630:
627:
624:
621:
618:
615:
612:
609:
606:
603:
600:
597:
594:
591:
588:
585:
582:
579:
576:
573:
570:
567:
564:
561:
558:
555:
552:
549:
546:
543:
540:
537:
534:
531:
528:
525:
522:
519:
516:
513:
510:
507:
477:
476:
471:
468:
465:
462:
459:
451:
447:
441:
439:
436:
435:
430:
402:
401:
396:
393:
390:
387:
384:
377:
374:
370:
364:
362:
358:
355:
354:
349:
343:
337:
333:
330:
325:
322:
316:
311:
308:
302:
297:
294:
288:
284:
281:
276:
273:
262:, then example
256:
247:
237:as sources of "
198:(32, 64 or 128
192:
61:First published
41:
24:
17:
12:
11:
5:
3867:
3857:
3856:
3851:
3834:
3833:
3830:
3829:
3827:
3826:
3815:
3812:
3811:
3809:
3808:
3803:
3801:Random numbers
3798:
3793:
3788:
3783:
3778:
3773:
3768:
3763:
3758:
3753:
3747:
3745:
3741:
3740:
3738:
3737:
3732:
3727:
3725:Garlic routing
3722:
3717:
3712:
3707:
3702:
3697:
3692:
3687:
3682:
3677:
3672:
3667:
3662:
3657:
3652:
3647:
3645:Secure channel
3642:
3636:
3635:
3634:
3623:
3618:
3613:
3608:
3606:Key stretching
3603:
3598:
3593:
3588:
3583:
3578:
3573:
3572:
3571:
3566:
3556:
3554:Cryptovirology
3551:
3546:
3541:
3539:Cryptocurrency
3536:
3531:
3526:
3525:
3524:
3514:
3509:
3503:
3501:
3497:
3496:
3489:
3488:
3481:
3474:
3466:
3459:
3458:
3455:
3454:
3451:
3450:
3448:
3447:
3442:
3437:
3431:
3429:
3425:
3424:
3422:
3421:
3416:
3411:
3406:
3401:
3395:
3393:
3389:
3388:
3386:
3385:
3380:
3375:
3370:
3365:
3360:
3355:
3350:
3345:
3340:
3335:
3330:
3329:
3328:
3323:
3318:
3313:
3308:
3298:
3293:
3288:
3283:
3275:
3270:
3265:
3258:Distinguishing
3255:
3250:
3249:
3248:
3243:
3238:
3228:
3218:
3217:
3216:
3211:
3201:
3190:
3188:
3178:
3177:
3175:
3174:
3164:
3159:
3154:
3149:
3144:
3139:
3134:
3129:
3124:
3122:Product cipher
3119:
3114:
3109:
3103:
3101:
3097:
3096:
3094:
3093:
3088:
3083:
3078:
3073:
3068:
3063:
3058:
3053:
3048:
3043:
3038:
3033:
3028:
3023:
3018:
3013:
3008:
3003:
2998:
2993:
2988:
2983:
2978:
2973:
2968:
2963:
2958:
2953:
2948:
2943:
2938:
2933:
2928:
2923:
2918:
2913:
2908:
2903:
2898:
2893:
2888:
2877:
2872:
2867:
2862:
2857:
2852:
2847:
2842:
2837:
2832:
2827:
2822:
2817:
2812:
2807:
2802:
2797:
2792:
2787:
2782:
2777:
2772:
2767:
2762:
2757:
2752:
2750:Cryptomeria/C2
2747:
2742:
2737:
2732:
2727:
2722:
2717:
2712:
2707:
2702:
2697:
2692:
2687:
2682:
2677:
2672:
2667:
2662:
2657:
2651:
2649:
2643:
2642:
2640:
2639:
2634:
2629:
2624:
2619:
2614:
2609:
2604:
2599:
2594:
2589:
2584:
2578:
2576:
2570:
2569:
2567:
2566:
2561:
2556:
2551:
2537:
2532:
2526:
2524:
2518:
2517:
2505:
2504:
2497:
2490:
2482:
2468:
2467:
2462:
2457:
2452:
2447:
2440:
2439:External links
2437:
2434:
2433:
2412:
2397:
2368:
2357:
2329:
2311:
2275:
2251:Biryukov, Alex
2238:
2237:
2235:
2232:
2231:
2230:
2225:
2218:
2215:
2175:
2172:
1938:
1790:
1784:
1781:
1547:
1399:
1397:
1396:
1383:
1380:
894:
506:
504:
503:
502:
501:
494:
487:
474:
473:
466:
460:
433:
432:
428:
427:
426:
419:
412:
399:
398:
391:
385:
375:
360:
352:
351:
347:
341:
335:
331:
328:
323:
320:
314:
309:
306:
300:
295:
292:
286:
282:
279:
274:
255:
252:
246:
243:
217:additions and
191:
188:
143:
142:
134:
133:
126:
125:
122:
116:
115:
109:
105:
104:
101:
95:
94:
91:
85:
84:
80:
79:
70:
66:
65:
62:
58:
57:
52:
48:
47:
43:
42:
39:
15:
9:
6:
4:
3:
2:
3866:
3855:
3852:
3850:
3849:Block ciphers
3847:
3846:
3844:
3825:
3817:
3816:
3813:
3807:
3806:Steganography
3804:
3802:
3799:
3797:
3794:
3792:
3789:
3787:
3784:
3782:
3779:
3777:
3774:
3772:
3769:
3767:
3764:
3762:
3761:Stream cipher
3759:
3757:
3754:
3752:
3749:
3748:
3746:
3742:
3736:
3733:
3731:
3728:
3726:
3723:
3721:
3720:Onion routing
3718:
3716:
3713:
3711:
3708:
3706:
3703:
3701:
3700:Shared secret
3698:
3696:
3693:
3691:
3688:
3686:
3683:
3681:
3678:
3676:
3673:
3671:
3668:
3666:
3663:
3661:
3658:
3656:
3653:
3651:
3648:
3646:
3643:
3640:
3637:
3632:
3629:
3628:
3627:
3624:
3622:
3619:
3617:
3614:
3612:
3609:
3607:
3604:
3602:
3599:
3597:
3596:Key generator
3594:
3592:
3589:
3587:
3584:
3582:
3579:
3577:
3574:
3570:
3567:
3565:
3562:
3561:
3560:
3559:Hash function
3557:
3555:
3552:
3550:
3547:
3545:
3542:
3540:
3537:
3535:
3534:Cryptanalysis
3532:
3530:
3527:
3523:
3520:
3519:
3518:
3515:
3513:
3510:
3508:
3505:
3504:
3502:
3498:
3494:
3487:
3482:
3480:
3475:
3473:
3468:
3467:
3464:
3460:
3446:
3443:
3441:
3438:
3436:
3433:
3432:
3430:
3426:
3420:
3417:
3415:
3412:
3410:
3407:
3405:
3402:
3400:
3397:
3396:
3394:
3390:
3384:
3381:
3379:
3376:
3374:
3371:
3369:
3366:
3364:
3361:
3359:
3356:
3354:
3351:
3349:
3346:
3344:
3341:
3339:
3338:Interpolation
3336:
3334:
3331:
3327:
3324:
3322:
3319:
3317:
3314:
3312:
3309:
3307:
3304:
3303:
3302:
3299:
3297:
3294:
3292:
3289:
3287:
3284:
3282:
3281:
3276:
3274:
3271:
3269:
3266:
3263:
3259:
3256:
3254:
3251:
3247:
3244:
3242:
3239:
3237:
3234:
3233:
3232:
3229:
3226:
3222:
3219:
3215:
3212:
3210:
3207:
3206:
3205:
3202:
3199:
3195:
3192:
3191:
3189:
3186:
3185:cryptanalysis
3179:
3172:
3168:
3167:Key whitening
3165:
3163:
3160:
3158:
3155:
3153:
3150:
3148:
3145:
3143:
3140:
3138:
3135:
3133:
3130:
3128:
3125:
3123:
3120:
3118:
3115:
3113:
3110:
3108:
3105:
3104:
3102:
3098:
3092:
3089:
3087:
3084:
3082:
3079:
3077:
3074:
3072:
3069:
3067:
3064:
3062:
3059:
3057:
3054:
3052:
3049:
3047:
3044:
3042:
3039:
3037:
3034:
3032:
3029:
3027:
3024:
3022:
3019:
3017:
3014:
3012:
3009:
3007:
3004:
3002:
2999:
2997:
2994:
2992:
2989:
2987:
2984:
2982:
2979:
2977:
2974:
2972:
2969:
2967:
2964:
2962:
2959:
2957:
2956:New Data Seal
2954:
2952:
2949:
2947:
2944:
2942:
2939:
2937:
2934:
2932:
2929:
2927:
2924:
2922:
2919:
2917:
2914:
2912:
2909:
2907:
2904:
2902:
2899:
2897:
2894:
2892:
2889:
2886:
2882:
2878:
2876:
2873:
2871:
2868:
2866:
2863:
2861:
2858:
2856:
2853:
2851:
2848:
2846:
2843:
2841:
2838:
2836:
2833:
2831:
2828:
2826:
2823:
2821:
2818:
2816:
2813:
2811:
2808:
2806:
2803:
2801:
2798:
2796:
2793:
2791:
2788:
2786:
2783:
2781:
2778:
2776:
2773:
2771:
2768:
2766:
2763:
2761:
2758:
2756:
2753:
2751:
2748:
2746:
2743:
2741:
2738:
2736:
2733:
2731:
2728:
2726:
2723:
2721:
2718:
2716:
2713:
2711:
2708:
2706:
2703:
2701:
2698:
2696:
2695:BEAR and LION
2693:
2691:
2688:
2686:
2683:
2681:
2678:
2676:
2673:
2671:
2668:
2666:
2663:
2661:
2658:
2656:
2653:
2652:
2650:
2644:
2638:
2635:
2633:
2630:
2628:
2625:
2623:
2620:
2618:
2615:
2613:
2610:
2608:
2605:
2603:
2600:
2598:
2595:
2593:
2590:
2588:
2585:
2583:
2580:
2579:
2577:
2571:
2565:
2562:
2560:
2557:
2555:
2552:
2549:
2545:
2541:
2538:
2536:
2533:
2531:
2528:
2527:
2525:
2519:
2514:
2510:
2509:Block ciphers
2503:
2498:
2496:
2491:
2489:
2484:
2483:
2480:
2476:
2472:
2466:
2463:
2461:
2458:
2456:
2453:
2451:
2448:
2446:
2443:
2442:
2422:
2416:
2408:
2401:
2386:
2382:
2378:
2372:
2366:
2361:
2346:
2342:
2336:
2334:
2327:
2323:
2320:
2315:
2301:on 2007-04-17
2297:
2293:
2286:
2279:
2270:
2265:
2258:
2257:
2252:
2246:
2244:
2239:
2229:
2226:
2224:
2221:
2220:
2214:
2212:
2207:
2203:
2199:
2196:
2192:
2188:
2183:
2181:
2174:Cryptanalysis
1936:
1788:
1545:
1394:
1390:
1389:
1388:
892:
499:
495:
492:
488:
485:
481:
480:
457:
440:Odd((𝜙 − 1)
429:
424:
420:
417:
413:
410:
406:
405:
382:
348:
342:
329:
321:
315:
307:
301:
293:
280:
272:
271:
270:
267:
265:
261:
254:Key expansion
251:
242:
240:
236:
232:
228:
224:
220:
216:
212:
207:
205:
201:
197:
187:
185:
181:
177:
173:
169:
165:
164:Ronald Rivest
161:
158:
157:symmetric-key
154:
150:
140:
135:
132:
131:cryptanalysis
127:
123:
121:
117:
114:-like network
113:
110:
106:
102:
100:
96:
92:
90:
86:
83:Cipher detail
81:
78:
74:
71:
67:
63:
59:
56:
53:
49:
44:
35:
30:
22:
3756:Block cipher
3601:Key schedule
3591:Key exchange
3581:Kleptography
3544:Cryptosystem
3493:Cryptography
3343:Partitioning
3301:Side-channel
3279:
3246:Higher-order
3231:Differential
3112:Key schedule
2611:
2424:. Retrieved
2415:
2400:
2389:. Retrieved
2371:
2360:
2348:. Retrieved
2344:
2314:
2303:. Retrieved
2296:the original
2291:
2278:
2255:
2202:RSA Security
2200:
2195:brute-forced
2184:
2177:
1934:
1876:>>>
1840:>>>
1786:
1543:
1512:<<<
1476:<<<
1385:
890:
814:<<<
775:<<<
601:<<<
497:
490:
486:= 16: 0x9E37
483:
456:golden ratio
422:
415:
411:= 16: 0xB7E1
408:
268:
257:
248:
235:golden ratio
208:
193:
167:
160:block cipher
152:
149:cryptography
146:
129:Best public
16:Block cipher
3744:Mathematics
3735:Mix network
3428:Utilization
3414:NSA Suite B
3399:AES process
3348:Rubber-hose
3286:Related-key
3194:Brute-force
2573:Less common
2426:15 December
2350:14 December
2206:ciphertexts
1943:RC5_DECRYPT
1552:RC5_ENCRYPT
511:# u = w / 8
190:Description
99:Block sizes
3843:Categories
3695:Ciphertext
3665:Decryption
3660:Encryption
3621:Ransomware
3378:Chi-square
3296:Rotational
3236:Impossible
3157:Block size
3051:Spectr-H64
2875:Ladder-DES
2870:Kuznyechik
2815:Hierocrypt
2685:BassOmatic
2648:algorithms
2575:algorithms
2548:Triple DES
2523:algorithms
2391:2024-01-24
2305:2004-12-18
2234:References
1783:Decryption
1382:Encryption
886:# return S
260:pseudocode
196:block size
69:Successors
55:Ron Rivest
3685:Plaintext
3353:Black-bag
3273:Boomerang
3262:Known-key
3241:Truncated
3066:Threefish
3061:SXAL/MBAL
2951:MultiSwap
2906:MacGuffin
2865:KN-Cipher
2805:Grand Cru
2760:CS-Cipher
2740:COCONUT98
1393:plaintext
899:RC5_SETUP
245:Algorithm
166:in 1994,
108:Structure
89:Key sizes
51:Designers
3824:Category
3730:Kademlia
3690:Codetext
3633:(CSPRNG)
3404:CRYPTREC
3368:Weak key
3321:Acoustic
3162:Key size
3006:Red Pike
2825:IDEA NXT
2705:Chiasmus
2700:CAST-256
2680:BaseKing
2665:Akelarre
2660:Adiantum
2627:Skipjack
2592:CAST-128
2587:Camellia
2535:Blowfish
2385:Archived
2322:Archived
2228:Red Pike
2217:See also
1055:<<
905:unsigned
446:, where
369:, where
233:and the
204:key size
77:Akelarre
3500:General
3445:Padding
3363:Rebound
3071:Treyfer
3021:SAVILLE
2981:PRESENT
2971:NOEKEON
2916:MAGENTA
2911:Madryga
2891:Lucifer
2755:CRYPTON
2564:Twofish
2554:Serpent
2223:Madryga
520:ceiling
454:is the
379:is the
223:Feistel
215:modular
178:). The
112:Feistel
46:General
3611:Keygen
3409:NESSIE
3358:Davies
3306:Timing
3221:Linear
3181:Attack
3100:Design
3091:Zodiac
3056:Square
3031:SHACAL
3026:SC2000
2986:Prince
2966:Nimbus
2961:NewDES
2946:MULTI2
2936:MISTY1
2879:LOKI (
2855:KHAZAD
2850:KeeLoq
2845:KASUMI
2840:Kalyna
2725:CLEFIA
2710:CIKS-1
2670:Anubis
2521:Common
1921:return
1530:return
458:, and
383:, and
264:C code
120:Rounds
3641:(PRN)
3291:Slide
3147:Round
3132:P-box
3127:S-box
3086:XXTEA
3046:Speck
3041:Simon
3036:SHARK
3016:SAFER
3001:REDOC
2926:Mercy
2885:89/91
2835:Iraqi
2800:G-DES
2790:FEA-M
2770:DES-X
2735:Cobra
2690:BATON
2675:Ascon
2655:3-Way
2646:Other
2299:(PDF)
2288:(PDF)
2260:(PDF)
1651:<=
736:times
363:− 2)
359:Odd((
155:is a
3419:CNSA
3278:Mod
3204:MITM
2976:NUSH
2931:MESH
2921:MARS
2795:FROG
2785:FEAL
2765:DEAL
2745:Crab
2730:CMEA
2637:XTEA
2622:SEED
2602:IDEA
2597:GOST
2582:ARIA
2428:2019
2352:2019
2096:ROTR
2057:ROTR
2030:>
1976:WORD
1961:WORD
1949:WORD
1940:void
1804:down
1717:ROTL
1678:ROTL
1585:WORD
1570:WORD
1558:WORD
1549:void
1331:ROTL
1286:ROTL
1187:<
1106:<
932:WORD
908:char
896:void
574:down
496:For
489:For
482:For
421:For
414:For
407:For
334:= 2(
200:bits
174:and
64:1994
21:RC-5
3373:Tau
3333:XSL
3137:SPN
3081:xmx
3076:UES
3011:S-1
2996:RC2
2941:MMB
2820:ICE
2775:DFC
2632:TEA
2617:RC6
2612:RC5
2607:LEA
2559:SM4
2540:DES
2530:AES
2264:doi
2009:for
1792:for
1630:for
1431:for
1370:));
1142:for
1073:for
989:for
718:max
673:Q_w
631:for
628:P_w
556:for
526:max
448:Odd
371:Odd
338:+1)
202:),
184:RC6
176:RC4
172:RC2
153:RC5
147:In
73:RC6
27:RC5
3845::
2901:M8
2896:M6
2883:,
2881:97
2780:E2
2546:,
2343:.
2332:^
2290:.
2242:^
2150:pt
2132:pt
2042:--
2003:ct
1991:ct
1967:pt
1955:ct
1861:((
1825:((
1813:do
1807:to
1765:ct
1753:ct
1663:++
1618:pt
1600:pt
1576:ct
1564:pt
1497:((
1461:((
1449:do
1443:to
1355:),
1316:);
1310:),
1205:++
1118:++
1037:--
1028:-1
1025:!=
1004:-1
709:do
655:do
643:to
583:do
577:to
452:𝜙
444:2)
442:×
367:2)
365:×
289:/8
285:=
168:RC
151:,
75:,
3485:e
3478:t
3471:v
3280:n
3264:)
3260:(
3227:)
3223:(
3200:)
3196:(
3187:)
3183:(
3173:)
3169:(
2991:Q
2887:)
2550:)
2542:(
2515:)
2511:(
2501:e
2494:t
2487:v
2430:.
2394:.
2354:.
2308:.
2272:.
2266::
2168:}
2165:;
2162:S
2159:-
2156:A
2153:=
2147:;
2144:S
2141:-
2138:B
2135:=
2129:}
2126:;
2123:B
2120:^
2117:)
2114:B
2111:,
2108:S
2105:-
2102:A
2099:(
2093:=
2090:A
2087:;
2084:A
2081:^
2078:)
2075:A
2072:,
2069:S
2066:-
2063:B
2060:(
2054:=
2051:B
2048:{
2045:)
2039:i
2036:;
2033:0
2027:i
2024:;
2021:r
2018:=
2015:i
2012:(
2006:;
2000:=
1997:A
1994:,
1988:=
1985:B
1982:,
1979:i
1973:{
1970:)
1964:*
1958:,
1952:*
1946:(
1930:B
1927:,
1924:A
1918:S
1915:-
1912:A
1909:=
1906:A
1903:S
1900:-
1897:B
1894:=
1891:B
1888:B
1885:^
1882:)
1879:B
1873:)
1870:S
1867:-
1864:A
1858:=
1855:A
1852:A
1849:^
1846:)
1843:A
1837:)
1834:S
1831:-
1828:B
1822:=
1819:B
1816::
1810:1
1801:r
1798:=
1795:i
1777:}
1774:;
1771:B
1768:=
1762:;
1759:A
1756:=
1750:}
1747:;
1744:S
1741:+
1738:)
1735:A
1732:,
1729:A
1726:^
1723:B
1720:(
1714:=
1711:B
1708:;
1705:S
1702:+
1699:)
1696:B
1693:,
1690:B
1687:^
1684:A
1681:(
1675:=
1672:A
1669:{
1666:)
1660:i
1657:;
1654:r
1648:i
1645:;
1642:1
1639:=
1636:i
1633:(
1627:;
1624:S
1621:+
1615:=
1612:B
1609:,
1606:S
1603:+
1597:=
1594:A
1591:,
1588:i
1582:{
1579:)
1573:*
1567:,
1561:*
1555:(
1539:B
1536:,
1533:A
1524:S
1521:+
1518:)
1515:A
1509:)
1506:A
1503:^
1500:B
1494:=
1491:B
1488:S
1485:+
1482:)
1479:B
1473:)
1470:B
1467:^
1464:A
1458:=
1455:A
1452::
1446:r
1440:1
1437:=
1434:i
1428:S
1425:+
1422:B
1419:=
1416:B
1413:S
1410:+
1407:A
1404:=
1401:A
1376:}
1373:}
1367:B
1364:+
1361:A
1358:(
1352:B
1349:+
1346:A
1343:(
1340:+
1337:L
1334:(
1328:=
1325:L
1322:=
1319:B
1313:3
1307:B
1304:+
1301:A
1298:(
1295:+
1292:S
1289:(
1283:=
1280:S
1277:=
1274:A
1271:{
1268:)
1265:c
1262:%
1259:)
1256:1
1253:+
1250:j
1247:(
1244:=
1241:j
1238:,
1235:t
1232:%
1229:)
1226:1
1223:+
1220:i
1217:(
1214:=
1211:i
1208:,
1202:k
1199:;
1196:t
1193:*
1190:3
1184:k
1181:;
1178:0
1175:=
1172:k
1169:=
1166:j
1163:=
1160:i
1157:=
1154:B
1151:=
1148:A
1145:(
1139:;
1136:Q
1133:+
1130:S
1127:=
1124:S
1121:)
1115:i
1112:;
1109:t
1103:i
1100:;
1097:1
1094:=
1091:i
1088:,
1085:P
1082:=
1079:S
1076:(
1070:;
1067:K
1064:+
1061:)
1058:8
1052:L
1049:(
1046:=
1043:L
1040:)
1034:i
1031:;
1022:i
1019:;
1016:0
1013:=
1010:L
1007:,
1001:b
998:=
995:i
992:(
986:;
983:L
980:,
977:B
974:,
971:A
968:,
965:8
962:/
959:w
956:=
953:u
950:,
947:k
944:,
941:j
938:,
935:i
920:{
917:)
914:K
911:*
902:(
883:c
880:%
877:)
874:1
871:+
868:j
865:(
862:=
859:j
856:t
853:%
850:)
847:1
844:+
841:i
838:(
835:=
832:i
829:)
826:B
823:+
820:A
817:(
811:)
808:B
805:+
802:A
799:+
796:L
793:(
790:=
787:L
784:=
781:B
778:3
772:)
769:B
766:+
763:A
760:+
757:S
754:(
751:=
748:S
745:=
742:A
739::
733:)
730:c
727:,
724:t
721:(
715:*
712:3
706:0
703:=
700:B
697:=
694:A
691:0
688:=
685:j
682:=
679:i
670:+
667:S
664:=
661:S
658::
652:1
649:-
646:t
640:1
637:=
634:i
625:=
622:S
613:K
610:+
607:)
604:8
598:L
595:(
592:=
589:L
586::
580:0
571:1
568:-
565:b
562:=
559:i
550:)
547:u
544:/
541:)
538:1
535:,
532:b
529:(
523:(
517:=
514:c
498:w
491:w
484:w
475:w
472:Q
467:w
461:w
434:w
431:Q
423:w
416:w
409:w
400:w
397:P
392:w
386:w
376:e
361:e
353:w
350:P
344:S
336:r
332:t
324:r
317:L
310:c
303:K
296:b
287:w
283:u
275:w
231:e
23:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.