Scyther GUI 攻击输出图的解释
1、在声明事件的安全属性的时候也就是整个过程要验证的 对象:
Scythe 的安全属性 分为下面几种:
- Secrecy: 表示数据传输过程中是安全的,即使通过不信任的网络传也不能被攻击者获得
- SKR: SKR表示的意义与 Secrecy相同,只是在session-key reveal 攻击模型中,将数据泄露给供给者。
- (Commit,Running):用于模型之间对数据传输的认可
另外还有认证属性组:
I-SYNCH、NI-SYNCH、I-AGREE 、NI-AGREE

- Reachable 用于检测声明是否被满足,由于Scyther的检测模式下
- Empty 此声明不会被验证,只是Scyther为支持其他验工具时使用
- Alive 存活性
- Weakaggree 协议不一致
2、攻击图输出的解释
一个攻击对应着一个攻击输出图,下图是TLS协议在强安全模型下的其中一个输出攻击图,下面对图上的参数作用一个说明, 在每一个声称对应一行,每一行被分成好几列。
第一列表示协议的名字 ,
第二列显示的是角色的名字,(比方说TLS协议中 a 就表示 客户端 ,b 表示服务端),
第三列表示的是唯一标识符 tlspaulson 表示协议 ,a1 表示声明的一个标签。
第四列显示声明类型,和声明参数

看上面的截图 在 Status(状态栏)下面是两列, 第五列显示协议验证过程的世界结果,当声称是错误的时候显示 Fail ,当声称是正确的时候显示的是 OK 。
第六列完善之前一列的称述,在有些情况下 scyther 验证过程不是完整的,(在下一章中详细介绍),如果这列的状态是 Verified (确认)表示声称是真的,如果状态是 Falsified (伪造)表示声称是错误的。如果这一列是空的,那么 状态 fail/ok 取决于 指定的边界设置。
第七列 是注释 用于进一步解释结果的状态,这一列的表示存在多种情况,分为下面几种:
- 至少存在 X 个攻击 (At least X attacks):一些攻击在状态空间中能够发现, 由于问题的不确定性的缘故,或者是因为搜索的分支和绑定的结构,不能确定是否还存在其他攻击状态
- 在默认的Scyther 设置中 ,当找到一个攻击的时候Scyther会停止验证,
- 至存在 x 个 模式
- 确定存在 X个 模式(Exactly X pattern):这种是跟之前的两个一致的,只发生在有 ‘Reachable’的声明中,发现的状态并没与真正受到攻击,而是可达状态的类别。
- 限制范围内没有找到攻击(No attack within bounds):限制范围内么有找到攻击,但是在状态界限之外可能存在攻击
- 没有攻击(No attacks):在状态空间界限外或者内都没有发现攻击,可以建立证据没有攻击即使是状态空间没有界限设置,如此安全属性验证成功。
3、状态空间的限制
限制运行次数在Scyther中可以更改,如果设置运行次数为5,没有发现攻击,就是说在少于5次的运行中是不存在攻击的,但是不一定大于5次后任然是这样的结果,
4、攻击图
如上面的图,每一个垂直轴表示一个运行,运行是存菱形出开始,菱形表示运行的创建,并提供了运行了有关信息,
Scyther GUI 攻击输出图的解释的更多相关文章
- Scyther攻击输出图的解释(之二)
下面对 Needham-Schroeder 协议形式化分析 的攻击输出图 做一个解释: Needham-Schroeder使用ns3表示, ns3 协议形式化描述结果如下: /* * Needham ...
- 【转帖】远程显示(操作) 服务器 GUI 程序(图形化界面) (基于 X11 Forwarding + Centos + MobaXterm)
远程显示(操作) 服务器 GUI 程序(图形化界面) (基于 X11 Forwarding + Centos + MobaXterm) https://zhuanlan.zhihu.com/p/310 ...
- adminMongo:mongoDB node GUI(mongoDB图形化界面)
adminMongo:mongoDB node GUI(mongoDB图形化界面) 获取项目项目 克隆:git clone https://github.com/mrvautin/adminMongo ...
- [未完成]关于GUI Java图形化界
"笔记内容完成,整体未完成" GUI 图形化用户界面 用java做图形化用户界面的程序不多,大多用C++和defy.因为,Java做图形化效率低. 首先你要安装一个虚拟机,C++是 ...
- 远程显示(操作) 服务器 GUI 程序(图形化界面) (基于 X11 Forwarding + Centos + MobaXterm)
在做 数据分析(数据挖掘 或 机器学习)的时候,我们经常需要绘制一些统计相关的图表,这些统计.绘图的程序常常是跑在服务器上的,可是服务器出于性能和效率的考虑,通常都是没有安装图形化界面的,于是这些统计 ...
- java GUI 返回图片源码
返回图片源码,重开一个类粘贴即可 package cn.littlepage.game; import java.awt.Image; import java.awt.image.BufferedIm ...
- UML类图符号解释
在UML类图中,常见的有以下几种关系: 泛化(Generalization)和 实现(Realization) - 父子关系 依赖(Dependency) - 局部变量.方法參数 聚合(Aggre ...
- JavaScript 作用域链图具体解释
<script type="text/javascript"> /** * 作用域链: */ var a = "a"; function hao94 ...
- python GUI图形化编程-----wxpython
一.python gui(图形化)模块介绍: Tkinter :是python最简单的图形化模块,总共只有14种组建 Pyqt :是python最复杂也是使用最广泛的图形化 Wx ...
随机推荐
- 【Leetcode_easy】706. Design HashMap
problem 706. Design HashMap solution1: class MyHashMap { public: /** Initialize your data structure ...
- Azure DevOps的variable group实现array和hashtable参数的传递
Azure Devops中的variable group建议或者只能(?)添加string类型的value.基于此我们想在variable group实现array或者hashtable的传递的核心思 ...
- fastJson工具类
jar:fast.jar 依赖: <!-- fastjson --> <dependency> <groupId>com.alibaba</groupId&g ...
- 给.Net Core添加Swagger实现接口文档自动生成
1.添加Nuget相关引用 Swashbuckle.AspNetCore
- Direct2D 学习笔记(2)画刷 Brush
画刷的使用方法 需要包含的文件:<wincodec.h> 需要包含的库: "windowscodecs.lib" 资源网址: https://docs.micro ...
- 判断浏览器是否ie6
if ($.browser.msie && ($.browser.version == "6.0") && !$.support.style) { ...
- luogu1972:HH的项链
题目描述 HH 有一串由各种漂亮的贝壳组成的项链.HH 相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳,思考它们所表达的含义.HH 不断地收集新的贝壳,因此,他的项链变得越来越长. ...
- uwp,c#,全屏播放保持屏幕响应
在开发视频app的时候,全屏播放一段时间内没有电脑操作,电脑会自动进入睡眠模式,这时就要多写些代码来保持响应了. (这里使用的是MediaElement播放控件,MediaElement需要手动添加代 ...
- Jmeter逻辑控制器: If控制器的解读
Jmeter官网其实有很详细的文档,点此跳转到官网,下面我来解读一下官网的文档,如有错误,欢迎指出. 一.官网解读 Name 在结果树中显示的名字. Comments 备注.相当于代码中的注释. Ex ...
- 利用Python进行数据分析_Numpy_基础_3
通用函数:快速的元素级数组函数 通用函数,是指对数组中的数据执行元素级运算的函数:接受一个或多个标量值,并产生一个或多个标量值. sqrt 求平方根 np.sqrt(arr) exp 计算各元素指数 ...