实验目的
掌握常见的密码学算法应用,包含des aes md5 rsa等
实验环境
一台Centos 7.2 已经安装openssl组件
实验原理
openssl是Linux内置的一款开源工具,实现了常见的密码算法与应用。通过openssl操作,完成各种密码算法的应用。
实验步骤
创建一个文件,用于被加密,文件内容为12345,文件名为test.txt
echo 12345 >test.txt
一、对称加密
1、使用rc4加解密
加密
openssl enc -e -rc4 -in test.txt -out test_rc4.enc
解密
openssl enc -d -rc4 -in test_rc4.enc -out test_rc4.dm
2、使用AES加解密
openssl enc -e -aes-128-cbc -a -salt -in test.txt -out test_aes128.enc
解密
openssl enc -d -aes-128-cbc -a -salt -in test_aes128.enc -out test_aes128.d
3、使用3DES加解密
加密
openssl enc -e -des3 -a -salt -in test.txt -out test_des3.enc
解密
openssl enc -d -des3 -a -salt -in test_des3.enc -out test_des3.d
二、非对称加密
1、RSA加解密码
生成RSA密钥对
openssl genrsa -out rsa.key 1024
导出公钥
openssl rsa -in rsa.key -pubout -out rsa_pub.key
使用公钥加密文件
openssl rsautl -encrypt -in test.txt -inkey rsa_pub.key -pubin -out test_rsa.enc
使用私解解密文件
openssl rsautl -decrypt -in test_rsa.enc -inkey rsa.key -out test_rsa.c
使用公钥解密报错
openssl rsautl -decrypt -in test_rsa.enc -inkey rsa_pub.key -out test_rsa.c
实验总结
通过实验的openssl 实现对称加解密与非对称加解密两种基线的加解密功能。