• SSH数据交互过程【转】


    最近发现一篇介绍SSH数据交互过程的文章,描述得很清楚,转载在这里。

    (1)SSH启动时,会主动找/etc/ssh/ssh_host*文档,系统刚安装好时是没有这些公钥密钥的,因此,SSH会计算这些公钥,同时也计算出自己需要的私玥文档

    (2)当客户机请求连接到SSH服务器,这需要相应的软件,Putty(免费)、SecureCRT和Xshell 4,最好不要下载中文版,有后门。

    (3)服务器接到请求后,传送通过第一步计算得到的公钥给客户端(这里可能是明码传送,公钥本来就是公开的)

    (4)a.若客户端第一次连接服务器,则会将服务器公钥数据记录。    b.若是已经记录过该服务器的公钥数据,则客户端会去比对此次接收到的与之前的记录是否有差异。若接受此公钥数据, 则开始计算客户端自己的公私钥数据

    (5)用户将自己的公钥传送给服务器。此时服务器:『具有服务器的私钥与客户端的公钥』,客户端则是: 『具有服务器的公钥以及客户端自己的私钥』,你会看到,在此次联机的服务器与客户端的密钥系统 (公钥+私钥) 并不一样,所以才称为非对称式密钥系统喔。

    (6)a.服务器到客户端:服务器传送数据时,拿用户的公钥加密后送出。客户端接收后,用自己的私钥解密;      b.客户端到服务器:客户端传送数据时,拿服务器的公钥加密后送出。服务器接收后,用服务器的私钥解密。

    SSH联机过程,前5步的目的要让服务器和客户端各自拥有自己的公私玥和对方的公钥,第六步则是实现,服务器拿客户端的公钥加密数据传给客户端,只有这个客户端的私玥才能解密,其它任何人截获其数据都会因为没有对应的私玥而无法打开(因为私玥和公钥是成对的!),反过来,客户端传数据给服务器也是一样。

     

    原文地址:http://isway.cn/?p=64

  • 相关阅读:
    WebPart 生存周期
    【Linq to SharePoint】对列表查询的分页技术
    新闻联播 代码
    首页顶部图片带Flash代码
    [翻译]简单谈谈事件与委托
    asp.net调试
    ASP.NET 2.0加密Web.config 配置文件
    网站用户登录和验证的资料
    Membership的一些资料
    asp.net网站登录的一些资料。
  • 原文地址:https://www.cnblogs.com/eastson/p/2573432.html
Copyright © 2020-2023  润新知