Защита Bluetooth от безопасности

Я играл с параметрами bluetooth на Android и нашел приложение, которое давало два варианта подключения (безопасный и небезопасный). Я попытался найти информацию об этом в Интернете, но все, что я нашел, было довольно расплывчатым. У меня есть общая идея, что Insecure не так безопасен, как использование Secure.

Каковы преимущества использования одного над другим? Должен ли я всегда придерживаться "Безопасного" или я должен идти небезопасно?

Спасибо за ваше время,

Ответ 1

Каковы преимущества использования одного над другим? Должен ли я всегда придерживаться "Безопасного" или я должен идти небезопасно?

Единственное преимущество при использовании небезопасного - это то, что вы не запрашиваете пользователя при создании канала связи (эта была бы легкой добычей "Человек в середине" ), но это не значит, что это будет всегда работаю. Здесь вопрос, где пользователь жалуется, что некоторые устройства запрашивают спаривание, а другие нет.

Также эта фраза исходит от API android:

Для устройств Bluetooth 2.1 ключ шифрования будет зашифрован, так как шифрование является обязательным. Для устаревших устройств (предустановленных устройств Bluetooth 2.1) ключ ссылки не будет зашифрован. Используйте createRfcommSocketToServiceRecord (UUID), если требуется зашифрованный и аутентифицированный канал связи. ссылка

Итак, возможно, в будущем не будет никакого способа создать небезопасное соединение между двумя устройствами.

Это ответ на второй вопрос, вы должны придерживаться Secure. При разработке (потому что вы не можете точно знать, будет ли он работать) и по соображениям безопасности при использовании приложения.