1. 小序
随着互联网、物联网的快速生长,,,,,,网络和信息清静事务层出不穷,,,,,,因此信息清静越来越受到天下各国以及各个行业的普遍重视。。。。特殊是在这个云盘算、大数据等新手艺应用快速崛起的时代,,,,,,通过数据挖掘手艺往往可以从海量数据中获取要害信息,,,,,,这对企业和小我私家的信息清静都爆发了严重威胁。。。。
密码学算法是信息清静的焦点手艺和基础支持,,,,,,可以说是整个信息清静的灵魂所在。。。。习近平总书记一经提出过:“焦点手艺是国之重器,,,,,,必需切实提高我国要害焦点手艺立异能力,,,,,,把科技生长自动权牢牢掌握在自己手里,,,,,,为我国生长提供有力科技包管。。。。” 在密码学领域,,,,,,我们国家也在起劲生长自力自主的密码系统,,,,,,其中应用规模最为普遍的国产商用密码(简称国密算法)就是我国密码系统中的主要一环。。。。
经由多年的生长,,,,,,现在支持国密算法的装备,,,,,,从小到TPM/TCM的密码芯片,,,,,,到兼顾本钱与性能的加密卡,,,,,,再到专用的加密效劳器,,,,,,可谓种类繁多。。。。可是这些装备依然保存着性能较差、使用不敷无邪或者本钱较高等缺乏。。。。
上海银娱优越会(以下简称银娱优越会)作为国产芯片厂商的主要一员,,,,,,有责任担负起推广国密算法,,,,,,维护国家和用户信息清静的重任;;;;;同时也为了探索国密算法应用的新途径,,,,,,立异应用的新模式,,,,,,银娱优越会实现了基于CPU的清静、无邪、高效的国密算法加速指令——GMI(Guo Mi Instruction)。。。。本文旨在先容银娱优越会GMI指令的模式、特点,,,,,,并探讨一些基于GMI的可能应用场景。。。。
2. GMI 和相关看法先容
国密算法是指由国家密码治理局公布的一系列密码学算法标准,,,,,,包括SM1、SM2、SM3、SM4、SM7、SM9以及祖冲之密码算法(ZUC)等一系列的密码算法。。。。其中,,,,,,SM1、SM4、SM7以及ZUC属于对称加密算法,,,,,,SM2、 SM9属于非对称密码算法,,,,,,而SM3是密码杂凑算法,,,,,,也即常见的哈希算法。。。。
现在支持国密算法的TPM/TCM等芯片类装备,,,,,,往往受限于本钱而性能较低;;;;;性能较高的加密卡需要高性能的盘算机来配合,,,,,,给用户带来了不小的本钱压力。。。。与此同时,,,,,,经由几代产品的生长,,,,,,银娱优越会CPU的性能有了大幅的提升。。。。为提高密码学相关应用的性能,,,,,,充分使用CPU的盘算能力,,,,,,银娱优越会提出了使用CPU指令来实现国密算法的构想,,,,,,由此设计实现了GMI。。。。
GMI是银娱优越会依据已经果真的国密算法标准而自主设计实现的一组硬件加速指令集。。。。现在已经实现了两条CPU指令,,,,,,划分用于加速国密算法SM3和SM4。。。。其中,,,,,,SM3常用于盘算新闻摘要,,,,,,验签数字署名,,,,,,天生与验证新闻认证码以及爆发随机数,,,,,,可知足多种密码应用的清静需求。。。。SM4是分组密码算法,,,,,,适用于对称加解密等密码应用场景。。。。凭证使用场景的差别,,,,,,SM4又可以有许多的操作模式,,,,,,GMI支持常见的ECB、CBC、CTR、OFB、CFB五种模式。。。。
归纳综合来说,,,,,,得益于CPU的高性能,,,,,,GMI可以为用户带来以下利益,,,,,,或者说GMI具有如下特征:
A.易用性
古板的国密算法的使用方法中,,,,,,较量常见的就是通过软件编程的方法来实现响应的密码算法,,,,,,这通常都需要举行大宗、重大的编程。。。。以OpenSSL为例,,,,,, SM3、SM4的代码量或许在200~300行左右,,,,,,可是在将这些密码算法举行硬件指令化后,,,,,,原本需要使用数百行重大编码才可以实现的算法现在只需要简朴挪用一条硬件指令即可完成响应的操作。。。。这毫无疑问大大简化了操作的重漂后,,,,,,为用户带来了极大的便当性。。。。GMI SM3/4的详细指令代码如下表所示:

