一种利用NFC技术实现蓝牙快速连接的研究

2016-05-04 01:42朱正伟,钱露,张南
自动化仪表 2016年4期
关键词:SIM卡基带蓝牙



一种利用NFC技术实现蓝牙快速连接的研究

0引言

近年来,随着人们对汽车智能化体验提出更高的要求,汽车电子领域发展加快,进一步促进电子、通信等技术在汽车领域的应用。蓝牙通信技术一直以来都是车载通信的主要无线技术。传统的车载蓝牙依靠手机与车载蓝牙进行人工的对码连接,步骤繁琐,且经常出现卡死或者连接不上等状况,这些都极大地降低了交互体验。而最近几年,近场通信(near field communication,NFC)技术得到了长足的发展,趋于成熟。NFC技术是由飞利浦公司和索尼公司共同研究开发出的一种互联技术,用于非接触式的识别[1]。作为一种标准化的短距离高频无线通信技术,NFC技术的工作频率为13.56 MHz,通信距离为5~10 cm[2]。相比较其他的射频识别(radio frequency identification,RFID)技术,NFC具有读写距离极短的特点,然而这种看似的劣势本身就限制了潜在黑客的监听与攻击,安全性更高。如果能巧妙利用这两种通信技术的特点,将带来更好的用户体验以及通信安全性,并提高汽车电子在市场中的竞争力。因此,将NFC技术应用于移动支付领域成为了研究热点。

1 NFC技术方案

1.1NFC工作模式

NFC在卡模拟模式、读写器模式、点对点通信模式这3种模式下工作。

(1) 卡模拟模式。NFC在卡模拟工作模式下相当于非接触式IC卡,将某些信息写入带有NFC设备的移动设备,信息被外部设备读取之后再返回指导下一步操作的指令。因此,不需要改变现有设备就能够使用NFC移动设备进行移动支付等活动。

(2) 读写器模式。NFC在读写器模式下相当于可以读写的标签,比如电子海报、景点地图等,将广告数据、地图数据写入NFC标签中,手持NFC移动设备可以对其进行读取,以此获得需要的信息。

(3) 点对点模式。NFC在点对点模式下,能够实现两台带有NFC移动设备之间数据的传输与通信。比如两台设备交换名片或者帮助两台蓝牙设备之间的连接,通过交换蓝牙连接必须的数据,以避免蓝牙连接时繁冗的操作过程[3]。

1.2NFC通信模式

(1) 主动通信模式。NFC在主动通信模式下,发起方和接收方交替产生射频场,发起方按照预先设置的传输速度进行通信,接收方也需要按照相同的传输速度用负载调制数据进行应答。

(2) 被动通信模式。NFC在被动通信模式下,发送方产生射频场。该射频场激励接收方设备。此时,发送方再按照约定的速度开始通信,而接收方按照相同速度用负载调制数据进行应答。

1.3NFC架构

NFC 技术基于非接触式技术,并可以兼容非接触式IC卡标准(ISO 14443协定)无线通信技术。该技术已成为正式的国际标准,即ISO 18092标准(NFCIP-1)。NFC技术的架构,自下而上包括物理层、数据交换层、应用层。最底层物理层的标准包括ISO 14443、ISO 18092、ISO 15693,如图1所示。数据交换层主要包括让NFC设备在3种模式下进行数据交换的协议标准。NFC架构图如图1所示。

图1 NFC架构示意图

2基于Android的NFC终端

由于NFC在电子消费领域需求的膨胀,将NFC技术与手机结合的呼声也渐渐变高。这种结合不仅使得智能手机在电子消费领域得以应用,也将在无形之中提高这种智能设备在生活中的重要性。具有NFC的智能移动设备应用于非接触式支付时,能够代替信用卡以及电子智能卡。除此之外,该智能移动设备还能在身份识别、社交、公交卡等实际生活中有所应用。

NFC终端和普通的Android设备终端基本相似,只是增加了NFC模块,以实现其功能。系统硬件框图如图2所示。NFC模块具有通信接口和控制接口,通过UART实现其与基带芯片的通信,通过基带芯片GPIO实现对NFC模块的启动控制。NFC芯片通过SWP接口和手机SIM卡相连接,而手机SIM卡则是作为NFC模块的安全保证,将用户的信息存储在SIM卡中,NFC模块能够通过SWP接口读取其中的信息。

