Как жестко запрограммировать BLE-ключ для сопряжения в bluez 5.x? - PullRequest
0 голосов
/ 11 декабря 2019

Мне нужно иметь жестко закодированный пин-код (например, «123456») в моем периферийном устройстве, чтобы android mobile вводил этот код во время сопряжения.

Я использую Ubuntu 18.04, bluez 5.48 и чип Wi-Fi TI BLE4.0 + на борту.

В настоящее время я могу установить соединение, используя все другие методы, предоставляемые стеком (noinputoutput, Keyboardonly). , displayonly и keyboarddisplay).

На моем периферийном устройстве не будет дисплея и клавиатуры при производстве, и поэтому я планирую использовать уникальную клавишу, которая хранится в файле.

Я пытался изменить код простого агента, чтобы он возвращал фиксированный ключ .. Я также пытался настроить код bt-agent для передачи файла ключа доступа ... но все эти методы нельзя использовать, поскольку стек создает случайный ключ и не принимаетмой статический жестко закодированный ключ : (

Я видел десятки похожих вопросов в сети, но ни один из них не дал правильного ответа. Ранее я работал над несколькими другими чипами BLE ивыполнил то же самое требование (cc2650 и т. д. с их на чипе контроллера и стеке), но со стеком bluez я не в состоянии это сделать.

Я слышал, что в старом стеке была функция чтения булавки из файла, но какдобиться того же в новом стеке?

Следующие пункты являются обязательными, я надеюсь ?: 1) Я должен отключить hci0 sspmode 2) Мне нужен сервис Bluetooth-демона для работы 3) Мне нужен агент для сопряжения

Пожалуйстадайте мне знать, если кто-то достиг того же с bluez ...

Спасибо!

1 Ответ

0 голосов
/ 11 декабря 2019

Стандарт Bluetooth гласит, что пароль должен быть случайным для каждой попытки. Для этого есть веская причина: свойство защиты протокола нарушается, если пароль повторно используется (по крайней мере, для LE Secure Connections). Поэтому вам, вероятно, следует придерживаться метода «Just Works». Если вам нужна аутентификация, используйте алгоритм PAKE на уровне приложения.

Более подробное описание см. https://devzone.nordicsemi.com/f/nordic-q-a/35856/questions-about-lesc-mitm-and-passkey/138216#138216.

...