《Network Security Technology》Experiment Guide Encryption Algorithm
Lecture Code: 011184
Experiment Title:加密算法
KeyWords:MD5, PGP, RSA
实验目的:
1,通过对MD5加密和破解工具的使用,掌握MD5算法的作用并了解其安全性;
2,通过对PGP加密系统的使用,掌握PGP加密算法的作用并了解其安全性;
3,对比MD5和PGP两种加密算法,了解它们的优缺点,并总结对比方法。
实验环境:
2k3一台,XP一台,确保相互ping通;
实验工具:MD5V erify, MD5Crack, RSA-Tools,PGP8.1
MD5加密算法介绍
当前广泛存在有两种加密方式,单向加密和双向加密。
双向加密是加密算法中最常用的,它将明文数据加密为密文数据,可以使用一定的算法将密文解密为明文。
双向加密适合于隐秘通讯,比如,我们在网上购物的时候,需要向网站提交信用卡密码,我们当然不希望我们的数据直接在网上明文传送,因为这样很可能被别的用户“偷听”,我们希望我们的信用卡密码是通过加密以后,再在网络传送,这样,网站接受到我们的数据以后,通过解密算法就可以得到准确的信用卡账号。
单向加密刚好相反,只能对数据进行加密,也就是说,没有办法对加密以后的数据进行解密。
这有什么用处?在实际中的一个应用就是数据库中的用户信息加密,当用户创建一个新的账号或者密码,他的信息不是直接保存到数据库,而是经过一次加密以后再保存,这样,即使这些信息被泄露,也不能立即理解这些信息的真正含义。
MD5就是采用单向加密的加密算法,对于MD5而言,有两个特性是很重要的,第一是任意两段明文数据,加密以后的密文不能是相同的;第二是任意一段明文数据,经过加密以后,其结果必须永远是不变的。
前者的意思是不可能有任意两段明文加密以后得到相同的密文,后者的意思是如果我们加密特定的数据,得到的密文一定是相同的。
不可恢复性是MD5算法的最大特点。
实验步骤- MD5加密与破解:
1,运行MD5Verify.exe,输入加密内容‘姓名(英字)’,生成MD5密文;
2,运行MD5Crack3.exe(破解器),将生成的密文copy到MD5破解器中破解,点击‘开始’;
3,字符‘dong’被破解出来,建议:加密字符不要超过6个。
上图为本试验抓图样本1,要求加密自己姓名字符缩写,并能破译出来。
PGP加密软件介绍
PGP加密方式是比较优秀和安全的加密方式。
PGP加密软件的核心思想是利用逻辑分区保护文件,比如,逻辑分区D:是受PGP保护的硬盘分区,那么,每次打
开这个分区的时候,需要输入密码才能打开这个分区,在这个分区内的文件是安全的。
不再需要这个分区时,可以把这个分区关闭并使其从‘我的电脑’上消失,当再次打开时,需要输入密码。
没有密码,软件开发者本人也无法解密!PGP是全世界最流行的文件夹加密软件。
它的源代码是公开的,经受住了成千上万顶尖黑客的破解挑战,事实证明PGP是目前世界上最安全的加密软件。
它的唯一缺点是价格昂贵。
因为PGP技术是美国国家安全部门禁止出口的技术。
PGP (Pretty Good Privacy) 是一个可以让您的电子邮件 (E-Mail) 拥有保密功能的程式。
藉此您可以将您的邮件加密 (Encryption) ,一旦加密后,信息看起来是一堆无意义的乱码 (Random Characters)除了授权用户别人是破译不了的。
PGP 提供了极强的保护功能,即使是最先进的解码分析技术也无法破译(、(Decryption)加密的文字。
PGP 加密与解密不像其它传统加密的方式,而是利用所谓的公开钥匙密码学(Public Key Cryptology) 为基础。
举例来说,当您要传送一封保密信或档案给笔者时,必须先取得笔者的公开钥匙 (Public Key) ,并且将它加入您的公开钥匙环 ( Public Keying) 中,然后利用笔者的公开钥匙将信件加密。
当笔者收到您加密的信件后,笔者必须利用其相对的私人钥匙 (Secret Key) 来解密。
因此,除非其他人拥有笔者的私人钥匙,否则无法解开您所加密的信件。
同时,笔者在使用私人钥匙解密时,还必须输入通行码 (Pass Phrase),如此又对加密后的讯息多了一层保护。
注意:使用该软件前仔细阅读帮助文件,以免造成不必要的损失.
PGP加密软件是美国Network Associate 公司出产的免费软件,可用它对文件、邮件进行加密,在常用的WINZIP、WORD、ARJ、EXCEL等软件的加密功能均告可被破解时,PGP的加密方式更加安全。
此外,和同样装有PGP软件的朋友互相传递加密文件,安全性更强。
实验步骤– PGP安装与使用:
1,解压缩‘PGP.Desktop.v8.1.For.Windows.rar’到当前目录下,在文件夹‘PGP.Desktop.v8.1.For.Windows’中运行‘PGP8.exe’文件;
2,不要选‘I am a new user’
3,安装过程需要重启,重启回来提示输入许可证信息,此时打开‘PGP.Desktop.v8.1.For.Windows’夹中‘注册码.txt’,将其中的注册信息copy 到PGP License Authorization 框中,然后点‘Authorize’继续安装;或者点‘Later’也可以继续;
4,授权成功,点OK;
5,进入‘PGP密匙生成向导’;
6,输入用户名和邮件地址;
7,此处需要设定一个密码,推荐使用强密码;
8,一直下一步,直到结束该向导;
9,进入PGP磁盘设置向导。
10,设置加密文件的存放位置,使用一个事先创建的文件夹;
11,点‘Save’保存pgd文件;加密空间的默认设定值为100,可以根据实际需要设定;然后点‘Next’;
12,选‘Public Key’;
13,然后一直默认下一步,直到结束该向导;
14,开始加密你的想要加密的文档;观察‘我的电脑’发现多出了一个‘NEW PGPDISK’分区,而且该分区的大小约等于100MB,这是为什么呢?这个分区就是先前在PGP设置向导里面设置的加密分区,你需要加密的文件和文件夹直接拖进去就OK啦。
15,放个文件进去,然后右击该分区-〉PGP-〉Unmount PGPdisk;随后该分区消失了。
16,找回该分区:进入到保存pgd文件的文件夹(见第10步),双击打开该文件;
17,输入在第7步设置过的密码,点OK;
18,该分区又显示出来了。
19,以下为本试验抓图样本2(需要安装Backinfo)。
RSA加密软件介绍
RSA是由Ronald Rivest, Adi Shamir和Leonard Adleman在1977年开发的公开密钥算法。
在使用RSATool的时候需要注意以下几个参数的设置:
P:第一参数;
Q:第二参数(P和Q的长度不能相差太大);
E:公钥(随机生成);
N:公用模数,N=P*Q;
D:私钥
其中,参数N和E是公开的,D是私有的不能公开,P和Q在生成密钥后不再需要,必须销毁。
1、在“Number Base”组合框中选择进制为10 ;
2、单击“Start”按钮,然后随意移动鼠标直到提示信息框出现,以获取一个随机数种子;
3、在“KeySize(Bits)”编辑框中输入32 ;
4、单击“Generate”按钮生成;
5、复制“Prime(P)”编辑框中的内容到“Public Exp.(E)”编辑框;
6、在“Number Base”组合框中选择进制为16 ;
7、记录下“Prime(P)”编辑框中的十六进制文本内容。
8、再次重复第2 步;
9、在“KeySize(Bits)”编辑框中输入您所希望的密钥位数,从32到4096,位数越多安全性也高,但运算速度越慢,一般选择1024位足够了;
10、单击“Generate”按钮生成;
11、单击“Test”按钮测试,在“Message to encrypt”编辑框中随意输入一段文本,然后单击“Encrypt”按钮加密,再单击“Decrypt”按钮解密,看解密后的结果是否和所输入的一致,如果一致表示所生成的RSA密钥可用,否则需要重新生成;
12、到此生成完成,“Private Exp.(D)”编辑框中的内容为私钥,第7步所记录的内容为公钥,“Modulus (N)”编辑框中的内容为公共模数,请将上述三段十六进制文本保存起来即可。
13,以下为本试验抓图样本3,加密字符按照‘姓名缩写+学号’形式。