加密密钥存储和交换
在某些情况下,必须将密钥从 加密服务提供商(CSP)的安全环境导出到应用程序的数据空间。 导出的密钥存储在加密 密钥 BLOB 结构中。
有两种特定情况需要导出密钥:
- 若要保存 会话密钥 以供应用程序以后使用,例如,如果应用程序刚刚加密了稍后要解密的数据库文件。 应用程序负责存储加密密钥。 这是必要的,因为 CSP 不会保留从会话到会话对称密钥。
- 向其他人发送密钥。 如果相应的 CSP 可以直接通信,但无法通信,这会更容易。 由于 CSP 无法通信,因此必须从一个 CSP 导出密钥,并将其传输到目标应用程序,然后导入目标 CSP。 如果通信路径不受信任,此过程可能会变得更加复杂。
无论哪种情况,应用程序都必须在 CSP 外部存储会话密钥一段时间。 有关详细信息,请参阅用于存储会话密钥 过程。