金融行业专题|超融合对国密卡和国产加密技术的支持能力如何?

目前,不少金融机构都使用国密卡(满足国密算法要求的加密卡)和国产密码解决方案保障金融信息安全。而在传统虚拟化架构下,单块加密卡通常只能服务一个系统,经常会出现资源利用率低、加密处理性能不足等问题,影响业务开展并提升使用成本。

近期,SmartX 与某金融机构开展合作,共同探索超融合信创云基础设施对国产加密技术的支持能力。得益于 SmartX 超融合虚拟化 PCIe 设备虚拟化、VFIO 设备直通,以及对于基于 CPU 实现加密方案兼容适配等技术优势,超融合信创云基础设施不仅可良好对接国密卡、海光 HCT 等国产加密技术,还可进一步优化资源分配,提升加密效率,满足现代金融行业对于加密服务的需求。

本文,我们将简单介绍国产加密技术现状,并分享金融用户基于超融合架构开展的国产加密技术探索。

更多金融用户行业实践与超融合支持能力验证,请下载阅读《金融核心生产业务场景探索合集》系列电子书。

1 国产加密技术:发展、场景与实现

1.1 国产加密技术发展与现状

为了保证金融交易的安全性,国内金融机构曾广泛使用国际通用的商业密码算法对关键数据进行加密。例如传统 SSL 网关技术,就是通过纯软件的方式结合国际商业密码算法实现的。

hci-encryption-adatption-1.png

图 1:传统 SSL 网关系统逻辑架构图

而面对复杂多变的国际形势,密码算法的自主可控能力成为重中之重,加密技术的“国产化转型”也被提上日程——证监会发布的《证券期货业密码应用工作规划(2015-2020 年)》明确强调,证券期货机构需在 2020 年全面应用国产密码技术保护行业信息安全。同时,等保三级标准也对国产密码算法的应用提出了要求,在全栈信创验收中,符合国家密码算法标准也会获得更多的分数。

国产密码算法是指由中国国家密码管理局发布的密码算法标准,旨在保障国家信息安全。目前,国家密码管理局已发布了一系列国产商用密码标准算法,包括 SM1(SCB2)、SM2、SM3、SM4、SM7、SM9 以及祖冲之密码算法(ZUC)等,其中 SM1 和 SM7 对外是不公开的,若想调用则需要通过加密芯片的接口。

1.2 国产加密技术使用场景

国产密码的引入要求通常发生在业务流程的设计和更新阶段,如 CA 证书改造、算法升级改造、支付系统改造、交易系统改造、终端系统改造等场景下,金融机构可能会选择实施符合国密标准的加密算法。这涉及到评估现有系统的加密方案,选择合适的国密算法,以及更新系统以集成新的加密技术。在实施过程中,可能需要进行算法替换、系统测试和性能调优,以及硬件设备、云底座选型以确保业务流程的顺利运行。

常见国产密码场景:

  1. 数据加密:在数据加密传输、加密存储方面,主要通过国产的对称加密算法 SM4 替换 DES/AES 等国际算法。
  2. 身份认证:在防止身份信息被篡改、冒用方面,主要通过国产的非对称加密算法 SM2 替换 RSA 等国际算法。
  3. 消息认证:在保证数据完整性、防止消息被篡改方面,主要通过国产哈希函数算法 SM3 替换 MD5/SHA-256 等国际算法。

除此之外,SM1 算法安全保密强度及相关软硬件实现性能与 AES 相当,主要实现芯片领域的国密替换,ZUC 算法主要用于移动通信加密。

1.3 国产加密技术实现与改造

国产密码算法的实现主要依赖于加密机或加密卡:加密机是一种独立的硬件设备,专门用于执行密钥管理和加密运算,通常被设计来处理高强度的加密任务;加密卡是一种可以插入服务器或其他计算设备的硬件组件,用于执行加密运算和安全密钥管理。与加密机相比,加密卡成本更低、部署更灵活,具备易于扩展、易于集成等优势,在适应性和能效比上也优于加密机,是一种更加实用和经济的加密解决方案。

