JMW*_*JMW 24 security private-key certificate-authority
我即将实施我自己的证书颁发机构 (CA),仅供内部使用。
现在有一个问题,CA 私有永远不应该被利用。所以现在私钥是加密的。
还可以做些什么来增强私钥的安全性?
pol*_*ial 25
我曾在一家公司工作,在该公司中,CA 密钥的安全性对于业务的持续成功至关重要。为此,使用自定义协议对密钥进行加密,该协议需要至少 2 人在场,并将物理令牌插入终端以对其进行解密(这些令牌中至少有 5 个,任意 2 个组合都可以使用)。终端通过 CA 密钥与实际机器物理分离。用户解密它的界面是一个 VT220 终端,允许他们输入解密令牌,然后选择他们想要用密钥“签名”的内容(永远不会让他们访问解密的密钥)。这个系统意味着至少需要 4 个人一起工作来破坏密钥,两个代币持有者,有权访问数据中心的人,
如果您对这种设置的更多细节感兴趣,Bruce Schneier 有一个很棒的网站,涵盖了计算机安全设计和实施:
他还出版了一本非常好的书《应用密码学》,我发现这本书帮助我理解了此类系统的基础知识以及如何构建更安全的基础设施(不戴口袋保护器的人也可以阅读):
http://www.schneier.com/book-applied.html
and*_*dol 16
一大收获是将专用 CA 密钥保存在与网络完全断开的专用计算机上。然后,您将在这台机器上签署并可能生成新证书,然后使用物理介质将新证书从 CA 机器上传输出去。
这样的设置当然还包括对机器物理可用性的考虑,以及对允许媒体的限制。一个行之有效的 USB 记忆棒可能不是最好的选择......
(顺便说一下,这是在安全性和便利性之间权衡的一个非常明显的例子。)
Mad*_*ter 15
我对其他两个答案投了赞成票,并对此发表了评论,因为我认为它们都很棒。 如果您决定同时使用这两种方法,而且这可能是合适的,我强烈建议在最初生成密钥时要小心,因为没有使用破坏密钥的最佳时间(许多标准的、可重复的预防措施可以应用)但在生成时,这是一次性的更容易颠覆。
这本出色的密钥生成仪式指南概述了一些有助于确保密钥生成安全的标准协议,尽管它们主要归结为 (a) 让多名知识渊博的审计员见证一切,他们 (b) 同时记录(c) 根据执行者以外的其他人编写的预定协议完成的一切。
小智 7
根据您的严重程度,您应该考虑使用 FIPS 140-2 ( http://en.wikipedia.org/wiki/FIPS_140#Security_levels ) 硬件来存储 CA 密钥和这些密钥的备份。您应该有一个根 CA 和一个中间 CA,这样您就可以使根 CA 脱机并在物理上受到保护。根只需要更新或签署新的中间 CA,而中间 CA 保持在线进行日常操作。正如其他人所建议的那样,使用n of m控制的安全密钥生成和密钥管理很重要。
VeriSign(现为赛门铁克)CPS 是商业 CA 如何生成和保护其密钥的良好参考。查看第 5 章和第 6 章,特别是:http : //www.verisign.com/repository/cps/。 (我在 VeriSign 工作了几年)
此外,NIST 在密钥管理 ( http://csrc.nist.gov/publications/drafts/800-57/Draft_SP800-57-Part1-Rev3_May2011.pdf ) 和生成方面有一些很好的出版物,您的公司也应该有一个 CPS指定用于管理 CA 的策略和实践。IETF 提供了一个很好的模板:http : //www.ietf.org/rfc/rfc2527.txt
归档时间: |
|
查看次数: |
7946 次 |
最近记录: |