Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
使用所提供的密钥对字符串解密,并返回 LONG BINARY 类型的值。
DECRYPT( string-expression, key [, algorithm ] )
algorithm : 'AES' | 'AES256' | 'AES_FIPS' | 'AES256_FIPS'
string-expression 要解密的字符串。也可以将二进制值传递给此函数。此参数区分大小写,即使是在不区分大小写的数据库中也是如此。
key 对 string-expression 进行解密所需的加密密钥(字符串)。此密钥必须与用来对 string-expression 进行加密的密钥相同,才能获得被加密的原始值。此参数区分大小写,即使是在不区分大小写的数据库中也是如此。
对于高度加密的数据库,请务必将密钥的副本保存在安全的位置。如果丢失了加密密钥,则无办法访问数据,即使有技术支持人员协助也如此。此时必须放弃该数据库并创建一个新的数据库。
algorithm 此可选参数指定最初用来加密 string-expression 所使用的算法。
LONG BINARY
有关所支持加密算法的详细信息,请参见ENCRYPT 函数 [String]。
可以使用 DECRYPT 函数对用 ENCRYPT 函数加密的 string-expression 进行解密。此函数返回与输入字符串字节数相同的 LONG BINARY 类型值。
要成功解密 string-expression,您必须使用对数据进行加密时所使用的密钥。如果指定的加密密钥不正确,将会生成错误。丢失密钥将导致数据无法访问,而无法访问的数据是无法进行恢复的。
并非所有平台都支持经 FIPS 认证的加密。有关受支持平台的列表,请参见 http://www.sybase.com/detail?id=1061806。
SQL/2008 服务商扩充。
以下示例对 user_info 表中的用户口令进行解密。由于 DECRYPT 函数会将值转换为无法阅读的 LONG BINARY 数据类型,因此使用 CAST 函数将口令转换回 CHAR 数据类型。
SELECT CAST( DECRYPT( user_pwd, '8U3dkA' ) AS CHAR(100) ) FROM user_info;