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

【TLS协议】

阅读更多

TLS:安全传输层协议

TLS:Transport Layer Security

安全传输层协议(TLS)用于在两个通信应用程序之间提供保密性和数据完整性。

该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)

 

概况

安全传输层协议(TLS)用于在两个通信应用程序之间提供保密性和数据完整性。该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。较低的层为 TLS 记录协议,位于某个可靠的传输协议(例如 TCP)上面,与具体的应用无关,所以,一般把TLS协议归为传输层安全协议。

协议结构

TLS协议包括两个协议组―― TLS 记录协议和 TLS 握手协议――每组具有很多不同格式的信息。

TLS 记录协议是一种分层协议。每一层中的信息可能包含长度、描述和内容等字段。记录协议支持信息传输、将数据分段到可处理块、压缩数据、应用 MAC 、加密以及传输结果等。对接收到的数据进行解密、校验、解压缩、重组等,然后将它们传送到高层客户机。

TLS 连接状态指的是TLS 记录协议的操作环境。它规定了压缩算法、加密算法和 MAC 算法。

TLS 记录层从高层接收任意大小无空块的连续数据。密钥计算:记录协议通过算法从握手协议提供的安全参数中产生密钥、 IV 和 MAC 密钥。TLS 握手协议由三个子协议组构成,允许对等双方在记录层的安全参数上达成一致、自我认证、例示协商安全参数、互相报告出错条件。

记录协议

TLS记录协议位于TLS握手协议的下面,在可靠的传输协议(如TCP/IP)上面。TLS记录协议的一条记录包含长度字段、描述字段和内容字段。TLS记录协议处理数据的加密,即记录协议得到要发送的消息之后,将数据分成易于处理的数据分组,进行数据压缩处理(可选),计算数据分组的消息认证码MAC,加密数据然后发送数据;接收到的消息首先被解密,然后校验MAC值,解压缩,重组,最后传递给协议的高层客户。记录协议有四种类型的客户:握手协议、警告协议、改变密码格式协议和应用数据协议。通常使用一个对称算法,算法的密钥由握手协议提供的值生成。

TLS 记录协议提供的连接安全性具有两个基本特性:

私有――对称加密用以数据加密(DES 、RC4 等)。对称加密所产生的密钥对每个连接都是唯一的,且此密钥基于另一个协议(如握手协议)协商。记录协议也可以不加密使用。

可靠――信息传输包括使用密钥的 MAC 进行信息完整性检查。安全哈希功能( SHA、MD5 等)用于 MAC 计算。记录协议在没有 MAC 的情况下也能操作,但一般只能用于这种模式,即有另一个协议正在使用记录协议传输协商安全参数。

TLS 记录协议用于封装各种高层协议。作为这种封装协议之一的握手协议允许服务器与客户机在应用程序协议传输和接收其第一个数据字节前彼此之间相互认证,协商加密算法和加密密钥。

握手协议

TLS握手协议处理对等用户的认证,在这一层使用了公共密钥和证书,并协商算法和加密实际数据传输的密钥,该过程在TLS记录协议之上进行。TLS握手协议是TLS协议中最复杂的部分,它定义了10种消息,客户端和服务器利用这10种消息相互认证,协商哈希函数和加密算法并相互提供产生加密密钥的机密数据。TLS记录协议会在加密算法中用到这些加密密钥,从而提供数据保密性和一致性保护。

TLS 握手协议提供的连接安全具有三个基本属性:

1.可以使用非对称的,或公共密钥的密码术来认证对等方的身份。该认证是可选的,但至少需要一个结点方。

2.共享加密密钥的协商是安全的。对偷窃者来说协商加密是难以获得的。此外经过认证过的连接不能获得加密,即使是进入连接中间的攻击者也不能。

3.协商是可靠的。没有经过通信方成员的检测,任何攻击者都不能修改通信协商。

TLS握手协议:

1.改变密码规格协议

2.警惕协议

3.握手协议

综述

