非对称密钥加密技术.doc_第1页
非对称密钥加密技术.doc_第2页
非对称密钥加密技术.doc_第3页
非对称密钥加密技术.doc_第4页
非对称密钥加密技术.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.1 非对称密钥加密技术1.1.1 实训目的通过使用PGP软件实现数据加密和数字签名,理解非对称密钥加密的原理,学会对文件内容、电子邮件进行加密和数字签名,保障信息安全。1.1.2 实训任务客户公司的业务大部分都是靠电子邮件与合作伙伴进行交流的,但是发生过这样一起事故,当公司按照一个合作伙伴电子邮件的要求发了一批商品到对方,而对方却说商品型号发错了,经调查,公司确实是按电子邮件的要求发的货,而对方却不承认电子邮件中的商品型号。现在需要设置一个安全的电子邮件交流手段,不仅能对数据进行加密,还要能够防止数据被篡改,防止发送者抵赖。1.1.3 背景知识1. 非对称密钥加密加密算法有两大类:对称密钥加密和非对称密钥加密。在对称密钥加密技术中,加密和解密使用的是同一个密钥,由于难于通过常规的渠道进行安全的密钥传递,例如不能通过电子邮件安全地传递密钥,因此在电子商务等领域对称密钥加密技术受到了很大的限制。非对称密钥加密也叫公开密钥加密(Public Key Encryption),在加密和解密时使用不同的密钥,加密时使用的密钥和解密时使用的密钥形成一个密钥对,用其中的一个密钥加密的密文只能用另一个密钥解密,而不能由其它密钥(包括加密用的密钥)解密。通常一个密钥指定为“公钥”,可以对外公布,另一个则指定为“私钥”,只能由密钥持有人保管。公开密钥加密技术解决了密钥的发布和管理问题,是目前商业加密通信的核心。使用公开密钥技术,进行数据通信的双方可以安全地确认对方身份和公开密钥,提供通信的可鉴别性。因此,公开密钥体制的建设是开展电子商务的前提。非对称密钥加密算法主要有RSA、DSA、DiffieHellman、PKCS、PGP等。使用非对称密钥加密技术,可以实现下述目的:w 保密性:信息除发送方和接受方外不被其他人窃取;w 完整性:信息在传输过程中不被篡改;w 身份认证:接收方能够通过数字证书来确认发送方的身份;w 不可否认性:发送方对于自己发送的信息不能抵赖。2. 消息摘要算法消息摘要算法(Message Digest Algorithms)是采用单向Hash算法将消息进行处理,产生的具有固定长度的摘要值,无论消息的长度是多少,所产生的摘要的长度是相同的。产生摘要的过程不需要密钥,算法本身决定了摘要的产生。摘要算法必须满足下述三个条件:无法从摘要反推出消息的内容;无法控制消息的摘要等于某个特定的值;无法找到具有同样摘要的消息。著名的摘要算法有MD5和SHA1。3. 数据加密和数字签名使用非对称密钥加密技术进行数据加密的原理是,发件人将待加密的报文(明文)用收件人的公钥进行加密,将加密后的报文(密文)发送给收件人,收件人用自己的私钥进行解密,从而得到明文,即原始的报文内容。收件人的私钥必须保管好,因为只有用收件人的私钥才能解密。数字签名技术的原理是用发件人的私钥对明文进行加密,将密文发送给收件人,收件人用发件人的公钥进行解密,如果能够成功解密,则说明该报文确实是由公钥的原始持有人发送的,即证明是由该人签名认可的。但是在实际操作中,出于加解密运行效率等原因,并不是直接对明文加密,而是对明文进行摘要运算(md5或sha1),对摘要进行加密,形成一个数字化的签名文本,附加在明文之后,收件人可以利用签名文本对明文进行验证,从而确认明文是由发件人签名,并且内容没有被篡改。1.1.4 实训材料每组计算机二台。PGP 8.1软件及汉化包。1.1.5 实训步骤本实训由每组二人合作完成,每人有一台计算机,各自安装PGP 8.1,并创建自己的公钥私钥对,然后互相交换公钥。为方便起见,本实训中称此二人为张三和李四。1. 安装安装PGP 8.1版,安装过程中会提问是否已经拥有PGP密钥对,初次安装回答“No, Im a New User”(Error! Reference source not found.),在提问选择安装插件组件时,根据需要选择,例如,如果希望在Microsoft Outlook中使用加密签名功能,则选中对应的选项(Error! Reference source not found.)。图1.11 安装时选择“新用户”图1.12 安装时为PGP选择插件组件2. 初始设置安装结束后,必须重启动系统。重新开机后,如果在安装时回答了“No, Im a New User”时,会出现PGP初始化设置窗口,为用户创建一对密钥并用口令保护密钥中的私钥(Error! Reference source not found.和Error! Reference source not found.)。图1.13 创建PGP密钥对图1.14 保护私钥的口令短语每组中各人使用自己的姓名(例如张三和李四)输入姓名、电子邮件地址、口令短语(即密码,至少8个字符长,用于保护私钥),然后接受默认值,直到完成。图1.15 PGP菜单此时,PGP已经根据输入的姓名、电子邮件地址生成了一对公钥私钥。公钥私钥对在PGP中称为密钥环(Keyring)。3. 密钥管理安装后,在系统托盘上可以看到PGP的图标。点击该图标出现PGP的菜单(见Error! Reference source not found.),通过【选项】菜单,可以对PGP进行配置。从Error! Reference source not found.中可以看到,密钥环文件保存在C:Documents and SettingsAdministratorMy DocumentsPGP目录下,公钥文件是pubring.pkr,私钥文件是secring.skr。公钥文件和私钥文件都是二进制文件。? 提示:用户的密钥是极其重要的文件,如果丢失了密钥环,将导致无法解密已被加密的文件,因此,要将公钥和私钥保存到光盘等永久性存储介质上,并保存好口令短语(密码),长期保存(数年以上)。图1.16 密钥环文件(1) 新建密钥环前一步骤是针对新用户,在安装后重启动操作系统时创建了一个密钥环(内含公钥私钥对),当需要时还可以创建新的密钥环。通常情况下只需拥有一个自己的密钥环。从系统托盘的PGP图标打开PGPkeys,窗口中显示的是PGP密钥环。从菜单【密钥】【新建密钥】打开【PGP密钥生成向导】,过程与前述相同,创建结束后,窗口中将显示二个用户的密钥环(本实训每人只需创建一个密钥环)。(2) 发布自己的公钥现在每组中各人都有自己的密钥环,但是还需要将自己的公钥传给同组的对方,以便今后的通信。从系统托盘中打开PGPkeys,窗口中显示的是PGP密钥环。有三种办法可以发布公钥,如果有多个密钥环,应先选中要操作的密钥环(Error! Reference source not found.中选中“张三”):1) 导出为文本文件:从菜单中【密钥】【导出】(Error! Reference source not found.),可将PGP密钥环中的公钥导出为ascii文本文件,默认的文件扩展名为.asc,可用记事本打开阅读。可将该文件直接复制给联系人(如通过U盘等);2) 通过电子邮件发送:选择菜单【服务器】【邮件接收人】可以将公钥通过电子邮件发送给联系人(Error! Reference source not found.);3) 发送到互联网上的公用密钥服务器(keyserver):这是最方便的办法,选择菜单【服务器】【域服务器】(Error! Reference source not found.),PGP会自动将公钥在互联网上发布。图1.17 导出密钥、导入密钥图1.18 发布公钥(3) 保护自己的私钥私钥是非常重要的文件,即不能丢失,又不能被他人获得,有两件事是必须做的:w 备份:可以将私钥和公钥文件复制到光盘上。w 加口令保护:在生成PGP密钥环时已经使用口令对私钥进行加密保护,通过PGPkeys工具可以修改保护口令。(4) 收藏联系人的公钥图1.19 用户张三导入李四的公钥当通过U盘或电子邮件收到他人的公钥后(以ascii文本文件形式保存的公钥),可以通过PGPkeys工具导入到PGP中,用于今后的通讯。方法是从菜单中【密钥】【导入】(Error! Reference source not found.),然后选择联系人的公钥文件(后缀asc),导入后的密钥也称为密钥环,但其中只有公钥(Error! Reference source not found.)。4. 加密和解密数据进行数据加密的首要条件是必须持有接收者的公钥,发送者必须确认接收者就是该公钥的原始拥有人,加密文件只能发送给公钥的原始持有人。通过前述步骤,用户张三拥有了自己的密钥环,以及李四的密钥环(只有公钥,Error! Reference source not found.),用户李四拥有自己的密钥环,以及张三的密钥环(只有公钥)。数据的加密是使用接收者的公钥对数据进行加密,数据的解密是使用接收者的私钥(只有接收者本人拥有,并有口令保护)对数据进行解密,这就是非对称密钥加密的原理。用PGP加密和解密数据有多种途径,本实训介绍最简单直观的方法。(1) 加密数据下面的例子说明“张三”将一段文字加密后传给“李四”的过程。在“张三”的计算机上,打开任何一个字处理软件,如Word或记事本,输入一些文字,例如:这是双方商议的合同内容,我方确认的条款如下:1、第一条:上述内容核对无误。对数据进行加密时,必须使用数据接收者的公钥(即李四的公钥)对数据进行加密。方法是在保留光标在输入窗口的同时,从系统托盘中PGP的图标中选择【当前窗口】【加密】(Error! Reference source not found.),在弹出的【密钥选择对话框】中有两个公钥,一个是自己的,一个是对方“李四”的,自己的名字默认已在接收人栏目,将数据接收者李四拖入接收人栏目,然后按【确定】,当前窗口的数据即被加密。一个加密文件可以有多个接收人,每个接收人都可以用自己的私钥解密该文件。发送人默认是接收人之一,这是为了防止以后发送人再也无法解密自己发送的文件。如果张三将自己的名字从接收人栏目中删除(Error! Reference source not found.),这样加密后的文件连张三本人也无法解密,而只有李四能够解密。图1.110 加密数据图1.111 选择加密用公钥加密后的内容是ascii文本形式(Error! Reference source not found.),但是不可读。加密的内容由“-BEGIN PGP MESSAGE-”开始,以“-END PGP MESSAGE-”结束。图1.112 加密后信件的内容图1.113 解密后的内容张三将数据加密后,可以用任何方式(电子邮件、U盘复制)将文件发送给李四。(2) 解密数据当收到加密的数据后,因为数据是用接收者的公钥加密的,必须用接收者的私钥进行解密。方法与加密基本相同,下面说明李四将收到的密文解密的过程。在“李四”的计算机上用记事本或其它字处理软件打开加密后的数据,在保留光标在该窗口的同时,从系统托盘中PGP的图标中选择【当前窗口】【解密&校验】,这时只有一个私钥,所以没有其它选择,只能选择自己的私钥,在输入私钥的保护口令后,数据被解密,解密后的数据显示在【文本查看器】窗口中(Error! Reference source not found.)。解密需要二个条件:一是接收者的私钥,二是该私钥的保护口令。5. 数字签名及验证进行数字签名的首要条件是接收者拥有发送者的公钥,并且接收者认可发送者的公钥。数字签名是用发送者的私钥对数据进行处理,它不对数据加密,而是根据数据的内容形成一个摘要,然后对摘要进行加密(即签名),该签名摘要保证了数据的不可抵赖性和不可篡改性,即证明了数据是由该私钥的拥有者发出的,并且发出以后没有被有意或无意的篡改过。接收者只要用发送者的公私即可对其进行验证。(1) 数字签名下面李四将发出一份签名的文件给张三。在李四的计算机上编辑文件,然后进行签名,过程与加密相似,从系统托盘中PGP的图标中选择【当前窗口】【签名】,签名用自己的私钥,因此还需要输入密钥口令。签名后的文本由两部分组成,第一部分是文件原来的内容,第二部分是签名,二部分由“-BEGIN PGP SIGNATURE-”分隔,见Error! Reference source not found.。(2) 数字签名的验证用PGP对签名后的数据进行验证的方法与解密的过程完全相同,在“张三”的计算机上打开签名后的文件,从系统托盘中PGP的图标中选择【当前窗口】【解密&校验】,只是结果显示有些不同,显示中带有“有效签名”的文字说明、签名人的名字、签名的时间等信息(见Error! Reference source not found.)。其中“来自无效的密钥”表示该密钥未被验证。图1.114 签名后的内容图1.115 验证签名应该注意对签名后的文本不能作任何改动,即使是删除一个空格或加入一个空行,也会引起签名的失效,由此可以保证文件的不可篡改性。Error! Reference source not found.显示删除一个空格后(文件中“李四”和“签名”之间的空格)的无效签名。图1.116 无效签名6. 发送签名并加密的邮件不论是使用Outlook Express还是使用Web邮件(如google邮件),都可以象上述操作那样实现邮件的加密和签名,操作方法基本一致,Error! Reference sour

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论