在数据作为新生产要素的背景下,安全问题变得至关重要,重视数据安全已成为全球趋势。金融数据作为“关键信息基础设施”中的“国家关键数据资源”,守住安全底线不仅十分必要,而且迫在眉睫。
国家“十四五”规划明确提出了强化数字经济安全体系的要求,旨在提升数据安全保障水平,并进一步推动数据安全标准体系建设,规范数据全生命周期管理。2021年,人民银行发布《金融数据安全数据生命周期安全规范》,明确了金融数据生命周期的安全框架,要求金融机构构建涵盖数据采集、传输、存储、使用、销毁全流程的数据安全治理体系。在数据存储阶段,安全挑战尤为突出:数据由动态转为静态,攻击目标更明确且技术难度较低;数据从分散汇集为集中,一旦被攻破,危害范围更广。
前期,人民银行提出了对敏感数据加密存储的要求,强调重要系统需基于商用密码算法实施数据保护。2023年,人民银行在《中国人民银行业务领域数据安全管理办法(征求意见稿)》中进一步明确了数据存储保护的技术措施,并鼓励结合新技术研究更“细粒度加密方式”的创新方案。
当前,缺乏能够兼顾安全与改造成本的解决方案。在此背景下,本文基于机密计算技术开展了金融数据安全存储的研究,借助硬件级安全能力,制定了机密计算安全存储方案,将重要数据、密钥及加解密计算置于安全可信的运行环境中。同时,通过应用探索,为系统提供统一的安全存储基础服务组件,有效保障金融敏感数据在计算和存储状态下的安全。
现有存储加密方案的局限性
目前,业界主要采用两种存储加密方案:应用层加密和磁盘加密。两者均能实现数据加密存储,但在实际应用中存在明显问题。
应用层加密方案的改造工作量大,无论是结合加密机的硬加密方案,还是使用软件加密包的软加密方案,均需对应用进行代码级改造。硬加密方案依赖硬件加密机,在大规模数据存储场景下成本大幅增加;软加密方案的密钥明文暴露在内存中,安全性不足。
磁盘加密方案的主要问题在于防护粒度较粗,仅能防范物理拔盘攻击。一旦内部环境被侵入,恶意人员仍可从应用或系统层面读取明文数据,防护能力有限。
针对上述问题,本文创新性地结合机密计算技术,制定了轻量化、高安全的安全存储方案。
机密计算技术简介
机密计算是一种基于可信硬件的计算模式,通过构建加密、隔离、可验证的计算环境,保护使用中的数据和安全运算过程。其核心依赖于具有通用计算能力的可编程硬件可信执行环境。
当前,主流芯片厂商如Intel、AMD、海光等均推出了机密计算解决方案,包括Intel SGX、AMD SEV、海光CSV、Intel TDX、ARM TrustZone等。国内外大型厂商均在积极布局和探索该技术及应用。
本文基于海光CSV技术路线,CSV是一种安全虚拟化技术,支持在物理节点上创建多个加密虚拟机,其技术框架具有以下特点:
- 资源隔离:CPU使用ASID区分主机和不同CSV虚拟机,每个虚拟机享有独立的Cache、TLB等资源,实现严格隔离。
- 内存加密:通过片内控制器中的高性能SM4加解密引擎自动加密内存数据,密钥由芯片内置安全处理器管理,确保未经授权实体无法访问。
- 启动可度量:CSV虚拟机启动时对加载文件进行动态度量,防止篡改,保证数据完整性。
CSV机密虚拟机可与Kata容器结合,实现机密容器运行模式。在云计算场景中,机密计算能保证租户工作负载对云服务商不透明,有效防范内部恶意访问,增强技术信任。
机密计算安全存储服务方案
技术框架
基于数据安全要求,本文结合机密计算技术和代理网关,设计了机密计算安全存储服务方案。在应用与数据库或文件系统之间增加前置加密模块(部署于机密计算环境),拦截、解析数据并匹配加密策略后对敏感数据进行加密。技术框架主要包括两大模块:
前置加密模块:
- 加密代理:负责协议数据包拦截、解析和转发,匹配预设加密策略。
- 加解密模块:基于国密算法对敏感数据进行加密或解密处理。
管理平台:
- 策略管理:支持字段级细粒度加密策略设置与管理。
- 密钥管理:实现密钥生成、存储、下发和更新等功能。
主要功能点
为满足应用系统加密存储需求,本方案提供了以下核心功能:
加密策略设置:支持两种配置方式:
- 通过管理平台界面手动上传表结构并选择加密策略。
- 通过DDL语句字段备注添加特定标签,自动拦截并动态生成加密策略。
- 密钥更新:支持数据密钥定期更新,采用普通状态和过渡状态双模式,确保服务不间断。提供批量处理工具刷新旧密文数据。
- 模糊查询:支持预设常用模糊查询操作,通过定制化加密算法实现数据拆分加密和密文合成。
- 机密容器:结合CSV和Kata容器技术,保障容器内运算数据安全,同时兼容普通容器接口,无缝对接现有管理引擎。
关键技术点
- 机密计算环境保障:借助硬件芯片安全能力,将敏感数据、算法、密钥及计算过程置于可信环境中,大幅降低泄露风险。
- 代理网关加密架构:采用代理模式解耦业务与加解密逻辑,应用无需代码改造即可实现字段级加密,显著降低改造成本。
应用实践与性能分析
试点应用效果
通过试点应用,本方案在功能、性能、易用性和扩展性方面得到充分验证。应用无需代码改造,仅需修改数据库连接地址指向前置加密模块,即可实现细粒度字段级实时加密存储。前置加密模块无状态设计支持动态扩缩容,扩展性良好。
性能测试分析
为评估性能影响,分别在普通环境和机密计算环境下进行测试:
- 测试方法:使用国密SM4算法加密18字段表,设置加密1–4个字段;通过sysbench工具压测。
- 资源配置:数据库为4C16G,前置加密模块配置为2C8G、4C8G、6C8G。
结果分析:
- 在2C8G配置下,加密1个字段时TPS达2330(QPS为6990),满足大部分应用需求。
- 随着资源配置增加,性能逐步提升,4C8G配置下TPS达4369。
- 机密计算环境性能损耗控制在20%以内,且随资源配置增加而降低:2C配置下损耗15%–20%,4C配置下约15%,6C配置下降至3%以内。
总结与展望
在数据安全备受重视的背景下,本文结合机密计算技术构建了安全存储服务,为应用系统提供轻量化、高安全的基础组件,有效保障金融敏感数据在全流程中的安全。该方案以无感方式实现敏感数据加密存储,并通过可信计算环境保障处理过程安全。试点应用表明,服务具备良好可用性和扩展性。
金融数据关乎国家安全和社会稳定,未来可进一步结合多方安全计算等新技术,构建全密态数据链路,在保障安全的前提下激发数据潜能,助力金融数字化升级。
常见问题
1. 机密计算安全存储方案适用于哪些场景?
该方案适用于对数据安全要求较高的金融、政务等行业,尤其适合需字段级加密且希望最小化应用改造的场景。
2. 应用接入该方案需要哪些改造?
应用无需代码级改造,仅需调整数据库连接配置,指向前置加密模块即可实现透明加密。
3. 密钥更新是否会影响服务连续性?
密钥更新采用过渡状态设计,支持新旧密钥并行使用,确保服务不间断,并提供批量刷新工具。
4. 性能损耗是否在可接受范围内?
测试表明,性能损耗随资源配置优化而降低,在6C配置下仅3%以内,多数场景可接受。
5. 该方案是否支持云环境部署?
是的,机密计算技术尤其适合云计算场景,能有效防范云内部攻击,保障租户数据控制权。
6. 如何保证策略设置的灵活性?
支持手动和自动两种策略配置方式,可通过DDL语句动态生成策略,适应业务变化需求。