Gotta Hash 'Em All! Speeding Up Hash Functions for Zero-Knowledge Proof Applications

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Sheybani, Nojan, Gong, Tengkai, Ahmed, Anees, Njungle, Nges Brian, Kinsy, Michel, Koushanfar, Farinaz
Format: Preprint
Published: 2025
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866916948303937536
author Sheybani, Nojan
Gong, Tengkai
Ahmed, Anees
Njungle, Nges Brian
Kinsy, Michel
Koushanfar, Farinaz
author_facet Sheybani, Nojan
Gong, Tengkai
Ahmed, Anees
Njungle, Nges Brian
Kinsy, Michel
Koushanfar, Farinaz
contents Collision-resistant cryptographic hash functions (CRHs) are crucial for security, particularly for message authentication in Zero-knowledge Proof (ZKP) applications. However, traditional CRHs like SHA-2 or SHA-3, while optimized for CPUs, generate large circuits, rendering them inefficient in the ZK domain. Conversely, ZK-friendly hashes are designed for circuit efficiency but struggle on conventional hardware, often orders of magnitude slower than standard hashes due to their reliance on expensive finite field arithmetic. To bridge this performance gap, we present HashEmAll, a novel collection of FPGA-based realizations for three prominent ZK-friendly hashes: Griffin, Rescue-Prime, and Reinforced Concrete. Each offers distinct optimization profiles, with both area-optimized and latency-optimized variants available, allowing users to tailor hardware selection to specific application constraints regarding resource utilization and performance. Our extensive evaluation shows that latency-optimized HashEmAll designs outperform CPU implementations by at least $10 \times$, with the leading design achieving a $23 \times$ speedup. These gains are coupled with lower power consumption and compatibility with accessible FPGAs. Importantly, the highly parallel and pipelined architecture of HashEmAll enables significantly better practical scaling than CPU-based approaches towards building real-world ZKP applications, such as data commitments with Merkle Trees, by mitigating the hashing bottleneck for large trees. This highlights the suitability of HashEmAll for real-world ZKP applications involving large-scale data authentication. We also highlight the ability to translate the HashEmAll methodology to various ZK-friendly hash functions and different field sizes.
format Preprint
id arxiv_https___arxiv_org_abs_2501_18780
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Gotta Hash 'Em All! Speeding Up Hash Functions for Zero-Knowledge Proof Applications
Sheybani, Nojan
Gong, Tengkai
Ahmed, Anees
Njungle, Nges Brian
Kinsy, Michel
Koushanfar, Farinaz
Cryptography and Security
Hardware Architecture
Collision-resistant cryptographic hash functions (CRHs) are crucial for security, particularly for message authentication in Zero-knowledge Proof (ZKP) applications. However, traditional CRHs like SHA-2 or SHA-3, while optimized for CPUs, generate large circuits, rendering them inefficient in the ZK domain. Conversely, ZK-friendly hashes are designed for circuit efficiency but struggle on conventional hardware, often orders of magnitude slower than standard hashes due to their reliance on expensive finite field arithmetic. To bridge this performance gap, we present HashEmAll, a novel collection of FPGA-based realizations for three prominent ZK-friendly hashes: Griffin, Rescue-Prime, and Reinforced Concrete. Each offers distinct optimization profiles, with both area-optimized and latency-optimized variants available, allowing users to tailor hardware selection to specific application constraints regarding resource utilization and performance. Our extensive evaluation shows that latency-optimized HashEmAll designs outperform CPU implementations by at least $10 \times$, with the leading design achieving a $23 \times$ speedup. These gains are coupled with lower power consumption and compatibility with accessible FPGAs. Importantly, the highly parallel and pipelined architecture of HashEmAll enables significantly better practical scaling than CPU-based approaches towards building real-world ZKP applications, such as data commitments with Merkle Trees, by mitigating the hashing bottleneck for large trees. This highlights the suitability of HashEmAll for real-world ZKP applications involving large-scale data authentication. We also highlight the ability to translate the HashEmAll methodology to various ZK-friendly hash functions and different field sizes.
title Gotta Hash 'Em All! Speeding Up Hash Functions for Zero-Knowledge Proof Applications
topic Cryptography and Security
Hardware Architecture
url https://arxiv.org/abs/2501.18780