iOS蓝牙BLE安全性和"Just works"关联模型

hug*_*gie 8 security ios core-bluetooth bluetooth-lowenergy

根据本文档本白皮书,有一些安全措施旨在防止被动窃听蓝牙BLE连接.有没有办法在iOS中央管理器和外围设备之间实现安全连接?

具体来说,我正在寻求实现"Just works association model".我想知道iPhone是否可行.

Mar*_*Thé 10

对于BLE连接,iOS支持"Just Works"和基于"PIN"的配对.

对于带外(OOB)配对,没有公共iOS API(尽管是Apple在其他方面用于Handoff的私有API,无需用户交互即可无缝配对两台Apple设备.)

请注意,"Just Works"和"PIN"配对都有些破碎.如果窃听者在初始配对过程中收听,它可能会轻易地强行交换密钥.

iOS 8.2增加了对BT 4.2的支持,其中包括对BLE配对和安全性的一般改进.我还没看过iOS 8.2支持哪些部分.

开始配对:

  • 使用外围设备的应用程序需要位于前台(这可以是iOS的设置)
  • 连接后,
    • 从外围端发送"Slave Security Request"命令(参见蓝牙规范), 或者,
    • 访问由外围设备或应用程序实现的服务上的"受保护"特征 - 如果设备尚未绑定,这将使iOS自动启动配对过程.这就是Apple的建议.


Bog*_*dru 6

编辑:

根据此链接中步骤4下的表格,由于您的中央(智能手机)同时具有键盘和显示功能,因此执行Just Works配对的唯一方法是传感器没有输入且没有输出功能.

因此,要做到这一点,您必须配置传感器以发送配对响应,其IO功能设置为NoInputNoOutput.

这将迫使Central(您的iOS设备)执行Just Works配对.