《数据存储加密之方案对比与难点解析.docx》由会员分享,可在线阅读,更多相关《数据存储加密之方案对比与难点解析.docx(5页珍藏版)》请在优知文库上搜索。
1、随着云计算、大数据的快速发展,政府越来越意识到网络、数据安全的巾要性,相应的法律法规不断完善,这其中包括看网络安全法、q网络安全等物保护3、K*.轲*包括客户才华佶名.个人。价和佶用卡佶电.步,2;选撵适合技术方案和加宙靠法作为数据防护是否能绯成功实施的关键,企业需要在关键数据的安全性、保持应用系统的功能可用性.和系统可维护性方面综合考虑.来确定适合企业需要的加密保护的技术方案.下表罗列常用加容技木及应对的安全风险.*A加史文件加交-A*TDB三方加时防止*会具大外起代樨斌去防止4纥M,t取户X收,教修*管MHYYVJVVVV*.i4*KXXYJ据找T8%GMVVV4姑杓化他据“文件”保产XX
2、防止仆软*jf-r-XX磁盘加密磁盘采用的块级别加密技术,例如AWS的EBS,阿里云的ECS等都支持磁盘加密.这种加密最大的好处在于,它对操作系统是透明的。性能在加密后较加密前有所降低,根据上层应用的不同性能下降幅度各异.文件加密通过堆必在其它文件系统之上(如Ext2,Ext3,ReiserFS1JFS等),为应用程序提供透明、动态、高效和安全的加密功能.典型的是用于加密指定的目录。需要关注的是这种加密方式可能会产生较大的性能损失。数据库加密-TDE透明数据加密TDE,是数据库提供的一种加密技术,即对数据文件执行实时I/O加密和解密.数据在写入舷盘之前进行加密,从磁盘读入内存时进行解定.TDE
3、不会增加数据文件的大小,开发人员无需更改任何应用程序。其对应密钥管理也是由数据库提供的APl或组件实现,应用透明.在某些场景下磁盘或系统无法对用户开放(如云环境)的条件下,这种方式就比较适合.数据库加密-三方加固数据库加密还有种方式是采用对数据库进行三方加固的方式,即将第三方专业数据库加密厂商的产品内置在数据库之中,提供透明数据加密能力。所谓透明是指,用户应用系统不需要做改造即可使用,且具有权限的用户看到的是明文数据,完全无感.此外,还可以增强原有数据库的安全能力,如提供三权分立、脱敏展示等.应用展加密应用层加密,可以说是一种终极方案,其可保证在数据到达数据库之前,就已经做了数据加密,可实时保
4、护用户敏感数据.这里关键需要提供应用透明性,保证应用无需改造或仅需少景改造.这种方式完全由用户自己控制,无需信任任何三方厂商提供的数据安全保障,得到充分的自由度和灵活性,例如可以跨多数据库提供统一安全加密策略等.对比几钟方式,应用层加密我据4加密文件M加密4M-步3:保妒好数据的加密密铜为J保护好加密数据,不会被非法窃取.需要保护好数据的加密密钥.避免第三方J商或个人接触到明文数据,最好做法就是将密文数据的密钥控制在用户自己手中。密钥管理包含了招钥的创建、存储生命期管理、保护。密钥的安全性直接决定了加密数据的安全性。建议密钥独立存储,并采用根密的保护,帆密钥受硬件加密卡保护,或者被KMS服务的
5、密玛保护.所谓KMS蟒钥管理,是通过用户的口令保护主密钥,口令正确主密钥价格;主海例对密钥文件进行保护,只有主密例成功解密后,密钥文件才能使用,最后通过密钥文件生成可用的密钊。模A械心机M安全姓冗仝士生机的4*1和公及方全拿41.4用户卜上,用三方无法於得中刎并方做裾选什加解在安全1改好*分!由工方系蝌4KMSI.成和存it宙例.ft+4f5Mf;但不lfrf伪It周网的分项.HW.虫佣枪冷望包的笠仝41由三才保薄方全托管完交由限分IS班宾现b解宏.t用户工透明依ft45tK体椁步实*必要的防数据泄漏指it虽然采取了必要的数据加密措施,但并不能的屈解决来自应用系统环境和运维M境的安全威胁,典型
6、的如来自应用系统的SQ1.注入攻击、后门程序、利用数据库漏洞的攻击行为、第三方运维人员的误操作等。因此需要采用数据库防火墙这样的数据边界防护技术,利用其细粒或的访问控制、防攻击、防批及数据下载等特性,实现有效的防数据维温,步骤5:监拄并审计数据的访问行为一方面,黑齐攻击行为变万化,另一方面,系统的发杂性带来的数据正常维护和管理行为往往也是不可JS期的.因此,需要对重要数据的访问行为采取持续、及时的监控和审计,形成H效的风险报告提供给用户发现新的风险,帮助用户更好地进行数据保护步,6:利用自动脱敏防止常就环境数据淞漏除了生产环境的数据防护外,企业内部测试环境也是一个里要信息泄漏源,特别是需要“抽
7、取“源端生产数据用于测试系统时;利用数据自动脱敏技术可以在有效地保护生产数据的同时,为测试环境提供可用的符合用户预期的测试数据.2.数据存储加密的若干难点应用透明问届在数据存储安全的同时,如何提供如未加密前的使用体验非常也要。这里可总结为对应用的透明性。使用者或应用系统不需要关心系统进行了哪线保护,可完全无感地使用数据。这样的透明性主要体现在以下方面:SQ1.语句透明:如常规的SE1.EeT、UPDATE,INSERT,DE1.ETE等语句可进行操作,应用程序不用作修改即可拥有安全特性。库内计算透明:对于应用透明支持的含义还包括摩内的计算如存储过程和函数透明的支持等)开发接口透明:提供对应用开
8、发接口的全面透明支持,包括:JDBC、ODBC生态工具透明:数据库自身及周边生态工具仍然可以正常使用,厂商编定问题如上面提到的几种加密方式中,存谛层加密、文件层加密会存在完全依赖于底层基础设施厂而(或云厂商)的向地,数据库加密也要部分依赖于数据库厂商或三方安全厂商;上述几种方式都会存在厂商绑定风险,对比而言,应用层加顺相对灵活度地大,可完全从用户角度考虑加密问题,但这一方式必然存在较大投入,如何能做到应用无忌是比校头馋的问题.目前主流有通过数据中间层的方式解决,即在应用与数据库之间构建访问层,将数据加左、解密、脱帔等功能实现其中。对上面的应用提供标准化、透明的数据访问接口,对卜,数据库提供标准
9、规范的安全策略,可不绑定具体产M接入方式问题如前面谈到的应用层加密,也许是个不错的选挣,对应用来讲,最好的透明使用方式是提供出标准的数据库接口服务,当前主流是采用Proxy模式,可以让应用完全无感地使用,但想做到无感,是需要从数据库协议层面仿真模拟,但受限于商业数据库协议的封闭,是存在一定局网的.虽然可以通过如JDBC/Client的方式去做,但这种方式一是无法完全无修,二是会存在更新客户端困难等问题。性能效率向题数据存储安全所涉及的数据加密、解密、脱敏等,势必会影响到应用使用效率,虽然很多产M都号称效率很高,但这个性能精颈是客观存在的,这里首先需要的是正视效率问SS,能客观W估效率差异;此外
10、如何能通过某些方式去扩展计算能力,部分解决效率低下问时也是一种思路.相对而有,采用存储层、文件层方式,可在一定程度上解决此问即,清洗迁移问题针对数据加密,存在一个存求的问即如果是新建项目,完全可以采用全新的数据安全策略,但财于已有项目且存在数据是需要解决数据清洗及迁移问题0针对前者,难点在于如何实现动态清洗,在系统布线的同时,应用可同步处理新旧数据,逐步完成清洗动作.清洗后的解决还需解决数据校验等,确保清洗是准确的,针对后者,在清洗完毕后,需要做应用层面迁移,完全切换回去:这里需就决平滑过度问题及可能出现的回退向翘,针时上述难点,应用层方案,无疑是比较好可以解决此问座的,安全计算问题数据最终是
11、要多马到计算中的,不能因安全需求而影响到计算。对于数据安全计算,取决于其所处的位置任何处.对于存储层、文件层,其位于数据库之下,作为数据计算主体的数据摩是可不掇知的,但对于数据库层和应用层是要解决这一问即,数据经过加密后,会失去其数据特征,这会影响到优化穿、执行器的工作e应用层加密也是同样的.目前存在一些密态计克技术,能在一定程度上解决这一问题.国密算法问愚国密獴法,即国家商用密玛算法,是由国家密码管理局认定和公布的密码算法标准及其应用规范,其中部分密码算法已经成为国际标准。如SH系列密码,SM代表商密.即商业密码,是指用于商业的、不涉及国家秘密的密码技术。之前很多的安全产品(特别是国外产品)
12、是不支持国密算法的,这点是企业在做安全策略时需考虑的问SS,特别是我监管的企业,统一管控问题数据散落在企业各处,提供统一、全局、细粒度的安全管控,包括变朵条件授权等是很有意义的。对于企业可采用统一的数据视角解决安全问超,H前通常的做法是基于不同数据库自己来实现各自安全策略,对客户不拄友好,如能统一处理,非常具有商业意义.针对这点,是需要站在单一产品之上,从数据使用生态标准角度去考虑,数据加密风险数据加密是存在风降的,可能存在加岭后无法还原的风险,通常的做法是使用明文与密文并存方式解决,但由于明文的存在,必然会导致安全14险“目前针对这一问题没有很好的解法,常规的做法就是并存+隔离、小步快跑的策略,用户意JB问这是一个终极问题,由于数据存储安全需求带来的各种问题,环必会影响用户对数据的使用且会存在较大的成本投入及面临风险.因而导致用户整体意愿不高,更多是政策层面的舞动.针对这一问题,一方面要看到数据安全已受到国家层面的关注,是必须要解决的问题:一方面通过技术上的不断完善成熟,加速稳定落地.