计算机科学

首页 > 计算机科学

密钥管理

2018-09-11 08:57:40     所属分类:数据安全
54%

密钥管理Key management)是一个密码系统英语Cryptosystem中加密密钥的管理部分。它包括密钥的生成、交换、存储、使用、密钥销毁英语Crypto-shredding以及密钥更替的处理,涉及到密码学协议设计、密钥服务器英语Key server (cryptographic)、用户程序,以及其他相关协议。[1]

密钥管理关注用户层面或用户与系统之间的密钥,这与密钥调度英语Key scheduling不同,密钥调度通常指密码内部轮运算中内部密钥的生成和处理这一过程。

成功的密钥管理对密码系统的安全性至关重要。密钥管理在某种意义上比纯数学的密码学更加具有挑战,因为它涉及到系统策略、用户培训、组织和部门的相互作用,以及上述所有元素之间的协调,而这些过程往往和密码学的其他组件不同,因为这些过程无法自动完成。

目录

  • 1 密钥类型
  • 2 库存
  • 3 管理步骤
    • 3.1 密钥交换
    • 3.2 密钥存储
    • 3.3 密钥使用
  • 4 挑战
    • 4.1 合规
      • 4.1.1 物理安全
      • 4.1.2 逻辑安全
      • 4.1.3 人事安全
  • 5 管理和合规体系
    • 5.1 密钥管理系统
      • 5.1.1 类型
        • 5.1.1.1 开源
        • 5.1.1.2 专有
      • 5.1.2 密钥管理系统安全策略
      • 5.1.3 带入自己的加密/密钥
    • 5.2 公开密钥基础建设(PKI)
    • 5.3 组播组密钥管理
  • 6 参见
  • 7 参考资料
  • 8 外部链接

密钥类型

加密系统可能使用多种密钥,部分系统还使用多个密钥,其中可能包括对称密钥与非对称密钥。在对称密钥加密算法中,用于加密与解谜消息的密钥是相同的。这些密钥必须被慎重选择、分发和安全存储。非对称密钥也称公开密钥加密,它的重要特点是有公钥与私钥这两个密钥,通常被用于通信。

库存

任何证书和私钥管理策略的起点都是创建所有凭证的位置和责任方的全面清单。这不是一件微不足道的事情,来自各种来源的凭据被不同个人和团队部署在各种地点——这不可能简单依赖于单个数字证书认证机构的列表,在到期前没有被更新或替换的证书可能导致严重的停机和中断。以及其他考虑: 法规和强制要求,例如PCI-DSS,要求严格的安全性、加密密钥管理以及审核员,审查日益增长的使用中的管理控制和流程。

  • 用于证书的私钥必须安全保存,否则未经授权的人员可能拦截机密通信或非授权地介入关键系统。不能确保适当的职责分离意味着生成加密密钥的管理员可以使用它们来访问敏感、受监管的数据。
  • 如果证书颁发机构受到威胁或者加密算法遭受破解,组织必须准备好在几小时内替换所有的证书和密钥。

管理步骤

在密钥被签发后,密钥管理一般有三个步骤:交换、存储和使用。

密钥交换

进行安全通信之前,各用户间需要确立加密程序的细节,尤其是密钥。在对称密钥加密系统,各用户间需要确立共同使用的单一密钥,此步骤即密钥交换。交换对称密钥必须透过另一安全的通信管道进行;否则,如果以明文形式在网络发送,将使窃听者能够立即得知密钥以及据其加密的数据。以前,交换密称密钥是非常麻烦的,可能需要使外交邮袋等安全渠道。

公开密钥加密的出现大大减轻了交换对称密钥的困难,公钥可以公开(透过不安全、可被窃听的渠道)发送,用以加密明文。不过,公钥加密在在计算上相当复杂,性能欠佳、远远不比对称加密;因此,在一般实际情况下,往往通过公钥加密来随机创建临时的对称秘钥,亦即对话键,然后才通过对称加密来传输大量、主体的数据。

It is possible, using something akin to a book code, to include key indicators as clear text attached to an encrypted message. The encryption technique used by Richard Sorge's code clerk was of this type, referring to a page in a statistical manual, though it was in fact a code. The German Army Enigma symmetric encryption key was a mixed type early in its use; the key was a combination of secretly distributed key schedules and a user chosen session key component for each message.

Another method of key exchange involves encapsulating one key within another. Typically a master key is generated and exchanged using some secure method. This method is usually cumbersome or expensive (breaking a master key into multiple parts and sending each with a trusted courier for example) and not suitable for use on a larger scale. Once the master key has been securely exchanged, it can then be used to securely exchange subsequent keys with ease. This technique is usually termed Key Wrap. A common technique uses Block ciphers and