同时,,,,,,银娱优越会也对GMI指令举行了封装,,,,,,提供适合上层应用开发使用的API和库,,,,,,便于需要开发上层应用的用户使用。。。。
B.清静性
众所周知,,,,,,无论是在运行之前,,,,,,照旧在运行的历程中, 软件最常遇到的攻击就是被不法改动。。。。使用软件编程实现的密码算法也同样会受到这类威胁。。。。然而硬件则不会保存被改动的危害, 因此在将密码算法硬件固化后, 也就消除了密码算法被不法改动的危害,,,,,,留给攻击者的攻击面也响应减小。。。。并且在密码算法实现硬件化后,,,,,,不止用于实现算法的代码量会变少,,,,,,响应的挪用、使用密码算法的代码量也会随着镌汰,,,,,,这也就意味着在程序中引入bug的几率也会随之大大降低。。。。这些无疑都大大增强了用户程序的结实性。。。。
C.高效性
将密码算法硬件化,,,,,,省去了大宗的软件挪用等系统开销,,,,,,可以使密码算法应用获得极大的性能提升。。。。在将GMI集成到OpenSSL后,,,,,,借助于OpenSSL的speed 测试下令,,,,,,测试了使用GMI和未使用GMI两种方法下的国密算法的性能(单线程),,,,,,对好比下:

图1 SM3性能测试效果

