阿里巴巴Druid,轻松实现MySQL数据库加密!(2)

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 阿里巴巴Druid,轻松实现MySQL数据库加密!(2)

使用Druid实现加密


本示例运行环境:


Spring Boot 2.4.3

MySQL 5.7

Java 1.8

Idea 2020.1.3


1.添加Druid依赖


Maven 项目:


<dependency>
   <groupId>com.alibaba</groupId>
   <artifactId>druid-spring-boot-starter</artifactId>
   <version>1.2.5</version>
</dependency>


Gradle 项目:


compile 'com.alibaba:druid-spring-boot-starter:1.2.5'


获取 Druid 最新版本:https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter


2.生成密文


Druid 添加完成之后就可以借助 Druid 中提供的 ConfigTools 类来加密密码了,实现代码如下:


import com.alibaba.druid.filter.config.ConfigTools;
class MyTests {
    public static void main(String[] args) throws Exception {
        // 需要加密的明文命名
        String password = "youPassword"; // 【注意:这里要改为你自己的密码】
        // 调用 druid 生成私钥、公钥、密文
        ConfigTools.main(new String[]{password});
    }
}


以上代码执行的结果如下:


privateKey:MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEApOjcMWSDzJiKVGmtcBBoQPtM9tVW2H2cnS6xZK7NrbzQXYWLQD2zefIrrx9vMvqRIHEqkmAHTuUcUXHgCxu0cwIDAQABAkAlqo5ItdWo0Jqf5zdXJlg5p2yP4HCiqCYyfKzF+2s9KEmgWZJWTctZDsgQ0iYUohORR59I+J4nabhel1x5/INpAiEA6jwSyFqMUPOh1XlrzNFek+RthOQ5n4+ALPo+vULayO0CIQC0O7JM9sIq+tg+jCGv+ypk6vbuRKY9m5W2rSRXapGm3wIgRHul3jAjIDPrF/f1HaAFL+Y0Yws7Ebyp8/yCRWF7iA0CIALbe20q8FMcHPeI4zPWCIsHCpkmb3hEkjAOOKhGIT8DAiAqiUuz92NqKeyjmOfons1ka65EzVwA3NDhZ6+IQcnuig== publicKey:MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKTo3DFkg8yYilRprXAQaED7TPbVVth9nJ0usWSuza280F2Fi0A9s3nyK68fbzL6kSBxKpJgB07lHFFx4AsbtHMCAwEAAQ== password:IMgKm27bOHok3/+5aDL4jGBoVVZkpicbbM6pIXQppi3dI7h3jngSAqhqwqYnfuYpyVJ0k++q9xWWnHtd6sAWnQ==


从上述结果可以看出,使用 ConfigTools 类会生成 3 部分的内容:


  1. privateKey:私钥,暂时不会用到,用于密码的加密;


  1. publicKey:公钥,用于密码的解密;


  1. password:加密之后的密码。


PS:要实现数据库的加密,主要使用的是 publicKey(公钥)和 password(密文),这就把明文转换成密文了。



相关文章
|
7月前
|
监控 druid Java
监控druid数据库连接池连接泄露的思路
监控druid数据库连接池连接泄露的思路
684 2
|
7月前
|
Arthas druid Java
一次druid数据库连接池连接泄露的排查分析
一次druid数据库连接池连接泄露的排查分析
632 1
|
4月前
|
druid Java 数据库连接
数据库连接池及Druid使用步骤
数据库连接池及Druid使用步骤
264 2
|
7天前
|
SQL 监控 druid
Druid数据库连接池简介及应用推广(老项目翻出来做下记录)
Druid数据库连接池简介及应用推广(老项目翻出来做下记录)
|
4月前
|
监控 druid Java
Druid【SpringBoot集成】监控数据库报错 Failed to bind properties under ‘‘ to javax.sql.DataSource 解决(含配置源码)
Druid【SpringBoot集成】监控数据库报错 Failed to bind properties under ‘‘ to javax.sql.DataSource 解决(含配置源码)
230 0
|
5月前
|
druid Java 数据库
德鲁伊druid数据库明文密码加密
德鲁伊druid数据库明文密码加密
372 0
德鲁伊druid数据库明文密码加密
|
3月前
|
SQL 存储 关系型数据库
MySQL 时间日期函数,流程控制函数,加密解密函数以及聚合查询函数
MySQL 时间日期函数,流程控制函数,加密解密函数以及聚合查询函数
47 0
|
3月前
|
监控 druid Java
数据库链接池HikariCP、Druid
数据库链接池HikariCP、Druid
|
4月前
|
SQL druid Java
jdbc(数据库连接池druid)
jdbc(数据库连接池druid)
|
4月前
|
监控 druid Java
SpringBoot 使用【druid-spring-boot-starter】集成 druid 监控数据库
SpringBoot 使用【druid-spring-boot-starter】集成 druid 监控数据库
66 0