HTTPS:可以使用TLS或者SSL协议,而openssl是TLS、SSL协议的开源实现,提供开发库和命令行程序。openssl很优秀,所以很多涉及到数据加密、传输加密的地方都会使用openssl的库来做。

SSL是通讯链路的附加层。可以包含很多协议。https, ftps, .....是一种国际标准的加密及身份认证通信协议,您用的浏览器就支持此协议。SSL(Secure Sockets Layer)最初是由美国Netscape公司研究出来的,后来成为了Internet网上安全通讯与交易的标准。SSL协议使用通讯双方的客户证书以及CA根证书,允许客户/服务器应用以一种不能被偷听的方式通讯,在通讯双方间建立起了一条安全的、可信任的通讯通道。它具备以下基本特征:信息保密性、信息完整性、相互鉴定。 主要用于提高应用程序之间数据的安全系数。SSL协议的整个概念可以被总结为:一个保证任何安装了安全套接字的客户和服务器间事务安全的协议,它涉及所有TC/IP应用程序。

SSH:只是加密的shell,最初是用来替代telnet的。通过port forward,也可以让其他协议通过ssh的隧道而起到加密的效果。英文全称是Secure SHell。通过使用SSH,你可以把所有传输的数据进行加密,这样“中间人”这种攻击方式就不可能实现了,而且也能够防止DNS和IP欺骗。还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。SSH有很多功能,它既可以代替telnet,又可以为ftp、pop、甚至ppp提供一个安全的“通道”。SSH是由客户端和服务端的软件组成的,有两个不兼容的版本分别是:1.x和2.x。用SSH 2.x的客户程序是不能连接到SSH 1.x的服务程序上去的。OpenSSH 2.x同时支持SSH 1.x和2.x。SSH的安全验证是如何工作的从客户端来看,SSH提供两种级别的安全验证。第一种级别(基于口令的安全验证)只要你知道自己帐号和口令,就可以登录到远程主机。所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。可能会有别的服务器在冒充真正的服务器,也就是受到“中间人”这种方式的攻击。第二种级别(基于密匙的安全验证)需要依靠密匙,也就是你必须为自己创建一对密匙,并把公用密匙放在需要访问的服务器上。如果你要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求用你的密匙进行安全验证。服务器收到请求之后,先在你在该服务器的家目录下寻找你的公用密匙,然后把它和你发送过来的公用密匙进行比较。如果两个密匙一致,服务器就用公用密匙加密“质询”(challenge)并把它发送给客户端软件。客户端软件收到“质询”之后就可以用你的私人密匙解密再把它发送给服务器。用这种方式,你必须知道自己密匙的口令。但是,与第一种级别相比,第二种级别不需要在网络上传送口令。第二种级别不仅加密所有传送的数据,而且“中间人”这种攻击方式也是不可能的(因为他没有你的私人密匙)。但是整个登录的过程可能需要10秒。

OpenSSL:一个对SSL协议的C语言的实现函数库。

OpenSSH-----是对SSH协议的实现。OpenSSH常用于为SSH协议加密。

从编译依赖上看:

OpenSSH依赖于OpenSSL,没有openssl的话openssh就编译不过去,也运行不了。

SSL,SSH,OpenSSL,OpenSSH,HTTPS的区别相关推荐

  1. SSH、OpenSSH、SSL、OpenSSL及CA

    OpenSSL 1. SSH.OpenSSH.SSL.OpenSSL关系及区别 2. SSH介绍 2.1 概念 2.2 SSH的主要功能 2.3 示例讲解 2.4 ssh和sshd的区别 3. Ope ...

  2. 加密与解密、OpenSSL(SSL/TLS)、OpenSSH(ssh)、dropbear

    下面介绍的是Linux的加密与解密.OpenSSL(SSL/TLS).OpenSSH(ssh).dropbear. 一.数据的加密与解密 1.进程间通信基础 (1).进程间通信方式 同一主机间进程间的 ...

  3. 【ssl认证、证书】SSL 证书基本概念、证书格式、openssl和keytool的区别

    文章目录 1. keytool VS openssl 2. X.509 VS PKCS 2.1 PKCS 2.2 X.509 2.2.1 证书编码格式 2.2.1.1 DER 证书编码格式二进制 2. ...

  4. http和https的区别 与 SSL/TLS协议运行机制的概述

    http和https的区别 与 SSL/TLS协议运行机制的概述 参考1 1 http 是不使用的SSL/TSL的通信通道 窃听风险:第三方获取通信内容 篡改风险:修改通信内容 冒充风险:冒充他人身份 ...

  5. HTTP与HTTPS的区别及SSL协议

    超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂 ...

  6. http和HTTPS的区别及SSL介绍

    SSL (Secure Socket Layer) 为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,可确保数据在网络 上之传输过程中不会 ...

  7. SSL双向认证和SSL单向认证的流程和区别

    refs: SSL双向认证和SSL单向认证的区别 https://www.jianshu.com/p/fb5fe0165ef2 图解 https 单向认证和双向认证! https://cloud.te ...

  8. Linux+Apache2+openssl实现https验证

    首先安装SSL,再编译安装APACHE,再配置证书即可 1.下载apache和openssl 网址:http://www.apache.org       http://www.openssl.org ...

  9. fatal: Unsupported SSL backend ‘“openssl”‘. Supported SSL backends:

    $ git clone https://github.com/wdg1111/wdgreact.git Cloning into 'wdgreact'... fatal: Unsupported SS ...

  10. http与https的区别,http 1.0与1.1的区别

    Http与Https的区别: HTTP 的URL 以http:// 开头,而HTTPS 的URL 以https:// 开头 HTTP 是不安全的,而 HTTPS 是安全的 HTTP 标准端口是80 , ...

最新文章

  1. 美国卡尔顿学院计算机专业怎么样,美国卡尔顿学院排名
  2. java ecj_java - 在Maven构建中使用Eclipse Java Compiler(ecj) - 堆栈内存溢出
  3. 我设计的简单事务控制
  4. Manacher算法学习笔记 | LeetCode#5
  5. 配置 --- 将本地项目部署到阿里云上
  6. IdentityServer4-前后端分离的授权验证(六)
  7. 【双指针】Square Pasture G(P7153)
  8. 非阻塞 php,PHP异步非阻塞之路
  9. 【js】数组置空的其他方式及使用场景
  10. 窗口,视图,视图控制器和UIKit基础-IOS开发
  11. python找出有向图的所有环,Python:有向图中的所有简单路径
  12. 怎么查询服务器绑定的网站吗,服务器绑定网站吗
  13. 让你的Android应用与外部元素互动起来
  14. powershell cs上线_BasUSB实现后台静默执行上线CobaltStrike
  15. 在 github 新建一个文件夹
  16. 科目二 侧方位停车 流程记录 LTS
  17. codeforces1100 F. Ivan and Burgers(线性基)
  18. Android基础入门教程——4.1.2 Activity初窥门径
  19. 扒皮下音悦台的“返回顶部”图标效果
  20. 如何制作一个漂亮的二维码 QRBTF

热门文章

  1. vscode 常用插件安装
  2. 7-1 银行业务队列简单模拟 (25 分)
  3. 微信小程序中换行,空格(多个空格)写法
  4. HTML学习笔记(三)样式CSS
  5. PC问题-该虚拟机似乎正在使用中
  6. linux(1)- 简单的 shell 解释器
  7. 最小代价生成树Prim/Kruskal(c/c++)
  8. EIGRP协议邻居详解及故障实战分析
  9. 几个基于jvm 的微服务框架
  10. 程序员的魔法——用Masking GAN让100,000人都露出灿烂笑容