PGP加密实验网络安全实验报告学号:姓名:班级:实验项目编号:B031120506实验项目名称:PGP加密实验一、实验目的:1.学会利用PGP工具实现安全通信2.理解安全通信实现过程二、实验环境:网络安全实验平台(装有windows、linux等多个系统虚拟机及相应软件)三、实验原理(或要求):实验应用PGP工具实现信息的安全通信,其实现流程为:本机首先生成公私钥对,并导出公钥给同组主机;在收到同组主机的公钥后将其导入到本机中,并利用其对文件进行加密;将加密后的密文传回给同组主机,本机利用自己的私钥对来自同组主机的密文进行解密。应用PGP工具过程中所使用的用户名均为userGX格式,其中G为组编号(1-32),X为主机编号(A-F),如第2组主机D,其使用的用户名应为user2D。四、实验步骤:1.生成公私密钥(1)本机单击实验平台“GnuPG”工具按钮,进入工作目录,键入命令:gpg--gen-key开始生成公私钥对。(2)生成用户标识(3)接下来gpg会根据以上信息生成公私密钥对,并将它们存放在C:\DocumentsandSettings\Administrator\ApplicationData\gnupg目录下,名字分别为:pubring.gpg和secring.gpg。2.导出公钥本机在gpg工作目录键入命令:gpg-a-oD:\Work\PGP\userGXpubkey.asc--exportuserGX(userGX)(userGX@CServer.Netlab),gpg会将公钥导入到D:\Work\PGP\这个指定目录的userGXpubkey.asc文件中。将userGXpubkey.asc文件发送到同组主机PGP共享目录中。3.导入同组主机公钥本机从同组主机发送来的userGYpubkey.asc文件中,将对方公钥导入至本机gpg库,其命令如下:gpg--importD:\Work\PGP\userGYpubkey.asc。PGP加密实验4.利用对方公钥进行加密(1)在“D:\Work\PGP\”目录中新建一文本文件“userGX.txt”(2)利用对方公钥对userGX.txt加密,并对其进行签名在gpg工作目录键入如下命令:gpg-sea-ruserGY@CServer.Netlab加密文件绝对路径,其中userGY@CServer.Netlab为USER-ID。加密完成后,gpg还要对其进行签名表明这个密文文件是“我”发出的,而不是“其它人”,在提示处输入前面设置的用于保护本机私钥的密码即可。最后在原文件所在目录下,生成一个名为“userGX.txt.asc”的文件,将该文件发送到同组主机PGP目录中。5.解密密文在gpg工作目录下键入命令:gpg-d加密文件绝对路径解密后文件路径,此时gpg要求输入前面设置的用于保护本机私钥的密码,输入密码,解开私钥。在存放加密文件的目录下就生了一个解密后的文件,打开解密文件,浏览正文,与同组主机确定其正确性。五、实验记录或结果生成公私密钥PGP加密实验解密密文六、思考题:根据PGP的加密原理,说明为什么PGP要比RSA加密速度要快得多。由于RSA算法计算量极大,在速度上不适合加密大量数据,所以PGP实际上用来加密的不是RSA本身,而是采用传统加密算法IDEA,IDEA加解密的速度比RSA快得多。PGP随机生成一个密钥,用IDEA算法对明文加密,然后用RSA算法对密钥加密。收件人同样是用RSA解出随机密钥,再用IEDA解出原文。这样的链式加密既有RSA算法的保密性(Privacy)和认证性(Authentication),又保持了IDEA算法速度快的优势。