修改:利元亨现场数据库密码加密
This commit is contained in:
@@ -6,7 +6,7 @@ spring:
|
||||
name: capability
|
||||
datasource:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
hikari:
|
||||
@@ -17,12 +17,12 @@ spring:
|
||||
connection-timeout: 30000 # 获取连接超时时间(30秒,避免线程阻塞)
|
||||
master:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
slave:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
enable: true
|
||||
|
||||
@@ -207,13 +207,14 @@ public class AESUtil {
|
||||
public static void main(String[] args) {
|
||||
try {
|
||||
// 优先读取JVM参数,然后环境变量参数,没有就报错
|
||||
// String spdmEnkey = "H7qGt/DO3VdaAVKzY3PNvQ==";
|
||||
String spdmEnkey = StringUtils.isBlank(System.getProperty("spdm.enkey"))?
|
||||
System.getenv("spdm.enkey"):System.getProperty("spdm.enkey");
|
||||
if(StringUtils.isBlank(spdmEnkey)){
|
||||
throw new RuntimeException("spdm加密配置密钥读取失败!");
|
||||
}
|
||||
System.out.println("密钥是:"+spdmEnkey);
|
||||
String ret = encodeNew("我是原文:8899",spdmEnkey);
|
||||
String ret = encodeNew("EP_DM@123.COM",spdmEnkey);
|
||||
System.out.println("encode:" + ret);
|
||||
String raw = decodeNew(ret,spdmEnkey);
|
||||
System.out.println("decode:" + raw);
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
package com.sdm.common.utils;
|
||||
|
||||
import javax.crypto.SecretKey;
|
||||
import javax.crypto.SecretKeyFactory;
|
||||
import javax.crypto.spec.PBEKeySpec;
|
||||
import javax.crypto.spec.SecretKeySpec;
|
||||
import java.security.spec.KeySpec;
|
||||
import java.util.Base64;
|
||||
|
||||
public class RandomByteUtils {
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
// 你的原始12字节密钥
|
||||
byte[] original12BytesKey = new byte[12];
|
||||
// 示例:填充随机值模拟你的12字节密钥(实际替换为你的真实密钥)
|
||||
new java.security.SecureRandom().nextBytes(original12BytesKey);
|
||||
|
||||
// 方案1:将12字节密钥扩展为16字节(128位)的合法AES密钥
|
||||
SecretKey validAesKey = generateValidAesKey(original12BytesKey, 16);
|
||||
// 验证密钥长度(输出16)
|
||||
byte[] encoded = validAesKey.getEncoded();
|
||||
System.out.println("合法AES密钥:"+Base64.getEncoder().encodeToString(encoded));
|
||||
System.out.println("合法AES密钥长度(字节): " + validAesKey.getEncoded().length);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 将任意长度的原始密钥派生为指定长度的合法AES密钥
|
||||
* @param originalKey 原始密钥(如12字节)
|
||||
* @param targetLength 目标长度(16/24/32)
|
||||
* @return 合法AES密钥
|
||||
*/
|
||||
private static SecretKey generateValidAesKey(byte[] originalKey, int targetLength) throws Exception {
|
||||
// 盐值(随机生成,实际使用时建议固定或持久化)
|
||||
byte[] salt = new byte[16];
|
||||
new java.security.SecureRandom().nextBytes(salt);
|
||||
|
||||
// PBKDF2密钥派生参数(迭代次数建议≥10000)
|
||||
KeySpec spec = new PBEKeySpec(
|
||||
new String(originalKey).toCharArray(), // 原始密钥转为字符数组
|
||||
salt, // 盐值
|
||||
65536, // 迭代次数
|
||||
targetLength * 8 // 目标密钥长度(位)
|
||||
);
|
||||
|
||||
// 生成派生密钥
|
||||
SecretKeyFactory factory = SecretKeyFactory.getInstance("PBKDF2WithHmacSHA256");
|
||||
byte[] derivedKey = factory.generateSecret(spec).getEncoded();
|
||||
|
||||
// 转换为AES密钥
|
||||
return new SecretKeySpec(derivedKey, "AES");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -6,7 +6,7 @@ spring:
|
||||
name: data
|
||||
datasource:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
hikari:
|
||||
@@ -22,12 +22,12 @@ spring:
|
||||
connection-timeout: 30000 # 30s
|
||||
master:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
slave:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
enable: true
|
||||
|
||||
@@ -6,7 +6,7 @@ spring:
|
||||
datasource:
|
||||
url: jdbc:mysql://192.168.30.146:3306/flowable?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
flowable:
|
||||
# ?????????
|
||||
|
||||
@@ -2,12 +2,9 @@ spring:
|
||||
datasource:
|
||||
second:
|
||||
username: EP_DM
|
||||
password: EP_DM@123.COM
|
||||
# username: root
|
||||
# password: mysql
|
||||
password: ENC(c04rt9Z6Ygz024EU9eWvig==)
|
||||
# todo 生产地址
|
||||
jdbc-url: jdbc:mysql://10.122.48.11:13306/easy_project?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
# jdbc-url: jdbc:mysql://127.0.0.1:3306/second_db?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
|
||||
# 测试开发环境
|
||||
|
||||
@@ -6,7 +6,7 @@ spring:
|
||||
name: pbs
|
||||
datasource:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
hikari:
|
||||
@@ -22,12 +22,12 @@ spring:
|
||||
connection-timeout: 30000 # 30s
|
||||
master:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
slave:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
enable: true
|
||||
|
||||
@@ -6,7 +6,7 @@ spring:
|
||||
name: project
|
||||
datasource:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
hikari:
|
||||
@@ -22,12 +22,12 @@ spring:
|
||||
connection-timeout: 30000 # 30s
|
||||
master:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
slave:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
enable: true
|
||||
|
||||
@@ -6,7 +6,7 @@ spring:
|
||||
name: system
|
||||
datasource:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
hikari:
|
||||
@@ -22,12 +22,12 @@ spring:
|
||||
connection-timeout: 30000 # 30s
|
||||
master:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
slave:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
enable: true
|
||||
|
||||
@@ -7,7 +7,7 @@ spring:
|
||||
name: task
|
||||
datasource:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
hikari:
|
||||
@@ -23,12 +23,12 @@ spring:
|
||||
connection-timeout: 30000 # 30s
|
||||
master:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
slave:
|
||||
username: root
|
||||
password: mysql
|
||||
password: ENC(o5nKvbyfceJryxfBBGTi9w==)
|
||||
jdbc-url: jdbc:mysql://192.168.30.146:3306/spdm_baseline?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=Asia/Shanghai
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
enable: true
|
||||
|
||||
Reference in New Issue
Block a user