皇冠新体育APP

IT技术之家

微服务实战|集中配置中心Config对称加密实战__时光煮雨

SpringCloud集中配置中心Config实现敏感信息的安全管理、配置文件的加密解密等机制。对称加密实战...

前言

上一场篇:微精准服务实际战斗|低效增加部件Config避免出现敏感脆弱短信丢失 前一个篇文中,企业简绍了运用低效调试重点构件Config实行了铭感新图片信息查询的低效维护。然而 ,在调试程序格式中,调试新图片信息查询还是运用的是明确,目前企业将简绍一会儿运用Config实行铭感新图片信息查询的可靠维护、调试程序格式的数据加密解密码等考核机制。

一、加密算法

不可逆加密就是大家熟知的在 Spring Security 或者 Shiro 这一类安全管理框架中我们对密码加密经常采取的方案。这种加密算法的特点就是不可逆,即理论上无法使用加密后的密文推算出明文,常见的算法如 MD5 消息摘要算法以及 SHA 安全散列算法等。

可逆算法顾名思义,这种算法是可以根据密文推断出明文的,在我们的配置文件,我们要存放加密的密文,但是使用的时候还是需要解密后明文才能使用,所以需要使用可逆算法进行加密,可逆算法又分为两大类:

对称加密是指加密的密钥和解密的密钥一致,例如 A 和 B 之间要通信,为了防止别人偷听,两个人提前约定好一个密钥。每次发消息时, A 使用这个密钥对要发送的消息进行加密,B 收到消息后则使用相同的密钥对消息进行解密。这是对称加密,常见的算法有 DES、3DES、AES 等。

非对称加密就是加密的密钥和解密的密钥不是同一个,加密的密钥叫做公钥,可以公开告诉任何人,解密的密钥叫做私钥,只有自己知道。非对称加密不仅可以用来做加密,也可以用来做签名,使用场景还是非常多的,特别是在一些一对多的通信场景下,常见的加密算法是 RSA 。

可逆反应梯度下降法中的中心中心对称图片密码保护和非中心中心对称图片密码保护在 Spring Cloud Config 泉河取到大力支持,那么公司就已经开始实战经验。

二、Config对称加密实战

1、下载加密包

Java 中提供了一套用于实现加密、密钥生成等功能的包 JCE(Java Cryptography Extension),这些包提供了对称、非对称、块和流密码的加密支持,但是默认的 JCE 是一个有限长度的 JCE ,我们需要到 Oracle 官网去下载一个不限长度的 JCE :JCE加密包官网下载

下载完成后,将压缩包解压后的文件拷贝到 JDK 的安装目录下: %JAVA_HOME%\jre\lib\security

2、配置秘钥

立即更改我国的config-server顶目,在resource下使用这个bootstrap.yml相关文件,内部有以下:
encrypt:
  key: 123456
而是应用的是轴对称图片加密文件神经网络算法,将图片加密文件庭外和解密的秘钥设为为123456。

3、启动验证

初始化config-server工程,核验一番进行加密解开能不很正常:

访问//localhost:8005/encrypt/status,返回ok

喝光浏览//localhost:8081/encrypt 图片加密标准接口:

再来购买远程访问//localhost:8081/encrypt 破译界面:

往往合适,就能够合适数据加密庭外和解密。

4、项目实战

文件名加密达成和解密效果正确后来,就得修饰咱们的配备文件名玩法了,将过后选择明确的问题,换成咱们的密文。 一直降重小编的config-server相关内容,在repo系统信息名下,降重买家鍴的系统配置系统信息configclient-dev.yml,增多相应相关内容:
app:
  key: '{cipher}5ab3ce1502c40c276074f400aee0be0f6279d6a85bb9d8d315a78c7a91603dde58d4512a6bc9f6492a8eddd34dbeeac0'

注意密文前面增加{cipher},这样才能正常解密。

最后更该客端config-client该项目,扩大一种仿问usb接口:
/**
 * @Author:公众号:程序员965
 * @create 2022-07-17
 **/
@RestController
public class ConfigController {
    @Value("${app.key}")
    String appKey;

    @GetMapping("/hello")
    public String hello() {
        return appKey;
    }
}

5、验证

最后的,已经强制关机registry创业项目并且config-server,config-client三个工作,防问client端hello接口类型://localhost:8007/hello,普通 跳转了加密方式后的加密算法: