关于加密算法和IPSECvpn的理解_一个很简单的加密算法

其他范文 时间:2020-02-28 15:45:51 收藏本文下载本文
【www.daodoc.com - 其他范文】

关于加密算法和IPSECvpn的理解由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“一个很简单的加密算法”。

首先理解加密算法 其次理解DH算法 最后解析ipsecVPN 理解加密算法

一个完整的加密方法由很多因素组成,但是最关键的两个因素是加密算法和密钥。加密算法通常是非常复杂的数学公式,这些公式确定如何将明文转化为密文的运作过程与规则。密钥是一串被加入到算法中的随机比特,若要使两个加密点之间进行加密的通信,必须使用相同的加密算法。而且在某些时候他们需要使用相同的密钥(对称式加密),当然在很多时候两者使用不同的密钥来进行加密或者解密(非对称加密)。下面描述对称式加密算法和非对称式加密算法:

对称式加密

会使用同一把密钥来加密和解密数据。

举一个简单的例子来说明这个问题,就是好比一把锁和一把钥匙,大家都知道,锁门的时候用的时候用哪一把锁头,就要用锁门时用的钥匙来开这一把锁,这就是对称式加密算法。其实对称式加密算法挺简单的,那我们来看一下: 对称式加密算法的优点:   相对非对称加密而言,他的加密速度更快 密钥的位数大的会话很难攻破

对称式加密算法的缺点:  对称式加密算法需要一个安全的机制来分发密钥。为什么呢?因为每一个使用者都需要一对唯一的密钥,因此密钥的数量会随着使用者增加成倍的增加,这对密钥的管理造成了很大难度。 2.使用对称式加密只能保证数据的机密性,也就是说只能保证数据不被看到,但是他不能提供对数据的认证和防抵赖性。什么意思呢?你用对称式加密对数据加密以后,不能保证数据在传输的过程中被更改,也不能确定这数据是不是你需要的那个用户A加密的。对称式加密的标准:des ,3des,aes 非对称式加密

非对称加密算法使用两把不同的密钥,一把叫做公开的密钥,一把叫做私有密钥,那么这两把密钥是不同的密钥,但是他们必须成对使用,如果你用公钥来加密数据,那么只能使用这把公钥对应的私钥来解密,如果用私钥来加密了数据,那么只能使用这把私钥对应的公钥来解密。虽然他们是两把不同的密钥,但是他们之间存在着复杂的数学关联,他们是有关系的,因为加密的过程中,我们使用了两把不同的密钥,所以我们把这种加密方式称之为非对称加密算法。那非对称式加密是怎么用的呢?具体过程中需要注意一些什么呢? 首先要说明一个问题,在非对称加密算法中指的加密还有更深层的意义:   加密这个词包含了对数据提供了机密性

加密这个词包含了如何确保数据的完整性和防抵赖性

以下通过两个例子来说明两个问题:

1.如何利用非对称式秘钥来保证数据的机密性

2.如何利用非对称式密钥来保证数据的完整性和防抵赖性 使用非对称式密钥来保证数据的机密性

第一步:首先在用户A和用户B保存自己使用的公钥和私钥,然后,他们俩将彼此的公钥进行交换,这个过程叫密钥交换。事实上,公钥是可公开的,所以交换公钥不会造成任何安全威胁。注意私钥不能用作公开,交换,或者是网络传递。第二步:经过公开密钥(公钥)的交换后,用户A成功的获得用户B的公钥,然后使用用户B的公钥来加密数据,然后将加密后的数据通过网络传给用户B,此时如果网络上有第三方的窃听者截获了这段加密的数据,他将无法获取数据的内容,因为第三方没有用户B的私钥,使用用户B的公钥加密的数据只有用户B的私钥可解密。用户B的私钥是不可公开的,所以这个过程保障了数据的机密性。

第三步:当数据到达用户B处时,用户B使用自己的私钥解密文件,可读取文件的内容,如果用户B要回送机密消息给用户A则使用用户A的公钥来加密回送文件。

这是一种使用接收方的公钥来加密数据的方式,他的特点如下:

1.能保障消息的私密性,只有接受者可以阅读消息内容,因为只有接收者具备解密的私钥

