sys.symmetric_keys (Transact-SQL)
為透過 CREATE SYMMETRIC KEY 陳述式所建立的各個對稱金鑰傳回一個資料列。
資料行名稱 |
資料類型 |
說明 |
---|---|---|
name |
sysname |
金鑰的名稱。 在 c4database 是唯一的。 |
principal_id |
int |
擁有金鑰的資料庫主體識別碼。 |
symmetric_key_id |
int |
金鑰的識別碼。 在資料庫中,這是唯一的。 |
key_length |
int |
金鑰的長度 (以位元為單位)。 |
key_algorithm |
char(2) |
金鑰使用的演算法: R2 = RC2 R4 = RC4 D = DES D3 = Triple DES DT = TRIPLE_DES_3KEY DX = DESX A1 = AES 128 A2 = AES 192 A3 = AES 256 NA = EKM 金鑰 |
algorithm_desc |
nvarchar(60) |
金鑰使用之演算法的描述: RC2 RC4 DES Triple_DES TRIPLE_DES_3KEY DESX AES_128 AES_192 AES_256 NULL (僅限 Extensible Key Management 演算法) |
create_date |
datetime |
建立金鑰的日期。 |
modify_date |
datetime |
修改金鑰的日期。 |
key_guid |
uniqueidentifier |
與金鑰相關聯的全域唯一識別碼 (GUID)。 它會為保存的金鑰自動產生。 暫時金鑰的 GUID 衍生自使用者提供的複雜密碼。 |
key_thumbprint |
sql_variant |
金鑰的 SHA-1 雜湊。 此雜湊是全域唯一的。 如果是非 Extensible Key Management 金鑰,這個值將會是 NULL。 |
provider_type |
nvarchar(120) |
密碼編譯提供者的類型: CRYPTOGRAPHIC PROVIDER = Extensible Key Management 金鑰 NULL = 非 Extensible Key Management 金鑰 |
cryptographic_provider_guid |
uniqueidentifier |
密碼編譯提供者的 GUID。 如果是非 Extensible Key Management 金鑰,這個值將會是 NULL。 |
cryptographic_provider_algid |
sql_variant |
密碼編譯提供者的演算法識別碼。 如果是非 Extensible Key Management 金鑰,這個值將會是 NULL。 |
權限
目錄檢視內中繼資料的可見性會限制在使用者所擁有的安全性實體,或已授與使用者某些權限的安全性實體。如需詳細資訊,請參閱<中繼資料可見性組態>。
備註
RC4 演算法已被取代。 未來的 Microsoft SQL Server 版本將移除這項功能。請勿在新的開發工作中使用此功能,並且儘速修改使用此功能的應用程式。
[!附註]
只有 RC4 演算法支援回溯相容性。 只有在資料庫相容性層級為 90 或 100 時,才能使用 RC4 或 RC4_128 加密新資料 (不建議使用)。請改用較新的演算法,如其中一個 AES 演算法。 在 SQL Server 2012 中,使用 RC4 或 RC4_128 加密的資料可以在任何相容性層級進行解密。
釐清有關 DES 演算法的資訊:
DESX 的命名不正確。 以 ALGORITHM = DESX 建立的對稱金鑰實際上使用具有 192 位元金鑰的 TRIPLE DES 加密。 未提供 DESX 演算法。 未來的 Microsoft SQL Server 版本將移除這項功能。請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。
以 ALGORITHM = TRIPLE_DES_3KEY 建立的對稱金鑰使用具有 192 位元金鑰的 TRIPLE DES。
以 ALGORITHM = TRIPLE_DES 建立的對稱金鑰使用具有 128 位元金鑰的 TRIPLE DES。
請參閱
參考
CREATE SYMMETRIC KEY (Transact-SQL)