TLS intrduction

TLS是一种保障数据传输安全的一种技术(方案),它在传输层工作。

想知道TLS和SSL的关系,先看看他们的历史:

  • 人们遇到数据传输安全问题
  • 1994 SSL 1.0
  • 1995 SSL 2.0
  • 1996 SSL 3.0
  • 1999 TLS 1.0 = SSL 3.0
  • 2006 TLS 1.1 = SSL 3.2
  • 2008 TLS 1.2 = SSL 3.3
  • ...

    可以看出,TLS方案也随着环境一直在迭代升级中, 可能由于一些历史商业上的纠纷(不是这里关注的重点),SSL改名成了TLS,所有两者没有很大区别,区别就是名字不同。

SSL和OpenSSL的关系?

  • SSL是一个技术方案
  • OpenSSL是一个工具包,用于安全和加密领域

How does TLS work?

  1. Client发送请求,与Server建立连接
  2. 加密方案、对策密钥协商过程
  3. Client验证Server的证书
  4. 加密通信的过程

Practice

通过一次抓包实战,验证上文说的TLS工作原理;

TODO

Reference

What is TLS ?的更多相关文章

  1. 理解加密算法(三)——创建CA机构,签发证书并开始TLS通信

    接理解加密算法(一)--加密算法分类.理解加密算法(二)--TLS/SSL 1 不安全的TCP通信 普通的TCP通信数据是明文传输的,所以存在数据泄露和被篡改的风险,我们可以写一段测试代码试验一下. ...

  2. 协议森林17 我和你的悄悄话 (SSL/TLS协议)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 转载请先与我联系. TLS名为传输层安全协议(Transport Layer Protocol),这个协议是一套加密的 ...

  3. Paypal开发中遇到请求被中止: 未能创建 SSL/TLS 安全通道及解决方案

    最近在基于ASP.NET上开发了Paypal支付平台,在ASP.NET开发的过程中没有遇到这个问题,但是引用到MVC开发模式中的时候就出现了"未能创建 SSL/TLS 安全通道及解决方案&q ...

  4. gRPC源码分析1-SSL/TLS

    引子 前几天看到微信后台团队分享了TLS相关文章,正好gRPC里TLS数据加密是很重要的一块,于是整理出了这篇文章. 在gRPC里,如果仅仅是用来做后端微服务,可以考虑不加密.本文太长,先给个大纲. ...

  5. openssl、x509、crt、cer、key、csr、ssl、tls 这些都是什么鬼?

    今天尝试在mac机上搭建docker registry私有仓库时,杯具的发现最新的registry出于安全考虑,强制使用ssl认证,于是又详细了解linux/mac上openssl的使用方法,接触了一 ...

  6. JavaMail: SSL vs TLS vs STARTTLS

    SSL vs TLS vs STARTTLS There's often quite a bit of confusion around the different terms SSL, TLS an ...

  7. 【svn】SSL error: A TLS warning alert has been received的解决方法

    第一次用svn(>_<),结果在运行下面语句时,svn很不友好的报错了..... svn co http:10.11.12.13/test1/test2 . 报错信息: svn: OPTI ...

  8. 【转】安全传输协议SSL和TLS及WTLS的原理

    一.首先要澄清一下名字的混淆 1.SSL(Secure Socket Layer)是Netscape公司设计的主要用于WEB的安全传输协议.这种协议在WEB上获得了广泛的应用. 2.IETF将SSL作 ...

  9. Centos6 yum安装openldap+phpldapadmin+TLS+双主配置

    原文地址:http://54im.com/openldap/centos-6-yum-install-openldap-phpldapadmin-tls-%E5%8F%8C%E4%B8%BB%E9%8 ...

  10. 聊聊HTTPS和SSL/TLS协议

    要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识.1. 大致了解几个基本术语(HTTPS.SSL.TLS)的含义2. 大致了解 HTTP 和 TCP 的关系(尤其是“短连接”VS“长连接 ...

随机推荐

  1. js 之三 鼠标和键盘事件处理

    鼠标和键盘事件 鼠标常见的事件,按下onmousedown,拖动onmounsemove,松开onmousevtup,滚轮等事件: 开发需求: 当鼠标点击控件,进行拖拽,控件跟随鼠标移动: 拖拽事件需 ...

  2. K8s Pod状态与容器探针

    1.pod的调度流程及常见状态 1.1.pod的调度流程 Pod创建过程如上图所示,首先用户向apiserver发送创建pod的请求,apiserver收到用于创建pod请求后,对应会对该用户身份信息 ...

  3. allure的安装与配置

    一.安装配置JDK 说明:以win10系统为例 1.Oracle官网下载JDK:https://www.oracle.com/java/technologies/downloads/ 请下载安装JDK ...

  4. navicate的安装使用

    1 navicat概述 Navicat for MySQL 是管理和开发 MySQL 或 MariaDB 的理想解决方案. 这套全面的前端工具为数据库管理.开发和维护提供了一款直观而强大的图形界面. ...

  5. Reactor 模式与Tomcat中的Reactor

    系列文章目录和关于我 参考:[nio.pdf (oswego.edu)](https://gee.cs.oswego.edu/dl/cpjslides/nio.pdf) 一丶什么是Reactor Th ...

  6. Docker和Kubernetes与容器自动化扩展:最佳实践

    目录 1. 引言 2. 技术原理及概念 2.1 基本概念解释 2.2 技术原理介绍 2.3 相关技术比较 3. 实现步骤与流程 3.1 准备工作:环境配置与依赖安装 3.2 核心模块实现 3.3 集成 ...

  7. 5 大数据实战-hive实战分析

    1 内部表 Show databses; Use hive_data; 1.1 创建内部表 CREATE TABLE SOGOUQ2(DT STRING,WEBSESSION STRING,WORD ...

  8. SQL SERVER 基础使用技巧

    1 .编写目的 本人总结了一些实际使用中常常因为疏忽大意而出现各种意想不到的问题,本文档总结相关经验(有些并未得到验证),便于交流学习. 1 基础 1.1 char.varchar.nchar.nva ...

  9. mybatis 部分符号需转译 及 IF如何正确判断单个数字字符

    mybatis 部分符号需转译 及 IF如何正确判断单个数字字符 1.Mybatis 转译字符如下下法即可: oracle中的日期查询在mybatis中写法可以参考如下:注意提交时间的<号是用特 ...

  10. 解决Springboot项目打成jar包后获取resources目录下的文件失败的问题

    前几天在项目读取resources目录下的文件时碰到一个小坑,明明在本地是可以正常运行的,但是一发到测试环境就报错了,说找不到文件,报错信息是:class path resource [xxxx] c ...