MySQL——数据库级别的MD5加密

Posted Godles

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL——数据库级别的MD5加密相关的知识,希望对你有一定的参考价值。

  • MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。主要增强算法复杂度和不可逆性。
  • MD5 不可逆,但是具体的简单值的 md5 是一样的
  • MD5 破解网站的原理,背后有一个字典对照

测试MD5加密:

-- =========测试MD5 加密=======

CREATE TABLE `testmd5`(
   `id` INT(4) NOT NULL,
   `name` VARCHAR(20) NOT NULL,
   `pwd` VARCHAR(50) NOT NULL,
   PRIMARY KEY(`id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8

-- 明文密码
INSERT INTO testmd5 VALUES(1,'zhangsan','123456'),(2,'lisi','123456'),(3,'wangwu','123456')

-- 加密
UPDATE testmd5 SET pwd=MD5(pwd) WHERE id = 1

UPDATE testmd5 SET pwd=MD5(pwd)  -- 加密全部的密码

-- 插入的时候加密
INSERT INTO testmd5 VALUES(4,'xiaoming',MD5('123456'))

-- 如何校验:将用户传递进来的密码,进行md5加密,然后比对加密后的值
SELECT * FROM testmd5 WHERE `name`='xiaoming' AND pwd=MD5('123456')

以上是关于MySQL——数据库级别的MD5加密的主要内容,如果未能解决你的问题,请参考以下文章

mysql数据库的数据库用户(如ROOT用户)密码都是MD5加密方式的吗?我怎么在用户表里看到的不是md5加密

数据库如何实现字段加密

mysql8加密规则更改

MYSQL数据库密码字段临时加密问题?

MYSQL 加密函数的用法

面向对象的 日志 md5加密