mysql中的加密函数以及在高版本中被移除的加密函数

一、加密函数

  加密函数是MySQL用来对数据进行加密的函数。

 1、PASSWORD(str) 

       MySQL 8.0版本取消了,只能在MySQL 5.7中使用

       返回字符串str的加密版本,41位长的字符串,加密结果不可逆

  该函数可以对字符串str进行加密,一般情况下,PASSWORD(str)用于给用户的密码加密。

SELECT PASSWORD('123')
    ->*23AE809DDACAF96AF0FD78ED04B6A265E05AA257

    2、ENCODE(str,pswd_str)与DECODE(crypt_str,pswd_str)

        MySQL 5.7支持

        ENCODE函数可以使用加密密码pswd_str来加密字符串str,加密结果是二进制数,需要使用         BLOB类型的字段保存。该函数与DECODE是一对,需要同样的秘钥才能够解密。

    3、MD5

        MySQL 5.7和8.0 都支持

  MD5(str)函数可以对字符串str进行散列,可以用于一些普通的不需要解密的数据加密。

SELECT md5('123')
    ->202cb962ac59075b964b07152d234b70

    4、SHA

        MySQL 5.7和8.0 都支持

        从原明文密码str计算并返回加密后的密码字符串,当参数为null时,返回NUll。
        SHA加密算法比MD5更加安全

SELECT SHA('123')
   ->40bd001563085fc35165329ea1ff5c5ecbdbbeef

 

你可能感兴趣的:(Mysql,mysql,数据库)