1. 引言
    密码技术是保护网络与信息系统安全的核心技术,已经广泛应用到金融、能源、通信、交通、水利等各行各业,为国家安全和经济发展发挥重要作用。商用密码应用安全性评估(简称密评),是指在釆用商用密码技术、产品和服务集成建设的网络和信息系统中对密码应用的合规性、正确性和有效性等进行评估。对信息系统开展密评是规范密码应用、维护网络空间安全的基本要求,同时又可促进国产密码在各个行业的广泛应用。

随着应用场景的多元化,对密码算法的性能及安全性需求提出了不同要求,尤其是应用最为广泛的SM4密码算法。例如,网络和通信安全需要采用密码技术对通信过程中的敏感数据做机密性保护,这对SM4算法高性能实现提出了具体需求,否则会对系统的性能造成较明显的损耗,影响网络通信能力。另一方面,多路视频高清和超高清监控数据需要超高性能的密码算法进行保护,否则可能影响方案的可实施性。此外,还有很多行业对加密存储提出了高性能需求。近些年来Intel、AMD等处理器厂商纷纷宣布在其处理器上推出用于AES加解密的AES-NI指令集,这使得采用AES-NI指令集实现AES算法的性能得到进一步提升。目前SM4算法性能与AES算法相比有一定差距,特别是与AES-NI加速指令的差距更加明显,若不尽快补齐性能短板,必将影响国密算法的广泛应用。

  1. SM4算法实现介绍
    SM4分组密码算法是我国的商用分组密码算法,分组长度为128比特,密钥长度也是128比特,加密算法与密钥扩展算法都采用32轮广义Feistel结构进行迭代,解密算法与加密算法的结构相同,只是轮密钥的使用顺序相反。

为了高效地实现SM4算法,国内外众多学者提出了多种软硬件工程实现思路。早期的SM4软件实现方法仅限于查表实现,但因SM4算法架构等因素,其查表实现的性能明显低于AES算法。国内外许多学者尝试采用SIMD技术应用到密码算法的软件快速实现中,例如SSE指令集、AVX指令集等。SIMD可实现一条指令操作多个数据,是CPU基本指令集的扩展,用于提供数据的并行操作,如数字图像处理。学者们将SSE指令与比特切片等技术应用到密码算法以提高算法的实现性能。中科院软件所[1]利用SIMD技术优化实现SM4算法,该方法相比于查表方法,其软件实现性能可以提高85%至138%。北航软件开发环境国家重点实验室 [2]简化S盒,采用比特切片技术,结合AVX指令实现SM4算法的256个分组并行加解密,实现效率提高了43%。2014年,Intel公司[3]提出了基于AES-NI指令集实现SM4的专利,2017年,道里云公司[4]也公开发表了使用AES-NI指令集实现SM4的另一种方案。

另外,也有借助硬件GPU进行SM4加速实现的方案。北京电科院[5]通过研究最优明文数据块、GPU存储类型和线程块对SM4加密的加速比,提出GPU并行SM4加解密方案,将性能提升到25倍左右。中国工业控制系统网络应急响应小组[6]利用CUDA提出了SM4的CPU-GPU方案,并引入页锁内存和CUDA流方案使得SM4的速度提升到88倍左右。以上两篇文章都指出,当明文数据块较小时(如小于8KB),由于CPU和GPU之间的数据交互传输耗时以及小数据包时GPU无法调用全部的计算单元参与运算,使得GPU方案的效率可能不升反降,因此应用场景有一定的局限性。此外,GPU本身的性能也与加速效果强相关。

  1. 10Gb每秒!海泰的新篇章!
    作为一家以密码为基因、以创新为驱动的企业,海泰方圆持续重视研发投入,2022年,公司研发中心和技术体系启新,全新的“密码技术融合创新中心”和“数据智能安全工程中心”隆重启用。公司以密码技术融合创新中心为依托,加速布局密码业务,深化技术创新研究,深耕国密算法高性能实现,基于国内外研究成果进行SM4的软件高性能实现研究。

图1 海泰密码技术融合创新中心和数据智能安全工程中心成立

重点针对CPU流水线和不同类型的SIMD的深入理解和分析,结合SSE、AVX指令集的并行化实现特点以及对SM4性能优化的改善程度,剖析不同工作模式的可并行性以及对并行加解密性能的改善情况,设计出高性能的SM4并行实现方法。此外,设计的SM4高性能实现自适应匹配技术以及内置智能最优解方案模块,可根据监测的CPU架构特征自适应地匹配符合CPU特征的高性能加解密方案,自动快速搜寻局部最优解,使得加解密性能达尽可能达到局部最优。该方案已部署在SM4算法的五种常见工作模式中,在英特尔十一代I5处理器上优化部署后的SM4软件高性能实现方案性能从原有的3.54Gbps(百万比特每秒)提升至7.36Gbps,性能为原方案的2.08倍;在英特尔的十一代I7处理器上进行单线程性能测试,ECB模式的加密和解密速度达到10 Gbps,CTR模式的加解和解密性能不低于9 Gbps,CBC模式和CFB模式的解密性能也都超过9 Gbps,如下图。

