1/* 2 * Copyright (c) 2023 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 16/** 17 * @addtogroup HdfHuks 18 * @{ 19 * 20 * @brief Provides standard driver APIs for the OpenHarmony Universal KeyStore (HUKS). 21 * 22 * The HUKS driver APIs define standard interfaces of the HUKS Core and provide 23 * a unified driver interface for the HUKS service. 24 * You can use these APIs to implement key lifecycle management, including key 25 * generation, key import and export, key operations, key access control, and 26 * key attestation. 27 * 28 * @since 4.0 29 */ 30 31 /** 32 * @file IHuksTypes.idl 33 * 34 * @brief Defines the structs used in HUKS driver interfaces. 35 * 36 * @since 4.0 37 */ 38 39package ohos.hdi.huks.v1_0; 40 41/** 42 * @brief Defines the HUKS binary data struct, which encapsulates parameters 43 * such as the key material and key properties. 44 * 45 * @since 4.0 46 * @version 1.0 47 */ 48struct HuksBlob { 49 /** 50 * Binary data 51 */ 52 unsigned char[] data; 53}; 54 55/** 56 * @brief Defines the struct for the parameter set of HUKS key management interfaces. 57 * 58 * @since 4.0 59 * @version 1.0 60 */ 61struct HuksParamSet { 62 /** 63 * Serialized parameter set. For details about the property set struct, 64 * see the HUKS Device Development. 65 */ 66 unsigned char[] data; 67}; 68 69/** 70 * @brief Enumerates the decryption scenarios using the chipset key. 71 * 72 * @since 4.0 73 * @version 1.0 74 */ 75enum HuksChipsetPlatformDecryptScene { 76 /** 77 * Chipset key decryption for trusted applications in a Trusted Execution 78 * Environment (TEE). 79 */ 80 HUKS_CHIPSET_PLATFORM_DECRYPT_SCENCE_TA_TO_TA = 1, 81}; 82/** @} */