2.无法提供来源可靠性的认证,因为公钥是可以公开的,任何人都可能得到接收者的公钥,那么如何保障来源的可靠性呢? 第二个例子

用户A要给用户B发送一个文档,但是这个文档不需要太高的机密保障但是绝对不能让人修改,并且要让用户B相信这个文档就是用户A发的,而不是张三李四发的,那这个怎么做呢?用户A可以使用自己的私钥去加密这个文档,注意,用私钥加密,私钥是不会再网络上传输的,其实这个加密的过程,是对数据内容作了一个完整性验证和防抵赖的认证,并不是确保它的私密性。然后在网络上去传输数据,但不会传输私钥。如果网络上有中间人攻击,截获数据,拥有用户A的公钥就可以读到这个文档,因为公钥具有公开性,任何人都可能会获得用户A的公钥,拿到用户A的公钥就可以读到这个文档了。但是读归读,但是你不能修改文档的内容,不能改变一个事实,这个文档是用户A发出来的,现在的电子交易就要用到了这个特性,当用户B收到数据之后拿用户A的公钥解密这个文档,确认文档没有被篡改,也确认是用户A发送的文档。

这是一种使用发送方的私钥来加密数据的方式,它的特点如下:

1,不能保证消息的私密性,被称为公开消息格式。为什么呢?因为每一个具备该公钥的人都可以解密该消息。2,可以保证消息来源的可靠性认证功能,因为发送者使用私钥加密,私钥只有发送者本人具备。而且中间人不能篡改消息,因为他没有发送者的私钥。

注意:在非对称加密过程中,每一种密钥类型都可以用来加密和解密,所以不要误认为公钥只能用来加密,私钥只能用来解密,事实上它们都具有加密和解密的能力,取舍在于你重点需要的是机密性还是完整性。非对称加密的优点

1.与对称加密相比较,有更好的密钥分发功能。为什么呢?只要有证书服务器架构的话,就可以有一台专用的服务器,专门来管理这个公钥,下发和注册以及合法性认证等等。2.比对称式加密更具有扩展性,3.能够提供来源认证和防抵赖性,非对称加密的缺点:

1.非对称加密的速度比对称式加密更慢,有一个问题,无论是用用户A是还是用用户B的公钥来加密,如果是面对海量的数据,采用非对称加密速度不是变的更慢了吗?那怎么办呢?效率会很低,既然效率很低,为什么还用非对称式加密呢?因为非对称式更安全,它的可管理型更好,扩展性更好,它有来源认证,防抵赖性,还可以支持第三方的认证机构。那这个问题如何解决?使用混合的加密方案来解决这个问题。

2.非对称加密算法的数学模型比较复杂。

非对称加密的标准:RSA,ECC,DH,EIGANAL ,DSA等等

混合的加密方案:由于对称式密钥和非对称式密钥各自具备自己的优点和缺点,那最好的一个解决方案是使用混合式加密方案,其实也挺简单的,就是让对称式密钥加密数据,在用非对称式密钥来加密对称式密钥,这样既保证了数据加密的速度,也保证了加密的安全性。既同时使用对称式密钥和非对称式密钥。

理解DH算法:

我们刚才提到了对称式加密的优点是:速度块,即便是有很多的缺点,但是人们在将加密算法直接与数据结合的时候,还是首先选择的是对称式加密,然后用非对称式加密来解决对称式加密的3大缺陷:安全性服务,扩展能力,安全密钥的传送。那这些怎么理解呢?我们首先来回忆一下,混合式加密算法:首先有一个A用户,一个B用户,A用户使用一个对称式加密来加密我们的数据,然后在使用非对称式加密(既使用B的公钥来加密对称式密钥),最后把文件传送到B用户这里,B用户用自己的私钥来解密这个被自己公钥加密的对称式密钥,然后再用对称式密钥来解密数据。那为什么要用对称式密钥加密数据呢?不用非对称式密钥当中的公钥呢?原因很简单,非对称式加密的速度慢,对称式加密的速度快。在实际的解决方案中已经没有使用单纯的加密解决方案,都会使用混合的加密方案。要考虑加密的速度和密钥的管理以及实现更高的安全性都会使用混合式的解决方案。在混合式的解决方案中A如何获得B的公钥,因为公钥是可以公开的,B可以把自己的公钥传给A,但是在混合解决方案中,对数据加密和解密时使用对称式密钥,这个密钥是一样的,那这个对称式密钥,B是如何获得的呢?你又如何去保证加密和解密的数据的密钥是一样的呢?想过这个问题吗?难道是把这个对称式密钥传给对方吗?这样做肯定是不行的。

