什么是密钥管理
编辑密钥管理是指管理加密密钥的密码系统。这包括处理密钥的生成、交换、存储、使用、加密粉碎(销毁)和替换。它包括密码协议设计、密钥服务器、用户程序和其他相关协议。
密钥管理涉及用户级别的密钥,无论是用户之间还是系统之间。这与密钥调度形成对比,密钥调度通常是指在密码操作中对密钥的内部处理。
成功的密钥管理对于密码系统的安全性至关重要。从某种意义上说,这是密码学更具挑战性的一面,它涉及社会工程的各个方面,例如系统策略、用户培训、组织和部门交互以及所有这些元素之间的协调,与可以自动化的纯数学实践形成对比。
管理步骤
编辑一旦密钥被清点,密钥管理通常包括三个步骤:交换、存储和使用。
密钥交换
在进行任何安全通信之前,用户必须设置加密的详细信息。在某些情况下,这可能需要交换相同的密钥(在对称密钥系统的情况下)。在其他情况下,它可能需要拥有另一方的公钥。虽然公钥可以公开交换(它们对应的私钥是保密的),但对称密钥必须通过安全通信通道进行交换。以前,交换这样的钥匙非常麻烦,而且通过访问外交信袋等安全渠道xxx方便了。对称密钥的明文交换将使任何拦截器都能立即获知密钥和任何加密数据。
1970年代公钥密码学的进步使密钥交换变得不那么麻烦。自1975年发布Diffie-Hellman密钥交换协议以来,通过不安全的通信通道交换密钥已成为可能,这xxx降低了分发过程中密钥泄露的风险。使用类似于书籍代码的东西,可以将关键指标作为明文附加到加密消息中。RichardSorge的代码文员使用的加密技术就是这种类型,指的是统计手册中的一页,尽管它实际上是一个代码。在德国陆军谜对称加密密钥在使用早期是一种混合类型;密钥是秘密分发的密钥时间表和用户为每条消息选择的会话密钥组件的组合。
在更现代的系统中,例如OpenPGP兼容系统,对称密钥算法的会话密钥由非对称密钥算法加密分发。这种方法甚至避免了使用像Diffie-Hellman密钥交换这样的密钥交换协议的必要性。
另一种密钥交换方法涉及将一个密钥封装在另一个中。通常,主密钥是使用某种安全方法生成和交换的。这种方法通常很麻烦或很昂贵(例如,将主密钥分解成多个部分,然后通过受信任的快递员发送每个部分)并且不适合大规模使用。一旦安全地交换了主密钥,就可以使用它轻松地安全地交换后续的密钥。这种技术通常称为keywrap。一种常见的技术使用分组密码和加密散列函数。
一种相关的方法是交换主密钥(有时称为根密钥)并根据需要从该密钥和一些其他数据(通常称为多样化数据)中派生出辅助密钥。这种方法最常见的用途可能是基于智能卡的密码系统,例如银行卡中的密码系统。银行或信用网络在安全生产设施的卡生产期间将他们的密钥嵌入到卡的安全密钥存储中。然后在销售点卡和读卡器都能够根据共享密钥和卡特定数据(例如卡序列号)导出一组通用会话密钥。当密钥必须相互关联时,也可以使用此方法(即,部门密钥与部门密钥相关联,而个人密钥与部门密钥相关联)。但是,以这种方式将密钥相互绑定会增加安全漏洞可能造成的损害,因为攻击者将了解不止一个密钥的信息。对于攻击者而言,对于涉及的每个密钥,这减少了熵。
密钥存储
无论分布如何,密钥都必须安全存储以维护通信安全。安全性是一个大问题,因此有各种技术可以用来做到这一点。最常见的可能是加密应用程序为用户管理密钥,并依赖访问密码来控制密钥的使用。同样,在智能手机无钥匙访问平台的情况下,它们将所有可识别的门信息从手机和服务器上保留下来,并对所有数据进行加密,就像低技术密钥一样,用户只将代码提供给他们信任的人。
在监管方面,很少有人深入解决密钥存储问题。“有些包含最低限度的指导,例如'不要将密钥与加密数据一起存储'或建议'密钥应安全保存。'”值得注意的例外是PCIDSS3.2.1、NIST800-53和NIST800-57。
为了获得最佳安全性,密钥可以存储在硬件安全模块(HSM)中或使用诸如可信执行环境(TEE,例如IntelSGX)或多方计算(MPC)等技术进行保护。其他替代方案包括利用可信平台模块(TPM)、虚拟HSM,又名“穷人的硬件安全模块”(pmHSM)、或具有支持系统的非易失性现场可编程门阵列(FPGA)片上配置。为了在不损害其实际值的情况下验证存储的密钥的完整性,KCV可以使用算法。
按键使用
主要问题是密钥的使用时间长度,以及更换频率。因为它增加了任何攻击者所需的努力,所以应该经常更改密钥。这也限制了信息的丢失,因为在找到密钥时变得可读的存储加密消息的数量将随着密钥更改频率的增加而减少。从历史上看,对称密钥已在密钥交换非常困难或只能间歇性地进行的情况下使用了很长时间。理想情况下,对称密钥应该随着每个消息或交互而改变,这样只有当密钥被学习(例如,被盗、密码分析或社会工程)时,该消息才会变得可读。
管理和合规系统
编辑密钥管理系统
密钥管理系统(KMS),也被称为密钥管理系统(CKMS)或企业密钥管理系统(EKMS),是用于产生一个综合的方法,分配和管理加密密钥的装置和应用程序。它们可能涵盖安全的所有方面——从密钥的安全生成到密钥的安全交换,到客户端上的安全密钥处理和存储。因此,KMS包括用于密钥生成、分发和替换的后端功能以及用于在设备上注入密钥、存储和管理密钥的客户端功能。
基于标准的密钥管理
许多特定的应用程序已经使用自有协议开发了自己的密钥管理系统。然而,随着系统变得更加互连,需要在这些不同系统之间共享密钥。为了促进这一点,密钥管理标准已经发展到定义用于管理和交换加密密钥和相关信息的协议。
密钥管理互操作性协议(KMIP)
KMIP是一种可扩展的密钥管理协议,由OASIS标准机构内的许多组织开发。xxx个版本于2010年发布,并由一个活跃的技术委员会进一步开发。
该协议允许创建密钥并在需要使用它们的不同软件系统之间分配它们。它涵盖了各种格式的对称和非对称密钥的完整密钥生命周期、密钥的包装、供应方案和加密操作以及与密钥关联的元数据。
该协议得到了一系列广泛的测试用例的支持,并且每年都会在兼容系统之间进行互操作性测试。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/126816/