Apple Pay及其背后的安全技术
2019獨角獸企業重金招聘Python工程師標準>>>
1.? 什么是Apple Pay
Apple Pay是Apple公司創新的一種安全支付方式。利用Apple Pay,用戶可以在商店或App內進行支付,既簡單又安全。你再也不必到處翻找錢包,也不用再浪費時間尋找合適的卡了。只需要在支持Apple Pay的POS機上輕輕一觸,并得到你的允許,即可用你的信用卡或借記卡完成支付。?
Apple?Pay 是一種支付形式,而非錢包。Apple屬于完全第三方,提供了一整套技術整合了支付過程的各個環節,連接了用戶和商家,讓用戶的銀行卡與商家的支付系統對接。與支付寶和微信支付不同的是,省去了第三方平臺(支付寶錢包、微信錢包),減少了風險。支付過程中Apple不會收取任何費用。
Apple Pay易用且安全。它在使用過程中不會泄露你卡片的詳細信息,因為這些資料不會儲存在你的設備上,也不會上傳至iCloud,更不會傳遞給商家。?
如圖 1和圖2所示,分別是Apple Pay在實體店支付和App內支付,這2種支付場景的流程和原理類似,本文只探討實體店支付場景。Apple Pay支持iPhone6、iPad?Air?2、iPad?mini?4、Apple Watch及以上機型,本文只探討iPhone支付。
圖 1 實體店支付?????????????????????????????????????????????????????????????????????????????????????????
圖?2 App內支付
2.? 名詞解釋
先來熟悉幾個名詞,有助于了解Apple Pay的機制。
?
3.? Apple Pay的體系架構
Apple Pay在平臺上采用了可信的Boot Chain架構,確保正確的關鍵和軟件加載在經過驗證的硬件上,并繼承了符合金融行業標準認證體系的安全芯片架構。
圖 3 Apple Pay體系架構簡圖
在現有支付體系的生態環境尊重與兼容的前提下,Apple不失時機地將Passbook、Touch ID、安全芯片(Secure Element)、NFC控制器、Touch ID和Apple Pay服務器等幾個關鍵技術點整合進來。從下圖可以看出,Apple是逐年完善其支付體系,逐步打造支付生態的。
圖 4 Apple Pay技術演進
?
Passbook虛擬錢包
整合了各類服務的票據,如登機牌和會員卡等,自身不提供交易功能,但幫助商戶發展了會員,且圈存了大量商戶資源。
?
Touch ID
用與Home鍵解鎖和App Store虛擬商品購買的身份驗證,省去了輸入密碼環節。
?
安全芯片(Secure Element)
Apple從iPhone5S開始使用ARM公司的A7架構處理器,除了性能的提升外,更重要的是A7支持TrustZone技術。TrustZone技術通過其內部總線的精巧設計使在同一顆ARM處理器上分隔出兩個隔離的軟件和硬件資源區。該技術符合GlobalPlatform TEE體系架構定義。
Secure Enclave和Secure Element通過串口加密通信,加密通信所使用的共享密鑰對(Shared Pairing Key)關聯了Secure Enclave的UID和Secure Element的ID,由Secure Enclave生成,并通過iClound的加密機預置在安全芯片中。
當用戶身份驗證成功,Secure Enclave對交易數據用共享密鑰對簽名,并附上AR(Authentication Random)然后發送到Secure Element對其進行解密。由此實現這2者之間數據的安全交換。
?
NFC
打通了線下交易環節。
?
Apple Pay Server
打通支付網絡系統或銀行的安全通信。
4.? 整合上下游產業鏈
Apple擅長整合長產業鏈,從用戶、商戶,到安全,再到支付,形成完整的生態。
?
4.1.? 上下游環節
用戶
App Store、用戶信用卡資源
?
商戶
Passbook聚集了大量商戶資源
?
安全
Touch ID,培養用戶使用指紋識別,用于解鎖和App Store消費
?
與銀行卡產業鏈的所有角色合作
逐步整合產業鏈上的角色和資源,打造完整的生態。
4.2.? 銀行卡產業鏈
包括:
卡組織,Visa, MasterCard, American Express;
發卡銀行;
商戶信息系統提供商,Micros, NCR, Opentable;
收銀終端制造商,Verifone, Ingenico;
商戶;
芯片標準化組織GlobalPlatform。
?
5.? 添加銀行卡至Apple Pay
Wallet能存放登機牌、各種票券和積分卡等等,有了Apple?Pay,它還能儲存信用卡和借記卡。
圖 5 添加銀行卡至Wallet
?
用戶以鍵盤或iSight方式輸入銀行卡信息,這些信息均會被加密傳輸至Apple Server。Apple Server解碼這些數據,并重新將數據以私鑰加密,這些數據除了之前認證的信息外,還有Apple用戶信息、用戶手機號碼、姓名、手機型號、地理位置等,然后再將其傳輸至銀行支付系統。銀行支付系統以相同的私鑰對請求進行解碼,根據請求數據判斷是否允許該賬戶添加至Apple Pay。這樣可以保證其他非法用戶無法竊取到相關信息。
一旦銀行卡授權成功,銀行支付系統生成一個與PAN唯一關聯的經加密后的DAN,并發送至Apple。DAN對于每個設備來說都是唯一,且對應唯一的銀行卡號。對于這個DAN,Apple不會做解碼,只會將其添加至Secure Element。為了保證安全,DAN與iOS隔離,也不會存儲在Apple Server和iCloud上。Apple不會使用或者存儲PAN,更不會將其傳輸給商家。
?
在Walle添加銀行卡的流程圖如下圖所示。
圖 6 添加銀行卡的流程圖示意圖
?
6.? Apple Pay支付
觸發Apple Pay有2種狀態,
當iPhone處于上電狀態靠近讀卡器,Apple Pay會被NFC控制器啟動,向用戶呈現預先設定的銀行卡信息。經用戶選擇確認后,再通過身份驗證(Touch ID或Passcode),NFC控制器會啟動安全芯片通道,用戶再次刷讀卡器啟動Payment Applet,向商戶傳遞交易信息、終端信息和動態安全碼。
先主動使用Touch ID或Passcode驗證身份,使iPhone處于“已通過驗證”狀態,然后再刷一次讀卡器完成支付。
圖 7 在實體店使用Apple Pay進行支付
?
每次付款,當你將信用卡或借記卡交到別人手中時,你的卡號和身份信息都暴露無遺,而刷卡時更會觸發信息交換。當你使用Apple Pay進行支付時,會使用DAN以及該筆交易特定的動態安全代碼來處理付款。因此,Apple不知道你的信用卡或借記卡的實際卡號,更無法將其傳輸至商家。與直接進行刷卡交易不同的是,每次支付Apple Pay均要求使用Touch?ID或密碼,在驗證Touch ID或輸入密碼之前,所有的支付要素都不會被發送到收款終端上。因此,只有你本人才能使用它們完成這些支付。
?
7.? 手機丟失怎么辦
別急,最有效的不是去銀行掛失,你可以使用“查找我的iPhone”迅速將它們設為“丟失模式”,便可停止這些設備上的Apple?Pay功能,或者完全抹掉這些設備上的信息。另外,你還可以通過iCloud,停止在設備上使用信用卡和借記卡進行支付,方法很簡單,只需登錄?iCloud.com?并點擊“設置”即可。銀行可以禁用用戶Apple Pay的銀行卡,即使你的手機沒有連接運營商網絡或者Wi-Fi。當然,你也可以主動聯系銀行禁用或者取消關聯Apple Pay。
?
8.? Apple收集什么信息
Apple宣稱(為了中立,就是宣稱)不會收集任何交易敏感的信息,也不會對用戶做行為分析。有些數據,如位置信息、交易時間可能會被記錄下來,但是以匿名的方式,用于改進Apple Pay。
?
9.? Apple Pay的安全性
添加銀行卡輸入的信息,無論使用鍵盤輸入還是iSight攝像頭都會被加密。iSight拍照不會在手機上留下照片記錄。
Touch ID在iPhone 5S上推出,經過2年多的檢驗,其安全性得到了驗證,盡管曾經被攻破過,但付出的代價很大,遠遠超過了破解銀行卡密碼的難度。
使用Tokenization技術解決用戶銀行卡被盜帶來的問題。
支付時,收銀員看不到你的姓名、卡號或安全代碼,鑒權方式是設備+指紋,比傳統的銀行卡+密碼方式安全度高,盜用難度更大。
支付過程中的支付信息被存儲在一塊獨立的安全芯片中,全程加密,且不會被傳輸到任何地方,任何交易方都不能獲得相關的敏感信息。
Apple不會存儲銀行卡號,也不向商家提供銀行卡號。
即使iPhone丟失,其保存在安全芯片中的信息也無法被輕易獲取,而且通過遠程擦除功能可以抹掉iPhone上的支付卡片的所有信息。
Apple只保留了NFC的卡模式功能,而屏蔽了讀寫器和P2P功能。
依賴iOS操作系統及硬件一貫的高安全性和高性能。
?
10.? 幾點認識
Apple Pay不是一種單一的技術;
Apple Pay不是一次鑄成,而是有清晰的規劃路線;
Apple Pay沒有顛覆任何技術、環節或事物,而是整合了一系列支付環節;
Apple Pay不是錢包,而是無卡支付方式;
Apple做支付非常謹慎,未經實踐檢驗的技術絕不使用。
轉載于:https://my.oschina.net/u/2392723/blog/631693
總結
以上是生活随笔為你收集整理的Apple Pay及其背后的安全技术的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cogs 896. 圈奶牛
- 下一篇: wfs方式获取最短路径