在蓝牙低能耗安全配对之后,是否有隐藏的服务? [英] Is it in spec to have hidden services until after securely paired in Bluetooth Low Energy?

查看:231
本文介绍了在蓝牙低能耗安全配对之后,是否有隐藏的服务?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用BLE应用程序,我不想公开某些服务,直到我安全地配对/绑定到有效的设备。问题在于,在发现过程中,似乎所有主要服务都暴露给客户端,以使其完成连接。有没有办法隐藏一些服务,直到稍后的时间?

Working on a BLE application in which I do not want to expose certain services until I am securely paired/bonded to a valid device. The problem is that during discovery, it seems that all primary services are exposed to the client in order for it to finalize the connection. Is there anyway to hide some services until a later time?

推荐答案

您可以在连接时动态更改GATT数据库的内容。 GATT服务和GATT服务变更特性将用于通知客户这种变更([Vol 3,Part G],7.1)。

You may dynamically change contents of the GATT database while connected. GATT service and GATT "Service Changed" characteristic will be used to notify client of such changes ([Vol 3, Part G], 7.1).

在绑定之前隐藏服务没有添加任何有用的wrt具有仅具有验证访问权限的服务。在这两种情况下,您需要绑定才能使用它,但管理访问权限而不是处理GATT数据库更改在实施中得到更好的测试(如果支持的话)。

Hiding service before bonding does not add anything useful wrt having a service with authenticated access only. In both cases, you'll need to bond to use it, but managing access rights rather than handling GATT db change is better tested in implementations (if supported at all).

所以是的,理论上你可能会改变在GATT db中暴露的服务,但是我宁愿不依赖它。

So yes, in theory, you may change service exposed in your GATT db once bonded, but I'd rather not rely on it.

这篇关于在蓝牙低能耗安全配对之后,是否有隐藏的服务?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