有人告诉我,如果攻击者可以访问未加密的 .bak 文件,他们就可以访问数据。
所以让我们看看这个场景:
OPEN SYMMETRIC KEY MySymetricKey DECRYPTION
BY CERTIFICATE MyCertificate
Run Code Online (Sandbox Code Playgroud)
注意 - 这里没有密码。
然后我们通过以下方式加密我们的表:
UPDATE tbl1
SET namePAss = ENCRYPTBYKEY(KEY_GUID('MySymetricKey'),name)
GO
Run Code Online (Sandbox Code Playgroud)
现在假设黑客得到了我的bak文件。为了查看数据(在他自己的计算机和 sql-server 中),他所要做的就是:
SELECT
convert( NVARCHAR(max), decryptbykey(namePAss))
FROM tbl1
Run Code Online (Sandbox Code Playgroud)
他还能访问数据吗?