首页 > 数据库 >【学习笔记】数据库级别的MD5加密

【学习笔记】数据库级别的MD5加密

时间:2022-10-04 15:33:47浏览次数:45  
标签:加密 -- 数据库 MD5 pwd 123456 testmd5

数据库级别的MD5加密

什么是MD5?

MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。

MD5的特点:主要增强算法复杂度和不可逆性

所以网上的所谓MD5破解网站,实际上是将一些常见的密码,如:123456等进行MD5加密,放到它的字典中,用户去破解时,他在他的字典中查找。一旦密码较为复杂,他就无法破解

 

如何使用MD5加密?

-- 创建表
CREATE TABLE `testmd5`(
    `id` INT(10) 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`) 

image-20221004151605167

 

-- 给指定密码加密
UPDATE `testmd5` SET `pwd` = MD5(`pwd`) WHERE `id` = 1
​
-- 插入的时候加密
INSERT INTO `testmd5` VALUES(4,'zhaoliu',MD5('123456'))

 

应该如何校验用户输入的密码呢?

将用户输入的密码进行MD5加密,然后对比加密后的值

SELECT * FROM `testmd5` WHERE `name` = 'zhaoliu' AND `pwd` = MD5('123456')

image-20221004152250677

标签:加密,--,数据库,MD5,pwd,123456,testmd5
From: https://www.cnblogs.com/wztblogs/p/16753826.html

相关文章

  • 阿里云服务器中MySQL数据库被攻击
    前几天刚领了一个月的阿里云服务器玩,在里面装了MySQL,然后这几天找了个小项目练习着玩呢,就将表建在里面了。刚访问添加员工还好好的,刚给员工分页查询呢,啪一下,很突然昂,就......
  • mysql8 navicat连接数据库报错
    一、报错场景mysql安装成功后,通过cmd连接mysql可以连接成功,但是通过navicat连接数据库时,报错。无法连接成功二、原因mysql8开始,数据库密码的加密方式发生变化。由原来的......
  • 【MySQL从入门到精通】【高级篇】(二十一)数据库优化步骤_查看系统性能参数
    文章目录​​1.简介​​​​2.数据库服务器的优化步骤​​​​3.查看系统性能参数​​​​总结​​1.简介上一篇文章我们介绍了哪些情况下适合创建索引,哪些情况下不适合......
  • 配置Django实现数据库读写分离
    配置Django实现数据库读写分离django在进行数据库操作的时候,读取数据与写数据(增、删、改)可以分别从不同的数据库进行操作。1.在配置文件中增加slave数据库的配置DATABA......
  • 数据库概述、什么是SQL
    什么是数据库数据库:DataBase,简称DB。按照一定格式存储数据的一些文件的组合。顾名思义:存储的仓库,实际上就是一堆文件。这些文件中存储了具有特定格式的数据什么是数......
  • MySQL数据库入门
    ​​初识数据库​​​​MySQL操作表和表记录​​​​单表查询进阶与多表查询​​​​Python操作MySQL以及数据库索引​​​​MySQL补充和备份​​......
  • python 利用md5去重 转载
    原文连接:https://blog.csdn.net/babytiger/article/details/90293866#/usr/bin/envpython#-*-coding:utf-8-*-#运行的代码文件要放到删除重复的文件或图片所包含......
  • 对于在网页中实现对数据库中数据的修改、删除和增加
    准备我们之前都有接触过,在数据库中对于数据的增删改查,主要包含以下四个命令://遍历查询select*from表名//插入数据insertinto表名values('','',...)//修改数......
  • 数据库建表的15个小技巧
    对于后端开发同学来说,访问数据库,是代码中必不可少的一个环节。系统中收集到用户的核心数据,为了安全性,我们一般会存储到数据库,比如:mysql,oracle等。后端开发的日常工作,需要......
  • Spring-JdbcTemplate实现数据库增、删、改、查
    一、先在mysql创建好一个数据库二、使用JdbcTemplate需要引入的依赖(spring的maven项目)<!--jdbcTemplate实现jar--><dependency><groupId>org.springframework<......