如何编写符合PCI标准的汇编代码?

6
我有一个WPF应用程序,我们已经将信用卡处理集成到其中。目前,为了满足PCI合规性,我们正在使用WPF Web浏览器中的网页进行信用信息刷卡/输入。显然,这是可以接受的,因为Web浏览器组件符合PCI标准,我们的代码从未涉及信用卡信息。
我非常讨厌这种设计,并希望编写一个独立的、符合PCI标准的WPF控件/程序集,以便我们可以插入代替Web浏览器组件。如果我们的应用程序代码可以使用浏览器而无需自己获得PCI认证,则可以使用我们自己的PCI认证程序集而无需自己获得PCI认证,对吗?所有新的控件/程序集只需收集信用卡信息,并通过WCF服务安全地发送到远程安全服务器。它不会在本地存储信用卡信息或进行任何处理。我们被告知这样做需要大约9个月的审查过程,这就是为什么我们采用浏览器方法的原因。
有人能否给我一个大致的想法来完成这个任务?
  • 它可以用C#/ WPF编写吗?
  • 代码是否必须实现特殊的安全措施(如CAS)?
  • 程序集必须被混淆吗?
  • 编写完成后,还需要做什么?

1
有多个级别的PCI合规性,一旦您接触到信用卡数据,级别就会提高。如果您在应用程序中嵌入CC信息的捕获,那么没有真正的绕过这个问题的方法。Web浏览器控件之所以有效是因为CC信息从未存储在您的应用程序中,而是直接发送给第三方。整个PCI合规性都很麻烦,但总的来说,我很高兴我的数据至少具有安全性的外观。 - Travis
1个回答

3
虽然与PCI-DSS有很大的重叠,但你要寻找的正式名称是PA-DSS(支付应用程序数据安全标准)。
解决问题的最佳策略之一是将卡片输入/处理部分分离出来形成一个完全独立的解决方案。该独立解决方案最终会通过PA-DSS认证,认证通过后,您可以将其嵌入到较大项目中(这不会改变较大项目的PCI合规性)。
分离它的好处显而易见,当您研究PA-DSS时就会明白。其中一个标准是,任何需要重新编译应用程序的更改都需要重新认证应用程序。这不是您想频繁做的事情!
帮助简化流程的另一种策略是考虑“内部”应用程序(未分发给客户端)无需PA-DSS认证(尽管如果明显处理卡数据,则仍属于PCI-DSS)。因此,在您的域内使用Web服务可能会使事情变得更容易。例如,您可以托管一个“付款输入详细信息”网页,然后在您的主应用程序中使用指向您的付款输入页面的标准Web浏览器。这可能允许您绕过PA-DSS认证(尽管仍需要对您现在托管的网页进行PCI认证)。
无论您决定采取什么措施,最好的建议是在您对所需设计有合理了解时尽快与QSA联系。QSA将提供有关可能导致合规问题的区域的建议,最终是由QSA签署您的合规性。

谢谢!难点在于找到查找的位置。 - xr280xr

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接