ENCRYPTBYASYMKEY (Transact-SQL)
利用非對稱金鑰為資料加密。
語法
EncryptByAsymKey ( Asym_Key_ID , { 'plaintext' | @plaintext } )
引數
Asym_Key_ID
這是資料庫中的非對稱金鑰識別碼。int.cleartext
這是要利用非對稱金鑰加密的資料字串。@plaintext
nvarchar、char、varchar、binary、varbinary 或 nchar 類型的變數,其中包含要以非對稱金鑰加密的資料。
傳回類型
varbinary,大小上限為 8,000 位元組。
備註
相較於利用對稱金鑰來加密及解密,利用非對稱金鑰來加密及解密的成本相當高。建議您不要使用非對稱金鑰來加密大型資料集,例如資料表中的使用者資料。您應該改用強式對稱金鑰來加密資料,並使用非對稱金鑰將該對稱金鑰加密。
範例
下列範例利用非對稱金鑰 JanainaAsymKey02 將儲存在 @cleartext 中的文字加密。加密的資料會插入 ProtectedData04 資料表中。
INSERT INTO [AdventureWorks2008R2].[Sales].[ProtectedData04]
values( N'data encrypted by asymmetric key ''JanainaAsymKey02''',
EncryptByAsymKey(AsymKey_ID('JanainaAsymKey02'), @cleartext) )
GO