Search code examples
linuxbluetoothbluetooth-lowenergybluezpairing

In Linux kernel code how to disable CTKD (Cross Transport Key Derivation) feature for Bluetooth-BLE


When we connect and bond BLE, link keys are generated for both BLE and BREDR. This because of CTKD (Cross Transport Key Derivation).

Query: In Linux code (5.14.0-1027), with Bluez 5.61, I want link keys to be generated separately during BLE and BT connection. How can I disable this CTKD feature? Is there any flag that will help to disable this?

My attempt: I tried to comment the code that generates BREDR link key during BLE connection, but this way has a impact during BREDR connection.


Solution

  • After analyzing the Bluetooth related Linux Kernel code, it was found that the Cross transport Key derivation code is tightly coupled.

    In on of the Linux forum, it say this implementation is intentional Click Here.

    So the CTKD cannot be disabled with any macro or simple condition.