2017-07-19 155 views
2

我在BlueZ 5.44中查看Device API,对连接和配对与设备之间的区别有点混淆。我发现连接是基于配置文件的,而配对似乎是独立配置文件。配对似乎更多与SDP和身份验证有关。蓝色连接和配对之间的区别

但是,在阅读完这些文档之后,我仍然对一开始和结束的位置感到困惑。例如,在连接之前,设备是否必须配对?如果任何人有任何蓝牙文档或BlueZ文档详细说明,他们将不胜感激。

回答

0

这是回答假设OP打算询问有关经典蓝牙。 经典配对需要较低层的蓝牙经典连接。设备是否需要与其他设备配对由相关设备的安全级别(在通用访问配置文件中定义)确定。大多数移动电话都使用SecurityMode 4,Level 4,它为除SDP以外的大多数配置文件强制配对。这意味着可以在不进行配对的情况下完成服务发现,但需要服务级别连接的配置文件需要配对。请参阅core_v5.0蓝牙规范(https://www.bluetooth.com/specifications/bluetooth-core-specification)中的GAP配置文件部分5.2中的安全模式的详细信息。如果分别看到服务级别/配置文件级别的连接和下层连接,则可以避免您提及的文档中出现混乱。

+0

我明白了。因此,配对是较低级别的连接,可能需要根据其GAP配置中指定的每个设备安全性进行配对。连接一个特定的配置文件依次取决于安全级别。然而,我正在使用的平台有一个双模式4.0控制器 - 这是否改变了经典模式配对或独立于LE配对?再次感谢! –

+1

经典和LE配对是不同的(从蓝牙4.2有交叉传输密钥生成功能,它允许一个传输生成的密钥用于生成其他传输的密钥)。经典和LE配对的不同之处在于,秘密共享密钥交换的方式不同(在蓝牙4.0和4.1中),并且还由低层(LMP)或更高层(SMP)是否便于配对程序。 –

+1

经典配对是通过相互验证并存储这些密钥来执行一组程序以在两个设备中安全地创建相同密钥的行为。请注意,钥匙绝不会在空中传输。不要将配对混淆为较低层次的连接,请参阅实现配对下层连接是必需的。这个想法是建立两个设备之间的信任关系(一旦配对完成,一些设备显示爱情符号:))。 –

0

让我们尽可能简单。 什么是配对:这是创建链接密钥(两个设备将具有相同的加密密钥)的安全连接的过程。你不希望别人听到你通过蓝牙说的话。

当然需要连接的配对程序。

设备可以选择加密或不加密链接,并可以决定蓝牙堆栈上的哪个级别开始加密,即配置文件,协议或低级数据链接。

SDP作为一个配置文件是不同的,因为它是一个配置文件显示其他设备的本地功能,因此当连接SDP时,它基本上不需要配对。