cuZK: Accelerating Zero-Knowledge Proof with A Faster Parallel Multi-Scalar Multiplication Algorithm on GPUs
نویسندگان
چکیده
Zero-knowledge proof is a critical cryptographic primitive. Its most practical type, called zero-knowledge Succinct Non-interactive ARgument of Knowledge (zkSNARK), has been deployed in various privacy-preserving applications such as cryptocurrencies and verifiable machine learning. Unfortunately, zkSNARK like Groth16 high overhead on its generation step, which consists several time-consuming operations, including large-scale matrix-vector multiplication (MUL), number-theoretic transform (NTT), multi-scalar (MSM). Therefore, this paper presents cuZK, an efficient GPU implementation with the following three techniques to achieve performance. First, we propose new parallel MSM algorithm. This algorithm achieves nearly perfect linear speedup over Pippenger algorithm, well-known serial Second, parallelize MUL operation. Along our self-designed scheme well-studied NTT scheme, cuZK parallelization all operations step. Third, reduces latency caused by CPU-GPU data transfer 1) reducing redundant 2) overlapping device computation. The evaluation results show that module provides 2.08x (up 2.94x) versus state-of-the-art implementation. 2.65x 4.86x) standard benchmarks 2.18× GPU-accelerated cryptocurrency application, Filecoin.
منابع مشابه
ذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: IACR transactions on cryptographic hardware and embedded systems
سال: 2023
ISSN: ['2569-2925']
DOI: https://doi.org/10.46586/tches.v2023.i3.194-220