首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么在客户端-服务器通信中使用https而不是SSH?

在客户端-服务器通信中使用HTTPS而不是SSH的原因是因为两者有不同的应用场景和安全特性。

  1. 应用场景:
    • HTTPS(Hypertext Transfer Protocol Secure)是一种通过加密和身份验证保护数据传输的通信协议,主要用于Web浏览器和Web服务器之间的通信。它在互联网上广泛应用于保护网站的敏感数据,如登录凭证、支付信息等。
    • SSH(Secure Shell)是一种用于远程登录和安全文件传输的协议,主要用于远程管理服务器和执行命令。它通常用于服务器之间的通信,例如通过终端远程登录到服务器进行管理和维护。
  • 安全特性:
    • HTTPS使用SSL/TLS协议对通信进行加密,确保数据在传输过程中的机密性和完整性。它通过使用公钥加密和私钥解密的方式,使得只有服务器能够解密客户端发送的数据,从而防止中间人攻击和数据窃取。
    • SSH也使用加密技术对通信进行保护,但其主要目的是提供安全的远程登录和文件传输。SSH使用公钥加密和私钥解密的方式进行身份验证和数据传输,确保通信的机密性和完整性。

综上所述,HTTPS和SSH在客户端-服务器通信中有不同的应用场景和安全特性。HTTPS主要用于Web浏览器和Web服务器之间的通信,通过加密和身份验证保护敏感数据的传输;而SSH主要用于远程登录和安全文件传输,用于服务器之间的通信。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

为什么 build 方法放在 State 不是 StatefulWidget

