Веб-Bluetooth: безопасная отправка домена подключения веб-сайта к приложению Android

#android #bluetooth #bluetooth-lowenergy #android-bluetooth #web-bluetooth

#Android #bluetooth #bluetooth — низкое энергопотребление #android-bluetooth #веб-bluetooth

Вопрос:

Приложение Android BLE Peripheral Simulator в сочетании с примерами веб-Bluetooth — это огромные ресурсы для разработчиков. На примерах веб-страниц, как только пользователь нажимает на кнопку отправки, отображается экран сопряжения по Bluetooth.

Экран сопряжения по Bluetooth

Как только пользователь выбирает устройство на экране настройки, автоматически устанавливается соединение с приложением Android.

Возможно ли, чтобы в приложении Android была проверка безопасности, которая разрешала бы подключение только из определенных доменов? Самое главное, возможно ли, чтобы Web Bluetooth API безопасно отправлял домен в приложение Android (он отображается в верхней части экрана сопряжения, поэтому он доступен)?

Это должен быть какой-то вызов процесса обработки метаданных; простой вызов метода JavaScript с веб-страницы в sendDomain («Доменное имя»), конечно, не будет безопасным.

Обычно я стараюсь потратить час или около того на изучение вопроса, прежде чем отправлять его в StackOverflow. Я ничего не смог найти по этой концепции. Слово «домен» не отображается в проекте веб-Bluetooth. В первые дни веб-Bluetooth и веб-NFC было некоторое обсуждение доменов; однако я не смог найти никаких текущих ссылок или примеров.

Спасибо!

Ответ №1:

Как вы, вероятно, уже выяснили, в веб-Bluetooth такого нет.

Обратите внимание, что веб-Bluetooth построен на основе GATT, а GATT не был разработан с учетом браузера. GATT создан для взаимодействия между устройствами, а не для взаимодействия между приложениями.

Также неясно, как этот домен должен быть отправлен (записан в соответствии с конкретной характеристикой GATT?), Но если у вас есть хорошая идея, не стесняйтесь отправлять ее по адресу https://github.com/WebBluetoothCG/web-bluetooth/issues , поскольку вы задаете обоснованный вопрос. Обратите внимание, что несколько приложений и веб-страниц могут быть подключены к одному и тому же периферийному устройству одновременно, но периферийное устройство видит запросы GATT, поскольку все они поступают из одного источника. Если бы лучше поддерживался L2CAP CoC, это могло бы быть более простым решением, поскольку тогда каждое приложение могло бы открывать свой собственный канал связи…

Комментарии:

1. Спасибо, Эмиль. Ключевым вариантом использования веб-Bluetooth является создание канала связи между веб-приложением и мобильным приложением. Передавая домен в виде метаданных (предпочтительно в недоступном для взлома виде), мобильное приложение сможет предоставить программное подтверждение того, что пользователь находится на нужном веб-сайте («www.chase.com » нет «www.chaze.com «). Возможность безопасной отправки домена очень помогла бы в предотвращении мошенничества. Эта дополнительная безопасность будет стоить затраченных усилий; и усилия должны быть довольно простыми (домен уже передан на экран сопряжения).

2. Кроме того, первая заявленная цель Устава сообщества Web Bluetooth Community Group заключается в том, чтобы «разрешить веб-сайтам взаимодействовать с устройствами безопасным способом с сохранением конфиденциальности». ( github.com/WebBluetoothCG/web-bluetooth/blob/charter-2015-04 /… ) Отправка домена повысит безопасность и конфиденциальность .

3. Вы действительно должны сообщить о проблеме на их странице Github 🙂