java – 我只需要存储信用卡的最后4位数
作者:互联网
我正在使用Braintree作为支付网关.
我有一个要求,我只需要存储信用卡的最后4位数,到期日期(根据PCI Complaince).
我已经在javascript中实现了前端代码,并且在向服务器发送数据时,信用卡信息被加密.
无论如何我可以在后端获得最后四位数,到期日期和卡类型,还是可以解密它?
<form name="paymentForm" action="/createtransaction" method="post" id="braintree-payment-form">
<p>
<label style="color:white">Card Number</label>
<input type="text" size="20" ng-model="userDetails.number" autocomplete="off" data-encrypted-name="number" />
</p>
<p>
<label style="color:white">CVV</label>
<input type="text" size="4" ng-model="userDetails.cvv" autocomplete="off" data-encrypted-name="cvv" />
</p>
<p>
<label style="color:white">Expiration (MM/YYYY)</label>
<input type="text" size="2" ng-model="userDetails.month" data-encrypted-name="month" /> / <input type="text" size="4" ng-model="userDetails.year" data-encrypted-name="year" />
</p>
<input type="submit" id="submit" />
解决方法:
(披露,我为Braintree工作)
由于您使用的是客户端加密,因此在创建事务之前,您将无法获取加密信息.但是,一旦您完成了交易,结果对象将包含卡号的前六位/后四位和到期日期.然后,您可以将这些值存储在数据库中.
它看起来像:
Result<Transaction> result = gateway.transaction().sale(
...
);
Transaction transaction = result.getTarget();
CreditCard creditCart = transaction.getCreditCard();
String last4 = creditCard.getLast4();
String expiration = creditCard.getExpirationDate();
标签:braintree,javascript,java,payment-gateway,credit-card 来源: https://codeday.me/bug/20190830/1769427.html