Apple Pay 是一項可以讓用戶安全便捷地為現(xiàn)實世界的物品或服務提供支付信息的移動支付技術(shù)。
應用中數(shù)字物品或者服務的支付請參考 《In-App 支付編程指南》
http://wiki.jikexueyuan.com/project/apple-pay/images/payment_intro_2x.png" alt="Apple Pay 的工作架構(gòu)" />
使用 Apple Pay 的應用需要在 Xcode 中啟用 Apple Pay 功能。首先,你需要注冊一個商家 ID 并生成一個加密密鑰。這個密鑰用于加密發(fā)送至服務器的支付信息。
你的應用創(chuàng)建一個支付請求并初始化支付環(huán)境。這個支付請求包括了所支付的商品或者服務的小計、額外的稅、運費或折扣的信息。將這個請求發(fā)送給給支付認證視圖控制器 (Payment authorization view controller)。該視圖控制器將該支付請求展示給用戶并提示用戶輸入所需的必要信息,例如配送地址或者賬單寄送地址等。當用戶與視圖控制器交互時,你的委托 (Delegate) 會被調(diào)用以更新該支付請求。
當用戶授權(quán)支付后,Apple Pay 會加密支付信息以防止非授權(quán)第三方訪問該信息。在設(shè)備上,Apple Pay 將支付請求會送至安全模塊 (Secure element)處理。安全模塊是位于用戶設(shè)備上的一個專用芯片。它使用 你的商家信息、支付數(shù)據(jù)以及所使用的銀行卡進行計算,生成一個加密支付令牌。隨后,安全模塊會將該令牌發(fā)送至 Apple 的服務器。此服務器會使用你的商家 ID 對應的 證書重新加密支付令牌。最后,服務器將它發(fā)送至應用處理。
支付令牌不會被存儲于 Apple 的服務器上,服務器只是簡單地使用你的證書重新加密你的支付令牌。這樣一個支付過程使得無需將商家 ID 對應的證書隨著應用一起發(fā)布,同時可以保證應用程序可以安全地加密用戶的支付信息。
關(guān)于 Apple Pay 的安全性的更多內(nèi)容請參考 《iOS 安全性指南》
絕大多數(shù)情況下,你的應用程序會將加密后的支付令牌發(fā)送至第三方的支付平臺以完成支付過程。然而,如果你的團隊有自己的支付平臺,你可以在自己的服務器上解密然后處理自己的支付業(yè)務。
關(guān)于支持 Apple Pay 的支付平臺的更多內(nèi)容請參考 developer.apple.com/apple-pay/.。