概述
提示:mysql数据库自带加密函数,单向加密和双向加密。
存储加密数据的数据类型—blob。blob是一个二进制的大型对象,可以存储大小不同的数据。根据存储数据能力大小分为tinyblob(255)、blob(65)、mediumblob(16*1024)、longblob(4G)。
文章目录
- 一、单向加密
- 二、双向加密
提示:以下是本篇文章正文内容,下面案例可供参考
一、单向加密
实质上是对用户密码做了一个hash,本质上不算做加密,只是利用了hash的单向性,使文明到密文变得可行,但是无法从密文看到明文。
MD5加密:
//创建带有主键sid的表student1
mysql> create table student1(sid varchar(8) primary key,spass blob);
//使用md5(’密码')方法加密
mysql> insert into student1 values ('001',md5('12345'));
+-----+----------------------------------+
| sid | spass
|
+-----+----------------------------------+
| 001 | 827ccb0eea8a706c4c34a16891f84e7b |
+-----+----------------------------------+
使用password加密
password(‘密码’)
//password + ('密码')
mysql> insert into student1 values ('003',password('000000'));
+-----+-------------------------------------------+
| sid | spass
|
+-----+-------------------------------------------+
| 001 | 827ccb0eea8a706c4c34a16891f84e7b
|
| 002 | 123
|
| 003 | *032197AE5731D4664921A6CCAC7CFCE6A0698693 |
+-----+-------------------------------------------+
二、双向加密
双向加密就是明文可以变成加密文件存储在数据库中,同时密文也可以通过相应的解密方法来查看到明文。
加密方法 —> encode( ‘密码’ , ‘任意字符’ )
mysql> insert into student1 values ('020',encode('admin','123'));
+-----+-------------------------------------------+
| sid | spass
|
+-----+-------------------------------------------+
| 008 | ?$0?
|
| 020 | 傑
|
+-----+-------------------------------------------+
解密方法 —> decode( ‘密码’ , ‘任意字符’ )
mysql> select *,decode(spass,'123') as spass from student1 where sid = '020';
+-----+-------+-------+
| sid | spass | spass |
+-----+-------+-------+
| 020 | 傑
| amin
|
+-----+-------+-------+
最后
以上就是负责鲜花为你收集整理的关于MySQL数据库对敏感数据的加密的实现一、单向加密二、双向加密的全部内容,希望文章能够帮你解决关于MySQL数据库对敏感数据的加密的实现一、单向加密二、双向加密所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复