我们以网上交易系统模块为例介绍下加密卡的使用模式。网上交易系统通常采用账户 + 身份认证口令进行认证,通过单向 SSL 通道进行加密传输,从客户端发出的指令流到达服务端后将根据请求功能的不同把不同的交易指令送达后台系统并转发到交易所和银行。该系统的国产密码改造方案主要是由支持国密算法的协同签名网关结合了数字证书系统和硬件加密卡。架构示意如下所示:

hci-encryption-adatption-2.png

协同签名网关包含了安全认证网关和协同签名服务。其中安全认证网关主要负责客户端的安全接入和通讯数据的加密,协同签名服务以及数字证书系统负责维护客户端身份的安全性。硬件加密卡安装在主板上,为协同签名网关和密钥管理系统提供基础的密码计算和密钥存储服务,应用层通过使用加密卡的驱动程序和接口来调用加密功能。此外,加密卡还提供硬件级别随机数的能力来确保密钥安全。

在进行国密改造时,金融机构需要评估现有系统的加密方案、选择合适的国密算法,以及更新系统以集成新的加密技术。目前,成熟的国产加密解决方案种类繁多,选择哪一种需要根据业务需求和技术对接要求综合评估,涉及到安全性、性能、成本以及与现有系统的兼容性等多个方面的考量。同时,国密改造也可能涉及 IT 基础架构的选型,需充分评估 IT 基础架构的架构统一性、先进性、成熟性、可靠性、规范性、兼容性、扩展性等方面,以确保业务流程的顺利运行。

2 用户实践:验证 SmartX 超融合与国产加密技术的适配效果

为了提升交易系统互联网接入的安全级别,优化密码服务的成本和灵活性,某证券用户针对超融合信创环境下某国产厂商国密卡和海光 HCT(Hygon Cryptographic Technology)技术的适配进行了深入探索

2.1 与某国产国密卡的适配

2.1.1 适配思路

在传统的加密卡应用场景中,通常一台服务器配备的单块加密卡仅服务于一个系统,这种一对一的配置方式在很多情况下会导致资源的低效利用,尤其是当服务器的计算能力和加密需求不是恒定的时候,加密卡的潜能往往无法得到充分发挥。

针对这一问题,SmartX 超融合可通过 PCIe 设备虚拟化技术,即 SR-IOV(Single Root Input/Output Virtualization),来优化资源配置。通过 SR-IOV 技术,一块物理的加密卡能够被分割为多个独立的虚拟加密卡,每个虚拟加密卡都可以分配给不同的虚拟机使用。这种方式不仅显著提升了加密卡的利用率,还增加了系统的灵活性和扩展性。此外,SR-IOV 技术的引入还意味着加密任务可以在多个虚拟环境中并行进行,不仅提高了加密处理的效率,也为加密任务的管理和监控提供了便利。

2.1.2 适配流程

适配的软硬件环境:

  • 某国产厂商加密卡 PCIe v7.x
  • Suma R6240 海光服务器(或者其他适配该加密卡的海光服务器)
  • SMTX OS 5.0.5 及以上版本

服务器 BIOS 配置:

除了常规配置,并特别注意开启以下选项(这些设置对于后续操作至关重要):

  • IOMMU: 设置为 Enabled
  • SR-IOV: 设置为 Enabled

具体适配过程:

1. SMTX OS 安装部署:在海光平台安装 SMTX OS 的主机操作系统,进行 SmartX 超融合集群的常规安装部署,通过 CloudTower 启用节点 IOMMU 特性。2. 国密卡 PF 驱动安装:

  • 首先,将国密卡驱动上传到节点目录,并解压。
  • 执行 pf driver 安装程序。安装完成后,运行 lspci 命令,预期如下输出显示设备列表,其中第一个设备是 PF,其余的设备是 VF。
