Add test to check existence of parameter sets

This commit is contained in:
Joost Rijneveld 2018-01-11 10:09:59 +01:00
parent f8023bbc2b
commit c63291fb8e
No known key found for this signature in database
GPG Key ID: A4FE39CF49CBC553
2 changed files with 82 additions and 0 deletions

View File

@ -9,6 +9,7 @@ SOURCES_FAST = $(subst xmss_core.c,xmss_core_fast.c,$(SOURCES))
HEADERS_FAST = $(subst xmss_core.c,xmss_core_fast.c,$(HEADERS))
TESTS = test/wots \
test/oid \
test/xmss_determinism \
test/xmss \
test/xmss_fast \

81
test/oid.c Normal file
View File

@ -0,0 +1,81 @@
#include <stdio.h>
#include "../params.h"
#define CHECK_OID_XMSS(PARAMSET) \
if (xmss_str_to_oid(&oid, PARAMSET)) {\
printf("Did not recognize " PARAMSET "!\n");\
return -1;\
}\
if (xmss_parse_oid(&params, oid)) {\
printf("Could not parse OID for " PARAMSET "!\n");\
return -1;\
}
#define CHECK_OID_XMSSMT(PARAMSET) \
if (xmssmt_str_to_oid(&oid, PARAMSET)) {\
printf("Did not recognize " PARAMSET "!\n");\
return -1;\
}\
if (xmssmt_parse_oid(&params, oid)) {\
printf("Could not parse OID for " PARAMSET "!\n");\
return -1;\
}
int main()
{
uint32_t oid;
xmss_params params;
printf("Testing if all expected XMSS parameter sets are recognized.. ");
CHECK_OID_XMSS("XMSS-SHA2_10_256");
CHECK_OID_XMSS("XMSS-SHA2_16_256");
CHECK_OID_XMSS("XMSS-SHA2_20_256");
CHECK_OID_XMSS("XMSS-SHA2_10_512");
CHECK_OID_XMSS("XMSS-SHA2_16_512");
CHECK_OID_XMSS("XMSS-SHA2_20_512");
CHECK_OID_XMSS("XMSS-SHAKE_10_256");
CHECK_OID_XMSS("XMSS-SHAKE_16_256");
CHECK_OID_XMSS("XMSS-SHAKE_20_256");
CHECK_OID_XMSS("XMSS-SHAKE_10_512");
CHECK_OID_XMSS("XMSS-SHAKE_16_512");
CHECK_OID_XMSS("XMSS-SHAKE_20_512");
printf("successful.\n");
printf("Testing if all expected XMSSMT parameter sets are recognized.. ");
CHECK_OID_XMSSMT("XMSSMT-SHA2_20/2_256");
CHECK_OID_XMSSMT("XMSSMT-SHA2_20/4_256");
CHECK_OID_XMSSMT("XMSSMT-SHA2_40/2_256");
CHECK_OID_XMSSMT("XMSSMT-SHA2_40/4_256");
CHECK_OID_XMSSMT("XMSSMT-SHA2_40/8_256");
CHECK_OID_XMSSMT("XMSSMT-SHA2_60/3_256");
CHECK_OID_XMSSMT("XMSSMT-SHA2_60/6_256");
CHECK_OID_XMSSMT("XMSSMT-SHA2_60/12_256");
CHECK_OID_XMSSMT("XMSSMT-SHA2_20/2_512");
CHECK_OID_XMSSMT("XMSSMT-SHA2_20/4_512");
CHECK_OID_XMSSMT("XMSSMT-SHA2_40/2_512");
CHECK_OID_XMSSMT("XMSSMT-SHA2_40/4_512");
CHECK_OID_XMSSMT("XMSSMT-SHA2_40/8_512");
CHECK_OID_XMSSMT("XMSSMT-SHA2_60/3_512");
CHECK_OID_XMSSMT("XMSSMT-SHA2_60/6_512");
CHECK_OID_XMSSMT("XMSSMT-SHA2_60/12_512");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_20/2_256");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_20/4_256");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_40/2_256");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_40/4_256");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_40/8_256");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_60/3_256");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_60/6_256");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_60/12_256");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_20/2_512");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_20/4_512");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_40/2_512");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_40/4_512");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_40/8_512");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_60/3_512");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_60/6_512");
CHECK_OID_XMSSMT("XMSSMT-SHAKE_60/12_512");
printf("successful.\n");
return 0;
}