有没有人获得实践经验或参考实施符合PCI DSS安全标准的密钥管理方案的方案?
鉴于符合PCI DSS的公司数量,但显然有很多实现,但试图找到它们的细节是很困难的.当它归结为存储私有数据时,讨论通常会停止使用哪种加密算法.在此之后,通常会有关于正确存储私钥的声明,但没有讨论实际的方法,或者定期更改密钥或为应用程序提供密钥等.
具体而言,我对PCI DSS标准第3.5和3.6节的要求感兴趣.
3.5.2以尽可能少的位置和形式安全地存储加密密钥.
3.6.a验证用于加密持卡人数据的密钥是否存在密钥管理程序.注意:密钥管理的众多行业标准可从包括NIST在内的各种资源获得,可在http://csrc.nist.gov上找到.
3.6.4确认密钥管理程序的实施至少每年要求定期更改密钥.
我已经看过NIST Cryptographic出版物,正如PCI DSS要求文件所暗示的那样,但除了最近的加密密钥管理研讨会的注释之外,似乎没有太多真正可实现的方案或标准.
至于我想要做的事情不是:
所有这些都是有效的问题,但在这种情况下不是答案.我的要求的细节是一个不同的SO问题.Net设计模式,用于存储和检索敏感的每个用户数据,但这一切都归结为密钥管理,因此这个更精确的问题.
我以前从未处理过PCI合规问题.我一直在阅读他们的文件,它说我需要保护信用卡号码,有效期和持卡人的姓名.无需存储安全代码.
在他们的文档中,它只是说保护.这是说我需要在我的数据库中加密这3列吗?我以为只有数字是需要加密的数据.无论哪种方式,我很好.
如果我需要加密所有三列,我是否共享一个证书并拥有3个对称密钥,或者我只需要1个,并且所有3列都使用该对称密钥?我问的原因是在加密列的BoL文档中,密钥是在加密列之后专门命名的.
感谢您的帮助!