图2 系统硬件框图

基带芯片是标准手机的基础模块,能收发和处理数据通信,并提供了与存储器模块、电源模块、SD卡、WiFi模块、蓝牙模块、NFC模块、SIM卡等的接口[4]。

NFC模块主要包括电源模块、射频模块、基带处理器模块。电源模块为NFC模块供电并控制电源;射频模块将基带信息调制后发射,并接收解调返回的射频信息;基带处理器模块负责将信息进行编码,并对接收的数据信息解码。

2.1NFC模块与基带芯片连接

基带芯片实现了对NFC模块的完全控制,UART通信只需要通过两根传输线,就可以完成数据的收发。由于UART接口设计方式较为灵活便捷,传输速率也可以通过软件来进行定义。因此,使用UART接口将NFC模块与基带芯片连接,既便于基带芯片对NFC模块的控制,也不妨碍手机的其他功能。

2.2NFC模块与SIM卡连接

模块连接图如图3所示。SIM卡作为重要安全模块,通过SWP接口与NFC模块连接,由NFC通过SWP[5]接口读取SIM卡中在预先存储的安全信息[6]。通过SIM卡上的C6引脚(即SWP)与NFC控制器连接,实现全双工通信。SIM卡的RST、CLK、I/O直接与基带芯片连接, SWP与NFC模块连接[7]。

图3 NFC与SIM模块连接图

3NFC与蓝牙技术结合方案

本课题设计的基于NFC与蓝牙技术解决车载应用的主要功能,是利用NFC短距离通信安全、便捷、迅速的特点,代替蓝牙传输连接过程中搜索设备、配对等复杂的操作。在NFC基础上,不使用蓝牙规范自带的加密机制,发送方设备在传输数据前,先通过NFC触碰方式向接收方设备发送蓝牙MAC地址,以避免PIN码的产生;在短时间的连接配对后,将数据使用蓝牙非安全模式发送给对方[8]。

3.1NFC与蓝牙硬件连接

蓝牙终端能够通过NFC进行快速配对连接,主要是依据了NFC联盟提出的简单安全配对协议(bluetooth secure simple pairing,SSP)。由于SSP协议是启用频外配对,NFC链路可以完成信息交换并参与频外配对的过程。因此,蓝牙终端的配对不再需要繁琐的搜索连接以及PIN码认证。

由于目前Android 4.0版本内部建立蓝牙进阶音效广播协议(advanced audio distribution profile,A2DP),更是方便了利用NFC加速蓝牙配对的过程。配对过程包括以下两个步骤:首先从外部存储器中读取NFC数据交换格式(NFC data exchange format,NDEF)记录,然后在两个蓝牙终端间进行连接配对。硬件连接图如图4所示。

图4 NFC与蓝牙硬件连接图

3.2基于NFC车载蓝牙快速连接

NFC技术与蓝牙技术的优劣互补,能够加速车载蓝牙的连接速度。连接终端所使用的蓝牙技术中的简单安全配对(secure simple protocol,SSP)协议,是2011年SIG及NFC论坛推荐的基于NFC的蓝牙连接协议。SSP协议使用频外配对时,NFC链路就可参与到频外配对,并且完成信息交换。因此,蓝牙终端的配对无需再搜索连接及PIN码认证,可大大缩短连接的时间。

软件流程图如图5所示,主要包括以下几个步骤。

图5 软件流程图

①由处理芯片生成SSP协议中规定的蓝牙OOB数据包。该数据包包含2字节的OOB数据长度、6字节的蓝牙器件地址和OOB操作数据。其中,OOB操作数据包含蓝牙模块名称、HASH C码、R码、UUID(蓝牙中每个服务及其属性的全球唯一身份编码,此处使用蓝牙连接过程服务的UUID)以及设备等级码。

②OOB数据生成完毕后,处理器再将OOB数据包根据NFC数据交换格式(NDEF)打包成一条完整的NDEF记录,由手持终端A的NFC模块发送。

③发送完成后手持终端A控制蓝牙Socket的listen函数进入监听等待状态。

