Sensors (Aug 2022)

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

  • Yang Yang,
  • Shangbin Han,
  • Ping Xie,
  • Yan Zhu,
  • Zhenyang Ding,
  • Shengjie Hou,
  • Shicheng Xu,
  • Haibin Zheng

DOI
https://doi.org/10.3390/s22165951
Journal volume & issue
Vol. 22, no. 16
p. 5951

Abstract

Read online

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.

Keywords