SQL Server SSL + TDE 与始终加密

Dot*_*att 2 sql-server ssl tde always-encrypted

使用 SQL Server SSL(连接字符串中的 Encrypted=true)+ TDE 与使用 SQL Server Always Encrypted 有什么区别?

关于 RGPD,一个比另一个更适应吗?

Jos*_*hee 5

Always Encrypted 的存在不仅仅是为了解决确保数据在传输过程中加密的问题。事实上,这甚至不是 Always Encrypted 解决的主要问题。

Always Encrypted 解决的一个大问题是,通过透明数据加密 (TDE),保护加密数据的密钥和证书本身存储在数据库中。对于考虑将 SQL Server 数据库放在云中的人来说,这可能是一个问题,因为云提供商最终拥有解密数据的秘密。

对于 Always Encrypted,用于加密/解密列数据的列加密密钥 (CEK) 以其加密形式存储在数据库中。但这里是踢球者 -用于加密/解密 CEK 的密钥存储在数据库之外使数据库无法自行解密数据。

数据库所能做的就是

  1. 提供加密的 CEK,
  2. 提供 CMK 的位置,以及
  3. 提供/存储预先加密的数据。

由客户端从位于任何位置的密钥/证书存储中获取列主密钥 (CMK),然后使用 CMK 解密 CEK,并使用解密的 CEK 加密/解密数据。

这就是概念上的差异。这里有几页详细介绍了它:

请注意,Always Encrypted 在查询数据和其他内容方面存在一些严重缺陷。这篇文章提供了一个很好的限制列表。使用带有安全 enclave 的 Always Encrypted可以减轻其中一些缺点。