④手持终端的蓝牙模块则通过accept函数接收车载终端的连接请求,向系统注册程序UUID,并开启发送数据线程。

为了加强系统安全性,将椭圆曲线(elliptic curve cryptography,ECC)加密算法加入连接配对过程[9]。使用这种加密算法,手持终端在传输OOB数据前,先通过NFC触碰方式向接收方设备传递ECC密钥。车载终端根据接收到的ECC密钥正确解密后,解析手持终端的记录中包含的OOB信息,根据OOB信息中的蓝牙名称、地址以及唯一的UUID数据,通过蓝牙Socket中的connect函数,向手持终端申请连接请求。对所传输数据可采用密钥进行加密,再将加密后的信息使用蓝牙非安全模式发送给对方,接收方接到后进行解密,还原数据,由此完成两设备间的数据发送。这将在提高蓝牙连接速度的同时极大地提高数据传输的安全性。

3.3测试及结果分析

本系统实现了通过NFC来加速蓝牙配对连接过程。下面对传统蓝牙配对传输、NFC加蓝牙传输两种方案进行对比测试。两种方案耗时测试图如图6所示。

图6 两种方案耗时测试图

测试所使用的平台是带有NFC模块及蓝牙模块的OK6410开发板(模拟车载系统)和自带NFC以及蓝牙模块的中兴NX505J(CPU主频为2.5 GHz,内存为2 GB)智能手机,分别配置了Android 4.0 系统。为了减少测试的误差,本测试设计使用传统蓝牙方式时以触碰屏幕开始计时,发送方接收到回送数据停止计时;使用NFC加蓝牙方式时,以NFC触碰开始计时,发送方接收到回送数据停止计时。计时停止后,将时间值传送给上位机(使用VB.NET平台制作)保存,全部数据接收完毕后,上位机自动调用Matlab 7.0插件,对数据进行分析,得出结果。测试全程采用机器计时,减少人工计时的误差。

测试1:测试在蓝牙未配对的情况下两种方式的蓝牙连接耗时并加以分析。为避免人工操作中设备触碰、点击屏幕等动作的延时造成的误差,对连接计时进行了20次测试,并取平均值。对比结果如表1 所示。

表1 蓝牙(未配对)连接耗时对比

测试2:为分析出两种方案的耗时区别在哪个阶段,测试了在蓝牙已配对的情况下,两种方式的蓝牙连接耗时,并加以分析。为避免误差,对连接计时进行了20次测试,并取平均值,对比结果如表2所示。

表2 蓝牙(已配对)连接耗时对比

根据表2可知,对于两种连接方法,在已配对的蓝牙建立上层Socket连接的耗时就发送方而言几乎差不多,而对接收方来说采用NFC加蓝牙的稍胜一筹。其中的时间差是由于传统蓝牙方案的接收方需作为服务器等待发送方发出请求,故需要先于发送方开启并等待;而NFC加蓝牙方案则是发送方将连接所需参数推送给接收方并由接收方建立连接,所以耗时稍短。

从图6及表1则可以清晰地看出,相比较传统蓝牙的搜索、配对、认证的过程,基于NFC的蓝牙连接速度明显较快。此外,实验结果是在信道空闲的情况下测得的,如果在公共场所等蓝牙设备较多的场合,传统方式的蓝牙连接耗时还将大幅增加;而使用NFC技术的点对点模式来辅助蓝牙连接,则可以省去搜索和选择的过程,大幅提高连接速度。对比表1,使用NFC蓝牙的方案省略了配对步骤,且快于传统蓝牙的连接方案。因此,对比结果可以说明使用NFC加速的蓝牙连接耗时性能明显优于传统蓝牙。

4结束语

本文实现了基于Android的NFC功能,并提出了将其应用于汽车电子的方案,通过测试比较其与传统蓝牙配对的连接耗时分析结果。在Android系统中加入NFC功能模块,是现代智能化设备日益强烈的需求。而再将其应用于汽车电子中,无论是车载电话、蓝牙音频还是电子钥匙,都简化了人们的生活,提高行驶过程中的安全性,为用户提供了良好的体验。

参考文献

[1] 何彪,周开班.基于NFC技术的蓝牙对象交换方法[J].微计算机信息,2009(6):133-134.