图2 海泰SM4高性能密码实现方案的性能

SM4实现方案除了已经支持上述五种常见工作模式之外,其它更多的工作模式也正在全力支持中。此外,在海泰的密码技术融合创新中心,SM4算法高性能实现还在进行持续迭代,多种模式的实验室测试数据均在10 Gbps以上。

  1. 高性能SM4的应用
    在大数据时代,海量数据需要进行安全防护,随着技术的迭代,多种新型存储技术快速发展,传统150MB/s(百万字节每秒)左右存储速度的HDD硬盘已经开始逐渐向更加快速的可达到500MB/s的固态硬盘SSD存储技术转变,甚至PCIe/M.2 SSD的速度范围可以达到1.0GB/s到2.0GB/s。这使得存储技术已不再是制约海量数据安全存储的短板了,而SM4密码算法传统的软件实现方案不足1Gbps(125MB/s),即使高性能硬件加密卡的4Gbps(500MB/s)的加解密速度也只能刚好与普通SSD的性能持平。以上数字都清晰地指出SM4加解密速度已经成为海量数据安全存储的瓶颈,严重制约商密算法的应用,特别是在海量数据安全存储等应用场景。因此,市场迫切需要更高效的SM4算法,避免将国密算法置入性能瓶颈的尴尬之地。

海泰SM4算法的高性能实现,使得单线程的加解密速度可达到10Gbps(1.25GB/s),多线程可达到100Gbps以上,这使得海量数据的安全存储和安全“闪”存得以实现。

此外,几乎所有的数据密集型应用场景都将是海泰高性能SM4算法大显身手之处。当前,移动应用、AI应用、AR/VR、云手机、物联网、车联网等新型应用、智能物联网应用爆发式增长,更加多样化的算力产生在云上,提供个性化服务,改变人们的生活,这些应用场景要求简化现有IT基础架构,优化服务器资源利用率,提高系统可用性,这是海泰密码技术赋能高质量密码供给,确保数据安全的重要应用领域。

与此同时,海泰高性能SM4也与相关密码产品进行对接集成,支持更多的密码产品,为更多的安全产品赋能更高性能的国密算法实现,提供更加完善的安全功能,为云计算、大数据、物联网、移动互联、工业控制、人工智能等领域提供更加完善的安全服务。

  1. 总结与展望
    如今,海泰正全面开展国产密码算法系列的高性能实现,不仅进一步优化SM4算法性能,还在进行SM3算法、SM2算法、SM9算法、ZUC算法的高性能实现,将商密算法的高性能实现延展到国产化平台,助力国产化安全。

参考文献
[1] 郎欢, 张蕾, 吴文玲. SM4的快速软件实现技术[J]. 中国科学院大学学报, 2018, 35(02): 180-187.

[2] 张笑从, 郭华, 张习勇, 等. SM4算法快速软件实现[J]. 密码学报, 2020, 7(06): 799-811. DOI:10.13868/j.cnki.jcr.000407.

[3] Intel. Technologies for modifying a first cryptographic cipher with operations of a second cryptographic cipher. US-2015341168-A1[P]. 2014-05-21.

[4] DaoliCloud Company. Technologies, Methods and Apparatus for Secure and Efficient Implementation of Block Ciphers[R]. Beijing: DaoliCloud Company. 2017-03-10.

[5] 李秀滢, 吉晨昊, 段晓毅, 等. GPU上SM4算法并行实现[J]. 信息网络安全, 2020, 20(06): 36-43.

Li, J., Xie, W., Li, L., Wu, X. (2021). Parallel Implementation and Optimization of SM4 Based on CUDA. In: Chen, B., Huang, X. (eds) Applied Cryptography in Computer and Communications. AC3 2021. Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, vol 386. Springer, Cham. https://doi.org/10.1007/978-3-030-80851-8_7

