`

HTTPS 协议

 
阅读更多

原创转载请注明出处:http://agilestyle.iteye.com/blog/2371306

 

HTTPS

HTTPS —— Hypertext Transfer Protocol over Secure Socket Layer,即基于SSL的HTTP协议,简单地说就是HTTP的安全版

 

依托SSL协议,HTTPS协议能够确保整个通信过程都是经过加密的,密钥随机产生,并且能够通过数字证书验证通信双方的身份,以此来保障信息安全。其中证书中包含了证书所代表一端的公钥,以及一些其所具有基本信息,如机构名称、证书所作用域名、证书的数字签名等,通过数字签名能校验证书的真实性。通信的内容使用对称加密方式进行加密,通信两端约定好通信密码后,通过公钥对密码进行加密传输,只有该公钥对应的私钥,也就是通信的另一端能够解密获得通信密码,这样既保证了通信的安全,也使加密性能和时间成本可控。

 

HTTPS协议在HTTP协议与TCP协议增加了一层安全层,所有请求和相应数据在经过网络传输之前,都会先进行加密,然后再进行传输。SSL及其继任者TLS是为网络通信提供安全与数据完整性保障的一种安全协议,利用加密技术,以维护互联网数据传输的安全,验证通信双方的身份,防止数据在网络传输的过程中被拦截和利用


 

HTTPS既支持单向认证,也支持双向认证,所谓的单向认证即只校验服务端证书的有效性,而双向认证则表示既校验服务端证书的有效性,同时也需要校验客户端证书的有效性。大部分情况下我们并不需要用到客户端证书,很多用户甚至没有客户端证书,但是在某些特定的环境下,如企业内部网络和涉及大额交易支付的场景下,也需要对用户的客户端进行校验,以保证通信的安全。

 

TLS

传输层安全协议(英语:Transport Layer Security,缩写:TLS),及其前身安全套接层(Secure Sockets Layer,缩写:SSL)是一种安全协议,目的是为互联网通信,提供安全及数据完整性保障。

SSL/TLS 协议均可以分为两层:

  • 一层为 Record Protocol,即记录协议;记录协议建立在可靠的传输协议(如TCP)之上,提供数据封装、加密解密、数据压缩、数据校验等基本功能。
  • 另一层为 Handshake Protocol,即握手协议。握手协议建立在记录协议之上,在实际的数据传输开始前,进行加密算法的协商,通信密钥的交换,通信双方身份的认证等工作。

 

SSL 握手协议大致工作流程:


 

完成握手后,客户端和服务端加密通信的流程:


 

Reference

https://zh.wikipedia.org/zh-cn/SSL

大型分布式网站架构设计与实践 陈康贤 著

  • 大小: 9.6 KB
  • 大小: 142.1 KB
  • 大小: 70.3 KB
分享到:
评论

相关推荐

    https协议下的文件下载

    在IT行业中,网络通信的安全性至关重要,HTTPS协议作为HTTP的安全版本,被广泛应用于数据传输,尤其是涉及敏感信息如用户登录、文件下载等场景。本文将深入探讨“HTTPS协议下的文件下载”这一主题,并通过分析提供的...

    pb9 通过http、https协议post

    标题中的“pb9 通过http、https协议post”指的是使用Protocol Buffers(PB)版本9通过HTTP和HTTPS协议进行POST请求。Protocol Buffers是Google开发的一种数据序列化协议,它提供了一种高效、灵活的方式来定义数据...

    HTTP使用WEBLOGIC修改为HTTPS协议

    在这个场景下,我们将探讨如何使用WebLogic,一个由Oracle公司提供的Java应用服务器,来将HTTP转换为HTTPS协议。 首先,理解HTTPS的核心是SSL/TLS协议。SSL(Secure Sockets Layer)和TLS(Transport Layer ...

    C语言使用OpenSSH模拟HTTPS协议

    在IT领域,HTTPS协议是互联网安全通信的重要标准,它基于SSL/TLS协议,为HTTP提供了加密处理、数据完整性以及服务器身份验证。而OpenSSH通常用于提供安全的远程登录和其他网络服务,它支持SSH协议,而非HTTPS。不过...

    HTTPS协议详解(一):HTTPS基础知识1

    **HTTPS协议详解** HTTPS,全称为“Secure Hypertext Transfer Protocol”,即安全超文本传输协议,是一种在HTTP基础上加入SSL/TLS安全层的网络协议。它的主要目标是提供对网络通信的加密、服务器身份验证以及消息...

    C# 实现HTTPS协议POST数据到接口.rar

    本示例聚焦于使用C#语言实现HTTPS协议下的POST请求,这在Web服务、API调用以及数据传输中非常常见。HTTPS提供了一种安全的方式,通过加密的数据传输来保护敏感信息,如用户登录凭证或交易数据。 首先,让我们了解...

    Java中的SSL及HTTPS协议实例源码.zip

    HTTPS协议在HTTP的基础上加入了SSL/TLS层,使得普通的HTTP请求在传输过程中被加密,防止中间人攻击和数据篡改。当用户访问HTTPS网站时,浏览器会检查服务器的数字证书是否由可信任的证书颁发机构签发,以确保连接的...

    Java中的SSL及HTTPS协议实例源码

    Java中的SSL和HTTPS协议实例源码涵盖了如何在Java应用程序中实现安全的网络通信。通过理解和应用这些知识点,开发者可以创建安全的Web服务,保护用户的隐私,防止数据泄露,并提升用户对应用的信任度。在实际项目中...

    https协议实现注册登录(面向对象版)

    在IT行业中,HTTPS协议是确保网络通信安全的重要手段,它基于SSL/TLS协议,用于加密传输数据,防止数据在传输过程中被窃取或篡改。面向对象编程是一种编程范式,它将程序设计为由相互协作的对象集合构成,每个对象都...

    https协议

    综上所述,HTTPS协议是互联网安全的基础,它通过SSL/TLS协议提供数据加密、服务器认证和消息完整性检查,保障了用户与服务器之间的通信安全。理解并掌握HTTPS的工作原理对于网络安全和开发人员来说至关重要。

    webRTC视频通话,https协议,录制端和播放端

    在Windows环境下使用nodejs作为服务器,使用https安全协议,能访问到webrtc最新接口; 资源内包含nodejs安装包,电脑虚拟摄像头安装包,https所需安全证书,操作说明书(不用下载别的东西了) 代码中将直播端和显示...

    调用https协议的webservice,以及证书手动加载

    调用https协议的webservice,以及证书手动加载。

    HTML5网页调用手机摄像头拍照,电脑摄像头也能调用.且支持HTTPS协议.zip

    HTML5网页调用手机摄像头拍照,电脑摄像头也能调用.且支持HTTPS协议.zip

    基于java的开发源码-SSL及HTTPS协议实例源码.zip

    基于java的开发源码-SSL及HTTPS协议实例源码.zip 基于java的开发源码-SSL及HTTPS协议实例源码.zip 基于java的开发源码-SSL及HTTPS协议实例源码.zip 基于java的开发源码-SSL及HTTPS协议实例源码.zip 基于java的开发...

    Android通过https协议与服务器端进行通信

    "Android 通过 HTTPS 协议与服务器端进行通信" Android 通过 HTTPS 协议与服务器端进行通信是指 Android 客户端使用 HTTPS 协议与服务器端建立连接,并进行数据交换的过程。HTTPS 协议是基于 HTTP 协议的加密版本,...

    HTTPS协议工作原理介绍.docx

    HTTPS协议是HTTP协议的安全版本,使用SSL/TLS协议对数据进行加密,保证数据的安全传输。HTTPS 协议的工作原理可以分为以下几个方面: 1. HTTPS的握手过程:客户端(浏览器)与服务端(网站)之间进行握手,确立...

    qt实现https协议文件下载

    对于"qt实现https协议文件下载"这一主题,我们将深入探讨如何利用Qt库来实现安全的HTTPS协议文件下载。 首先,我们需要理解HTTPS协议。HTTPS(HyperText Transfer Protocol Secure)是一种通过SSL或TLS加密的HTTP...

    qt http 或https 协议文件下载模块类,可以用来下载文件或更新程序

    如果用https协议,需要加入openssl。 直接进行调用 DownloadTool m_pDownloadTool = new DownloadTool(ExeDownLoadUrl, QApplication::applicationDirPath() + "/Update"); 添加开始下载信号槽 connect(this, SIGNAL...

    基于openssl 自行签发https 协议证书 openssl+nginx实现https自签有效加密实战记录

    "基于openssl自行签发https协议证书openssl+nginx实现https自签有效加密实战记录" 本篇文章主要讲述了使用openssl自行签发https协议证书,并使用nginx实现https自签有效加密的实战记录。文章包含了证书签发、nginx...

Global site tag (gtag.js) - Google Analytics