公钥基础设施PKI(Public Key Infrastructure),是利用公开密钥机制建立起来的基础设施,在信息互联互通时代,可以说它是创建、颁发、管理、注销公钥证书所涉及的所有软件、硬件集合体。
对拥有庞大用户的系统来说,PKI是使用数字签名和各类加密技术的基础,新一代应用程序在很大程度上依赖于PKI技术,以此实现身份验证和满足合规要求,此外,它还能基于设备、服务、用户等因素实现对系统、资源的访问控制和数据保护需求。
证书颁发机构 (CA)
通常来说,CA是证书的签发机构,也是PKI应用中权威的、可信任的、公正的第三方机构,具备权威性特征,它同时还是PKI系统的核心、PKI的信任基础,它管理公钥的整个生命周期。
由于CA是PKI系统的核心,CA的运作要求是很高的。如果CA出现故障停止对外服务,整个PKI系统就会瘫痪。因此,CA自身的安全性显得无比重要。
作为CA其主要作用是发放和管理数字证书,涉及到数字证书的整个生命周期,包括发放证书、规定证书的有效期和通过发布证书撤销列表确保必要的情况下可以废除证书等。
关于数字证书
CA颁发的数字证书可以说是一种强有力的身份凭证,用于验证被颁发证书的企业身份信息。它包含了企业的相关信息,比如企业名称、联系信息、公钥、域名、证书颁发机构、颁发证书的到期日期等。此外,颁发证书的CA机构名称及其数字签名也包含在数字证书中。
SSL/TLS证书工作原理
SSL(安全套接字层)及TLS(传输层安全)是用于在联网计算机之间建立经过身份验证和加密的链接的协议。尽管 SSL 协议在 1999 年随着TLS 1.0 的发布而被弃用,但仍将这些相关技术称为“SSL”或“SSL/TLS”。
为了提高对数据的保护,SSL会对通过Web传输的数据进行加密。这意味着,任何试图截取此数据的人都只会看到几乎无法解密的乱码字符。SSL在两个通信设备沟通之前先进行握手,握手的目的是为了确保两个设备的真实身份。SSL同时也会对数据进行数字签名,以保证数据完整性,同时也能确保数据在被接收之前没有遭到篡改。经过多次迭代之后,SSL的安全性也在逐代增强。
图片来源:百度
证书颁发机构如何颁发数字证书?
作为PKI的重要组成部分,证书颁发机构(CA)会颁发所需的包含公钥和所有者身份的数字证书。
CA在签发数字证书之前使用合格信息源来检查申请人提供的数据。CA机构还与第三方合作机构具有紧密的合作关系,如信用报告机构。对申请人的业务以及身份进行认证。在颁发证书过程中,其中匹配的私钥不是公开的,而是由生成密钥对的最终用户保密。
PKI实施过程面临的潜在安全隐患
实施PKI对企业安全来说固然重要,但更重要的是确保PKI的实施是否正确。就调查来看,大部分的企业在实施PKI时存在一些问题,从而给企业埋下安全隐患,这类问题主要集中在以下方面的因素:
证书问题
部署问题
安全问题
证书问题
实施PKI系统初始阶段最常见的问题就是弱密钥,同时在证书日期选择上,用户或企业倾向于选择较长的证书日期,对大部分人来说,更换证书是件很麻烦的事,但这也导致攻击面随着时间的推移而扩大。较长的证书日期也可能意味着存在过时的加密算法。例如,RSA和ECC加密技术在当前阶段是有效的,但在未来几年内,它们将被先进的计算技术(如量子计算)淘汰。
部署问题
在部署证书时,跨设备重复使用证书存在很大风险。虽然这可能看起来是一个更便宜、更省时的过程,但如果单个证书被破坏,这种潜在的风险也可能蔓延到多个设备。
安全问题
私钥保护不当也是常见的问题之一。无论设备是带有可信平台模块 (TPM) 的笔记本电脑还是在安全区域中的IoT设备,确保私钥安全非常重要。除此以外,未能响应漏洞和及时更新补丁也是很容易被忽略的问题。
构建可扩展PKI
管理PKI是企业安全团队的重要任务,不合适的工具和流程可能会导致企业遭受入侵。基于连接设备的增加,通过手动管理已经难以满足企业安全需求,因此企业必须考虑实施各种措施来解决问题,而构建可扩展PKI能很大程度上解决问题。关于构建可扩展PKI的有五个的要素可参考如下:
辨别必须避免的网络安全风险
评估使用PKI可以规避哪些网络安全风险
研究正确的公共和私有PKI组合
为私有PKI选择托管或内部的CA
确定如何将证书自动交付到设备
构建可扩展PKI的首要考虑因素就是安全,用户需要评估潜在的风险点,充分考虑安全风险可以一定程度上避免大量问题的发生,比如未经授权访问网络服务、未经授权访问存储在数据库中的数据等。
在确定网络安全风险并给出应对风险的措施之后,用户或企业就可以准备规划PKI系统的体系结构。目前来说较为成熟的选择是构建包括私有和公共PKI的混合架构,其中公共PKI用来保护面向公众的网站和其他服务,而私有PKI则用以保护内部网站。
对于 IT 管理员来说,证书管理可能被视为一项简单的日常任务,但确保证书单独有效十分耗时。即使是使用单个 Web 服务器和域实例的最小手动 SSL 证书颁发也涉及多个步骤。手动证书管理不仅是一项代价高昂、耗时且技术要求高的挑战,更重要的是,手动管理可能会使企业面临关键业务系统的突然中断或故障以及来自网络犯罪分子的破坏和攻击。而自动化证书颁发、配置和部署能降低风险、满足法规要求、控制运营成本,同时也能减少人为因素引起的安全问题,从而构建企业更高的安全防护水准。
openpki