如前所述,蓝牙射频工作在2.4GHz频段。在北美和欧洲的大部分,蓝牙设备工作于从2.402至2.480GHz的频带,整个频带被分成 79个1MHz带宽的子信道。在跳频通信中,数据信号被窄带载波信号调制,而这些窄带载波信号则做为时间的函数不断从一个频率跳到另一个频率。蓝牙标准采用的是每秒跳跃1600次的跳频序列。
收发双方都知道的跳频码决定了射频载波的频率以及跳频的顺序。为正确地进行信号接收,接收器必须设置成与发送方一样的跳频码,并在恰当的时间和正确的频率点监听载波信号。只有正确同步时,才能维持一个逻辑信道。其它接收器看到的FHSS信号仅是持续时间极短的脉冲噪声。
FHSS依靠频率的变化来对抗干扰。如果射频单元在某个频率遇到干扰,则会在下一步跳到另一频率点时重传受到干扰的信号。因此总的干扰可变得很低,位错误很少或几乎没有。
蓝牙数据完整性
前向纠错(FEC)
蓝牙采用的错误校正有三种类型:
●1/3编码率FEC
●2/3 编码率 FEC
●数据的自动重发请求(ARQ)方案
FEC(前向纠错)的目的是为了减少数据载荷重发的次数。但是,采用FEC的缺点是会明显地降低可达到的实际数据传输速率。
数据白化
所有的分组头和载荷信息在发送前都要利用数据白化位进行白化处理。这主要是为了避免在传输过程中出现过长的连续0或1的位流模式。基带处理器需要从接收到的模拟数据信号中判断数据是0还是1,但过长的连续0或1位流会造成问题。因为在接收到的模拟数据信号中并不存在象直流信号中那样的参考点,因此必须依靠接收到的最后几个传输信号进行校正。任何连续的0或1的长序列位流串都可能导致校正失败。因此需要采用数据白化技术对信号进行扰码处理,以大大降低出现长序列0或1位流串的可能性。
用于高级数据安全可编程解决方案
对于大多数需要将保密放在首位来考虑的应用来说,蓝牙所提供的数据安全性是不够的。总的来说,就蓝牙安全性来说,还存在一些问题需要解决。蓝牙所提供的数据安全性措施对小型应用来说看起来已足够了,但任何敏感数据或会产生问题的数据都不应直接通过蓝牙传输。例如,蓝牙所采用的加密方案本身就有某些弱点。128位密钥长度的E0序列加密在某些情况下可通过O (2^64)方式破解。
设想一种可能的情况,攻击者设法获取了用来保证两个设备间通信的加密密钥,然后即可窃听这两个设备间互相发送的消息。而且,攻击者还可以冒充其中的某个设备插入错误的信息。朗讯公司认为,避免这一问题的一个方法是用户采用较长的个人识别码(PIN码)而不是用短的PIN码,从而增加攻击者获取加密密钥的难度。而这又意味着要人工输入PIN号码。这实在令人觉得非常不方便,因为每次建立安全连接都需要输入PIN码。
克服这种安全性问题的另一个方法是采用更强健的加密算法,如数字加密标准(DES),甚至三次DES来代替E0序列加密算法。DES是一种块加密方法,这意味着加密过程是针对一个数据块一个数据块地进行的。在DES算法中,原始信息被分成64位的固定长度数据块,然后利用56位的加密密钥通过置换和组合方法生成64位的加密信息。
与蓝牙序列加密算法不同,数学上可以证明块加密算法是完全安全的。DES块密码是高度随机的、非线性的,生成的加密密文与明文和密钥的每一位都相关。DES的可用加密密钥数量多达72 x 1015个。应用于每一
明文信息的密钥都是从这一巨大数量的密钥中随机产生的。DES算法已被广泛采用并被认为是非常可靠的,而且现在出现了一种更为安全的DES算法变种--称为三次DES(TDES),它采用不同的密钥对信息连续进行三次DES加密处理。
所有这些加密算法都可以采用低成本的可编程逻辑器件和现成可用的用于高级加密处理的智力产权(IP)产品实现。如DES功能,仅需要2美元成本的芯片逻辑资源即可实现。目前,大批量时只用10美元即可购买到10万系统门的可编程逻辑器件,而且是现货,立即可以使用。这些器件还允许在设计中增加其它功能,如高级错误纠正。因此可编程逻辑器件可大幅度降低系统级的成本。