• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * This file is part of the openHiTLS project.
3  *
4  * openHiTLS is licensed under the Mulan PSL v2.
5  * You can use this software according to the terms and conditions of the Mulan PSL v2.
6  * You may obtain a copy of Mulan PSL v2 at:
7  *
8  *     http://license.coscl.org.cn/MulanPSL2
9  *
10  * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
11  * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
12  * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
13  * See the Mulan PSL v2 for more details.
14  */
15 
16 /**
17  * @defgroup crypt_eal_provider
18  * @ingroup crypt
19  * @brief default provider impl
20  */
21 
22 #ifndef CRYPT_EAL_DEFAULT_PROVIDERIMPL_H
23 #define CRYPT_EAL_DEFAULT_PROVIDERIMPL_H
24 
25 #ifdef HITLS_CRYPTO_PROVIDER
26 
27 #include "crypt_eal_implprovider.h"
28 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif // __cplusplus
32 
33 extern const CRYPT_EAL_Func g_defEalMdMd5[];
34 extern const CRYPT_EAL_Func g_defEalMdSha1[];
35 extern const CRYPT_EAL_Func g_defEalMdSha224[];
36 extern const CRYPT_EAL_Func g_defEalMdSha256[];
37 extern const CRYPT_EAL_Func g_defEalMdSha384[];
38 extern const CRYPT_EAL_Func g_defEalMdSha512[];
39 extern const CRYPT_EAL_Func g_defEalMdSha3224[];
40 extern const CRYPT_EAL_Func g_defEalMdSha3256[];
41 extern const CRYPT_EAL_Func g_defEalMdSha3384[];
42 extern const CRYPT_EAL_Func g_defEalMdSha3512[];
43 extern const CRYPT_EAL_Func g_defEalMdShake512[];
44 extern const CRYPT_EAL_Func g_defEalMdShake128[];
45 extern const CRYPT_EAL_Func g_defEalMdShake256[];
46 extern const CRYPT_EAL_Func g_defEalMdSm3[];
47 
48 extern const CRYPT_EAL_Func g_defEalKdfScrypt[];
49 extern const CRYPT_EAL_Func g_defEalKdfPBKdf2[];
50 extern const CRYPT_EAL_Func g_defEalKdfKdfTLS12[];
51 extern const CRYPT_EAL_Func g_defEalKdfHkdf[];
52 
53 extern const CRYPT_EAL_Func g_defEalKeyMgmtDsa[];
54 extern const CRYPT_EAL_Func g_defEalKeyMgmtEd25519[];
55 extern const CRYPT_EAL_Func g_defEalKeyMgmtX25519[];
56 extern const CRYPT_EAL_Func g_defEalKeyMgmtRsa[];
57 extern const CRYPT_EAL_Func g_defEalKeyMgmtDh[];
58 extern const CRYPT_EAL_Func g_defEalKeyMgmtEcdsa[];
59 extern const CRYPT_EAL_Func g_defEalKeyMgmtEcdh[];
60 extern const CRYPT_EAL_Func g_defEalKeyMgmtSm2[];
61 extern const CRYPT_EAL_Func g_defEalKeyMgmtPaillier[];
62 extern const CRYPT_EAL_Func g_defEalKeyMgmtSlhDsa[];
63 extern const CRYPT_EAL_Func g_defEalKeyMgmtElGamal[];
64 extern const CRYPT_EAL_Func g_defEalKeyMgmtMlKem[];
65 extern const CRYPT_EAL_Func g_defEalKeyMgmtMlDsa[];
66 extern const CRYPT_EAL_Func g_defEalKeyMgmtHybridKem[];
67 
68 extern const CRYPT_EAL_Func g_defEalExchX25519[];
69 extern const CRYPT_EAL_Func g_defEalExchDh[];
70 extern const CRYPT_EAL_Func g_defEalExchEcdh[];
71 extern const CRYPT_EAL_Func g_defEalExchSm2[];
72 
73 
74 extern const CRYPT_EAL_Func g_defEalAsymCipherRsa[];
75 extern const CRYPT_EAL_Func g_defEalAsymCipherSm2[];
76 extern const CRYPT_EAL_Func g_defEalAsymCipherPaillier[];
77 extern const CRYPT_EAL_Func g_defEalAsymCipherElGamal[];
78 
79 extern const CRYPT_EAL_Func g_defEalSignDsa[];
80 extern const CRYPT_EAL_Func g_defEalSignEd25519[];
81 extern const CRYPT_EAL_Func g_defEalSignRsa[];
82 extern const CRYPT_EAL_Func g_defEalSignEcdsa[];
83 extern const CRYPT_EAL_Func g_defEalSignSm2[];
84 extern const CRYPT_EAL_Func g_defEalSignMlDsa[];
85 extern const CRYPT_EAL_Func g_defEalMacHmac[];
86 extern const CRYPT_EAL_Func g_defEalSignSlhDsa[];
87 extern const CRYPT_EAL_Func g_defEalMacCmac[];
88 extern const CRYPT_EAL_Func g_defEalMacCbcMac[];
89 extern const CRYPT_EAL_Func g_defEalMacGmac[];
90 extern const CRYPT_EAL_Func g_defEalMacSiphash[];
91 
92 extern const CRYPT_EAL_Func g_defEalRand[];
93 
94 extern const CRYPT_EAL_Func g_defEalCbc[];
95 extern const CRYPT_EAL_Func g_defEalCcm[];
96 extern const CRYPT_EAL_Func g_defEalCfb[];
97 extern const CRYPT_EAL_Func g_defEalChaCha[];
98 extern const CRYPT_EAL_Func g_defEalCtr[];
99 extern const CRYPT_EAL_Func g_defEalEcb[];
100 extern const CRYPT_EAL_Func g_defEalGcm[];
101 extern const CRYPT_EAL_Func g_defEalOfb[];
102 extern const CRYPT_EAL_Func g_defEalXts[];
103 extern const CRYPT_EAL_Func g_defEalMlKem[];
104 extern const CRYPT_EAL_Func g_defEalHybridKeyKem[];
105 
106 extern const CRYPT_EAL_Func g_defEalPrvP8Enc2P8[];
107 extern const CRYPT_EAL_Func g_defEalPem2Der[];
108 extern const CRYPT_EAL_Func g_defEalRsaPrvDer2Key[];
109 extern const CRYPT_EAL_Func g_defEalEcdsaPrvDer2Key[];
110 extern const CRYPT_EAL_Func g_defEalSm2PrvDer2Key[];
111 extern const CRYPT_EAL_Func g_defEalP8Der2RsaKey[];
112 extern const CRYPT_EAL_Func g_defEalP8Der2EcdsaKey[];
113 extern const CRYPT_EAL_Func g_defEalP8Der2Sm2Key[];
114 extern const CRYPT_EAL_Func g_defEalP8Der2Ed25519Key[];
115 extern const CRYPT_EAL_Func g_defEalSubPubKeyDer2RsaKey[];
116 extern const CRYPT_EAL_Func g_defEalSubPubKeyDer2EcdsaKey[];
117 extern const CRYPT_EAL_Func g_defEalSubPubKeyDer2Sm2Key[];
118 extern const CRYPT_EAL_Func g_defEalSubPubKeyDer2Ed25519Key[];
119 extern const CRYPT_EAL_Func g_defEalSubPubKeyWithoutSeqDer2RsaKey[];
120 extern const CRYPT_EAL_Func g_defEalSubPubKeyWithoutSeqDer2EcdsaKey[];
121 extern const CRYPT_EAL_Func g_defEalSubPubKeyWithoutSeqDer2Sm2Key[];
122 extern const CRYPT_EAL_Func g_defEalSubPubKeyWithoutSeqDer2Ed25519Key[];
123 extern const CRYPT_EAL_Func g_defEalLowKeyObject2PkeyObject[];
124 extern const CRYPT_EAL_Func g_defEalRsaPubDer2Key[];
125 
126 #ifdef __cplusplus
127 }
128 #endif // __cplusplus
129 
130 #endif /* HITLS_CRYPTO_PROVIDER */
131 #endif // CRYPT_EAL_DEFAULT_PROVIDERIMPL_H