(68)对称加密和非对称加密的区别

对称加密和非对称加密,最重要的的区别就是加密算法的不一样:对称加密算法在加密和解密时使用的是同一个秘钥,而非对称加密算法须要两个密钥来进行加密和解密,这两个秘钥是公开密钥(简称公钥)和私有密钥(简称私钥)。算法

加密,须要对加密和解密使用相同密钥的加密算法。因为其速度快,对称性加密一般在消息发送方须要加密大量数据时使用。因此,对称性加密也称为密钥加密。安全

1976年,美国学者Dime和Henman为解决信息公开传送和密钥管理问题,提出一种新的密钥交换协议,容许在不安全的媒体上的通信双方交换信息,安全地达成一致的密钥,这就是“公开密钥系统”。加密

与对称加密算法不一样,非对称加密算法须要两个密钥:公开密钥和私有密钥。公开密钥与私有密钥是一对,若是用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;若是用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。由于加密和解密使用的是两个不一样的密钥,因此这种算法叫做非对称加密算法。3d

对于对称加密,咱们能够用一个例子来形象描述:blog

假如甲和乙是一对生意搭档,他们住在不一样的城市。因为生意上的须要,他们常常会相互之间邮寄重要的货物。为了保证货物的安全,他们商定制做一个保险盒,将物品放入其中。他们打造了两把相同的钥匙分别保管,以便在收到包裹时用这个钥匙打开保险盒,以及在邮寄货物前用这把钥匙锁上保险盒。这就是一个将重要资源安全传递到目的地的传统方式,只要甲乙当心保管好钥匙,那么就算有人获得保险盒,也没法打开。资源

所以这个思想被用到了现代计算机通讯的信息加密中。在对称加密中,数据发送方将明文(原始数据)和加密密钥一块儿通过特殊加密算法处理后,使其变成复杂的加密密文发送出去。接收方收到密文后,若想解读原文,则须要使用加密密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密。get

对称加密工做过程简要示意图:it

而对于非对称加密,一样咱们能够以一个例子来讲明:class

譬如,甲乙之间使用若是以非对称加密的方式完成重要信息的安全传输,那么其步骤以下:密码

一、乙方生成一对密钥(公钥和私钥)并将公钥向其它方公开。

二、获得该公钥的甲方使用该密钥对机密信息进行加密后再发送给乙方。

三、乙方再用本身保存的另外一把专用密钥(私钥)对加密后的信息进行解密。乙方只能用其专用密钥(私钥)解密由对应的公钥加密后的信息。

在传输过程当中,即便攻击者截获了传输的密文,并获得了乙的公钥,也没法破解密文,由于只有乙的私钥才能解密密文。一样,若是乙要回复加密信息给甲,那么须要甲先公布甲的公钥给乙用于加密,甲本身保存甲的私钥用于解密。

如下是非对称加密工做过程简要示意图:

综上所述,对称加密和非对称加密,区别关键是加密密钥的不一样。

 

 

通常来说,一个密码系统(一般简称为密码体制)由五部分组成,如图所示。

  1. 明文空间M,它是全体明文的集合。
  2. 密文空间C,它是全体密文的集合。
  3. 密钥空间K,它是全体密钥的集合,其中每个密钥k均由加密密钥ke和解密密钥kd组成。
  4. 加密算法E,它是一族由M到C的加密变换。
  5. 解密算法D,它是一族由C到M的解密变换。

对于每个肯定的密钥,加密算法将肯定一个具体的加密变换,解密算法将肯定一个具体的解密变换,并且解密变换就是加密变换的逆变换。对于明文空间中的每个明文M,加密算法E在密钥ke的控制下将明文M加密成密文C:
C = E(M, ke)
解密算法D在密钥kd的控制下将密文C解密出同一明文M:
M = D(C, kd) = D(E(M, ke) , kd)
若是一个密码体制的kd = ke,或由其中一个很容易推导出另外一个,则称之为对称密码体制,不然称之为非对称密码体制。若是在计算上kd不能由ke推导出来,这样ke公开也不会损害kd的安全,因而即可以将ke公开,这种密码体制称为公开密钥密码体制。公开密钥密码体制的概念于1976年由Diffie和Hellman提出,它的出现是密码学发展史上的一个里程碑。

相关文章
相关标签/搜索