Oracle电子商务套件 PCI接口 DSS信用卡加密

PCI接口要求3.4规定,使用单向哈希或强加密将主帐号(PAN)存储在任何地方都不可读。 Oracle电子商务套件第12版首先通过将持卡人数据集中到安全支付存储库中,然后再应用强加密,从而满足了这一要求。

Oracle Payments提供了两种加密模式,完全或部分加密,以及立即或计划的加密。选择哪种加密选项应该是与法律顾问,合规性和风险管理讨论的结果。 

部分加密仅指PAN的加密。完全加密是指对主要帐号(PAN)以及持卡人姓名和卡到期日期的加密。持卡人姓名和有效期在文档中也称为补充数据。

立即加密会在将持卡人数据写入数据库时​​对其进行加密。计划加密使持卡人数据保持未加密状态,直到手动运行并发请求或在稍后的时间计划并发请求以加密持卡人数据为止。 整合学 Corporation强烈建议仅使用立即加密。

具体来说,为了满足要求3.4,Oracle Payments使用链式加密密钥方法和三重数据加密算法 (TDEA,三重DEA,TDES或3DES) 对称密钥块密码。 主加密系统密钥用于加密子密钥。 此主密钥存储在Oracle Payment Wallet(cwallet.sso)中。

子密钥是系统生成的156位长,并使用3DES和主密钥作为密钥进行加密。然后,加密的子密钥将存储在表IBY.IBY_SYS_SECURITY_SUBKEYS中。

安全付款存储库收集的持卡人数据存储在表IBY.IBY_CREDITCARD中。启用加密后,IBY.IBY_CREDITCARD中的记录将标记为已加密,并且特定的PCI持卡人数据将移动到表IBY.IBY_SECURITY_SEGMENTS。 

使用156位子密钥和3DES算法对IBY.IBY_SECURITY_SEGMENTS中的持卡人数据进行加密。标准的Oracle软件包DBMS_OBFUSCATION_TOOLKIT执行加密。 156位密钥超出了PCI DSS要求的3DES最小双倍长度密钥。还值得注意的是,Oracle电子商务套件使用的是已折旧的DBMS_OBFUSCATION_TOOLKIT软件包,而不是较新的DBMS_CRTYPO软件包。

记得每年轮换钱包钥匙

PCI接口要求3.6要求定期(至少每年)旋转一次加密密钥。这意味着需要对Oracle Payment Wallet密钥进行轮换。更改钱包密码不会更改密钥。旋转Oracle Payments的钱包密钥的过程要求创建一个完整的新钱包,并通过安全擦除来销毁旧钱包(* .p12和* .sso文件)–不仅仅是从文件系统中删除。 

更多的信息

有关PCI合规性,公司卡和电子商务套件的更多信息,请参阅下面链接中的白皮书。

如有疑问,请通过以下方式与我们联系 [email protected]

-Michael Miller,CISSP-ISSMP

参考文献

 Share this post

订阅RSS

将我们添加到您最喜欢的新闻阅读器中。

在Twitter上关注

获取最新更新。