老孟导读:此篇文章是生命周期相关文章的番外篇,查看源码的过程中发现了这一有趣的问题,欢迎大家一起探讨。...为什么 build 方法放在 State 不是 StatefulWidget 呢?其中前2点是源代码的注释给出的原因,最后一点是我的一点个人理解。...闭包 this 指向异常 假设 build 方法 StatefulWidget ,StatefulWidget 的子类写法如下: class MyWidget extends StatefulWidget...如果 build 方法 State ,代码如下: class MyWidget extends StatefulWidget { final Color color; const MyWidget...性能 有状态的组件包含StatefulWidget 和 State,当有状态组件的配置发生更改时,StatefulWidget 将会被丢弃并重建, State 不会重建,框架会更新 State 对象

89820

为什么 Linux 上使用 exa 不是 ls?

我们生活在一个繁忙的世界里,当我们需要查找文件和数据时,使用 ls 命令可以节省时间和精力。但如果不经过大量调整,默认的 ls 输出并不十分舒心。...当有一个 exa 替代方案时,为什么要花时间眯着眼睛看黑白文字呢? exa 是一个常规 ls 命令的现代替代品,它让生活变得更轻松。这个工具是用 Rust 编写的,该语言以并行性和安全性闻名。...它使用颜色来区分文件类型和元数据。它能识别符号链接、扩展属性和 Git。而且它体积小、速度快,只有一个二进制文件。 跟踪文件 你可以使用 exa 来跟踪某个 Git 仓库中新增的文件。...扩展文件属性 当你使用 exa 探索 xattrs(扩展的文件属性)时,--extended 会显示所有的 xattrs。...它的颜色编码让我更容易多个子目录中进行搜索,它还能帮助我了解当前的 xattrs。

2K40
  • 应用开发,我为什么选择 Flutter 不是 React Native ?

    为什么我更倾向于 Flutter 一段时间以来,React Native 一直是全球领先的跨平台开发框架。而且 Flutter 出现之前,React Native 可谓无可匹敌。...开发高性能应用 应用性能方面,Flutter 同样明显领先于 React Native。几乎所有性能测试,Flutter 的性能都比 React Native 更好。...React Native 需要使用格拉器或中间件才能通过 JavaScript 与原生组件进行通信 Flutter 则完全不需要。这不仅可以加快开发速度,更可以优化运行速度。...例如,使用 Flutter 时,应用动画的运行速率可以达到每秒 60 帧。 对于混合应用开发,将代码、原生组件以及库集成至新架构时,React Native 会带来更高的复杂性。...React Native 官方文档并不提供任何明确的支持或定义步骤,导致开发者找不到得到广泛认可的发布流程自动化指南。

    3.3K20

    Java为什么使用单继承不是多继承?

    多继承虽然能使子类同时拥有多个父类的特征,但是其缺点也是很显著的,主要有两方面: (1)如果在一个子类继承的多个父类拥有相同名字的实例变量,子类引用该变量时将产生歧义,无法判断应该使用哪个父类的变量...正因为有以上的致命缺点,所以java禁止一个类继承多个父类; 接口中不能有实例变量,只能有静态的常量,不能有具体的方法(包含方法体),只能有抽象方法,因此也就摒弃了多继承的缺点。...,即使存在一定的冲突也会在编译时提示出错; 引用静态变量一般直接使用类名或接口名,从而避免产生歧义,因此也不存在多继承的第一个缺点。...总结: java为什么要单继承,多实现,总结如下: 若为多继承,那么当多个父类中有重复的属性或者方法时,子类的调用结果会含糊不清,因此用了单继承。 为什么是多实现呢?...参考:https://blog.csdn.net/jay198746/article/details/5630276 https://blog.csdn.net/qq_40922859/article/

    1.7K10

    什么代码要求我们使用LocalDateTime不是Date?

    作者:何甜甜在吗 来源:http://1t.click/a7Gm 项目开发过程中经常遇到时间处理,但是你真的用对了吗,理解阿里巴巴开发手册禁用static修饰SimpleDateFormat...通过阅读本篇文章你将了解到: 为什么需要LocalDate、LocalTime、LocalDateTime【java8新提供的类】; java8新的时间API的使用方式,包括创建、格式化、解析、计算、...# 为什么需要LocalDate、LocalTime、LocalDateTime 1.Date如果不格式化,打印出的日期可读性差 Tue Sep 10 09:34:04 CST 2019 2.使用SimpleDateFormat...多并发情况下使用SimpleDateFormat需格外注意 SimpleDateFormat除了format是线程不安全以外,parse方法也是线程不安全的。...calb属性设置cal c、返回设置好的cal对象 但是这三步不是原子操作 多线程并发如何保证线程安全 - 避免线程之间共享一个SimpleDateFormat对象,每个线程使用时都创建一次SimpleDateFormat

    1.1K20

    尤雨溪说:为什么Vue3 应该使用 Ref 不是 Reactive?

    我告诉他:“我们应该使用 ref,不是 reactive”。那么此时同学就会有疑惑:“为什么呢?ref 还需要 .value 处理,reactive 看起来会更加简单呢?”...为什么推荐使用ref不是reactive reactive使用过程存在一些局限性,如果不额外注意这些问题,可能会给开发带来一些不便。...❌ 使用方式不同( 使用 .value) ❌ 重新分配一个新对象会丢失响应性 ✅ 重新分配一个新对象不会失去响应 能直接访问属性...这可能让开发者愉快编码的同时,突然发现某些操作失去了响应性,不明所以。因此,建议不了解 reactive 失去响应的情况下慎用,更推荐使用 ref。 1....另外,说使用 Object.assign 为什么可以更新模板: Object.assign 解释是这样的:如果目标对象与源对象具有相同的键(属性名),则目标对象的属性将被源对象的属性覆盖,后面的源对象的属性将类似地覆盖前面的源对象的同名属性

    80810

    为什么云服务,移动APP开发者更需要PaaS不是IaaS

    一旦有了服务器,上面的服务器程序搭建才一直是困扰移动APP(或PC网站)项目最大的痛点。并且这个过程存在很大的不确定性。...传统Web网站时代,最值钱的程序员,是服务器开发人员如Java、.net、php等,因为一个项目的核心重点就是服务器端程序开发的成本,服务器开发人员水平的参差不齐导致众多项目不能如期达成目标甚至导致大量项目失败...因此PaaS云服务的普及带来的改变就是“让创业者和创新者更多关注自己的业务本身,不是技术”。 企业CTO从技术牛人转变为“采购员” IaaS服务就是卖服务器PaaS服务器是卖牛x程序员。...那么如何使用这些服务呢?答案很简单,就是三个字母“API”。...云时代,带来的颠覆性价值不是IaaS,PaaS服务已经名正言顺的成为推动行业快速发展的云服务的主力军。

    1.4K60

    看尤雨溪说:为什么Vue3 应该使用 Ref 不是 Reactive?

    我告诉他:“我们应该使用 ref,不是 reactive”。那么此时同学就会有疑惑:“为什么呢?ref 还需要 .value 处理,reactive 看起来会更加简单呢?”...为什么推荐使用ref不是reactive reactive使用过程存在一些局限性,如果不额外注意这些问题,可能会给开发带来一些不便。...❌ 使用方式不同( 使用 .value) ❌ 重新分配一个新对象会丢失响应性 ✅ 重新分配一个新对象不会失去响应 能直接访问属性...这可能让开发者愉快编码的同时,突然发现某些操作失去了响应性,不明所以。因此,建议不了解 reactive 失去响应的情况下慎用,更推荐使用 ref。 1....另外,说使用 Object.assign 为什么可以更新模板: Object.assign 解释是这样的:如果目标对象与源对象具有相同的键(属性名),则目标对象的属性将被源对象的属性覆盖,后面的源对象的属性将类似地覆盖前面的源对象的同名属性

    2.5K20

    https 是否真的安全,https攻击该如何防护,https可以被抓包吗?如何防止呢?

    相信大多程序员已经对这种算法很熟悉了:我们提交代码到github的时候,就可以使用SSH key:本地生成私钥和公钥,私钥放在本地.ssh目录,公钥放在github网站上,这样每次提交代码,不用麻烦的输入用户名和密码了...使用公钥进行加密,发送给服务端3. 服务器收到浏览器发来的值,使用私钥进行解密4. 解析成功之后,使用对称加密算法进行加密,传输给客户端之后双方通信使用第一步生成的随机数进行加密通信。...https 的加密方式是怎样的,对称加密和非对称加密,为什么要这样设计从上面我们可以知道,https 加密是采用对称加密和非对称机密一起结合的。证书验证阶段,使用非对称加密。...通常 HTTPS 抓包工具的使用方法是会生成一个证书,用户需要手动把证书安装到客户端,然后终端发起的所有请求通过该证书完成与抓包工具的交互,然后抓包工具再转发请求到服务器,最后把服务器返回的结果在控制台输出后再返回给终端...4.客户端验证:通过客户端进行验证,确保你正在与预期的目标进行通信不是中间人。5.定期更新和打补丁:及时更新你的系统和软件,并应用相关的安全补丁,以防止已知的漏洞被利用。

    60210

    Linux | 如何保持 SSH 会话处于活动状态

    远程服务器管理和安全数据传输SSH(Secure Shell)是不可或缺的工具。然而,它的便利性和安全性有时会因常见的问题受到损害:冻结 SSH 会话。...为什么 SSH 会关闭连接? 简而言之,这一切都归结于 TCP 超时。TCP 超时是指 TCP 连接或网络操作认为进程失败之前等待响应的持续时间。... Linux ,TCP 超时设置确定 TCP 连接或操作假设数据包丢失或连接无响应之前应等待多长时间。这种机制对于确保网络通信的可靠和高效至关重要。...换句话说,超过 11 分钟后,您的 SSH 会话将因不活动终止——即,如果您没有终端输入任何内容。 当然,您可以调整这些设置,但这不是正确的方法。...Linux 客户端,您的 Linux 桌面系统,您的主目录创建一个文件(如果尚不存在)“~/.ssh/config”。

    1.2K40

    网络协议之:还在用HTTP代理?弱爆了!快试试SOCKS5

    为什么使用SOCKS SOCKS是一种代理服务协议,为什么会要有代理服务协议呢?...企业级网络,为了保证企业网络的安全性,通常会有安装上防火墙,这样虽然保证了企业网络的安全,但是也阻止了客户端对外界网络的访问。...所以需要一个SOCKS 代理服务器来代替客户端和目标网站之间建立连接和进行数据通信。 SOCKS代理可以绕过防火墙来中继用户的TCP和UDP会话。...SOCKS5 因为SOCKS是运行在OSI七层协议的第五层会话层,所以它可以处理包括HTTP、HTTPS、POP3、SMTP 和 FTP等多种请求类型,所以可以使用SOCKS协议来进行邮件发送、网页浏览...另外,通过建立SSH隧道,在其中使用SOCKS5协议将各种TCP和UDP流量路由到各自的服务,那么只需要使用SSH不需要使用其他VPN网络。所以使用起来比较简单。

    1.2K10

    SSH 工作原理

    为什么要引入SSH?...平时大家经常所讲的SSH,其实是OpenSSH.OpenSSH是SSH协议的开源实现,基于SSH协议实现的工具OpenSSH最为出名。嵌入式服务器。用户通过远程主机通过OpenSSH连接服务器。...这意味着服务器要随时监听一个端口上供client来连接。 为什么要引入SSH? 一言以蔽之,就是因为网络的不安全性!...SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH正确使用时可弥补网络的漏洞。SSH客户端适用于多种平台。...SSH协议没有明确的服务端认证过程,通过一系列的服务端与客户端的交互来确定服务端的身份,该过程还会完成Host Key、User Key、Session Key等客户端与服务端之间的传输。

    2K10

    2018年9月25日python的web框架Django入门的理论知识

    get是从服务器请求数据,post是向服务器提交数据。 1.实际应用POST和GET都是向服务器提交数据,并且都会从服务器获取数据。...2、客户端, get方式通过URL提交参数数据,数据URL可以看到,是裸露的;post方式,数据放置HTML HEADER内提交,从URL是看不到的 3、对于get方式,服务器端用Request.QueryString...4、get方式提交的数据最多只能有1024字节,post则没有此长度限制 5、安全性问题。正如在2提到,使用get的时候,参数会显示地址栏上, post 不会。...所以,如果这些数据是中文数据而且是非敏感数据,那么使用 get ;如果用户输入的数据不是中文字符而且包含敏感数据,那么还是使用 post为好 WSGI,全称 Web Server Gateway Interface...所谓的 WSGI中间件同时实现了API的两方,因此可以WSGI服务和WSGI应用之间起调解作用:从WSGI服务器的角度来说,中间件扮演应用程序,从应用程序的角度来说,中间件扮演服务器 wsgi 服务接口的作用

    36710

    (2)逆向环境搭建

    逆向工程,我们经常会通过命令行来操纵iPhone 为了能够让Mac终端的命令行能作用在iPhone上,我们得让Mac和iPhone建立连接 通过Mac远程登录到iPhone的方式建立连接 SSH...安装OpenSSH工具(软件源http://apt.saurik.com) OpenSSH的具体使用步骤可以查看Description的描述 初次使用步骤 SSH是通过TCP协议通信,所以要确保...Mac和iPhone同一局域网下,比如连接着同一个WiFi Mac的终端输入ssh root@服务器主机地址,比如ssh root@10.1.1.168(这里的服务器是手机) 初始密码alpine...mobile用户) 公钥 » 授权文件 可以使用ssh-copy-id将客户端的公钥内容自动追加到服务器的授权文件尾部,也可以手动操作 复制客户端的公钥到服务器某路径 scp...通信,采用的是TCP协议 usbmuxd的使用1 下载usbmuxd工具包(下载v1.0.8版本,主要用到里面的一个python脚本:tcprelay.py) https://cgit.sukimashita.com

    59730

    SSH初认识:了解加密、端口和连接

    SSH 服务是作为未加密 Telnet 的安全替代品创建的,并使用加密技术来确保与远程服务器之间的所有通信都以加密方式进行。...了解不同的加密技术 SSH 的显著优势是使用加密来确保主机和客户端之间信息的安全传输。主机指的是要访问的远程服务器客户端指的是你用来访问远程服务器的计算机。...在建立安全连接之前,客户端和主机会根据优先顺序发布支持的密码列表,决定使用哪种密码。客户端支持的密码,出现在主机列表的最优先密码将被用作双向密码。...一旦建立了安全的对称通信服务器就会使用客户端的公钥生成挑战书,并将其发送给客户端进行身份验证。如果客户端能成功解密信息,就意味着它持有连接所需的私钥--SSH 会话随即开始。...它作为通信数据包的结尾部分,在对称加密数据之外发送。 SSH 如何与这些加密技术配合使用 SSH 的工作方式是利用客户端-服务器模式,对两个远程系统进行身份验证,并对它们之间传输的数据进行加密。

    1.7K10

    总结(四) 计算机网络

    1,混合加密 通信建立前通过非对称加密交换秘钥,后续不再使用。...HTTPS怎么建立连接的 1,先建立TCP三次握手。 2,客户端服务器索要验证服务器的公钥。 3,双方协商生产会话秘钥。 4,双方采用秘钥通信。 2和3就是SSH/TLS的握手过程。...2,服务器客户端发起Server hello请求。 内容: 确定SSH/TLS版本。 随机生成数。 确认的加密算法。 服务器的数字证书(公钥在这里)。...客户端经过 2MSL ⼀段时间后,⾃动进⼊ CLOSED 状态,⾄此客户端也完成连接的关闭。 为什么挥手要四次 关闭连接时,客户端给服务端穿FIN,这时候是只能接受,不发送数据。...发送 IP 包时,⾸先要确定 IP 包⾸部的⽬标地址,再从路由控制表中找到与该地址具有相同⽹络地址的记录,根据该记录将 IP 包转发给相应的下⼀个路由器。

    44971

    36 张图详解应用层协议:网络世界的最强王者

    应用协议与端口号 应用协议的通信方式可分为两类: 服务器客户端模型 P2P 模型 服务器客户端模型,始终公开固定 IP 地址的主机为其它主机的应用程序提供服务,请求服务的主机之间不会互相通信。...Telnet 协议实现了远程命令传输,但是客户端服务器跨越不可靠的公共网络时,命令传输过程可以截获 Telnet 通信的所有数据,然后使用截获的用户名和密码来通过 Telnet 服务器的身份认证,...并且参与通信的四方都不是直接相连,而是分别独立连接到互联网。这个架构,邮件发送方和接收方使用的电脑称为用户代理。...SMTP 用于收发双方的邮件服务器之间,不是用户代理和邮件服务器之间的通信方式。实际使用,发送方用户代理与发送方服务器之间也常采用 SMTP 协议。...IMAP 协议 POP3 协议的邮件客户端能够邮件服务器上执行的操作很少,而且邮件要下载到客户端本地,不保留在邮件服务器,实际使用时很不方便。目前使用更广泛的接收电子邮件的协议是 IMAP 。

    3.9K32

    内网转发及隐蔽隧道 | 使用DNS进行命令控制(dnscat2)

    SSH的隧道。...DNS隧道的应用场景如下:安全策略严格的内网环境,常见的 C&C 通信端口会被众多安全设备所监控,该网段只允许白名单流量出站,同时其他端口都被屏蔽,传统的C&C通信无法建立。...因为NS类型的记录不是用于设置某个域名的DNS服务器的,而是用于设置某个子域名的DNS服务器的。 如何验证域名解析设置是否成功?...(3):目标主机上安装dnscat2客户端 dnscat2客户端是用C语言编写的,因此使用前需要先进行编译。...服务器目前监听状态,执行以下命令测试客户端能否与服务器进行通信 dnscat2-v0.07-client-win32.exe --ping test.hack.com 可以看到,服务器收到了客户端的请求

    4K10
    领券