图SM4-ECB 加密性能测试效果
该测试划分对差别长度(16~8192字节)的数据块举行了SM3摘要盘算和SM4-ECB模式的加密盘算。。。。从测试效果的比照可以显着看出,,,,,,使用了GMI硬件加速指令后,,,,,, SM3和SM4的性能较之软件实现都有了重大提升,,,,,,特殊是在处置惩罚大数据块时,,,,,,提升尤其显著。。。。
3. GMI应用
a) SM3的应用
实现了SM3的GMI可用于校验文件的完整性,,,,,,确保使用的文件或软件是没有被攻击者改动过的。。。。现在较量常见的文件校验算法有奇偶校验和CRC校验,,,,,,可是这两种校验都不具有较强的抗数据改动的能力,,,,,,关于凌驾一定位数的改动就无力校验了。。。。然而,,,,,,由于哈希算法的特点,,,,,,SM3则可以校验出恣意长度的改动,,,,,,并且由于其爆发的数据摘要的长度要更长,,,,,,因此更难以爆发碰撞,,,,,,也就越发清静。。。。因此,,,,,,用户只需要挪用GMI的SM3指令盘算所用到的文件/软件的摘要值,,,,,,与文件自带的校验值举行较量,,,,,,就可以磨练出文件是否被改动过,,,,,,从而包管了所用文件/软件的完整性。。。。
别的,,,,,,由于在盘算信息摘要时, 用户所体贴的主要是新闻的完整性,,,,,,而不是神秘性,,,,,,因此,,,,,,在使用性能较低的清静芯片或者加密卡时,,,,,,可以将盘算摘要值的事情交给GMI的SM3指令来完成,,,,,,以获取更高的系统性能。。。。
b) SM4的应用
与其他对称加解密算法一样,,,,,,SM4同样可以用在静态数据加密、传输数据加密以及应用层的数据加密。。。。
i. 静态数据加密
全磁盘加密是对静态数据加密的一个典范应用。。。。顾名思义,,,,,,全磁盘加密就是对磁盘上的所有数据都举行加密存储。。。。存储着小我私家隐私或商业神秘等敏感信息的盘算机装备丧失或者需要维修时,,,,,,若是使用了全磁盘加密的保�;;;;�,,,,,,就可以阻止信息泄露的危害。。。。特殊是关于企业用户来说,,,,,,在装备更新时,,,,,,如那里置旧硬盘上的敏感数据是一个相适时人棘手的问题,,,,,,借助于全磁盘加密,,,,,,只需要将全磁盘加密的加解密密钥销毁,,,,,,即可抵达销毁旧磁盘上敏感数据的目的。。。。同时,,,,,,借助于GMI的加速特征可以让全磁盘加密具有更高的性能,,,,,,大大改善了用户的使用体验。。。。别的,,,,,,在清静可靠的要求下,,,,,,有些行业会对加解密算法有要求,,,,,,好比要求使用SM4算法来加解密系统中的数据。。。。在这种情形下,,,,,,就可以使用GMI的SM4指令替换古板的纯软件实现,,,,,,从而不但能避免算法被改动,,,,,,还能提高运算速率,,,,,,同时还可以知足政策规则的合规要求, 可谓一举三得。。。。
ii. 传输数据加密
另一个对称加解密的常用领域是对传输中的数据加以保�;;;;ぁ�。。。好比在使用HTTPS会见网站时,,,,,,在完成最初的密钥交流后,,,,,,客户与Web Server之间就使用对称加密算法来保�;;;;に降氖荽洹�。。。另外,,,,,,在云盘算领域,,,,,,生涯在云情形中的数据或涉及小我私家隐私,,,,,,或涉及企业商业神秘,,,,,,用户对这些数据的神秘性格外体贴,,,,,,这种情形下,,,,,,就需要在将数据加密后再通过网路传输到云中。。。。这样,,,,,,数据不但可以确保云情形中数据的神秘性,,,,,,还可以确保数据在网络传输历程中的神秘性。。。。此时,,,,,,若是能够在浏览器或者云的客户端支持GMI SM4硬件加速指令,,,,,,显然可以知足用户对数据传输的清静性要求。。。。
iii. 应用层数据加密
在应用层的数据加密中,,,,,,数据库是一个典范的应用场景。。。。众所周知,,,,,,常见的数据库都支持一种称为透明数据加密(TDE)的清静特征。。。。这种特征可以将数据库的内容整体加密。。。。其中所用到的三个加密中有两个属于对称加密:效劳主密钥(Service Master Key)和数据加密密钥(Data Encryption Key)。。。。这些都可以使用到GMI SM4的硬件加密指令。。。。
4. 未来事情
未来我们还会继续富厚GMI的指令集,,,,,,好比实现对SM2/SM9等国密算法的支持。。。。同时也会一直的完善现有的GMI指令,,,,,,好比完善SM4对GCM/XTS等模式的支持,,,,,,使其具有更高的性能,,,,,,顺应更普遍的应用领域。。。。另外,,,,,,为了利便用户使用,,,,,,将GMI逐步适配诸如OpenSSL的主流密码应用平台,,,,,,起劲推广国密算法的应用。。。。
5. 竣事语
本文以信息清静中的要害手艺——密码算法的硬件加速实现为主线,,,,,,先容了银娱优越会基于CPU的GMI国密算法硬件加速指令的模式、特点以及应用,,,,,,希望能资助用户开发出越发无邪高效的清静应用解决计划。。。。最后先容了银娱优越会GMI的未来的事情,,,,,,希望能够支持更多的国密算法指令和更富厚的运算模式,,,,,,为用户提供更高性能、更高清静性的产品。。。。
参考文献:
1 邓宇珊.探讨云盘算之完全问题[J].网络空间清静,2018年第9期:78~81.
2 徐树民,等.国产算法清静芯片与市场应用[J].信息清静与通讯保密,2012年2月:36~38.
3 李芳芳.国产密码行业应用的起源研究和探索[J].金融科技时代,2016年第9期:28~33.
4 蔡成杭.支持国产密码算法的OpenSSL设计实现及应用[J].信息清静研究,2018年第2期:115~132.
5 王良田.数据存储及码流数据传输中的国密算法清静应用[J].电子天下,2019年1月:161~163
作者简介:
薛刚汝(1981- ),,,,,,男,,,,,,汉族,,,,,,山东蒙阴人,,,,,,哈尔滨工业大学,,,,,,硕士,,,,,,工程师,,,,,,主要研究偏向和关注领域:信息清静,,,,,,可信盘算,,,,,,虚拟化手艺。。。。