Ответ 1
Когда оба устройства равны 2.1, и выше, используется безопасное соединение (SSP) вместо старого соединения (унаследованное сопряжение - это тот, где пользователю необходимо вводить один и тот же PIN-код на обоих устройствах для подключения, а в большинстве случаев используется PIN-код для общеизвестных общих комбинаций 0000 или 1234)
Безопасное простое соединение упрощает процесс и избавляется от необходимости вводить ПИН-коды, вместо этого он автоматически генерирует 6-значные ключи доступа в качестве части процесса сопряжения, и пользователю может потребоваться только проверка/ввод ключа доступа на одном или нескольких устройств.
Secure Simple Pairing (SSP) дополнительно имеет несколько различных режимов ассоциации, и используемая модель ассоциации определяется возможностями отображения и ввода на устройствах, которые пытаются соединить.
Если на одном из устройств нет дисплея или ввода для ввода 6 цифр, используется "Только работает" модель ассоциации, в этом пользовательский ввод не требуется во время спаривания. В Android можно заставить эту модель использовать приложения SPP при использовании API createInsecureRfcommSocketToServiceRecord(). Эта модель обычно используется при сопряжении с гарнитурами, другими маленькими устройствами без возможности отображения или ввода.
Другие модели ассоциации:
-
Числовое сравнение. Если на обоих устройствах отображается 6-значное число, и пользователю предлагается подтвердить, что они одинаковы. Используется, когда оба устройства имеют дисплей и могут вводить Да/Нет.
-
Ввод пароля - когда одно из устройств имеет только входную способность и не имеет возможности вывода, а у другого есть возможность вывода/отображения, здесь пользователю будет предложено ввести 6 цифр на устройстве с поддержкой только ввода как показано на устройстве, поддерживающем дисплей.
-
Out-of-Band - если устройства обмениваются информацией о соединении через другой канал (кроме Bluetooth), например, NFC или какой-либо другой безопасный механизм.