c1:00.0 Encryption controller: Device 464d:e700 (rev 01)
c1:01.0 Encryption controller: Device 464d:e780 (rev 01)
c1:01.1 Encryption controller: Device 464d:e780 (rev 01)
c1:01.2 Encryption controller: Device 464d:e780 (rev 01)
c1:01.3 Encryption controller: Device 464d:e780 (rev 01)
c1:01.4 Encryption controller: Device 464d:e780 (rev 01)
c1:01.5 Encryption controller: Device 464d:e780 (rev 01)
c1:01.6 Encryption controller: Device 464d:e780 (rev 01)
c1:01.7 Encryption controller: Device 464d:e780 (rev 01)
c1:02.0 Encryption controller: Device 464d:e780 (rev 01)
c1:02.1 Encryption controller: Device 464d:e780 (rev 01)
c1:02.2 Encryption controller: Device 464d:e780 (rev 01)
c1:02.3 Encryption controller: Device 464d:e780 (rev 01)
c1:02.4 Encryption controller: Device 464d:e780 (rev 01)
c1:02.5 Encryption controller: Device 464d:e780 (rev 01)
c1:02.6 Encryption controller: Device 464d:e780 (rev 01)
c1:02.7 Encryption controller: Device 464d:e780 (rev 01)

3. VF 直通到虚拟机:

  • 以 c1:01.1 为例,首先在 Tower 界面查找虚拟机的 uuid,并执行 virsh list 来确定虚拟机的 Id(注意,确保虚拟机已经启动)。
  • 创建 pci.xml 文件,并替换其中的 bus=’0x’ slot=’0x’ function=’0x’ 为对应 c1:01.1 的内容,实现 VF 直通到指定虚拟机。
<hostdev mode='subsystem' type='pci' managed='yes'>
<source>
<address domain='0x0' bus='0xc1' slot='0x01' function='0x1'/>
</source>
</hostdev>
  • 将 VF 直通给该虚拟机
virsh attach-device 1 pci.xml

4. 虚拟机中的驱动安装:

  • 将驱动包上传到虚拟机目录,并进行 vf driver 安装。
  • 执行 lspci 命令,预期如下输出证明安装完成
00:0e.0 Encryption controller: Device 464d:e788 (rev 01)
2.1.3 适配结果

通过与 SmartX 超融合适配,国密卡能够被高效地分配给虚拟机使用。具体来说,一块国密卡通过虚拟化技术最多能够生成 16 个 VF,这些 VF 可以被独立挂载到不同的虚拟机上。用户此前对 SSL 网关进行国密改造采用的是一虚二方式,单块国密卡虚化出两块 VF 分别提供给两台虚拟机使用。SmartX 超融合搭配国密卡的方案,不仅优化了资源的利用率,还显著提升了性价比,使得单一物理设备能够支持更多的虚拟机环境。

在集成国密卡到 SMTX OS 操作系统的过程中,SmartX 研发团队还与加密卡厂商工程师共同定位并解决了在驱动适配中遇到技术问题。此外,针对不同的操作系统,SmartX 工程师还可以按照需求进行专门的驱动适配工作,确保了国密卡在多种 OS 环境下的兼容性。

目前该方案已经完成了对接,在客户环境中进行应用并持续进行更新迭代,在未来 SmartX 超融合更新版本中也将正式加入标准支持功能。

2.2 与海光 HCT 的适配

海光 HCT 是基于密码协处理器和密码指令集自主设计和研发的一套密码算法加速技术软件开发套件,旨在提供软硬件结合的国密算法加密服务。HCT 技术通过在 CPU 中集成专门的加密指令集,能够在不依赖外部硬件模块的情况下,直接利用 CPU 资源高效执行国密算法,具备降低硬件成本、简化系统架构、提高加密处理的效率(可以达到高端物理加密卡性能的 2-3 倍)等优势。

2.2.1 适配思路

通过 Hygon 提供的 CCP* 设备,运行配套提供的 HCT** 加密套件即可实现加密。因此,若想实现 HCT 支持,需要给 host kernel 和 QEMU 打上 Hygon 的 HCT 设备支持 patch,然后将 CCP 设备以 MDEV 的形式透传给虚拟机使用,从而实现在 SMTX OS 上支持虚拟机使用 HCT。*CCP:全称 Crypto Coprocessor,以一种专门用来辅助加密的 co-processor,一般很多加密算法非常复杂,因此也需要硬件的协助来让其变得更加高效。**HCT:基于 CCP 开发的密码加速开发套件。