在很早以前,对称式密钥的发送是一个很大的问题,因为他需要机密的情报人员将密钥送达到目标处,所以咱们看谍战片时,都听说过这样一件事,就是密码本,对端也要用相同的密码本才能够解密数据,万一情报人员被俘虏了,那安全性怎么保障?如果把这个理念用在现今的网络当中,直接在网络上传输这个密码本,那就错上加错了。中间安放协议分析器,就能够解密数据了,所以这个对称式密钥一定不能在网络上传输,所以我们要使用安全的方式将作用于数据的对称式密钥给算出来,这个安全的方式就是迪非-赫尔曼算法,这个算法到底是干嘛的呢?它解决了一个什么问题?解决了使用对称式密钥加密过程中对称式密钥的安全的传送问题,那为什么叫迪非-赫尔曼呢?由两位科学家开发的非对称式算法,DH是一种确保对称式密钥安全穿越不安全网络的方法。就是使用DH算法来保障安全密钥的传送。

在DH算法中,对称密钥是没有在网络中传输的,他是通过初始化发送一个偌大的整数,生成一个随机数和自己的私钥,在使用数学算法生成一个公钥,然后再次交换公钥,然后再次使用第五部的计算最后算出K的值既对称密钥。

第一步:用户A上产生一个大的整数P,并将这个P发送给用户B,用户B上产生一个大整数Q,并把Q发送给对等体A;用户A接受Q生成g;用户B接受P生成g.第二步:用户A生成私钥XA,用户B生成私钥XB 第三步:用户A通过YA=g^XAmodP公式进行计算生成用户A的公钥YA,同理用户B生成公钥YB。此时的用户A和B就分别拥有了自己的公钥和私钥对。

第四步:因为在非对称式加密系统中,公钥是可以公开的,所以用户A和B相互交换彼此的公钥,那么A用户就具备用户B的公钥YB,用户B就具备用户A的公钥YA.第五步:用户A将使用用户B的公钥结合自己的私钥使用公式计算出对称式密钥K,用户B使用相同的公式计算出与用户A相同的对称式密钥K,然后使用密钥K来加密数据。

所谓对称式密钥安全的穿越网络,并不是将对称密钥拿到网络上传输,而是通过上述的DH的算法,在彼此发送一个大的随机数后,接收方计算出对称式密钥。通过这个过程来保障对称密钥安全的穿越网络,只是把对称式秘钥给计算出来,完成公共密钥的交换,但是DH算法不提供加密数字鉴别功能。那这两个功能怎么样提供呢?那就要继续关注DH算法的安全问题了。学习DH算法必须要清晰的知道两点:

1.DH算法的一个目的是用于密钥交换,这里的密钥指的公共密钥的交换,然后经过交换了的公钥,结合自己的私钥在进行取摸运算,双方算出一个K值,也就是我们常说的会话密钥,这个会话密钥是干嘛的?当然是作用于数据的。因为他作用于数据的速度最快,使用对称式密钥加密了数据之后,就可以用B的公钥加密会话密钥,最后会话密钥的传递就会很安全,传到B之后,B就用自己的私钥来解密被他公钥加密的会话密钥也就是对称式密钥解密,然后用对称式密钥来解密数据。这就是一个简单的加密过程。

下来继续关注DH算法的安全问题,这部分内容可以作为补充内容提交给大家。

DH算法的一个特点是A必须要得到B的公钥,B必须得到A的公钥,那用户A敢保证给自己发公钥YB的就是用户B,而不是其他非法用户呢?那如果给A发公钥的是一个黑客,那用户就会和黑客计算对称式秘钥。这个道理很好懂。

