0

I am working on a project about intercepting Bluetooth Low Energy (BLE) traffic. Bluetooth offers different kinds of pairing mechanisms like "Just Works" and "Passkey Entry". Furthermore, a Bluetooth connection can be encrypted on the link layer.

In order to test these different situations I had the idea to write an Android app that implements the different security mechanisms. So my question is:

Is it possible to specify the pairing mechanism and switch link layer encryption on and off in an Android app?

I had a look at the Android Documentation but couldn't find an answer there.

arne.z
  • 3,242
  • 3
  • 24
  • 46

1 Answers1

1

It is not possible to specify the pairing mechanism from an android app. It might be possible to implicitly enforce a pairing mechanism by letting the remote Bluetooth device only support a specific pairing mechanism.

It is not possible to switch link layer encryption on and off from an android app. It is possible to check encryption status by the hidden method BluetoothDevice.isEncrypted (https://android.googlesource.com/platform/frameworks/base/+/android-7.0.0_r21/core/java/android/bluetooth/BluetoothDevice.java#1020). It might be possible to switch link layer encryption on and off from the remote Bluetooth device.

TobiasMelin
  • 231
  • 2
  • 5