張呈鈺,王讓定,姚 靈,傅松寅,左富強,高旗飛,蔣 銘
(1.寧波大學 信息科學與工程學院,浙江 寧波 315211; 2.寧波水表股份有限公司,浙江 寧波 315032)
(*通信作者電子郵箱wangrangding@nbu.edu.cn)
移動支付近場通信智能水表系統
張呈鈺1,王讓定1*,姚 靈2,傅松寅1,左富強2,高旗飛1,蔣 銘1
(1.寧波大學 信息科學與工程學院,浙江 寧波 315211; 2.寧波水表股份有限公司,浙江 寧波 315032)
(*通信作者電子郵箱wangrangding@nbu.edu.cn)
針對傳統的預付費水表缺乏便利性和實時性等問題,實現了一種具有移動支付功能和數據查詢功能的近場通信(NFC)智能水表系統。首先,根據水表的預付費業務需求,設計了基于NFC技術的水表系統整體架構并且完成了軟硬件設計;其次,提出了一種通過檢測外部磁場變化喚醒水表的低功耗機制;最后,結合NFC安全協議分析了系統在移動支付水費過程中的安全性。經測試,該水表系統支持用戶利用NFC手機等移動終端進行動態喚醒,并實現移動支付和數據查詢上傳功能。
近場通信;移動支付;智能水表;近場通信安全
近場通信(Near Field Communication, NFC)技術是一種工作頻率為13.56 MHz,通信距離在10 cm以內的近距離無線通信技術。NFC設備由于具有簡單易用、價格低廉、攜帶方便和支付便捷的特點,可用于數據交換、連接服務、電子支付以及票務系統等環境中,特別是被用來替代信用卡、門禁卡以及會員卡等智能卡。隨著NFC技術的發展和應用普及,Juniper研究預測,全球NFC移動支付市場規模在2017年將增加到1 800億美元[1]。
目前,卡式預付費水表在智能水表領域占有很大比例,該類水表通過智能卡或邏輯加密卡來傳遞預存數據以實現水費的預付費功能。文獻[2]指出了傳統IC卡表降低了管理者和用戶間人性化服務的程度。用戶只能充值水費而無法方便地獲知水表信息,并且充值水費需要去指定營業點購買水費[3],耗費時間精力,即使是使用第三方支付軟件購買水費也會造成用戶獲取信息不全面,用戶體驗差等影響。水表的監督使用一直是水務管理的重要環節[4],而用水公司目前無法及時掌握用戶水表的狀態和用量信息,管理方式存在步驟繁瑣、費時費力等弊端,造成許多管理上的漏洞。文獻[5]中也特別強調了智能水表的發展趨勢包括管理使用功能的拓展。用戶和水司都迫切需要一種能快速交流、傳遞信息的智能水表,來滿足方便快捷安全的水費移動支付以及數據管理等多方面的需求。
本文將NFC技術應用于智能水表中,結合系統潛在的安全性問題充分利用NFC協議安全、快速連接等特點設計并實現了一個具有移動支付和信息查詢功能的NFC智能水表系統,即水表具有近場通信能力可與用戶手機直接交互,實現水費預支付、退費和用水量查詢等操作,同時也能滿足用水公司數據管理需求。移動支付NFC智能水表已由合作方寧波水表股份有限公司組織專家進行了驗收,經檢測,各項功能指標達到企業設計要求,已開始組織小批量生產,在近期可能會上市。
移動支付NFC智能水表系統主要由四個部分組成:用戶、用水公司、第三方支付公司以及銀行,彼此之間建立安全支付的通信信道,并由金融業務、金融邏輯或業務邏輯相聯系,如圖1所示。金融業務和金融邏輯用于銀行、第三方支付系統和用水公司系統三者之間的資金交易。業務邏輯指用戶通過手機客戶端以及支付中間件進行的水費充值、退款、余額查詢、用水查詢等與用水公司后臺的交互。