其实,即使别人知道P或g,它也很难通过计算来得到对称式秘钥K,因为对大的整数的因式分解非常困难,但是第四步即公钥交换的过程中存在一个安全风险,这个安全风险是,当用户A向用户B发送公钥时被非法用户C截取,同理用户B向用户A发送公钥也被非法用户C截取,此时用户A和用户B都无法成功的收到对方的公钥。对于用户A而言,用户C就伪造为用户B的身份将自己的公钥发送给用户A,用户A误认为非法用户C就是B,所以与用户C形成了对称式秘钥K A,同理B也与用户C形成对称式秘钥KB,那么非法用户C就同时拥有了用户A和B的对称式密钥KA和KB。当用户A和B之间传输数据时,用户C就可以使用对称式秘钥解密数据,这将造成很大的安全风险。

虽然要成功的实施上述关于用户C的欺骗行为很难,但是并不排除发生这种可能性,所以需要一种方法在DH算法过程中交换公钥时对彼此进行身份验证,比如使用数字签名,那么在DH消息交换的过程中,使用RSA来进行数字签名。也就是说数字签名可以向A保证B的身份,能够让A相信,发给我公钥的就是用户B ,而不是其他非法用户,RSA是实现数字签名的方式,同时它还需一种架构来保证彼此公钥的可信的程度。例如我们给淘宝付钱,淘宝要我们加密,我怎么确保我正在使用淘宝的公钥加密,难道不可以是别人的公钥吗?当然我的确是使用淘宝的公钥来加密,数据传送到淘宝那里去的时候,淘宝就可以用自己的私钥来解密,但是我万一加密的是别人的公钥,那你的钱就付到别人那里去了。因为DH只做两样事情:交换秘钥,算出相同的对称式密钥。而这两个过程中是没有保障的,它不能通过某种方式确定对方的身份。所以我们用RSA保障DH算法的过程。

RSA是用于数字签名,秘钥交换和加密的标准,RSA的好处就是RSA即可以用于加密也可以用于数字签名。RSA弥补了DH的无法生成数字签名。ipsec VPN ipsec是iP security的缩写,即IP安全性协议,他是为IP网络提供安全性服务的一个协议的集合,是一种开放标准的框架结构,工作在OSI七层的网络层,它不是一个单独的协议,它可以不使用附加的任何安全行为就可以为用户提供任何高于网络层的TCP/IP应用程序和数据的安全。主要提供如下的保护功能: 1.加密用户数据,实现数据的私密性

2.验证IP报文的完整性,使其在传输的路上不被非法篡改 3.防止如重放攻击等行为

4.即可以确保计算机到计算机的安全,也可以确保两个通信场点(IP子网到子网)的安全 5.使用网络设备特点的安全性算法和秘钥交换的功能,以加强IP通信的安全性需求。6.它是一种VPN的实施方式。

ipsec不是一个单独的协议,它给出了应用于IP层上网络数据安全的一整套体系结构。该体系结构包括认证头协议(AH).封装安全负载协议(ESP),秘钥管理协议(IKE)和用于网络认证及加密的一些算法等。ipsec规定了如何在对等体之间选择安全协议,确定安全算法和秘钥交换,向上提供了访问控制,数据源认证,数据加密等网络安全服务。关于IPSEC的传输模式与隧道模式

ipsec的传输模式:一般为OSI传输层,以及更上层提供安全保障。传输模式一般用于主机到主机的IPsec,或者是远程拨号型VPN的ipsec,在传输模式中,原始的IP头部没有得到保护,因为ipsec的头部插在原始IP头部的后面,所以原始的IP头部将始终暴漏在外,而传输层以及更上层的数据可以被传输模式所保护。注意:当使用传输模式的ipsec在穿越非安全的网络时,除了原始的IP地址以外,在数据包中的其他部分都是安全的。

ipsec的隧道模式:它将包括原始IP头部在内的整个数据包都保护起来,它将产生一个新的隧道端点,然后使用这个隧道端点的地址来形成一个新的IP头部,在非安全网络中,只对这个新的IP头部可见,对原始IP头部和数据包都不可见。在这样的网络环境中,就会在路由器VPNA 和VPNB的外部接口产生一个隧道端点,而他们的接口地址正式这个隧道端点的地址。也是形成IPsec隧道模式中的新IP头部。隧道模式一般应用于连接场到场的ipsec的VPN.1.理解VPN的类型与VPN接入设备 2.简述VPN所使用的协议 3.理解数据机密性,完整性,认证 4.以ipsec的VPN作为重点描述

