張呈鈺,王讓定,姚 靈,傅松寅,左富強,高旗飛,蔣 銘
(1.寧波大學 信息科學與工程學院,浙江 寧波 315211; 2.寧波水表股份有限公司,浙江 寧波 315032)
(*通信作者電子郵箱wangrangding@nbu.edu.cn)
移動支付近場通信智能水表系統(tǒng)
張呈鈺1,王讓定1*,姚 靈2,傅松寅1,左富強2,高旗飛1,蔣 銘1
(1.寧波大學 信息科學與工程學院,浙江 寧波 315211; 2.寧波水表股份有限公司,浙江 寧波 315032)
(*通信作者電子郵箱wangrangding@nbu.edu.cn)
針對傳統(tǒng)的預(yù)付費水表缺乏便利性和實時性等問題,實現(xiàn)了一種具有移動支付功能和數(shù)據(jù)查詢功能的近場通信(NFC)智能水表系統(tǒng)。首先,根據(jù)水表的預(yù)付費業(yè)務(wù)需求,設(shè)計了基于NFC技術(shù)的水表系統(tǒng)整體架構(gòu)并且完成了軟硬件設(shè)計;其次,提出了一種通過檢測外部磁場變化喚醒水表的低功耗機制;最后,結(jié)合NFC安全協(xié)議分析了系統(tǒng)在移動支付水費過程中的安全性。經(jīng)測試,該水表系統(tǒng)支持用戶利用NFC手機等移動終端進行動態(tài)喚醒,并實現(xiàn)移動支付和數(shù)據(jù)查詢上傳功能。
近場通信;移動支付;智能水表;近場通信安全
近場通信(Near Field Communication, NFC)技術(shù)是一種工作頻率為13.56 MHz,通信距離在10 cm以內(nèi)的近距離無線通信技術(shù)。NFC設(shè)備由于具有簡單易用、價格低廉、攜帶方便和支付便捷的特點,可用于數(shù)據(jù)交換、連接服務(wù)、電子支付以及票務(wù)系統(tǒng)等環(huán)境中,特別是被用來替代信用卡、門禁卡以及會員卡等智能卡。隨著NFC技術(shù)的發(fā)展和應(yīng)用普及,Juniper研究預(yù)測,全球NFC移動支付市場規(guī)模在2017年將增加到1 800億美元[1]。
目前,卡式預(yù)付費水表在智能水表領(lǐng)域占有很大比例,該類水表通過智能卡或邏輯加密卡來傳遞預(yù)存數(shù)據(jù)以實現(xiàn)水費的預(yù)付費功能。文獻[2]指出了傳統(tǒng)IC卡表降低了管理者和用戶間人性化服務(wù)的程度。用戶只能充值水費而無法方便地獲知水表信息,并且充值水費需要去指定營業(yè)點購買水費[3],耗費時間精力,即使是使用第三方支付軟件購買水費也會造成用戶獲取信息不全面,用戶體驗差等影響。水表的監(jiān)督使用一直是水務(wù)管理的重要環(huán)節(jié)[4],而用水公司目前無法及時掌握用戶水表的狀態(tài)和用量信息,管理方式存在步驟繁瑣、費時費力等弊端,造成許多管理上的漏洞。文獻[5]中也特別強調(diào)了智能水表的發(fā)展趨勢包括管理使用功能的拓展。用戶和水司都迫切需要一種能快速交流、傳遞信息的智能水表,來滿足方便快捷安全的水費移動支付以及數(shù)據(jù)管理等多方面的需求。
本文將NFC技術(shù)應(yīng)用于智能水表中,結(jié)合系統(tǒng)潛在的安全性問題充分利用NFC協(xié)議安全、快速連接等特點設(shè)計并實現(xiàn)了一個具有移動支付和信息查詢功能的NFC智能水表系統(tǒng),即水表具有近場通信能力可與用戶手機直接交互,實現(xiàn)水費預(yù)支付、退費和用水量查詢等操作,同時也能滿足用水公司數(shù)據(jù)管理需求。移動支付NFC智能水表已由合作方寧波水表股份有限公司組織專家進行了驗收,經(jīng)檢測,各項功能指標達到企業(yè)設(shè)計要求,已開始組織小批量生產(chǎn),在近期可能會上市。
移動支付NFC智能水表系統(tǒng)主要由四個部分組成:用戶、用水公司、第三方支付公司以及銀行,彼此之間建立安全支付的通信信道,并由金融業(yè)務(wù)、金融邏輯或業(yè)務(wù)邏輯相聯(lián)系,如圖1所示。金融業(yè)務(wù)和金融邏輯用于銀行、第三方支付系統(tǒng)和用水公司系統(tǒng)三者之間的資金交易。業(yè)務(wù)邏輯指用戶通過手機客戶端以及支付中間件進行的水費充值、退款、余額查詢、用水查詢等與用水公司后臺的交互。
圖1 移動支付NFC智能水表系統(tǒng)架構(gòu)
使用時,用戶下載手機客戶端以及支付中間件,點擊相應(yīng)命令發(fā)起請求后,用水公司后臺收到手機傳來的請求后將響應(yīng)用戶請求并回傳相應(yīng)信息至用戶手機。用戶再將手機靠近NFC智能水表實現(xiàn)數(shù)據(jù)交換,隨時可以完成水費充值/退費的支付功能以及查詢余額、用水信息和檢測水表狀態(tài)等數(shù)據(jù)查詢功能。充值時可將銀行賬戶的資金通過第三方支付公司轉(zhuǎn)入到NFC手機中,支付成功之后加密數(shù)據(jù)自動存入手機,然后用戶將手機靠近水表實現(xiàn)水費充值。為降低水表功耗,讓水表端作為目標設(shè)備工作在被動態(tài),采用負載調(diào)制響應(yīng)手機請求,手機作為發(fā)起設(shè)備提供射頻場。當手機靠近水表時,水表中的NFC模塊接收手機發(fā)出的射頻信號,憑借感應(yīng)電流所獲得的能量發(fā)送出存儲在水表當中的信息,再由手機客戶端通過網(wǎng)絡(luò)將水表信息上傳到用水公司后臺進行處理。
2.1 NFC智能水表硬件設(shè)計
NFC智能水表內(nèi)部結(jié)構(gòu)如圖2所示。主控制單元(Microcontroller Unit, MCU)通常情況下使用低功耗工作模式,必要時通過中斷喚醒控制芯片,中斷處理后又進入休眠狀態(tài);流量檢測采用兩個干簧管計量葉輪轉(zhuǎn)動圈數(shù),MCU以中斷方式按照階梯水價或階梯水量計算流量和費用;存儲模塊用于記錄用戶用水量的歷史數(shù)據(jù)以及水表信息;LCD顯示模塊用于顯示用水信息或提示水表工作狀態(tài);防拆干擾檢測用于防止用戶惡意拆卸、破壞水表或者產(chǎn)生磁干擾影響水表正常運行;NFC接口部分包含NFC模塊和安全單元SE。NFC模塊集成了13.56 MHz下的各種主動/被動式非接觸通信方法和協(xié)議,又包括NFC控制器和天線,負責控制與NFC手機、安全單元和主控MCU之間的信息交互。安全單元則執(zhí)行與安全相關(guān)的算法加密數(shù)據(jù),并存儲關(guān)鍵數(shù)據(jù)及時輸出給NFC模塊。系統(tǒng)硬件或上電復位時須從存儲單元中恢復之前的重要數(shù)據(jù),而且水表正常工作中需要及時檢測系統(tǒng)缺電、破壞或干擾信號,并發(fā)出相應(yīng)提醒信號。當系統(tǒng)缺電、表被拆開、受磁干擾、表內(nèi)金額小于最低金額時,水表關(guān)閉閥門。另外,每月至少執(zhí)行一次閥門開關(guān),以防止閥門長期不動導致閥門生銹。
圖2 NFC智能水表硬件設(shè)計框圖
主控MCU與NFC模塊接口電路連接如圖3所示,NFC模塊與主控MCU通信模式由模式控制設(shè)置,本系統(tǒng)采用串口連接。水表內(nèi)NFC模塊在無需產(chǎn)生磁場的情況下檢測潛在外部NFC設(shè)備:當磁場達到閾值時NFC模塊IRQ中斷引腳返回標志信號,MCU繼續(xù)控制NFC模塊與手機交換通信參數(shù)和信息;若磁場未達到閾值時,MCU保持休眠狀態(tài)。這將大大降低系統(tǒng)待機功耗并且能及時響應(yīng)用戶操作,減小系統(tǒng)響應(yīng)時間,為用戶帶來良好的交互體驗。
圖3 主控MCU與NFC模塊接口連接
2.2 軟件設(shè)計
2.2.1 Android手機接口調(diào)用
Android系統(tǒng)提供了兩個包用于NFC開發(fā),分別是android.nfc包和android.nfc.tech包。其中android.nfc包含6個類和3個接口,提供了NFC設(shè)備讀寫NFC交換數(shù)據(jù)格式(NFC Data Exchange Format, NDEF)的消息操作函數(shù)以及數(shù)據(jù)交換函數(shù),可用來與本地NFC適配器交互。其中NfcAdapter.CreateNdefMessageCallback接口主要用于當前NFC設(shè)備獲取其他NFC設(shè)備NDEF消息,NfcAdapter.OnNdefPushCompleteCallback接口主要用于當前NFC設(shè)備將開發(fā)者應(yīng)用層的數(shù)據(jù)發(fā)送到其他NFC設(shè)備成功后的回調(diào)接口。android.nfc.tech包含10個類,主要提供對不同目標設(shè)備的讀寫操作以及進行I/O操作[6]。通過對這兩個NFC包中的類和接口的調(diào)用,即可實現(xiàn)手機與NFC適配器的數(shù)據(jù)交互,從而實現(xiàn)與水表的數(shù)據(jù)通信。
2.2.2 數(shù)據(jù)交換格式
移動支付NFC智能水表系統(tǒng)數(shù)據(jù)交換格式采用NDEF標準。在進行NFC通信時,NDEF消息都以數(shù)據(jù)包的形式封裝在每一個通信幀當中。NDEF消息交換的信息由一系列記錄(Record)組成。每條記錄包含一個有效載荷(Payload),記錄內(nèi)容可以是文本、網(wǎng)址、郵件或者NFC自定義的數(shù)據(jù)類型,可將用戶水費余額信息以及用水量等信息采用文本格式記錄。一條NDEF消息結(jié)構(gòu)如圖4所示,交換信息可以包含單個或多個記錄,每條記錄的數(shù)據(jù)類型(Type)可以相同也可以不同。使用NFC定義的數(shù)據(jù)類型,載荷內(nèi)容必須被定義在一個NFC記錄類型定義文檔中。記錄中的數(shù)據(jù)類型和大小由記錄載荷的頭部(Header)注明[7]。
圖4 NDEF消息結(jié)構(gòu)
2.2.3 智能水表近場通信功能實現(xiàn)
移動支付NFC智能水表近場通信功能的實現(xiàn),如圖5所示,包括系統(tǒng)初始化階段和傳輸協(xié)議階段。系統(tǒng)初始化包括底層規(guī)范規(guī)定的近場通信模塊初始化、傳輸協(xié)議參數(shù)的選擇以及上層協(xié)議規(guī)定的幀格式、請求/響應(yīng)通信方式的實現(xiàn)。系統(tǒng)初始化完成后使模塊處于休眠狀態(tài),當檢測到發(fā)起設(shè)備后且無超時的情況下,激活水表的NFC通信模塊,系統(tǒng)進入傳輸階段。
圖5 NFC智能水表近場通信流程
操作人使用手機發(fā)起相應(yīng)功能的連接請求,水表端接收命令后,將按照手機發(fā)起的通信模式選擇傳輸速率及通信參數(shù),并利用面向連接的數(shù)據(jù)傳輸服務(wù)以請求/響應(yīng)的方式與手機進行數(shù)據(jù)交換。數(shù)據(jù)交換過程為首先判別用戶權(quán)限,按照功能命令的種類執(zhí)行相應(yīng)操作,最后水表端響應(yīng)手機命令并返回數(shù)據(jù)或操作狀態(tài)信息。其中在交換數(shù)據(jù)協(xié)議里包含了有關(guān)NFC通信安全協(xié)議的內(nèi)容。
竊聽、數(shù)據(jù)篡改和重放是本系統(tǒng)主要的威脅,事實上通過使用一個接收器、合適的天線,射頻信號譯碼器就可以竊聽信息[8]。攻擊者可以在較遠距離使用一個高容量強大的天線攔截NFC設(shè)備之間的通信。攻擊者在理想狀態(tài)下,對主動設(shè)備的竊聽距離最大為10 m,對被動設(shè)備的竊聽距離最大只有1 m[9]。所以系統(tǒng)需要使用安全通信信道,將用戶的數(shù)據(jù)經(jīng)過加密再傳輸,既可以很容易地傳播數(shù)據(jù)而免受竊聽,同時也避免數(shù)據(jù)被篡改。
目前,NFC安全標準[10-11]定義了數(shù)據(jù)交換格式、標簽類型和安全協(xié)議,其中規(guī)定了用戶之間的秘密通信需要密鑰協(xié)商機制。NFC安全標準主要分為兩個部分:共享密鑰服務(wù)(Shared Secret Service, SSE)和安全信道服務(wù)(Secure Channel Service, SCH)。SSE生成一個用于NFC設(shè)備之間的安全通信的密鑰:在這個過程中,執(zhí)行密鑰協(xié)商和密鑰認證過程;共享密鑰服務(wù)保證NFC設(shè)備通信的機密性和完整性。SCH指在密鑰協(xié)商階段需使用Diffie-Hellman橢圓曲線加密算法(Elliptic Curves Diffie-Hellman, ECDH)[12]。而在數(shù)據(jù)傳輸階段結(jié)合消息認證碼(Message Authentication Code, MAC)傳輸加密數(shù)據(jù)(Encrypted data, EncData),數(shù)據(jù)的加解密算法為高級加密標準(Advanced Encryption Standard, AES)加解密算法,由安全單元實現(xiàn)數(shù)據(jù)的加解密。
手機和NFC智能水表間的密鑰協(xié)商、認證流程以及數(shù)據(jù)交換流程如圖6所示,符號說明如表1所示。手機在通信前產(chǎn)生隨機數(shù)NA,并發(fā)送NA和公鑰QA給水表,水表接收后生成隨機數(shù)NB,并和公鑰QB一起發(fā)送給手機。通信雙方利用對方的公鑰和自己的私鑰計算得到z,接著使用密鑰推導函數(shù)(Key Derivation Function, KDF)生成的共享密鑰(Master Key, MK)。為驗證雙方生成的MK相同,雙方使用MK、ID和公鑰生成密鑰認證標簽MacTag并相互發(fā)送。驗證通過后在兩個設(shè)備間就建立了一個共享密鑰,然后共享密鑰可以用于提供保密、完整、認證的數(shù)據(jù)傳輸安全信道,并且在手機和水表端事先協(xié)商一個初始序列號(Sequence Number Variable, SNV),并協(xié)商遞增方法,如SNV每次加1或以一定規(guī)律遞增,通過消息中的序列號來判斷消息的新鮮性來抗擊重放攻擊。
圖6 系統(tǒng)密鑰協(xié)商、認證和傳輸流程
本文結(jié)合近場通信技術(shù)的安全通信協(xié)議和喚醒機制設(shè)計了具有移動支付功能和數(shù)據(jù)查詢功能的NFC智能水表系統(tǒng)。首先介紹了系統(tǒng)架構(gòu),包括用戶使用NFC手機實現(xiàn)移動支付水費和讀取NFC智能水表數(shù)據(jù)并上傳到用水公司的過程;其次,系統(tǒng)設(shè)計包括NFC智能水表的軟硬件設(shè)計以及手機客戶端的NFC功能實現(xiàn),并利用NFC安全協(xié)議解決了系統(tǒng)潛在的安全問題,使得水表能與NFC手機安全便捷地進行信息交換,用戶在家即可實現(xiàn)水費移動支付和用水量查詢等操作,具有廣闊的應(yīng)用前景。
表1 符號說明
References)
[1] NFC mobile payments & retail marketing-business models & forecasts 2012—2017 [EB/OL].[2016-03-20].http://www.docin.com/p-449930064.html.
[2] 韓樹屏,李煊.智能水表的應(yīng)用現(xiàn)狀及前景展望[J].機械制造與自動化,2008,37(4):88-90.(HAN S P, LI X.Application and development of intelligent water meter [J].Machine Building & Automation, 2008, 37(4): 88-90.)
[3] 苗苗,李德寧,武雪燕.IC卡預(yù)付費智能水表在供水行業(yè)的應(yīng)用與推廣[J].自動化儀表,2014(3):52-54.(MIAO M,LI D W,WU X Y.Application and popularization of the prepaid IC card intelligent water meter in water supply industry [J].Process Automation Instrumentation, 2014(3): 52-54.)
[4] 何錦,郭頌明,鐘華,等.借力RFID創(chuàng)新水務(wù)客戶服務(wù)管理[J].中國給水排水,2014(22):162-164.(HE J, GUO S M, ZHONG H, et al.Bring innovations to water customer service management with RFID technology [J].China Water & Wastewater, 2014(22): 162-164.)
[5] 王宗輝,張世豪,姚靈.智能水表技術(shù)及發(fā)展趨勢[J].儀表技術(shù),2014(6):45-48.(WANG Z H, ZHANG S H, YAO L.Smart water meter technology and its development trend [J].Instrumentation Technology, 2014(6): 45-48.)
[6] 趙波.Android NFC開發(fā)實戰(zhàn)詳解[M].北京:人民郵電出版社,2014:62-66.(ZHAO B.Android NFC Development: Practical Explanation [M].Beijing: Post & Telecommunication Press, 2014: 62-66.)
[7] 王淼.NFC技術(shù)原理與應(yīng)用[M].北京:化學工業(yè)出版社,2014:21-23.(WANG M.NFC Technology Principle and Application [M].Beijing: Chemical Industry Press, 2014: 21-23.)
[8] MADLMAYR G, LANGER J, KANTNER C, et al.NFC devices: security and privacy [C]// ARES 08: Proceedings of the Third International Conference on Availability, Reliability and Security.Piscataway, NJ: IEEE, 2008: 642-647.
[9] LIANG B, HU A Q, QIN Z Y.Trends and brief comments on anti-collision techniques in radio frequency identification system [C]//ITST 2006: Proceedings of the 6th International Conference on ITS Telecommunications.Piscataway, NJ: IEEE, 2006: 241-245.
[10] ISO/IEC.13157—1:2010, Information technology telecommunications and information exchange between systems—NFC security — Part 1: NFC-SEC NFCIP—1 security service and protocol [S].[S.l.]: ISO/IEC, 2010.
[11] ISO/IEC.13157—2:2010, Information technology telecommunications and information exchange between systems — NFC security—Part 2: NFC-SEC cryptography standard using ECDH and AES [S].[S.l.]: ISO/IEC, 2010.
[12] ISO/IEC.15946—1:2008, Information technology—security methods—cryptographic methods based on elliptic curves—Part 1: General [S].[S.l.]: ISO/IEC, 2008.
This work is partially supported by the Key Subject Program of Zhejiang Province (XKXL1509, XKX11420), Innovation and Industrialization Key Program of Science Technology Department of Ningbo (2013B10034).
ZHANG Chengyu, born in 1992, M.S.candidate.Her research interests include near field communication application, intelligent instrument.
WANG Rangding, born in 1962, Ph.D., professor.His research interests include wireless sensor network, intelligent meter reading, information security.
YAO Ling, born in 1953, M.S., senior engineer.His research interests include flow instrument, precise instrument.
FU Songyin, born in 1982, Ph.D.candidate, research associate.His research interests include wireless sensor network, smart meter reading.
ZUO Fuqiang, born in 1982, M.S.His research interests include flow instrument.
GAO Qifei, born in 1995.His research interests include software engineering.
JIANG Ming, born in 1995.His research interests include software engineering.
Near field communication-enabled water meter system with mobile payment
ZHANG Chengyu1, WANG Rangding1*, YAO Ling2, FU Songyin1, ZUO Fuqiang2, GAO Qifei1, JIANG Ming1
(1.CollegeofInformationScienceandEngineering,NingboUniversity,NingboZhejiang315211,China;2.NingboWaterMeterCompanyLimited,NingboZhejiang315032,China)
In view of the problems of traditional prepaid meters such as inefficiency and inconvenience, a Near Field Communication (NFC)-enabled water meter system that has the functions of mobile payment and data query was proposed.Firstly, according to the business requirements of the prepaid water meter, the overall architecture of the water meter system was developed based on NFC technology, and the software and hardware were designed.Secondly, a low-power mechanism which was used to wake up the water meter by detecting the external magnetic field changes was proposed.Finally, the security performance in mobile payment of the water meter system was analyzed based on NFC security protocols.The experimental results show that users can dynamically awake the water meter system, and utilize the functions of mobile payment, data querying and data uploading, by using the NFC mobile phones or other mobile terminals with NFC module.
Near Field Communication (NFC); mobile payment; intelligent water meter; NFC security
2016-08-21;
2016-09-12。
浙江省重中之重學科項目(XKXL1509, XKX11420);寧波市科技局產(chǎn)業(yè)技術(shù)創(chuàng)新及成果產(chǎn)業(yè)化重點項目(2013B10034)。
張呈鈺(1992—),女,甘肅蘭州人,碩士研究生,主要研究方向:近場通信應(yīng)用、智能儀器儀表; 王讓定(1962—),男,甘肅天水人,教授,博士生導師,博士,主要研究方向:無線傳感網(wǎng)、智能抄表、信息安全; 姚靈(1953—),男,浙江寧波人,教授高級工程師,碩士,主要研究方向:流量儀表、精密儀器; 傅松寅(1982—),男,浙江寧波人,助理研究員,博士研究生,主要研究方向:無線傳感器網(wǎng)絡(luò)、智能儀器儀表;左富強(1982—),男,江西余江人,碩士,主要研究方向:流量儀表; 高旗飛(1995—),男,江蘇南通人,主要研究方向:軟件工程; 蔣銘(1995—),男,浙江紹興人,主要研究方向:軟件工程。
1001-9081(2017)01-0166-04
10.11772/j.issn.1001-9081.2017.01.0166
TN99; TN929.5
A