mssql sqlserver DECRYPTBYPASSPHRASE系统函数使用简介说明


摘要:
下文讲述加密函数”DECRYPTBYPASSPHRASE”的用法简介,如下所示
实验环境:sql server 2008 R2



DECRYPTBYPASSPHRASE 功能说明


DECRYPTBYPASSPHRASE:此函数是对使用ENCRYPTBYPASSPHRASE加密的内容进行解密。

DECRYPTBYPASSPHRASE 语法说明:
DecryptByPassPhrase ( { ‘passphrase’ | @passphrase }
, { ‘ciphertext’ | @ciphertext }
[ , { add_authenticator | @add_authenticator }
, { authenticator | @authenticator } ] )
——参数说明———–
passphrase
密钥–指定常量
@passphrase
密钥变量—
@passphrase变量类型为:
nvarchar、char、varchar、binary、varbinary、nchar
@passphrase大小最大为8000个字节
ciphertext:
待解密的字符串
@ciphertext
待解密的字符串
@ciphertext变量类型为: varbinary
@ciphertext大小最大为8000个字节
add_authenticator:
此变量类型为int
设置原始加密内容是否包含验证器和源字符串一起加密
@add_authenticator:
设置原始加密内容是否加hash同待加密字符串一起加密。
authenticator:
生成验证器数据
@authenticator
验证器变量
———DECRYPTBYPASSPHRASE返回值—–
返回一个varbinary数据类型,数据大小为8000字节



DECRYPTBYPASSPHRASE 举例应用

 
    declare @maomaoB varbinary(8000)
     declare @maomaoKey nvarchar(30)
     set @maomaoKey ='testSqlBlog'

select @maomaoB=EncryptByPassPhrase(@maomaoKey  
    ,N'猫猫小屋')
      
    select convert(nvarchar(30), DecryptByPassPhrase(@maomaoKey,@maomaoB) )