1、创建非对称密钥

create asymmetric key asymDemoKey with algorithm=RSA_512 encryption by password='Aa!'

go

2、非对称密钥加密、解密

--加密

declare @encryData varbinary(1000)

set @encryData=ENCRYPTBYASYMKEY(asymkey_id('asymDemoKey'),'加密的数据');

select @encryData;

--解密

declare @data varchar(20)

set @data=cast(DecryptByAsymKey(AsymKey_ID('asymDemoKey'),@encryData,N'Aa!')as varchar(1000))  

select @data

go


非对称加密

证书和非对称密钥一起使用。证书通常用作非对称密钥的容器,可以包含更多信息,如过期日期和颁发者。证书可以用来加密数据库中其他类型的加密密钥,或者为代码模块签名。