`
luckliu521
  • 浏览: 258847 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

SSL的工作流程简介(转)

 
阅读更多
1:客户端的浏览器向服务器传送客户端 SSL 协议的版本号,加密算法的种类,产生的随机数,以及其他服务器和客户端之间通讯所需要的各种信息。

2:服务器向客户端传送 SSL 协议的版本号,加密算法的种类,随机数以及其他相关信息,同时服务器还将向客户端传送自己的证书。

3:客户利用服务器传过来的信息验证服务器的合法性,服务器的合法性包括:证书是否过期,发行服务器证书的 CA 是否可靠,发行者证书的公钥能否正确解开服务器证书的“发行者的数字签名”,服务器证书上的域名是否和服务器的实际域名相匹配。如果合法性验证没有通过,通讯将断开;如果合法性验证通过,将继续进行第四步。

4:用户端随机产生一个用于后面通讯的“对称密码”,然后用服务器的公钥(服务器的公钥从步骤②中的服务器的证书中获得)对其加密,然后将加密后的“预主密码”传给服务器。
5:如果服务器要求客户的身份认证(在握手过程中为可选),用户可以建立一个随机数然后对其进行数据签名,将这个含有签名的随机数和客户自己的证书以及加密过的“预主密码”一起传给服务器。

6:如果服务器要求客户的身份认证,服务器必须检验客户证书和签名随机数的合法性,具体的合法性验证过程包括:客户的证书使用日期是否有效,为客户提供证书的CA 是否可靠,发行CA 的公钥能否正确解开客户证书的发行 CA 的数字签名,检查客户的证书是否在证书废止列表(CRL)中。检验如果没有通过,通讯立刻中断;如果验证通过,服务器将用自己的私钥解开加密的“预主密码”,然后执行一系列步骤来产生主通讯密码(客户端也将通过同样的方法产生相同的主通讯密码)。

7:服务器和客户端用相同的主密码即“通话密码”,一个对称密钥用于 SSL 协议的安全数据通讯的加解密通讯。同时在 SSL 通讯过程中还要完成数据通讯的完整性,防止数据通讯中的任何变化。

8:客户端向服务器端发出信息,指明后面的数据通讯将使用的步骤⑦中的主密码为对称密钥,同时通知服务器客户端的握手过程结束。

9:服务器向客户端发出信息,指明后面的数据通讯将使用的步骤⑦中的主密码为对称密钥,同时通知客户端服务器端的握手过程结束。

10:SSL 的握手部分结束,SSL 安全通道的数据通讯开始,客户和服务器开始使用相同的对称密钥进行数据通讯,同时进行通讯完整性的检验。
分享到:
评论

相关推荐

    Tomcat更换SSL证书方法(jks与pfx转换)

    本文详细介绍了如何将PFX格式的SSL证书转换为适用于Tomcat的JKS格式,并完成了整个替换流程。通过遵循这些步骤,用户可以顺利地在Tomcat服务器上部署新的SSL证书,从而加强系统的安全性。在实际操作过程中,可能还...

    SSL双向认证证书制作过程流程

    以下是SSL双向认证证书的具体制作流程: 一、证书制作: 1. 生成服务器密钥库:首先,使用`keytool`命令生成一个服务器的私钥和证书请求,这里使用RSA算法,2048位长度,有效期3650天,定义了完整的X.500名称(CN、...

    ssl通讯流程

    在实际应用中,`web安全通信.vsd`可能是一个Visio绘图文件,它可能详细展示了SSL通讯流程的各个步骤,包括上述的握手过程、密钥交换和加密通讯等环节,帮助理解SSL协议的工作原理。通过这样的图形化工具,开发者可以...

    SSL&TLS协议簇加解密流程

    SSL/TLS协议的核心流程包括以下几个步骤: 1. **Client Hello**:客户端向服务器发送Hello消息,包含随机数(用于后续密钥生成)、支持的加密算法和压缩方法等信息。 2. **Server Hello**:服务器回应Hello消息,...

    安全套接字SSL协议的工作原理

    SSL协议的工作流程包括三个主要部分:握手协议、记录协议和警报协议。握手协议负责初始化安全连接,包括交换证书、协商加密算法和建立会话密钥。记录协议则负责将应用层的数据分割成块,进行加密和MAC(Message ...

    EMQX开启SSL/TSL及生成证书流程

    EMQX,全称Erlang MQTT Broker,是一款基于Erlang OTP构建的开源MQTT消息代理,广泛应用于物联网(IoT)...以上就是关于EMQX开启SSL/TLS及生成证书的详细流程,遵循这些步骤,你将能确保EMQX在物联网环境中的通信安全。

    SSL工作原理详解说明

    SSL的工作流程通常涉及以下几个步骤: 1. **握手阶段**:当客户端(如浏览器)尝试连接到服务器时,服务器会提供其SSL证书,其中包含了服务器的公钥。这个证书通常由受信任的证书颁发机构(CA)签名,以验证服务器...

    专题资料(2021-2022年)SSL设置流程.doc

    在2021-2022年的专题资料中,SSL的设置流程被详细描述,主要用于中原证券网上交易的银证转账功能。 在中原证券网上交易的银证转账功能中,SSL设置的流程如下: 1. **下载安装SSL**: - 首先,用户需要在交易界面...

    Qt实现的SSL通信客户端和服务器

    客户端的实现流程如下: 1. 创建`QSslSocket`实例。 2. 设置SSL配置,加载信任的CA(Certificate Authority)证书,以及自己的身份证书和私钥,如果需要双向认证。 3. 连接到服务器的指定SSL端口。 4. 执行SSL握手...

    SSL证书在线生成系统源码

    SSL证书在线生成系统源码是实现网站安全的重要工具,它基于公钥基础设施(PKI)原理,用于在互联网上建立安全的...对于开发者来说,理解这些知识点并熟悉系统的工作流程,将有助于构建或优化自己的SSL证书管理平台。

    关于SSL和TLS的区别

    4. 工作流程:SSL 的工作流程包括服务器认证阶段和用户认证阶段,而 TLS 的工作流程包括握手协议和记录协议。 5. 应用场景:SSL 主要用于 Web 浏览器和 Web 服务器之间的通信,而 TLS 广泛应用于各种网络应用程序,...

    ssl_tls协议RFC5246文档_ssl_ssl标准文档_

    本文将深入探讨SSL/TLS协议的核心概念、工作流程以及其在RFC5246中的规定。 SSL/TLS协议的主要目标是提供数据的机密性、完整性和身份验证。它通过使用公钥基础设施(PKI)和数字证书来实现这些目标。PKI允许用户...

    SSL加密技术学习总结

    三、SSL工作流程 1. 握手阶段:客户端发起请求,服务器响应并发送SSL证书。客户端验证证书的有效性,如果通过,则生成随机数作为预主密钥。 2. 密钥交换:客户端使用服务器的公钥加密预主密钥并发送给服务器。...

    ssl 协议简介 原理 过程

    #### 四、SSL协议的工作流程 1. **握手阶段:** 客户端与服务器通过握手协议交换证书、协商加密算法和密钥等信息,确保双方使用相同的加密算法和密钥进行后续通信。 2. **密钥交换:** 双方基于协商好的算法生成...

    SSL双向验证范例

    SSL(Secure Sockets Layer)是互联网上用于保护通信安全的一种技术,主要负责加密传输数据,确保数据在客户端和...同时,了解这些设置对于理解SSL/TLS协议的工作原理以及如何在实际项目中应用它们是非常有帮助的。

    VC工程,ssl通讯socket,服务端和客户端,简单易懂。

    在"sslClient"项目中,流程大致相同,但会从客户端的角度进行: 1. 初始化OpenSSL库。 2. 创建SSL上下文,这次是客户端上下文。 3. 设置信任的CA证书(可选),这可以通过`SSL_CTX_load_verify_locations()`加载CA...

    F5 v11 ssl证书卸载及http跳转

    在当今互联网安全日益重要的背景下,SSL/TLS证书的正确配置对于保护用户数据和提升网站信任度至关重要。本文将详细介绍如何在F5 v11版本中配置SSL证书卸载,以及实现从HTTP到HTTPS的自动跳转。通过这一系列步骤,...

    ssl 详解过程交互

    SSL协议的工作流程主要包括以下几个步骤: 1. 握手阶段:客户端与服务器互相发送握手信息,包括版本信息、加密套件列表、随机数等,以便协商共同支持的加密算法和协议版本。 2. 证书交换:服务器发送其数字证书,...

    SSL.gz_ssl_ssl java_ssl证书

    在学习和使用这些文件时,开发者应该理解SSL/TLS的基本原理,包括公钥和私钥的概念,以及握手协议的工作流程。同时,要了解如何处理证书验证问题,如自签名证书的接受,以及处理可能出现的安全异常。通过实践,...

Global site tag (gtag.js) - Google Analytics