如何正确地做私有密钥管理(How to properly do private key manage

2019-08-19 19:53发布

有没有人有实际经验或实现,将遵守密钥管理方案一个方案的参考PCI DSS安全标准?

明明有围绕给定的公司符合PCI DSS的数量,但试图找到他们的细节是强硬了不少的实现。 当它下来到存储私人数据的讨论通常停在要使用的加密算法。 之后通常有一个说法关于适当地存储私钥,但没有关于实际的方法来做到这一点或类似的东西周期性变化的关键或提供关键应用等讨论

Specificlly我感兴趣的是从第3.5和PCI DSS标准的3.6你的要求。

3.5.2存储加密密钥以尽可能少的地点和形式的安全。

3.6.a验证的密钥管理程序的存在对用于持卡人数据的加密密钥。 注:密钥管理众多的行业标准都可以从各种资源,包括NIST,它可以在这里找到http://csrc.nist.gov 。

3.6.4验证密钥管理程序,实现每年至少需要周期性的关键变化。

我有一个看看NIST密码出版物作为PCI DSS要求,文件建议,但除了近期的笔记加密密钥管理研讨会似乎没有要多少有实际实施的方案或标准的方式。

至于我试图做什么不是:

  1. 存储密码+盐作为一个单向散列算法进行身份验证,
  2. 选择数据加密的强symmteric算法,
  3. 避免保存在首位的私人数据。
  4. 为避免与其他机制的密钥管理的需要:物理安全,数据库安全,龙和向导等。

所有这些都是有效的问题,但在这种情况下是不是答案。 坚果和我的要求螺栓在不同的SO问题, 用于存储和检索每个用户的数据敏感的.Net设计模式 ,但是这一切都归结到密钥管理因此这更加细化的问题。

Answer 1:

我熟悉你正在经历的痛苦。 我们在努力更新对PCI法规遵从旧EFT系统。 密钥管理是肯定(但从我的软件点)中最具挑战性的部分。

我想,我也迷迷糊糊到NIST建议的密钥管理马丁发布,并得到了与缺乏具体的例子令人难以置信的沮丧。

ANSI X9.17 -金融机构密钥管理可能是最贴近您的需求,PCI-DSS标准。 祝你好运,虽然读它,该文件是TLA的,我知道我一定努力阅读的大量收集。 (X9.17是每年更新,目前最新的版本是: 。NIST SP 800-57铂1第4版 )

当挫折转向绝望中我偶然到电子货币穆勒这是一个虚构的故事,具有良好的一些相关的技术参考。 第17章讨论X9.17,并可与理解帮助。

从所有这些参考材料我设计的,我们的审计人员感到高兴的密钥管理系统。 设计文件是相当漫长的,但在总结这个想法是,你有你的数据Encrypying主要由密钥加密密钥的保护,而密钥加密密钥存储在物理上独立的盒子由主密钥本身的保护。

我的实现是有在Windows中运行的关键服务器应用程序。 两个独立的“密钥服务器主密钥”,可以使用前此应用程序所需的条目。 这些密钥将只知道密钥服务器管理员。 这些密钥一起进行XOR运算,生成主密钥,这是同时应用程序运行时只保存在内存保护机制。 然后,应用程序可以自动生成加密的强密钥加密密钥,这是使用主密钥存储在加密形式。

有需要的加密将要求密钥服务器密钥加密密钥的应用程序。 所述KEK被用于由应用进行加密/解密的数据加密密钥,其可牢固地与应用程序数据被存储。

祝好运。 我希望你也觉得这是一个有趣的挑战!



Answer 2:

你见过NIST SP 800-57 ,建议对密钥管理?



文章来源: How to properly do private key management