結帳金鑰和收銀金鑰
Cardflo 利用結帳金鑰和收銀金鑰為商戶提供安全靈活的整合選項。 結帳金鑰管理支付會話的啟動和客戶數據的收集,而收銀金鑰則促進伺服器端交易處理。
這種分離確保了所有支付流程的 PCI 合規性和強大安全性。
- 類別
- 開發者
- 功能數
- 10
- 適用於
- 所有方案
概覽
將憑證分為結帳金鑰和收銀金鑰代表了現代支付協調中的基礎安全架構。 結帳金鑰是面向公眾的識別碼,用於客戶端環境(例如網頁瀏覽器或移動應用程式)中,以初始化支付組件並收集敏感的持卡人數據。
這些金鑰允許商戶呈現結帳介面,而無需暴露敏感的後端權限。 相反,收銀金鑰是受限的伺服器端憑證,專為商戶伺服器和支付網關之間的身份驗證通信而設計。
透過將這些角色分開,系統確保客戶端代碼的洩露不會讓攻擊者執行管理操作,例如發起退款或捕獲已授權的支付。 這種架構方法透過最大限度地減少直接與原始支付憑證交互的系統範圍,同時允許對交易生命週期進行可編程的精細控制,從而有助於維護 PCI DSS 合規性。
運作方式
客戶端會話啟動
整合始於在前端應用程式中使用結帳金鑰請求安全會話。此金鑰識別商戶身份 (MID) 並授權呈現安全支付元素,確保客戶卡詳細資料在到達商戶基礎設施之前就被代幣化。
安全數據代幣化
當客戶輸入其支付詳細資料時,結帳金鑰促進與保管庫的直接連接。PAN 和 CVV 等敏感字段會轉換為臨時代幣。此過程確保商戶環境保持在 PCI DSS 要求的主要範圍之外。
伺服器到伺服器授權
一旦生成代幣,商戶伺服器使用其收銀金鑰向收單機構請求正式授權。此私鑰確認請求合法,並允許網關將臨時代幣映射回儲存的支付數據以進行處理。
交易生命週期管理
授權後的動作,包括捕獲、結算和退款,僅透過收銀金鑰處理。由於這些動作涉及資金轉移,因此它們需要伺服器端收銀金鑰為商戶管理員提供更高層次的身份驗證和受限存取。
為何重要
風險和責任緩解
劃分憑證可減少潛在安全漏洞的影響範圍。如果結帳金鑰從網站源代碼中被攔截,攻擊者無法使用它提取資金或存取歷史交易記錄。收銀金鑰仍受保護在安全的後端,確保只有經過授權的伺服器環境才能執行財務轉移,這是抵禦常見注入攻擊的關鍵防禦。
簡化 PCI DSS 合規性
透過使用結帳金鑰透過託管字段或組件處理持卡人數據,商戶通常有資格獲得簡化的合規性負擔,例如 SAQ A 或 SAQ A-EP。收銀金鑰確保敏感數據以代幣化格式在後端處理,無需商戶在其自己的伺服器上儲存、處理或傳輸原始信用卡信息。
應用案例
電子商務網頁應用程式
商戶使用結帳金鑰將安全支付表單直接嵌入其網站,而收銀金鑰則儲存在其後端環境中,以便在訂單確認後最終確定資金的捕獲。
原生移動應用程式
移動開發人員在 iOS 或 Android 應用程式中使用結帳金鑰安全地收集支付簽名,依賴伺服器端收銀金鑰來管理多幣種結算和定期計費的複雜邏輯。
訂閱和定期計費
在初始結帳金鑰收集卡詳細資料後,收銀金鑰用於建立商戶發起的交易 (MIT) 框架,允許自動續訂而無需客戶進一步干預。
數據概覽
行業標準表明,透過客戶端金鑰將數據捕獲卸載到託管組件可以將適用的 PCI 要求數量減少 90% 以上。
標準化的基於金鑰的架構通常允許開發人員在大約兩個工作日的開發時間內實施基本的安全結帳流程。
專業支付網關要求 100% 的伺服器端請求透過私鑰進行身份驗證,以確保交易生命週期的完整性。
Talk to our team about a live rollout on your acquiring stack.
為您帶來 結帳金鑰和收銀金鑰
- 將客戶端活動與敏感的管理後端功能隔離,以提高安全性
- 透過確保原始卡數據繞過商戶伺服器,最大限度地減少 PCI DSS 暴露
- 使用受限的、面向公眾的結帳金鑰憑證授權前端支付組件
- 使用經過身份驗證的收銀金鑰請求執行安全的伺服器端捕獲和退款
- 對特定的 API 端點和交易操作保持精細的存取控制
- 支援廣泛的前端框架,而不會洩露後端憑證
- 降低透過受損的客戶端代碼進行欺詐性資金轉移的可能性
- 在初始輸入時促進持卡人詳細資料的安全代幣化
- 使用安全的後端身份驗證為訂閱模式啟用商戶發起的交易
- 為客戶端會話和伺服器端管理操作提供清晰的審計追蹤
A short scoping call, then a written plan for your MIDs.
關於 結帳金鑰和收銀金鑰
結帳金鑰和 API 密鑰之間的主要區別是什麼?
結帳金鑰設計用於代碼可見的公共環境,例如瀏覽器。 它的權限極為有限,通常只能創建支付代幣。
API 密鑰或收銀金鑰用於伺服器端操作,具有轉移資金、執行退款和存取敏感商戶數據的權力。 將這些金鑰分開可確保即使公共金鑰被複製,商戶帳戶的核心財務功能仍受伺服器端身份驗證的保護。
結帳金鑰可以用於執行退款或取消交易嗎?
不能,結帳金鑰受到嚴格限制,以防止任何涉及商戶帳戶資金轉移的操作。 退款、取消和捕獲需要使用收銀金鑰,該金鑰必須保密,並且只能在安全的伺服器環境中使用。
這種保護是故意的,可防止惡意行為者操縱客戶端代碼以觸發未經授權的財務逆轉或從支付網關導出數據。
為什麼這種雙金鑰系統對於 PCI DSS 合規性是必要的?
PCI DSS 合規性側重於持卡人數據的處理方式。 透過使用結帳金鑰直接從客戶瀏覽器到支付處理器促進卡數據的代幣化,商戶從不接觸原始數據。
然後,收銀金鑰允許商戶使用該代幣。 這種分離使商戶能夠使用簡化的合規性問卷,因為他們的系統從不擁有敏感信息,例如明文 PAN。
收銀金鑰應如何儲存在商戶的基礎設施中?
收銀金鑰必須被視為高度敏感的憑證。 它們絕不應硬編碼到源文件或儲存在 Git 等版本控制系統中。
相反,它們應使用環境變數或專用的密鑰管理服務進行管理。 對這些金鑰的存取應僅限於需要它們與支付處理器通信以完成交易和報告的特定伺服器實例。
如果結帳金鑰洩露或受損會發生什麼?
如果結帳金鑰受損,與密鑰洩露相比,影響通常較低。 攻擊者可能會使用該金鑰提交垃圾數據或嘗試透過商戶的 MID 創建代幣,但他們無法存取現有的客戶數據或資金。
但是,輪換洩露的結帳金鑰以防止任何未經授權使用商戶前端資產並維護乾淨的交易日誌仍然是標準做法。
收銀金鑰是否支援基於用戶的不同權限級別?
雖然收銀金鑰本身代表高級伺服器憑證,但行業標準網關通常允許創建具有不同範圍的多個金鑰。 例如,一個收銀金鑰可能僅限於報告的只讀存取,而另一個可能具有處理捕獲和退款的權限。
這遵循最小權限原則,確保商戶後端系統的每個部分僅具有其功能所需的權限。
