TrustCore SDK NanoCrypto API reference  version 7.0
qs_kem.h
Go to the documentation of this file.
1 /*
2  * qs_kem.h
3  *
4  * Header file for declaring Quantum Safe Key Encapsulation Mechanism methods.
5  *
6  * Copyright 2019-2024 DigiCert, Inc. All Rights Reserved.
7  * Proprietary and Confidential Material.
8  *
9  */
10 
17 #ifndef __QS_KEM_HEADER__
18 #define __QS_KEM_HEADER__
19 
20 /* macros for potentially supported algorithms */
21 #define MOC_QS_KEM_bike1_l1_cpa "BIKE1-L1-CPA"
22 #define MOC_QS_KEM_bike1_l3_cpa "BIKE1-L3-CPA"
23 #define MOC_QS_KEM_bike1_l1_fo "BIKE1-L1-FO"
24 #define MOC_QS_KEM_bike1_l3_fo "BIKE1-L3-FO"
25 #define MOC_QS_KEM_classic_mceliece_348864 "Classic-McEliece-348864"
26 #define MOC_QS_KEM_classic_mceliece_348864f "Classic-McEliece-348864f"
27 #define MOC_QS_KEM_classic_mceliece_460896 "Classic-McEliece-460896"
28 #define MOC_QS_KEM_classic_mceliece_460896f "Classic-McEliece-460896f"
29 #define MOC_QS_KEM_classic_mceliece_6688128 "Classic-McEliece-6688128"
30 #define MOC_QS_KEM_classic_mceliece_6688128f "Classic-McEliece-6688128f"
31 #define MOC_QS_KEM_classic_mceliece_6960119 "Classic-McEliece-6960119"
32 #define MOC_QS_KEM_classic_mceliece_6960119f "Classic-McEliece-6960119f"
33 #define MOC_QS_KEM_classic_mceliece_8192128 "Classic-McEliece-8192128"
34 #define MOC_QS_KEM_classic_mceliece_8192128f "Classic-McEliece-8192128f"
35 #define MOC_QS_KEM_kyber_512 "Kyber512"
36 #define MOC_QS_KEM_kyber_768 "Kyber768"
37 #define MOC_QS_KEM_kyber_1024 "Kyber1024"
38 #define MOC_QS_KEM_kyber_512_90s "Kyber512-90s"
39 #define MOC_QS_KEM_kyber_768_90s "Kyber768-90s"
40 #define MOC_QS_KEM_kyber_1024_90s "Kyber1024-90s"
41 #define MOC_QS_KEM_ledacrypt_ledakemlt12 "LEDAcryptKEM-LT12"
42 #define MOC_QS_KEM_ledacrypt_ledakemlt32 "LEDAcryptKEM-LT32"
43 #define MOC_QS_KEM_ledacrypt_ledakemlt52 "LEDAcryptKEM-LT52"
44 #define MOC_QS_KEM_newhope_512cca "NewHope-512-CCA"
45 #define MOC_QS_KEM_newhope_1024cca "NewHope-1024-CCA"
46 #define MOC_QS_KEM_ntru_hps2048509 "NTRU-HPS-2048-509"
47 #define MOC_QS_KEM_ntru_hps2048677 "NTRU-HPS-2048-677"
48 #define MOC_QS_KEM_ntru_hps4096821 "NTRU-HPS-4096-821"
49 #define MOC_QS_KEM_ntru_hrss701 "NTRU-HRSS-701"
50 #define MOC_QS_KEM_saber_lightsaber "LightSaber-KEM"
51 #define MOC_QS_KEM_saber_saber "Saber-KEM"
52 #define MOC_QS_KEM_saber_firesaber "FireSaber-KEM"
53 #define MOC_QS_KEM_threebears_babybear "BabyBear"
54 #define MOC_QS_KEM_threebears_babybear_ephem "BabyBearEphem"
55 #define MOC_QS_KEM_threebears_mamabear "MamaBear"
56 #define MOC_QS_KEM_threebears_mamabear_ephem "MamaBearEphem"
57 #define MOC_QS_KEM_threebears_papabear "PapaBear"
58 #define MOC_QS_KEM_threebears_papabear_ephem "PapaBearEphem"
59 #define MOC_QS_KEM_frodokem_640_aes "FrodoKEM-640-AES"
60 #define MOC_QS_KEM_frodokem_640_shake "FrodoKEM-640-SHAKE"
61 #define MOC_QS_KEM_frodokem_976_aes "FrodoKEM-976-AES"
62 #define MOC_QS_KEM_frodokem_976_shake "FrodoKEM-976-SHAKE"
63 #define MOC_QS_KEM_frodokem_1344_aes "FrodoKEM-1344-AES"
64 #define MOC_QS_KEM_frodokem_1344_shake "FrodoKEM-1344-SHAKE"
65 #define MOC_QS_KEM_sidh_p434 "SIDH-p434"
66 #define MOC_QS_KEM_sidh_p434_compressed "SIDH-p434-compressed"
67 #define MOC_QS_KEM_sidh_p503 "SIDH-p503"
68 #define MOC_QS_KEM_sidh_p503_compressed "SIDH-p503-compressed"
69 #define MOC_QS_KEM_sidh_p610 "SIDH-p610"
70 #define MOC_QS_KEM_sidh_p610_compressed "SIDH-p610-compressed"
71 #define MOC_QS_KEM_sidh_p751 "SIDH-p751"
72 #define MOC_QS_KEM_sidh_p751_compressed "SIDH-p751-compressed"
73 #define MOC_QS_KEM_sike_p434 "SIKE-p434"
74 #define MOC_QS_KEM_sike_p434_compressed "SIKE-p434-compressed"
75 #define MOC_QS_KEM_sike_p503 "SIKE-p503"
76 #define MOC_QS_KEM_sike_p503_compressed "SIKE-p503-compressed"
77 #define MOC_QS_KEM_sike_p610 "SIKE-p610"
78 #define MOC_QS_KEM_sike_p610_compressed "SIKE-p610-compressed"
79 #define MOC_QS_KEM_sike_p751 "SIKE-p751"
80 #define MOC_QS_KEM_sike_p751_compressed "SIKE-p751-compressed"
81 
82 #endif /* __QS_KEM_HEADER__ */