Add SPHINCS+ commands to gmssl

Add `sphincskeygen`, `sphincssign`, `sphincsverify`
This commit is contained in:
Zhi Guan
2026-01-11 21:30:05 +08:00
parent 58a51a8474
commit 1f64cb7389
7 changed files with 739 additions and 11 deletions

View File

@@ -56,7 +56,7 @@ option(ENABLE_SM2_EXTS "Enable SM2 Extensions" OFF)
option(ENABLE_LMS_HSS "Enable LMS/HSS signature" ON)
option(ENABLE_XMSS "Enable XMSS/XMSS^MT signature" ON)
option(ENABLE_SPHINCS "Enable SPHINCS+ signature" OFF)
option(ENABLE_SPHINCS "Enable SPHINCS+ signature" ON)
option(ENABLE_KYBER "Enable Kyber" OFF)
option(ENABLE_SHA1 "Enable SHA1" ON)
@@ -454,7 +454,7 @@ if (ENABLE_SPHINCS)
message(STATUS "ENABLE_SPHINCS is ON")
add_definitions(-DENABLE_SPHINCS)
list(APPEND src src/sphincs.c)
#list(APPEND tools tools/sphincskeygen.c tools/sphincssign.c tools/sphincsverify.c)
list(APPEND tools tools/sphincskeygen.c tools/sphincssign.c tools/sphincsverify.c)
list(APPEND tests sphincs)
option(ENABLE_SPHINCS_CROSSCHECK "Enable SPHINCS SHA-256 cross-check" ON)
@@ -486,6 +486,7 @@ if (ENABLE_SHA2)
message(STATUS "ENABLE_SHA2 is ON")
add_definitions(-DENABLE_SHA2)
list(APPEND src src/sha256.c src/sha512.c)
list(APPEND src src/sha256_hmac.c)
list(APPEND tests sha224 sha256 sha384 sha512)
endif()