TLS1.3&TLS1.2形式化分析(二)
1、下面是TLS1.2和TLS1.3握手协议过程 ,明显的可以看出存在不同 。
我们先说TLS1.2的握手过程明显是比TLS1.3的握手过多了一次。在TLS1.3中舍弃了之前RSA的协商过程,然后基于ECDH算法优化了整个过程,下面说明 ECDH算法的含义:
当然TLS1.3不光光是优化了者一点,在连接恢复过程中TLS1.3做到了 0-RTT 的过程。
在TLS1.2中原有的大量的特性被删除,包括下面的特性:
RSA秘钥传输--------不支持向前安全
RSA密钥传输——不支持前向安全性
CBC模式密码——易受BEAST和Lucky 13攻击
RC4流密码——在HTTPS中使用并不安全
SHA-1哈希函数——建议以SHA-2取而代之
任意Diffie-Hellman组——CVE-2016-0701漏洞
输出密码——易受FREAK和LogJam攻击
同时 TLS 1.3版本还存在工作方式的修改:
新的密码套件仅在TLS1.3下支持, 一些旧的密码套件不再支持。与 TLS1.2相比 TLS1.3加密了更多的握手,减少额握手延迟并采用AEAD 方案,TLS1.3新的握手模式包括初始化的1-RTT (EC)DHE,(预共享秘钥)PSK模式和PSK-DHE模式。
新的密码套件定Tamarin 义方式不同,并且没有详细规定证书类型(RSA、DSA、ECDSA)或者秘钥交换机制,(如DHE、或者ECHDE),这对密码套件的配置会存在影响。在TLS1.3中客户端提供的key_sahre会对“组”配置产生影响。另外在新的版本中不再使用DSA证书。
2、作者对TSL1.3的形式化安全分析和证明(使用的是Tamarin 工具)
根据作者官网上的披露的信息,原作者并没有使用 Scyther工具对 TLS1.3做形式化分析,而是使用了Tamarin 这个工具 (功能更加强大,适用于高级分析)可以自动分析安全协议的工具。
作者使用的TLS1.3第十版本的协议作为研究的对象。那me作者的主要贡献是通过扩展修订版10的模型合并所需客户端的延迟机制,发现了一种潜在的攻击,其中攻击者能够在PSK回复握手期间成功的模仿客户端,作者由此强调了客户签名内容中包含更多信息的严格的必要性。在之后的发布的TLS1.3草案中更新了这部分。其中重要的一点就是作者说可以将10 版本的草案的模型进行扩展到以后的版本模型。这将是长期的。
Tramarin-proved工具的多字节重写非常适合用于对TLS1.3协议规范所暗示的复杂转换系统进行建模,可以允许分析无线数量的并发的TLS会话的交互。
作者使用本工具进行分析额时候,首先第一步是构造TLS握手和记录协议的抽象。然后将其编码成 Tramarin的规则(也就是使用SPDL语言进行描述形式化协议的一个过程)。规则捕获忠诚的党和对手行为,在合法的客户端和服务端下,构建的模型规则通常适用于各个消息传输相关联的所有动作,例如我们的第一个客户端规则捕获客户端生成并发送所必要参数作为(EC)DHE握手的第一次飞行的一部分,以及在本客户端中跟踪,此规则可以在下面的C_1可以看见这种机制,该图表示客户端在不同执行中具有所有选项的并集。(下图是TLS1.3草案10版本的部分客户端状态机制的模型分析)
接下来作者证明TLS1.3(第十版)中声明的目标和安全属性
分析的第二步涉及将所需要的安全属性编码为 Termarin lemmas.TLS握手协议的目标是允许通信方的单方或者可选方的相互实体认证,以建立可以将自己置于连接中间的窃听者和攻击者不可用的共享秘钥。TLS记录协议旨在提供应用程序数据的机密性和完整性,因此,我们将定义编码下面属性作为引理:
单方面认证服务器,
相互认证(可选)
会话秘钥和秘钥的机密性和完善性和完善性的向前保密性。
握手消息的向前保密性。
TLS1.3&TLS1.2形式化分析(二)的更多相关文章
- TLS1.3&TLS1.2形式化分析
本博客是对下面博客连接上的原文进行梳理+自己在其他方面资料做个整理 https://blog.csdn.net/andylau00j/article/details/79269499 https:// ...
- Scyther 形式化分析工具资料整理(三)
1.作者Cas Cremers在做TLS1.3的时候我么发现并没有使用Scyther 形式化丰分析工具对其进行分析,而是使用了 The Tamarin .作者建立了TLS.13的模型. 那么我的目标是 ...
- SNMP报文抓取与分析(二)
SNMP报文抓取与分析(二) SNMP报文抓取与分析(二) 1.SNMP报文表示简介 基本编码规则BER 标识域Tag表示 长度域length表示 2.SNMP报文详细分析(以一个get-respon ...
- Fresco 源码分析(二) Fresco客户端与服务端交互(1) 解决遗留的Q1问题
4.2 Fresco客户端与服务端的交互(一) 解决Q1问题 从这篇博客开始,我们开始讨论客户端与服务端是如何交互的,这个交互的入口,我们从Q1问题入手(博客按照这样的问题入手,是因为当时我也是从这里 ...
- yhd日志分析(二)
yhd日志分析(二) 继续yhd日志分析,统计数据 日期 uv pv 登录人数 游客人数 平均访问时长 二跳率 独立ip数 1 分析 登录人数 count(distinct endUserId) 游客 ...
- SQLite入门与分析(二)---设计与概念(续)
SQLite入门与分析(二)---设计与概念(续) 写在前面:本节讨论事务,事务是DBMS最核心的技术之一.在计算机科学史上,有三位科学家因在数据库领域的成就而获ACM图灵奖,而其中之一Jim G ...
- Linux内核启动代码分析二之开发板相关驱动程序加载分析
Linux内核启动代码分析二之开发板相关驱动程序加载分析 1 从linux开始启动的函数start_kernel开始分析,该函数位于linux-2.6.22/init/main.c start_ke ...
- 一些有用的javascript实例分析(二)
原文:一些有用的javascript实例分析(二) 5 求出数组中所有数字的和 window.onload = function () { var oBtn = document.getElement ...
- Android4.0图库Gallery2代码分析(二) 数据管理和数据加载
Android4.0图库Gallery2代码分析(二) 数据管理和数据加载 2012-09-07 11:19 8152人阅读 评论(12) 收藏 举报 代码分析android相册优化工作 Androi ...
随机推荐
- nginx+mysql双主搭建
说明:mysql双主架构经过测试在生产环境中使用没有问题,但是还是建议使用读写分离, Mysql主主同步环境部署: centos 7.4 三台云主机:mysql1 :10.1.1.142 mysql2 ...
- Redis HashMap 使用
散列类型相当于Java中的HashMap,他的值是一个字典,保存很多key,value对,每对key,value的值个键都是字符串类型,换句话说,散列类型不能嵌套其他数据类型.一个散列类型键最多可以包 ...
- 在eNSP上配置VLAN的Trunk端口
1.实验内容:在不同交换机下不同部门的员工能够互相通信,需要配置交换机之间的链路,跨交换机实现VLAN间通信 2.实验拓扑图 3.实验配置 按照实验编址表编辑配置所有PC机的IP地址 编址表如下图: ...
- C#基础知识学习 linq 和拉姆表达式一
两个方法对比 第二种方法 对比学习 拉姆表达 linq 用法
- 学习笔记:yaml语言教程
目录 1.YAML基本概念 1.1 简介 1.2 基本语法 1.3 支持的数据结构: 1.4 注意点 2.数据结构 2.1 字典 2.2 数组 2.3 纯量 2.4 强制类型转换,双! 2.5 字符串 ...
- MySQL合理配置连接池数量
我们经常会遇见“MySQL:ERROR1040:Toomanyconnections”的情况,一种是访问量确实很高,MySQL服务器抗不住,这个时候就要考虑增加从服务器分散读写压力,另外一种情况是 ...
- Ribbon【负载均衡策略】
ribbon有7种负载均衡策略可供选择: 策略类 命名 描述 RandomRule 随机策略 随机选择server RoundRobinRule 轮询策略 按照顺序选择server(ribbon默认策 ...
- PAT(B)1015 德才论(C)
题目链接:1015 德才论 (25 point(s)) 分析 由题意可知,需要将考生按照分数进行一个分类(级),然后在每一级中按照分数排序.输入的时候将每个人的总分,等级和录取人数先算出来.然后按照自 ...
- WUSTOJ 1282: Start(Java)
1282: Start 题目 判断一个字符串是不是回文串.例如:"abcba"是回文串.更多内容点击标题. 分析 水题,自己思考. 代码 /** * time 838ms ...
- 使用内存地址点亮LED—跟51单片机一样写代码教学(初步入门)
51单片机点亮一个小灯 #include <rge52.h> sbit LED = P0^ void main(void) { P0 = 0XFE; // 总线操作 sfr P0 0X80 ...