我试图了解SSH的机制;据我了解,使用ssh我们可以保护客户端和服务器之间的连接。
客户端将创建私钥和公钥(例如使用ssh-keygen);将公钥传递给服务器。
现在,我们有以下流程:
客户端->服务器; 客户端具有两个密钥对,因此,如果服务器发送数据(使用公钥加密,则客户端可以解密);但是服务器如何解密从客户端->服务器发送的数据;客户将使用公钥对数据进行加密;由于服务器只有公共密钥,它如何解密客户端发送给它的数据?
服务器->客户端; 服务器只有公共密钥;所以我认为这没关系;服务器将使用公钥来加密数据,然后客户端将使用其私钥来解密数据。
但是服务器如何解密从客户端->服务器发送的数据
因为在验证服务器之后,双方都使用称为Diffie-Hellman算法的某种版本来协商会话密钥。
该算法的设计方式是,双方在会话密钥的生成中均会做出同等的贡献。
生成的会话密钥是共享对称密钥,即,相同的密钥用于加密和解密。
请参阅Mudit Maheshwari的“了解SSH工作流”中的更多内容
和“ SSH(密钥生成器) ”:
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句