Skip to content

A Rust implementation of the Haraka hash function

License

Notifications You must be signed in to change notification settings

gendx/haraka-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

haraka-rs

Build Status Test Status

A Rust implementation of the Haraka (v2) short-input hash function.

Implementation

As for the original Haraka implementation in C, this project relies on AES-NI instructions, which are available on the stable Rust compiler via intrinsics.

Besides the original 5-round Haraka functions (with 256 and 512 bits of input), extensions to 6 rounds are provided. This is to target collision resistance, contrary to the 5-round versions that only provide preimage resistance.

Testing

Unit tests are implemented to check the logic of Haraka's building blocks. High-level test vectors were generated from the Python implementation of Haraka (for the 5-round versions).

License

MIT

Releases

No releases published

Packages

No packages published

Languages