openHiTLS API openHiTLS 0.1.0-Alpha1
bsl_obj.h
浏览该文件的文档.
1/*---------------------------------------------------------------------------------------------
2 * This file is part of the openHiTLS project.
3 * Copyright © 2023 Huawei Technologies Co.,Ltd. All rights reserved.
4 * Licensed under the openHiTLS Software license agreement 1.0. See LICENSE in the project root
5 * for license information.
6 *---------------------------------------------------------------------------------------------
7 */
8
15#ifndef BSL_OBJ_H
16#define BSL_OBJ_H
17
18#include <stdbool.h>
19#include <stdint.h>
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
29typedef enum {
32 /* Algorithm cids from symmetric algorithm */
33 // chacha
35
36 // aes
55
56 // sm4
63
64 /* asymmetrical algorithm */
65 BSL_CID_RSA = 5001,
66 BSL_CID_DSA = 5051,
68 BSL_CID_SM2 = 5151,
70 BSL_CID_DH = 5201,
71 BSL_CID_ECDH = 5216,
72 BSL_CID_X448 = 5231,
77 /* hash algorithm */
78 BSL_CID_MD4 = 10001,
93 /* Message authentication code algorithm */
94 // hmac
107 /* Random number algorithm */
108 // DRBG
125
126 /* Key derivation algorithm */
129
130 // hkdf
132
133 /* PKCS 5 */
136 /* standard constant international curve */
137 // BRAINPOOL
141
142 // SECP
146 // RFC 3279
149 // NIST Curve
152 // standard constant sm series curve
155 /* standard constant prime */
169
171 BSL_CID_EXTEND = 0x60000000,
172} BslCid;
173
174#ifdef __cplusplus
175}
176#endif
177
178#endif // BSL_OBJ_H
BslCid
Definition bsl_obj.h:29
@ BSL_CID_SHA384
Definition bsl_obj.h:83
@ BSL_CID_X448
Definition bsl_obj.h:72
@ BSL_CID_ECC_BRAINPOOLP384R1
Definition bsl_obj.h:139
@ BSL_CID_ED448
Definition bsl_obj.h:73
@ BSL_CID_EXTEND
Definition bsl_obj.h:171
@ BSL_CID_AES192_CCM
Definition bsl_obj.h:53
@ BSL_CID_AES128_GCM
Definition bsl_obj.h:46
@ BSL_CID_AES192_OFB
Definition bsl_obj.h:41
@ BSL_CID_AES128_OFB
Definition bsl_obj.h:38
@ BSL_CID_RAND_HMAC_SHA224
Definition bsl_obj.h:115
@ BSL_CID_AES192_CFB
Definition bsl_obj.h:42
@ BSL_CID_RAND_AES256_CTR
Definition bsl_obj.h:121
@ BSL_CID_ECDH
Definition bsl_obj.h:71
@ BSL_CID_SM4_OFB
Definition bsl_obj.h:62
@ BSL_CID_RAND_AES128_CTR
Definition bsl_obj.h:119
@ BSL_CID_RAND_SHA512
Definition bsl_obj.h:113
@ BSL_CID_SECP384R1
Definition bsl_obj.h:143
@ BSL_CID_DH_RFC3526_6144
Definition bsl_obj.h:162
@ BSL_CID_PBKDF2
Definition bsl_obj.h:134
@ BSL_CID_AES192_CBC
Definition bsl_obj.h:40
@ BSL_CID_DH_RFC3526_3072
Definition bsl_obj.h:160
@ BSL_CID_RAND_SHA384
Definition bsl_obj.h:112
@ BSL_CID_DSA
Definition bsl_obj.h:66
@ BSL_CID_ECC_BRAINPOOLP256R1
Definition bsl_obj.h:138
@ BSL_CID_DH_RFC7919_3072
Definition bsl_obj.h:165
@ BSL_CID_HMAC_SHA3_512
Definition bsl_obj.h:104
@ BSL_CID_SHA224
Definition bsl_obj.h:81
@ BSL_CID_RAND_HMAC_SHA512
Definition bsl_obj.h:118
@ BSL_CID_ED25519
Definition bsl_obj.h:74
@ BSL_CID_AES128_CCM
Definition bsl_obj.h:52
@ BSL_CID_HMAC_SM3
Definition bsl_obj.h:105
@ BSL_CID_HMAC_SHA3_224
Definition bsl_obj.h:101
@ BSL_CID_AES128_CBC
Definition bsl_obj.h:37
@ BSL_CID_SM2
Definition bsl_obj.h:68
@ BSL_CID_AES256_CFB
Definition bsl_obj.h:45
@ BSL_CID_DH_RFC3526_1536
Definition bsl_obj.h:158
@ BSL_CID_RAND_SHA224
Definition bsl_obj.h:110
@ BSL_CID_HMAC_SHA512
Definition bsl_obj.h:100
@ BSL_CID_CHACHA20_POLY1305
Definition bsl_obj.h:34
@ BSL_CID_SHA256
Definition bsl_obj.h:82
@ BSL_CID_RAND_AES128_CTR_DF
Definition bsl_obj.h:122
@ BSL_CID_HMAC_SHA256
Definition bsl_obj.h:98
@ BSL_CID_AES256_GCM
Definition bsl_obj.h:48
@ BSL_CID_MAX
Definition bsl_obj.h:170
@ BSL_CID_HMAC_SHA3_256
Definition bsl_obj.h:102
@ BSL_CID_SHA512
Definition bsl_obj.h:84
@ BSL_CID_SM2PRIME256
Definition bsl_obj.h:153
@ BSL_CID_SM4_CBC
Definition bsl_obj.h:58
@ BSL_CID_SHA3_384
Definition bsl_obj.h:87
@ BSL_CID_DH_RFC7919_2048
Definition bsl_obj.h:164
@ BSL_CID_AES256_CBC
Definition bsl_obj.h:43
@ BSL_CID_HMAC_SHA224
Definition bsl_obj.h:97
@ BSL_CID_SCRYPT
Definition bsl_obj.h:127
@ BSL_CID_SM4_XTS
Definition bsl_obj.h:57
@ BSL_CID_AES128_CFB
Definition bsl_obj.h:39
@ BSL_CID_DH_RFC3526_8192
Definition bsl_obj.h:163
@ BSL_CID_DH_RFC3526_4096
Definition bsl_obj.h:161
@ BSL_CID_UNKNOWN
Definition bsl_obj.h:30
@ BSL_CID_HMAC_SHA3_384
Definition bsl_obj.h:103
@ BSL_CID_DH_RFC3526_2048
Definition bsl_obj.h:159
@ BSL_CID_RSA
Definition bsl_obj.h:65
@ BSL_CID_RAND_HMAC_SHA256
Definition bsl_obj.h:116
@ BSL_CID_NIST_PRIME224
Definition bsl_obj.h:150
@ BSL_CID_RAND_HMAC_SHA384
Definition bsl_obj.h:117
@ BSL_CID_AES256_CTR
Definition bsl_obj.h:51
@ BSL_CID_SHAKE128
Definition bsl_obj.h:89
@ BSL_CID_DH
Definition bsl_obj.h:70
@ BSL_CID_SM4_CTR
Definition bsl_obj.h:59
@ BSL_CID_RAND_AES256_CTR_DF
Definition bsl_obj.h:124
@ BSL_CID_ECC_BRAINPOOLP512R1
Definition bsl_obj.h:140
@ BSL_CID_AES128_CTR
Definition bsl_obj.h:49
@ BSL_CID_HMAC_SHA384
Definition bsl_obj.h:99
@ BSL_CID_SHA1
Definition bsl_obj.h:80
@ BSL_CID_SM4_CFB
Definition bsl_obj.h:61
@ BSL_CID_RAND_SHA256
Definition bsl_obj.h:111
@ BSL_CID_SM4_GCM
Definition bsl_obj.h:60
@ BSL_CID_AES256_OFB
Definition bsl_obj.h:44
@ BSL_CID_X25519
Definition bsl_obj.h:75
@ BSL_CID_DH_RFC2409_1024
Definition bsl_obj.h:157
@ BSL_CID_DH_RFC7919_6144
Definition bsl_obj.h:167
@ BSL_CID_SHAKE256
Definition bsl_obj.h:90
@ BSL_CID_RAND_SHA1
Definition bsl_obj.h:109
@ BSL_CID_SHA3_512
Definition bsl_obj.h:88
@ BSL_CID_SECP521R1
Definition bsl_obj.h:144
@ BSL_CID_KDFTLS12
Definition bsl_obj.h:128
@ BSL_CID_AES192_GCM
Definition bsl_obj.h:47
@ BSL_CID_HKDF
Definition bsl_obj.h:131
@ BSL_CID_RAND_AES192_CTR
Definition bsl_obj.h:120
@ BSL_CID_AES192_CTR
Definition bsl_obj.h:50
@ BSL_CID_HMAC_SHA1
Definition bsl_obj.h:96
@ BSL_CID_SHA3_256
Definition bsl_obj.h:86
@ BSL_CID_HMAC_MD5
Definition bsl_obj.h:95
@ BSL_CID_MD5
Definition bsl_obj.h:79
@ BSL_CID_DH_RFC7919_8192
Definition bsl_obj.h:168
@ BSL_CID_PRIME256V1
Definition bsl_obj.h:147
@ BSL_CID_DH_RFC2409_768
Definition bsl_obj.h:156
@ BSL_CID_ECDSA
Definition bsl_obj.h:67
@ BSL_CID_SHA3_224
Definition bsl_obj.h:85
@ BSL_CID_MD4
Definition bsl_obj.h:78
@ BSL_CID_RAND_HMAC_SHA1
Definition bsl_obj.h:114
@ BSL_CID_DH_RFC7919_4096
Definition bsl_obj.h:166
@ BSL_CID_RAND_AES192_CTR_DF
Definition bsl_obj.h:123
@ BSL_CID_AES256_CCM
Definition bsl_obj.h:54
@ BSL_CID_SM3
Definition bsl_obj.h:91