资源预览内容
第1页 / 共42页
第2页 / 共42页
第3页 / 共42页
第4页 / 共42页
第5页 / 共42页
第6页 / 共42页
第7页 / 共42页
第8页 / 共42页
第9页 / 共42页
第10页 / 共42页
亲,该文档总共42页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第十五讲:安全实践第十五讲:安全实践郑东上海交通大学计算机科学系 Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.14 实践中的安全实践中的安全, 用户识别用户识别 n密码学应用n安全 email (S/MIME, PGP), n用户身份识别问题. Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.1. 实践中的安全实践中的安全 Email-安全安全email是使用最广泛的网络业务消息不安全可以在传输过程被窃听可以在目的地被窃听Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.2. Email 安全服务安全服务 n机密性n认证性 n消息完整性n消息不可否认性 Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.3. 安全安全 Email 实施实施n需要利用公钥算法及证书机制进行密钥交换及认证n使用对称加密算法 Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.4. PEM & S/MIME nPEM 是安全 email标准 nS/MIME(安全/通用Internet邮件扩充)n保密性 - DES 加密 n完整性- DES encrypted hash (MD2/MD5) n认证性 - DES 或 RSA 加密的HASH n不可否认性 - RSA 加密的HASH n密钥管理:n中心在线-私钥服务器n公钥证书,使用 X.509 强认证 n由证书机构签发CA) nS/MIME 修改版本:n使用 DES, Triple-DES, RC2nX.509 证书Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.5. PGPnPretty Good Privacy n广泛使用的安全 email 标准nPhil Zimmermann 开发n可以用在 Unix, PC, Macintosh and Amiga systems n最初是免费的! 现在已有商业版n保密性 - IDEA encryption n完整性 - RSA encrypted MIC (MD5) n认证与不可否认性 - RSA encrypted MIC nPGP公钥管理(参见书P292) Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.6. PGP程序程序n所有的 PGP功能有一个程序运行n必须集成在 email/news n每个用户要有一个已知的密钥环n包括公开密钥和私钥 (用口令保护) n公开密钥可以直接传送n公钥对由可信方签发n用于签名或加密n用于验证接收到的消息Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.8. PGP 8. PGP 使用使用 n现在可以合法被任何人使用: n非商业版可以合法使用 (in US/Canada )with licenced MIT version n商业版本是 Viacrypt version( in US/Canada )n其它国家的非商业应用( outside the US) 是国际版本( international version )n国际版的商业应用需要IDEA许可证( 美国以外使用)Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.9.PGP服务功能n数字签名DSS/SHA或RSA/SHAn消息加密CAST-128或IDEA或3DES + Diffie-Hellman或RSAn数据压缩使用ZIP对报文压缩,用于存储或传输n邮件兼容加密的报文可以使用64基转换算法转换成ASCII字符(Radix 64)n数据分段n-为满足最大报文长度的限制,PGP完成报文的分段和重新装配Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.Ks: session keyKRa : 用户A的私钥KUa: 用户A的公钥EP: 公钥加密DP: 公钥解密EC: 常规加密DC: 常规加密H: 散列函数|: 连接Z: 用ZIP算法数据压缩R64 : 用radix64转换到ASCII格式9.1记号说明Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.9.2 只进行鉴别的服务n图A 的步骤:n1. 发送者创建报文n2. 使用SHA-1生成160bit散列码n3. 使用发送者私钥,采用RSA算法,对散列码签名,并串接在报文前面n4. 接收者使用发送者的公钥,验证签名结果Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.9.3 只保证机密性的服务n图bn1. 发送者生成报文和对称加密的会话密钥n2.采用CAST-128(或IDEA,3DES),使用会话密钥对压缩的报文加密n3. 采用RSA,使用接收者的公开密钥,对对会话密钥加密,并附加在报文前n4. 接收者采用RSA算法,使用自己的私有密钥对会话密钥进行解密n5.使用会话密钥解密报文Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.n图Cn1.先对报文生成签名,并附加在报文首部,n2。利用对称算法,对明文和签名加密,n3。使用RSA对会话密钥进行加密。9.4 鉴别与机密性服务Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.9.5 数据压缩n发生在签名后、加密前。n对邮件传输或存储都有节省空间的好处。Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.9.6 分段与重组nEmail常常受限制于最大消息长度(一般限制在最大50000字节)n更长的消息要进行分段,每一段分别邮寄。nPGP自动分段,(在其它处理完成之后进行)并在接收时自动恢复。n签名只需一次,在第一段中。Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.PGP报文的传输和接收Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.10 加密密钥和钥匙环nPGP使用四种类型的密钥:一次性会话传统密钥,公钥,私钥,基于口令短语的常规密钥。n三种独立的需求: 1、需要一种生成不可预知的会话密钥的方法 2、允许用户有多个公开/私有密钥对。需要某种方法来标识具体的密钥。 3、每个PGP实体必须维护一个保存其公钥/私钥对文件,及保存通信对方公钥的文件。Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.10.1会话密钥的生成n128位的随机数是由CAST-128自己生成的。输入包括一个128位的密钥和两个64位的数据块作为加密的输入。使用CFB方式,CAST-128产生两个64位的加密数据块,这两个数据块的结合构成128位的会话密钥。(算法基于ANSI X12.17)n作为明文输入的两个64位数据块,是从一个128位的随机数流中导出的。这些数是基于用户的键盘输入的。键盘输入时间和内容用来产生随机流。因此,如果用户以他通常的步调敲击任意键,将会产生合理的随机性。n参见附录12CEvaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.10.2 密钥标识符n一个用户有多个公钥/私钥对时,接收者如何知道发送者是用了哪个公钥来加密会话密钥?将公钥与消息一起传送。(浪费空间)将一个标识符与一个公钥关联。对一个用户来说做到一一对应。nPGP的解决方法:n定义KeyID 包括64个有效位:(KUa mod 264)nPGP的数字签名也需要KeyID。(接受者必须知道用哪个密钥验证)Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.会话密钥部分KeyIDofrecipientspublickey(KUb)Sessionkey(Ks)TimestampKeyIDofsenderspublickey(KUa)LeadingtwooctetsofmessagedigestMessagedigest签名FilenameTimestampData报文EKUbEKRaZIPEKsR64ContentOperationPGP消息的一般格式(AtoB)Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.10.3 密钥环n私有密钥环的一般结构 时间戳 密钥ID 公开密钥: 私有密钥:密钥对的私有密钥部分(加密的内容) 用户ID,典型值是电子邮件,也可以选取其它值。可以用用户ID或密钥ID来索引Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.钥匙环n密钥环的结构Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.PGP报文生成Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.PGP报文接收Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.10.4 PGP公钥管理n由于PGP广泛地在正式或非正式环境下应用,没有建立严格的公钥管理模式。n密钥管理的重要性如果A的公钥环上有一个从BBS上获得B发布的公钥,但已暴露给C了,这是就存在两条通道。C可以向A发信并冒充B的签名,A以为是来自B;A与B的任何加密消息C都可以读取。n若干种方法可用为了防止A的公钥环上包含错误的公钥,有4种于降低这种风险。Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.10.5 四种方法1、物理上得到B的公钥。2、通过电话验证公钥。B将其公钥email给A,A可以用PGP对该公钥生成一个160位的SHA-1摘要,并以16进制显示。这一特点称作密钥的“指纹”。然后A打电话给B,让B在电话中对证“指纹”。如果双方一致,则该公钥被认可。3、从双方都信任的个体D处获得B的公钥。D是介绍人,生成一个签名的证书。其中包含B的公钥,密钥生成时间。D对该证书生成一个SHA-1摘要,用其私钥加密这个摘要,并将其附加在证书后。因为只有D能够产生这个签名,没有人可以生成一个错误的公钥并假装是D签名的。这个签名的证书可以由B或D直接发给A,也可以贴到公告牌上。4、从一个信任的CA中心得到B的公钥。Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.11.S/MIMEnS/MIME(安全/通用Internet邮件扩充:Secure/Multipurpose INTERNET mail Extension)nS/MIME可能作为商业和组织使用的工业标准,PGP作为个人安全电子邮件的选择Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.11.1 RFC822nRFC 822 定义了使用电子邮件发送正文报文的格式。nRFC 822 标准结构简单: -一些首部行及正文主体组成.例:见P296.Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.11.2 通用Internet 邮件扩充MIMEnMIME 是RFC822框架的扩充, 是为了解决使用SMTP或其他邮件传输协议以及RFC822 传递邮件的一些问题和局限Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.11.3 MIME 概述nMIME 规约: 1. 定义了5个新的,可以包含在RFC 822 报文首部的字段,这些字段提供了有关报文主体的信息. 2. 定义了一组内容格式,标准化了支持多媒体电子邮件的表示 3. 定义了传送编码,使得任何格式的内容都可以转换成一种保护于不同邮件系统之外的形式 Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.11.4 S/MIME 的功能n与PGP功能相似-加密-签名-?-签名并且加密的数据Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.12. 用户的身份鉴别n用户身份鉴别 (identity verification) -向系统证明你的身份-在系统向你提供服务之前n用户鉴别基于三种方法 -你知道什么 -你有什么 -你是什么 Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.12.1 用户身份鉴别方法n用户提供的信息与用户信息表对应,如个一致,验证通过。Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.12.2 你知道什么口令或口令短语n先为用户注册提供用户名和口令短语 n通过验证口令的正确性鉴别用户身份n在有些系统, 口令以明文的形式存储,现在认为是不安全 n常使用一个单向函数,有输出值难以计算输入值n可以取固定大小的输入 (eg 8 chars) n或采用HASH函数,可以接受任意大小的输入n需要精心选择口令,防止对穷搜索攻击Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.12.3 你知道什么一次性口令n传统口令存在的问题在不安全信道上传输口令容易被窃听n一种解决方法:使用一次性口令 -这些口令都是使用一次 -下一个口令不能由前面的口令预料n或提前生成口令列表,每次使用一个n或利用单向函数生成序列?Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.12.4 你有什么?n通过验证用户拥有某些对象对身份进行鉴别(常与口令联系在一起)n被动的或主动的n被动的对象常常是磁卡或磁性电键,包括某些编码值.Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.12.4 你有什么-Smart Card or Calculatorn一种主动的证物n可以与系统交互n可以要求用户信息n能够用于计算 -基于时间的口令 -一次性口令 -可以进行交互验证 -基于公钥的验证Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.12.5 你是什么?n基于用户的物理特征(生物测定)n这些特征包括 -签名 -指纹 -手形, 面部轮廓,身体轮廓 -语言特征 -视网膜需要一种折中:错误拒绝与错误接受之间的折中Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.13.小结n安全实践的例子n用户认证问题Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.END!Evaluationonly.CreatedwithAspose.Slidesfor.NET3.5ClientProfile5.2.0.0.Copyright2004-2011AsposePtyLtd.
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号