`

部分常见加密算法对比介绍

阅读更多

 

DES

 

 

 

         DES算法为密码体制中的对称密码体制,又被成为美国数据加密标准,是1972年美国IBM公司研制的对称密码体制加密算法。其密钥长度为56位。DES现在已经不被视为一种安全的加密算法,主要因为它使用的56位密钥过短。19991月,distributed.net电子前哨基金会合作,在22小时15分钟内即公开破解了一个DES密钥。

 

 

 

 

 

3DES

 

 

 

3DES(或称为Triple DES)是三重数据加密算法TDEATriple Data Encryption Algorithm块密码的通称。它相当于是对每个数据块应用三次DES加密算法。由于计算机运算能力的增强,原版DES密码的密钥长度变得容易被暴力破解3DES即是设计用来提供一种相对简单的方法,即通过增加DES的密钥长度来避免类似的攻击,而不是设计一种全新的块密码算法。 因为密钥长度增加,安全性比DES有所增强,但是性能有所下降

 

 

 

AES:

 

 

 

         高级加密标准Advanced Encryption StandardAES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院NIST)于20011126日发布于FIPS PUB 197,并在2002526日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。截至2006年,针对AES唯一的成功攻击是旁道攻击美国国家安全局审核了所有的参与竞选AES的最终入围者(包括Rijndael),认为他们均能够满足美国政府传递非机密文件的安全需要。20036月,美国政府宣布AES可以用于加密机密文件。

 

        

 

SM1

 

 

 

         国密 SM1 算法是由国家密码管理局编制的一种商用密码分组标准对称算法。 分组长度和密钥长度都为 128 比 特,算法安全保密强度及相关软硬件实现性能与 AES 相当,该算法不公开,仅以 IP 核的形式存在于芯片中。采用该算法已经研制了系列芯片、智能 IC 卡、智能密码钥匙、加密卡、加 密 机等安全产品,广泛应用于电子政务、电子商务及国民经济的各个应用领域(包括国家政务通、警务通等重要领域)。

 

 

 

SSF33

 

 

 

         SSF33算法是由国家密码管理局编制的一种商用密码分组标准对称算法,分组长度和密钥长度都为 128比特,该算法不公开,仅以 IP 核的形式存在于芯片中。但是SSF33算法性能比较差,因此在实用中,逐步被SM1SM4代替。

 

 

 

MD5算法:

 

 

 

    MD5Message-Digest Algorithm 5(信息-摘要算法 5),用于确保信息传输完整一致。MD5一度被广泛应用于安全领域。但是由于MD5的弱点被不断发现以及计算机能力不断的提升,现在已经可以构造两个具有相同MD5的信息[2],使本算法不再适合当前的安全环境。2004年,王小云证明MD5数字签名算法可以产生碰撞[3]2007年,Marc StevensArjen K. LenstraBenne de Weger进一步指出通过伪造软件签名,可重复性攻击MD5算法[4]。研究者使用前缀碰撞法(chosen-prefix collision),使程序前端包含恶意程序,利用后面的空间添上垃圾代码凑出同样的MD5 Hash值。

 

2008年,荷兰埃因霍芬技术大学科学家成功把2个可执行文件进行了MD5碰撞,使得这两个运行结果不同的程序被计算出同一个MD5[5]200812月一组科研人员通过MD5碰撞成功生成了伪造的SSL证书,这使得在https协议中服务器可以伪造一些根CA的签名。

 

 

 

SHA1/SHA2算法:

 

 

 

    SHA算法是一种能计算出一个数位讯息所对应到的,长度固定的字串(又称讯息摘要)的算法。SHA-1在许多安全协定中广为使用,包括TLSSSLPGPSSHS/MIMEIPsec,曾被视为是MD5(更早之前被广为使用的杂凑函数)的后继者。SHA2包括SHA224SHA-256SHA-384SHA-512。摘要算法运行很快,其中SHA2的性能略低于SHA1

 

 

 

 

 

RSA

 

 

 

         RSA加密算法是一种非对称加密算法。在公钥加密标准电子商业RSA被广泛使用。对极大整数做因数分解的难度决定了RSA算法的可靠性。今天只有短的RSA钥匙才可能被强力方式解破。到2008年为止,世界上还没有任何可靠的攻击RSA算法的方式。只要其钥匙的长度足够长,用RSA加密的信息实际上是不能被解破的。但在分布式计算量子计算机理论日趋成熟的今天,RSA加密安全性受到了挑战。

 

 

 

比起DES和其它对称算法来说,RSA要慢得多。实际上Bob一般使用一种对称算法来加密他的信息,然后用RSA来加密他的比较短的对称密码,然后将用RSA加密的对称密码和用对称算法加密的消息送给Alice

 

 

 

2010年成功分解了RSA-768私钥,2007年使用SNFS分解了1039位长的特殊整数。NIST的说法是,1024位密钥只能使用到2010年底。

 

 

 

ECC

 

 

 

    椭圆曲线密码学Elliptic curve cryptography,缩写为ECC)是基于椭圆曲线数学的一种公钥密码的方法。椭圆曲线在密码学中的使用是在1985年由Neal KoblitzVictor Miller分别独立提出的。

 

ECC的主要优势是在某些情况下它比其他的方法使用更小的密钥——比如RSA加密算法——提供相当的或更高等级的安全。不过一个缺点是加密和解密操作的实现比其他机制花费的时间长。

 

 

SM2算法

 

 

 

         SM2算法是国家密码管理局编制的一种商用密码非对称算法,基于ECC算法。安全性与Nist Prime256相当。与ECC的缺点一样,性能较低。2010年,国密局公开SM2算法。

 

 

 

SM3算法

 

 

 

    SM2算法是国家密码管理局编制的一种商用密码摘要算法,安全性与效率与SHA256相当。2010年,国密局公开SM3算法。

 

分享到:
评论
2 楼 windshome 2013-04-20  
谢谢捧场,这足早先整理的。
1 楼 litaoyan 2013-04-20  
学习了

相关推荐

Global site tag (gtag.js) - Google Analytics