Implementation and Optimization of Zero-Knowledge Proof Circuit Based on Hash Function SM3

With the increasing demand for privacy protection in the blockchain, the universal zero-knowledge proof protocol has been developed and widely used. Because hash function is an important cryptographic primitive in a blockchain, the zero-knowledge proof of hash preimage has a wide range of applicatio...

Full description

Bibliographic Details
Main Authors: Yang Yang, Shangbin Han, Ping Xie, Yan Zhu, Zhenyang Ding, Shengjie Hou, Shicheng Xu, Haibin Zheng
Format: Article
Language:English
Published: MDPI AG 2022-08-01
Series:Sensors
Subjects:
Online Access:https://www.mdpi.com/1424-8220/22/16/5951
Description
Summary:With the increasing demand for privacy protection in the blockchain, the universal zero-knowledge proof protocol has been developed and widely used. Because hash function is an important cryptographic primitive in a blockchain, the zero-knowledge proof of hash preimage has a wide range of application scenarios. However, it is hard to implement it due to the transformation of efficiency and execution complexity. Currently, there are only zero-knowledge proof circuits of some widely used hash functions that have been implemented, such as SHA256. SM3 is a Chinese hash function standard published by the Chinese Commercial Cryptography Administration Office for the use of electronic authentication service systems, and hence might be used in several cryptographic applications in China. As the national cryptographic hash function standard, the zero-knowledge proof circuit of SM3 (Chinese Commercial Cryptography) has not been implemented. Therefore, this paper analyzed the SM3 algorithm process, designed a new layered circuit structure, and implemented the SM3 hash preimage zero-knowledge proof circuit with a circuit size reduced by half compared to the automatic generator. Moreover, we proposed several extended practical protocols based on the SM3 zero-knowledge proof circuit, which is widely used in blockchain.
ISSN:1424-8220