欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > MySQL 9从入门到性能优化-加密函数

MySQL 9从入门到性能优化-加密函数

2025/2/5 22:20:28 来源:https://blog.csdn.net/brucexia/article/details/143480932  浏览:    关键词:MySQL 9从入门到性能优化-加密函数

【图书推荐】《MySQL 9从入门到性能优化(视频教学版)》-CSDN博客

《MySQL 9从入门到性能优化(视频教学版)(数据库技术丛书)》(王英英)【摘要 书评 试读】- 京东图书 (jd.com)

MySQL9数据库技术_夏天又到了的博客-CSDN博客

加密函数主要用来对数据进行加密和解密处理,以保证某些重要数据不被别人获取。这些函数在保证数据库安全时非常有用,比如,用户密码使用这些函数就可以不需要明文保存了。本文将介绍各种加密函数的作用和使用方法。

4.7.1  加密函数MD5(str)

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

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

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

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

4.7.2  加密函数SHA(str)

SHA(str)函数用于计算给定字符串str的加密哈希值。当参数为NULL时,SHA(str)函数将返回NULL。与MD5相比,SHA加密算法提供了更强的安全性能,因为它生成的哈希值更长,碰撞的可能性更低。

【例4.98】使用SHA()函数加密字符串,SQL语句如下:

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

4.7.3  加密函数SHA2(str, hash_length)

SHA2(str, hash_length)函数用于对给定的字符串str进行加密,其加密算法为SHA-2。这个函数的第二个参数hash_length用于指定加密后哈希值的长度。hash_length支持的值为224、256、384、512和0。其中,0等同于256。 

【例4.99】使用SHA2()加密字符串,SQL语句如下:

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

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