Lightweight hash function based on the PHOTON permutation, finalist in NIST Lightweight Cryptography competition. Optimized for constrained environments with 256-bit output.
| Property | Value |
|---|---|
| Category | Hash Functions |
| Sub-category | Lightweight Hash |
| Security status | ๐งช Experimental |
| Complexity | Advanced |
| Inventor | Zhenzhen Bao, Avik Chakraborti, Nilanjan Datta, Jian Guo, Mridul Nandi, Thomas Peyrin, Kan Yasuda |
| Year | 2019 |
| Origin | ๐ International |
| Source | algorithms/hash/photon-beetle-hash.js |
| Parameter | Supported values |
|---|---|
| Output sizes | 32 bytes (256 bits) |
Status: ๐งช Experimental
No vulnerabilities are recorded for this implementation.
7 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 โ Empty message (NIST LWC)
| Field | Value |
|---|---|
input |
(empty) |
expected |
44a99882fea033566856a27e7f0c94dc84fac7e411b08b890a4a574e3db75d4a |
Vector 2 โ Single byte 0x00 (NIST LWC)
| Field | Value |
|---|---|
input |
00 |
expected |
f165ccd18640b9703e96f1bd9a4a4ee32dd4031e4680a1b9890891dcc63468a7 |
Vector 3 โ Two bytes 0x0001 (NIST LWC)
| Field | Value |
|---|---|
input |
0001 |
expected |
2ef2d38f71e77928df37fba337872b639f7748556c1a081821b9b8460ac68fac |
Vector 4 โ Three bytes 0x000102 (NIST LWC)
| Field | Value |
|---|---|
input |
000102 |
expected |
f9a8c467209e7b5f32db28bde50d5210a81a9c6aa9c1686a05c3619cbf44061d |
Vector 5 โ 16 bytes sequential (NIST LWC)
| Field | Value |
|---|---|
input |
000102030405060708090a0b0c0d0e0f |
expected |
ab0d1eb0315df8af7f7ae0ac42eaf2f52fb0fdf0904e182dcc796b6cb8d7981a |
Vector 6 โ 17 bytes sequential (NIST LWC)
| Field | Value |
|---|---|
input |
000102030405060708090a0b0c0d0e0f10 |
expected |
5a281ad7eb81fb083d05ccd21b78c4bca938af26f20869da29c8f13b7389bc5f |
Vector 7 โ 24 bytes sequential (NIST LWC)
| Field | Value |
|---|---|
input |
000102030405060708090a0b0c0d0e0f1011121314151617 |
expected |
c65d15e64477d0ca123e85d632e8444c343e00ec08934ef3a8b4e22c871badf8 |