Adyen 是一个全球性的支付解决方案提供商,它提供了一个加密库来安全地处理信用卡信息。在这篇文章中,我将介绍如何使用 npm 包 adyen-cse-js 来处理支付信息。
什么是 adyen-cse-js
AdyenCSE (Client-Side Encryption) 是一种流行的机制,用于在不泄露敏感数据的同时,将信用卡信息传输到后端的安全处理过程中。 Adyen-cse-js 是一个适用于浏览器和 NodeJS 的 JavaScript 库,利用 Web Crypto API 实现了先进的 CSE 加密方案。该库提供了加密和解密与 AdyenCSE 兼容的数据的函数。
安装和配置
要开始使用 adyen-cse-js,您需要先安装它:
npm install adyen-cse-js
接下来,您需要配置您的帐户信息。在 Adyen 的 Accounts 页面获取以下数据:
- Client Encryption Key
- Public Key Token
- Merchant Account
将这些值放入 JavaScript 对象中:
const config = { environment: "test", // "test" or "live" originKey: "your-origin-key-here", clientKey: "your-client-encryption-key-here", publicKeyToken: "your-public-key-token-here", merchantAccount: "your-merchant-account-here" };
注意,originKey 是指向您的域的信任标识。这是由 adyen 生成的,您需要将其指定为 config 对象的环境属性(test/live)之一。
加密和解密数据
一旦您有了以上的配置和安装,您就可以用以下代码示例执行 CSE 的加密和解密过程。以下是在浏览器中使用库的示例。
首先,我们将创建一个 CardEncryptor
对象:
import AdyenEncrypt from 'adyen-cse-js/browser'; const cardEncryptor = await AdyenEncrypt.create(config);
接下来,您可以使用该对象将信用卡信息加密:
const encryptedData = await cardEncryptor.encrypt({ number: '5555444433331111', cvc: '737', expiryMonth: '12', expiryYear: '2023', holderName: 'John Doe' });
现在已经加密了信用卡数据,接下来我们将学习如何使用库来解密这些信息。
请注意,所有解密操作都应该在可信的服务器上完成,因为在浏览器中进行解密操作会通知您无效的警告。以下是用 NodeJS 解密数据的示例代码:
-- -------------------- ---- ------- ------ ------------ ---- ---------------------- ----- ------------- - ----- ---------------------------- ----- ------------- - --------------------- ----------- ---- -------- ---- ------------- ----- ------------- - ----- ------------------------------------- ---------------------------
结论
使用 npm 包 adyen-cse-js,您可以轻松地在浏览器和 NodeJS 端中执行 AdyenCSE 加密和解密操作。在您的付款流程中,这是一种安全机制,可大大减少您客户的信用卡信息泄露的风险。
以上就是 adyen-cse-js 的使用教程。希望这篇文章可以帮助您使用这个 npm 包来保护您的支付数据。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671a730d092702382259a