安全付款確認 (SPC) 是提議的網路標準,可讓客戶透過平台驗證器,透過信用卡發卡機構、銀行或其他付款服務供應商進行驗證:
- 解鎖功能,包括 macOS 裝置的 Touch ID
- Windows 裝置上的 Windows Hello
透過 SPC,商家可以讓客戶快速流暢地驗證購買交易,發卡銀行則可防止客戶遭到詐欺。
SPC 分為兩個階段:註冊和驗證。
- 註冊:付款人將自己的裝置連結至依賴方 (RP)。信賴方可能是信用卡發卡機構、銀行或其他付款服務供應商。
- 驗證:付款人在確認付款前,直接透過商家平台使用已註冊的裝置,向 RP 確認身分。
用於防範詐欺行為的驗證服務
驗證身分是防範付款詐欺行為的重要關鍵。不過,這項驗證程序通常仰賴弱勢機制,例如信用卡號碼和持卡人姓名的組合,或信用卡背面的其他信用卡驗證碼。如果信用卡資訊因資料安全性漏洞 (例如帳戶盜用或網路釣魚攻擊) 而外洩,這些機制很容易遭到冒用或冒用身分。
推出其他詐欺防範機制,例如 EMV® 3-D Secure,付款人可能會要求付款人通過發卡機構或銀行驗證。如要進行驗證,使用者可透過使用者名稱和密碼登入,或透過簡訊傳送至付款人手機的動態密碼 (OTP)。這有助於防止客戶遭受詐欺,但可能會阻礙某些有效客戶完成付款。SPC 的目標是減少驗證的阻礙,進而降低購物車放棄率。
與此同時,我們還推出了名為 WebAuthn 的新驗證標準。
什麼是 WebAuthn?
網路驗證 (簡稱 WebAuthn) 是一種網路標準,可讓仰賴方 (RP) 伺服器在瀏覽器中註冊及驗證使用者,方法是使用公開金鑰密碼編譯,而非密碼。
RP 取決於實體驗證器,例如安全金鑰。RP 會要求安全金鑰產生私密 - 公開金鑰組,然後將公開金鑰儲存在伺服器上 (註冊)。這些產生的金鑰是裝置獨有的,可避免攻擊者冒用使用者身分。由於金鑰組繫結至來源,因此這項標準可防範網路釣魚。
FIDO 聯盟會將驗證器行為標準化。部分驗證器支援使用生物特徵辨識因素 (例如指紋或臉部辨識) 或知識因素 (例如 PIN 碼) 進行本機使用者驗證。其中許多都已整合至運算裝置 (例如筆記型電腦或智慧型手機),稱為平台驗證器。所有主要瀏覽器 (電腦和行動裝置) 都支援 WebAuthn,而驗證器則適用於數十億的裝置。使用者可以在平台上在本機驗證身分,以便自行註冊並進行驗證。
SPC 可與使用者驗證平台 Authenticator (UVPA) 搭配運作。
安全付款確認的運作方式
安全付款確認 (SPC) 是以 WebAuthn 為基礎建構而成,專為付款用途設計。由於 WebAuthn 憑證已註冊特定網域,因此這些憑證無法用於在可能冒用商家身分的未註冊網站上進行驗證。這項功能可讓 WebAuthn 有效防範網路釣魚攻擊。
SPC 在 WebAuthn 頂端新增付款資訊層,以便發卡機構或銀行提供一致的付款體驗。付款人向依賴方註冊驗證器後,就能在不同的商家網站上進行驗證。依賴方也可以選擇使用付款憑證做為一般 WebAuthn 憑證。
為執行 Chrome 來源試用,Stripe 在實際工作環境中與 SPC 執行了實驗。這項實驗結果顯示,Stripe 的轉換率提高了 8%,結帳率也加快了三倍。請參閱 W3C Web Payments Working Group 的 SPC 報告瞭解相關結果。
使用者如何體驗 SPC?
SPC 前端包含兩個階段:註冊和驗證。
客戶必須先透過使用者驗證平台驗證器 (UVPA) 來註冊裝置。裝置註冊完成後,每次在商家網站上執行 SPC 時,即可用來驗證使用者並確認付款。
註冊
使用者可以透過兩種方式註冊 SPC:
- 請直接在 RP 網站註冊。
- 在商家網站間接註冊。
在 RP 網站上註冊
在 RP 網站上,SPC 的註冊與 WebAuthn 註冊方式並無不同。我們建議 RP 要求客戶在登入流程中註冊 UVPA。
典型的情境可能如下所示:
- 客戶可透過使用者名稱、密碼和其他驗證步驟 (通常是動態密碼或動態密碼) 登入銀行網站。
- 驗證成功後,顯示要求客戶註冊裝置 (UVPA) 的權限要求。
- 授予權限後,瀏覽器會顯示 WebAuthn 註冊對話方塊。
- 客戶同意執行生物特徵辨識驗證來註冊裝置。
- 客戶現在可以使用裝置安全地登入及付款。
透過reauthentication,使用者已登入,但系統會要求使用者再次驗證,以確保仍然存在相同的使用者。這項設計通常在攸關安全性的作業中,例如要求變更密碼或付款時。使用 WebAuthn UVPA 時,重新驗證的速度比使用密碼更快且更強大。
請參閱建構第一個 WebAuthn 應用程式,瞭解如何建構用於重新驗證的 WebAuthn 註冊和驗證流程。
在商家網站上註冊付款
如果客戶未在發卡機構的網站上註冊裝置,可以直接在商家網站上註冊。介面外觀相同,但使用者的註冊是由 RP 代碼啟動。
若消費者不常造訪 RP 網站,但仍想向 RP 提供驗證選項,就很適合採用這種上限。
驗證 (付款確認)
付款人在付款交易期間提供付款憑證時,必須提供驗證程序。
- 付款人提供付款憑證 (例如信用卡資訊)。
- 商家會檢查瀏覽器是否支援安全付款確認功能。
- 如果瀏覽器支援 SPC,請透過 SPC 呼叫 Payment Request API 做為付款方式。否則,請改用現有的驗證方法。
- 付款人確認交易詳細資料,然後完成驗證 (例如輕觸生物特徵辨識平台驗證器)。
支援的平台
macOS 和 Windows 上的 Google Chrome 目前支援安全付款確認功能。自 2022 年 5 月起,系統將不再支援其他平台,包括 Android、iOS 和 ChromeOS。