diff --git a/en/device-dev/driver/driver-peripherals-pinauth-des.md b/en/device-dev/driver/driver-peripherals-pinauth-des.md
index 08a3ac84a224ca046bd7b2439199011f3d934da5..888e229cce93bf29bb78a9b156b180d8237850bd 100644
--- a/en/device-dev/driver/driver-peripherals-pinauth-des.md
+++ b/en/device-dev/driver/driver-peripherals-pinauth-des.md
@@ -25,11 +25,11 @@ The identity authentication consists of User_auth and basic authentication servi
- Executor role
- - Executor: independently completes the entire process of credential registration and identity authentication. The executor can collect, process, store, and compare data to complete the authentication.
+ - Executor: independently completes the entire process of credential registration and identity authentication. The executor can collect, process, store, and compare data to complete the authentication.
- - Collector: only collects data during user authentication. It needs to work with the authenticator to complete user authentication.
+ - Collector: only collects data during user authentication. It needs to work with the authenticator to complete user authentication.
- - Authenticator: only processes data, obtains the stored credential template, and compares it with the authentication information generated.
+ - Authenticator: only processes data, obtains the stored credential template, and compares it with the authentication information generated.
- Executor type
@@ -56,7 +56,7 @@ The identity authentication consists of User_auth and basic authentication servi
The Pin_auth driver provides basic PIN authentication capabilities for the upper-layer User_auth and Pin_auth service to ensure successful PIN authentication. You can develop drivers to call Hardware Device Interface (HDI) APIs based on the HDF and the chip you use.
-**Figure 2** Pin_auth service and pin_auth driver APIs
+**Figure 2** Pin_auth service and Pin_auth driver APIs
![image](figures/pin_auth_service_and_driver_interaction.png "interaction between the pin_auth service and driver")
@@ -93,24 +93,32 @@ The Pin_auth driver provides basic PIN authentication capabilities for the User_
### How to Develop
-The following uses the RK3568 platform as an example to demonstrate how to develop the Pin_auth driver.
The directory structure is as follows:
+The following uses the RK3568 platform as an example to demonstrate how to develop the Pin_auth driver.
-```
+The directory structure is as follows:
+
+```text
// drivers/peripheral/pin_auth
├── BUILD.gn # Build script
├── bundle.json # Module description file
+├── test # Test cases
└── hdi_service # Pin_auth driver implementation
├── BUILD.gn # Build script
- ├── inc # Header files
- └── src
- ├── executor_impl.cpp # Implementation of authentication and enrollment APIs
- ├── pin_auth_interface_driver.cpp # Pin_auth driver entry
- └── pin_auth_interface_service.cpp # Implementation of the APIs for obtaining the executor list
+ ├── adaptor # Implementation of related algorithms
+ ├── common # Implementation of common interfaces
+ ├── database # Database implementation
+ ├── main # Entry for implementing PIN-related functions
+ └── service # Entry for implementing the Pin_auth driver
+ ├── inc # Header files
+ └── src
+ ├── executor_impl.cpp # Implementation of authentication and enrollment APIs
+ ├── pin_auth_interface_driver.cpp # Pin_auth driver entry
+ └── pin_auth_interface_service.cpp # Implementation of the APIs for obtaining the executor list
```
The development procedure is as follows:
-1. Develop the Pin_auth driver based on the HDF. The **Bind()**, **Init()**, **Release()**, and **Dispatch()** functions are used. For details about the code, see [pin_auth_interface_driver.cpp](https://gitee.com/openharmony/drivers_peripheral/blob/master/pin_auth/hdi_service/src/pin_auth_interface_driver.cpp).
+1. Develop the Pin_auth driver based on the HDF. The **Bind()**, **Init()**, **Release()**, and **Dispatch()** functions are used. For details about the code, see [pin_auth_interface_driver.cpp](https://gitee.com/openharmony/drivers_peripheral/blob/master/pin_auth/hdi_service/service/src/pin_auth_interface_driver.cpp).
```c++
// Create the PinAuthInterfaceService object by using the custom HdfPinAuthInterfaceHost object, which consists of the IoService object and HDI service.
@@ -212,7 +220,7 @@ The development procedure is as follows:
-1. Obtain the executor list. For details about the code, see [pin_auth_interface_service.cpp](https://gitee.com/openharmony/drivers_peripheral/blob/master/pin_auth/hdi_service/src/pin_auth_interface_service.cpp).
+1. Obtain the executor list. For details about the code, see [pin_auth_interface_service.cpp](https://gitee.com/openharmony/drivers_peripheral/blob/master/pin_auth/hdi_service/service/src/pin_auth_interface_service.cpp).
```c++
// Executor implementation class
@@ -285,7 +293,7 @@ The development procedure is as follows:
-1. Implement each function of the executor. For details about the code, see [executor_impl.cpp](https://gitee.com/openharmony/drivers_peripheral/blob/master/pin_auth/hdi_service/src/executor_impl.cpp).
+1. Implement each function of the executor. For details about the code, see [executor_impl.cpp](https://gitee.com/openharmony/drivers_peripheral/blob/master/pin_auth/hdi_service/service/src/executor_impl.cpp).
```c++
// Obtain executor information (example only).
@@ -526,7 +534,8 @@ The development procedure is as follows:
### Verification
Verify whether PIN authentication can be successfully performed on the RK3568 platform as follows:
-1. Set a PIN.
+1. Set a PIN.
+
Touch **Settings** > **Biometrics & passwords** > **Password**, and enter your password.
2. Verify PIN authentication.