网络安全协议实用培训资料

上传人:张姑****py 文档编号:243747441 上传时间:2024-09-30 格式:PPT 页数:39 大小:86.50KB
返回 下载 相关 举报
网络安全协议实用培训资料_第1页
第1页 / 共39页
网络安全协议实用培训资料_第2页
第2页 / 共39页
网络安全协议实用培训资料_第3页
第3页 / 共39页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,网络安全协议,授课教师:董晓慧,Email:,为什么需要协议?,密码学的用途是解决种种难题。,密码学解决的各种难题围绕机密性、鉴别、完整性和不诚实的人。,你可能了解各种算法和技术,但除非它们能够解决某些问题,否则这些东西只是理论而已。,课程介绍,密码协议,网络安全应用:Kerberos、PGP、S/MIME、IPSec、SSL/TLS和SET等,系统安全:网络入侵、恶意软件和防火墙等。,参考书籍,应用密码学,(美)Bruce Schneier 著,吴世忠等译,机械工业出版社,网络安全基础,Williams Stallings 著,白国强 等译,清华大学出版社,第一章 协议结构模块,1.1 协议概述,什么是协议,一系列步骤,它包括两方或多方,设计它的目的是要完成一项任务。,协议的特点,协议中的每个人都必须了解协议,并且预先知道所要完成的所有步骤,协议中的每个人都必须同意并遵循它,协议必须是清楚的,每一步必须明确定义,并且不会引起误解,协议必须是完整的,对每种可能的情况必须规定具体的动作,协议的目的,计算机需要正式的协议来完成人们不用考虑就能做的事情。,保证公平和安全,根据完成某一任务的机理,协议抽象出完成此任务的过程。,密码协议,使用密码学的协议。,参与该协议的伙伴可能是朋友和完全信任的人,或者也可能是敌人和互相完全不信任的人。,协议中的角色,为了帮助说明协议,列出了几个人作为助手。,Alice和Bob是开始的两个人,他们将完成所有的两人协议。,按规定,由Alice发起所有协议,Bob响应。,如果协议需要第三或第四人,Carol和Dave将扮演这些角色。,由其他人扮演的专门配角,将在后面介绍。,剧中人,人名,角色,Alice,所有协议中的第一个参加者,Bob,所有协议中的第二个参加者,Carol,三、四方协议中的参加者,Dave,四方协议中的参加者,Eve,窃听者,Mallory,恶意的主动攻击者,Trent,值得信赖的仲裁者,Walter,监察人:在某些协议中保护Alice和Bob,Peggy,证明人,Victor,验证者,仲裁协议,仲裁者是在完成协议的过程中,值得信任的公正的第三方。,“公正”意味着仲裁者在协议中没有既得利益,对参与协议的任何人也没有特别的利害关系。,“值得信任”表示协议中的所有人都接受这一事实,即仲裁者说的都是真实的,他做的是正确的,并且他将完成协议中涉及他的部分。,仲裁者能帮助互不信任的双方完成协议。,例1:Alice要卖汽车给不认识的Bob,Bob想用支票付账,但Alice不知道支票的真假。在Alice将车子转给Bob前,他必须查清支票的真伪。同样,Bob也并不相信Alice,就像Alice不相信Bob一样,在没有获得所有权前,也不愿将支票交给Alice。这时就需要双方信任的律师,在律师的帮助下,Alice和Bob能够用下面的协议保证互不欺骗。,Trend,Alice,Bob,(1)Alice将车的所有权交给律师,(2)Bob将支票交给Alice,(3)Alice在银行兑现支票,(4)在等到支票鉴别无误能够兑现的时间之后,律师将车的所有权交给Bob。如果在规定的时间内支票不能兑现,Alice将证据出示给律师,律师将车的所有权和钥匙还给Alice。,例2:银行也使用仲裁协议。Bob能够用保付支票从Alice手中购买汽车:,(1)Bob开一张支票并交到银行。,(2)在验明Bob的钱足以支付支票上的数目后,银行将保付支票交给Bob。,(3)Alice将车的所有权交给Bob,Bob将保付支票交给Alice。,(4)Alice兑现支票。,裁决协议,由于雇用仲裁者代价高昂,仲裁协议可以分成两个低级的子协议,一个是非仲裁子协议,执行协议的各方每次想要完成的;,另一个是仲裁子协议,仅在例外的情况下,既有争议的时候才执行,这种特殊的仲裁者叫做裁决人。,合同-签字协议可以归纳为下面的形式,非仲裁子协议(每次都执行):,Alice和Bob谈判合同的条款,Alice签署合同,Bob签署合同,裁决子协议(仅在有争议的时候执行),Alice和Bob出现在法官面前,Alice提出他的证据,Bob也提出他的证据,法官根据证据裁决,裁决者和仲裁者的不同:裁决者不总是必需的。,对协议的攻击,密码攻击可以直接攻击协议中所用的密码算法,或用来实现该算法和协议的密码技术,或攻击协议本身。,我们仅讨论最后一种情况,假设密码算法和密码技术都是安全,只关注对协议本身的攻击。,被动攻击,与协议无关的人能够窃听协议的一部分或全部,因为攻击者不可能影响协议,所以他能做的事是观察协议并试图获取消息。,主动攻击,可能改变协议以便对自己有利。,可能假装是其他一些人,在协议中引入新的消息,删除原有的消息,用另外的消息代替原来的消息,重放旧的消息,破坏通信信道,或者改变存储在计算机中的消息等;,他们具有主动的干预。,1.2 使用对称密码学通信,通信双方怎样安全地通信呢?当然,他们可以对通信加密。,(1)Alice和Bob协商用同一密码系统。,(2)Alice和Bob协商同一密钥。,(3)Alice用加密算法和选取的密钥加密他的明文消息,得到了密文消息。,(4)Alice发送密文消息给Bob。,(5)Bob用同样的算法和密钥解密密文,然后读它。,对称密码算法存在下面的问题,密钥必须秘密地分配,它们比任何加密的消息更有价值,因为知道了密钥意味着知道了所有消息。,如果密钥被损害了(被偷窃,猜出来,被逼迫交出来,受贿等等),那么Eve就能用该密钥去解密所有传送的消息,也能够假装是协议的一方,产生虚假消息去愚弄另一方。,假设网络中每对用户使用不同的密钥,那么密钥总数随着用户数的增加迅速增多。,1.3 单向函数,单向函数本身并不是一个协议,但对本书所要讨论的大多数协议却是一个基本结构模块。,单向函数计算起来相对容易,但求逆却非常困难,已知,x,,很容易计算,f(x),,但已知,f(x),,却难于计算,x,很好的例子:打碎盘子,陷门单向函数,有一个秘密陷门的一类特殊的单向函数。,在一个方向上易于计算而反方向却难于计算;但是如果知道那个秘密,就能很容易在另一个方向上计算出这个函数。,1.4 单向散列函数,单向散列函数有很多名字:压缩函数、收缩函数、消息摘要、指纹、密码校验和、信息完整性检验,操作检验码,是现代密码学的中心,是许多协议的另一个结构模块。,散列函数把可变输入长度串(叫做预映射)转换成固定长度(经常更短)输出串(叫做散列值)的一种函数。,简单的散列函数就是对预映射的处理,并且返回由所有输入字节异或组成的一字节。,消息鉴别码,消息鉴别码(Message Authentication Code,MAC)也叫数据鉴别码(DAC),它是带有秘密密钥的单向散列函数。散列值是预映射的值和密钥的函数。,在理论上,与散列函数一样,只有拥有密钥的某些人才能验证散列值。,1.5 使用公开密钥密码学通信,公开密钥密码学(,public-key cryptography,),使用两个不同的密钥,一个是公开的,另一个是秘密的。,从公开密钥很难推断出私人密钥。,持有公开密钥的任何人都可加密消息,但却不能解密,只有持有私人密钥的人才能解密。,例:下面描述Alice怎样使用公开密钥密码,发送消息给Bob,(1)Alice和Bob选用一个公开密钥密码系统;,(2)Bob将他的公开密钥传送给Alice;,(3)Alice用Bob的公开密钥加密他的消息,然后传送给Bob;,(4)Bob用他的私人密钥解密Alice消息。,一般的说,网络中的用户约定一公开密钥密码系统,每一用户有自己的公开密钥和私人密钥,并且公开密钥在某些地方的数据库中都是公开的。,这个协议就更容易了,(1)Alice从数据库中得到Bob的公开密钥。,(2)Alice用Bob的公开密钥加密消息,然后送给Bob。,(3)Bob用自己的私人密钥解密Alice发送消息。,混合密码系统(,Hybrid Cryptosystems,),在大多数实际的实现中,公开密钥密码用来保护和分发会话密钥(session key),这些会话密钥用在对称算法中,对通信消息进行保密,有时称这种系统为混合密码系统。,例,:,(1)Bob将他的公开密钥发给Alice。,(2)Alice产生随机会话密钥K,用Bob的公开密钥加密,并把加密的密钥E,b,(K)送给Bob.,(3)Bob用他的私人密钥解密Alice的消息,恢复出会话密钥:D,B,(E,B,(K)=K,。,(4)他们两人用同一会话密钥对他们的通信消息进行加密。,1.6 数字签名,在文件上手写签名长期以来被用作作者身份的证明,或至少同意文件的内容,为什么?,签名是可信的。签名使文件的接收者相信签名者是慎重地在文件上签字的。,签名不可伪造。签名证明是签字者而不是其他人慎重地在文件上签字。,签名不可重用。签名是文件的一部分,不法之徒不可能将签名移到不同的文件上。,签名的文件是不可改变的。在文件签名后,文件不能改变。,签名是不可抵赖的。签名和文件是物理的东西。签名者事后不能声称他没有签过名。,使用对称密码系统和仲裁者对文件签名,Trent是一个有权的、值得依赖的仲裁者。他能同时与Alice和Bob(也可以是其他想对数据文件签名的任何人)通信。他和Alice共享秘密密钥K,A,,和Bob共享另一个不同的秘密密钥K,B,。,签名过程如下,(1)Alice用K,A,加密她准备发送给Bob的消息,并把它传送给Trent。,(2)Trent用K,A,解密消息。,(3)Trent把这个解密消息和他收到Alice消息的声明,一起用K,B,加密。,(4)Trent把加密的消息包传给Bob。,(5)Bob用K,B,解密消息包,他就能读Alice所发的消息和Trent的证书,证明消息来自Alice。,使用公开密钥密码术对文件签名,有几种公开密钥算法能用作数字签名。在某些算法中,例如RSA,公开密钥或者私人密钥都可用作加密。用你的私人密钥加密文件,你就拥有安全的数字签名。在其他情况下,如DSA,算法便区分开来了数字签名不能用于加密。,签名过程如下,(1)Alice用她的私人密钥对文件加密,从而对文件签名。,(2)Alice将签名的文件传给Bob。,(3)Bob用Alice的公开密钥解密文件,从未验证签名。,使用公开密钥密码学和单向散列函数对文件签名,在实际的实现过程中,采用公开密钥密码算法对长文件签名效率太低,为了节约时间,数字签名协议经常和单向散列函数一起使用。,签名过程,(1)Alice产生文件的单向散列值。,(2)Alice用她的私人密钥对散列加密,凭此表示对文件签名。,(3)Alice将文件和散列签名送给Bob。,(4)Bob用Alice发送的文件产生文件的单向散列值,然后用数字签名算法对散列值运算,同时用Alice的公开密钥对签名的散列解密。如果签名的散列值与自己产生的散列值匹配,签名就是有效的。,1.7 带加密的数字签名,通过把公开密钥密码和数字签名结合起来,能够产生一个协议,可把数字签名的真实性和加密的安全性合起来。,例:想象你妈妈写的一封信:签名提供了原作者的证明,而信封提供了秘密性。,(1)Alice用她的私人密钥对消息签名:S,A,(M)。,(2)Alice用Bob的公开密钥对签名的消息加密,然后送给Bob:E,B,(S,A,(M)。,(3)Bob用他的私人密钥解密:D,B,(E,B,(S,A,(M)=S,A,(M),(4)Bob用Alice的公开密钥验证并且恢复出消息:V,A,(S,A,(M)=M。,小结,协议的定义,协议的目的,仲裁协议,裁决协议,使用对称密码学通信,数字签名,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 商业计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!