如何保证数据传输的安全?

本文探讨了系统安全的重要性,特别是在金融系统中。通过介绍一个逐步加强安全性的架构模型,阐述了如何使用RSA和AES加密来保护通讯报文和敏感字段,以及引入密钥管理系统来集中管理证书,从而提高系统的安全性。文章强调了安全架构的迭代过程,以应对潜在的攻击,并鼓励开发者保持学习和进步。

01. 聊 啥

我们之前分享过应用架构、应用监控、日志归集以及程序员日常内心的那些小揪揪,几乎成了小讲、杂谈的一亩三分地。

说实话,挺神奇,我也不知道每次会给大家带来什么惊喜。今天的分享也不例外,你们肯定也意想不到,今天我分享的主题居然是:矛与盾,如何做好系统之盾;说人话,也就是“聊聊安全架构模型”

吃个核桃,坐稳,扶好,我们开始。

02. 聊 开

一个应用架构的设计肯定离不了安全模块,离开了安全模块设计,相当于系统在裸奔,尤其是金融系统。

站在用户的角度。当我们打开 APP 时,点击购买按钮时,页面会提示购买成功 or 购买失败。站在用户的角度,功能体验就是这么简单。大道至简,简单就是美。

站在系统的角度。司空见惯,我们认为 APP 就是终端,当用户点击购买按钮时,会请求接入层(也认为是安全层),接入层会记录用户关键行为,然后转发业务报文请求业务系统进行业务处理。

640?wx_fmt=png

如上图所示,把系统划分为终端 APP、接入层、业务系统。生产上这么跑的肯定不在少数。

但是有没有考虑过,终端 APP 发过来的报文可信性是较低的,如果报文发生恶意篡改该怎么办?

我们会想到可以针对通讯报文采用 RSA 加密。但是如果只有报文的 RSA 加密,那么所有请求的加密规则都是一样的,所以考虑到双保险,那不妨每次请求的时候动态生成 AES Key,先把报文采用动态生成的 AES Key 进行 AES 加密,然后把 AES Key 采用 RSA 加密传输。此时的架构如下图所示。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值