圖1 移動支付NFC智能水表系統架構
使用時,用戶下載手機客戶端以及支付中間件,點擊相應命令發起請求后,用水公司后臺收到手機傳來的請求后將響應用戶請求并回傳相應信息至用戶手機。用戶再將手機靠近NFC智能水表實現數據交換,隨時可以完成水費充值/退費的支付功能以及查詢余額、用水信息和檢測水表狀態等數據查詢功能。充值時可將銀行賬戶的資金通過第三方支付公司轉入到NFC手機中,支付成功之后加密數據自動存入手機,然后用戶將手機靠近水表實現水費充值。為降低水表功耗,讓水表端作為目標設備工作在被動態,采用負載調制響應手機請求,手機作為發起設備提供射頻場。當手機靠近水表時,水表中的NFC模塊接收手機發出的射頻信號,憑借感應電流所獲得的能量發送出存儲在水表當中的信息,再由手機客戶端通過網絡將水表信息上傳到用水公司后臺進行處理。
2.1 NFC智能水表硬件設計
NFC智能水表內部結構如圖2所示。主控制單元(Microcontroller Unit, MCU)通常情況下使用低功耗工作模式,必要時通過中斷喚醒控制芯片,中斷處理后又進入休眠狀態;流量檢測采用兩個干簧管計量葉輪轉動圈數,MCU以中斷方式按照階梯水價或階梯水量計算流量和費用;存儲模塊用于記錄用戶用水量的歷史數據以及水表信息;LCD顯示模塊用于顯示用水信息或提示水表工作狀態;防拆干擾檢測用于防止用戶惡意拆卸、破壞水表或者產生磁干擾影響水表正常運行;NFC接口部分包含NFC模塊和安全單元SE。NFC模塊集成了13.56 MHz下的各種主動/被動式非接觸通信方法和協議,又包括NFC控制器和天線,負責控制與NFC手機、安全單元和主控MCU之間的信息交互。安全單元則執行與安全相關的算法加密數據,并存儲關鍵數據及時輸出給NFC模塊。系統硬件或上電復位時須從存儲單元中恢復之前的重要數據,而且水表正常工作中需要及時檢測系統缺電、破壞或干擾信號,并發出相應提醒信號。當系統缺電、表被拆開、受磁干擾、表內金額小于最低金額時,水表關閉閥門。另外,每月至少執行一次閥門開關,以防止閥門長期不動導致閥門生銹。

圖2 NFC智能水表硬件設計框圖
主控MCU與NFC模塊接口電路連接如圖3所示,NFC模塊與主控MCU通信模式由模式控制設置,本系統采用串口連接。水表內NFC模塊在無需產生磁場的情況下檢測潛在外部NFC設備:當磁場達到閾值時NFC模塊IRQ中斷引腳返回標志信號,MCU繼續控制NFC模塊與手機交換通信參數和信息;若磁場未達到閾值時,MCU保持休眠狀態。這將大大降低系統待機功耗并且能及時響應用戶操作,減小系統響應時間,為用戶帶來良好的交互體驗。

圖3 主控MCU與NFC模塊接口連接
2.2 軟件設計
2.2.1 Android手機接口調用
Android系統提供了兩個包用于NFC開發,分別是android.nfc包和android.nfc.tech包。其中android.nfc包含6個類和3個接口,提供了NFC設備讀寫NFC交換數據格式(NFC Data Exchange Format, NDEF)的消息操作函數以及數據交換函數,可用來與本地NFC適配器交互。其中NfcAdapter.CreateNdefMessageCallback接口主要用于當前NFC設備獲取其他NFC設備NDEF消息,NfcAdapter.OnNdefPushCompleteCallback接口主要用于當前NFC設備將開發者應用層的數據發送到其他NFC設備成功后的回調接口。android.nfc.tech包含10個類,主要提供對不同目標設備的讀寫操作以及進行I/O操作[6]。通過對這兩個NFC包中的類和接口的調用,即可實現手機與NFC適配器的數據交互,從而實現與水表的數據通信。
2.2.2 數據交換格式
移動支付NFC智能水表系統數據交換格式采用NDEF標準。在進行NFC通信時,NDEF消息都以數據包的形式封裝在每一個通信幀當中。NDEF消息交換的信息由一系列記錄(Record)組成。每條記錄包含一個有效載荷(Payload),記錄內容可以是文本、網址、郵件或者NFC自定義的數據類型,可將用戶水費余額信息以及用水量等信息采用文本格式記錄。一條NDEF消息結構如圖4所示,交換信息可以包含單個或多個記錄,每條記錄的數據類型(Type)可以相同也可以不同。使用NFC定義的數據類型,載荷內容必須被定義在一個NFC記錄類型定義文檔中。記錄中的數據類型和大小由記錄載荷的頭部(Header)注明[7]。

圖4 NDEF消息結構
2.2.3 智能水表近場通信功能實現
移動支付NFC智能水表近場通信功能的實現,如圖5所示,包括系統初始化階段和傳輸協議階段。系統初始化包括底層規范規定的近場通信模塊初始化、傳輸協議參數的選擇以及上層協議規定的幀格式、請求/響應通信方式的實現。系統初始化完成后使模塊處于休眠狀態,當檢測到發起設備后且無超時的情況下,激活水表的NFC通信模塊,系統進入傳輸階段。

