我正在尝试使用 BLE 信标和 Web 服务器构建访问控制系统。
手机会在大门附近发送信标信号,信标将转发给服务器,以决定此人是否应该通过。
问题是在没有加密的情况下传输信标是不安全的,我需要对信标进行加密。
问题是:是否有用于 Web 应用程序的 API 来解析 Eddystone EID 加密信标而不使用谷歌网络服务?
另一个问题:Eddystone EID 是加密信标以进行访问控制(关于安全性、时间等)的好主意吗?
我正在尝试使用 BLE 信标和 Web 服务器构建访问控制系统。
手机会在大门附近发送信标信号,信标将转发给服务器,以决定此人是否应该通过。
问题是在没有加密的情况下传输信标是不安全的,我需要对信标进行加密。
问题是:是否有用于 Web 应用程序的 API 来解析 Eddystone EID 加密信标而不使用谷歌网络服务?
另一个问题:Eddystone EID 是加密信标以进行访问控制(关于安全性、时间等)的好主意吗?
Eddystone-EID 使用强哈希来保护您的信标传输免受欺骗或劫持。然而。它带来了非常复杂的实际成本,并且支持加密功能和实时时钟组件的硬件信标很少,这些信标需要生成将它们注册为 Eddystone-EID 所需的对称密钥。由于您使用的是手机,而不是硬件信标,因此您需要根据 Google 规范编写自己的注册加密函数,这并非易事。
据我所知,Google 的 EID 解析器没有公开可用的替代方案,因此如果您选择使用此技术,您必须向 Google 注册您的信标并信任他们的服务才能使您的解决方案正常工作。
在开发过程的早期,甚至在 Google 发布自己的解析器之前,我就开发了一个独立的解析器服务器来使用 Edsystone-EID。我的意图是将其发布给公众,但采用该技术根本不足以保证付出努力。 大多数公司都认为加密信标的缺点(部署复杂性、解析所需的网络访问、有限的硬件支持、专有锁定)超过了几乎所有用例的好处。
请注意,Eddystone-EID 不是灵丹妙药。信标信号仍然可以在小于标识符轮换周期的短时间间隔内被欺骗(可配置在几分钟到几小时之间。)
一种可能的替代方案是专有的 Gimbal 系统,它更易于使用,并提供自己的专有硬件信标,但在其他方面具有与 EID 相同的缺点。但是,它们只能使用自己的硬件信标,并且不提供客户端库来从手机传输 Gimbal 加密数据包。
无论您选择哪种方式,请确保您的用例确实需要这样做,并且在您亲身体验之前不要承诺解决方案。