10

Android 5 führt BLE MAC-Adresse für mehr Privatsphäre rotierend ein. Jedes Mal, wenn BluetoothLeAdvertiser.startAdvertising() aufgerufen wird, wird die MAC-Adresse geändert.Android 5 statische Bluetooth MAC-Adresse für BLE Werbung

Ist es möglich, die Adresse rotierend zu deaktivieren und während der gesamten Lebensdauer von BluetoothLeAdvertiser dieselbe MAC-Adresse zu verwenden?

Antwort

12

Die MAC-Adresse ist eine physikalische Adresse und ändert sich nicht. In der BLE-Terminologie ist dies die Adresse für öffentliche Geräte oder BD_ADDR für BR/EDR. Ich habe es nicht versucht, aber das Lesen mit readAddress() sollte jedes Mal den gleichen Wert zurückgeben.

Was das BLE-Framework des Androids tut, verwendet diese Adresse nicht, wenn es annonciert. Es ermöglicht vielmehr Privatsphäre durch die Verwendung von privaten auflösbaren Adressen, die sich alle paar Minuten ändern können, aber verbundenen Geräten erlauben, sie unter Verwendung des IRK zu erkennen, das beim Bonden ausgetauscht wird.

Aus offensichtlichen Datenschutzgründen können Sie im Android-BLE-Framework nicht festlegen, dass der Controller die öffentliche Adresse für die Werbung verwendet. Sie können also die "rotierende Adresse" nicht deaktivieren.

+0

Könnten Sie irgendeine Art von Quelle hinzufügen? – DagW

+2

Bluetooth 4.2 Kernspezifikation: https://www.bluetooth.org/DocMan/handlers/DownloadDoc.ashx?doc_id=286439 –

+0

@BogdanAlexandru wenn die Werbepakete nur die privaten auflösbaren Adressen haben, dann, wie funktioniert ein [ScanFilter] (http://developer.android.com/reference/android/bluetooth/le/ScanFilter.html) basierend auf MAC-Adressen funktionieren? irgendeine Idee? –