sys.symmetric_keys (Transact-SQL)
針對以 CREATE SYMMETRIC KEY 陳述式建立的每一個對稱金鑰,各傳回一個資料列。
資料行名稱 |
資料類型 |
描述 |
---|---|---|
name |
sysname |
金鑰的名稱。在資料庫中,這是唯一的。 |
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 版本將移除這項功能。請勿在新的開發工作中使用此功能,並且儘速修改使用此功能的應用程式。
釐清有關 DES 演算法:
DESX 未正確命名。以 ALGORITHM = DESX 建立的對稱金鑰實際上使用具有 192 位元金鑰的 TRIPLE DES 加密。未提供 DESX 演算法。未來的 Microsoft SQL Server 版本將移除這項功能。請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。
以 ALGORITHM = TRIPLE_DES_3KEY 建立的對稱金鑰使用具有 192 位元金鑰的 TRIPLE DES。
以 ALGORITHM = TRIPLE_DES 建立的對稱金鑰使用具有 128 位元金鑰的 TRIPLE DES。