• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (C) 2021 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16import * as param from '../publicParam';
17
18let HuksCipherAES = {
19  HuksKeyAlgAES: {
20    tag: param.HksTag.HKS_TAG_ALGORITHM,
21    value: param.HksKeyAlg.HKS_ALG_AES,
22  },
23  HuksKeyPurpose: {
24    tag: param.HksTag.HKS_TAG_PURPOSE,
25    value: param.HksKeyPurpose.HKS_KEY_PURPOSE_ENCRYPT | param.HksKeyPurpose.HKS_KEY_PURPOSE_DECRYPT,
26  },
27  HuksKeyPurposeENCRYPT: {
28    tag: param.HksTag.HKS_TAG_PURPOSE,
29    value: param.HksKeyPurpose.HKS_KEY_PURPOSE_ENCRYPT,
30  },
31  HuksKeyPurposeDECRYPT: {
32    tag: param.HksTag.HKS_TAG_PURPOSE,
33    value: param.HksKeyPurpose.HKS_KEY_PURPOSE_DECRYPT,
34  },
35  HuksKeyAESSize128: {
36    tag: param.HksTag.HKS_TAG_KEY_SIZE,
37    value: param.HksKeySize.HKS_AES_KEY_SIZE_128,
38  },
39  HuksKeyAESSize192: {
40    tag: param.HksTag.HKS_TAG_KEY_SIZE,
41    value: param.HksKeySize.HKS_AES_KEY_SIZE_192,
42  },
43  HuksKeyAESSize256: {
44    tag: param.HksTag.HKS_TAG_KEY_SIZE,
45    value: param.HksKeySize.HKS_AES_KEY_SIZE_256,
46  },
47  HuksKeyAESPADDINGNONE: {
48    tag: param.HksTag.HKS_TAG_PADDING,
49    value: param.HksKeyPadding.HKS_PADDING_NONE,
50  },
51  HuksKeyAESPADDINGPKCS7: {
52    tag: param.HksTag.HKS_TAG_PADDING,
53    value: param.HksKeyPadding.HKS_PADDING_PKCS7,
54  },
55  HuksKeyAESBLOCKMODE: {
56    tag: param.HksTag.HKS_TAG_BLOCK_MODE,
57    value: param.HksCipherMode.HKS_MODE_CBC,
58  },
59  HuksKeyAESBLOCKMODECTR: {
60    tag: param.HksTag.HKS_TAG_BLOCK_MODE,
61    value: param.HksCipherMode.HKS_MODE_CTR,
62  },
63  HuksKeyAESBLOCKMODEECB: {
64    tag: param.HksTag.HKS_TAG_BLOCK_MODE,
65    value: param.HksCipherMode.HKS_MODE_ECB,
66  },
67  HuksKeyAESDIGESTNONE: {
68    tag: param.HksTag.HKS_TAG_DIGEST,
69    value: param.HksKeyDigest.HKS_DIGEST_NONE,
70  },
71};
72
73let HuksCipherRSA = {
74  HuksKeyAlgRSA: {
75    tag: param.HksTag.HKS_TAG_ALGORITHM,
76    value: param.HksKeyAlg.HKS_ALG_RSA,
77  },
78  HuksKeyPurpose: {
79    tag: param.HksTag.HKS_TAG_PURPOSE,
80    value: param.HksKeyPurpose.HKS_KEY_PURPOSE_ENCRYPT | param.HksKeyPurpose.HKS_KEY_PURPOSE_DECRYPT,
81  },
82  HuksKeyPurposeENCRYPT: {
83    tag: param.HksTag.HKS_TAG_PURPOSE,
84    value: param.HksKeyPurpose.HKS_KEY_PURPOSE_ENCRYPT,
85  },
86  HuksKeyPurposeDECRYPT: {
87    tag: param.HksTag.HKS_TAG_PURPOSE,
88    value: param.HksKeyPurpose.HKS_KEY_PURPOSE_DECRYPT,
89  },
90  HuksKeyRSASize512: {
91    tag: param.HksTag.HKS_TAG_KEY_SIZE,
92    value: param.HksKeySize.HKS_RSA_KEY_SIZE_512,
93  },
94  HuksKeyRSAPADDINGNONE: {
95    tag: param.HksTag.HKS_TAG_PADDING,
96    value: param.HksKeyPadding.HKS_PADDING_NONE,
97  },
98  HuksKeyRSAPADDINGPKCS1V15: {
99    tag: param.HksTag.HKS_TAG_PADDING,
100    value: param.HksKeyPadding.HKS_PADDING_PKCS1_V1_5,
101  },
102  HuksKeyRSAPADDINGOAEP: {
103    tag: param.HksTag.HKS_TAG_PADDING,
104    value: param.HksKeyPadding.HKS_PADDING_OAEP,
105  },
106  HuksKeyRSABLOCKMODEECB: {
107    tag: param.HksTag.HKS_TAG_BLOCK_MODE,
108    value: param.HksCipherMode.HKS_MODE_ECB,
109  },
110  HuksKeyRSADIGESTNONE: {
111    tag: param.HksTag.HKS_TAG_DIGEST,
112    value: param.HksKeyDigest.HKS_DIGEST_NONE,
113  },
114  HuksKeyRSADIGESTSHA1: {
115    tag: param.HksTag.HKS_TAG_DIGEST,
116    value: param.HksKeyDigest.HKS_DIGEST_SHA1,
117  },
118  HuksKeyRSADIGESTSHA224: {
119    tag: param.HksTag.HKS_TAG_DIGEST,
120    value: param.HksKeyDigest.HKS_DIGEST_SHA224,
121  },
122  HuksKeyRSADIGESTSHA256: {
123    tag: param.HksTag.HKS_TAG_DIGEST,
124    value: param.HksKeyDigest.HKS_DIGEST_SHA256,
125  },
126  HuksKeyRSADIGESTSHA384: {
127    tag: param.HksTag.HKS_TAG_DIGEST,
128    value: param.HksKeyDigest.HKS_DIGEST_SHA384,
129  },
130  HuksKeyRSADIGESTSHA512: {
131    tag: param.HksTag.HKS_TAG_DIGEST,
132    value: param.HksKeyDigest.HKS_DIGEST_SHA512,
133  },
134};
135export { HuksCipherAES, HuksCipherRSA };
136