首页 > 解决方案 > 从随机私有可解析地址获取 BLE MAC

问题描述

我想将 Android 设备(客户端)连接到外部 BLE 设备(服务器)。我有几个关于私有随机可解析地址机制的问题。

最后,我想要一个 BLE 连接,它使用私有随机可解析地址来确保隐私,并且仍然能够在我的服务器上获取客户端的原始 BLE MAC 以供内部使用。

如果有人能回答我的问题,我将不胜感激。

最好的大卫

标签: bluetooth-lowenergyprivacymac-address

解决方案


When bonding, zero, one or both devices can send Resolving keys if negotiated so. For each device that sends Resolving key (IRK), the Identity Address is also always sent. This contains the original Bluetooth Device address and can be either public or static random. It's this address that only bonded devices know.

The idea of the privacy feature is to never use the original Bluetooth device address in Link Layer packets but instead a randomly generated one that is changed every x minutes (usually 15). This way, if it advertises regularly, someone can't track it since it disappears after 15 min. However if you have the corresponding IRK then you can determine if the IRK matches or not. If it matches you also know the original Bluetooth Device address since your bond data contains both the IRK and original address. But if you throw away that address then you can't recover the original address, even if you have the IRK.

If only one of two devices uses random resolvable address, then the one with resolvable address can't be tracked by a non-bonded device and the one that does not use a random resolvable address can be tracked.


推荐阅读