Bluetooth LE security API (authorisation, authentication and encryption)
- Note
- General Security APIs are listed in Generic Security API section.
|
wiced_result_t | wiced_bt_dev_add_device_to_address_resolution_db (wiced_bt_device_link_keys_t *p_link_keys) |
| add link key information to internal address resolution db More...
|
|
wiced_result_t | wiced_bt_dev_remove_device_from_address_resolution_db (wiced_bt_device_link_keys_t *p_link_keys) |
| remove link key information from internal address resolution db More...
|
|
uint16_t | wiced_bt_dev_get_acl_conn_handle (wiced_bt_device_address_t bdaddr, wiced_bt_transport_t transport) |
| get the acl connection handle for bdaddr More...
|
|
void | wiced_bt_ble_security_grant (wiced_bt_device_address_t bd_addr, wiced_bt_dev_status_t res) |
| Grant or deny access. More...
|
|
wiced_bool_t | wiced_bt_ble_data_signature (wiced_bt_device_address_t bd_addr, uint8_t *p_text, uint16_t len, wiced_dev_ble_signature_t signature) |
| Sign the data using AES128 CMAC algorith. More...
|
|
wiced_bool_t | wiced_bt_ble_verify_signature (wiced_bt_device_address_t bd_addr, uint8_t *p_orig, uint16_t len, uint32_t counter, uint8_t *p_comp) |
| Verify the data signature. More...
|
|
wiced_bool_t | wiced_bt_ble_get_security_state (wiced_bt_device_address_t bd_addr, uint8_t *p_le_sec_flags, uint8_t *p_le_key_size) |
| Get security mode 1 flags and encryption key size for LE peer. More...
|
|
wiced_bt_dev_status_t | wiced_bt_ble_set_privacy_mode (wiced_bt_device_address_t remote_bda, wiced_bt_ble_address_type_t rem_bda_type, wiced_bt_ble_privacy_mode_t privacy_mode) |
| Updates privacy mode if device is already available in controller resolving list. More...
|
|
wiced_bt_dev_status_t | wiced_bt_ble_read_device_random_address (wiced_bt_device_address_t random_bd_addr) |
| Get the configured local random device address. More...
|
|
wiced_result_t | wiced_ble_private_device_address_resolution (wiced_bt_device_address_t rpa, BT_OCTET16 irk) |
| Function wiced_ble_private_device_address_resolution. More...
|
|
wiced_result_t | wiced_bt_ble_address_resolution_list_clear_and_disable (void) |
| Function wiced_bt_ble_address_resolution_list_clear_and_disable. More...
|
|
◆ wiced_bt_ble_security_grant()
Grant or deny access.
Used in response to an BTM_SECURITY_REQUEST_EVT event.
- Parameters
-
[in] | bd_addr | : peer device bd address. |
[in] | res | : WICED_BT_SUCCESS to grant access; WICED_BT_UNSUPPORTED , if local device does not allow pairing; WICED_BT_REPEATED_ATTEMPTS otherwise |
- Returns
- None
◆ wiced_bt_dev_add_device_to_address_resolution_db()
add link key information to internal address resolution db
- Parameters
-
[in] | p_link_keys | : link keys information stored in application side |
- Returns
- wiced_result_t
◆ wiced_bt_dev_remove_device_from_address_resolution_db()
remove link key information from internal address resolution db
- Parameters
-
[in] | p_link_keys | : link keys information stored in application side |
- Returns
- wiced_result_t
◆ wiced_bt_dev_get_acl_conn_handle()
get the acl connection handle for bdaddr
- Parameters
-
[in] | bdaddr | device identity address |
[in] | transport | connection transport |
- Returns
- : acl connection handle
◆ wiced_bt_ble_data_signature()
Sign the data using AES128 CMAC algorith.
- Parameters
-
[in] | bd_addr | target device the data to be signed for. |
[in] | p_text | signing data |
[in] | len | length of the signing data |
[in] | signature | output parameter where data signature is going to be stored |
- Returns
- TRUE if signing successful, otherwise FALSE.
◆ wiced_bt_ble_verify_signature()
Verify the data signature.
- Parameters
-
[in] | bd_addr | target device the data to be signed for. |
[in] | p_orig | original data before signature. |
[in] | len | length of the signing data |
[in] | counter | counter used when doing data signing |
[in] | p_comp | signature to be compared against. |
- Returns
- TRUE if signature verified correctly; otherwise FALSE.
◆ wiced_bt_ble_get_security_state()
Get security mode 1 flags and encryption key size for LE peer.
- Parameters
-
[in] | bd_addr | : peer address |
[out] | p_le_sec_flags | : security flags (see wiced_bt_ble_sec_flags_e) |
[out] | p_le_key_size | : encryption key size |
- Returns
- TRUE if successful
◆ wiced_bt_ble_set_privacy_mode()
Updates privacy mode if device is already available in controller resolving list.
- Parameters
-
[in] | remote_bda | -remote device address received during connection up |
[in] | rem_bda_type | -remote device address type received during connection up |
[in] | privacy_mode | - privacy mode (see wiced_bt_ble_privacy_mode_t) |
- Returns
- wiced_bt_dev_status_t
WICED_BT_ILLEGAL_VALUE : if paramer is wrong
WICED_BT_UNSUPPORTED : if command not supported
WICED_BT_UNKNOWN_ADDR : if bd_addr is wrong
WICED_BT_ILLEGAL_ACTION : if device not added to resolving list or peer irk is not valid
WICED_BT_ERROR : error while processing the command
WICED_BT_SUCCESS : if command started
◆ wiced_bt_ble_read_device_random_address()
Get the configured local random device address.
Note : random address depends on below settings in that priority order. 1) Global privacy configuration using rpa_refresh_timeout (see wiced_bt_cfg_settings_t). 2) else configured for static random bd_address while downloading using BT_DEVICE_ADDRESS=random build setting.
- Parameters
-
[out] | random_bd_addr | - device random bd address |
- Returns
- wiced_bt_dev_status_t WICED_BT_SUCCESS : if random address is configured.
WICED_BT_WRONG_MODE : if random address not configured.
◆ wiced_ble_private_device_address_resolution()
Function wiced_ble_private_device_address_resolution.
This API verifies whether given device address is Resolvable Private Address or not
- Parameters
-
rpa | LE Resolvable Private Address |
irk | LE IRK |
- Returns
- wiced_result_t WICED_BT_SUCCESS the identity of device address has been resolved. WICED_BT_ERROR otherwise.
◆ wiced_bt_ble_address_resolution_list_clear_and_disable()
wiced_result_t wiced_bt_ble_address_resolution_list_clear_and_disable |
( |
void |
| ) |
|
Function wiced_bt_ble_address_resolution_list_clear_and_disable.
This API clears the address resolution list and disables the address resolution feature.
- Returns
- wiced_result_t WICED_BT_SUCCESS if address resolution list is cleared and adress resolution feature is disabled. WICED_BT_ERROR otherwise.