10Gb每秒!SM4的单核“心”!海泰携手海量数据安全“闪”护相关推荐

  1. 安全 创新 实践|海泰方圆受邀参加“数字时代的网信创新与价值共创”技术交流研讨会

    6月25日,由中关村网络安全与信息化产业联盟主办的数字时代的网信创新与价值共创--"强国复兴有我,喜迎党的二十大"技术交流研讨会顺利举办.海泰方圆受邀参与该活动,并发表了<基 ...

  2. CPU多核心和单核心的区别在哪?

    大家都知道服务器有单核心以及多核心的区别,那么这两个区别大吗?CPU主要功能是解释计算机指令以及处理计算机软件中的数据.CPU由运算器.控制器和寄存器及实现它们之间联系的数据.控制及状态的总线构成.那 ...

  3. 双核心四线程变成单核心单线程,肿么办

    一.事情起因: 在第二遍看操作系统的过程当中,看到了多处理器系统,当时比较好奇.总觉得这个东东应该指的就是我们平时所说的双核.四核.于是乎,百度一下.百度结果如下图所示.好奇心驱使,打开了Win如何开 ...

  4. CPU多核心和单核心有哪些区别?

    最近小编收到蛮多客户在问CPU多核心和单核心的区别大不大,在CPU上该如何做选择,今天简单给大家来说一说,CPU主要功能是解释计算机指令以及处理计算机软件中的数据.CPU由运算器.控制器和寄存器及实现 ...

  5. 新品速递|海泰边缘安全网关护航工控数据采集

    随着"中国制造2025"的推进,传统的OT网络由于物理独立组网所形成的数据孤岛效应,也将在"两化融合"的背景下逐渐被打破,工业互联.云计算.大数据.物联网.移动 ...

  6. 推荐|海泰信创浏览器安全解决方案 全面适配安全可靠

    浏览器是网络安全生态中必不可少的一环,是国家关键领域需要掌握的关键技术.作为海泰方圆数据安全综合解决方案体系中的重要方案,信创浏览器安全解决方案广泛应用于信创.国密改造.政企办公等业务全场景,可对基础 ...

  7. 携手共建安全生态|海泰方圆正式加入申威产业发展联盟

    日前,海泰方圆正式加入申威产业发展联盟,致力于与联盟内的企业携手共进,开启自主创新新篇章. 基于申威平台,海泰方圆自主研发的红莲花国密浏览器率先实现了与申威处理器的兼容适配,为党政军.企业.金融等客户 ...

  8. 社会责任·价值共创,中关村网络安全与信息化产业联盟对话网信企业家海泰方圆董事长姜海舟

    为助力企业品牌宣传.打造网信创新生态.实现产业价值共创,中关村网络安全与信息化产业联盟(以下简称"联盟")组织开展"强国复兴有我,喜迎党的二十大"--社会责任· ...

  9. 2022年密码测评理论与关键技术前沿论坛|海泰方圆分享密码应用改造典型方案

    8月20日,由中国密码学会密码测评专业委员会主办,中国科学院软件研究所承办,海泰方圆协办的中国密码学会2022年密码测评理论与关键技术前沿论坛在京顺利举办.海泰方圆安全研发中心总经理Frank 安发表 ...

最新文章

  1. jenkis编译报错:需要class,interface或enum
  2. blockboard vs canvas
  3. python同时发大量请求_python http服务器,多个同时请求
  4. 漫谈企业级SaaS的多租户设计
  5. jQuery 属性选择器
  6. 231. 2的幂 golang
  7. C# Obsolete
  8. sqoop建表_Sqoop基础教程
  9. go mysql 多并发_MySQL并发处理-Go语言中文社区
  10. 001_深度剖析什么是 SLI、SLO和SLA?
  11. IDEA上传本地项目到SVN
  12. 服务器cpu哪个型号超频,服务器CPU也超频,AMD霄龙性能暴涨1.5倍-控制器/处理器-与非网...
  13. git 公钥提交代码_gitlab上传公钥和项目代码
  14. 【Python实例第19讲】图像分割的谱聚类
  15. 教你免费轻松下载百度文库的文件
  16. linux安装CAS认证服务器
  17. 2023年度深圳市中小试基地认定资助申请指南
  18. 仿蓝色理想网站的导航菜单
  19. 知物由学 | 一文读懂Android资源文件保护
  20. android指南针校准 代码_Android指南针app的实现原理总结

热门文章

  1. (理财一)如何为家庭配置保险
  2. PAT 1089 狼人杀-简单版 C++实现 解题思路
  3. WebRTC-Failed to set remote answer sdp: The order of m-lines in answer doesn‘t match order in offer.
  4. day7.总结 列表、字典
  5. 【算法基础五】通讯录管理系统(自我评价)
  6. 使用阿里云的负载均衡服务器配置流程和配置数据库读写分离配置(全)
  7. 看图识数辨大小,人类独有的“数字感”被机器无意中学习了
  8. 手机与座机号码正则表达式/特殊字符
  9. 佳能3000系列打印机打开打印机wps连接路由器
  10. STM32制作红外遥控和红外接收装置