5 unstable releases

0.2.2 Mar 5, 2025
0.2.1 Feb 21, 2025
0.2.0 Jun 24, 2022
0.1.0 Jul 9, 2020
0.0.0 Jun 26, 2020

#18 in #proof-of-work

Download history 5713/week @ 2025-10-05 5695/week @ 2025-10-12 5828/week @ 2025-10-19 7320/week @ 2025-10-26 3785/week @ 2025-11-02 5273/week @ 2025-11-09 3714/week @ 2025-11-16 4887/week @ 2025-11-23 4923/week @ 2025-11-30 3702/week @ 2025-12-07 3081/week @ 2025-12-14 1555/week @ 2025-12-21 1352/week @ 2025-12-28 1840/week @ 2026-01-04 2786/week @ 2026-01-11 3390/week @ 2026-01-18

9,547 downloads per month
Used in 42 crates (5 directly)

MIT/Apache

125KB
2.5K SLoC

Rust 1.5K SLoC // 0.1% comments C 620 SLoC // 0.1% comments

Equihash is a Proof-of-Work algorithm, based on a generalization of the Birthday problem which finds colliding hash values. It was designed to be memory-hard; more specifically, the bottle-neck for parallel implementations of Equihash solvers would be memory bandwidth.

This crate implements Equihash as specified for the Zcash consensus rules. It can verify solutions for any valid (n, k) parameters, as long as the row indices are no larger than 32 bits (that is, ceiling(((n / (k + 1)) + 1) / 8) <= 4).

Feature flags")]

document_features::document_features!())]

References

Dependencies

~495–680KB
~11K SLoC