是否可以使用Eddystone-EID离线工作?

时间:2017-02-21 13:42:27

标签: encryption beacon eddystone proximityapi

Eddystone-EID信标传输短暂标识符,将由Google的Proximity Beacon API解析。这意味着没有活动的互联网连接就无法检测到Eddystone-EID信标。这种方法很新,因此互联网上没有太多信息。

谷歌研究人员提供的this paper中描述了短暂标识符和解析机制的生成。以下是该过程的摘要:Eddystone-EID信标使用其密钥使用AES-128加密其嵌入式时间计数器的值,而密钥是每个信标的唯一标识符。结果是要传输的短暂内容。像每隔512秒一样,信标会重新计算其短暂的ID。当接收器侧接收到短暂的id时,解析器试图找到在已知的预定义密钥中提供正确解密的密钥。找到的密钥对应于信标的识别。

我想知道是否可以根据给定的论文实施离线解析/解密程序,该程序适用于市场上的Eddystone-EID。我们可以开发一个本地解析器,而不是在云端使用全局解析器,而且可以使用更少数量的信标吗?

如果是,是否有先前的尝试或实施等?

您对此主题的看法是什么?

1 个答案:

答案 0 :(得分:1)

是的,理论上可以在Android或iOS代码中实现EID解析器,进行计算以查看EID传输是否来自已知的信标发射器。

移动设备实现需要使用兼容的AES-128加密库,并以某种方式存储为每个信标执行解析所需的密钥副本。

在构建用于测试目的的服务器端解析器实现时,我考虑构建这样的库。我还了解到,让一切都完全正确是非常棘手的。许多AES库仅提供部分功能,因此无法使用。

同样重要的是要注意,美国对加密软件的出口限制将使在Apple AppStore和Google Play商店中执行此操作的应用程序出现问题。