SSH协议(从对称加密到非对称加密)

SSH协议(从对称加密到非对称加密)

简介

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。简单来说ssh是一种加密的用于远程登录的协议。

对称加密

对称加密的原理非常简单,假如计算机A要发送一段文字给计算机B,但是又不想让别人知道,最简单的办法就是,使用一大段密码进行加密,让别人不知道什么意思,这里术语就叫密钥,然后加密过后的文字通过网络发送给计算机B之后,计算机B为了读懂这段文字,这时就需要之前的密钥进行解密,如下图:

然而这里存在一个问题,万一别人通过网络传输或者其他手段把密钥给截取了,就凉了,所以这里需要一个复杂一点的非对称加密。

非对称加密

既然把密钥传输给别人不安全,那我们就要避免这个问题,首先计算机A和计算机B,分别拥有两个东西,叫做公钥和私钥,这两个东西有什么用呢,简单来说这两个东西是配套来使用的,一段文字通过公钥加密后,需要通过私钥解密才能看到,公钥就像锁,而私钥就像钥匙,现在计算机A拥有一把锁和钥匙,计算机B也拥有一把锁和钥匙,需要注意的是这两个东西是配套使用的,也就是只有自己的钥匙能开自己的锁。然后我们需要怎么做呢,原理很简单,计算机A和计算机B把自己的公钥复制一份,发送给对对方,也就是交换公钥,需要加密数据的时候就用对方的公钥解密,然后发送给对方,然后对方就用自己的密钥解密。如下图:

注:梯形为客户端公钥和私钥,长方形为服务器端公钥和私钥

公钥交换过程

公钥的交换过程也略微有点复杂,我们先来看个图:

简单来讲一下这个过程
1.首先客户端建立一个连接
2.服务器端将自己的公钥还有一个会话的ID发回给客户端,现在客户端得到了服务器端的公钥
3.客户端把自己的公钥(客户端公钥)和会话ID做一个异或运算,得到一个结果,然后把结果用服务器端的公钥加密发给服务器端
4.服务器端拿到那串东西后,用自己的私钥(服务器端私钥)解密得到那个结果,然后再和会话ID做异或运算,这样服务器端也得到了客户端的公钥

基于口令的远程登录

Linux利用ssh远程登录,一般有两种方式,一种是需要密码的,一种是不需要输入密码的,现在我们先来讨论下利用前面的原理如何实现,先看下图:

如上图所示,客户端想登录到服务器端怎么办呢
1.先做一个公钥交换,具体过程像上面那样
2.不是需要输入密码吗,那我就先把密码用服务器端的公钥加密一波在发出去给服务器端
3.服务器端得到加密后的密码后用自己的私钥(服务器私钥)解密一波就知道是不是正确了,然后密码正不正确得搞个反馈回去,这个反馈呢服务器端用客户端的公钥加密一波,再发回去给客户端
4.客户端拿到这个加密后的反馈,就直接用自己的私钥(客户端私钥)解密一下就完事

免密登录

免密登录是怎么做的呢,我们先来看个图:

1.首先不必做公钥交换了,在登录请求之前我需要将客户端的公钥发给服务器端
2.现在客户端发起一个登录请求
3.服务器端怎么做呢,先随机生成一串东西,然后用客户端的公钥进行加密,发给客户端
4.客户端拿到这串解密后的东西后用自己的私钥(客户端私钥)解密一下,如无意外,会得到原来的字符串,然后再把这个解密后的字符串发给服务器端
5.服务器端拿到这串字符串后和自己之前生成的字符串比对一下,看是不是一样,一样的话就是自己人了,把登录反馈回去

全部评论

相关推荐

这就是伊泽瑞尔:进什么厂,就是三方面决定,八股+项目可以进中小厂,要进大厂再刷刷算法。
点赞 评论 收藏
分享
Twilight_m...:表格简历有点难绷。说说个人看法: 1.个人基本情况里好多无意义信息,什么婚姻状况、健康状况、兴趣爱好、户口所在地、身份证号码、邮政编码,不知道的以为你填什么申请表呢。 2.校内实践个人认为对找工作几乎没帮助,建议换成和测开有关的项目,实在没得写留着也行。 3.工作经历完全看不出来是干什么的,起码看着和计算机没啥关系,建议加强描述,写点你在工作期间的实际产出、解决了什么问题。 4.个人简述大而空,看着像AI生成,感觉问题最大。“Python,C,C++成为我打造高效稳定服务的得力工具”、“我渴望凭借自身技术知识与创新能力,推动人工智能技术的应用发展,助力社会实现智能化转型”有种小学作文的美感。而且你确定你个人简述里写的你都会嘛?你AI这块写的什么“深入研究”,发几篇顶会的硕博生都不一定敢这么写。而且你AI这块的能力和软测也完全无关啊。个人简述建议写你对哪些技术栈、哪些语言、哪些生产工具的掌握,写的有条理些,而且最好是和测开强相关的。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务