Как работает сопряжение Bluetooth?
Как работает точно работа Bluetooth? Что передается между каждым устройством во время процесса сопряжения?
Мне сказали, если вам нужно device-A установить пару с device-B:
- A отправляет "уникальный ключ" на устройство B на некоторой длине волны/частоте
-
B возвращает 'echo' обратно в A, и, следовательно, пары устройств.
+-----+ key +-----+
| | ----> | |
| A | | B |
| | <---- | |
+-----+ echoed +-----+
Это кажется неточным, так что кто-нибудь сможет либо расширить, либо объяснить, как/что передается, чтобы обеспечить успешное соединение устройств?
Я подумывал о включении некоторых из этих исследований в проект за последний год (университет), но по крайней мере сначала нужно было знать что-то о сопряжении с программированием Bluetooth.
Любая помощь будет очень оценена при описании того, как работают эти начальные сообщения.
Я слышал о таких терминах, как "припаркованный режим" и "пассивный режим" в рамках моих исследований, но еще не нашел "полезной" информации в программировании за дизайном (и, следовательно, я задал этот вопрос). Подобные googling темы такого типа также довольно сложно, так как, похоже, это создает такие вещи, как "как превратить ваш bluetooth" на страницы, а не дизайн программирования за ним.
Ответы
Ответ 1
Bluetooth Secure Simple Pairing использует криптографию с открытым ключом криптографии Elliptic Curve Diffie Hellman (ECDH) с приблизительно 95 битами энтропии с использованием утвержденной FIPS эллиптической кривой P192.
E:y2=x3 +ax+b(modp)
Приведены следующие параметры:
- Простой модуль p, порядок r, x-координата базовой точки Gx, базовая точка y-координата Gy.
-
Целые числа p и r задаются в десятичной форме; битовые строки и элементы поля задаются в шестнадцатеричном виде.
p = 6277101735386680763835789423207666416083908700390324961279
r = 6277101735386680763835789423176059013767194773182842284081
b = 64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1
Gx = 188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012
Gy = 07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811
Существует пять этапов безопасного простого сопряжения:
1. Обмен публичным ключом
Каждое устройство генерирует собственную парную пару открытого ключа Эллиптической кривой Diffie-Hellman (ECDH).
2. Этап аутентификации 1
1 из 3 параметров протокола выбирается соединительными устройствами на основе возможностей IO двух устройств. Это:
- Числовое сравнение,
- Из-из-Band,
- Ввод пароля
3. Этап аутентификации 2
Каждое устройство подтверждает, что оба устройства успешно завершили обмен, как это предусмотрено, какой из протоколов был выбран и используется на предыдущем шаге.
4. Расчет ключа ссылки
Ключ связи вычисляется из полученного совместно используемого ключа и данных, обмениваемых данными. Это числовой код, отображаемый пользователю.
5. Аутентификация и шифрование LMP
Создаются ключи шифрования. Устройства успешно подключены.
![enter image description here]()
Дальнейшее чтение:
Ответ 2
Доверительное отношение устанавливается между устройствами с использованием числового пароля, обычно называемого ключом доступа. В зависимости от того, как часто одно устройство Bluetooth подключается к другому, пользователь может выбрать, чтобы ключ доступа был сохранен для будущих попыток подключения, или предложите ввести ключ доступа каждый раз, когда устройства запрашивают связь друг с другом.
Подробнее: http://www.ehow.com/how-does_4964578_bluetooth-pairing-work.html
Для двух устройств, обладающих возможностью сопряжения, они должны совместно использовать один и тот же профиль bluetooth. Ниже приведен официальный веб-сайт Bluetooth:
Сопрягающиеся устройства
Не все устройства с поддержкой Bluetooth предназначены для сопряжения. По логике, нет никаких причин для подключения беспроводной мыши к беспроводной гарнитуре. Вы должны иметь возможность подключить Bluetooth-совместимую гарнитуру к Bluetooth-совместимому телефону или мышь с поддержкой Bluetooth на компьютере с поддержкой Bluetooth.
Если вы не уверены, что два устройства, которые вы хотите подключить, предназначены для сопряжения друг с другом, убедитесь, что их профили Bluetooth соответствуют.