2272:
170:
For example, suppose a network server is designed to be able to handle up to a million requests at once. It keeps track of incoming requests in a hash table with two million entries, using a hash function to map identifying information from each request to one of the two million possible table
748:
SipHash designer here, haven't changed my opinion about SipHash-1-3 :-) There's a "distinguisher" on 4 rounds, or in simplest terms a statistical bias that shows up given a specific difference pattern in the input of the 4-round sequence. But you can't inject that pattern in SipHash-1-3
205:
is the number of finalization rounds. The recommended parameters are SipHash-2-4 for best performance, and SipHash-4-8 for conservative security. A few languages use
Siphash-1-3 for performance at the risk of yet-unknown DoS attacks.
697:
Intellectual property: We aren't aware of any patents or patent applications relevant to SipHash, and we aren't planning to apply for any. The reference code of SipHash is released under CC0 license, a public domain-like
171:
entries. An attacker who knows the hash function need only feed it arbitrary inputs; one out of two million will have a specific hash value. If the attacker now sends a few hundred requests all chosen to have the
148:
from a variable-length message and 128-bit secret key. It was designed to be efficient even for short inputs, with performance comparable to non-cryptographic hash functions, such as
167:
output, such as an index into a hash table of practical size, then no algorithm can prevent collisions; an attacker need only make as many attempts as there are possible outputs.
182:
By using a key unknown to the attacker, a keyed hash function like SipHash prevents this sort of attack. While it is possible to add a key to an unkeyed hash function (
2252:
2082:
175:
hash value to the server, that will produce a large number of hash collisions, slowing (or possibly stopping) the server with an effect similar to a
431:
2305:
1935:
1855:
1243:
733:"Comment on: change Siphash to use one of the faster variants of the algorithm (Siphash13, Highwayhash) · Issue #29754 · rust-lang/rust"
631:
The recently proposed SipHash offers a good balance as it provides collision resistance and comparable performance to non-crypto hashes
2300:
1272:
648:
2310:
1011:
1130:
572:
1871:
522:
176:
749:
because you don't control all the state. And even if you could inject that pattern the bias wouldn't be exploitable anyway.
1075:
1632:
1118:
1799:
503:
Dobraunig, Christoph; Mendel, Florian; Schläffer, Martin (29 November 2014). "Differential
Cryptanalysis of SipHash".
163:
An unkeyed hash function such as SHA is collision-resistant only if the entire output is used. If used to generate a
1928:
609:
977:
932:
1236:
45:
2131:
1840:
1325:
1277:
1627:
285:
762:
1921:
1845:
308:
49:
2247:
2202:
2015:
1614:
1256:
1252:
982:
681:
479:
469:
302:
296:
291:
145:
57:
732:
2126:
1229:
963:"Feature #13017: Switch SipHash from SipHash24 to SipHash13 - Ruby master - Ruby Issue Tracking System"
377:
2242:
1510:
1193:
371:
1315:
2232:
2222:
2077:
1850:
1686:
1385:
1380:
210:
38:
1041:
865:
2227:
2217:
2020:
1980:
1973:
1963:
1958:
1773:
1593:
1095:
590:
So, Won; Narayanan, Ashok; Oran, David; Stapp, Mark (2013). "Named data networking on a router".
35:
23:
1968:
1881:
1267:
824:
484:
260:
214:
53:
819:
711:
2275:
2121:
2067:
1896:
1546:
1500:
1390:
1348:
1333:
27:
661:
2237:
2161:
1566:
1470:
1420:
1395:
1061:
240:
8:
2000:
1891:
1768:
1717:
1656:
1556:
1475:
1435:
1415:
644:
549:
421:
68:). That is, SHA is designed so that it is difficult for an attacker to find two messages
31:
2106:
2090:
2037:
1825:
1809:
1758:
1343:
1201:
1007:
717:
615:
1191:
48:. Although it can be used to ensure security, SipHash is fundamentally different from
2166:
2156:
2027:
1702:
1181:
605:
591:
518:
2101:
1789:
1743:
1505:
619:
597:
510:
317:
142:
1804:
1753:
1748:
1536:
1251:
1027:
911:
514:
2176:
2096:
2057:
2005:
1990:
1794:
1522:
157:
1169:
2294:
2257:
2212:
2171:
2151:
2047:
2010:
1985:
1886:
1763:
1131:"Bbloom/SipHash.go at 73e3f896a4f8bbed8589df6ff5c28ebfbd728e31 · ipfs/Bbloom"
474:
1465:
891:
788:
601:
2207:
2052:
2042:
2032:
1995:
1944:
463:
436:
381:
279:
962:
2186:
1876:
1722:
1651:
1647:
1192:
Jean-Philippe
Aumasson; Daniel J. Bernstein; Martin Boßlet (2012-12-29).
1179:
1167:
1152:
547:
426:
845:
400:
2146:
2116:
2111:
2072:
509:. Lecture Notes in Computer Science. Vol. 8781. pp. 165–182.
441:
411:
250:
231:
153:
446:
2136:
1551:
1430:
406:
349:
1338:
416:
403:(Wassenberg & Alakuijala 2017, part of their "highwayhash" work)
2181:
2141:
1830:
1727:
1712:
1707:
1697:
1661:
1581:
1495:
1375:
1154:
933:"Implement SipHash, use as our hashing function w/ 64-bit hashvals"
553:
504:
394:
149:
451:
1622:
1400:
1016:
793:
766:
361:
344:
339:
334:
327:
255:
245:
152:; this can be used to prevent denial-of-service attacks against
2062:
1835:
1576:
1571:
1541:
1531:
1490:
1485:
1480:
1460:
1455:
1425:
1410:
1370:
1159:
1135:
1080:
1046:
993:
948:
937:
916:
804:
1012:"shared: switch our hash table implementation over to SipHash"
685:
657:
160:. A variant was later added which produces a 128-bit result.
1561:
1450:
1405:
1353:
1310:
1305:
1299:
368:
322:
270:
761:
Aumasson, Jean-Philippe; Bernstein, Daniel J. (2016-08-01).
1676:
1671:
1642:
1637:
1601:
1076:"Use siphash for hashtables · WireGuard/Wg-dynamic@360b9c8"
275:
183:
65:
1180:
Jean-Philippe
Aumasson; Daniel J. Bernstein (2012-08-15).
1168:
Jean-Philippe
Aumasson; Daniel J. Bernstein (2012-09-18).
1153:
Jean-Philippe
Aumasson; Daniel J. Bernstein (2016-08-01).
573:"Hash Table Vulnerability Enables Wide-Scale DDoS Attacks"
1445:
1440:
1293:
593:
Proceedings of the ACM SIGCOMM 2013 conference on SIGCOMM
218:
186:
is a popular technique), SipHash is much more efficient.
1182:"SipHash: a fast short-input PRF – Presentation slides"
642:
2083:
Cryptographically secure pseudorandom number generator
892:"PEP 456 – Secure and interchangeable hash algorithm"
658:
Application
Security Forum – Western Switzerland 2012
189:
Functions in SipHash family are specified as SipHash-
64:
hash-function-like hash message authentication code (
1213:
713:
Denial of
Service via Algorithmic Complexity Attacks
789:"build: enable v8's SipHash for hash seed creation"
1194:"Hash-flooding DoS reloaded: attacks and defenses"
1062:"[base] Index of /Head/Sys/Crypto/Siphash"
1042:"SRC/Sys/Crypto/Siphash.h at master · openbsd/SRC"
357:The following programs use SipHash in other ways:
1210:– describes when SipHash is not fast enough
760:
288:(starting in version 3.4, SipHash 1-3 since 3.11)
88:). SipHash instead guarantees that, having seen
2292:
1155:"SipHash: a fast short-input PRF – Project Page"
866:"Perl security – Algorithmic Complexity Attacks"
820:"Optionally use halfsiphash for integer hashing"
731:Aumasson, Jean-Philippe (veorq) (Nov 12, 2015).
710:Crosby, Scott A.; Wallach, Dan S. (2003-08-06).
650:Hash-flooding DoS reloaded: attacks and defenses
201:is the number of rounds per message block and
1929:
1237:
709:
502:
1936:
1922:
1244:
1230:
1006:
676:
674:
506:Selected Areas in Cryptography -- SAC 2014
106:), an attacker who does not know the key
975:
763:"SipHash: a fast short-input PRF, Users"
730:
397:(Public domain reference implementation)
2306:Public-domain software with source code
671:
543:
541:
56:(SHA) in that it is only suitable as a
2293:
889:
570:
156:("hash flooding"), or to authenticate
84:), even though anyone may compute SHA(
30:created by Jean-Philippe Aumasson and
1917:
1225:
930:
786:
538:
263:(available as a compile-time option)
110:cannot find (any information about)
817:
133:} which they have not seen before.
34:in 2012, in response to a spate of
13:
978:"std: use siphash-1-3 for HashMap"
14:
2322:
2301:Hash function (non-cryptographic)
1170:"SipHash: a fast short-input PRF"
1146:
682:"SipHash: a fast short-input PRF"
554:"SipHash: a fast short-input PRF"
2271:
2270:
1943:
890:Heimes, Christian (2013-09-27).
589:
2311:Creative Commons-licensed works
1123:
1112:
1088:
1068:
1054:
1034:
1000:
969:
955:
924:
904:
883:
858:
838:
811:
780:
647:; Boßlet, Martin (2012-11-08).
46:non-cryptographic hash function
2132:Information-theoretic security
1841:NIST hash function competition
931:McVey, Samantha (2018-07-16).
912:"Moving to SipHash-1-3 #73596"
754:
724:
703:
636:
583:
564:
496:
1:
976:McArthur, Sean (2016-06-30).
548:Jean-Philippe Aumasson &
490:
466:(application for fast hashes)
1846:Password Hashing Competition
1257:message authentication codes
1253:Cryptographic hash functions
684:. 2016-08-01. Archived from
515:10.1007/978-3-319-13051-4_10
50:cryptographic hash functions
7:
2248:Message authentication code
2203:Cryptographic hash function
2016:Cryptographic hash function
1800:Merkle–Damgård construction
571:Lennon, Mike (2011-12-28).
480:Message authentication code
470:Cryptographic hash function
457:
146:message authentication code
136:
58:message authentication code
10:
2327:
2127:Harvest now, decrypt later
378:InterPlanetary File System
179:of many million requests.
2266:
2243:Post-quantum cryptography
2195:
1951:
1913:
1864:
1818:
1782:
1736:
1685:
1613:
1590:
1519:
1363:
1324:
1286:
1263:
1221:
1217:
1206:The Rust Performance Book
718:Usenix Security Symposium
643:Aumasson, Jean-Philippe;
558:Cryptology ePrint Archive
364:for short transaction IDs
44:SipHash is designed as a
39:denial-of-service attacks
2233:Quantum key distribution
2223:Authenticated encryption
2078:Random number generation
1594:key derivation functions
846:"OCaml Library: Hashtbl"
818:Guo, Yang (2019-01-09).
787:Vagg, Rod (2019-02-28).
224:
211:reference implementation
41:(HashDoS) in late 2011.
2228:Public-key cryptography
2218:Symmetric-key algorithm
2021:Key derivation function
1981:Cryptographic primitive
1974:Authentication protocol
1964:Outline of cryptography
1959:History of cryptography
1872:Hash-based cryptography
1774:Length extension attack
1119:bslh_siphashalgorithm.h
602:10.1145/2486001.2491699
1969:Cryptographic protocol
1882:Message authentication
485:List of hash functions
261:V8 (JavaScript engine)
215:public domain software
54:Secure Hash Algorithms
28:pseudorandom functions
26:(ARX) based family of
2122:End-to-end encryption
2068:Cryptojacking malware
1096:"Compact Block Relay"
380:(IPFS) for its seven
241:Programming languages
236:of various software:
2238:Quantum cryptography
2162:Trusted timestamping
645:Bernstein, Daniel J.
596:. pp. 495–496.
2001:Cryptographic nonce
1769:Side-channel attack
1008:Poettering, Lennart
550:Daniel J. Bernstein
367:Bloomberg BDE as a
229:SipHash is used in
141:SipHash computes a
32:Daniel J. Bernstein
2107:Subliminal channel
2091:Pseudorandom noise
2038:Key (cryptography)
1826:CAESAR Competition
1810:HAIFA construction
1759:Brute-force attack
720:. Washington, D.C.
278:5 (available as a
122:) for any message
2288:
2287:
2284:
2283:
2167:Key-based routing
2157:Trapdoor function
2028:Digital signature
1909:
1908:
1905:
1904:
1703:ChaCha20-Poly1305
1520:Password hashing/
524:978-3-319-13050-7
318:Operating systems
2318:
2274:
2273:
2102:Insecure channel
1938:
1931:
1924:
1915:
1914:
1790:Avalanche effect
1744:Collision attack
1287:Common functions
1246:
1239:
1232:
1223:
1222:
1219:
1218:
1215:
1214:
1209:
1197:
1188:
1186:
1176:
1174:
1164:
1141:
1140:
1127:
1121:
1116:
1110:
1109:
1107:
1106:
1092:
1086:
1085:
1072:
1066:
1065:
1058:
1052:
1051:
1038:
1032:
1031:
1025:
1024:
1004:
998:
997:
991:
990:
973:
967:
966:
959:
953:
952:
946:
945:
928:
922:
921:
908:
902:
901:
899:
898:
887:
881:
880:
878:
877:
862:
856:
855:
853:
852:
842:
836:
835:
833:
832:
815:
809:
808:
802:
801:
784:
778:
777:
775:
774:
765:. Archived from
758:
752:
751:
745:
743:
728:
722:
721:
707:
701:
700:
694:
693:
678:
669:
668:
666:
660:. Archived from
655:
640:
634:
633:
628:
626:
587:
581:
580:
568:
562:
561:
545:
536:
535:
533:
531:
500:
213:was released as
2326:
2325:
2321:
2320:
2319:
2317:
2316:
2315:
2291:
2290:
2289:
2280:
2262:
2191:
1947:
1942:
1901:
1860:
1819:Standardization
1814:
1805:Sponge function
1778:
1754:Birthday attack
1749:Preimage attack
1732:
1688:
1681:
1609:
1592:
1591:General purpose
1586:
1521:
1515:
1364:Other functions
1359:
1326:SHA-3 finalists
1320:
1282:
1259:
1250:
1200:
1184:
1172:
1149:
1144:
1129:
1128:
1124:
1117:
1113:
1104:
1102:
1094:
1093:
1089:
1074:
1073:
1069:
1060:
1059:
1055:
1040:
1039:
1035:
1028:freedesktop.org
1022:
1020:
1005:
1001:
988:
986:
974:
970:
961:
960:
956:
943:
941:
929:
925:
910:
909:
905:
896:
894:
888:
884:
875:
873:
870:Perldoc Browser
864:
863:
859:
850:
848:
844:
843:
839:
830:
828:
816:
812:
799:
797:
785:
781:
772:
770:
759:
755:
741:
739:
729:
725:
708:
704:
691:
689:
680:
679:
672:
664:
653:
641:
637:
624:
622:
612:
588:
584:
569:
565:
546:
539:
529:
527:
525:
501:
497:
493:
460:
389:Implementations
234:implementations
227:
158:network packets
139:
131:
100:
93:
36:"hash flooding"
17:
12:
11:
5:
2324:
2314:
2313:
2308:
2303:
2286:
2285:
2282:
2281:
2279:
2278:
2267:
2264:
2263:
2261:
2260:
2255:
2253:Random numbers
2250:
2245:
2240:
2235:
2230:
2225:
2220:
2215:
2210:
2205:
2199:
2197:
2193:
2192:
2190:
2189:
2184:
2179:
2177:Garlic routing
2174:
2169:
2164:
2159:
2154:
2149:
2144:
2139:
2134:
2129:
2124:
2119:
2114:
2109:
2104:
2099:
2097:Secure channel
2094:
2088:
2087:
2086:
2075:
2070:
2065:
2060:
2058:Key stretching
2055:
2050:
2045:
2040:
2035:
2030:
2025:
2024:
2023:
2018:
2008:
2006:Cryptovirology
2003:
1998:
1993:
1991:Cryptocurrency
1988:
1983:
1978:
1977:
1976:
1966:
1961:
1955:
1953:
1949:
1948:
1941:
1940:
1933:
1926:
1918:
1911:
1910:
1907:
1906:
1903:
1902:
1900:
1899:
1894:
1889:
1884:
1879:
1874:
1868:
1866:
1862:
1861:
1859:
1858:
1853:
1848:
1843:
1838:
1833:
1828:
1822:
1820:
1816:
1815:
1813:
1812:
1807:
1802:
1797:
1795:Hash collision
1792:
1786:
1784:
1780:
1779:
1777:
1776:
1771:
1766:
1761:
1756:
1751:
1746:
1740:
1738:
1734:
1733:
1731:
1730:
1725:
1720:
1715:
1710:
1705:
1700:
1694:
1692:
1683:
1682:
1680:
1679:
1674:
1669:
1664:
1659:
1654:
1645:
1640:
1635:
1630:
1625:
1619:
1617:
1611:
1610:
1608:
1607:
1604:
1598:
1596:
1588:
1587:
1585:
1584:
1579:
1574:
1569:
1564:
1559:
1554:
1549:
1544:
1539:
1534:
1528:
1526:
1523:key stretching
1517:
1516:
1514:
1513:
1508:
1503:
1498:
1493:
1488:
1483:
1478:
1473:
1468:
1463:
1458:
1453:
1448:
1443:
1438:
1433:
1428:
1423:
1418:
1413:
1408:
1403:
1398:
1393:
1388:
1383:
1378:
1373:
1367:
1365:
1361:
1360:
1358:
1357:
1351:
1346:
1341:
1336:
1330:
1328:
1322:
1321:
1319:
1318:
1313:
1308:
1303:
1297:
1290:
1288:
1284:
1283:
1281:
1280:
1275:
1270:
1264:
1261:
1260:
1249:
1248:
1241:
1234:
1226:
1212:
1211:
1198:
1189:
1177:
1165:
1148:
1147:External links
1145:
1143:
1142:
1122:
1111:
1087:
1067:
1053:
1033:
1010:(2013-12-22).
999:
968:
954:
923:
903:
882:
857:
837:
810:
779:
753:
723:
702:
670:
667:on 2013-09-13.
635:
610:
582:
563:
552:(2012-09-18).
537:
523:
494:
492:
489:
488:
487:
482:
477:
472:
467:
459:
456:
455:
454:
449:
444:
439:
434:
429:
424:
419:
414:
409:
404:
398:
386:
385:
375:
365:
355:
354:
353:
352:
347:
342:
337:
332:
331:
330:
314:
313:
312:
311:
306:
300:
294:
289:
283:
273:
268:
267:
266:
265:
264:
248:
226:
223:
138:
135:
129:
98:
91:
76:such that SHA(
24:add–rotate–xor
16:Hash functions
15:
9:
6:
4:
3:
2:
2323:
2312:
2309:
2307:
2304:
2302:
2299:
2298:
2296:
2277:
2269:
2268:
2265:
2259:
2258:Steganography
2256:
2254:
2251:
2249:
2246:
2244:
2241:
2239:
2236:
2234:
2231:
2229:
2226:
2224:
2221:
2219:
2216:
2214:
2213:Stream cipher
2211:
2209:
2206:
2204:
2201:
2200:
2198:
2194:
2188:
2185:
2183:
2180:
2178:
2175:
2173:
2172:Onion routing
2170:
2168:
2165:
2163:
2160:
2158:
2155:
2153:
2152:Shared secret
2150:
2148:
2145:
2143:
2140:
2138:
2135:
2133:
2130:
2128:
2125:
2123:
2120:
2118:
2115:
2113:
2110:
2108:
2105:
2103:
2100:
2098:
2095:
2092:
2089:
2084:
2081:
2080:
2079:
2076:
2074:
2071:
2069:
2066:
2064:
2061:
2059:
2056:
2054:
2051:
2049:
2048:Key generator
2046:
2044:
2041:
2039:
2036:
2034:
2031:
2029:
2026:
2022:
2019:
2017:
2014:
2013:
2012:
2011:Hash function
2009:
2007:
2004:
2002:
1999:
1997:
1994:
1992:
1989:
1987:
1986:Cryptanalysis
1984:
1982:
1979:
1975:
1972:
1971:
1970:
1967:
1965:
1962:
1960:
1957:
1956:
1954:
1950:
1946:
1939:
1934:
1932:
1927:
1925:
1920:
1919:
1916:
1912:
1898:
1895:
1893:
1890:
1888:
1887:Proof of work
1885:
1883:
1880:
1878:
1875:
1873:
1870:
1869:
1867:
1863:
1857:
1854:
1852:
1849:
1847:
1844:
1842:
1839:
1837:
1834:
1832:
1829:
1827:
1824:
1823:
1821:
1817:
1811:
1808:
1806:
1803:
1801:
1798:
1796:
1793:
1791:
1788:
1787:
1785:
1781:
1775:
1772:
1770:
1767:
1765:
1764:Rainbow table
1762:
1760:
1757:
1755:
1752:
1750:
1747:
1745:
1742:
1741:
1739:
1735:
1729:
1726:
1724:
1721:
1719:
1716:
1714:
1711:
1709:
1706:
1704:
1701:
1699:
1696:
1695:
1693:
1690:
1687:Authenticated
1684:
1678:
1675:
1673:
1670:
1668:
1665:
1663:
1660:
1658:
1655:
1653:
1649:
1646:
1644:
1641:
1639:
1636:
1634:
1631:
1629:
1626:
1624:
1621:
1620:
1618:
1616:
1615:MAC functions
1612:
1605:
1603:
1600:
1599:
1597:
1595:
1589:
1583:
1580:
1578:
1575:
1573:
1570:
1568:
1565:
1563:
1560:
1558:
1555:
1553:
1550:
1548:
1545:
1543:
1540:
1538:
1535:
1533:
1530:
1529:
1527:
1524:
1518:
1512:
1509:
1507:
1504:
1502:
1499:
1497:
1494:
1492:
1489:
1487:
1484:
1482:
1479:
1477:
1474:
1472:
1469:
1467:
1464:
1462:
1459:
1457:
1454:
1452:
1449:
1447:
1444:
1442:
1439:
1437:
1434:
1432:
1429:
1427:
1424:
1422:
1419:
1417:
1414:
1412:
1409:
1407:
1404:
1402:
1399:
1397:
1394:
1392:
1389:
1387:
1384:
1382:
1379:
1377:
1374:
1372:
1369:
1368:
1366:
1362:
1355:
1352:
1350:
1347:
1345:
1342:
1340:
1337:
1335:
1332:
1331:
1329:
1327:
1323:
1317:
1314:
1312:
1309:
1307:
1304:
1302:(compromised)
1301:
1298:
1296:(compromised)
1295:
1292:
1291:
1289:
1285:
1279:
1278:Known attacks
1276:
1274:
1271:
1269:
1266:
1265:
1262:
1258:
1254:
1247:
1242:
1240:
1235:
1233:
1228:
1227:
1224:
1220:
1216:
1207:
1203:
1199:
1195:
1190:
1183:
1178:
1171:
1166:
1162:
1161:
1156:
1151:
1150:
1138:
1137:
1132:
1126:
1120:
1115:
1101:
1097:
1091:
1083:
1082:
1077:
1071:
1063:
1057:
1049:
1048:
1043:
1037:
1029:
1019:
1018:
1013:
1009:
1003:
995:
985:
984:
979:
972:
964:
958:
950:
940:
939:
934:
927:
919:
918:
913:
907:
893:
886:
871:
867:
861:
847:
841:
827:
826:
821:
814:
806:
796:
795:
790:
783:
769:on 2017-02-02
768:
764:
757:
750:
738:
734:
727:
719:
715:
714:
706:
699:
688:on 2017-02-02
687:
683:
677:
675:
663:
659:
652:
651:
646:
639:
632:
621:
617:
613:
611:9781450320566
607:
603:
599:
595:
594:
586:
578:
574:
567:
559:
555:
551:
544:
542:
526:
520:
516:
512:
508:
507:
499:
495:
486:
483:
481:
478:
476:
475:Hash function
473:
471:
468:
465:
462:
461:
453:
450:
448:
445:
443:
440:
438:
435:
433:
430:
428:
425:
423:
420:
418:
415:
413:
410:
408:
405:
402:
399:
396:
393:
392:
391:
390:
383:
379:
376:
373:
370:
366:
363:
360:
359:
358:
351:
348:
346:
343:
341:
338:
336:
333:
329:
326:
325:
324:
321:
320:
319:
316:
315:
310:
307:
305:(SipHash 1-3)
304:
301:
299:(SipHash 1-3)
298:
295:
293:
290:
287:
284:
281:
277:
274:
272:
269:
262:
259:
258:
257:
254:
253:
252:
249:
247:
244:
243:
242:
239:
238:
237:
235:
233:
222:
220:
216:
212:
207:
204:
200:
196:
192:
187:
185:
180:
178:
174:
168:
166:
161:
159:
155:
151:
147:
144:
134:
132:
125:
121:
117:
113:
109:
105:
101:
94:
87:
83:
79:
75:
71:
67:
63:
59:
55:
51:
47:
42:
40:
37:
33:
29:
25:
21:
2208:Block cipher
2053:Key schedule
2043:Key exchange
2033:Kleptography
1996:Cryptosystem
1945:Cryptography
1666:
1205:
1158:
1134:
1125:
1114:
1103:. Retrieved
1099:
1090:
1079:
1070:
1056:
1045:
1036:
1026:– via
1021:. Retrieved
1015:
1002:
992:– via
987:. Retrieved
981:
971:
957:
947:– via
942:. Retrieved
936:
926:
915:
906:
895:. Retrieved
885:
874:. Retrieved
872:. 2016-05-16
869:
860:
849:. Retrieved
840:
829:. Retrieved
823:
813:
803:– via
798:. Retrieved
792:
782:
771:. Retrieved
767:the original
756:
747:
740:. Retrieved
736:
726:
712:
705:
696:
690:. Retrieved
686:the original
662:the original
649:
638:
630:
623:. Retrieved
592:
585:
577:SecurityWeek
576:
566:
557:
528:. Retrieved
505:
498:
464:Bloom filter
388:
387:
382:Bloom filter
356:
280:compile time
230:
228:
208:
202:
198:
194:
190:
188:
181:
177:packet flood
172:
169:
164:
162:
140:
127:
123:
119:
115:
111:
107:
103:
96:
95:and SipHash(
89:
85:
81:
77:
73:
69:
61:
43:
19:
18:
2196:Mathematics
2187:Mix network
1877:Merkle tree
1865:Utilization
1851:NSA Suite B
742:28 February
625:28 February
530:28 February
154:hash tables
114:or SipHash(
2295:Categories
2147:Ciphertext
2117:Decryption
2112:Encryption
2073:Ransomware
1689:encryption
1466:RadioGatún
1273:Comparison
1105:2018-09-27
1023:2017-01-21
989:2017-01-21
944:2018-07-16
897:2017-01-21
876:2021-10-21
851:2024-02-17
831:2021-10-21
800:2021-10-21
773:2017-01-21
692:2017-01-21
491:References
427:JavaScript
251:JavaScript
232:hash table
217:under the
2137:Plaintext
1606:KDF1/KDF2
1525:functions
1511:Whirlpool
1202:"Hashing"
350:Wireguard
2276:Category
2182:Kademlia
2142:Codetext
2085:(CSPRNG)
1831:CRYPTREC
1662:Poly1305
1582:yescrypt
1496:Streebog
1376:CubeHash
1356:(winner)
698:license.
458:See also
432:PicoLisp
412:Crypto++
197:, where
150:CityHash
137:Overview
80:) = SHA(
1952:General
1737:Attacks
1667:SipHash
1623:CBC-MAC
1557:LM hash
1537:Balloon
1401:HAS-160
1017:systemd
794:Node.js
620:1457918
447:Verilog
422:Haskell
362:Bitcoin
345:OpenDNS
340:FreeBSD
335:OpenBSD
328:systemd
282:option)
256:Node.js
246:Haskell
20:SipHash
2063:Keygen
1897:Pepper
1836:NESSIE
1783:Design
1577:scrypt
1572:PBKDF2
1547:Catena
1542:bcrypt
1532:Argon2
1491:Snefru
1486:Shabal
1481:SWIFFT
1461:RIPEMD
1456:N-hash
1431:MASH-2
1426:MASH-1
1411:Kupyna
1371:BLAKE3
1354:Keccak
1339:Grøstl
1316:BLAKE2
1160:GitHub
1136:GitHub
1100:GitHub
1081:GitHub
1047:GitHub
994:GitHub
949:GitHub
938:MoarVM
917:GitHub
805:GitHub
737:GitHub
618:
608:
521:
384:hashes
374:hasher
372:object
286:Python
143:64-bit
22:is an
2093:(PRN)
1691:modes
1567:Makwa
1562:Lyra2
1552:crypt
1501:Tiger
1451:MDC-2
1406:HAVAL
1391:Fugue
1349:Skein
1334:BLAKE
1311:SHA-3
1306:SHA-2
1300:SHA-1
1185:(PDF)
1173:(PDF)
665:(PDF)
654:(PDF)
616:S2CID
442:Swift
323:Linux
309:Swift
271:OCaml
225:Usage
165:small
62:keyed
52:like
1892:Salt
1856:CNSA
1723:IAPM
1677:VMAC
1672:UMAC
1657:PMAC
1652:CMAC
1648:OMAC
1643:NMAC
1638:HMAC
1633:GMAC
1602:HKDF
1471:SIMD
1421:Lane
1396:GOST
1381:ECOH
1268:List
1255:and
983:Rust
744:2024
627:2018
606:ISBN
532:2018
519:ISBN
452:VHDL
437:Rust
303:Rust
297:Ruby
292:Raku
276:Perl
209:The
184:HMAC
173:same
72:and
66:HMAC
60:: a
1728:OCB
1718:GCM
1713:EAX
1708:CWC
1698:CCM
1628:DAA
1506:VSH
1476:SM3
1446:MD6
1441:MD4
1436:MD2
1416:LSH
1386:FSB
1294:MD5
598:doi
511:doi
401:C++
369:C++
219:CC0
126:∉ {
2297::
1344:JH
1204:.
1157:.
1133:.
1098:.
1078:.
1044:.
1014:.
980:.
935:.
914:.
868:.
825:V8
822:.
791:.
746:.
735:.
716:.
695:.
673:^
656:.
629:.
614:.
604:.
575:.
556:.
540:^
517:.
417:Go
407:C#
221:.
118:,
102:,
1937:e
1930:t
1923:v
1650:/
1245:e
1238:t
1231:v
1208:.
1196:.
1187:.
1175:.
1163:.
1139:.
1108:.
1084:.
1064:.
1050:.
1030:.
996:.
965:.
951:.
920:.
900:.
879:.
854:.
834:.
807:.
776:.
600::
579:.
560:.
534:.
513::
395:C
203:d
199:c
195:d
193:-
191:c
130:i
128:X
124:Y
120:k
116:Y
112:k
108:k
104:k
99:i
97:X
92:i
90:X
86:X
82:Y
78:X
74:Y
70:X
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.