TLS 的最大优势就在于:TLS 是独立于应用协议。高层协议可以透明地分布在 TLS 协议上面。然而,TLS 标准并没有规定应用程序如何在 TLS 上增加安全性;它把如何启动 TLS 握手协议以及如何解释交换的认证证书的决定权留给协议的设计者和实施者来判断。

TLS包含三个基本阶段:

1.对等协商支援的密钥算法

2.基于私钥加密交换公钥、基于PKI证书的身份认证

3.基于公钥加密的数据传输保密

 



 

不使用SSL/TLS的HTTP通信,就是不加密的通信。所有信息明文传播,带来了三大风险。

(1) 切听风险(eavesdropping):第三方可以获知通信内容。

(2) 篡改风险(tampering):第三方可以修改通信内容。

(3) 冒充风险(pretending):第三方可以冒充他人身份参与通信。

SSL/TLS协议是为了解决这三大风险而设计的,希望达到:

(1) 所有信息都是加密传播,第三方无法切听

(2) 具有校验机制,一旦被篡改,通信双方会立刻发现。

(3) 配备身份证书,防止身份被冒充。

 

 

 

SSL协议提供的服务主要有:

  1)认证用户和服务器,确保数据发送到正确的客户机和服务器;

  2)加密数据以防止数据中途被窃取;

  3)维护数据的完整性,确保数据在传输过程中不被改变。

SSL协议的工作流程:

  服务器认证阶段:

  1)客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;

  2)服务器根据客户的信息确定是否需要生成新的主密钥,如需要则服务器在响应客户的“Hello”信息时将包含生成主密钥所需的信息;

  3)客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;

  4)服务器恢复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。

用户认证阶段:在此之前,服务器已经通过了客户认证,这一阶段主要完成对客户的认证。经认证的服务器发送一个提问给客户,客户则返回(数字)签名后的提问和其公开密钥,从而向服务器提供认证。

  • 大小: 43.2 KB
0
0
分享到:
评论

