国密算法与国际算法的在线Battle丨正经情报局05期
作者:星期五, 九月 27, 20190

在之前的两期,我们了解了三大加密算法,以及古代一些奇奇怪怪的加密算法。
本期贾博士受邀,要给国产加密算法国密算法与国外加密算法国际算法之间的Battle当裁判。

 
首先给大家介绍一下要比赛的双方~ 
国际算法一般是指以美国为主研制发布的加密算法,如RSA、AES、3DES、SHA-256等加密算法,是现今国际上广泛应用的商用密码算法。然而,国际算法在市场上已经存在几十年,许多算法都被发现了漏洞,存在较高的安全风险。
而当前我国金融系统大多采用国际算法,存在大量的不可控因素,比如留有后门、安全系数过低等,一旦被不法分子利用攻击,所产生的损失将不可估量。

 

因此,为了保障国内商用密码的安全性,国家商用密码管理办公室制定了一套自主可控的国产算法,即国密算法,其中包括SM1、SM2、SM3、SM4、祖冲之密码算法(ZUC)等等。
今天贾博士就以分组密码算法(3DES和SM4)、公钥密码算法(RSA和SM2)、摘要算法(SM3)为例,和大家谈谈国密算法和国际算法的区别。
分组密码算法
国际3DES、国产SM4
     
分组密码,是指将明文数据按固定长度进行分组,然后在同一密钥控制下逐组进行加密,从而将各个明文分组变换成一个等长的密文分组的密码。其中二进制明文分组的长度称为该分组密码的分组规模。

国际分组密码算法中的3DES算法是美国政府采用的一种区块加密标准,用于替代安全性略有不足的DES算法。它进行了DES的3次运算,采用由加密到解密再到加密的方式处理。因此3DES虽然在安全性上较DES有较大的提升,但也导致运算速度变慢,资源消耗也有所增加。
 
2006年我国公布了无限局域网产品使用的SM4密码算法。这是我国第一次公布自己的商用密码算法。  

                                                                                                                   

本节考点
国产SM4算法在计算过程中增加非线性变换,大大提高了其算法的安全性,并且由专业机构进行了密码分析,民间也对21轮SM4进行了差分密码分析,结论均为安全。

(3DES和SM4特性对比图)   
公钥加密算法
国际RSA、国产SM2
 
公钥加密也称非对称加密算法,它使用两个密钥,公钥和私钥,因此称双密钥体制。这两个密钥是数学相关,用某用户密钥加密后得到的信息,只能用该用户的解密密钥才能解密。如果知道了其中一个,并不能计算出另外一个。
这些我们在上上期都有提到,忘记的小伙伴可以去复习一下。

RSA算法于1978年首次发表,是迄今为止最容易理解和实现的公钥算法,其理论基础是一种特殊的可逆模幂运算,其安全性基于分解大整数的困难性。
 
RSA算法既可用于加密,又可用于数字签名,已得到广泛采用,并被许多标准化组织接纳。目前许多国家标准仍采用RSA算法或它的变型。
 
但是此前的棱镜门事件,斯诺登曝出,美国国安局在RSA算法中留有后门,以便美国国家安全局进行监听,得以大量解密网络上之数据

而SM2算法由我国国家密码管理局于2010年12月17日发布,是一种椭圆曲线公钥密码算法。椭圆曲线并不是椭圆,之所以称为椭圆曲线是该方程与计算椭圆周长的方程相似。
 
现今对椭圆曲线研究的时间短,经过许多优秀的数学家的努力,至今一直没有找到亚指数级算法。而由于目前所知求解ECDLP的最好方法是指数级的,这使得我们选用SM2算法作加解密及数字签名时,所要求的密钥长度比RSA要短得多,但安全系数仍然很高
在相同安全性能下,RSA算法所需的公钥数要多于SM2算法,160位的SM2算法与1024位的RSA算法具有相同的安全等级。

国际RSA算法和国产SM2算法对比

本节考点
通过对比,可以看出SM2与RSA算法相比,性能更优也更安全:密码复杂度高、处理速度快、机器性能消耗更小。

                                                                                                                                         
摘要算法
国际MD5、国产SM3
 

摘要函数在密码学中具有重要的地位,此算法适用于商用密码应用中的数字签名和验证,消息认证码的生成与验证以及随机数的生成,可满足多种密码应用的安全需求。

 
2005年,我国密码学家王小云教授等人给出了国际上与SM3类似的摘要算法——MD5算法和SHA-1算法的碰撞攻击方法,现今被广泛应用的MD5算法和SHA-1算法不再是安全的算法。

 

而新兴的SM3密码摘要算法,是中国国家密码管理局2010年公布的中国商用密码杂凑算法标准,是在SHA-256基础上改进实现的一种算法。SM3算法采用Merkle-Damgard结构,消息分组长度为512位,摘要值长度为256位。
SM3算法的压缩函数与SHA-256的压缩函数具有相似的结构,但是SM3算法的设计更加复杂,比如压缩函数的每一轮都使用2个消息字。
本节考点
现今为止,SM3算法的安全性与SHA-256相比,还是相对较高的。
由此可以得出,国密算法可以说是每个点都优于国际算法了,直接三比零KO~

悄悄说一下,北卡科技自主研发的军工级互联网安全通信系统——咔信,就是采用的国密算法,安全性什么的,就不用我多说了吧?

 

申明:本文系厂商投稿收录,所涉观点不代表安全牛立场!


相关文章