CISPA Scyther tools
1、Scyther软件作者网站的整理
Scyther工具的网站主页:https://people.cispa.io/cas.cremers/index.html
首先 对Scyther软件的资料进行整理,作者的很多关于Scyther的资料都是公开在自己的官网上的。
协议使用角色序列作为参数,然后在体内进行定义:

3、对称角色协议:
一些对手妥协模型规则,像SKR、LKR (aftercorrect),依靠合作关系。对这种协议在角色和算法上都对称,(像HMQV),这不是适当的合作关系,使用正确的合作关系,协议需要使用说明作为一个对称协议,指导Scyther使用适当的合作。

4、全局声明
在很多应用中使用全局常量,这包括字符串常量,标签、或者协议的定义。他们的建模和使用方法如下:


5.7 Miscellaneous 混杂的
5.7.1 Macro 宏定义
使用宏定义是允许的,是对特殊术语的缩写,其语法的使用方法如下:
macro MyShortCut= LargeTerm ;
像下面这样的,协议包含了复杂的消息或者重复的元素,宏定义可以简化协议的描述(规范)


注意的是 宏定义有全局性,可以处理同层语法层面 ,者允许协议消息的全局缩写


5.7.2 导入文件
在一个协议描述中可能导入其他文件 ,使用 include 导入相关的协议描述文件
5.7.3 one-role-pre-agent
操作语义允许代理执行任何角色,甚至是不同的角色在同步。这种建模使用在最糟糕的场景中,敌手可以有很多种利用。但是在具体的设置中代理只执行一个角色,列如服务器和客户端集不相交,或者RFID标签和Reads 标签不相交,在这种情况下,我们不考虑领代理可以执行多个角色的攻击,可以通过下面的方式建模
option "--one-role-per-agent"; //允许代理在多个角色中。 这将引起Scyther 忽略 多个
5.8 输入语言BNF语法的介绍
下面给出了全部的输入语言BNF语法的介绍: 在严格的语法定义中,不存在的像这样的声称的术语 (Niagree 或者 Nisynch ),也没有像之前使用预定义的了预定义的类型 像 Agent ,取而代之的是他们在Scyther工具自身定义常量。
第六章 建立安全模型 Modeling security protocols
6.1 Introduction
使用 Scyther软件对安全协议进行形式化的安全分析之前必须掌握 基本的符号模型。这些模型在 参考文献中有有详细的说明。
粗略的说,符号分析侧重于以下几个方面:
逻辑消息组件和协议预期的功能(公共秘钥和每次生成的或者不变的)
消息结构(配对,加密、签名、哈希加密)
消息流 (顺序、涉及到的参加的角色)
6.2 举例 Needham-Schroeder public key
正如下面的例子 , 我么使用剪短的协议模型
CISPA Scyther tools的更多相关文章
- 协议形式化分析Scyther 资料整理
1.性能分析 目前来说形式化的分析已经成为安全协议的一种很流行的方法,但是每种工具都用其不同适合的协议,Scyther软件是一种形式化分析工具,极大的促进了协议的分析和设计,scyther工具在运行界 ...
- Scyther tool 入门
1.Scyther 适合分析什么样的协议 首先协议分析工具并不是可以分析所有的协议,每种协议都有其自己适合的分析方法,并不都是可以使用形式化方法来分析. 目前协议分析方法: 模态逻辑分析(BAN ...
- Scyther 形式化分析工具资料整理(三)
1.作者Cas Cremers在做TLS1.3的时候我么发现并没有使用Scyther 形式化丰分析工具对其进行分析,而是使用了 The Tamarin .作者建立了TLS.13的模型. 那么我的目标是 ...
- 解决 Could not find com.android.tools.build:gradle 问题
今天拉同事最新的代码,编译时老是报如下错误: Error:Could not find com.android.tools.build:gradle:2.2.0.Searched in the fol ...
- 免费的精品: Productivity Power Tools 动画演示
Productivity Power Tools 是微软官方推出的 Visual Studio 扩展,被用以提高开发人员生产率.它的出现一定程度上弥补和完善了 Visual Studio 自身的不足, ...
- 2.Kali安装VMware tools(详细+异常处理)
dnt@MT:~$ cd /media/cdrom0 进入光驱内 dnt@MT:/media/cdrom0$ ls 查看当前目录下有哪些内容manifest.txt run_upgrader.sh V ...
- 第三篇:Entity Framework CodeFirst & Model 映射 续篇 EntityFramework Power Tools 工具使用
上一篇 第二篇:Entity Framework CodeFirst & Model 映射 主要介绍以Fluent API来实作EntityFramework CodeFirst,得到了大家一 ...
- Chrome Developer Tools:Timeline Panel说明
一.Timeline panel 概况 Timeline工具栏可以详细检测出Web应用在加载过程中,时间花费情况的概览.这些应用包括下载资源,处理DOM事件, 页面布局渲染或者向屏幕绘制元素. 如下图 ...
- linux-虚拟机centos6.5安装tools
1.在VMWare选VM -> Install VMWare Tools-,就会在桌面出现VMWare Tools图示让你安裝 2.进入CentOS桌面后,将光盘打开,看到了VMWareTool ...
随机推荐
- 洛谷P1169[ZJOI2007]棋盘制作
题目 一道悬线法的裸题,悬线法主要是可以处理最大子矩阵的问题. 而这道题就是比较经典的可以用悬线法来处理的题. 而悬线法其实就是把矩阵中对应的每个位置上的元素分别向左向上向右,寻找到不能到达的地方,然 ...
- 【BZOJ4030】[HEOI2015]小L的白日梦
[BZOJ4030][HEOI2015]小L的白日梦 题面 BZOJ 洛谷 题解 要求的是最小的不开心连续段的期望. 然后发现自己就不会做了. 然后就可以来抄题解啦. 首先来猜性质: 第一个,一定是按 ...
- Python中布尔值是False的所有值
在python中以下都是False:为0的,空集合,空字符串,空值None >>> bool(0) False >>> bool(-0) False >> ...
- 【洛谷P4555】最长双回文串
题目大意:给定一个长度为 N 的字符串 S,求 S 的最长双回文子串的长度,双回文子串定义为是 S 的一个子串,可以分成两个互不相交的回文子串. 题解:利用回文自动机 len 数组的性质,即:len ...
- python3.x执行post请求时报错“POST data should be bytes or an iterable of bytes...”的解决方法
使用python3.5.1执行post请求时,一直报错"POST data should be bytes or an iterable of bytes. It cannot be of ...
- cucumber测试项目报错
[INFO] Scanning for projects... [WARNING] [WARNING] Some problems were encountered while building th ...
- freetypeLCD显示
目录 freetypeLCD显示 安装交叉编译环境 配置 头文件和库的位置 编译安装 复制到PC编译工具链 复制到文件系统 运行测试 LCD显示 编码转换问题 简单显示 角度旋转 换行显示 居中显示 ...
- 【小白学Lua】之Lua变长参数和unpack函数
一.简介 Lua的变长参数和unpack函数在实际的开发中应用的还挺多的,比如在设计print函数的时候,需要支持对多个变量进行打印输出,这时我们就需要用到Lua中的变长参数和unpack函数了. 二 ...
- Windows 10中Oracle数据库导出到Access数据库(MDB)
本篇博文简单介绍将Oracle数据库中表导出到Access数据库(主要是MDB格式)的方法.主要有三种,分别是PL/SQL.ESFDatabaseMigrationToolkit及ODBC. PL/S ...
- [Luogu P1119]灾后重建
这是一道考Floyd本质的题. 回忆一下Floyd的原理,三层循环,最外层循环枚举的是中转点,也就是用两点到中转点距离之和来更新最短路.然后来看下题目,重建时间是按照从小到大排序的,也就是说,当第i个 ...