什么是 SQL Server 中的“混淆密钥”?

Eva*_*oll 2 sql-server encryption database-internals

撇开笑话不谈,什么是“混淆密钥”?我只是要离开文档

sys.sysclsobjs存在于每个数据库中。每个分类实体包含一行,这些实体共享相同的公共属性,包括以下内容:

...

混淆密钥。

这似乎涉及

  • Content/binn/sqllang.dll
  • Content/binn/sqlmin.dll

我想知道密钥的作用和被混淆的内容,以及是否可供用户使用。

Mik*_*son 7

我猜他们的意思是为对称密钥创建的行。

create symmetric key KeyTest with 
  algorithm = aes_128, 
  identity_value = '123456'
  encryption by password = '123456!Q';

go

-- Needs a DAC connection    
select *
from sys.sysclsobjs
where Name = 'KeyTest'
Run Code Online (Sandbox Code Playgroud)

结果:

create symmetric key KeyTest with 
  algorithm = aes_128, 
  identity_value = '123456'
  encryption by password = '123456!Q';

go

-- Needs a DAC connection    
select *
from sys.sysclsobjs
where Name = 'KeyTest'
Run Code Online (Sandbox Code Playgroud)