VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

SHA

功能描述

SHA/SHA1 函数将 string 使用 SHA1 加密,并以 16 进制数作为返回值,SHA 和 SHA1 函数功能相同。

SHA2 函数将 string 使用 SHA2 加密,并以 16 进制数作为返回值。

SHA1加密算法安全性低,存在安全风险,不建议使用。

注意事项

该功能仅在数据库兼容模式为MySQL时支持(即数据库实例初始化时指定DBCOMPATIBILITY='B')。

返回值类型

text

语法格式

  • SHA/SHA1

    sha(string)
    sha1(string)
    
  • SHA2

    sha2(string,hash_length)
    

参数说明

  • string

    字符串。

  • hash_length

    对应相应的 SHA2 算法,可选值为 0(SHA-256)、224(SHA-224)、256(SHA-256)、384(SHA-384)、512(SHA-512),其他值将返回 NULL。

    • SHA224加密算法安全性低,存在安全风险,不建议使用。
    • SHA2函数会在日志中会记录哈希的明文,因此不建议用户用该函数加密秘钥等敏感信息。

示例

SELECT sha('ABC');
SELECT sha1('ABC');
SELECT sha2('ABC',224);
SELECT sha2('ABC',0);

返回结果为:

                   sha
------------------------------------------
 3c01bdbb26f358bab27f267924aa2c9a03fcfdb8
(1 row)

                   sha1
------------------------------------------
 3c01bdbb26f358bab27f267924aa2c9a03fcfdb8
(1 row)

                           sha2
----------------------------------------------------------
 107c5072b799c4771f328304cfe1ebb375eb6ea7f35a3aa753836fad
(1 row)


                               sha2
------------------------------------------------------------------
 b5d4045c3f466fa91fe2cc6abe79232a1a57cdf104f7a26e716e0a1e2789df78
(1 row)