圖5 NFC智能水表近場通信流程
操作人使用手機發起相應功能的連接請求,水表端接收命令后,將按照手機發起的通信模式選擇傳輸速率及通信參數,并利用面向連接的數據傳輸服務以請求/響應的方式與手機進行數據交換。數據交換過程為首先判別用戶權限,按照功能命令的種類執行相應操作,最后水表端響應手機命令并返回數據或操作狀態信息。其中在交換數據協議里包含了有關NFC通信安全協議的內容。
竊聽、數據篡改和重放是本系統主要的威脅,事實上通過使用一個接收器、合適的天線,射頻信號譯碼器就可以竊聽信息[8]。攻擊者可以在較遠距離使用一個高容量強大的天線攔截NFC設備之間的通信。攻擊者在理想狀態下,對主動設備的竊聽距離最大為10 m,對被動設備的竊聽距離最大只有1 m[9]。所以系統需要使用安全通信信道,將用戶的數據經過加密再傳輸,既可以很容易地傳播數據而免受竊聽,同時也避免數據被篡改。
目前,NFC安全標準[10-11]定義了數據交換格式、標簽類型和安全協議,其中規定了用戶之間的秘密通信需要密鑰協商機制。NFC安全標準主要分為兩個部分:共享密鑰服務(Shared Secret Service, SSE)和安全信道服務(Secure Channel Service, SCH)。SSE生成一個用于NFC設備之間的安全通信的密鑰:在這個過程中,執行密鑰協商和密鑰認證過程;共享密鑰服務保證NFC設備通信的機密性和完整性。SCH指在密鑰協商階段需使用Diffie-Hellman橢圓曲線加密算法(Elliptic Curves Diffie-Hellman, ECDH)[12]。而在數據傳輸階段結合消息認證碼(Message Authentication Code, MAC)傳輸加密數據(Encrypted data, EncData),數據的加解密算法為高級加密標準(Advanced Encryption Standard, AES)加解密算法,由安全單元實現數據的加解密。
手機和NFC智能水表間的密鑰協商、認證流程以及數據交換流程如圖6所示,符號說明如表1所示。手機在通信前產生隨機數NA,并發送NA和公鑰QA給水表,水表接收后生成隨機數NB,并和公鑰QB一起發送給手機。通信雙方利用對方的公鑰和自己的私鑰計算得到z,接著使用密鑰推導函數(Key Derivation Function, KDF)生成的共享密鑰(Master Key, MK)。為驗證雙方生成的MK相同,雙方使用MK、ID和公鑰生成密鑰認證標簽MacTag并相互發送。驗證通過后在兩個設備間就建立了一個共享密鑰,然后共享密鑰可以用于提供保密、完整、認證的數據傳輸安全信道,并且在手機和水表端事先協商一個初始序列號(Sequence Number Variable, SNV),并協商遞增方法,如SNV每次加1或以一定規律遞增,通過消息中的序列號來判斷消息的新鮮性來抗擊重放攻擊。

圖6 系統密鑰協商、認證和傳輸流程
本文結合近場通信技術的安全通信協議和喚醒機制設計了具有移動支付功能和數據查詢功能的NFC智能水表系統。首先介紹了系統架構,包括用戶使用NFC手機實現移動支付水費和讀取NFC智能水表數據并上傳到用水公司的過程;其次,系統設計包括NFC智能水表的軟硬件設計以及手機客戶端的NFC功能實現,并利用NFC安全協議解決了系統潛在的安全問題,使得水表能與NFC手機安全便捷地進行信息交換,用戶在家即可實現水費移動支付和用水量查詢等操作,具有廣闊的應用前景。

表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] 韓樹屏,李煊.智能水表的應用現狀及前景展望[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卡預付費智能水表在供水行業的應用與推廣[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創新水務客戶服務管理[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] 王宗輝,張世豪,姚靈.智能水表技術及發展趨勢[J].儀表技術,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開發實戰詳解[M].北京:人民郵電出版社,2014:62-66.(ZHAO B.Android NFC Development: Practical Explanation [M].Beijing: Post & Telecommunication Press, 2014: 62-66.)
[7] 王淼.NFC技術原理與應用[M].北京:化學工業出版社,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);寧波市科技局產業技術創新及成果產業化重點項目(2013B10034)。
張呈鈺(1992—),女,甘肅蘭州人,碩士研究生,主要研究方向:近場通信應用、智能儀器儀表; 王讓定(1962—),男,甘肅天水人,教授,博士生導師,博士,主要研究方向:無線傳感網、智能抄表、信息安全; 姚靈(1953—),男,浙江寧波人,教授高級工程師,碩士,主要研究方向:流量儀表、精密儀器; 傅松寅(1982—),男,浙江寧波人,助理研究員,博士研究生,主要研究方向:無線傳感器網絡、智能儀器儀表;左富強(1982—),男,江西余江人,碩士,主要研究方向:流量儀表; 高旗飛(1995—),男,江蘇南通人,主要研究方向:軟件工程; 蔣銘(1995—),男,浙江紹興人,主要研究方向:軟件工程。
1001-9081(2017)01-0166-04
10.11772/j.issn.1001-9081.2017.01.0166
TN99; TN929.5
A