而 Hygon HCT 设备是作为 QEMU 中的一种 VFIO 设备来实现的。通常用户空间对物理设备的访问都需要经过内核,VFIO 则是一种让硬件设备直接安全地暴露给用户空间的解决方案框架,虚拟机也是利用了这个框架实现的设备透传。

2.2.2 适配流程

采用海光自带的 HCT 加密套件实现对于传输数据的加密,从而避免使用加密卡的方式。业务系统的主要应用场景为 SSL 网关提供服务。

适配的软硬件环境:

  • 海光 7380 CPU
  • 新华三海光芯片服务器(支持 BIOS 版本 2.1.0.4 及以上)
  • SMTX OS 超融合软件

服务器 BIOS 配置:

除了常规配置,需特别注意开启以下选项:

  • HYGON CBS -> NBIO Common Options -> NB Configuration -> IOMMU [Enabled]
  • HYGON CBS -> Moksha Common Options -> SEV-ES ASID Space Limit 1
  • HYGON CBS -> Moksha Common Options -> SMEE Control [Enabled]

具体适配过程:

1. 离线导入安全证书:

(1) 获取芯片的 Chip ID 和证书版本号

$ cd /opt/hygon/bin
$ sudo ./hag general get_id
$ sudo ./hag general hgsc_version

(2) 网站下载证书说明:在可以连接互联网的机器上,访问 https://cert.hygon.cn/hgsc,如下图所示,输入服务器的 Chip ID、证书版本号,以及公司信息。

hci-encryption-adatption-3.png

(3) 导入证书

$ cd /opt/hygon/bin
$ sudo ./hag general hgsc_import -offline -in /realpath/to/hgsc_certchain

说明:将下载的证书拷贝到对应的服务器,证书名称类似为hygon-hgsc-certchain-v1.0-H905P0005040204.bin。如下图,使用 hag 离线导入该证书。

hci-encryption-adatption-4.png

2. 确认证书导入成功

$ cd /opt/hygon/bin
$ sudo ./hag csv platform_status

hci-encryption-adatption-5.png

3. CCP 设备透传

后续更新 kernel 及 QEMU patch ,可以通过后台支持指定 CCP 设备透传,这里对具体步骤不进行赘述。

2.2.3 适配结果

通过 VFIO 方法透传 CCP 设备给到指定虚拟机后,成功实现了在 SmartX 超融合平台虚拟机上支持 HCT。

在这个过程中,SmartX 的技术人员克服了 libvirt 设备识别问题、HCT 套件卡死、内存泄漏等多项技术挑战,仅用两周时间就完成了客户对 HCT 环境的需求交付。同时,实现过程中还排查出 HCT 驱动问题,已反馈海光团队进行修复。

目前该方案已经完成了对接,在客户环境中进行应用并持续进行更新迭代,在未来 SmartX 超融合更新版本中也将正式加入标准支持功能。

3 总结

总体而言,SmartX 超融合信创云基础设施可良好适配国产加密卡和海光 HCT 解决方案,充分利用 SmartX 超融合虚拟化 I/O 加速等技术支持优势和广泛的硬件兼容性,提升资源利用率与加密效率,同时解决适配中遇到的多种技术问题,帮助用户顺利实现国密改造。

除了国密卡和海光 HCT,SmartX 也在协助其他企业用户实现多种国产加密技术(如鲲鹏 KAE)的适配与调优,我们将在未来进一步进行分享。

欲深入了解更多超融合在 TA 注册登记、估值、BI 报表、O32、柜台交易系统等多种金融核心业务系统下的能力表现,欢迎点击链接,免费获取《金融核心生产业务场景探索文章合集》系列电子书。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/652665.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【设计模式】JAVA Design Patterns——Data Transfer Object(数据传递对象模式)

