ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

一线互联网架构师Java框架体系架构!看完跪了

2021-06-30 18:53:22  阅读:120  来源: 互联网

标签:Java s2.51 架构 20210630 https 架构师 cto com 脱敏


### 什么是数据脱敏 先来看看什么是数据脱敏?数据脱敏也叫数据的去隐私化,在我们给定脱敏规则和策略的情况下,对敏感数据比如 `手机号`、`银行卡号` 等信息,进行转换或者修改的一种技术手段,防止敏感数据直接在不可靠的环境下使用。 像政府、医疗行业、金融机构、移动运营商是比较早开始应用数据脱敏的,因为他们所掌握的都是用户最核心的私密数据,如果泄露后果是不可估量的。 数据脱敏的应用在生活中是比较常见的,比如我们在淘宝买东西订单详情中,商家账户信息会被用 `*` 遮挡,保障了商户隐私不泄露,这就是一种数据脱敏方式。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049446731758.jpg) 数据脱敏又分为静态数据脱敏(`SDM`)和 动态数据脱敏(`DDM`): ### 静态数据脱敏 静态数据脱敏(`SDM`):适用于将数据抽取出生产环境脱敏后分发至测试、开发、培训、数据分析等场景。 有时我们可能需要将生产环境的数据 `copy` 到测试、开发库中,以此来排查问题或进行数据分析,但出于安全考虑又不能将敏感数据存储于非生产环境,此时就要把敏感数据从生产环境脱敏完毕之后再在非生产环境使用。 这样脱敏后的数据与生产环境隔离,满足业务需要的同时又保障了生产数据的安全。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049447893113.jpg) 如上图所示,将用户的真实 `姓名`、`手机号`、`身份证`、`银行卡号` 通过 `替换`、`无效化`、`乱序`、`对称加密` 等方案进行脱敏改造。 ### 动态数据脱敏 动态数据脱敏(`DDM`):一般用在生产环境,访问敏感数据时实时进行脱敏,因为有时在不同情况下对于同一敏感数据的读取,需要做不同级别的脱敏处理,例如:不同角色、不同权限所执行的脱敏方案会不同。 **注意**:在抹去数据中的敏感内容同时,也需要保持原有的数据特征、业务规则和数据关联性,保证我们在开发、测试以及数据分析类业务不会受到脱敏的影响,使脱敏前后的数据一致性和有效性。**总之一句话:你爱怎么脱就怎么脱,别影响我使用就行**。 ### 数据脱敏方案 数据脱敏系统可以按照不同业务场景自行定义和编写脱敏规则,可以针对库表的某个敏感字段,进行数据的不落地脱敏。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049447701189.jpg) 数据脱敏的方式有很多种,接下来以下图数据为准一个一个的演示每种方案。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049448687042.jpg) #### 1、无效化 无效化方案在处理待脱敏的数据时,通过对字段数据值进行 `截断`、`加密`、`隐藏` 等方式让敏感数据脱敏,使其不再具有利用价值。一般采用特殊字符(`*`等)代替真值,这种隐藏敏感数据的方法简单,但缺点是用户无法得知原数据的格式,如果想要获取完整信息,要让用户授权查询。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049448570676.jpg) 比如我们将身份证号用 * 替换真实数字就变成了 "220724 ****** 3523",非常简单。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049449938071.jpg) #### 2、随机值 随机值替换,字母变为随机字母,数字变为随机数字,文字随机替换文字的方式来改变敏感数据,这种方案的优点在于可以在一定程度上保留原有数据的格式,往往这种方法用户不易察觉的。 我们看到 `name` 和 `idnumber` 字段进行了随机化脱敏,而名字姓、氏随机化稍有特殊,需要有对应姓氏字典数据支持。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049449532237.jpg) #### 3、数据替换 数据替换与前边的无效化方式比较相似,不同的是这里不以特殊字符进行遮挡,而是用一个设定的虚拟值替换真值。比如说我们将手机号统一设置成 “13651300000”。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049449938680.jpg) #### 4、对称加密 对称加密是一种特殊的可逆脱敏方法,通过加密密钥和算法对敏感数据进行加密,密文格式与原始数据在逻辑规则上一致,通过密钥解密可以恢复原始数据,要注意的就是密钥的安全性。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049449859264.jpg) #### 5、平均值 平均值方案经常用在统计场景,针对数值型数据,我们先计算它们的均值,然后使脱敏后的值在均值附近随机分布,从而保持数据的总和不变。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049450887086.jpg) 对价格字段 `price` 做平均值处理后,字段总金额不变,但脱敏后的字段值都在均值 60 附近。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049450663642.jpg) #### 6、偏移和取整 这种方式通过随机移位改变数字数据,偏移取整在保持了数据的安全性的同时保证了范围的大致真实性,比之前几种方案更接近真实数据,在大数据分析场景中意义比较大。 比如下边的日期字段`create_time`中 `2020-12-08 15:12:25` 变为 `2018-01-02 15:00:00`。 ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049451662182.jpg) 数据脱敏规则在实际应用中往往都是多种方案配合使用,以此来达到更高的安全级别。 ### 最后 如何获取免费架构学习资料? 资料获取方式:点击下方蓝色传送门 ### [Java学习、面试;文档、视频资源免费获取](https://docs.qq.com/doc/DSmxTbFJ1cmN1R2dB) ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049451305044.jpg) ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049451951945.jpg) ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049451141785.jpg) ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049452441049.jpg) ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049452101546.jpg) ![](http://www.icode9.com/i/li/?n=2&i=images/20210630/1625049452267439.jpg) 由于篇幅原因,就不多做展示了

标签:Java,s2.51,架构,20210630,https,架构师,cto,com,脱敏
来源: https://blog.51cto.com/u_15288756/2960585

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有