|
4 | 4 | #define _PD_PKCS11_
|
5 | 5 |
|
6 | 6 | #define CRYPTOKI_VERSION_MAJOR 3
|
7 |
| -#define CRYPTOKI_VERSION_MINOR 0 |
| 7 | +#define CRYPTOKI_VERSION_MINOR 1 |
8 | 8 | #define CRYPTOKI_VERSION_AMENDMENT 0
|
9 | 9 |
|
10 |
| -#if defined(_WIN32) || defined(CRYPTOKI_FORCE_WIN32) |
11 |
| -#pragma pack(push, cryptoki, 1) |
12 |
| -#endif |
13 |
| - |
14 | 10 | /* Basic types */
|
15 | 11 | typedef unsigned char CK_BBOOL;
|
16 | 12 | typedef unsigned char CK_BYTE;
|
@@ -47,9 +43,12 @@ ULONGDEF(CK_EC_KDF_TYPE);
|
47 | 43 | ULONGDEF(CK_EXTRACT_PARAMS);
|
48 | 44 | ULONGDEF(CK_FLAGS);
|
49 | 45 | ULONGDEF(CK_GENERATOR_FUNCTION);
|
| 46 | +ULONGDEF(CK_HSS_LEVELS); |
50 | 47 | ULONGDEF(CK_HW_FEATURE_TYPE);
|
51 | 48 | ULONGDEF(CK_JAVA_MIDP_SECURITY_DOMAIN);
|
52 | 49 | ULONGDEF(CK_KEY_TYPE);
|
| 50 | +ULONGDEF(CK_LMS_TYPE); |
| 51 | +ULONGDEF(CK_LMOTS_TYPE); |
53 | 52 | ULONGDEF(CK_MAC_GENERAL_PARAMS);
|
54 | 53 | ULONGDEF(CK_MECHANISM_TYPE);
|
55 | 54 | ULONGDEF(CK_NOTIFICATION);
|
@@ -240,6 +239,12 @@ ULONGDEF(CK_XEDDSA_HASH_TYPE);
|
240 | 239 | #define CKA_X2RATCHET_NS 0x00000610UL
|
241 | 240 | #define CKA_X2RATCHET_PNS 0x00000611UL
|
242 | 241 | #define CKA_X2RATCHET_RK 0x00000612UL
|
| 242 | +#define CKA_HSS_LEVELS 0x00000617UL |
| 243 | +#define CKA_HSS_LMS_TYPE 0x00000618UL |
| 244 | +#define CKA_HSS_LMOTS_TYPE 0x00000619UL |
| 245 | +#define CKA_HSS_LMS_TYPES 0x0000061AUL |
| 246 | +#define CKA_HSS_LMOTS_TYPES 0x0000061BUL |
| 247 | +#define CKA_HSS_KEYS_REMAINING 0x0000061CUL |
243 | 248 | #define CKA_VENDOR_DEFINED 0x80000000UL
|
244 | 249 | /* Array attributes */
|
245 | 250 | #define CKA_WRAP_TEMPLATE 0x40000211UL
|
@@ -385,6 +390,7 @@ ULONGDEF(CK_XEDDSA_HASH_TYPE);
|
385 | 390 | #define CKG_GENERATE 0x00000001UL
|
386 | 391 | #define CKG_GENERATE_COUNTER 0x00000002UL
|
387 | 392 | #define CKG_GENERATE_RANDOM 0x00000003UL
|
| 393 | +#define CKG_GENERATE_COUNTER_XOR 0x00000004UL |
388 | 394 |
|
389 | 395 | /* CKG (MFG) */
|
390 | 396 | #define CKG_MGF1_SHA1 0x00000001UL
|
@@ -464,6 +470,7 @@ ULONGDEF(CK_XEDDSA_HASH_TYPE);
|
464 | 470 | #define CKK_SHA512_224_HMAC 0x00000043UL
|
465 | 471 | #define CKK_SHA512_256_HMAC 0x00000044UL
|
466 | 472 | #define CKK_SHA512_T_HMAC 0x00000045UL
|
| 473 | +#define CKK_HSS 0x00000046UL |
467 | 474 | #define CKK_VENDOR_DEFINED 0x80000000UL
|
468 | 475 | /* Deprecated */
|
469 | 476 | #ifdef PKCS11_DEPRECATED
|
@@ -844,6 +851,7 @@ ULONGDEF(CK_XEDDSA_HASH_TYPE);
|
844 | 851 | #define CKM_AES_KEY_WRAP 0x00002109UL
|
845 | 852 | #define CKM_AES_KEY_WRAP_PAD 0x0000210AUL
|
846 | 853 | #define CKM_AES_KEY_WRAP_KWP 0x0000210BUL
|
| 854 | +#define CKM_AES_KEY_WRAP_PKCS7 0x0000210CUL |
847 | 855 | #define CKM_RSA_PKCS_TPM_1_1 0x00004001UL
|
848 | 856 | #define CKM_RSA_PKCS_OAEP_TPM_1_1 0x00004002UL
|
849 | 857 | #define CKM_SHA_1_KEY_GEN 0x00004003UL
|
@@ -899,6 +907,12 @@ ULONGDEF(CK_XEDDSA_HASH_TYPE);
|
899 | 907 | #define CKM_SP800_108_COUNTER_KDF 0x000003ACUL
|
900 | 908 | #define CKM_SP800_108_FEEDBACK_KDF 0x000003ADUL
|
901 | 909 | #define CKM_SP800_108_DOUBLE_PIPELINE_KDF 0x000003AEUL
|
| 910 | +#define CKM_IKE2_PRF_PLUS_DERIVE 0x0000402EUL |
| 911 | +#define CKM_IKE_PRF_DERIVE 0x0000402FUL |
| 912 | +#define CKM_IKE1_PRF_DERIVE 0x00004030UL |
| 913 | +#define CKM_IKE1_EXTENDED_DERIVE 0x00004031UL |
| 914 | +#define CKM_HSS_KEY_PAIR_GEN 0x00004032UL |
| 915 | +#define CKM_HSS 0x00004033UL |
902 | 916 | #define CKM_VENDOR_DEFINED 0x80000000UL
|
903 | 917 | /* Deprecated */
|
904 | 918 | #ifdef PKCS11_DEPRECATED
|
@@ -935,6 +949,8 @@ ULONGDEF(CK_XEDDSA_HASH_TYPE);
|
935 | 949 | #define CKP_EXTENDED_PROVIDER 0x00000002UL
|
936 | 950 | #define CKP_AUTHENTICATION_TOKEN 0x00000003UL
|
937 | 951 | #define CKP_PUBLIC_CERTIFICATES_TOKEN 0x00000004UL
|
| 952 | +#define CKP_COMPLETE_PROVIDER 0x00000005UL |
| 953 | +#define CKP_HKDF_TLS_TOKEN 0x00000006UL |
938 | 954 | #define CKP_VENDOR_DEFINED 0x80000000UL
|
939 | 955 |
|
940 | 956 | /* CKP (PBKD2) */
|
@@ -1045,6 +1061,7 @@ ULONGDEF(CK_XEDDSA_HASH_TYPE);
|
1045 | 1061 | #define CKR_FUNCTION_REJECTED 0x00000200UL
|
1046 | 1062 | #define CKR_TOKEN_RESOURCE_EXCEEDED 0x00000201UL
|
1047 | 1063 | #define CKR_OPERATION_CANCEL_FAILED 0x00000202UL
|
| 1064 | +#define CKR_KEY_EXHAUSTED 0x00000203UL |
1048 | 1065 | #define CKR_VENDOR_DEFINED 0x80000000UL
|
1049 | 1066 |
|
1050 | 1067 |
|
@@ -1215,6 +1232,10 @@ STRUCTDEF(CK_GCM_PARAMS);
|
1215 | 1232 | STRUCTDEF(CK_GOSTR3410_DERIVE_PARAMS);
|
1216 | 1233 | STRUCTDEF(CK_GOSTR3410_KEY_WRAP_PARAMS);
|
1217 | 1234 | STRUCTDEF(CK_HKDF_PARAMS);
|
| 1235 | +STRUCTDEF(CK_IKE_PRF_DERIVE_PARAMS); |
| 1236 | +STRUCTDEF(CK_IKE1_EXTENDED_DERIVE_PARAMS); |
| 1237 | +STRUCTDEF(CK_IKE1_PRF_DERIVE_PARAMS); |
| 1238 | +STRUCTDEF(CK_IKE2_PRF_PLUS_DERIVE_PARAMS); |
1218 | 1239 | STRUCTDEF(CK_KEA_DERIVE_PARAMS);
|
1219 | 1240 | STRUCTDEF(CK_KEY_DERIVATION_STRING_DATA);
|
1220 | 1241 | STRUCTDEF(CK_KEY_WRAP_SET_OAEP_PARAMS);
|
@@ -1442,6 +1463,45 @@ struct CK_HKDF_PARAMS {
|
1442 | 1463 | CK_ULONG ulInfoLen;
|
1443 | 1464 | };
|
1444 | 1465 |
|
| 1466 | +struct CK_IKE_PRF_DERIVE_PARAMS { |
| 1467 | + CK_MECHANISM_TYPE prfMechanism; |
| 1468 | + CK_BBOOL bDataAsKey; |
| 1469 | + CK_BBOOL bRekey; |
| 1470 | + CK_BYTE * pNi; |
| 1471 | + CK_ULONG ulNiLen; |
| 1472 | + CK_BYTE * pNr; |
| 1473 | + CK_ULONG ulNrLen; |
| 1474 | + CK_OBJECT_HANDLE hNewKey; |
| 1475 | +}; |
| 1476 | + |
| 1477 | +struct CK_IKE1_EXTENDED_DERIVE_PARAMS { |
| 1478 | + CK_MECHANISM_TYPE prfMechanism; |
| 1479 | + CK_BBOOL bHasKeygxy; |
| 1480 | + CK_OBJECT_HANDLE hKeygxy; |
| 1481 | + CK_BYTE * pExtraData; |
| 1482 | + CK_ULONG ulExtraDataLen; |
| 1483 | +}; |
| 1484 | + |
| 1485 | +struct CK_IKE1_PRF_DERIVE_PARAMS { |
| 1486 | + CK_MECHANISM_TYPE prfMechanism; |
| 1487 | + CK_BBOOL bHasPrevKey; |
| 1488 | + CK_OBJECT_HANDLE hKeygxy; |
| 1489 | + CK_OBJECT_HANDLE hPrevKey; |
| 1490 | + CK_BYTE * pCKYi; |
| 1491 | + CK_ULONG ulCKYiLen; |
| 1492 | + CK_BYTE * pCKYr; |
| 1493 | + CK_ULONG ulCKYrLen; |
| 1494 | + CK_BYTE keyNumber; |
| 1495 | +}; |
| 1496 | + |
| 1497 | +struct CK_IKE2_PRF_PLUS_DERIVE_PARAMS { |
| 1498 | + CK_MECHANISM_TYPE prfMechanism; |
| 1499 | + CK_BBOOL bHasSeedKey; |
| 1500 | + CK_OBJECT_HANDLE hSeedKey; |
| 1501 | + CK_BYTE * pSeedData; |
| 1502 | + CK_ULONG ulSeedDataLen; |
| 1503 | +}; |
| 1504 | + |
1445 | 1505 | struct CK_KEA_DERIVE_PARAMS {
|
1446 | 1506 | CK_BBOOL isSender;
|
1447 | 1507 | CK_ULONG ulRandomLen;
|
@@ -1738,6 +1798,12 @@ struct CK_XEDDSA_PARAMS {
|
1738 | 1798 | CK_XEDDSA_HASH_TYPE hash;
|
1739 | 1799 | };
|
1740 | 1800 |
|
| 1801 | +struct specifiedParams { |
| 1802 | + CK_HSS_LEVELS levels; |
| 1803 | + CK_LMS_TYPE lm_type[8]; |
| 1804 | + CK_LMOTS_TYPE lm_ots_type[8]; |
| 1805 | +}; |
| 1806 | + |
1741 | 1807 | /* TLS related structure definitions */
|
1742 | 1808 | STRUCTDEF(CK_SSL3_KEY_MAT_OUT);
|
1743 | 1809 | STRUCTDEF(CK_SSL3_KEY_MAT_PARAMS);
|
@@ -2342,8 +2408,4 @@ struct CK_FUNCTION_LIST {
|
2342 | 2408 | };
|
2343 | 2409 |
|
2344 | 2410 |
|
2345 |
| -#if defined(_WIN32) || defined(CRYPTOKI_FORCE_WIN32) |
2346 |
| -#pragma pack(pop, cryptoki) |
2347 |
| -#endif |
2348 |
| - |
2349 | 2411 | #endif
|
0 commit comments