MySQL中的加密函数

本文简单介绍MySQL中的加密函数。

MySQL 提供了多种加密函数,以下是一些常用的:

  1. PASSWORD(str): 用于密码加密,通常用于创建用户时对密码进行加密。
  2. MD5(str): 生成一个128位的加密串,返回一个32位的16进制数。
  3. SHA1(str): 生成一个160位的加密串,返回一个40位的16进制数。
  4. ENCODE(str,pass_str): 使用 pass_str 作为密钥对 str 进行加密。
  5. DECODE(str,pass_str): 使用 pass_str 作为密钥对 str 进行解密。

示例:

复制代码
SELECT MD5('mytext');
SELECT SHA1('mytext');
SELECT PASSWORD('mypassword');
SELECT ENCODE('hello', 'mykey');
SELECT DECODE('encoded_text', 'mykey');

注意:以上加密函数除了ENCODEDECODE可以解密外,其他的都是不可逆的。

PASSWORD(str)函数在 MySQL 中通常用于创建用户时对密码进行加密。

例如,当你想创建一个新的 MySQL 用户时,你可以使用PASSWORD(str)函数来加密用户的密码。

以下是一个示例:

复制代码
CREATE USER 'newuser'@'localhost' IDENTIFIED BY PASSWORD('newpassword');

在这个例子中,newpassword是用户的原始密码,PASSWORD('newpassword')会返回加密后的密码。

注意:从 MySQL 5.7.6 开始,PASSWORD()函数已被废弃,建议使用更安全的ALTER USER语句来设置密码。

例如:

复制代码
ALTER USER 'newuser'@'localhost' IDENTIFIED BY 'newpassword';

在这个例子中,newpassword是用户的原始密码,MySQL 会自动对其进行加密。

相关推荐
Irene19911 分钟前
数据发散(Data Spreading)详解(附:示例 数据发散最大值是笛卡尔乘积)
数据库
a9511416423 分钟前
c++如何解析二进制协议中的可选字段读取逻辑及其反序列化【详解】
jvm·数据库·python
weixin_5806140014 分钟前
golang如何实现时间格式化_golang时间格式化方法详解
jvm·数据库·python
forEverPlume15 分钟前
c++怎么利用std--span实现在不拷贝数据的前提下解析大规模文件【进阶】
jvm·数据库·python
FinTech老王22 分钟前
逻辑删除不等于物理销毁:KingbaseES敏感数据标记与销毁实操指南
数据库·安全·oracle
HHHHH1010HHHHH26 分钟前
Tailwind CSS如何快速定义固定宽高比_使用aspect-square实现CSS正方形
jvm·数据库·python
梦想的旅途227 分钟前
解构自动化办公新思路:实现外部群聊能力的深度集成与交互
java·数据库·rpa
m0_5150984230 分钟前
c++怎么获取文件的Inode节点信息_stat结构体深度解析【详解】
jvm·数据库·python
m0_6742946437 分钟前
HTML怎么限制输入字符数_HTML input maxlength属性用法【详解】
jvm·数据库·python
maqr_11042 分钟前
layui table单元格编辑 layui表格如何实现可编辑
jvm·数据库·python