我正在寻找一个使用iBeacon在应用程序中显示距离的iPhone应用程序,但是我不希望该区域的其他用户看到iBeacon或其RSSI。仅用户已连接的iPhone。它需要安全并且仅向特定iPhone显示RSSI。能做到吗?
我能否做到这一点,以便RSSI可以突然将零星的RSSI读数提供给周围的其他人,但是用户连接到iBeacon的App理解了这一点并显示了真正的价值?
如果另一个运行该应用程序的用户要通过具有相同UUID和“主要和次要值”配置的iBeacon,该应用程序可以连接吗?
最佳答案
我正在寻找一个使用iBeacon显示一个
应用中的距离
让我们搁置一个问题,即它是否可以按照您希望的方式工作,但是请理解,使用iBeacon进行距离估计是非常近似的。看到
Understanding ibeacon distancing以获得某些背景信息。
我不希望该地区的其他用户看到iBeacon或其RSSI。
从表面上看,这是不可能的:iBeacon协议定义了一个完全公开的广告包。信标所做的只是每秒发送此数据包10次。任何人都可以听。
但是,我注意到您正在为iOS开发。 iOS不会在应用程序级别公开范围内的所有信标。也就是说,使用iOS,您无法做任何类似于Wi-Fi“向后移动”的工作,而只是清理附近的所有信标。应用程序需要为iOS提供它正在侦听的“区域”(区域由标识符的UUID,UUID +主要或UUID +主要+次要部分组成)。因此可以想象,并且再次仅限于iOS,您可以将特定用户限制为信标的特定UUID,这时您认为UUID可以猜测,因此它是“安全的”。 (此外,如果有人使用非iOS设备嗅探您的iBeacon标识符,则无论如何它都是游戏。除非您使用诸如Estimote's Secure UUID之类的特定于供应商的解决方案。)
我可以这样做,以便RSSI可以突然提供零星的RSSI读数
周围的人,但用户连接到iBeacon的应用程序,
了解这一点并显示出真正的价值?
我无法想象你会怎么做。
如果另一个运行该应用程序的用户要通过iBeacon
相同的UUID和“主要和次要价值”配置,
连接?
记住,没有任何联系。只是一个信标广告,以及设备监听。通常,是的,如果您知道标识符的所有部分,则可以使iOS监视信标创建的区域并确定信标的范围。
关于ios - 安全的iBeacon蓝牙连接,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31358743/