PGP协议

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

浅析PGP协议PGP技术PGPPRETTYGOODPRIVACY技术是一种加密电子邮件的技术,加密之后,信息会变成无意义的混乱字符。安全性很高。也可以作为数字签名,确保真实性。PGP可以做成插件,提供给很多应用程序使用,PGP本身就是一个软件。可以永久的擦除文件、文件夹和磁盘空间。PGP不是一种完全的非对称加密体系,它是个混合加密算法,它是由一个对称加密算法(IDEA)、一个非对称加密算法(RSA)、一个单向散列算法(MD5)以及一个随机数产生器组成的,每种算法都是PGP不可分割的组成部分,它集中了的几种加密算法的优点,使它们彼此得到互补。对称、不对称的加密体系有两种加密体系--对称的和不对称的,PGP是基于不对称的加密体系的。对称加密时仅有一个key,双方都用这个key加密和解密。对称加密的算法有:blowfish,Triple-DES,AES(AdvancedEncryptionStandard),CAST(CarlisleAdamsandStaffordTavares),IDEA(InternationalDataEncryptionAlgorithm)。128bit的key足够安全,少于等于56bit的则是易破解的。非对称的加密体系有公钥和私钥,公钥是自由发布的,但是私钥则是接受者秘密保管的。信息是用接收者的公钥加密,但是只有接收者的私钥才能打开。非对称的加密算法有:RSA(Rivest,Shamir,andAdleman)和DH(Diffie-Hellman),2048bit的key足够安全了。RSA算法RSAAlgorithm—Factorization因数分解p,q—primenumbers(secretandnormally100digits);�n=pq,functionΦ(n)=(p-1)(q-1)(that’sthenumberofnumbersthat≤nandprimeton);�Letabiginteger“e”(n,public)be“encryptionindex”thatprimetoΦ(n);�Equationed=1modΦ(n);figureout“decryptionindex”“d”;�X=Plaintext明码whileY=Ciphertext密码;�Encryptionprocess:Y=Xemodn�Decryptionprocess:X=Ydmodn�Keys:(n,e)—publickey,(n,d)—privatekey;�TogetX,havetoget“d”directly,otherwise…RSA算法是一种基于大数不易质因数分解假设的非对称算法。简单地说,就是找到两个很大的质数,一个称之为“公钥”对外公开,另一个称为“私钥”自己保存。这两把密钥组成一个密钥对,用公钥加密的密文可以用私钥解密,反过来也一样。但想由密钥对中的一个推算出另一个是相当困难甚至是不可能的。AES算法AES算法是一种对称加密算法,其加密和解密使用同一把密钥。这个算法在2000年最终被确定并形成标准。当采用128位长度密钥加密数据时,即使用当前世界上最快的计算机运算,也需要约1023年才能破解。对于更重要的数据,还可以采用192位甚至256位的密钥加密。PGP协议格式PGP采用的是一系列混合的公钥加密,包含有对称和非对称的加密方法。邮件信息----128bitkey1,对称加密算法---加密了的邮件体----采用2048bit的接收者的公钥key2,以加密key1----经过加密了的邮件正文和key1,------组装起来----被接受者接收到。PGP的key生成采用IDEA,RSA,SHA-1或MD5,随机数生成器PGP邮件加密以下过程是使用了PGP协议的邮件发送过程。演示Alice如何发邮件给Bob:假定双方为Alice和Bob,双方都持有各自的自由公钥算法所界定的私密密钥SKA和SKB,同时相互持有对方的公钥PKA和PKB。发送方Alice对邮件明文M利用MD5报文摘要算法计算获得固定长度的128bit信息摘要,然后利用其持有的RSA私密密钥SKA对信息摘要签名加密得到H.将H与明文M拼接成M1,注意此时M并没有加密,只对摘要数据加了密。M1经过ZIP压缩后得到压缩文件M1.Z对M1.Z进行IDEA加密运算,IDEA是一种分组对称加密算法,密钥Km长128bit,加密后得到M2。同时使用Bob的RSA公钥PKb对Km加密,得到K''mM2与K''m拼接,再用base64编码,得到一个ASCII码文本。这个文本只含有52个字符、10个数字0~9,和“+、=、/”三个符号。此时可发送到因特网上。接收端bob的动作如下:首先进行base64解码然后用秘密密钥SKb解出IDEA算法的密钥Km,并用Km恢复出M1.Z解压缩还原出M1Bob接着分开明文M和加了密的摘要数据,然后用Alice的公钥PKa解除摘要数据的加密,获得HBob同时要对明文M进行MD5摘要算法运算,运算的结果和H进行比较,如果相同,则证明邮件报文在传递过程中未经改变,邮件确实是Alice发来的。浅析IPSec协议IPSec协议是IETF开发的一组用来保障TCP/IP网络上数据安全传输的协议套件,目前存在多种不同的软件实现与硬件实现方案。IPSec,Linux的2.6版本目前已经内嵌了IPSec的功能。IPSec在IP层上对数据包进行安全处理,提供数据源验证、无连接数据完整性、数据机密性、抗重播和有限业务流机密性等安全服务。IPSec可连续或递归应用,在路由器、防火墙、主机和通信链路上配置,实现端到端安全、虚拟专用网络(VPN)、RoadWarrior和安全隧道技术.由于IPSec在TCP/IP协议的核心层——IP层实现,因此可以有效地保护各种上层协议,并为各种安全服务提供一个统一的平台。IPSec也是被下一代Internet所采用的网络安全协议。IPSec协议是现在VPN开发中使用的最广泛的一种协议,它有可能在将来成为IPVPN的标准。IPSec的基本目的是把密码学的安全机制引入IP协议,通过使用现代密码学方法支持保密和认证服务,使用户能有选择地使用,并得到所期望的安全服务。由于IPSec是一个网络层协议,因此可以当作网络层的一部分来实现。IPSec层需要IP层的服务来构建IP头。IPSec使用AH或ESP协议完成数据包的封装,从而实现数据加密和数据完整性校验.数据包的封装格式支持传输模式和隧道模式,传输模式只为高层协议提供安全服务,隧道模式可以保护整个IP数据包.IPSec协议实施和配置的物理位置有:终端主机之间,安全网关L路由器之间,以及终端主机与安全网关、路由器之间。用户对安全保密的要求和实施的逻辑拓扑结构决定协议实现的模式。IPsec的安全服务是由通讯双方建立的安全联盟(SA)来提供的。SA为通讯提供了安全协议、模式、算法和应用于单向IP流的密钥等安全信息。SA通过安全关联库(SAD)来进行管理。每一个IPsec节点包含有一个局部的安全策略库(SPD)。IPsec系统在处理输入/输出IP流时必须参考该策略库,并根据从SPD中提取的策略对IP流进行不同的处理:拒绝、绕过、进行IPsec保护。如果策略决定IP流需要经过IPsec处理,则根据SPD与SAD的对应关系,找到相应的SA,并对IP包进行指定的IPsec处理。安全联盟是构成IPSec的基础。SA是两个通信实体经协商建立起来的一种协定。它们决定了用来保护数据包安全的IPSec协议、转码方式、密钥以及密钥的有效存在时间等。IPSec的实施必须构建一个SA数据库,由它来维护用来保障数据包安全的SA记录。SAD与SPD存在着密切的对应关系,一条SP对应着一个SA的束(SAbundles),在包处理过程中,可以根据它的目标IP地址、协议类型和SPI在相应策略的SAbundels中查找相符的SA,进行IPsec处理。IPSec在IP层上对数据包进行安全处理,提供数据源验证、无连接数据完整性、数据机密性、抗重播和有限业务流机密性等安全服务。IPSec可连续或递归应用,在路由器、防火墙、主机和通信链路上配置,实现端到端安全、虚拟专用网络(VPN)、RoadWarrior和安全隧道技术。LINUX对内核对IPSEC的支持Linux2.6内核中的IPSec支持机构涵盖并遵循了RFC2401~RFC2406中规定的AH和ESP协议的实现,在内核算法函数库中提供了对HMAC-MD5-96、HMAC-SHA1-96、DES-CBC的支持。由于IPSec协议中的IKE部分需在应用层实现,内核中并未涵括,仅提供了用户空间与内核IPSec的Netlink套接字通信机构,为用户态的IKE提供了调用接口。IPSec协议体系结构IPSec将几种安全技术结合形成一个完整的安全体系,它包括安全协议部分和密钥协商部分。图1IPSEC的协议结构(1)安全关联和安全策略:安全关联(SecurityAssociation,SA)是构成IPSec的基础,是两个通信实体经协商建立起来的一种协定,它们决定了用来保护数据包安全的安全协议(AH协议或者ESP协议)、转码方式、密钥及密钥的有效存在时间等。(2)IPSec协议的运行模式:IPSec协议的运行模式有两种,IPSec隧道模式及IPSec传输模式。隧道模式的特点是数据包最终目的地不是安全终点。通常情况下,只要IPSec双方有一方是安全网关或路由器,就必须使用隧道模式。传输模式下,IPSec主要对上层协议即IP包的载荷进行封装保护,通常情况下,传输模式只用于两台主机之间的安全通信。(3)AH(AuthenticationHeader,认证头)协议:设计AH认证协议的目的是用来增加IP数据报的安全性。AH协议提供无连接的完整性、数据源认证和抗重放保护服务,但是AH不提供任何保密性服务。IPSec验证报头AH是个用于提供IP数据报完整性、身份认证和可选的抗重传攻击的机制,但是不提供数据机密性保护。验证报头的认证算法有两种:一种是基于对称加密算法(如DES),另一种是基于单向哈希算法(如MD5或SHA-1)。验证报头的工作方式有传输模式和隧道模式。传输模式只对上层协议数据(传输层数据)和IP头中的固定字段提供认证保护,把AH插在IP报头的后面,主要适合于主机实现。隧道模式把需要保护的IP包封装在新的IP包中,作为新报文的载荷,然后把AH插在新的IP报头的后面。隧道模式对整个IP数据报提供认证保护。(4)ESP(EncapsulateSecurityPayload,封装安全载荷)协议:封装安全载荷(ESP)用于提高Internet协议(IP)协议的安全性。它可为IP提供机密性、数据源验证、抗重放以及数据完整性等安全服务。ESP属于IPSec的机密性服务。其中,数据机密性是ESP的基本功能,而数据源身份认证、数据完整性检验以及抗重传保护都是可选的。ESP主要支持IP数据包的机密性,它将需要保护的用户数据进行加密后再重新封装到新的IP数据包中。(5)Internet密钥交换协议(IKE):Internet密钥交换协议(IKE)是IPSec默认的安全密钥协商方法。IKE通过一系列报文交换为两个实体(如网络终端或网关)进行安全通信派生会话密钥。IKE建立在Internet安全关联和密钥管理协议(ISAKMP)定义的一个框架之上。IKE是IPSec目前正式确定的密钥交换协议,IKE为IPSec的AH和ESP协议提供密钥交换管理和SA管理,同时也为ISAKMP提供密钥管理和安全管理。IKE具有两种密钥管理协议(Oakley和SKEME安全密钥交换机制)的一部分功能,并综合了Oakley和SKEME的密钥交换方案,形成了自己独一无二的受鉴别保护的加密材料生成技术。Iptables防火墙由netfilter项目组开发Iptables策略是由一组有序的规则建立的,它告诉内核如何处理某些类别的数据包。每一个iptables规则,应用于一个表中的一个链。一个iptabl

1 / 8
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功