iOS蓝牙安全性和;“公正有效”;关联模型

iOS蓝牙安全性和;“公正有效”;关联模型,ios,security,bluetooth-lowenergy,core-bluetooth,Ios,Security,Bluetooth Lowenergy,Core Bluetooth,根据和,有一些安全措施设计用于防止被动窃听蓝牙连接。有没有办法在iOS中央管理器和外围设备之间实现安全连接 具体来说,我希望实现“justworks关联模型”。我想知道iPhone是否可以使用。对于BLE连接,iOS支持“正常工作”和“PIN”配对 对于带外(OOB)配对,没有公开的iOS API(尽管是一个私有的API,苹果公司使用它来进行切换,在没有用户交互的情况下无缝配对两台苹果设备) 请注意,“justworks”和“PIN”配对都有点中断。如果窃听者要监听初始配对过程 ,其中包括对BL

根据和,有一些安全措施设计用于防止被动窃听蓝牙连接。有没有办法在iOS中央管理器和外围设备之间实现安全连接


具体来说,我希望实现“justworks关联模型”。我想知道iPhone是否可以使用。

对于BLE连接,iOS支持“正常工作”和“PIN”配对

对于带外(OOB)配对,没有公开的iOS API(尽管是一个私有的API,苹果公司使用它来进行切换,在没有用户交互的情况下无缝配对两台苹果设备)

请注意,“justworks”和“PIN”配对都有点中断。如果窃听者要监听初始配对过程

,其中包括对BLE配对和总体安全性的各种改进。不过,我还没有看到iOS 8.2支持哪些部分

要启动配对,请执行以下操作:

  • 使用外围设备的应用程序需要位于前台(这可以是iOS的设置)
  • 连接后,,
    • 从外设侧发送“从安全请求”命令(参见), 或者
    • 访问由外围设备或应用程序实现的服务上的“受保护”特性——如果设备尚未绑定,这将使iOS自动启动配对过程
编辑:

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

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


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

您好,我要的是“Just Works”,而不是PIN配对。我希望用户无需输入PIN即可确认连接。是否有任何与此问题相关的iOS API文档?当前访问受保护的特征会提示用户输入PIN,这对我们来说是不可取的。我在iOS 7 btw上测试了它。@huggie请查看我的答案。该解决方案依赖于传感器的IO能力配置,这就是为什么会提示您输入PIN。这是一个令人印象深刻且非常有用的答案,尤其是因为苹果没有提供有关此主题的任何信息。操作设备的人员对其进行了测试,并且确实阻止了iOS显示数字键盘。然而,由于某种原因,目前配对不成功,我们还不知道。@huggie嗅嗅空气包,看看配对失败的地方。GATT数据库的安全设置很可能需要通过PIN进行身份验证,因此它们拒绝JW配对。@BogdanaAlexandru上面的链接似乎已失效。你能更新一下吗?@anticafe完成了。蓝牙网站已切换到一个新域。