Awesome
Non-cryptographic hash function. FNV-1a. High-speed 「 128-bit 」 implementations;
Copyright (c) 2021 Denis Kuzmin <x-3F@outlook.com> github/3F
Where is this used?
- Huid - A high-speed FNV-1a-128 hash-based UUID implementation.
.NET implementations
✔ Free and Open. MIT License. Fork! Star! Contribute! Share! Enjoy!
ulong high = Fnv1a.GetHash128LX4Cnh
(
" 🚴 キノの旅 ",
out ulong low
);
// high low
// ________________|_______________
// = 0x1fbfef4e7acd3a3325ce8d3a718c1484
⏱
FNV-1a-128 using LX4Cnh
For example, 120 Unicode (UTF-16) characters:
*LodgeX4CorrNoHigh* (LX4Cnh) algorithm of the high-speed multiplications of **128-bit** numbers (full range, 128 × 128).
128-bit hash value = 0x8e719ac9080952dec9c90a46279bfcc9
(1 ns == 0.000000001 sec)
Sample. Hash Values
Input string (without quotes) | Fnv-1a 128-bit hash value |
---|---|
"Hello World!" | d2d42892ede872031d2593366229c2d2 |
"Hello world!" | 3c94fff9ede872031d95566a45770eb2 |
"Hello world" | 3e2069a3a2839515f3e747cab303a0d7 |
"Hello world " | 3c94fff9eee872031d95566a45770fed |
"Fnv1a128" | c13dd8c55a659aa11f912cfd85b8ed7c |
"github/3F" | 506f2e1fb3060b4c8d3110e8b4e77e16 |
"LX4Cnh" | 27348aa3e13c64bf6e7a25d900f385aa |
"" | 6c62272e07bb014262b821756295c58d |
" " | d228cb69301a8caf78912b704e4a3bdf |
"Password123" | 8d9e9ae9fd9b0356dfe55ca4bb8cb938 |
"7" | d228cb693d1a8caf78912b704e4a4bde |
"'" | d228cb692d1a8caf78912b704e4a382e |
"1234" | 680bc8ef6e757277b806e9090df65bc5 |
"123456" | 48295155463c64bf6e69f684c538dd82 |
"root" | 69fe44a65b757277b806e9a25079adf5 |
"Root" | 690eaab55b757277b806e9587de03515 |
"https://github.com/3F/Fnv1a128" | 43d00056982fd53c44f663dd27c6742a |
"✔" | d228cb861c1a8caf78912b704e6dd243 |