




已阅读5页,还剩61页未读, 继续免费阅读
(计算机应用技术专业论文)基于outlook的电子邮件加密和完整性验证的设计和实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着i n t e m e t 的快速发展,电子邮件也得到了越来越广泛的应用。然而传统 的电子邮件存在的若干不安全因素( 如邮件可能在不为通信双方所知的情况下被 读取、篡改和伪造) ,使重要需要保密的信息还不能通过屯子邮件传送,阻碍了 电子邮件在电子商务和电子政务中的应用。因此迫切需要一种有安全保证的电子 邮件系统。 o u t l o o k 是应用广泛的电子邮件客户端程序,本文通过o u t l o o kc o m 加载项 实现了能提供电子邮件的保密性、完整性的安全电子邮件系统,并达到了实用的 水平。 文中首先介绍了当前网络安全采用的一系列对策与技术,然后着重介绍了密 码学的基本理论及d e s 和m d 5 算法,对电子邮件的相关协议和标准也作了介绍, 并对目前流行的安全电子邮件方案( p g p 、s k m i m e ) 作了分析和评价。最后介 绍了基于o u t l o o k 的电子邮件加密系统的总体结构以及o u t l o o kc o m ;自n 载项和包 含加密函数的d l l 的设计和实现。 本文的意义在于开发出了具有自主知识产权,没有安全后门( 与采用国外安 全产品相比) ,适合于国内用户使用的安全电子邮件系统。有效的解决了传统电 子邮件存在的若干安全性问题。 关键词基于o u t l o o k ;安全电子邮件;加密;完整性验证 a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fi n t e r n e t ,e - m a i lh a sb e e ni nu s ei nb r o a d a r e a h o w e v e r ,t h et r a d i t i o n a le m a i ls y s t e m sh a v es o m ei n s e c u r ef a c t o r , s u c ha st h e c o n t e n to fe - m a i lm a yb er e a d ,m o d i f i e do rf a b r i c a t e d t h e r e f o r e t h ei m p o r t a n t i n f o r m a t i o nt h a tn e e dk e e ps e c r e ta r en o ts u i t a b l ef o rt r a n s f e r r i n gi ne m a i l t h i sh a s b l o c k e de - m a i l sa p p l y i n gi ne - b u s i n e s sa n de g o v e r n m e n t f o rt h i sr e a s o no n es e c u r e e - m a i ls y s t e ma r ei ng r e a tn e e d e d o u t l o o ki sac l i e n t s i d ep r o g r a mu s e di nab r o a df i e l d ,t h r o u g ho u t l o o kc o m a d d i n st h ep a p e rh a v er e a l i z e das e c u r ee - m a i ls y s t e mp r o v i d i n ge n c r i p t i o na n d m a s s a g ei n t e g r i t yv e i l f y i tr e a c h e s t h el e v e lo f p r a c f i c a b i l i t y t h i sp a p e ri n t r o d u c e sas e r i e so fc o u n t e r m e a s u r e sa n dt e c h n i q u e so fc u r r e n t n e t w d r ks e c u r i t y ,a n dt h e ni n t r o d u c e st h eb a s i ct h e o r yo ft r a d i t i o n a lc r y p t o g r a p ha n d d e sa l g o r i t h ma n dm d 5a l g o r i t h me m p h a s i z l y t h ep a p e ra l s oi n t r o d u c e ss o m e p r o t o c o l so fe m a i ls y s t e m i ta n a l y s e sa n de v a l u a t e ss o m ep o p u l a rs e c u r es t a n d a r d s o fe - m a i ls u c ha sp g pa n ds m i m e a t1 a s tt h ep a p e l d i s c u s s e st h eo v e r a l ls t r u c t u r e o fe m a i ls y s t e mb a s e do no u t l o o ka n dt h ed e s i g na n di m p l e m e n t a t i o no fc o m a d d i n sa n dd l l t h ei m p o r t a n tm e a n i n go f t h i sp a p e ri st h a tt h es y s t e mh a si n d e p e n d e n ti n t e l l e c t u a l p r o p e r t y , h a sn on e t w o r ks e c u r eh o l ei nc o n t r a s tt op r o d u c t sa b r o a da n d i ss u i t a b l e f o rd o m e s t i cu s e r i th a ss o l v e dt h es e c u r ep r o b l e mi nt r a d i t i o n a le m a i ls y s t e m k e yw o r d sb a s e do no u t l o o k ;s e c u r ee m a i l ;e n e r y p t ;i n t e g r i t yv e r i f y i i 独创性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研 究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得北京工业大学或其它教育机构 的学位或证书而使用过的材料。与我一周工作的同志对本研究所做的任何贡献均 己在论文中作了明确的说明并表示了谢意。 关于论文使用授权的说明 期:圣竺乎! 旦f 日 本人完全了解北京工业大学有关保留、使用学位论文的规定,即:学校有权 保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部 分内容,可以采用影印、缩印或其他复制手段保存论文。 ( 保密的论文在解密后应遵守此规定) 签名:逊缕导师签名: 日期 第1 章绪论 1 1 网络数据传输及电子邮件面临的安全问题 随着网络通信技术和互联网的快速发展和普及,很大程度上改变了人们的生 产、生活方式,人们越来越离不开网络了。人们现在可以坐在电脑屏幕前进行网 上购物,办理银行业务,召开网上异地会议,通过电子邮件和家人、好友、同事 通信。网络技术带给人们诸多方便的同时,网络安全方面的威胁和隐患也给我们 造成了很多不便甚至经济上的损失。 近年来出现的计算机犯罪,严重威胁到信息系统的安全,使许多部门遭受了 重大损失。美国平准基金保险公司有人利用计算机制造假保险案,诈骗2 7 0 0 万 美元;艾克森石油公司计算机操作员盗取2 0 0 0 万美元的石油;德国汉诺威大学 计算机系的学生马蒂亚斯斯佩尔将自己的计算机同美国军方和承包商的3 0 个 计算机网络连接,在两年的时间内收集了美国国防部的大量机密信息,震惊了美 国国防部和联邦调查局。中国,1 9 9 9 年8 月,西安某银行内部工作人员搭线窃 听了别人的账号密码,非法窃取了8 0 万元人民币;同年,上海证卷交易所一员 工非法入侵到另一公司的委托数据库,修改信息,使该公司损失3 0 0 万元人民币。 以上事实说明在计算机网络通信方面存在很多不安全的因素,其中有犯罪分 子、黑客非法侵入造成的,也有人们疏忽、网络技术本身的安全漏洞造成的f 1 。 比如电子邮件,在i n t e r n e t 上的传输是从一台机器传输到另一台机器。在这种方 式下,电子邮件所经过网络上的任一系统管理员或黑客都有可能截获或更改邮 件,甚至伪造某人的电子邮件。由于电子邮件以明文形式传播【2 】,因此与传统的 密封在信封中的信件并不相同,而与明信片更为相似。电子邮件的安全性是以邮 件经过的网络系统的安全性为基础的,因此在网上以明文形式传输的电子邮件是 不安全的,容易被别人截获、篡改甚至伪造,所以虽然它被广泛地用来进行商业 通信,但真正重要的信息仍然不敢使用电子邮件来传递,这就限制了电子邮件的 使用范围。 1 2 对安全电子邮件系统的需求 近年来随着i n t e m e t 的蓬勃发展,越来越多的公司和个人从事网上电子商务活 动,并逐渐成为人们进行商务活动的新模式。电子商务的发展前景十分诱人,而 其安全问题也变得越来越突出,如何建立一个安全便捷的电子商务应用环境,对 信息提供足够的保护,已经成为商家和用户都十分关心的话题。随着信息化的浪 潮,各国政府都在积极推进电子政务建设,我国也已经进入全面的电子政务建设 阶段。我国的工商、税务、财政、和海关等政府职能部门的信息化建设有了比较 大的发展,很多部门都建立了自己的网站,并逐步朝着网上业务处理过渡。电子 政务能够大大推动政府职能转变,可以提高政府的行政效率,增加政府工作的透 明度,改善政府与公民的交流方式,在实现资源共享的同时,从根本上规范政府 行为。无论在电子商务还是电子政务中,电子邮件都是一种不可或缺的便捷的低 成本的通信手段,但由于普通电子邮件本身不安全的特点,重要需要保密的信息 还不能用通常的电子邮件系统传送,这样就需要一种既能保密、又能够对邮件进 行完整性验证,验证邮件是否被别人篡改和伪造的电子邮件系统。 1 3 密码技术在数据安全领域的应用 1 3 1 网络数据面临的安全威胁的类型 计算机网络上的通信面临以下几种威胁: 1 截获:攻击者从网络上窃听他人的通信内容。 2 中断:攻击者有意中断他人在网络上的通信。 3 篡改:攻击者故意更改网络上传输的数据。 4 伪造或伪装:攻击者伪造信息在网络上传送或某实体假装别的实体。 5 重放:是指将获得的信息再次发送。 6 拒绝服务:阻止或禁止正常的使用。 7 流量分析 以上威胁又可以划分为两大类:主动攻击和被动攻击。被动攻击只对数据监 听和分析,攻击者的目标是获得信息,而不干扰数据在网上的传输。另一种被动 攻击是流量分析,攻击者通过通信主机的位置和身份,和对传输的消息的频率和 长度分析,判断通信的性质。被动攻击由于不对数据更改,所以很难察觉,对付 被动攻击可采用各种数据加密技术。主动攻击与被动攻击相反,对数据进行更改、 删除和伪造,对付主动攻击,可以采取适当的措旌检测,将加密和鉴别技术相结 合。还有一种特殊的主动攻击就是恶意程序。主要包括:计算机病毒、计算机蠕 虫、特洛伊木马、逻辑炸弹。 1 3 2 实现网络安全的机制与对策 为了保证网络数据免受上述的种种攻击,必须采取一些法律上和技术上的措 施来保护计算机网络的安全。主要采取以下一些安全机制: 1 保密教育和法律保护 结合机房、软硬件和网络等各方面的安全问题,对工作人员进行安全教育, 提高工作人员的保密观念和责任心;加强业务、技术的培训,提高工作技能;教 育工作人员严格遵守保密规定和国家的法律法规。 2 传输线路安全 传输线路应有露天保护措施或埋于地下,并要远离各种辐射源,以减少由于 电磁干扰引起的数据错误;电缆敷设应当使用金属导管,以减少各种辐射引起的 电磁泄漏和对发送线路的干扰。路由器、交换机、集中器和调制解调器应放置在 受监视的地方,对连接要经常检查,以防有人搭线窃听或破坏。 3 入侵措施 利用报警系统检测违反安全规程的行为,对安全码的不正确使用或使用无效 的安全码,对在规定的次数内不正确的安全码使用者,网络系统可采取行动锁住 该用户并报警,以防非法者突破安全系统入侵。 4 数据加密 数据加密是网络中采用的最基本的安全技术3 1 。网络中的数据加密,除了选 择加密算法和密钥外,主要问题是加密方式和密钥的分配和管理。网络中数据加 密技术有链路加密、节点加密和端到端等加密方式,数据加密可以在o s i 参考模 型的多个层次上实现。 5 访问控制 访问控制是从计算机系统的处理能力方面对信息提供保护,它按照事先确定 的规则决定对计算机的访问是否合法4 1 。当某一主体试图非法使用一个未经授权 的资源时,访问控制机制将拒绝这一访问,并将这一事件报告给审计跟踪系统5 1 , 审计跟踪系统给出报警,并计入日恚档案。对于文件和数据库设置安全属性,对 其共享的程度给以划分,通过访问权限限制用户的使用,如:只读、只写、读写、 可修改、可执行等。 6 鉴别机制 鉴别是每一个通信方查明另一方的身份和特权的过程。它在对等实体间交换 认证信息,以便检验对等实体的合法性和身份,这是访问控制实现的先决条件。 j e 基王些盔主苫主巫土堂垃j 盒奎 鉴别机制可采用报文鉴别、数字签名等方式。数字签名是用一定的算法对数据进 行密码变换,并附在数据后,使接收者可以验证发送者的身份,接收者既不能篡 改或伪造数据,发送送者也不能否认此数据是自己发送的。 7 路由选择机制 在一个网络中从源点到目的节点可能有多条路径可以到达,有些路径是安全 的,而有一些路径则是不安全的。路由选择机制可以使信息的发送者选择安全的 路由。在大型网络中,选择安全通路是一个重要问题。这种选择可以由用户提出 申请,在自己的数据前填上路由标志;也可以由网络管理机构通过路由表限制某 些不安全通路。 8 流量填充 流量分析是一种特殊的被动攻击。攻击者通过分析网络中信息的流量和流向 来判断某件事的发生。如,在军用网中发向某一站点的报文流量突然激增,就可 判断某地发生了某种军事行动。流量填充就是在站点间无信息传送时,发送一些 无用的信息,来掩盖通信的频度、报文的形式和报文的目的地,阻止攻击者的流 量分析【6 】o 9 数据完整性 网络通信协议中一般都考虑了传输中的差错控制措施,但不能对付人为的破 坏。数据完整性主要是用来对付攻击中的篡改和伪造,保证接收者收到的数据和 发送者发送的数据一致,验证发送者、报文内容、发送时间、序列的真伪。保证 数据完整性可以使用传统的加密方法或数字签名方法,也可以使用非加密的方 法,如报文鉴别码、单向散列函数川。 1 0 端口保护 远程终端和通信线路是安全的薄弱环节,尤其是在利用电话拨号交换网的计 算机网络中。因此,端口保护成为网络安全的一个重要问题,一种简单的保护方 法是在不使用时拔下插头或关掉电源。不过这种方法对联机系统是不可行的,通 常采用端口保护设备。 1 3 3 实现网络安全的密码技术 1 3 3 1 密码学的历史与现状 密码学( c r y p t o l o g y ) 一词源自希腊字根“k r y p t 6 s ”与“l o g o s ”,直译即为 “隐藏”与“信息”之意。早在4 0 0 0 多年以前,古埃及人就在墓志铭中使用过 4 象形文字那样奇妙的符号,这是史载的最早的密码形式。希腊人和斯巴达人是最 早使用加密方法的人类之一,他们把一条又细又长的纸草卷在一根棍子上,沿着 棍子的方向进行书写,然后把加密信息( 也就是那张纸草) 送给收信人。收信人 必须用一根同样粗细的棍子才能重新对齐纸草上的文字,读出信里的内容。 公元前两世纪,古希腊人提出一种棋盘密码,将2 6 个字母排在一个5 5 的 方格里,其中i 和j 填在同一格,如表1 1 所示。 于是每个字母对应一数对x y ,x 是该字母所在行的标号,y 是列标号,如g 对应2 2 ,p 对应3 5 等。使用这种密码可以将明文: s e c u r em e s s a g e 转换为密文: 4 31 5 】34 5 4 21 5 3 2 1 5 4 34 3 】2 21 5 表1 1 棋盘密码字母排列表 l2 3 4 5 abcde , f g h 1 j k lm n o p q r s tu vwx y z 公元前5 0 年,罗马皇帝凯撒发明了一种用于战时秘密通信的方法,后来被 称为“凯撒”密码,他将字母按字母表的顺序排列,最后一个字母与第一个字母 相连,将明文中的每个字母用其后面的第三个字母代替,就变成了密文。 以英文为例,凯撒密码的替换表如下: abedefghijklmnopqr stuvwxyz defghi jk1mnopqrst uvwxyzabc 用上面的替换表就可以将明文e n c r y p t i o n 转换成密文h q f u b s w l r q 。 以上的两种方法都是使用替换方法,即将明文字母替换成其它字母、数字或 符号。还有一种置换密码,按照某一规则重新排列消息中的比特或字符顺序。最 简单的例子就是双轨式”密码,加密时将明文写成双轨的形式,如将e n e r y p t i o n 写成: ecyt0 nrpin 5 按行的形式书写即可得出密文e c y t o n r p i n 。 解密时先计算密文中字母的总数,然后将密文分成两行来写,按列的顺序读 出即可恢复明文。 随着电子技术、计算技术的发展,以上的传统加密方法显然已经不实用了。 1 9 4 9 年,信息论创始人香农发表文章论证了一般经典的加密方法得到的密文几 乎都是可破的f 8 1 。2 0 世纪7 0 年代,美国的数据加密标准d e s 和公开密钥密码体 制的出现,成为近代密码学发展史上的两个重要里程碑,标志着现代密码学的诞 生 9 】。从此,密码体制的研究基本上沿着两个方向进行,印以r s a 为代表的公开 密钥密码体制和以d e s 为代表的秘密密钥分组密码体制。由于d e s 的密钥太短, 穷举攻击对d e s 造成了严重的威胁1 0 】 i l l 。d e s 最终会被美国国家标准局发布的高 级加密标准a e s 1 2 1 取代。 1 3 3 2 密码体制的模型和分类 一个密码系统包括三部分:发送方、接收方与攻击者。典型的密码系统如图 1 - 1 所剥1 3 1 。 发送方 k l 厂l 解密后明文。, i :竺兰卜+ 接收方b 攻击者 图i - i 典型的密码系统 发送方首先用加密密钥k 1 将明文i n 加密成密文c , e = ek l 然后将c 利用公 开信道传送给接收方。攻击者用各种方法从公开信道中获得c ,但他不知道解密 密钥k 2 ,因此无法得知明文m 的内容。接收者收到密文c 后,用k 2 将c 解密成 明文i t i ,m = dk 2 ( c ) = dl ( 2 ( ek 1 ) 。如果密文c 没有被攻击者篡改过,则m = m 。 一般来说,密码学包含密码编码学和密码分析学两个分支1 4 】,密码编码学是 研究各种加密方案的学科,以达到信息隐藏的目的。密码分析学是在未知密钥的 情况下从密文推演出明文或密钥的技术。密码体制按密钥可以分为秘密密钥密码 体制和公开密钥密码体制f 1 5 】。 6 1 3 3 3 秘密密钥密码系统 在秘密密钥密码系统中,加解密双方使用相同的密钥加密和解密【1 7 i ,如 图l 一1 所示的密码系统中,如果加密密钥k 。等于解密密钥k 2 ,或由k l 能推导 出k 2 ,反之从k 2 也能推导出k l ,这样的密码系统就是秘密密钥密码系统,也 称为对称密钥密码系统或单密钥密码系统。 在秘密密钥密码系统中,由于数据加密和解密采用的都是同一个密钥,因而 其安全性依赖于所持有密钥的安全性。对称加密算法的优点是加解密高效快速、 破译困难。但它的密钥必须通过安全可靠的途径传递,密钥管理成为影响系统安 全的关键因素,使它不便应用在网络开放的环境中。 1 3 3 4 公开密钥密码系统 公开密钥密码体制 1 8 】就是加密和解密采用不同的密钥,用加密密钥加密的数 据只有用相应的解密密钥才能解密。使用时将加密密钥( 也称为公开密钥) 公开, 解秘密钥( 也称为秘密密钥) 则需要保密,由已知的加密密钥推导出解密密钥在 计算上是不可行的。如图l l 所示,当a 需要向b 发送数据时,用b 的公开密 钥k ,对数据加密,因为只有b 知道秘密密钥k 2 ,只有b 才能解密。公开密钥密 码体制适应网络的开放性要求,密钥管理简单,并且可方便的实现数字签名和身 份认证等功能。缺陷是加密数据的速度和效率较低。 1 3 3 5 数字签名 在日常的社会生活和经济往来中,签名盖章和识别签名是个重要的环节, 如银行业务、挂号信、合同等,都离不开签名,在当今的计算机网络通信时代, 用密码学的方法实现数字签名显然有重要的实际意义( 1 9 1 。 数字签名的实质是发送方a 用自己的私钥对将要发送的消息加密形成签名, 接收方b 用发送方的公钥对签过名的消息进行逆运算验证签名。 签名:ds k a o n ) = s 验证:e p k a ( s ) = m 如果m = m 则验证正确,否则验证失败。因为只有a 拥有s k a ,只有a 能 产生ds k ( m ) ,所以签名具有不可否认性【2 0 1 。 1 3 3 6 信息完整性检验 信息的完整性检验是指消息的接收者能够验证所收到的消息在传送过程中 没有被修改、收到的消息不是攻击者伪造的假消息。信息完整性检验一般用单向 散列函数来实现口。 单向散列函数就是单向的把可变长度的输入串转换成固定长度的输出串的 一种函数,h a s h 函数必须具有以下的性质: 1 函数h 可应用于任意长的数据块,产生固定长度的输出。 2 对任意给定的输入x ,计算h ( x ) 比较容易。 3 对任何给定的h a s h 值h ,找到满足h ( ) 母- h 的x 在计算上是不可行的。 4 对任何给定的x ,找到满足y x 且h ( y ) - h ( x ) 的y 在计算上是不可行的。 5 找到满足h ( x ) = h ( y ) 的数对( x ,y ) 在计算上是不可行的。 h a s h 函数可以容易的由明文产生一块密文块,反之却是不可能的。因此,这 种技术可用于将产生的密文当作对应明文的一个信息完整性证明。因为如果明文 改变了,相应的密文也会发生变化。 有三种方法使用h a s h 函数。 1 双方共享一个密钥k 。发送方先对要发送的信息m 计算h ,然后用k 加密e “h ( m ) ) 。将e k ( h ( m ) ) 附在m 后发送给接收方。接收方对收到的信息先除 去e k ( h ( m ) ) ,得到m ,计算h ( m ) ,再用k 解密e k ( h ( m ) ) 得到h ( m ) ,最后比较h 和h ( m ) ,如果相等,则收到的信息m 是真的,没有被篡改。 2 第二种方法是发送方用秘密密钥对h ( m ) 加密,接收方用对应的解密密钥 解密。 3 通信的双方共享一小段别人不知道的秘密的数据块x ,发送方先将此数 据块追加在r f l 的前面,然后计算h ( x + m ) ,将h ( x + m ) 追加在m 的后面发送给接收 方。接收方先将h ( x + m ) 去除,得到m ,然后在n l 前加上共享的秘密数据块x , 然后计算h ( x + m ) ,如果h ( x + m ) - h ( x + m ) ,则m 是真的。 1 4 本文的研究内容及结构 本文通过t o m 加载项,在o u t l o o k 2 0 0 0 中实现了对发送的电子邮件进行加 密、对收至0 的电子邮件迸行解密、验证邮件的完整性的功能,是一个有实用价值 的电子邮件系统。 本文内容分为五章和结论,安排如下: 1 绪论 阐述了网络安全面临的问题及保障网络安全的策略;回顾了密码学的历史与 现状,对数据加密技术进行了简要的介绍。 2 d e s 加密与m d 5 报文摘要算法的分析 详细介绍了美国的数据加密标准d e s 和用于验证信息完整性的m d 5 报文摘 要算法,对它们进行了深入的分析和研究。 3 电子邮件系统的原理及安全技术 本章论述了电子邮件的传输原理、s m t p 协议、p o p 3 协议、8 2 2 文本协议 和m i m e 协议及当前采用的安全技术。 4 加密与可验证完整性的电子邮件系统的设计与实现 本章用v b 设计和实现了一个可以加载到o u t l o o k 应用程序中的c o m 加载 项,另外用v c 实现了一个包含加密、解密、计算报文摘要、实现b a s e 6 4 算法 的d l l ,在c o m 加载项中通过调用d l l 中的函数实现对邮件的加解密、验证 邮件的完整性等功能。 5 加密与可验证完整性的电子邮件系统的运行测试 通过几个运行测试实例介绍了本系统的使用,证明本电子邮件加密系统有很 好的加密效果,并可以验证所收到的邮件的完整性,具有很大的实用性。 6 结论 总结了作者所做的创新性工作,指出了基于o u t l o o k 的电子邮件系统的特点 和价值,并提出了可以进一步改进和完善之处。 9 弟a - - 2 章d e s 加密与m d 5 报文摘要算法的分析 2 1 概述 d e s ( d a t ae n e r y p t i o ns t a n d a r d ) 是目前应用广泛的对称加密算法。d e s 是一种 分组密码,加密前对整个明文进行分组,每个组长6 4 位,对每个6 4 位进行加密 处理。m d 5 算法对任意长度的报文进行运算,得出1 2 8 位的报文摘要,m d 5 报 文摘要中的每一个比特都与报文中的每一个比特有关。下面分别对其进行介绍。 2 2d e s 算法的分析 2 2 1 d e s 的加密过程 d e s 使用5 6 位( 6 4 位中的8 位做奇偶校验位) 的密钥对6 4 位的明文分组进行 一系列变换得到6 4 位的输出,其算法过程如图2 - 1 所示。首先通过一个初始置 换( 见表2 1 ) ,并将明文分成左右两半部分,各3 2 位长。然后经过1 6 轮相同 的运算,每一轮中将右3 2 位和4 8 位密钥( 由6 4 b i t 密钥产生的子密钥) 经过f 函 数作用再和左3 2 位作异或运算并和右半部分交换,即r i = l “o f ( r i - i ,l 【i ) ,l i = r i 小 最后一轮中并未将左半部分和右半部分交换,即将r 1 6 和l 1 6 合在一起输出6 4 位,再与初始置换的逆置换( 见表2 2 ) 作用产生6 4 位的密文。 表2 1 初始置换( 口) 1 0 2 l 0 9 8 7 6 5 3 3 3 2 2 2 2 2砰酪酡n的铝卯m为勉姐加侉掳弱弱舛铝观豇锣 6 5 4 3 2 1 0 l 1 1 1 1 l 1 9船盯稻笛钳驼甜 8 7 6 5 4 3 2 l嚣”弭” 图2 1d e s 加密过程示意图 2 2 2f 函数的功能 d e s 的关键在于坟r 1 1 【i ) 的功能口2 1 ,k i 是由6 4 b i t 的密钥产生的4 8 b i t 子密钥, 后面介绍如何生成子密钥。f 将3 2 b i t 的输入转化为3 2 b i t 的输出,f 函数的处理 过程见图2 2 。 r i _ f f 3 2 b i t ) 图2 2f 函数的处理过程 e ( e 置换见表2 3 ) 的作用是将3 2 b i t 的输入扩展为4 8 b i t ,重复了某些位。 表2 3 扩展置换( e ) 3 212345 456789 891 01 11 21 3 1 21 31 41 51 61 7 1 61 71 81 92 02 1 2 02 12 22 32 42 5 2 42 52 52 72 82 9 2 82 93 03 13 2l e 输出的4 8 b i t 和k i 异或运算后分成8 组,每组6 b i t ,分别通过8 个s 盒( s 盒见表2 4 ) ,每个s 盒输出4 b i t ,通过8 个s 盒后再经过p 置换( 见表2 5 ) , 最后输出3 2 b i t 。每个s 盒是4 行1 6 列的表,其中每一项是4 b i t 的数,输入s 盒 的6 b i t 决定了s 盒的输出位于s 盒的哪一行哪一列。输入s 盒的6 b i t b l b e b 3 b 4 b 5 b 6 , b i b 。决定输出的数所在s 盒中的行数,b 2 b 3 b 4 b 5 决定所在的列数。例如s 4 的输入 为1 0 1 1 0 0 ,b l = l ,b 6 = o ,b i b 6 = ( 1 0 ) 2 = 2 ,b 2 b 3 b 4 b 5 = ( 0 1 1 0 ) 2 = 6 ,则位于s 4 表中第2 行第6 列的数即为输出。 1 2 表2 4s 表 1 441 3121 51 1831 061 25907 s l 01 5741 421 311 061 21 l9538 4l1 481 3621 11 51 29731 050 1 51 2 82491751 13 1 41 0 061 3 1 5l81 461 l349721 31 2051 0 s 2 31 3471 5281 41 20l1 069l l 5 0 1 47 1 11 0 41 315 81 269321 5 1 381 0l31 542l l671 2051 49 1 0091 4631 55l1 31 27l l428 s 3 1 37093461 02851 41 21 11 5l 1 364981 5301 1l21 251 01 47 11 01 30698741 51 431 1521 2 s 4 7 1 31 4306 91 0 l285 1 1 1 2 4 1 5 1 381 1561 5034721 211 01 49 1 0 690 1 21 171 31 5l3 1 452 84 31 5061 011 38945l l1 2721 4 21 24l71 0 1 1 68531 51 301 49 s 5 1 4l l21 2471 315o1 51 03986 42 l 1 1 1 01 3781 591 2 563 01 4 1 181 2711 421 361 5091 0453 1 211 01 5926801 334 1 4 751 1 s 6 l o1 54271 2956i1 31 40i l38 91 4 1 5528 1 23 7 041 0l 1 3l i6 4321 2951 51 01 11 4176081 3 41 i21 41 5081 331 29751 061 s 7 1 30 1 l7491 1 01 4 3 51 22 1 586 l4 1 l1 31 2371 41 01 56 805 92 6 1 1 1 38141 079501 51 4231 2 1 328461 51 1l1 0931 4501 27 s 8 l1 51 381 03741 2561 l01 492 71 141 9 1 21 42 0 61 01 31 5358 211 4741 081 31 51 2903561 1 表2 5 置换函数( p ) 2 2 3 予密钥的生成 d e s 加密每一轮所用的4 8 位子密钥的产生过程如图2 3 所示。 1 3 图2 3 子密钥的产生过程 表2 6 置换选择i ( p c 1 ) 4 9 5 8 2 1 1 5 5 6 2 6 1 3 4 13 32 51 79 5 0 4 2 5 9 5 1 36 0 4 73 9 5 44 6 6 15 3 52 8 3 42 61 8 4 33 5 2 7 5 2 4 43 6 3 l2 31 5 3 83 02 2 4 53 72 9 2 01 2 4 输入的密钥k 是6 4 位,经过置换选择1 ( 见表2 6 ) 置换后变成5 6 位密钥, 再分为两个2 8 位数据c 。和d 。c 。和d 。经过1 6 轮循环左移,每轮迭代中分别循环 左移一位或两位( 循环左移的位数见表2 8 ) 。每轮循环左移后的值作为下一轮 的输入,同时也作为置换选择2 ( 见表2 7 ) 的输入,经过置换选择2 产生4 8 1 4 卯m n ,h 孔 位的子密钥。 表2 7 置换选择2 ( p c 2 ) 耋! :! 垄堡盗墼坐墅 迭代轮数12 34567891 01 i1 21 31 41 51 6 移位次数1 122222212222221 2 2 4d e s 的解密过程 d e s 的解密过程和加密完全类似,将1 6 轮的予密钥序列k 1 ,k z ,k 1 6 的顺序 倒过来,即第一轮用第1 6 个子密钥k 1 6 ,第2 轮用k 1 5 ,依此类推,第1 6 轮用 k l ,对密文进行同样的1 6 轮运算,最后的输出就是明文 2 3 l 。 2 3m d 5 算法的分析 m d 5 是一种报文摘要算法,并不使用密钥,只是输入消息的函数,能对任 意长的报文产生1 2 8 位的报文摘要阻】。改变报文的任何一位或多位,都会使报文 摘要的值改变,因此可以用它对报文的完整性进行验证,看是否被篡改过。 2 3 1m d 5 算法的过程 1 填充消息,使其长度与4 4 8 模5 1 2 同余,也就是填充后的长度消息长度 比5 1 2 的整数倍少6 4 。如果消息长度本身己满足上述要求,仍需要再填充5 1 2 位。填充的尾数在l 到5 1 2 之间。填充由一个1 和后续的0 组成。 2 填充长度,用6 4 位表示填充前消息的长度,并附在上步所得结果之后。 如果填充前消息长度大于2 6 4 ,则只使用其低6 4 位,即填充的是填充前消息的 长度对2 “取模的结果。填充长度后所得消息的长度是5 1 2 的整数倍。 3 初始化缓冲区,缓冲区用来存放中间结果及最后结果,用4 个3 2 位的寄 存器表示,其初始值如下( 十六进制) : a = 6 7 4 5 2 3 0 】b = e f c d a b 8 9 c = f e d c b a 9 8d = 7 6 5 4 3 2 1o 船4 2 钻弛 2 3 o 9 9 3 l l 3 3 25 均加巧钾靳”钉* 蚰 m m 7 ”躯铊u 孔坫引 拍 6 0 豫 4 5 6 1 1 4 1 1 2 4 5 3 4 以5 1 2 位的分组为单位处理消息。算法的核心是压缩函数,由四轮运算 组成,每轮使用不同的函数f 、g 、h 和i 。每轮的输入是5 1 2 位的分组和1 2 8 位的缓冲区a b c d 的内容,每轮的结果存放在a b c d 中。 5 所有的5 1 2 位分组处理完之后,最后a b c d 的结果就是1 2 8 位的报文摘 要。 2 3 2m d 5 压缩函数的处理过程 在m d 5 的四轮处理中,每轮中使用f 、g 、h 、i 四个函数之一经过1 6 步迭 代处理5 1 2 位的分组。在每轮中把5 1 2 位的分组分成1 6 个3 2 位的字, m o m 1 6 ,每一步处理一个字。第一轮的处理过程f f ( 曲,c ,d ,m i ,s ,t i 】) ,表 示a - b ( a f ( b ,c d ) + m 【i 】+ t i ) “s ) 。 其中:f c o ,c ,d ) = b ci ( - - , b ) d 。 在第2 、3 、4 轮中使用的g 、h 、i 函数为: g ( b ,c ,d ) = ( b & d ) f ( c d ) h c o ,c ,d ) = b “c “d i c o ,c ,d ) = c “( b1 d ) t 嘲用来随机化输入的数据,消除输入数据的规律性幽。t i 的值取7 _ 3 2 a b s ( s i n ( i ) ) 的整数部分。s 是循环左移的次数。 在每一轮中m i 】使用的次序不同,第一轮中按正常次序使用。第2 至第四轮 中使用的次序由以下公式确定: p 2 ( i ) = ( 1 + 5 i ) m o d l 6 p 3 ( j ) m 6 , 2 3 , 0 x 0 4 8 8 l d 0 5 )n ( b c ,d ,a , m 1 3 ,2 1 ,0 x 4 e 0 8 1 l a l ) h h ( a ,b ,c d m 【9 】,4 ,0 x d g d 4 d 0 3 9 )u ( a ,b ,c ,d ,m 【4 ,6 ,0 x f 7 5 3 7 e 8 2 ) 删( d ,a ,b ,c ,m 1 2 ,11 ,0 x e 6 d b 9 9 e 5 ) i i ( d ,a , b ,c , m i1 ,1 0 ,0 x b d 3 a f 2 3 5 ) h h ( c ,d ,a , b ,m 1 5 ,1 6 ,0 x l f a 2 7 e f s ) f l ( c ,d a ,b ,m 2 1 5 ,0 x 2 a d 7 d 2 b b ) h h ( b ,c ,d ,a ,m 【2 】 2 3 ,0 x e 4 a e 5 6 6 5 )i i ( b ,c ,d ,a ,m 9 】 2 1 ,0 x e b 8 6 d 3 9 1 ) 2 4 本章小结 本章对d e s 加密和m d 5 报文摘要算法进行了分析,详细介绍了算法的具体 过程。d e s 的最大弱点就是密钥太短,5 6 位的密钥意味着有2 5 6 种可能的密钥, 随着计算能力和硬件价格的降低,穷举攻击对d e s 造成了一定的威胁。 1 7 第3 章电子邮件系统的原理及安全技术 3 1 概述 电子邮件是一种使用电子手段通过网络提供信息传输和交换的通信方式。电 子邮件实现了各类信息( 文件、声音、图形、图像等) 的传送、接收和存储等处 理【2 6 1 。它提供了非实时的通信,不像电话通信要求主叫与被叫必须同时在场,电 子邮件的发送者可以随时随地发送邮件,邮件发送到接收者的电子邮箱中,接受 者可以在方便的时候读取信件,不受时空的限制。 3 2 电子邮件系统的基本组成部分 电子邮件系统的主要组成部分如图3 1 所示。用户代理u a ( u s e ra g e n t ) 就 是用户与电子邮件系统的接口,提供用户编辑、发送、接收、阅读和处理电子邮 件的功能。o u t l o o k 、f o x m a i l 等都是很受欢迎的电子邮件用户代理。邮件传送代 理m t a ( m a i l 胁衙a g e n t ) 是电子邮件系统的核心【2 7 】【2 8 1 ,运行于后台,主要将 邮件通过网络发送给目的m t a 、接收邮件并报告邮件传送的情况( 己交付、被 拒绝、丢失等) 。用户不直接和m t a 交互,邮件发送队列和邮箱起缓冲的作用, 可以使用户收发邮件与实际的邮件传输分开。 图3 1电子邮件系统的主要组成部分 3 3 电子邮件有关的协议 电子邮件系统涉及的主要协议有s m t p 协议( r f c8 2 1 ) 、8 2 2 文本协议( r f c 8 2 2 ) 、p o p 3 协议( r f c1 7 2 5 ) 、m i m e 协议( r f c1 5 2 1 、r f c l 5 2 2 ) 。这些标准 分为两大类,一类是指明报文格式的标准,另一类指明两个计算机间电子邮件交 换的细制2 9 1 。下面将分别介绍这些协议。 3 3 1s m t p 简单邮件传输协议 s m t p 是基于运输层服务的应用层协议,由k f c 8 2 1 所定义。s m t p 作为应 用层的服务,并不关心它下面采用的是何种运输服务,它可以通过网络在t c p 连接上传送邮件,或者简单的在同一机器的进程之间通过进程通信来传送邮件。 s m t p 并没有规定发信人应如何将邮件提交给s m t p ,以及s m t p 应如何将邮件 表3 1s m t p 协议的常用命令 s m t p 命令命令格式命令含义 h e l p 要求接收方给出有关帮 h e l p 助信息 h e l o 告诉接收方自己的e m a i l h e l o 域名 m a i lf r o m : 把发送者的e m a i l 地址传 m a i lf r o m : 递到对方 r c p tt o : 把接收者的e m a i l 地址传 r c p t t o : 递到对方,若有多个接收 者,可多次使用本命令 d a t a c r l f 用来传递数据,用第一列 d 啊弼 为“”且只有个“” 的一行结束 o u i t o u i t 结束邮件传递,释放连接 投递给收信人,对于邮件内部的格式、邮件如何存储也未做出规定【3 埘。s m t p 规 定了两个相互通信的s m t p 进程之间如何交换信息,s m t p 以客户服务器方式 工作,发送邮件的s m t p 进程就是s m t p 客户,接收邮件的s m t p 进程就是s m t p 服务器。s m t p 用来在m t a 之间传递邮件,u a 向m t a 发送邮件也使用s m t p 。 s m t p 是请求响应协议,命令和响应都是基于a s c i i 文本,并以 ( 回
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 离婚协议书中借款偿还责任与财产分割具体协议
- 2025浙江宁波市鄞州区天童旅游景区开发股份有限公司招聘派遣制人员5人考试历年参考题附答案详解
- 特定宗教信仰离婚协议范本及宗教仪式安排
- 涉外合同磋商中的合同法适用与争议解决机制
- 离婚协议补充:婚前财产协议修订及权益保障协议
- 离婚协议书中子女抚养权与赡养费支付协议解析
- 文化创意个人对公司借款及作品权属合同范本
- 夫妻感情破裂离婚协议书汇编与财产分配细则
- 税务筹划与税收筹划咨询与实施顾问服务协议
- 离婚后子女抚养费用调整及探望权变更补充协议范本
- 医院装修项目中的安全措施与难点处理
- 销售合规风险管理制度
- 药房员工销售培训
- 警校联动方案
- 让剪影动起来(教学设计)-2024-2025学年人教版(2012)美术六年级上册
- MBA硕士论文案例研究范文分享
- 五轴联动加工中心操作与基础编程 第2版 课件 1.1.1多轴机床与多轴加工类别
- 10 ai ei ui 教学设计-2024-2025学年语文一年级上册统编版
- 体育单招核心-1700-单词
- 《医院感染控制与医护人员个人防护》课件
- 2024六年级英语上册 Unit 2 Ways to go to school课时2 Let's learn-Write and say说课稿 人教PEP
评论
0/150
提交评论