实验目标:实际操作Linux工具来对文本进行非对称加解密,ssh 连接主机的实验,通过这两个实验,理解了非对称加解密的过程和应用场景,了解非对称加密的机制和特点。
实验过程:实验一:对文本进行非对称加密
(1)方式一:公钥加密,私钥解密
1、新建目录
为了避免和之前产生的文件混淆,在新建的目录下进行操作
2、创建文件
使用“echo”命令创建一个内容为“i love shiyanlou”的文件message.txt
3、生成私钥
使用 openssl 生成一个 2048 位的私钥 private.pem
4、生成公钥
根据私钥生成公钥 public.pem
5、公钥加密
用公钥对 message.txt 加密,输出密文到 enc.txt 文件中,并查看密文内容
6、私钥解密
用私钥对 enc.txt 进行解密,输出到 dec.txt 文件中,使用 cat dec.txt 来看解密之后的信息
(2)方式二:私钥加密,公钥解密(签名)
1、私钥签名
用私钥 private.pem 对 message.txt 进行签名
2、公钥验证
用公钥 public.pem 对签名 sign.bin 进行验证
实验二:通过 ssh 连接理解非对称加解密
1、生成公钥和私钥
采用 rsa 算法生成一对公钥和私钥
2、添加公钥
在远程机器的 ~/.ssh 目录下新建一个 authorized_keys 文件,添加 id_rsa.pub (公钥信息)的内容到里面
3、连接远程主机
使用 ssh 命令连接远程主机
4、测试方式
输入exit,如果出现Connection to localhost closed,说明刚刚登录远程主机成功
实验心得:
通过实际动手对文本进行非对称加密,使我更加了解“非对称”的特点,即加密和解密使用的不是同一个密钥,有公钥和私钥之别。公钥加密私钥解密,这实现了数据的保密性,而私钥加密公钥解密,则实现了数据的可认证性和不可否认性。正因为有公私钥,使其加解密过程的复杂程度比对称加密要高,因此RSA很少用于加密大量的数据,而通常用于加密会话密钥和用于数字签名。
ssh连接远程主机,本质上也是一种签名,之所能被远程主机所“认可”而同意被连接,是因为用“私钥”签名,当远程主机用“公钥”验证签名为真时,识别出了“我”的身份,从而同意被连接。
学习时间 78分钟
操作时间 71分钟
按键次数 1196次
实验次数 5次
报告字数 2148字
是否完成 完成