Files
yuanjiazheng 582b6b71fd Update Docs.
Signed-off-by: yuanjiazheng <yuanjiazheng1@h-partners.com>
2025-09-29 11:09:40 +08:00

5.3 KiB
Raw Permalink Blame History

device_attest_lite部件

简介

device_attest_lite,轻量级设备证明部件,是OpenHarmony compatibility agreement约定需要设备厂商在产品中集成的模块,用于支撑生态伙伴完成产品的兼容性测试。其基本功能是看护OpenHarmony生态设备认证结果,通过端云校验机制,支撑OpenHarmony南北向生态统一,保障用户体验。该部件用于轻量系统(mini system)和小型系统(small system)。生态伙伴(即设备厂商)兼容性测试工作流程:
1、设备厂商在OpenHarmony兼容性平台注册企业账号,完成设备信息登记,将登记的设备信息写入设备,并完成依赖接口适配;
2、设备厂商启动兼容性测试,上传xts测试报告;
3、OpenHarmony认证云认证通过设备厂商产品信息,发放token到OpenHarmony兼容性平台;
4、设备厂商从OpenHarmony兼容性平台获取token
5、设备厂商经三方产线将token烧录到OpenHarmony设备;
6、轻量级设备证明部件与OpenHarmony认证云通信,对设备进行激活/认证,设备从OpenHarmony认证云获取证明结果,存储到本地;
7、系统服务、系统应用等可通过轻量级设备证明部件提供的接口获取认证结果,并基于认证结果进行业务设计。

工作流程图:

目录

/test/xts
├── device_attest_lite          # 轻量级设备证明部件代码存放目录
│   └── build                   # 编译配置存放目录
│   └── figures                 
│   └── framework               # 系统能力服务框架
│       └── mini                # 轻量系统服务框架
│       └── small               # 小型系统服务框架
│   └── interfaces              # 对外接口
│   └── services                # 服务主体和业务逻辑代码
│       └── core                # 业务逻辑代码
│   └── test                    # 测试用例编译配置存放目录
│       └── startup             # 小型系统启动示例存放目录
│       └── unittest            # 测试用例代码存放目录

架构图

1、设备启动联网后,主动调起轻量级设备证明部件主流程,读取token和系统参数,发起设备认证端云通信;
2、端云通信采用coap+tls协议,轻量级设备证明部件将token和系统参数上传到OpenHarmony认证云,并获取认证结果和新token;
3、轻量级设备证明部件将认证结果存储到沙箱目录,并更新token;
4、轻量级设备证明部件对外提供认证结果查询接口,供其他模块判定设备是否已通过认证,比如系统服务、系统应用等。

约束

表 1 轻量级设备证明部件集成依赖库

库名称 版本号 功能描述 仓库路径
mbedtls 2.16.11 供嵌入式设备使用的一个 TLS 协议的轻量级实现库。 third_party\mbedtls
cJSON 1.7.15 JSON 文件解析库。 third_party\cJSON
libsec 1.1.10 安全函数库。 bounds_checking_function
parameter OpenHarmony 1.0 release及之后版本 获取设备信息的系统接口。 base\startup\init\interfaces\innerkits\include\syspara\parameter.h

对外接口

表 2 轻量级设备证明部件对外接口

接口名 描述
int32_t StartDevAttestTask(void); 启动轻量级设备证明服务主流程
int32_t GetAttestStatus(AttestResultInfo* attestResultInfo); 获取设备认证结果

集成轻量级设备证明部件的设备在网络连接成功后主动调用StartDevAttestTask函数,启动轻量级设备证明服务主流程。通过调用GetAttestStatus接口,可以获得设备认证结果。

编译指令

mini设备

hb set
#选择 设备类型
hb build

编译成功后,在out/芯片类型/产品类型/libs路径下生成libdevattest_core.a和libdevattest_sdk.a

small设备

hb set
#选择 设备类型
hb build

编译成功后,在out/芯片类型/产品类型/usr/lib下生成libdevattest_core.so、libdevattest_server.so、libdevattest_client.so

相关仓

xts_device_attest

xts_device_attest_lite