寻找薛定谔的猫

导航

 

一、对称加密算法

  对称加密算法采用单密钥加密,在通信过程中,数据发送方将原始数据分割成固定大小的块,经过密钥和加密算法逐个加密后,发送给接收方;接收方收到加密后的报文后,结合密钥和解密算法解密组合后得出原始数据。由于加解密算法是公开的,因此在这过程中,密钥的安全传递就成为了至关重要的事了。而密钥通常来说是通过双方协商,以物理的方式传递给对方,或者利用第三方平台传递给对方,一旦这过程出现了密钥泄露,不怀好意的人就能结合相应的算法拦截解密出其加密传输的内容。

常见的对称加密算法有:

DES:分组式加密算法,以64位为分组对数据加密,加解密使用同一个算法。

3DES:三重数据加密算法,对每个数据块应用三次DES加密算法。

IDEA:分组长度为64比特的分组密码算法,密钥长度为128比特,由8轮迭代操作实现。

RC-5:使用可变参数的分组迭代密码体制,其中可变参数为分组长,密钥长和迭代轮数。

    对称加密算法拥有着算法公开、计算量小、加密速度和效率高的特性,但是也有着密钥单一、密钥管理困难等缺点。

二、非对称加密算法

  非对称加密算法采用公钥和私钥两种不同的密码来进行加解密。公钥和私钥是成对存在,公钥是从私钥中提取产生公开给所有人的,如果使用公钥对数据进行加密,那么只有对应的私钥才能解密,反之亦然。

    非对称加密算法具有安全性高、算法强度负复杂的优点,其缺点为加解密耗时长、速度慢,在某些极端情况下,甚至能比非对称加密慢上万倍,只适合对少量数据进行加密,其常见算法包括:

    RSA:基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥,可用于加密,也能用于签名

三、数字签名和数字摘要

  数字签名一般采用非对称算法。使用发送方的私钥,不具备加密性,因此严格意义上不能称之为加密算法。数字签名可以实现对发送方的身份确认。发送方使用私钥作为数字签名,接收方如果能够使用发送方的公钥解密信息,就能够验证信息来自发送方而不是黑客。常用的数字签名算法有Hash 签名、DSS签名、RSA签名(RSA算法实现数字签名)。

  数字摘要并不是一种加密机制,但却能产生信息的数字"指纹",它的目的是保证信息传输的完整性,确保数据在传输过程中不被篡改。使用数字摘要算法,如MD5(128位)、SHA1(160位)实现。数据在改动前后即使相差一个标点符号,根据这些算法计算出的结果也是完全不同的。由于数字摘要只提取一些特征数据(如MD5只提取128位),大量的数据丢失,因此是不可逆的,无法通过生成的数据摘要恢复出源数据。

四、数字信封

  是一种综合利用了对称加密技术和非对称加密技术两者的优点进行信息安全传输的一种技术。数字信封既发挥了对称加密算法速度快、安全性好的优点,又发挥了非对称加密算法密钥管理方便的优点。

  发送方将原文用对称密钥加密传输,而将对称密钥用接收方公钥加密发送给对方,接收方收到电子信封,用自己的私钥解密信封。

  数字信封的加/解密过程如下图。甲要事先获得乙的公钥。

  ①     甲使用对称密钥对明文进行加密,生成密文信息。

  ②     甲使用乙的公钥加密对称密钥,生成数字信封。

  ③     甲将数字信封和密文信息一起发送给乙。

  ④     乙接收到甲的加密信息后,使用自己的私钥打开数字信封,得到对称密钥。

  ⑤     乙使用对称密钥对密文信息进行解密,得到最初的明文。

五、数字证书和CA机构

  在数字信封技术中,信息传输前甲方要事先获取乙方的公钥,如何验证公钥来自乙方而不是黑客呢?这就需要一种身份验证机制。数字证书绑定了公钥及其持有者的真实身份。它不是数字身份证,而是身份认证机构盖在数字身份证上的一个CA签名。由于数字证书是由权威机构的第三方机构——CA机构(证书授权中心)发行的,因此不必担心此证书来自黑客。 举例:身份证绑定了身份证号和个人的真实身份,它由公安局做担保签发。

posted on 2019-01-03 13:59  teagueli  阅读(784)  评论(0编辑  收藏  举报