当前位置:Gxlcms > 数据库问题 > mysql加密解密方式用法

mysql加密解密方式用法

时间:2021-07-01 10:21:17 帮助过:44人阅读

mysql> SELECT * FROM users WHERE username=‘fantasy‘; 
+----------+----------+ 
| username | password | 
+----------+----------+ 
| fantasy | ?í1? | 
+----------+----------+ 
1 row in set (0.02 sec) 
abcd这个密钥对于恢复到原始的字符串至关重要。这个密钥必须被传递给DECODE()函数,以获得原始的、未加密的密码。下面就是它的使用方法: 
mysql> SELECT DECODE(password, ‘abcd‘) FROM users WHERE username=‘fantasy‘; +---------------------------------+ 
| DECODE(password, ‘abcd‘) | 
+---------------------------------+ 
| 123456 | 
+---------------------------------+ 
1 row in set (0.00 sec) 
技术分享

应该很容易就看到它在Web应用程序里是如何运行的——在验证用户登录的时候,DECODE()会用网站专用的密钥解开保存在数据库里的密码,并和用户输入的内容进行对比。假设您把PHP用作自己的脚本语言,那么可以像下面这样进行查询:

$query = "SELECT COUNT(*) FROM users WHERE username=‘$username‘ AND DECODE(password, ‘abcd‘) = ‘$password‘"; 

注意:虽然ENCODE()和DECODE()这两个函数能够满足大多数的要求,但是有的时候您希望使用强度更高的加密手段。在这种情况下,您可以使用AES_ENCRYPT()和AES_DECRYPT()函数,它们的工作方式是相同的,但是加密强度更高点。

mysql加密解密方式用法

标签:自己的   where   存在   mysql数据库   加密手段   工作方式   网站   mysq   复制   

人气教程排行