`
caoruntao
  • 浏览: 480829 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论
阅读更多

HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。这个系统的最初研发由网景公司进行,提供了身份验证与加密通讯方法,现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。

 

它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返回网络上传送回的结果。HTTPS实际上应用了Netscape的安全套接字层(SSL)作为HTTP应用层的子层。(HTTPS使用端口443,而不是象HTTP那样使用端口80来和TCP/IP进行通信。)SSL使用40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。HTTPS和SSL支持使用X.509数字认证,如果需要的话用户可以确认发送者是谁。

  也就是说它的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。

 

HTTPS和HTTP的区别:

      一、https协议需要到ca申请证书,一般免费证书很少,需要交费。

  二、http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。

  三、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

  四、http的连接很简单,是无状态的,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议 要比http协议安全。

 

 

HTTPS解决的问题

一、信任主机的问题.

  采用https 的server(服务器) 必须从CA (Certificate Authority)申请一个用于证明服务器用途类型的证书. 该证书只有用于对应的server 的时候,客户端才信任此主机. 所以目前所有的银行系统网站,关键部分应用都是https 的. 客户通过信任该证书,从而信任了该主机. 其实这样做效率很低,但是银行更侧重安全. 这一点对我们没有任何意义,我们的server ,采用的证书不管自己issue(发布) 还是从公众的地方issue, 客户端都是自己人,所以我们也就肯定信任该server.

二、通讯过程中的数据的泄密和被篡改

  1. 一般意义上的https, 就是 server 有一个证书.

  a) 主要目的是保证server 就是他声称的server. 这个跟第一点一样.

  b) 服务端和客户端之间的所有通讯,都是加密的.

  i. 具体讲,是客户端产生一个对称的密钥,通过server 的证书来交换密钥. 一般意义上的握手过程.

  ii. 接下来所有的信息往来就都是加密的. 第三方即使截获,也没有任何意义.因为他没有密钥. 当然篡改也就没有什么意义了.

  2. 少许对客户端有要求的情况下,会要求客户端也必须有一个证书.

  a) 这里客户端证书,其实就类似表示个人信息的时候,除了用户名/密码, 还有一个CA 认证过的身份. 因为个人证书一般来说是别人无法模拟的,所有这样能够更深的确认自己的身份.

  b) 目前少数个人银行的专业版是这种做法,具体证书可能是拿U盘(即U盾)作为一个备份的载体.

分享到:
评论

相关推荐

    HTTPS连接 解析 ssl

    尽管人们常把HTTPS和SSL联系在一起,但实际上现代的HTTPS连接通常指的是使用TLS协议。 当用户通过浏览器访问HTTPS网站,如Amazon,首先会发送一个"Client Hello"消息。这个消息包含了以下关键信息: 1. **随机数**...

    HTTPS与SSL

    总的来说,HTTPS和SSL是网络通信中确保数据安全和服务器身份验证的重要工具,它们通过复杂的加密机制和证书验证,提高了互联网上交易和敏感信息传输的安全水平。但同时,用户和服务器都需要持续关注并应对可能出现的...

    https+ssl.rar

    在IT行业中,HTTPS和SSL是两个非常重要的概念,它们与网络安全和数据传输息息相关。HTTPS(HyperText Transfer Protocol Secure)是一种安全的超文本传输协议,它通过结合使用HTTP协议与SSL/TLS(Secure Sockets ...

    openjdk遇到的https的ssl异常解决方案

    openjdk 遇到的 HTTPS 的 SSL 异常解决方案 在使用 openjdk 时,可能会遇到 HTTPS 的 SSL 异常问题...通过遵循这些步骤和注意事项,可以成功解决 openjdk 遇到的 HTTPS 的 SSL 异常问题,确保应用程序的安全和可靠性。

    HTTPS_SSL.zip_LINUX java https_https

    SSL和TLS是用于网络通信安全的协议,它们负责在客户端和服务器之间建立安全的连接。SSL已经被TLS取代,但两者常被一起提及。它们的工作原理包括握手过程、密钥交换、数据加密等步骤,确保数据在传输过程中不被第三方...

    HTTPS与SSL.docx

    总的来说,HTTPS和SSL/TLS是互联网上保障信息安全的重要工具,它们通过复杂的加密算法和身份验证机制,为用户提供了更加安全的网络环境。虽然它们不能消除所有安全风险,但却是当前最广泛接受的网络安全解决方案,...

    iOS AFNetworks https ssl加密

    当涉及到HTTPS和SSL加密时,确保数据传输的安全性变得至关重要。本文将深入探讨iOS中使用AFNetworking进行HTTPS SSL加密的相关知识点。 首先,HTTPS是一种基于HTTP协议的网络安全通信协议,它通过SSL/TLS(Secure ...

    HTTPS(SSL)工作原理

    HTTPS通过SSL/TLS协议提供了安全的数据传输通道,确保了用户数据在网络上传输时的安全性和隐私性。通过对TLS握手过程的深入了解,我们可以更好地理解HTTPS是如何工作的,并认识到它在现代互联网安全中的重要作用。

    https/ssl 证书

    在互联网世界中,数据安全是至关重要的,HTTPS(Hyper Text Transfer Protocol Secure)和SSL(Secure Socket Layer)证书是保障网络安全的重要工具。它们为用户提供了一个安全的环境,使得用户可以放心地进行在线...

    https安全认证的证书文件 ssl.zip

    1. **HTTPS和SSL证书的定义** HTTPS是HTTP(超文本传输协议)与SSL/TLS的结合,用于在客户端和服务器之间建立安全的通信通道。SSL证书则包含了一组公钥和私钥,公钥用于加密数据,私钥用于解密,确保数据在传输时不...

    httpClient实例httpClient调用 http/https实例 忽略SSL验证

    这个实例主要涉及如何配置HttpClient来忽略SSL(Secure Socket Layer)验证,这对于在开发和测试环境中处理自签名证书或未认证的服务器非常有用。以下将详细介绍HttpClient的使用以及如何进行SSL验证的忽略。 首先...

    java_https_ssl

    通过`KeyManager`和`TrustManager`可以管理证书和密钥,`SSLSocketFactory`则用于创建SSL套接字。 keytool证书与密钥管理 `keytool`是Java提供的命令行工具,用于管理证书和密钥库,包括生成、导入、导出证书等操作...

    HttpClient4.5 实现https忽略SSL证书验证

    使用HttpClient4.5实现https请求忽略SSL证书验证工具类

    免费SSL证书_CloudFlare SSL和Wosign沃通SSL申请开通和安装使用

    本文将为大家介绍两款免费可申请使用的SSL证书:CloudFlare SSL和Wosign沃通SSL,以及它们的申请开通和安装使用流程。 CloudFlare是一家提供CDN服务的美国公司,它为全球的网站提供加速和安全防护。CloudFlare也...

    https,ssl,tsl,证书详细解读

    SSL和TLS是网络安全协议,它们主要负责在网络上传输数据时的加密和身份验证。SSL最初由Netscape公司开发,后来演进为IETF标准化的TLS。TLS 1.3是当前最新且广泛使用的版本,它提供了比早期版本更强的安全性。 SSL/...

    C#:https访问Web服务器SSL认证项目实例

    即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP...

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

    让我们看看如何在Java中使用SSL和HTTPS协议的源码实例: ```java import javax.net.ssl.HttpsURLConnection; import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.URL; public ...

    VC连接https_ssl

    在VC++编程环境中,连接HTTPS(安全超文本传输协议)并使用SSL(Secure Sockets Layer,安全套接层)是一项常见的任务,特别是在开发涉及到网络通信和数据加密的应用时。SSL是网络安全传输的基础,它提供了对数据...

    gsoap wsdl SSL WSDL支持HTTPS SSL协议

    gsoap wsdl SSL WSDL支持HTTPS SSL协议,已经编译好的wsdl,通过wsdl获取https的wsdl协议没有问题 如果遇到问题,可以用QQ问我,每天在线。 另外本人对gsoad熟悉,欢迎咨询

    CXF实现SSL安全验证

    本文将详细介绍如何使用 CXF 实现 SSL 安全验证,并在此基础上构建 HTTPS 的 Web Service。 ### 步骤一:生成密钥库 (Keystore) 首先,我们需要创建一个密钥库(Keystore),这是一个存储私钥和公钥证书的地方。在...

Global site tag (gtag.js) - Google Analytics