&#x1f50d;目的 次将具有多个属性的数据从客户端传递到服务器&#xff0c;以避免多次调用远程服务器 &#x1f50d;解释 真实世界例子 我们需要从远程数据库中获取有关客户的信息。 我们不使用一次查询一个属性&#xff0c;而是使用DTO一次传送所有相关属性。 通俗描述 使用…

剪画小程序:自媒体创作的第一步:如何将视频中的文案提取出来?

自媒体创作第一步&#xff0c;文案提取无疑是至关重要的一环。 做自媒体之所以要进行文案提取&#xff0c;有以下重要原因&#xff1a; 首先&#xff0c;提高效率。通过文案提取&#xff0c;可以快速获取关键信息&#xff0c;避免在无关紧要的内容上浪费时间&#xff0c;从而…

饮料添加剂新型褪色光照试验仪器太阳光模拟器

太阳光模拟器的定义和功能 太阳光模拟器是一种高科技设备&#xff0c;它可以模拟太阳光的光谱、光强和光照条件&#xff0c;用于实验室环境中对太阳能电池、光电器件以及其他需要太阳光条件的设备和材料进行评估。太阳光模拟器的主要功能包括模拟太阳光的光谱分布、辐照度、光…

OpenCV学习(2.1) 初识图像

1.图像对象 图像是由一个个像素组成的&#xff0c;像素越多&#xff0c;体现到图像就是更加清晰&#xff0c;有更多的细节。举个例子&#xff0c;通常来说的分辨率&#xff0c;1080P&#xff0c;720P&#xff0c;480P就是指像素的数量&#xff0c;数量越多就越清晰。 2.打印图…

打工人好用的大模型问答,还需要一款可靠的文档解析工具

如果说三四年前&#xff0c;我们对AI的展望还停留在科幻片的话&#xff0c;现在&#xff0c;通向AI智能的路径已经初现端倪。各行各业的朋友们不约而同地嗅到了大模型带来的生产方式变革气息。 LLM宣布了AI时代的正式到来。 2022年11月30日&#xff0c;ChatGPT发布&#xff0…

c++(四)

c&#xff08;四&#xff09; 运算符重载可重载的运算符不可重载的运算符运算符重载的格式运算符重载的方式友元函数进行运算符重载成员函数进行运算符重载 模板定义的格式函数模板类模板 标准模板库vector向量容器STL中的listmap向量容器 运算符重载 运算符相似&#xff0c;运…

AI写作工具的革命:AIGC如何提升内容生产效率

AIGC&#xff0c;即人工智能生成内容&#xff0c;是一种新兴的内容生产方式&#xff0c;它利用人工智能技术来自动生成文本、图像、音频、视频等多种形式的内容即进入实际应用层面。 所以AI不再是高深的、让人望尘莫及的算力算法&#xff0c;而是真实地贴近了我们的生活&#…

Java 泛型 <? super T> 中 super 怎么 理解?与 extends 有何不同?

作者&#xff1a;zhang siege 链接&#xff1a;https://www.zhihu.com/question/20400700/answer/91106397 来源&#xff1a;知乎 著作权归作者所有。商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处。 首先&#xff0c;泛型的出现时为了安全&#xff0c;所有与…

经典神经网络(9)VAE模型原理及其在MNIST数据集上的应用

经典神经网络(9)VAE模型原理及其在MNIST数据集上的应用 图片生成领域来说&#xff0c;有四大主流生成模型&#xff1a;生成对抗模型&#xff08;GAN&#xff09;、变分自动编码器&#xff08;VAE&#xff09;、流模型&#xff08;Flow based Model&#xff09;、扩散模型&#…

【最优化方法】实验一 熟悉MATLAB基本功能

实验一  熟悉MATLAB基本功能 实验的目的和要求&#xff1a;在本次实验中&#xff0c;通过亲临使用MATLAB&#xff0c;对该软件做一全面了解并掌握重点内容。 实验内容&#xff1a; &#xff11;、全面了解MATLAB系统 &#xff12;、实验常用工具的具体操作和功能 学习建…

