User's Manual

9
Type is a value with a common standard. You can check the meaning of the specific number on the
official website of the Bluetooth Alliance. The commonly used ones are as follows:
Incomplete 16Bit service UUID (0x02), incomplete 128Bit service UUID (0x06), device full name (0x08), device
abbreviation (0x09), vendor-defined data (0xFF), ···
When setting a custom broadcast, the broadcast data must conform to the format of the user data unit
shown in the figure above, otherwise the setting cannot be successful.
4.3 Application layer authentication processing flow
The application layer authentication mechanism is used to implement user access permission
restrictions at the application layer. This mechanism can be enabled when the standard
Bluetooth pairing encryption mechanism cannot meet the requirements.
After setting to enable application layer authentication in the encryption option (the
authentication control bit in the encryption option is set to 1), the module forces the access
user to pass the authentication mechanism to communicate normally. At the same time, the
encryption option, decryption option, and the use of random key encryption option should be
enabled to ensure the communication data.
All are transmitted in cipher text.
Figure 5 shows the authentication process after opening.
The host requests a random key, refer to the random key generation instruction (ID=0xA0);
The host receives the random key generated by the slave and encrypted (using the private
key to encrypt the random key AES128-ECB);
After the host encrypts the received random key (using the private key for AES128-ECB
encryption), it sends it back to the module through the command (ID=0xA0);
The module side verifies the random key and sends the verification result back to the
host side;
The host can send verification multiple times. After the verification is passed, the host
has the permission to access the slave. If the verification fails within 30 seconds, the module
will actively disconnect;
After the verification is passed, the module will encrypt the sent data with a random
key, and decrypt the received data with a random key.