5.理解ipsec的AH首部与ESP封装安全性载荷 6.理解ipsec的支持的组件 7.简述ipsec的工作过程。

理解VPN的机密性,完整性,认证。机密性是数据私密性。加密方法:

DES:是一种应用很广泛的传统加密算法标准,一种对称式加密算法,DES使用一个56位的秘钥以及8位的奇偶校验位,产生最大64位的分组大小。

3DES:它相当于是对每个数据块执行三次标准的DES加密算法,产生出现3DES加密算法的原因是,现代化计算机的运算能力越来越强,标准的DES加密的密钥长度变得更容易暴力破解。3des的设计用来提供一种相对增加DES的秘钥长度来避免暴力破解的可能性,他不是一种新型的加密算法,而是对DES的加强与扩展,3DES使用3条56位的密钥对数据执行3次加密,它的应用比DES更安全。

AES:它被设计用于替代传统的标准加密算法的标准,AES加密数据块和密钥长度可以是128位,192位,256位中的任意一个。他的安全机制高于DES,3DES.数据完整性:它是用于确保被VPN传递的数据,在传输的过程中,没有被篡改,数据完整性本身并不提供数据机密性保障,数据完整性通常使用HASH算法来确保数据在传输过程中的安全性。简单的说HASH的一个过程

把原始消息+共享安全秘钥放进HASH函数里面生成一个摘要值,然后把这个摘要值附加到原始的消息中,传送给目标,目标将收到的消息加上共享安全秘钥放进HASH函数里生成摘要值,如果生成的摘要值一样,说明数据在传输过程中没有被篡改过,验证就通过了。

首先,HASH是一个不可逆的算法,这就好比把一个完整的水杯摔到地上,虽然地上产生了很多碎片,但是你不可能根据这些碎片重新还原成原始的杯子。在思科的IOS系统中,常使用两种HASH算法,HMAC-MD5和HMAC-SHA-1 HMAC-MD5 :使用128位共享安全秘钥。变长消息和128位共享安全秘钥组合在一起运行HMAC-MD5,它将输出一个128位的哈希值。该值被附加在原始消息的后面发往远端。

HASH-SHA-1:使用160位共享安全秘钥。变长消息和160位共享安全秘钥组合一起运行HMAC-SHA-1,它将输出一个160位哈希值。该值被附加在原始消息的后面发往远端,HAMC-SHA-1安全性高于HMAC-MD5.数据源认证

是指验证VPN的数据发送源,它由VPN的每个端点来完成,以确保与其通信的对端身份,值得注意的是数据源的验证是无法单独实现的,它必须依赖于数据完整性验证。ipsec的传输模式与隧道模式

ipsec的传输模式:首先从网络形状上讲,从这个点出来的数据到这个点收的数据,从信源发出到信宿的接受中间的所有过程都被加密了,我们就叫做传输模式。

ipsec的隧 时没加密,送到了隧道的端点VPNA上面到VPNB的这一段时加密的,到了目标端点解密之后进入这一阶段也没有加密。这是从网络形状上来理解的,那我们从包的封装格式来理解传输模式和隧道模式。

假设一个数据从原发出来,至少有这样的一个部份就是一个目标和原IP地址,后面就是数据,原始的IP头部是没得到保护的,因为ipsec的头部插在原始IP头部的后面,所以原始的iP头部将始终暴漏在外,而传输层以及更上层的数据可以被传输模式所保护。为什么传输模式只保护数据,不保护iP头部呢?其实很简单,传输模式是计算机到计算机的,它必须知道目标和原地址是什么,才可以到达对端。

再看隧道模式:当数据传到隧道的端点,隧道肯定有一个地址,他作了一件事,把IP头部和数据给藏起来了,插入了一个新的IP头部,原iP地址为隧道端点VPNA的iP地址,目标IP地址是VPNB的iP地址。我们来看一下ipsec的重要组件ESP,AH AH认证头部与ESP封装安全性载荷

IPSec使用两种附加的首部AH或者ESP来保障数据的完整性或者私密性,通常AH用来保障数据的完整性,ESP用来保障数据的私密密性;我们可以选择使用AH或者ESP,或者同时使用两者。

