首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

形式化分析工具AVISPA

在阅读论文的过程中发现了一个形式化分析工具(AVISPA) 现把使用过程记录如下:(重点记录遇到的问题) 一、有用的参考资料 1.(3条消息)AVISPA入门级教程_Summer Day-CSDN博客_...avispa 2.(3条消息)AVISPA工具调研_Trust Bo-CSDN博客_avispa 3.(3条消息)AVISPA编译工具SPAN虚拟机的安装和简单使用教程_Summer Day-CSDN博客..._span 工具 4.利用AVISPA证明D2D协议_Summer Day-CSDN博客_avispa时间戳 5.The AVISPA Project 二、安装使用 主要参考资料3,进行安装。...分为两部分:1.VirtualBox的安装。2.SPAN虚拟机的导入。...All supported platforms”即可下载: 官网:https://www.virtualbox.org/wiki/Downloads image.png 通过在VirtualBox中依次点击

2.8K42

形式化分析工具(五)使用CAS +语法轻松编写HLPSL规范

使用CAS+语法的优势 CAS +是一种非常简单的协议规范语法,非常类似于常用的Alice&Bob表示法。 SPAN提供了将CAS +规范转换为HLPSL的最后工具。...(用SPAN打开自动转换,如下图) 注意:请勿在CAS+文件中定义验证目标。因为翻译器无法正确翻译他们。...image.png 参考资料:CAS+.PDF A SHORT SPAN + AVISPA TUTORIAL.PDF 资料获取:关注:养两只猫,发送VISPA教程 CAS书写的协议规范 1. declare...注:合作CAS+写的协议验证目标这一项不能够很好的由SPAN工具进行转换。需要在HLPSL中使用witness/request进行设置。...因为,在此协议中,我们希望Kab是为每个会话生成的会话密钥(像现时一样)。与B相同:他不知道Kab在启动协议之前,将在消息中收到它。 S知道密钥Kas和Kbs,但不知道Kab。