相关推荐

    SSL&TLS协议簇加解密流程

    SSL/TLS协议簇是互联网上实现安全通信的关键技术,它主要负责在客户端和服务器之间建立安全的连接,确保数据的保密性和完整性。SSL最初由Netscape公司开发,经过多次迭代,演变为现在的TLS标准,其中TLS1.0、TLS1.1...

    基于SSL/TLS协议的FTP客户端和服务器端

    **基于SSL/TLS协议的FTP客户端和服务器端** 在当今的网络环境中,数据安全尤为重要,尤其是在文件传输过程中。FTP(File Transfer Protocol)虽然方便,但其明文传输的特性使得数据容易被窃取或篡改。为了解决这个...

    SSL&TLS 协议详解

    SSL/TLS协议详解 SSL(Secure Sockets Layer)和TLS(Transport Layer Security)协议是互联网上广泛采用的安全协议,主要用于在网络通信中确保数据的安全性和完整性。它们主要在TCP/IP协议之上,为上层应用提供...

    HTTPS的SSL证书在服务端TLS协议中启用TLS1.2的小工具,推荐配置:TLSv1 TLSv1.1 TLSv1.2

    首先,让我们理解SSL/TLS协议的重要性。SSL(Secure Sockets Layer)和其后续版本TLS(Transport Layer Security)是用来在互联网上建立安全通信信道的协议。TLS 1.2是目前广泛使用的标准,因为它提供了更好的安全性...

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

    RFC5246文档是SSL/TLS协议的最新版本,正式名为“Transport Layer Security (TLS) Protocol Version 1.2”。本文将深入探讨SSL/TLS协议的核心概念、工作流程以及其在RFC5246中的规定。 SSL/TLS协议的主要目标是提供...

    解决 SSL/TLS协议信息泄露漏洞(CVE-2016-2183) ps1 文件

    解决 SSL/TLS协议信息泄露漏洞(CVE-2016-2183) ps1 文件

    Windows Server CVE-2016-2183 SSL/TLS协议信息泄露漏洞修复脚本

    Windows Server 合规漏洞修复,修复Windows Server CVE-2016-2183 SSL/TLS协议信息泄露漏洞修复脚本,基于Windows PowerShell, 兼容Windows Server 2016/2019,防止Sweet32 生日攻击

    TLS 协议文档

    ### TLS协议核心知识点 #### 一、TLS协议简介 TLS(Transport Layer Security)协议是一种用于在互联网上提供通信隐私的标准安全协议。它被广泛应用于Web通信中,为客户端/服务器应用之间的通信提供了一种设计来...

    基于流谱理论的SSLTLS协议攻击检测方法.docx

    ### 基于流谱理论的SSL/TLS协议攻击检测方法 #### 1. 引言 随着互联网技术的发展和普及,网络安全问题日益受到关注。其中,安全套接层/安全传输层(SSL/TLS)协议是保障互联网数据传输安全的重要机制之一。然而,...

    TLS 协议 RFC4346

    《TLS协议 RFC4346》是互联网标准协议文档,主要规范了Transport Layer Security(TLS)协议的第1.1版本。TLS协议是为互联网上的通信提供安全性的关键协议,其设计目标在于防止窃听、篡改以及消息伪造,确保网络通信...

    TLS协议详解(RFC2246)

    ### TLS协议详解 #### 一、引言 传输层安全协议(Transport Layer Security,简称TLS)是一种广泛应用于互联网上的安全通信协议,旨在为网络通信提供数据加密与完整性保护。TLS协议的发展经历了多个版本,其中RFC...

    Linux web服务器的TLS 协议搭建.pdf

    本文将详细介绍Linux环境下Web服务器的TLS协议搭建步骤,包括TLS协议的概念、TLS证书的生成及配置方法,以及使用OpenSSL库来创建和管理证书的过程。 首先,我们来了解TLS协议的基础知识。TLS协议建立在TCP/IP协议...

    SSL、TLS协议格式入门学习

    SSL、TLS协议格式入门学习 SSL(Secure socket Layer 安全套接层协议)指使用公钥和私钥技术组合的安全网络通讯协议。SSL协议是网景公司(Netscape)推出的至于WEB应用 的安全协议,SSL协议指定了一种在应用程序协议...

    RFC5246(TLS协议)

    TLS协议是一种广泛应用于互联网通信的安全协议,主要目的是为了在客户端和服务器之间建立安全通信。TLS可以防止通信内容被窃听、篡改或伪造。本规范文档详细描述了TLS的工作机制,其中包含TLS握手协议、TLS记录协议...

    mbedTLS协议栈

    **mbedTLS协议栈** mbedTLS,原名polarSSL,是由Arm有限公司开发的一套开源、轻量级的SSL/TLS实现库,它提供了一系列的加密算法、证书处理、安全套接字层(SSL)以及传输层安全性(TLS)协议的实现。mbedTLS不仅...

    电子科技大学网络安全协议实验报告TLS配置和流量分析实验.docx

    TLS协议的目标是提供保密性、完整性和身份认证,它通过记录协议和握手协议分层实现。记录协议在底层,负责数据的实际传输,确保数据的安全性和完整性,而握手协议在上层,主要负责协商加密算法、密钥和认证信息。 1...

    基于模糊综合分析的SSL-TLS协议配置 安全评估模型研究.pdf

    本研究主题为“基于模糊综合分析的SSL-TLS协议配置安全评估模型研究”,涉及网络安全领域。SSL(安全套接字层)和TLS(传输层安全性)协议是互联网上最常用的两种用于加密通信的协议。它们对于确保网站与客户端之间...

    MQTT,TLS协议介绍.pptx

    ### MQTT与TLS协议详解 #### 一、MQTT协议简介 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是一种轻量级的发布/订阅模式的消息传输协议,设计用于高延迟或不可靠的网络环境中。该协议基于TCP/...

Global site tag (gtag.js) - Google Analytics