微服务实战 集中配置中心Config对称加密实战_配置中心中明文加密

本文详细介绍了在Spring Cloud Config中如何进行对称加密实战,包括下载JCE加密包,配置加密秘钥,启动验证加密解密功能正常,并在实际项目中应用加密配置。同时,文中提及了对称加密与非对称加密的区别,以及在微服务架构中的应用场景。

不可逆加密就是大家熟知的在 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项目,验证一下加密解密是否正常:

访问http://localhost:8005/encrypt/status,返回ok
在这里插入图片描述

再来访问http://localhost:8081/encrypt 加密接口:

在这里插入图片描述

再来访问http://localhost:8081/encrypt 解密接口:

在这里插入图片描述

一切正常,能够正常加密和解密。

4、项目实战

加密和解密功能正常之后,就要修改我们的配置文件内容了,将之前使用明文的地方,改成我们的密文。

继续修改我们的config-server项目,在repo文件夹下,修改客户端的配置文件configclient-dev.yml,增加如下内容:

app:
  key: '{cipher}5ab3ce1502c40c276074f400aee0be0f6279d6a85bb9d8d315a78c7a91603dde58d4512a6bc9f6492a8eddd34dbeeac0'

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

目、大纲路线、讲解视频,并且后续会持续更新**

需要这份系统化资料的朋友,可以戳这里获取

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值