未验证 提交 07361fe7 编写于 作者: O openharmony_ci 提交者: Gitee

!20042 [翻译完成】#I79Z10

Merge pull request !20042 from Annie_wang/PR18400
......@@ -421,6 +421,7 @@
- Test
- [@ohos.application.testRunner (TestRunner)](js-apis-application-testRunner.md)
- [@ohos.deviceAttest (Device Attestation)](js-apis-deviceAttest.md)
- [@ohos.uitest (UiTest)](js-apis-uitest.md)
- APIs No Longer Maintained
......
# @ohos.deviceAttest (Device Attestation)
The **deviceAttest** module provides attestation of devices in OpenHarmony by comparing the device information with that stored in the cloud.
You can use the APIs provided by the **deviceAttest** module to obtain the device attestation result.
> **NOTE**
>
> - The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version.
>
> - The APIs provided by this module are system APIs.
## Modules to Import
```js
import deviceAttest from '@ohos.deviceAttest';
```
## deviceAttest.getAttestStatus
getAttestStatus(callback: AsyncCallback<AttestResultInfo>) : void
Obtains details about the device attestation result from the cloud. This API uses an asynchronous callback to return the result.
**System capability**: SystemCapability.XTS.DeviceAttest
**Parameters**
| Name | Type | Mandatory| Description |
| -------- | ----------------------------------------------------------- | ---- | ------------------------------------------------------------ |
| callback | AsyncCallback&lt;[AttestResultInfo](#attestresultinfo)&gt; | Yes | Callback invoked to return the result.<br/>If the operation is successful, **error** is **undefined**, and **result** is the [AttestResultInfo](#attestresultinfo) obtained. Otherwise, **error** is an error object. |
**Error codes**
| ID | Error Message |
|----------|----------------------|
| 20000001 | system service exception. |
**Example**
```js
try {
deviceAttest.getAttestStatus((error, value) => {
if (typeof error != 'undefined') {
console.info("error code:" + error.code + " message:" + error.message);
} else {
console.info("auth:" + value.authResult + " software:" + value.softwareResult + " ticket:" + value.ticket);
console.info("versionIdResult:" + value.softwareResultDetail[0],
" patchlevelResult:" + value.softwareResultDetail[1],
" roothashResult:" + value.softwareResultDetail[2],
" PCIDResult:" + value.softwareResultDetail[3],
" reserver:" + value.softwareResultDetail[4]);
}
})
} catch (error) {
console.info("error code:" + error.code + " message:" + error.message);
}
```
## deviceAttest.getAttestStatus
getAttestStatus() : Promise&lt;AttestResultInfo&gt;
Obtains details about the device attestation result from the cloud. This API uses a promise to return the result.
**System capability**: SystemCapability.XTS.DeviceAttest
**Return value**
| Type | Description |
| ----------------------------------------------------- | ------------------------------- |
| Promise&lt;[AttestResultInfo](#attestresultinfo)&gt; | Promise used to return the device attestation information obtained.|
**Error codes**
| ID | Error Message |
|----------|----------------------|
| 20000001 | system service exception. |
**Example**
```js
try {
deviceAttest.getAttestStatus().then((value) => {
console.info("auth:" + value.authResult + " software:" + value.softwareResult + " ticket:" + value.ticket);
console.info("versionIdResult:" + value.softwareResultDetail[0],
" patchlevelResult:" + value.softwareResultDetail[1],
" roothashResult:" + value.softwareResultDetail[2],
" PCIDResult:" + value.softwareResultDetail[3],
" reserver:" + value.softwareResultDetail[4]);
}).catch((error) => {
console.info("error code:" + error.code + " message:" + error.message);
});
} catch (error) {
console.info("error code:" + error.code + " message:" + error.message);
}
```
## deviceAttest.getAttestStatusSync
getAttestStatusSync() : AttestResultInfo
Obtains details about the device attestation result from the cloud synchronously.
**System capability**: SystemCapability.XTS.DeviceAttest
**Return value**
| Type | Description |
| ----------------------------------------------------- | ------------------------------- |
| [AttestResultInfo](#attestresultinfo) | Returns the device attestation information obtained.|
**Error codes**
| ID | Error Message |
|----------|----------------------|
| 20000001 | system service exception. |
**Example**
```js
try {
let value = deviceAttest.getAttestStatusSync();
console.info("auth:" + value.authResult + " software:" + value.softwareResult + " ticket:" + value.ticket);
console.info("versionIdResult:" + value.softwareResultDetail[0],
" patchlevelResult:" + value.softwareResultDetail[1],
" roothashResult:" + value.softwareResultDetail[2],
" PCIDResult:" + value.softwareResultDetail[3],
" reserver:" + value.softwareResultDetail[4]);
} catch (error) {
console.info("error code:" + error.code + " message:" + error.message);
}
```
## AttestResultInfo
Defines the device attestation result information.
**System capability**: SystemCapability.XTS.DeviceAttest
| Name | Type | Readable| Writable| Description |
| --------------------- | --------------------- | ---- | ---- | ---------------------- |
| authResult | number | Yes | No | Device hardware attestation result. |
| softwareResult | number | Yes | No | Device software attestation result. |
| softwareResultDetail | Array&lt;number&gt; | Yes | No | Detailed information about the device software attestation result.<br>- **softwareResultDetail[0]**: version ID attestation result.<br>- **softwareResultDetail[1]**: attestation result of the security patch label.<br>- **softwareResultDetail[2]**: version hash attestation result.<br>- **softwareResultDetail[3]**: attestation result of the system capability set.<br>- **softwareResultDetail[4]**: reserved. |
| ticket | string | Yes | No | Soft certificate delivered by the cloud.<br>If the device hardware attestation is successful, a value is returned. If the attestation fails, this parameter is empty. |
> **NOTE**
>
> The attestation result of device hardware and software information can be any of the following:
>
> - **-2**: No attestation is performed.
> - **-1**: The attestation fails.
> - **0**: The attestation is successful.
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册