package core:hash
Overview
crc32, crc64, adler32, djb, fnv, jenkins, murmur and other hashes.
Index
Types (0)
This section is empty.
Constants (0)
This section is empty.
Variables (0)
This section is empty.
Procedures (31)
- adler32
- crc16_ccitt_0x1021
- crc32
- crc64_ecma_182
- crc64_iso_3306
- crc64_iso_3306_inverse
- crc64_xz
- djb2
- djbx33a
- fmix32
- fmix64
- fnv32
- fnv32_no_a
- fnv32a
- fnv64
- fnv64_no_a
- fnv64a
- ginger16
- ginger8
- ginger_hash16
- ginger_hash8
- jenkins
- murmur32
- murmur3_x64_128
- murmur3_x86_128
- murmur3_x86_32
- murmur64a
- murmur64b
- rotl32
- rotl64
- sdbm
Procedure Groups (0)
This section is empty.
Types
This section is empty.
Constants
This section is empty.
Variables
This section is empty.
Procedures
crc16_ccitt_0x1021 ¶
Compute CRC-16 in the manner of CCITT (ITU-T V.41), using the 0x1021 polynomial. Generator polynomial: x^16 + x^12 + x^5 + 1
Used in the UDF (DVD *.iso) disk format's Volume Descriptor Tag, and was more historically the ITU-T V.41 CRC-16 used in the XModem protocol, which uses 0xffff as the initial value.
crc64_iso_3306 ¶
Generator polynomial: x^64 + x^4 + x^3 + x + 1
crc64_xz ¶
Compute CRC-64 in the manner of xz, using the ECMA-182 polynomial, bit-reversed, with one's complement pre and post processing. Based on Mark Adler's v1.4 implementation in C under the ZLIB license.
fnv32_no_a ¶
If you have a choice, prefer fnv32a
fnv64_no_a ¶
If you have a choice, prefer fnv64a
murmur3_x64_128 ¶
See https://github.com/aappleby/smhasher/blob/master/src/MurmurHash3.cpp#L255
murmur3_x86_128 ¶
See https://github.com/aappleby/smhasher/blob/master/src/MurmurHash3.cpp#L150
murmur3_x86_32 ¶
See https://github.com/aappleby/smhasher/blob/master/src/MurmurHash3.cpp#L94
murmur64a ¶
See https://github.com/aappleby/smhasher/blob/master/src/MurmurHash2.cpp#L96
murmur64b ¶
See https://github.com/aappleby/smhasher/blob/master/src/MurmurHash2.cpp#L140
Procedure Groups
This section is empty.
Source Files
Generation Information
Generated with odin version dev-2026-08 (vendor "odin") Windows_amd64 @ 2026-08-29 22:58:12.433368200 +0000 UTC