购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

4.7 加密函数

加密函数主要用来对数据进行加密处理,以保证某些重要数据不被别人获取。这些函数在保证数据库安全时非常有用。本节将介绍各种加密函数的作用和使用方法。

4.7.1 加密函数MD5(str)

MD5(str)为字符串算出一个MD5 128比特校验和。该值以32位十六进制数字的二进制字符串形式返回,若参数为NULL,则会返回NULL。

【例4.97】使用MD5函数加密字符串,输入语句如下:

     mysql> SELECT MD5 ('mypwd');
     +----------------------------------+
     | MD5 ('mypwd')                 |
     +----------------------------------+
     | 318bcb4be908d0da6448a0db76908d78 |
     +----------------------------------+

可以看到,“mypwd”经MD5加密后的结果为318bcb4be908d0da6448a0db76908d78。

4.7.2 加密函数SHA(str)

SHA(str)使用原明文密码str计算并返回加密后的密码字符串,当参数为NULL时,返回NULL。SHA加密算法比MD5更加安全。

【例4.98】使用SHA函数加密密码,输入语句如下:

     mysql> SELECT SHA('tom123456');
     +------------------------------------------+
     | SHA('tom123456')                     |
     +------------------------------------------+
     | 8218b487f490cb484f45c31403eb1f597a2b531a |
     +------------------------------------------+

4.7.3 加密函数SHA2(str, hash_length)

SHA2(str, hash_length)使用hash_length作为长度,加密str。hash_length支持的值为224、256、384、512和0。其中,0等同于256。

【例4.99】使用SHA2加密字符串,输入语句如下:

     mysql> SELECT SHA2('tom123456',0) A,sha2('tom123456',256) B\G
     *************************** 1. row ***************************
     A: 9242a986a9edbd14a60450e9284a372efeff7e9f6209f675fdc4457f55de5e27
     B: 9242a986a9edbd14a60450e9284a372efeff7e9f6209f675fdc4457f55de5e27

可以看到,hash_length的值为256和0时,结果都是一样的。 vJXybKC92m+TThKarrLxN8rY4Q5eExnQ2tAlv9T9/CiEOqEpXpPNuMs9QpUTnk3d

点击中间区域
呼出菜单
上一章
目录
下一章
×