張夢飛
摘要:隨著移動互聯(lián)網(wǎng)的發(fā)展,尤其是智能手機(jī)的普及,NFC移動支付逐漸成為一種主流的移動支付方式。但是由于NFC技術(shù)還不完善,所以還存在很多的安全威脅,嚴(yán)重制約著NFC移動支付的發(fā)展。為了保障NFC移動支付的數(shù)據(jù)安全和用戶的隱私,本文提出了使用數(shù)據(jù)加密、隨機(jī)數(shù)、書籍簽名等幾種安全技術(shù),并分析了這些安全技術(shù)在應(yīng)對安全威脅方面的有效性。相信通過這些安全技術(shù)的應(yīng)用的使用,有助于構(gòu)建一個更加安全的NFC移動支付系統(tǒng)。
關(guān)鍵詞: NFC; 移動支付; 安全威脅; 數(shù)據(jù)加密; 安全技術(shù)
【Abstract】 With the development of mobile Internet, especially the popularity of smart phones, NFC mobile payment has gradually become a mainstream mobile payment method. However, due to the imperfect NFC technology, there are still many security threats, which seriously restricts the development of NFC mobile payment. In order to protect the data security of NFC mobile payment and the privacy of users, this paper proposes several security technologies such as data encryption, random number and book signature, and analyzes the effectiveness of these security technologies in dealing with security threats. It is believed that the use of these security technology applications will help to build a more secure NFC mobile payment system.
【Key words】 ?NFC; mobile payment; security threat; data encryption; security technology
0 引 言
隨著無線通信技術(shù)和移動互聯(lián)網(wǎng)技術(shù)的發(fā)展,尤其是智能手機(jī)的普及,移動支付正在迎來空前的多樣化的發(fā)展。按照支付所依托的技術(shù)條件又可以分為2種支付方式,即:遠(yuǎn)程支付和NFC近場支付。以現(xiàn)在移動支付的發(fā)展?fàn)顩r來看,目前技術(shù)最成熟,應(yīng)用最廣泛的還是基于遠(yuǎn)程的支付方式,其中以通過QR碼技術(shù)實(shí)現(xiàn)的微信、支付寶支付為代表,已經(jīng)在生活的眾多場景中投付使用。但是基于NFC的移動支付由于其安全性更好,操作更方便等優(yōu)點(diǎn),目前已經(jīng)在公共交通、餐飲、零售等行業(yè)取得了很大的應(yīng)用進(jìn)展。
根據(jù)艾瑞咨詢公司發(fā)布的《中國移動NFC支付行業(yè)研究報告》[1]顯示,在2017年中國使用NFC移動支付的金額規(guī)模達(dá)到了48.9億元,而僅在2018年第一季度,這一數(shù)字就已經(jīng)達(dá)到了28.9億元。
1 NFC移動支付基本原理
1.1 NFC工作基本原理
NFC的概念是在2004年3月由飛利浦半導(dǎo)體、諾基亞和索尼三家公司共同參與研制開發(fā)。是通過無線射頻識別(RFID)和互聯(lián)技術(shù)的融合而產(chǎn)生的新技術(shù),是一種工作在較短距離的無線通信技術(shù)標(biāo)準(zhǔn)。通過在單一芯片上集成了感應(yīng)式讀卡器、感應(yīng)式卡片和點(diǎn)對點(diǎn)通信的功能,運(yùn)行工作頻率為13.56 MHz,能在大約10 cm范圍內(nèi)建立設(shè)備之間的連接,傳輸速率可為106 Kbit/s、212 Kbit/s、424 Kbit/s,未來可提高到848 Kbit/s以上。
NFC終端有3種工作模式:
(1)讀/寫模式:NFC終端作為一個讀卡器,可以讀寫銀行卡、支持NFC的標(biāo)簽以及工作在卡模擬模式下的其他NFC設(shè)備。
(2)卡模擬模式:將NFC終端模擬成一個非接觸的智能卡,當(dāng)卡模擬模式下的終端靠近讀卡器終端時,可以像普通的卡片一樣實(shí)現(xiàn)相應(yīng)的功能。
(3)點(diǎn)對點(diǎn)模式下:2個支持NFC功能的終端通過進(jìn)行點(diǎn)對點(diǎn)通信來完成信息傳輸。
NFC標(biāo)準(zhǔn)的制定,主要有飛利浦、諾基亞、索尼牽頭組建的NFC 的標(biāo)準(zhǔn)化組織 NFC Forum ( NFC論壇) ,歐洲計算機(jī)制造商協(xié)會 ECMA,和國際標(biāo)準(zhǔn)化組織ISO這三家。先后演化出ISO1443、ISO18092、ISO15698、ISO 21481[2-3等標(biāo)準(zhǔn)。
NFC通信模式按照是否產(chǎn)生射頻場和提供能量可以分為NFC被動通信和NFC主動通信兩種模式[3]。文中將展開研究論述如下。
(1)被動通信模式。被動通信是指在整個通信過程中,能量源由發(fā)起方提供,而目標(biāo)方不產(chǎn)生能量,而是從發(fā)起方RF(射頻)場獲得能量,并且使用耦合的方式,以相同的速率將數(shù)據(jù)回傳給發(fā)起方。這里的目標(biāo)方可以是有源設(shè)備如卡模擬模式下的智能手機(jī)等,也可以是諸如NFC標(biāo)簽、銀行卡等無源設(shè)備。
(2)主動通信模式。主動通信模式是指發(fā)起方和目標(biāo)方在傳輸數(shù)據(jù)時都要提供能量。當(dāng)發(fā)起方發(fā)送數(shù)據(jù)時,將產(chǎn)生自己的能量場,而接收方則以偵聽模式接收發(fā)起方的數(shù)據(jù)。當(dāng)發(fā)起方發(fā)送完數(shù)據(jù)后,將關(guān)閉自己的能量場并調(diào)整為偵聽模式,等待接收方發(fā)送數(shù)據(jù)。反之,接收方在進(jìn)行數(shù)據(jù)應(yīng)答時要和發(fā)起方采取同樣的策略。
1.2 NFC移動支付基本流程
NFC移動支付即近場支付,是一種非接觸式的支付方式, NFC移動支付的系統(tǒng)架構(gòu)[4]如圖2所示。由圖2可知,該系統(tǒng)中各部分的功能設(shè)計可闡釋分述如下。
(1)移動終端:指在移動支付過程中,用戶所使用的移動支付終端設(shè)備,一般為支持NFC功能的智能手機(jī)。
(2)受理終端:通常是指參與移動支付交易的商家使用的終端設(shè)備如POS機(jī)等。
(3)收單系統(tǒng):一般負(fù)責(zé)產(chǎn)生和轉(zhuǎn)發(fā)交易信息,收集、整理和提交結(jié)算數(shù)據(jù)等。
(4)轉(zhuǎn)賬清算系統(tǒng):指實(shí)現(xiàn)賬務(wù)的轉(zhuǎn)接和結(jié)算功能的系統(tǒng)。
(5)賬戶管理系統(tǒng):指提供資金管理和賬務(wù)結(jié)算的系統(tǒng),如銀行等。
(6)TSM:第三方可信服務(wù)平臺,如支付寶、手機(jī)錢包等,可以實(shí)現(xiàn)移動支付安全管理。
(7)安全單元:用于存儲安全敏感的數(shù)據(jù)或者用戶的隱私數(shù)據(jù)等,如交易的關(guān)鍵數(shù)據(jù),用戶的銀行卡信息等,確保敏感數(shù)據(jù)和用戶隱私的安全性和交易的不可否認(rèn)性。安全單元以SIM卡、SD卡或單芯片的形式存在。
NFC移動支付的在線交易流程如圖3所示,詳細(xì)步驟具體如下。
步驟1用戶將移動終端放置于受理終端無線射頻場中,受理終端向安全單元發(fā)送命令,以獲取發(fā)起交易所需的數(shù)據(jù)信息。
步驟2安全單元響應(yīng)由受理終端發(fā)起的交易命令,并將處理結(jié)果返回受理終端。
步驟3客戶端提示用戶本次交易的結(jié)果(此步驟可選)。
步驟4受理終端向收單系統(tǒng)發(fā)起交易請求,收單系統(tǒng)請求賬戶管理系統(tǒng)獲取交易結(jié)果。
步驟5收單系統(tǒng)向受理終端返回交易結(jié)果,然后受理終端就可以顯示交易結(jié)果。
2 NFC移動支付的安全威脅
研究中,目前對于NFC移動支付中面臨的安全威脅給出了探討總述如下。
(1)竊聽。竊聽是指在NFC移動支付交易期間,攻擊者用特殊手段獲取交易數(shù)據(jù)或者是卡片信息,并對其進(jìn)行分析,導(dǎo)致用戶隱私信息泄露。雖然NFC是近距離通信,但是由于其射頻場是開放的,因此就給居心不良者提供了攻擊可能,攻擊者可能通過一些特殊裝備獲得設(shè)備正在傳輸?shù)男畔?。由于現(xiàn)在NFC技術(shù)并沒有對數(shù)據(jù)加密提出要求,而且很多情況下數(shù)據(jù)的傳輸都是以明文傳遞的,這就極大地增加了數(shù)據(jù)被竊聽的風(fēng)險。
(2)重放攻擊。重放攻擊主要是發(fā)生在消息被攻擊者竊聽之后的下一輪會話中。當(dāng)攻擊者通過竊聽獲得了通信雙方的交互信息之后,就把竊聽到的數(shù)據(jù)原封不動地重新發(fā)送給接收方。由于重放的信息是雙方約定的合法的信息,因此往往能達(dá)到欺騙接收方的目的,這樣就破壞了雙方的身份認(rèn)證,影響了認(rèn)證的準(zhǔn)確性給系統(tǒng)造成了額外的負(fù)擔(dān)。
(3)消息篡改。消息篡改是指攻擊者再截獲發(fā)送方發(fā)送的數(shù)據(jù)之后,然后對數(shù)據(jù)進(jìn)行篡改發(fā)送給消息原本的接收方。數(shù)據(jù)篡改的形式有:插入無效數(shù)據(jù)、刪除關(guān)鍵數(shù)據(jù)以及對數(shù)據(jù)的惡意修改,如在支付過程中攻擊者對雙方的交易信息或者銀行賬號進(jìn)行修改,使得雙方無法達(dá)成交易或者產(chǎn)生錯誤的交易,從而造成被攻擊的財產(chǎn)損失。
(4)中間人攻擊。中間人攻擊[5]分為2種方式。第一種能夠是在雙方傳輸數(shù)據(jù)的過程中發(fā)生的中間人攻擊。在第三方攻擊者獲取到了交易雙方中的任一方的合法身份標(biāo)識信息之后,就可以通過身份信息偽裝成合法終端騙取另一方的信任,完成與另一方的信息交互。第二種是通過惡意程序的攻擊。具體表現(xiàn)為攻擊者利用惡意應(yīng)用,應(yīng)用協(xié)議數(shù)據(jù)單元(APDU)命令向安全單元調(diào)用數(shù)據(jù)請求,當(dāng)安全單元響應(yīng)之后,惡意應(yīng)用程序就把得到的回應(yīng)信息轉(zhuǎn)發(fā)給第三方攻擊者,這樣攻擊者就獲得了交易的敏感信息。
(5)交易抵賴。交易抵賴是指參加交易的雙方參與者,拒絕承認(rèn)參與過交易行為,以此來逃避交易過程中產(chǎn)生的資金轉(zhuǎn)移,達(dá)到逃避支付的目的,但是對交易的另一方卻造成了財產(chǎn)損失。
(6)拒絕服務(wù)。拒絕服務(wù)(DOS攻擊)主要可以通過2種形式實(shí)現(xiàn)。一種是通過硬件實(shí)現(xiàn),攻擊者采用額外的硬件通過不停地讀取交易方的標(biāo)簽或者強(qiáng)制讓交易方不停地讀取自己的標(biāo)簽,造成交易的一方無法和對方取得交互,從而達(dá)到破壞交易的目的。另一種是通過軟件層面實(shí)現(xiàn)。攻擊者通過向交易一方發(fā)送超大規(guī)模的數(shù)據(jù)量,造成交易者不得不耗費(fèi)大量資源來處理這些數(shù)據(jù),從而占用了大量的資源,而沒有辦法響應(yīng)另一方的請求信息,以此達(dá)到破壞交易的目的。
3 應(yīng)對安全威脅的安全技術(shù)
(1)公鑰私鑰密碼體系。公鑰私鑰密碼體系是通過某一種加密算法得到一個公鑰和一個私鑰,其中公鑰是密鑰對中公開的部分,任何人都可以看到,私鑰則是不公開的部分,只有擁有者自己知道。公鑰通常用于會話數(shù)據(jù)加密、數(shù)字簽名驗(yàn)證等,公鑰加密的信息可以用相應(yīng)的私鑰解密的數(shù)據(jù)。而私鑰加密的數(shù)據(jù),就必須使用公鑰才能解密。
采用這種技術(shù)對NFC的設(shè)備信息、交易數(shù)據(jù)、銀行卡信息進(jìn)行加密,由于攻擊者不知道私鑰,所以就可以有效應(yīng)對竊聽、消息篡改等攻擊手段,實(shí)現(xiàn)數(shù)據(jù)的安全傳輸和數(shù)據(jù)的保密性。
(2)數(shù)字簽名。數(shù)字簽名,是將普通簽章的數(shù)字化,數(shù)字簽名就代表了簽名者的身份。其特性是制造簽名非常容易,但仿冒簽名就非常困難。數(shù)字簽名可以與被簽署的信息結(jié)合起來,且沒有辦法從信息上移除。數(shù)字簽名包含2個算法:其一是簽署算法,使用私鑰對信息或者信息的哈希值進(jìn)行處理來產(chǎn)生簽名;其二是驗(yàn)證算法,使用公鑰來驗(yàn)證經(jīng)過簽名的數(shù)據(jù)的真實(shí)性。
采用數(shù)字簽名技術(shù),可以有效驗(yàn)證NFC支付系統(tǒng)各個參與者的身份,由于簽名的不可仿冒性,從而可以避免中間人攻擊,又可以認(rèn)證交易證的身份使交易行為不可抵賴。
(3)隨機(jī)數(shù)技術(shù)。在NFC支付的消息傳遞過程中,除了傳遞交易相關(guān)的數(shù)據(jù)之外,還可以在每一次數(shù)據(jù)傳遞中還要額外增加一個或者多個實(shí)時變化的隨機(jī)數(shù),每一個角色都按照自己制定的規(guī)則生成隨機(jī)數(shù),在收到交易數(shù)據(jù)時可以對比數(shù)據(jù)中的隨機(jī)數(shù)是否是自己生成的。
采用隨機(jī)數(shù)技術(shù),一方面可以保證數(shù)據(jù)的安全性,使攻擊者即使竊取到了消息,也無法對消息進(jìn)行偽造,從而避免了消息篡改。又由于隨機(jī)數(shù)是實(shí)時可變的,因此使得攻擊者沒有辦法進(jìn)行重放攻擊。
(4)匿名化。在客戶進(jìn)行交易的時候,使用的是自己的假名或者是虛擬ID,而客戶的真實(shí)身份信息,只有銀行或者可信認(rèn)證平臺知道。用戶的假名和真實(shí)身份之間沒有任何必然聯(lián)系。用戶在交易系統(tǒng)中使用假名進(jìn)行交易,而在結(jié)算時銀行會驗(yàn)證假名的真實(shí)性并根據(jù)假名計算用戶的真實(shí)身份信息。即使攻擊者得到了用戶的假名,也不知道客戶的真實(shí)身份,所以也無法通過銀行驗(yàn)證。
通過匿名化技術(shù)保護(hù)了用戶的隱私和用戶的賬戶安全。保證了系統(tǒng)的整體的安全性和身份的不可偽造性。
(5)組簽名。在組簽名系統(tǒng)中,任何組的合法成員都可以代表組生成匿名的簽名,并且驗(yàn)證者可以使用組公鑰來檢查組簽名的有效性[6]。驗(yàn)證者可以驗(yàn)證簽名是否由組成員簽名,但不能知道誰簽署了該消息以為客戶提供匿名,并且也不能鏈接同一客戶的不同交易以提供不可鏈接性。小組管理者可以通過簽名來驗(yàn)證簽名者的身份,因此簽名者不能否認(rèn)自己的簽名。通過組簽名既保證了組成員的匿名性,又保證了可追溯性,合法用戶可以通過其匿名性得到保護(hù),可追溯性可以對用戶的非法行為進(jìn)行跟蹤。
采用組簽名策略可以有效防止身份冒用,從而避免中間人攻擊、數(shù)據(jù)篡改等。也保證了系統(tǒng)的整體的安全性和交易的不可抵賴性。
(6)AES和ECC混合加密算法。首先,在數(shù)據(jù)傳輸過程中采用AES算法對NFC移動支付中的數(shù)據(jù)進(jìn)行加密,然后用ECC算法對AES算法的密鑰進(jìn)行加密管理;其次在解密時,先通過對ECC算法的解密得到AES算法的密鑰,然后通過得到的AES密鑰再對數(shù)據(jù)進(jìn)行解密[7]。這樣不僅保證了數(shù)據(jù)傳輸?shù)陌踩煽?,同時也兼顧了加密和解密的速度。
通過混合加密可以更加有效地保證數(shù)據(jù)在傳輸過程中的安全,有效應(yīng)對竊聽、消息篡改等威脅。
(7)HMAC消息認(rèn)證技術(shù)。HMAC消息認(rèn)證技術(shù)的基本原理是:發(fā)送方和接收方在進(jìn)行消息傳送之前要事先確定一個Hash函數(shù),這個Hash函數(shù)主要用來計算傳輸信息的摘要值。發(fā)送方首先利用會話的密鑰,從摘要值中計算出認(rèn)證碼,然后再將包括認(rèn)證碼在內(nèi)的全部信息發(fā)送給接收方。接收方在收到發(fā)送方發(fā)來的數(shù)據(jù)之后,首先根據(jù)約定好的散列函數(shù)獲取到摘要值,再通過密鑰解密出發(fā)送發(fā)來的認(rèn)證碼,然后判斷收到的認(rèn)證碼和密鑰解密出來的摘要值是否一致。如若一致,則說明數(shù)據(jù)在傳輸過程中沒有被攻擊認(rèn)證有效。否則,這說明消息被攻擊,認(rèn)證無效。HMAC消息認(rèn)證技術(shù)保證了身份的認(rèn)證性。
4 結(jié)束語
目前,手機(jī)已經(jīng)像錢包一樣與人形影不離,甚至使用的頻率比錢包還要多 [8]。NFC移動支付是將NFC技術(shù)應(yīng)用到移動支付交易流程中的技術(shù)手段。NFC移動支付中的安全威脅主要存在于NFC設(shè)備之間的交互中。本文主要介紹了NFC的基本工作原理,NFC移動支付的主要流程,列舉了NFC移動支付過程中主要存在的安全威脅,并提出了采用公鑰密鑰加密、隨機(jī)數(shù)、匿名化、群組簽名、AES和ECC混合加密算法等應(yīng)對安全威脅的安全技術(shù),并分析了安全技術(shù)切實(shí)的可能性。如果將這些安全技術(shù),應(yīng)用到完整的交易系統(tǒng)中,則能夠形成一個安全的NFC移動支付系統(tǒng)。
參考文獻(xiàn)
[1] 上海艾瑞市場咨詢有限公司. ?艾瑞咨詢系列研究報告(2018年第6期)[R]. 北京:上海艾瑞市場咨詢有限公司,2018.
[2]楊軍. NFC技術(shù)的應(yīng)用、標(biāo)準(zhǔn)進(jìn)展及測試[J]. 現(xiàn)代電信科技,2009,39(10):1.
[3]王三元, 程代偉. NFC技術(shù)發(fā)展與應(yīng)用[J]. ?北京電子科技學(xué)院學(xué)報, 2016,24(4):44.
[4]王淼. NFC技術(shù)原理與應(yīng)用[M]. 北京:化學(xué)工業(yè)出版社,2014.
[5]賈凡, 佟鑫. ?NFC手機(jī)支付系統(tǒng)的安全威脅建模[J]. 清華大學(xué)學(xué)報(自然科學(xué)版),2012(10):1460.
[6]ATENIESE G, CAMENISCH J, JOYE M, et al. A practical and provably secure coalition-resistant group signature scheme[C]// The 20th Annual International Cryptology Conference. Santa Barbara, CA, USA:dblp, 2000: 255.
[7]繆昌照,徐俊武. AES與ECC混合加密算法研究[J]. 軟件導(dǎo)刊,2016,15(11):63.
[8]張素娜, 賈利軍, 張懷武, 等. ?NFC手機(jī)研究進(jìn)展[J]. 通信技術(shù), 2012, 45(12):134.