
回复
为了确保应用的完整性和来源可靠,OpenHarmony需要对应用进行签名和验签。
图 1 应用完整性校验架构图
应用完整性校验在OpenHarmony中使用的证书,是专为OpenHarmony生成的,涉及的公钥证书和对应的私钥均预置在OpenHarmony开源代码仓中,为开源社区提供离线签名和校验能力;在商用版本中应替换此公钥证书和对应的私钥。
应用完整性校验模块提供一个子系统间接口,由包管理服务在安装应用时调用。
接口名 | 说明 |
---|---|
int HapVerify(const std::string& filePath, HapVerifyResult& hapVerifyResult) | 校验应用完整性,识别应用来源 |
应用完整性校验提供的是子系统间接口,仅提供底层能力,不对开发者开放。以应用文件路径作为输入,调用HapVerify接口即可校验应用完整性,通过接口返回值可以获取校验结果,通过引用传参hapVerifyResult获取签名相关信息。
安全子系统
hmf/security/appverify