标签:mysql数据库字段加密
1 数据库字段加密:
2 4.20. 数据加密
3 数据库中有很多敏感字段,不允许随意查看,例如开发人员,运维人员,甚至DBA数据库管理员。另外加密主要是防止被黑客脱库(盗走)
4 敏感数据加密有很多办法,可以用数据库内部加密函数,也可以在外部处理后写入数据库。加密算法有很多种,但通常两类比较常用,一种是通过key加密解密,另一种是通过证书加密解密。
5 通常程序员负责写程序,程序交给运维配置,运维将key设置好,运维不能有数据库权限,DBA只能登陆数据库,没有key权限。
6 4.20.1. AES_ENCRYPT / AES_DECRYPT
7 这里介绍AES加密与解密简单用法
8 CREATE TABLE encryption (
9 userID int unsigned not null auto_increment,
10 user_password varchar(30) NOT NULL,
11 user_name varchar(30) NOT NULL,
12 PRIMARY KEY (userID)
13 );
14 INSERT INTO encryption(user_name,user_password) VALUES (‘TestName‘, AES_ENCRYPT(‘123qwe‘,‘encrypt_key‘));
15 SELECT AES_DECRYPT(user_password,‘encrypt_key‘) FROM encryption WHERE user_name=‘TestName‘;
16
17 这里方便演示将key 写入了数据库,实际应用key应该存储在应用程序配置文件中。通常能把获得key的人不应该用数据库权限。
本文出自 “我是一只小小鸟” 博客,请务必保留此出处http://2242558.blog.51cto.com/2232558/1716462
标签:mysql数据库字段加密
原文地址:http://2242558.blog.51cto.com/2232558/1716462