开发者社区> 问答> 正文

DES算法和RSA算法是什么意思?大神们帮帮忙

DES算法和RSA算法是什么意思?大神们帮帮忙

展开
收起
知与谁同 2018-07-16 19:23:16 2754 0
1 条回答
写回答
取消 提交回答
  • TA有点害羞,没有介绍自己...
    DES是Data Encryption Standard(数据加密标准)的缩写。它是由IBM公司研制的一种加密算法,美国国家标准局于1977年公布把它作为非机要部门使用的数据加密标准,二十年来,它一直活跃在国际保密通信的舞台上,扮演了十分重要的角色[10]。 DES是一个分组加密算法,他以64位为分组对数据加密。同时DES也是一个对称算法:加密和解密用的是同一个算法。它的密匙长度是56位(因为每个第8位都用作奇偶校验),密匙可以是任意的56位的数,而且可以任意时候改变。其中有极少量的数被认为是弱密匙,但是很容易避开他们。所以保密性依赖于密钥。 DES算法是一种分组密码,通过反复使用加密组块替代和换位两种技术,经过16轮的变换后得到密文,安全性很高。DES属于传统的对称密码体制,其加密密钥与解密密钥是相同的,由于其安全性高,计算较简单,所以一度攻获得广泛使用。 DES算法的优点:适用于一对一的信息交换,加密速度快。 DES算法的缺点:密钥的传递和管理困难,不适用于大量用户的情况,因此不适用于EC即电子商务交易中。 RSA加密算法:1978年就出现了这种算法,它是第一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,也很流行。算法的名字以发明者的名字命名:Ron Rivest, AdiShamir 和 Leonard Adleman。但RSA的安全性一直未能得到理论上的证明。 RSA的安全性依赖于大数分解。公钥和私钥都是两个大素数(大于 100个十进制位)的函数据猜测,从一个密钥和密文推断出明文的难度等同于分解两个大素数的积。 RSA 的安全性:依赖于大数分解,但是否等同于大数分解一直未能得到理论上的证明,因为没有证明破解RSA就一定需要作大数分解。假设存在一种无须分解大数的算法,那它肯定可以修改成为大数分解算法。目前, RSA的一些变种算法已被证明等价于大数分解。不管怎样,分解n是最显然的攻击方法。 RSA的速度:由于进行的都是大数计算,使得RSA最快的情况也比DES慢上100倍,无论是软件还是硬件实现。速度一直是RSA的缺陷。一般来说只用于少量数据加密。 RSA的缺点主要有: 1产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次 一密。2 分组长度太大,为保证安全性,至少也要 600 bits 以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。目前,SET(Secure Electronic Transaction)协议中要求CA采用2048比特长的密钥,其他实体使用1024比特的密钥。
    2019-07-17 22:56:52
    赞同 展开评论 打赏
问答分类:
问答地址:
相关产品:
问答排行榜
最热
最新

相关电子书

更多
数据+算法定义新世界 立即下载
袋鼠云基于实时计算的反黄牛算法 立即下载
Alink:基于Apache Flink的算法平台 立即下载