Есть ли способ однозначно идентифицировать устройство BLE? - PullRequest
0 голосов
/ 17 января 2019

Я хочу хранить информацию об устройстве BLE локально, но я не могу полагаться на MAC-адрес, потому что он меняется слишком часто. Есть ли способ сделать это?

1 Ответ

0 голосов
/ 18 января 2019

Адрес Bluetooth - лучший способ различать устройства. Это упоминается в спецификации Bluetooth следующим образом [1]:

Устройства идентифицируются по адресу устройства. Адреса устройств могут быть либо общедоступный адрес устройства, либо случайный адрес устройства. Публичный адрес устройства и случайный адрес устройства имеют длину 48 бит

Как упоминал Майк, существует несколько типов MAC-адресов, и тот, который меняется, не тот, на который вы хотите посмотреть. Спецификация Bluetooth идентифицирует следующие адреса: -

  • Публичный адрес : Это уникальный адрес, созданный в соответствии со стандартом IEEE 802-2014. Для вас это адрес, соответствующий вашему ответу.
  • Случайный статический адрес : Это случайно сгенерированный адрес, который не изменяется, если устройство не выключено и не выключено. Поэтому, если ваше устройство не выключено, вы можете использовать этот адрес для его идентификации.
  • Частный разрешаемый адрес : Это изменяющийся MAC-адрес (с частотой изменения в зависимости от приложения), который можно разрешить и связать с уникальным адресом устройства, если известен IRK (т.е. если устройства сопряжены).
  • Частный неразрешимый адрес : Это изменяющийся MAC-адрес (с частотой изменения в зависимости от приложения), который нельзя разрешить или связать с уникальным адресом устройства. Этот тип адреса обычно используется в целях безопасности, когда устройство только рекламирует.

Для получения дополнительной информации см. Ссылку ниже.

Надеюсь, это поможет.

[1] Базовая версия Bluetooth версии 5.0, том 6, часть B, раздел 1.3 АДРЕС УСТРОЙСТВА.

...