小编mac*_*syz的帖子

为什么SFTP客户端只需要知道私钥,不需要公钥?

当我从客户端连接SFTP服务器时,我只需要向客户端软件提供私钥,而不是公钥.我不知道这是如何工作的,因为从[1]和[2]开始,两者都要求客户端软件也知道公钥.

我对SFTP如何工作的理解

建立

  • 客户端:生成私钥/公钥对.

  • client:将公钥发送给服务器

  • server:将此公钥添加到其授权密钥列表中

在连接期间

  • 客户端:告诉服务器公钥

  • server:检查公钥是否被授权,如果没有,拒绝,否则,向客户端发送随机会话ID

  • 客户端:客户端使用私钥对随机会话ID进行编码并发送给服务器

  • server:通过公钥解码并确认身份.

在这种情况下,客户端需要公钥.但是,我没有提供此功能,但SFTP客户端仍然能够连接服务器.那么这个SFTP协议真的有用吗?

[1] http://www.openssh.org/txt/rfc4252.txt

[2] https://www.eldos.com/security/articles/1962.php

ssh sftp

7
推荐指数
1
解决办法
5646
查看次数

标签 统计

sftp ×1

ssh ×1