BSL v0.0.0
AMMOS Bundle Protocol Security Library (BSL)
Loading...
Searching...
No Matches
rfc9173.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2025 The Johns Hopkins University Applied Physics
3 * Laboratory LLC.
4 *
5 * This file is part of the Bundle Protocol Security Library (BSL).
6 *
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 * This work was performed for the Jet Propulsion Laboratory, California
18 * Institute of Technology, sponsored by the United States Government under
19 * the prime contract 80NM0018D0004 between the Caltech and NASA under
20 * subcontract 1700763.
21 */
22
28#ifndef BSLB_RFC9173_H_
29#define BSLB_RFC9173_H_
30
33{
34 RFC9173_CONTEXTID_BIB_HMAC_SHA2 = 1,
35 RFC9173_CONTEXTID_BCB_AES_GCM = 2
36};
37
40{
41 RFC9173_BIB_SHA_HMAC256 = 5,
42 RFC9173_BIB_SHA_HMAC384 = 6,
43 RFC9173_BIB_SHA_HMAC512 = 7,
44};
45
48{
49 RFC9173_BIB_PARAMID_SHA_VARIANT = 1,
50 RFC9173_BIB_PARAMID_WRAPPED_KEY = 2,
51 RFC9173_BIB_PARAMID_INTEG_SCOPE_FLAG = 3
52};
53
56{
57 RFC9173_BIB_RESULTID_HMAC = 1
58};
59
62{
63 RFC9173_BIB_INTEGSCOPEFLAG_INC_PRIM = 1,
64 RFC9173_BIB_INTEGSCOPEFLAG_INC_TARGET_HDR = 2,
65 RFC9173_BIB_INTEGSCOPEFLAG_INC_SEC_HDR = 4
66};
67
69typedef enum
70{
71 RFC9173_BCB_AES_VARIANT_A128GCM = 1,
72
73 // Default value
74 RFC9173_BCB_AES_VARIANT_A256GCM = 3
76
77enum rfc9173_bcb_secparam_ids_e
78{
79 RFC9173_BCB_SECPARAM_IV = 1,
80
81 // Note, default value is 3 (see above enum.)
82 RFC9173_BCB_SECPARAM_AESVARIANT = 2,
83 RFC9173_BCB_SECPARAM_WRAPPEDKEY = 3,
84
85 // Note, default value is 7
86 RFC9173_BCB_SECPARAM_AADSCOPE = 4
87};
88
89#define RFC9173_BCB_DEFAULT_IV_LEN (12)
90
97
100{
101 RFC9173_BCB_AADSCOPEFLAGID_INC_PRIM_BLOCK = 1,
102 RFC9173_BCB_AADSCOPEFLAGID_INC_TARGET_HEADER = 2,
103 RFC9173_BCB_AADSCOPEFLAGID_INC_SECURITY_HEADER = 4,
104};
105
106#endif /* BSLB_RFC9173_H_ */
rfc9173_bib_paramid_e
https://www.rfc-editor.org/rfc/rfc9173.html#name-bib-hmac-sha2-security-cont
Definition rfc9173.h:48
rfc9173_bib_resultid_e
https://www.rfc-editor.org/rfc/rfc9173.html#name-results
Definition rfc9173.h:56
rfc9173_bcb_aes_variant_e
https://www.rfc-editor.org/rfc/rfc9173.html#section-4.3.2
Definition rfc9173.h:70
rfc9173_bcb_result_ids_e
https://www.rfc-editor.org/rfc/rfc9173.html#section-4.4.2
Definition rfc9173.h:93
@ RFC9173_BCB_RESULTID_AUTHTAG
https://www.rfc-editor.org/rfc/rfc9173.html#name-bcb-aes-gcm-security-result
Definition rfc9173.h:95
rfc9173_secctx_id_e
https://www.rfc-editor.org/rfc/rfc9173.html#name-security-context-identifier
Definition rfc9173.h:33
rfc9173_bib_sha_variantid_e
https://www.rfc-editor.org/rfc/rfc9173.html#name-sha-variant-parameter-value
Definition rfc9173.h:40
rfc9173_bcb_aad_scope_flag_ids_e
https://www.rfc-editor.org/rfc/rfc9173.html#name-bpsec-bcb-aes-gcm-aad-scope
Definition rfc9173.h:100
rfc9173_bib_integ_scope_flag_ids_e
https://www.rfc-editor.org/rfc/rfc9173.html#table-9
Definition rfc9173.h:62