Chinith is a family of post-quantum signature schemes — SM4th, uBlockith, and Vistrutith — built from the VOLE-in-the-head (VOLEitH) paradigm and established symmetric-key primitives (block-cipher OWFs plus SM3). Like FAEST, it avoids extra number-theoretic or coding-theoretic assumptions and relies only on well-studied symmetric cryptography, which we view as a more conservative design choice for post-quantum signatures. The schemes target 128 / 256 / 512-bit classical security via SM4, uBlock, and Vistrutah, respectively. Our reference implementation follows the same overall structure and engineering patterns as FAEST, adapted to these Chinese and related block ciphers.
This repository hosts the NGCC Round-1 reference package.
Weihan Li, Yuchen Wang, Zhelei Zhou, Cheng Hong, and Tao Wei
Ant Group, China
The initial NGCC submitted version.
Algorithm specifications/— specification PDFImplementations/Reference_Implementation/— portable C reference code for each parameter set
| Scheme | Security | Parameter sets |
|---|---|---|
| SM4th | 128-bit | sm4th_d3_128{f,s}_{loose,tight}, sm4th_em_d2_128{f,s}_{loose,tight} |
| uBlockith | 256-bit | ublockith_d3_256{f,s}, ublockith_em_d3_256{f,s} |
| Vistrutith | 512-bit | vistrutith_d3_512{f,s} |
cd /Implementations/Reference_Implementation/<param_set>
make We recommend using the NGCC Provider tool to test Chinith in OpenSSL/Tongsuo.