Да, ваше предположение частично верно. Шифрование является одним из способов использования Passkey.
Сопряжение Bluetooth необходимо всякий раз, когда два устройства Bluetooth соединяются друг с другом для совместного использования ресурсов. Между устройствами устанавливаются доверительные отношения с использованием числового пароля, обычно называемого паролем. В зависимости от того, как часто одно устройство Bluetooth подключается к другому, пользователь может выбрать сохранение пароля для будущих попыток подключения или запросить ввод пароля каждый раз, когда устройства запрашивают связь друг с другом.
Это уже объясняется при переполнении стека, пожалуйста, проверьте- Как работает сопряжение Bluetooth?
В приведенном ниже ответе я попытаюсь объяснить, что не упомянуто в приведенной выше ссылке или ответах.
В процессе сопряжения, когда инициирующее устройство отправляет «запрос на сопряжение» на другое устройство. Затем эти два устройства обмениваются возможностями ввода-вывода, требованиями аутентификации, максимальным размером ключа канала и требованиями к соединению. По сути, весь этот этап состоит в том, чтобы два устройства обменивались своими возможностями и определяли, как они собираются настраивать безопасное соединение. Также важно отметить, что все данные, которыми обмениваются на этом этапе, являются незашифрованными.
Теперь вопрос: зачем нужна эта фаза?
Как уже упоминалось, «два устройства обмениваются своими возможностями». Сопряжение должно происходить между совместимыми устройствами, поэтому нет смысла сопрягать мышь с наушниками, поскольку возможности мыши отличаются от наушников.
Еще одно использование Pairing - это «определение того, как они собираются настроить безопасное соединение». Здесь схема скачкообразной перестройки частоты определяется по двум причинам -
- Чтобы избежать атаки среднего человека.
- Чтобы избежать столкновения
Bluetooth использует 79 радиочастотных каналов в диапазоне от 2402 МГц до 1 МГц. Именно по этим частотным каналам технология Bluetooth «перепрыгивает». Сигнал быстро переключает каналы несущей со скоростью 1600 скачков в секунду по определенной схеме каналов. Шаблон скачкообразной перестройки определяется во время процесса сопряжения, так что никакое другое устройство не будет знать, в какой полосе частоты данные передаются в данный момент. Редкий случай, когда схема скачкообразной перестройки частоты может быть одинаковой для пары устройств, обменивающихся данными, следовательно, предотвращается столкновение.
Примечание. Если какое-либо третье устройство способно захватить пароль, оно может воспроизвести весь шаблон связи и захватить передаваемые данные. Так работает BT Sniffers.
Я не могу охватить все детали в соответствии со спецификациями SIG. Я надеюсь, что приведенные выше ответы дадут вам более четкое представление о необходимости процесса сопряжения. Не стесняйтесь указывать, если вы хотите, чтобы я подробно объяснил какой-то конкретный момент.
Ниже приведены ссылки для получения дополнительной информации.
http://large.stanford.edu/courses/2012/ph250/roth1/
https://www.bluetooth.com/blog/bluetooth-pairing-part-1-pairing-feature-exchange/