2.2K43
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    形式化分析工具(七)AVISPA v1.1 User Manual

    上文是个详细的AVISPA交互手册。...规范中的角色有两种:代理扮演的基本角色,以及描述在分析过程中要考虑的场景的组合角色(例如,描述什么是协议的会话或应使用的会话实例)。...定义role就是定义类 session就是实例化的过程 2.1.3 Example NSPK密钥服务器(NSPK-KS) image.png 相关资料查找位置 形式化分析工具SPAN里面后端的相关参考可以在...虚拟机AVISPA PACKAGE / bin / backends /目录中的cl.bash,ofmc.bash,satmc.bash和ta4sp.bash文件中都有详细说明。...HLPSL规范问题:给出了日志文件的名称(通常在$ AVISPA_PACKAGE / logs目录中);该文件包含有关位置和错误原因的信息; 分析结果及输出: SUMMARY: “摘要”;它指示该协议是安全的

    1.7K11

    SPAN: a Security Protocol ANimator for A VISPA

    本文较为详细的介绍了SPAN工具。 这是一次阅读笔记及个人思考。 原文:可以用科学上网获取。时间充足的话我会上传到百度网盘。会公布在评论处。...HLPSL是一种表达性的,模块化的,基于角色的形式语言,用于指定控制流模式,数据结构,替代入侵者模型和复杂的安全属性,以及不同的密码原语及其代数属性。...image.png 在上面的示例中,定义了四个Honnest代理,即a,b,c和d,并且入侵者知道所有公共密钥以及其自己的私有密钥inv(ki)。...SPAN SPAN带有AVISPA Web图形界面的本地版本。...它看起来相同并且具有相同的功能:协议规范的简单编辑,AVISPA验证后端的选择和配置以及两个按钮(这些是新的):协议模拟(仅诚实的代理),入侵者模拟(诚实的代理和入侵者)和攻击模拟(与入侵者模拟相同的布局

    1.7K22

    形式化分析工具(六):HLPSL Tutorial

    例如: image.png 2 HLPSL Examples 语法规则:形式化分析工具AVISPA(三)学习User micro-manual of AVISPA 2.1 Example 1 -...考虑以下协议以产生新的共享密钥K1: image.png 在Alice-Bob表示法中,其内容为:A向B发送一个用K加密的随机数Na。B然后将另一个也用K加密的随机数Nb发送给A。...进行编写 1.使用CAS+语法进行对协议建模 复现的时候记得把汉字删干净。好像是SPAN编码不识别。 image.png image.png 2.使用SPAN进行转换。...的形式声明,因为要接收的值具有以下形式:对称密钥和两个比特串,由对称密钥共同加密。...请注意,入侵者并没有破坏加密,只是将加密的数据复制到了新消息中。 i->(s,7):a.i.

    3.3K53

    Python爬虫实战——搭建自己的IP代理池

    破解js 如果加密方式复杂、js文件很多,无从下手时可以使用selenium,好在我们今天爬取的这个网站js文件不是很多,通过打断点,很容易定位到我们要解密的js文件,下面我就分享一下的我解决方法...这个值不是固定的,而是网页源码中class=‘port GEGEA’ port的同级class,获取到这个class以后,先把它转为数组,判断数组中的每个元素在’ABCDEFGHIZ’中的位置,会得到一个类似这样的数组...删除无效的IP代理 验证IP代理是否无效,如果代理地址无效,可以使用以下命令删除代理,这样可以保证我们代理池中的地址都是有效的 conn.redis.srem('proxy', '无效的IP代理地址'...对于大多数爬虫初学者来说,其实爬取一个没有反爬的网站不是什么难事,无非就是把网站的源代码获取下来,然后使用bs4或者正则表达式来提取数据,这里我专门找来一个有反爬的网站,就是想让大家感受一下反爬的流程,...,可能会让你对JS加密流程有个大致了解。

    1.9K20

    接口测试平台代码实现149:加密算法的增删改查

    我们目前要做的加密算法是一个实体,或者说一个表达式。那么它就自然而然的要考虑下面几点: 1. 存放在哪?数据库以项目为单位 2. 增删改查的功能实现 3....具体的功能实现。 按照《测试开发方法论》中关于这种复杂功能,直接划分成一个一个的小步骤,就会变得很简单,并且增强你的自信,也方便你进行排期,风险预测等等。...: 许久不开发,我们要先熟悉下 这个巨大html的当前结构: 我们现在可以不用去管这个加密的复杂逻辑,只把它当成一个字段去想,然后它的增删改查,我们都直接照抄 比如全局请求头 这种即可。...="input-group input-group-sm" style="margin-top: 5px"> span class="input-group-addon">加密表达式:...然后我们去搞定他的展示show函数: 如上图,注意,我们不打算在打开的时候 重新请求后端获取最新的加密表达式,而是直接在dom标签里 给这个input的value 用上进入页面时候带进来的数据:从项目中获取到的加密表达式

    31210

    利用原生JS+Ascii码表实现一个不可逆的加密算法

    这两天一直没有更新任何的文章,是因为我一直在想这个加密算法应该怎么写,这几天想了很多,终于写了一个自己觉得还比较完备的加密算法,我们没有写之前首先要明白,做一个加密的算法是一件逻辑性要相对强一点,也就是说考虑的要全面一点...还有以前的电报原理也是这样的等等很多现实生活中的例子!...,这样可以保证即使看到了原始密码也一定不是用户输入的密码 要保证的是不同的密码不可能生成同一个加密后的密码 那么就要用到用户原始的部分密码,然后特别的位置进行加密 效果预览: ?..." value="CL加密" οnclick="ency()"/> span id="relult">span> 表达式,附带一张正则表达式的规则图: ?

    1.1K30

    Xpath学习笔记,持续记录

    节点关系可分为:父节点、祖先节点、同胞节点、子节点、后代节点; Xpath语法 1.基本语法 XPath 使用路径表达式来选取 XML 文档中的节点或节点集。...如果在迭代过程中,文档发生突变(文档树被修改),将使迭代无效,并且 XPathResult 的 invalidIteratorState 属性设置为 true,抛出 NS_ERROR_DOM_INVALID_STATE_ERR...snapshotItem(itemNumber) 方法用于单独访问每个节点,其中 itemNumber 是要检索的节点的索引。包含的节点总数可以通过 snapshotLength 属性访问。...快照不随文档突变而改变,因此与迭代器不同,快照不会变得无效,但是它可能不对应于当前文档,例如节点可能已被移动,它可能包含不再存在的节点,或新节点可能已添加。...singleNodeValue 属性用于访问XPath 表达式的第一个找到的节点。如果节点集为空,这将为 null。

    87340

    运行时依赖收集机制

    -- 更新后的视图 --> span class="odd">1span> 这样的视图更新非常准确,发现数据变了立即对依赖该数据的各个表达式重新求值...classA : classB">conditional classspan> 支持表达式的条件场景,就无法在编译时确定依赖关系,所以一般要么放弃支持这样的特性,要么放弃精确数据绑定。...react选择放弃精确数据绑定,换取JSX模版支持任意JS表达式的强大特性 其实还有第三个选择,鱼和熊掌都可以要 运行时依赖收集 像上面条件class这样的例子,无法通过静态检查得到依赖关系,就只能在运行时通过执行环境来确定了...对span的class表达式getClass()求值过程中,访问data.classA时,会触发data的getter,此时执行上下文是app.getClass,那么就得到了data.classA与span...,就不触发依赖项的重新计算,所以self.myValue = self.myValue之类的解法无效 参考资料 vue/src/core/observer/dep.js How vuejs knows

    60350

    python 历险记(六)— pytho

    正则表达式的语法以及在 python 中这些语法是如何使用的? 正则表达式如何处理中文字符? python 的正则表达式库中有哪些重要的函数? 什么是正则表达式?...就是要匹配的字符串。 整个函数就表示从 'hello world!' 字符串中搜索出符合_'wo\w+d'_ 模式的字符串,并展示出来,于是 world 字符串就被筛选了出来。 正则表达式有什么用?...is invalid",意思就是你的邮箱是无效的,这就是正则表达式的功劳。...从字符串中提取出要获取的字符串 假如你正在爬取一个汽车排行榜页面,想要获取每个车型的编号,而车型编号则隐藏在链接中,怎么获取呢?用正则表达式可以。...下篇会重点讲解python 中的正则表达式库函数,对中文的处理等,敬请期待~ 参考文档 维基百科—正则表达式

    70910

    Python_正则表达式

    2 str = 'abc1def2ghi3jkl4mn' 3 l = re.compile(r'(.+)[0-2](.*)') # 对要匹配的格式先进行编译,并且整个过程中只编译一次...ilmsux) 分组中可以设置模式,ilmsux之中的每个字符代表一个模式 (?imx) 正则表达式包含三种可选标志:i,m,或x,值影响括号中的区域 (?...-imx) 正则表达式关闭i,m,或x可选标志,只影响括号中的区域 (?:     ) 类似(...),但不表示一个组 ( ?-imx :    ) 在括号中不使用i, m,或x 可选标志 (?...例:匹配一个反斜杠字符需要将参数写成'\\\\':   '\\\\'将被转义为'\\' Python中的转义: 在python中使用正则表达式时要切记反斜线\具有两层转义功能,如果你要匹配一个反斜线本身时要注意它必须被转义两次...要处理法文文本,并用\w来处理文本,那必须是系统配置适当且 把本地化语言改为法文) re.M 影响 ^,$, (此时,^,$ 不会被解释 )"^" 依然匹配字符串的开始和字符串中每行的开始。

    55920

    左手用R右手Python系列17——CSS表达式与网页解析

    上一篇着重讲解了网页解析中的XPath表达式,今天这一篇主要讲解另一套网页解析语法——CSS路径表达式。...,这里的“>”和”“ ”就扮演了css表达式中绝对路径和相对路径的角色。...,因为相对路径需要遍历的路径较多,耗时长,可能匹配出没有价值的内容,所以在实际使用时还是要随机应变。...08-22)" " " “,”这里的逗号相当于XPath中的“|”号,功能是分割条件表达式,即将逗号两边的内容作为单独的表达式,输出符合所有表达式匹配模式的内容..." " “,”这里的逗号相当于XPath中的“|”号,功能是分割条件表达式,即将逗号两边的内容作为单独的表达式,输出符合所有表达式匹配模式的内容。

    1.7K50

    Vue.js 数据绑定语法详解

    在 Vue.js 中,一段绑定表达式由一个简单的 JavaScript 表达式和可选的一个或多个过滤器构成。 c、指令:指令 (Directives) 是特殊的带有前缀 v- 的特性。...在 Vue.js 中,一段绑定表达式由一个简单的 JavaScript 表达式和可选的一个或多个过滤器构成。 a、JavaScript 表达式 到目前为止,我们的模板只绑定到简单的属性键。...一个限制是每个绑定只能包含单个表达式,因此下面的语句是无效的: 表达式: --> { { var a = 1 }} 表达式 放在 Mustache 标签内的文本称为绑定表达式。在 Vue.js 中,一段绑定表达式由一个简单的 JavaScript 表达式和可选的一个或多个过滤器构成。...一个限制是每个绑定只能包含单个表达式,因此下面的语句是无效的: 表达式: --> { { var a = 1 }} <!

    3.4K20
    领券