yanchuen 发表于 2018-9-29 11:32:55

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的人不应该用数据库权限。

页: [1]
查看完整版本: Mysql 数据库字段加密