[2] 胡星波,晏渭川.基于Android的NFC实现与应用[J].电视技术,2011,35(21):84-88.

[3] 陆凯,孟旭东.NFC移动通信终端的研究与应用[J].现代电信科技,2008,38(11):18-21.

[4] 董琦.基于Android平台的NFC终端设计[D].成都:电子科技大学,2013.

[5] 杨嘉.具有NFC功能的移动通信终端电路设计[J].中国新通信,2014(15):96.

[6] 潘雪峰,崔鹤.基于NFC近场通信技术的智能卡集成系统模型设计[J].北京联合大学学报:自然科学版,2014,28(2):48-53.

[7] 杨振兴.NFC技术Card Emulation模式在Android系统中的应用研究[J].软件导刊,2014(2):113-115.

[8] 马捷,鄂金龙.用NFC技术快速建立蓝牙安全连接问题研究[J].计算机应用与软件,2013,30(3):207-212.

[9] 张文,夏戈明,周翱隆,等.一种安全加固的NFC无线通信连接认证加速系统[J].信息网络安全,2013(11):17-21.

Research on Bluetooth Quick Connection Implemented by Using NFC Technology

朱正伟钱露张南郭枫周谢益

(常州大学信息科学与工程学院,江苏 常州213164)

摘要:针对汽车电子应用中蓝牙设备连接速度慢、操作冗余等问题,提出了一种利用近场通信(NFC)技术加速蓝牙连接的方法。该方法采用基于Android系统的NFC通信技术代替传统蓝牙,完成数据传输前的设备搜索、选择、配对、安全检测等一系列繁琐工作;利用NFC点对点通信和高速传输的特点,大幅缩减蓝牙的搜索时间并完成PIN码的交换;利用NFC超短通信距离的特点、椭圆曲线加密(ECC)算法以及Android系统读取SIM安全码技术,加强连接的安全性。实验结果验证了该方法应用于车载蓝牙连接的可行性及安全性,表明该方法可以大幅缩减蓝牙连接的时间,并在一定程度上提高了连接的安全性。

关键词:汽车电子通信蓝牙无线射频识别移动通信终端椭圆曲线加密算法

Abstract:To overcome the problems exciting in automotive electronic application,such as slow speed of the Bluetooth device connection and the redundancy of operation,a new method for accelerating the Bluetooth connection with near field communication(NFC) technology is proposed.Instead of the traditional Bluetooth,the NFC technology based on Android system is used to complete a series of tedious works before data transmission,including equipment search,selection,matching,and security detection,etc.By using the features of NFC,i.e.,point to point communication and high speed data transmission,the search time of Bluetooth is substantially reduced,and the exchange of PIN codes is realized.With the advantage of NFC for shortening the communication distance,ECC encryption algorithm and the technology of reading SIM security code via Android system,the security of the connection is strengthened.The experimental results verify the feasibility and safety of applying this method in automotive Bluetooth connection; and indicate that the method greatly reduce the Bluetooth connection time,and enhance the security of connection.

Keywords:Automotive electronicsCommunicationBluetoothWirelessRFIDMobile communication terminalElliptic curve encryption algorithm

中图分类号:TP391;TH86

文献标志码:A

DOI:10.16086/j.cnki.issn1000-0380.201604016

国家中小企业创新基金资助项目(编号:09C26223203878)。

修改稿收到日期:2015-05-30。

第一作者朱正伟(1963-),男,2006年毕业于南京理工大学测试计量技术及仪器专业,获博士学位,教授;主要从事嵌入式方向的研究。

猜你喜欢
SIM卡基带蓝牙
蓝牙音箱的直线之美
Ag元素对Ni-7at.%W合金基带织构形成的影响
SIM卡防盗很关键 小喻教你如何给它“上保险”
铁路GSM-R SIM卡读写次数测试方法研究
苹果推出自研基带芯片要过几道坎?
SIM卡的“减肥史”
苹果10亿美元为5G买“芯”
简单、易用,可玩性强Q AcousticsBT3蓝牙音箱
适合自己的才是最好的 德生(TECSUN) BT-50蓝牙耳机放大器
LTE基带芯片规模超过总基带芯片出货量