- 2022-08-13 发布 |
- 37.5 KB |
- 42页
申明敬告: 本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
文档介绍
[计算机]密码学与计算机安全第十四讲:安全实践useridentification
第十四讲:安全实践郑东上海交通大学计算机科学系信息安全学院\n14实践中的安全,用户识别密码学应用安全email(S/MIME,PGP),用户身份识别问题.\n1.实践中的安全–Email-安全email是使用最广泛的网络业务消息不安全可以在传输过程被窃听可以在目的地被窃听\n2.Email安全服务机密性认证性消息完整性消息不可否认性\n3.安全Email实施需要利用公钥算法及证书机制进行密钥交换及认证使用对称加密算法oftenimplementusingemailencapsulation\n4.PEM&S/MIMEPEM是安全email标准S/MIME(安全/通用Internet邮件扩充)保密性-DES加密完整性-DESencryptedhash(MD2/MD5)认证性-DES或RSA加密的HASH不可否认性-RSA加密的HASH密钥管理:中心在线-私钥服务器公钥证书,使用X.509强认证由证书机构签发CA)S/MIME修改版本:使用DES,Triple-DES,RC2X.509证书\n5.PGPPrettyGoodPrivacy广泛使用的安全email标准PhilZimmermann开发可以用在Unix,PC,MacintoshandAmigasystems最初是免费的!!!!现在已有商业版保密性-IDEAencryption完整性-RSAencryptedMIC(MD5)认证与不可否认性-RSAencryptedMICPGP公钥管理(参见书P292)\n6.PGP程序所有的PGP功能有一个程序运行必须集成在email/news每个用户要有一个已知的密钥环包括公开密钥和私钥(用口令保护)公开密钥可以直接传送公钥对由可信方签发用于签名或加密用于验证接收到的消息\n8.PGP–使用现在可以合法被任何人使用:非商业版可以合法使用(inUS/Canada)withlicencedMITversion商业版本是Viacryptversion(inUS/Canada)其它国家的非商业应用(outsidetheUS)是国际版本(internationalversion)国际版的商业应用需要IDEA许可证(美国以外使用)\n9.PGP服务功能数字签名DSS/SHA或RSA/SHA消息加密CAST-128或IDEA或3DES+Diffie-Hellman或RSA数据压缩使用ZIP对报文压缩,用于存储或传输邮件兼容加密的报文可以使用64基转换算法转换成ASCII字符(Radix64)数据分段-为满足最大报文长度的限制,PGP完成报文的分段和重新装配\n\nKs:sessionkeyKRa:用户A的私钥KUa:用户A的公钥EP:公钥加密DP:公钥解密EC:常规加密DC:常规加密H:散列函数||:连接Z:用ZIP算法数据压缩R64:用radix64转换到ASCII格式9.1记号说明\n9.2只进行鉴别的服务图A的步骤:1.发送者创建报文2.使用SHA-1生成160bit散列码3.使用发送者私钥,采用RSA算法,对散列码签名,并串接在报文前面4.接收者使用发送者的公钥,验证签名结果\n9.3只保证机密性的服务图b1.发送者生成报文和对称加密的会话密钥2.采用CAST-128(或IDEA,3DES),使用会话密钥对压缩的报文加密3.采用RSA,使用接收者的公开密钥,对对会话密钥加密,并附加在报文前4.接收者采用RSA算法,使用自己的私有密钥对会话密钥进行解密5.使用会话密钥解密报文\n图C1.先对报文生成签名,并附加在报文首部,2。利用对称算法,对明文和签名加密,3。使用RSA对会话密钥进行加密。9.4鉴别与机密性服务\n9.5数据压缩发生在签名后、加密前。对邮件传输或存储都有节省空间的好处。\n9.6分段与重组Email常常受限制于最大消息长度(一般限制在最大50000字节)更长的消息要进行分段,每一段分别邮寄。PGP自动分段,(在其它处理完成之后进行)并在接收时自动恢复。签名只需一次,在第一段中。\nPGP报文的传输和接收\n10加密密钥和钥匙环PGP使用四种类型的密钥:一次性会话传统密钥,公钥,私钥,基于口令短语的常规密钥。三种独立的需求:1、需要一种生成不可预知的会话密钥的方法2、允许用户有多个公开/私有密钥对。需要某种方法来标识具体的密钥。3、每个PGP实体必须维护一个保存其公钥/私钥对文件,及保存通信对方公钥的文件。\n10.1会话密钥的生成128位的随机数是由CAST-128自己生成的。输入包括一个128位的密钥和两个64位的数据块作为加密的输入。使用CFB方式,CAST-128产生两个64位的加密数据块,这两个数据块的结合构成128位的会话密钥。(算法基于ANSIX12.17)作为明文输入的两个64位数据块,是从一个128位的随机数流中导出的。这些数是基于用户的键盘输入的。键盘输入时间和内容用来产生随机流。因此,如果用户以他通常的步调敲击任意键,将会产生合理的随机性。参见附录12C\n10.2密钥标识符一个用户有多个公钥/私钥对时,接收者如何知道发送者是用了哪个公钥来加密会话密钥?将公钥与消息一起传送。(浪费空间)将一个标识符与一个公钥关联。对一个用户来说做到一一对应。PGP的解决方法:定义KeyID包括64个有效位:(KUamod264)PGP的数字签名也需要KeyID。(接受者必须知道用哪个密钥验证)\n会话密钥部分KeyIDofrecipient’spublickey(KUb)Sessionkey(Ks)TimestampKeyIDofsender’spublickey(KUa)LeadingtwooctetsofmessagedigestMessagedigest签名FilenameTimestampData报文EKUbEKRaZIPEKsR64ContentOperationPGP消息的一般格式(AtoB)\n10.3密钥环私有密钥环的一般结构——时间戳——密钥ID——公开密钥:——私有密钥:密钥对的私有密钥部分(加密的内容)——用户ID,典型值是电子邮件,也可以选取其它值。可以用用户ID或密钥ID来索引\n钥匙环密钥环的结构\nPGP报文生成\nPGP报文接收\n10.4PGP公钥管理由于PGP重在广泛地在正式或非正式环境下应用,没有建立严格的公钥管理模式。密钥管理的重要性如果A的公钥环上有一个从BBS上获得B发布的公钥,但已暴露给C了,这是就存在两条通道。C可以向A发信并冒充B的签名,A以为是来自B;A与B的任何加密消息C都可以读取。若干种方法可用为了防止A的公钥环上包含错误的公钥,有4种于降低这种风险。\n10.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的公钥。\n11.S/MIMES/MIME(安全/通用Internet邮件扩充:Secure/MultipurposeINTERNETmailExtension)S/MIME可能作为商业和组织使用的工业标准,PGP作为个人安全电子邮件的选择\n11.1RFC822RFC822定义了使用电子邮件发送正文报文的格式。RFC822标准结构简单:---一些首部行及正文主体组成.例:见P296.\n11.2通用Internet邮件扩充MIMEMIME是RFC822框架的扩充,是为了解决使用SMTP或其他邮件传输协议以及RFC822传递邮件的一些问题和局限\n11.3MIME概述MIME规约:1.定义了5个新的,可以包含在RFC822报文首部的字段,这些字段提供了有关报文主体的信息.2.定义了一组内容格式,标准化了支持多媒体电子邮件的表示3.定义了传送编码,使得任何格式的内容都可以转换成一种保护于不同邮件系统之外的形式\n11.4S/MIME的功能与PGP功能相似---加密---签名---???---签名并且加密的数据\n12.用户的身份鉴别用户身份鉴别(identityverification)----向系统证明你的身份----在系统向你提供服务之前用户鉴别基于三种方法----你知道什么----你有什么----你是什么\n12.1用户身份鉴别方法用户提供的信息与用户信息表对应,如个一致,验证通过。\n12.2你知道什么—口令或口令短语先为用户注册提供用户名和口令短语通过验证口令的正确性鉴别用户身份在有些系统,口令以明文的形式存储,现在认为是不安全常使用一个单向函数,有输出值难以计算输入值可以取固定大小的输入(eg8chars)或采用HASH函数,可以接受任意大小的输入需要精心选择口令,防止对穷搜索攻击\n12.3你知道什么—一次性口令传统口令存在的问题—在不安全信道上传输口令容易被窃听一种解决方法:使用一次性口令----这些口令都是使用一次----下一个口令不能由前面的口令预料或提前生成口令列表,每次使用一个或利用单向函数生成序列?\n12.4你有什么?通过验证用户拥有某些对象对身份进行鉴别(常与口令联系在一起)被动的或主动的被动的对象常常是磁卡或磁性电键,包括某些编码值.\n12.4你有什么-SmartCardorCalculator一种主动的证物可以与系统交互可以要求用户信息能够用于计算---基于时间的口令---一次性口令---可以进行交互验证---基于公钥的验证\n12.5你是什么?基于用户的物理特征(生物测定)这些特征包括---签名---指纹---手形,面部轮廓,身体轮廓---语言特征---视网膜需要一种折中:错误拒绝与错误接受之间的折中\n13.小结安全实践的例子用户认证问题\nEND!查看更多