AH:认证头部,它使用IP协议号51,它主要提供数据完整性保障,数据验证,保护数据回放攻击。AH功能可以保证整个数据报文的完整性,当然那些易变的字段除外,如ttl值,AH在传输模式与隧道模式下对iP报文的保护情况如下:无论ipsec处于传输模式或者隧道模式,AH都可以保障整个数据报文的完整性。

注意,此时可能会提出一个问题,前面在描述ipsec的传输模式中说道,因为ipsec的头部插在原始ip头部后面,所以原始的ip头部将始终暴漏在外,没有得到保护,可在图中又说,无论ipsec处于传输模式或者隧道模式,AH可以保障整个数据报文的完整性,这不是自相矛盾吗?,前面所提到的原始的iP头部将始终暴露在外,没有得到保护,是指的的可见性。而这里AH指的是数据的完整性。

ESP:封装安全载荷,它使用IP协议50号,ESP提供数据机密性保障,另外,ESP也可以要求接收方主机使用防重放保护功能,通常ESP使用DES,3des,aes完成数据加密。ESP可以独立使用,也可以与AH一起使用,但是同时使用ESP与AH并没有特别的优势,因为ESP具备ipsec所提到的所有功能。包括认证。如果选择了ESP的认证和加密,加密将在认证之前进行,这样做的原因是他可以使接收点主机快速的检测并拒绝重放攻击或者虚假伪造的数据包,在数据解密之前,接收主机可以对发来的数据包进行认证,这样他可以降低被DOS攻击的危险。ESP在传输模式与隧道模式下对IP报文的保护情况如下 iP security 安全关联

安全关联是ipsec保障数据的安全最重要的概念之一,他表示两个ipsec对等体之间的安全策略协定,它描述了对等体如何使用ipsec来保护网络流量。安全对等体两端的SA必须相同,才能完成协商,这好比,生活中某单生意的合同,正常情况下,合同是一式两份,而且两份合同必须相同,注意,ipsec的安全关联SA是一种单向行为,单 往往通信室双向的过程,所以ipsec将为一个完整的通信建立两个SA,一个用于通信的进入,一个用于通信的外出。配置ipsec的变换集,就是配置ipsec安全关联的一种体现。当然安全关联还包括了定义感兴趣的加密流量。理解internet key exchange(IKE)作用

IKE通过提供额外的特性,灵活性和易于配置ipsec的标准,他增加了ipsec的安全性与灵活性,IKE提供了ipsec对等体的验证,协商密钥,保护了ipsec sa的协商,可以说是ipsec的第二重安全保障。

IKE里面声明了加密算法,验证算法,IKE的密钥和DH的版本。还有IKE的生命周期,这里指定的加密算法只保护ipsec协商的过程,ipsec里面指定的加密算法是针对数据的,验证方法同样的是指保护ipsec sa协商过程的验证算法,而ipsec sa中指定的验证算法是针对数据的保护。所以IKE对ipsec的SA作了一次双重保护。IKE的密钥主要用于完成对等体身份的验证,其中包括预共享密钥,RSA签名(数字证书),我们现在只是用预共享密钥。

ipsec sa里面指定的是对数据的加密和验证方案,而IKE是对ipsec sa 协商过程的一种保护行为,那这个协商过程的保护就必然存在对等体的问题,既有一个始发端和接收端,那IKE在协商的过程中,你要保护ipsec sa,就必须要确保接受者是你想要的那个接受者,而不是伪造的。

其实ike策略加密的是一个协商隧道,隧道里面跑的是ipsec sa,IKE隧道所使用验证方法

简述ipsec的过程

1.确定通信双方感兴趣的流量

2.定义完感兴趣流量,首先协商策略,第一个阶段的协商实际上是IKE的协商,首先要建立一个IKE的隧道,IKE的隧道建立是用来干嘛的,为了保护第二阶段ipsec sa的,所以IKE的协商一定是在ipsec sa协商之前完成的。3.IKE阶段2 ipsec sa 实在阶段2完成的,阶段一必须保障二阶段的安全以后,才让2阶段上路,4.安全数据的发送 5.ipsec隧道结束。

下载关于加密算法和IPSECvpn的理解word格式文档
下载关于加密算法和IPSECvpn的理解.doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

    热门文章
      整站推荐
        点击下载本文