摘 要:從NFC工作模式及應用出發,提出了將NFC技術應用到燃氣表和手機終端,由用戶使用NFC手機讀取NFC燃氣表數據并上傳到燃氣公司來實現遠程抄表的實現過程。此設計中具體包含了NFC燃氣表的功能設計、結構設計等內容,具有一定的實用價值。
關鍵詞:近場通信;燃氣費付費;移動支付
中圖分類號:TP393 文獻標志碼:A 文章編號:2095-1302(2014)06-0024-03
0引言
燃氣是目前跟老百姓生活密切相關的主要能源,而現在燃氣表的管理主要采用卡式預付費方式,這種管理方式存在步驟繁瑣、費時費力等弊端,很有必要將近場通信NFC技術、移動終端、3G、移動支付等技術應用到燃氣費付費過程,以滿足方便快捷的付費需求。
NFC(Near Field Communication,近場通信) 是在無線射頻識別 (RFID)和互聯技術的基礎上融合演變而來的新技術,是一種短距離無線通信技術標準。這種技術是由飛利浦公司發起,由諾基亞、索尼等著名廠商聯合主推的一項近距離無線通信技術,它在單一芯片上集成了非接觸式讀卡器、非接觸式智能卡和點對點通信的功能,運行在13.56 MHz的頻率范圍內,能在大約10 cm范圍內建立設備之間的連接,傳輸速率可達106 Kb/s、 212Kb/s、 424Kb/s,未來可提高到848Kb/s以上[1-3]。它提供了一種簡單、觸控式的解決方案,可以讓客戶簡單直觀地交換信息、訪問內容與服務。
本文設計并實現一個基于RFID的移動支付終端系統,用一臺帶有NFC功能的手機讀取具有RFID標簽的燃氣表中的數據,并通過手機將數據傳送到燃氣公司后臺,達到遠程抄表的目的,用戶還可以通過手機與燃氣公司后臺進行交互,實現遠程支付和燃氣量查詢等操作。
1基于RFID模擬接口的移動支付
燃氣表的RFID模擬接口中集成了微處理器,只讀存儲器,隨機存儲器,電可擦除存儲器,I/O驅動幾大部分。其中微處理器是整個芯片的核心,完成計算任務;只讀存儲器用于存放預置的程序代碼,一般為微操作系統;隨機存儲器是作為運算時的暫存數據,存放如命令參數、返回結果、臨時工作密鑰等數據;電可擦除存儲器則完成用戶數據的存儲,如用戶私鑰等[4]。具有快速運算、存儲量大、安全性高以及難以破譯和偽造等特點。
RFID模擬接口將采用自主研發的“一卡一密”措施,以加強系統的安全性。該技術方案能對每一張智能卡提供一個唯一密碼,不僅保證不同客戶的RFID卡讀寫機具相互不可串用,即使某張智能卡或某臺智能卡讀寫機具有的訪問密碼被意外泄露或被惡意破譯,仍然無法知道其它智能卡的訪問密碼。
非接觸CPU智能卡與非接觸邏輯加密卡相比,擁有獨立的CPU處理器和芯片操作系統,所以可以更靈活的支持各種不同的應用需求,更安全的設計交易流程。但與非接觸邏輯加密卡系統相比,非接觸CPU智能卡的系統更為復雜,需要進行更多的系統改造,比如密鑰管理、交易流程、PSAM卡以及卡片個人化等。密鑰通常分為充值密鑰(ISAM卡),減值密鑰(PSAM卡),身份認證密鑰(SAM卡)[5]。
非接觸CPU智能卡可以通過內外部認證的機制,例如電子錢包的交易流程,高可靠地滿足不同的業務流程對安全和密鑰管理的需求。對電子錢包圈存可以使用圈存密鑰,消費可以使用消費密鑰,清算可以使用TAC密鑰,更新數據可以使用卡片應用維護密鑰,卡片個人化過程中可以使用卡片傳輸密鑰、卡片主控密鑰、應用主控密鑰等,真正做到一鑰一用。
2應用場景
在采用本項目所研究的技術之后,用戶有望更加方便地獲得移動支付的便利,具體應用場景如圖1所示。
用戶通過下載相應智能手機客戶端的支付中間件,可直接在手機上進行操作,隨時隨地完成對自己用氣的充值、余額查詢、詳單查詢等功能,足不出戶辦理燃氣費繳納業務。
另外,在指定的地點,通過自助終端(手機)的方式,用戶也可以將銀行賬戶的資金轉入到NFC手機中,用于到家中向電表進行充值。
綜合實現以上兩點之后,下一步可以研究使用NFC手機實現手機支付隨時隨地從銀行劃款購水電氣,支付成功之后加密數據自動存入手機;然后將手機靠近燃氣表(帶RFID模擬接口),實現預付費儲值。
圖1基于移動支付的NFC智能燃氣表應用場景示意圖
3系統設計
3.1系統整體結構
基于移動支付的NFC燃氣表系統整體結構如圖2所示。系統正常運行時,燃氣表的MCU將燃氣表燃氣量信息寫入到ST33芯片已經定義好的燃氣表信息文件中。當用手機靠近燃氣表時,ST33芯片進入NFC適配器的磁場,接收手機發出的射頻信號,憑借感應電流所獲得的能量發送出存儲在燃氣表信息文件中的信息,再通過我們編寫的移動支付終端軟件通過Web將燃氣表信息發送到燃氣公司后臺進行處理。燃氣公司后臺收到手機傳來的信息并解密后會主動將解密的燃氣表信息回傳給手機,用戶也可以通過手機終端軟件主動發送查詢并得到燃氣公司后臺的響應。用戶、銀行、燃氣公司之間還可以建立安全支付的通信信道,滿足用戶的遠程支付需求。
圖2系統整體結構圖
3.2NFC燃氣表的內部結構
NFC燃氣表在原有預付費燃氣表的基礎上,增加了一個NFC通信接口,去掉了原來的卡座,其內部結構如圖3所示。
NFC單元包括NFC控制器和NFC安全單元。NFC控制單元的主要功能是通過天線與外界的NFC手機通信,負責控制與NFC手機、NFC安全單元和主控MCU之間的信息交互。NFC安全單元主要負責執行與安全相關的算法,存儲關鍵數據,并輸出計算結果給NFC控制單元。通信接口主要包括SWP、I2C、7816接口。
3.3移動支付終端系統的結構模塊
移動支付終端系統主要包括NFC手機接口調用、RFID卡識別、移動終端與RFID卡的數據傳輸、燃氣公司對用戶RFID燃氣表的管理、用戶的遠程支付等結構模塊。
圖3NFC燃氣表內部結構示意圖
手機接口調用模塊主要用來實現移動支付終端軟件與手機NFC適配器的連接與數據通信[6]。通過對Android系統提供的android.nfc package和android.nfc.tech package兩個API的調用實現移動支付終端客戶端軟件和手機NFC適配器之間的連接與訪問[7,8]。我們所使用燃氣表中的RFID電子標簽支持的是ISO-DEP (ISO 14443-4)技術標準,因此可以先通過對android.nfc package的調用實現客戶端與適配器之間的連接。再調用android.nfc.tech package提供的相應的IsoDep類創建相應的對象,以實現對該tag即燃氣表中RFID電子標簽的訪問。
為防止RFID電子標簽內容的泄露,保證僅有授權實體才可以讀取和處理相關標簽上的信息,必須建立相應的訪問控制機制,確保讀寫器的安全性。在設計訪問控制機制時,要充分考慮標簽自身的計算能力和數據存儲能力。為防止電子標簽的偽造和標簽內容被濫用,NFC手機必須在通信之前對RFID電子標簽的身份進行認證。傳統的身份認證機制是使用基于公鑰的數字簽名技術,這種技術不適用于計算能力嚴重受限的RFID標簽。在該系統中采用了典型的三輪密碼認證協議,該協議的認證流程如圖4所示。
圖4三輪密碼認證協議流程圖
認證的流程可以分成以下幾個步驟:
(1)應用程序通過RFID讀寫器向RFID電子標簽發送認證請求;
(2)RFID標簽收到請求后向讀寫器發送一個隨機數B;
(3)讀寫器收到隨機數B后向RFID電子標簽發送使用要驗證的密鑰加密B的數據包,其中包含了讀寫器生成的另一個隨機數A;
(4)RFID電子標簽收到數據包后,使用芯片內部存儲的密鑰進行解密,解出隨機數B并校驗與之發出的隨機數B是否一致;
(5)如果是一致的,則RFID使用芯片內部存儲的密鑰對A進行加密并發送給讀寫器;
(6)讀寫器收到此數據包后,進行解密,解出A并與前述的A比較是否一致;
如果上述的每一個環節都成功,則驗證成功;否則驗證失敗。這種驗證方式可以說是非常安全的,破解的難度也非常大。
4NFC燃氣表的優勢
NFC技術作為一種非接觸式的短距離傳輸技術應用在燃氣表中,相對傳統的預付費卡表、有線遠傳燃氣表和無線遠傳燃氣表,具有明顯的優勢:
(1)燃氣表與NFC手機之間信息交換的安全、便捷。
由于NFC燃氣表與NFC手機之間是非接觸式通信方式,因此使用十分便捷;另外由于NFC燃氣表和NFC手機中都引入了NFC安全單元,在數據交換的過程中將進行一系列的加解密、簽名和驗證簽名的操作,因此兩者之間的通信是安全的。
(2)燃氣表與主站之間信息交互的私密性、完整性和新鮮性。
燃氣表與主站之間共享私有密鑰,對所交互的信息進行加解密和簽名操作,可以保證兩者之間所交互信息是未被篡改的,從而保證了數據的私密性和完整性。通過在交互信息中插入與時間有關的變化量,可以保證信息的新鮮性,從而防止重放攻擊。對應到燃氣繳費應用中,以上三種安全性可防止惡意用戶竊聽、篡改繳費金額或多次使用同一個繳費信息進行充值。
(3)降低了燃氣公司的運營成本。
燃氣公司可以采用預付費模式來對NFC燃氣表進行控制。由于繳費和預存功能都是由客戶自己完成,所以燃氣公司可以大幅度減少柜臺營業人員,降低運營成本。
(4)實現了燃氣費抄繳過程的一體化,方便了用戶。
該燃氣表支持用戶手機本地抄表遠程支付模式,用戶可以“足不出戶”地使用NFC手機完成燃氣費的預付費或后付費功能,對于用戶來說十分方便。
5結語
由于手機在中國的普及,對于普通消費者來說,利用具有NFC功能的手機設備進行支付時,只需將手機靠近燃氣表即可完成支付,這樣支付的便利性對于一般的消費者來說是很有吸引力的,容易得到時尚一族的熱捧。
參 考 文 獻
[1]蔣華, 孫強. 近距離無線通信技術標準解析[J].信息技術與標準化,2006(5): 26-30.
[2]S.Ortiz.Jr. Is Near-Field Communication Close to Success[J]. IEEE Computer Society. March, 2006: 18-20
[3]Ortiz E.An Introduction to Near Field Communication and the Contactless Communication API[EB/OL].[2008-10-15].http://java,sun.com/developer/technicalArticles/ja- vame/nfc/.
[4]高飛,薛艷明, 王愛華.物聯網核心技術:RFID 原理與應用[M]. 北京:人民郵電出版社,2010.
[5]張燕燕.移動支付的安全機制研究[J].科技信息,2010(21):20-23.
[6]黃暉,莊文雅. 基于近場通信的手機支付解決方案[J]. 硅谷,2010(8):58-60.
[7]蘇曉燕.基于NFC技術的Android移動支付終端的設計與實現[D].成都:西南交通大學,2013.
[8]胡星波,伀渭川. 基于Android的NFC實現與應用[J]. 電視技術,2011(21):84-88.