Hel*_*nar 2 python encryption django credit-card
对于我的ecommece网站,我想将部分信用卡号码存储为字符串,为此,我需要加密信息以存储在数据库中,并在用户想要重新使用先前购买的已输入信用卡信息时解密,而无需全部输入再次.
我正在使用Django,因此我需要通过Python解决这个问题.解决这个问题的聪明算法是什么?
Pau*_*ulG 15
在进一步研究之前,您应该先了解一下PCI-DSS,它确切地规定了您需要具备哪些流程才能考虑存储加密的卡号.简而言之,您应该认真考虑外包到第三方支付网关.
如果您已经了解了您希望继续进行的后果,那么请再次遵循PCI准则.对于卡号的对称加密,您可能希望使用AES,并制定非常严格的密钥管理策略.
但是,如果您只想存储部分卡号,则PCI状态可以存储(绝对最大值)前六位和后四位数.前6位数字是识别卡片类型所需的全部数字.您可能认为必要的最后四位数字有助于防止客户的卡号接近相同的问题.
恕我直言存储部分卡号(纯文本)是您想要做的,然后将加密,授权和结算的处理外包给第三方网关.支付网关将为您传递给他们的每张卡提供一个唯一的令牌ID,以便您可以引用一张唯一的卡来执行重新授权或退款等.