harmony 鸿蒙Security Subsystem Changelog
Security Subsystem Changelog
cl.security.1 ParamsSpec Attribute Name Change
Changed algoName of the ParamsSpec structure to algName.
Change Impact
For the released JavaScript APIs that use ParamsSpec and its child classes IvParamsSpec, GcmParamsSpec, and CcmParamsSpec as parameters or return values, algoName must be changed to algName. The change must be made for all the applications that use these APIs. Otherwise, the compilation in the SDK of the new version cannot be successful.
Key API/Component Changes
API prototype before the change:
interface ParamsSpec {
/**
* Indicates the algorithm name. Should be set before initialization of a cipher object.
* @type { string }
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
algoName : string;
}
API prototype after the change:
interface ParamsSpec {
/**
* Indicates the algorithm name. Should be set before initialization of a cipher object.
* @type { string }
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
algName : string;
}
Adaptation Guide
Change algoName to algName in ParamsSpec and its child classes IvParamsSpec, GcmParamsSpec, and CcmParamsSpec.
function genGcmParamsSpec() {
let arr = [0, 0, 0, 0 , 0, 0, 0, 0, 0, 0 , 0, 0]; // 12 bytes
let dataIv = new Uint8Array(arr);
let ivBlob = {data : dataIv};
arr = [0, 0, 0, 0 , 0, 0, 0, 0]; // 8 bytes
let dataAad = new Uint8Array(arr);
let aadBlob = {data : dataAad};
arr = [0, 0, 0, 0 , 0, 0, 0, 0, 0, 0, 0, 0 , 0, 0, 0, 0]; // 16 bytes
let dataTag = new Uint8Array(arr);
let tagBlob = {data : dataTag};
let gcmParamsSpec = {iv : ivBlob, aad : aadBlob, authTag : tagBlob, algName : "GcmParamsSpec"};
return gcmParamsSpec;
}
For details, see the APIs of ParamsSpec in Crypto Framework.
Change of cl.security.2 ECC Algorithm Parameter Name from ECC512 to ECC521
Change Impact
Behavior of released JavaScript APIs will be changed. The application needs to be adapted to obtain the correct result in the SDK of the new version.
Key API/Component Changes The parameter passed in the APIs is changed from ECC512 to ECC521. The related APIs remain unchanged. For details, see Key Generation Specifications. The following APIs are involved:
cryptoFramework.createAsyKeyGenerator
cryptoFramework.createSign
cryptoFramework.createVerify
cryptoFramework.createKeyAgreement
Adaptation Guide
import cryptoFramework from "@ohos.security.cryptoFramework"
let asyKeyGenerator = cryptoFramework.createAsyKeyGenerator("ECC521");
你可能感兴趣的鸿蒙文章
harmony 鸿蒙App Access Control Subsystem ChangeLog
harmony 鸿蒙Web Subsystem Changelog
harmony 鸿蒙Account Subsystem Changelog
harmony 鸿蒙ArkUI Subsystem Changelog
harmony 鸿蒙Bundle Manager Subsystem Changelog
harmony 鸿蒙Common Event Subsystem Changelog
harmony 鸿蒙File Management Subsystem Changelog
harmony 鸿蒙Pasteboard Subsystem Changelog
- 所属分类: 后端技术
- 本文标签:
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