2014-01-14 35 views
4

我们正在讨论iBeaons在多个国家的大规模部署场景。有人问到,iBeacons宣传其存在的ID是否是唯一的?因为我们的客户希望确保该应用只响应特定的iBeacons,而不是用相同的ID(即使无意中)模仿其他东西。iBeacon广告ID是唯一的吗?

如果不是唯一的,该协议是否允许iBecaons公布任何附加认证信息?

+3

你不应该问他们? –

+1

问谁?没有单一的“他们”控制供应。 –

回答

13

模仿另一个iBeacon是完全可能的。我到华盛顿的苹果商店购买了Android iBeacon Locate app的副本,并用它扫描Apple Store中的iBeacons标识。然后,我回到我的办公室,并配置我自己的iBeacon以传输相同的三部分标识符,并且能够让我的iPhone在苹果的商店消息中获得相同的结果。如果他们真的想要,你不能阻止其他人这样做。但好消息是,对于大多数用例来说,其他人没有真正的动机来做到这一点。

也就是说,一个无意中重叠的iBeacon标识符是极不可能的。如果您使用标准的UUID发电机生成自己的ProximityUUID,产生的另一个可能性ProximityUUID被意外同样是无限小 - less than the odds of being hit by a meteorite.

标准iBeacons没有其他任何认证机制。它们是无连接的仅发送设备,只发送三部分标识符(Proximity UUID,Major,Minor)和发射机功率校准值。

+1

这是大胆的声明... – Muis

0

iBeacon ID是20字节(16字节的UUID加上一个2字节的“主要”号码和一个2字节的“次要”号码)。某人猜测或偶然选择完全相同的所有20个字节并同时处于相同信标范围内的几率非常小。 BLE信号的近乎唯一的数字和相对短的范围的组合使得意外碰撞几乎不可能发生。

+1

但任何做鬼可以在野外任何iBeacon显示记录该数据,并能编写相同的信息自己iBeacons。 – gnasher729

+0

意外碰撞是肯定不可能的,但嗅探和在空气BLE记录数据包是很容易做到,故意欺骗信标是一个东西,所以帽子gnasher729说。 –

2

我在Gelo的灯塔上工作(http://www.getgelo.com)。我们的一些客户非常担心有效负载机密性和反欺骗。

UUID本身并不保证是唯一的。欺骗UUID及其所有广告数据(包括主要/次要)是完全可能的。这带来了一些安全风险。

有一些信标制造商使用的旋转UUID方案在每隔X分钟,几秒钟或几小时更换UUID本身。这意味着想要拦截和/或欺骗信标的人需要或者与原始设备处于相同的位置并且不断地匹配新的值或者计算出旋转方案或者算法。

旋转UUID方法的问题在于,它不能保护有效负载(广告信息或扫描响应),因此攻击者可能会模仿另一个信标并更改正在发送的值。根据信标的通信方式以及它是如何被任何听音设备(观察者,BLE术语中心)或消费应用程序使用的,这不会是一个问题,或者它可能是一个非常大的问题。

我们花了时间研究如何在考虑功耗的同时缓解各级风险。这是因为大多数BLE信标使用电池供电,并且您希望尽可能延长电池寿命。我们提出了一种方法,可以成功减轻拥有近10万个地点的国际组织的风险。

解决这个问题是可能的,这是我们一直在努力的。如果这是你要找的,给Gelo一个电话或电子邮件。我们可能会帮助你。

0

除了感知上述参数,您通常可以获取有关信标mac地址的信息。如果它基于任何更常见的电路,例如TI CC240x芯片,则MAC地址对每个芯片都是硬编码的。所以那个不太容易被欺骗。如果你既灯塔部署和应用提供商

一个典型的想法是一些定制服务/特征到信标和程序,以便您的应用程序可以连接到它,并验证it's一个已知的灯塔。但是如果你根本不允许有人连接它,那么意味着信标对拒绝服务攻击非常敏感。大多数信标是单一任务,不能辐射和识别并同时处理连接尝试。因此,一些黑暗的力量可以在附近安装“信标时间模块”,以保持你的信标忙于与废物交谈,而不是提供你想要的辐射。那些旋转的UUID方案在恶劣的环境中可能足够好。大多数情况下,我会说信标可能几乎不受干扰地工作。开发信标质量监控应用程序或定制BLE设备非常简单,该设备将不断监听已部署的信标并报告正常运行时间。这样,如果节点停止服务,部署的信标场的部署者将会收到警报。

+0

没有,有本质上的MAC地址的无反欺骗保护 - 而芯片可能从工厂存储在它的MAC地址,实际使用的地址是由软件设定。无论如何你都无法看到iOS客户端的MAC地址。 –

1

在iBeacon技术中绝对没有“UUID反欺骗”。事实上,许多开发人员使情况更糟,只需使用iBeacon供应商提供的默认UUID即可。因此,无论何时 - 让我们说一下Estimote iBeacon,您会发现一个在当前环境中无效的应用程序,因此只会增加用户的困惑。

可以帮助防止这一问题,并通过使用全球唯一接近UUID生成器和目录部署保持环境清洁。

见我们OpenUUID服务,旨在做到这些......