【基础篇-Day8:JAVA字符串的学习】

目录 1、常用API2、String类2.1 String类的特点2.2 String类的常见构造方法2.3 String类的常见面试题&#xff1a;2.3.1 面试题一&#xff1a;2.3.2 面试题二&#xff1a;2.3.3 面试题三&#xff1a;2.3.4 面试题四&#xff1a; 2.4 String类字符串用于比较的方法2.5 String类字…

基坑气膜:建筑工地环保新利器—轻空间

随着城市化进程的加快&#xff0c;建筑行业的飞速发展带来了严重的环境问题&#xff0c;如噪音和粉尘污染&#xff0c;给人们的生活带来诸多不便。为了解决这些问题&#xff0c;建筑行业一直在探索更为环保和高效的施工方式。近年来&#xff0c;基坑气膜技术逐渐崭露头角&#…

【国信华源:以专业服务,协助水利厅抵御强暴雨】

5月18日-19日&#xff0c;广西出现入汛以来最强暴雨天气过程&#xff0c;钦州、防城港、北海、南宁等地出现特大暴雨&#xff0c;多地打破降雨量极值。国信华源技术团队积极行动驻守一线&#xff0c;为打好山洪灾害防御的提前战、主动战提供了技术支撑。 5月17日18时&#xff0…

SOAR-Top 10安全剧本最佳实践-百度网盘下载

概述: SOAR&#xff08;Security Orchestration,Automation and Response安全编排自动化响应&#xff09;&#xff0c;Gartner 对 SOAR 的最新描述性定义&#xff08;摘自 Gartner 报告《Hype Cycle on Threat-Facing Technologies, 2018》) 是&#xff1a;SOAR 是一系列技术的…

基于SpringBoot+Vue在线动漫信息平台设计和实现(源码+LW+部署讲解)

&#x1f339;作者主页&#xff1a;青花锁 &#x1f339;简介&#xff1a;Java领域优质创作者&#x1f3c6;、Java微服务架构公号作者&#x1f604; &#x1f339;简历模板、学习资料、面试题库、技术互助 &#x1f339;文末获取联系方式 &#x1f4dd; &#x1f339;推荐一个人…

使用nexus搭建的nodejs私库,定期清理无用的npm组件,彻底释放磁盘空间

一、背景 昨天我们整理了一篇关于docker私库&#xff0c;如何定期清理以释放磁盘空间的文章。 虽然也提及了npm前端应用的组件该如何定期清理的&#xff0c;本文是对它作一个补充说明。 前文也看到了&#xff0c;npm组件占用的blob空间为180多GB&#xff0c;急需清理。 二、…

K8s证书过期处理

问题描述 本地有一个1master2worker的k8s集群&#xff0c;今天启动VMware虚拟机之后发现api-server没有起来&#xff0c;docker一直退出&#xff0c;这个集群是使用kubeadm安装的。 于是kubectl logs查看了日志&#xff0c;发现证书过期了 解决方案&#xff1a; 查看证书 #…

vue3 部署后修改配置文件

前端项目部署之后&#xff0c;运维可以自行修改配置文件里的接口IP&#xff0c;达到无需再次打包就可以使用的效果 vue2如何修改请看vue 部署后修改配置文件&#xff08;接口IP&#xff09;_vue部署后修改配置文件-CSDN博客 使用前提&#xff1a; vite搭建的vue3项目 使用setu…

IND-ID-CPA 和 IND-ANON-ID-CPA Game

Src: https://eprint.iacr.org/2017/967.pdf

WGCLOUD部署好后,怎么登录WGCLOUD界面

WGCLOUD的server启动完成后&#xff0c;我们在浏览器里输入URL&#xff0c;如下 http://[server主机IP]:9999 注意默认端口就是9999&#xff0c;如果修改过&#xff0c;那么把端口改成自己的实际端口 这样就可以看到登录页面了&#xff0c;默认账号密码是&#xff1a;admin/…