EncryptByAsymKey (Transact-SQL)
更新日期: 2006 年 4 月 14 日
使用非对称密钥加密数据。
语法
EncryptByAsymKey ( Asym_Key_ID , { 'plaintext' | @plaintext } )
参数
- Asym_Key_ID
数据库中非对称密钥的 ID。 int.
- cleartext
将使用非对称密钥加密的数据字符串。
- @plaintext
这是类型为 nvarchar、char、varchar、binary、varbinary 或 nchar 的变量,其中包含要用非对称密钥加密的数据。
返回类型
最大大小为 8,000 个字节的 varbinary。
备注
与使用对称密钥进行加密和解密相比,使用非对称密钥进行加密和解密时的系统开销要高得多。建议您不要使用非对称密钥加密大型数据集,例如表中的用户数据。而应该使用强对称密钥加密数据并使用非对称密钥加密对称密钥。
示例
以下示例将用非对称密钥 JanainaAsymKey02
加密在 @cleartext
中存储的文本。加密的数据插入表 ProtectedData04
中。
INSERT INTO [AdventureWorks].[Sales].[ProtectedData04]
values( N'data encrypted by asymmetric key ''JanainaAsymKey02''',
EncryptByAsymKey(AsymKey_ID('JanainaAsymKey02'), @cleartext) )
GO
请参阅
参考
DecryptByAsymKey (Transact-SQL)
CREATE ASYMMETRIC KEY (Transact-SQL)