实验目的:通过实际动手操作openssl enc 对测试文件进行AES加解密,了解AES加解密的各个过程,从而进一步熟悉算法原理,并体会到AES算法的特点。
实验过程:
1、创建文件
使用“echo”命令创建一个内容为“i love shiyanlou”的文件aes.txt
2、进行加密
使用“openssl”命令对aes.txt进行加密,采用的加密算法是密钥为128bit位的AES-128,采取的工作模式是cbc
3、进行解密
因为AES也是对称加密算法的一种,所以在进行解密的时候,采取的密钥与加密时的密钥相同
4、不同模式
在解密时要使用相同的工作模式,如果加密的时候使用的是cbc模式,解密的时候却使用ecb模式,那么就会报错,无法进行解密
5、查看帮助
输入openssl enc --help可以查看帮助,可以看到AES加密算法基于密钥的长度不同,有三种不同的类型:AES-128,AES-192,AES-256,且对于AES-128而言就有cbc、ecb、ctr、cfb、cfb1、gcm等工作模式,可见其算法的多样性
6、其他模式
使用不同的工作模式,看看密文发生的变化
7、其他算法
除了对比不同的模式,还尝试了AES-192和AES-256这两个安全性更高的算法
实验心得:熟悉了AES加解密的各个过程,体会到了对称加密的特点,即加密与解密使用同一把密钥。通过openssl enc --help查看帮助,了解到AES加密的安全性,基于密钥的不同,可分为AES-128,AES-192,AES-256,且还有许多的工作模式。根据科克霍夫原则:现代密码体制的安全性不依赖与算法的保密性,而在于密钥的可变性,可以看出AES比DES的安全性更高。
学习时间 69分钟
操作时间 57分钟
按键次数 2352次
实验次数 10次
报告字数 1751字
是否完成 完成