DissProve: Automated Verification of Asynchronous Distributed Protocols with Affine Communication
University of Colorado Boulder(科罗拉多大学博尔德分校);Amazon(亚马逊)
提出基于反向不可达性证明的自动验证技术,通过物化、因果性和摘要化处理仿射协议的无界参数化,实现异步参数化系统的安全属性自动验证。
2026-08-05 cs.LO cs.PL
Deductive Verification via the Debug Adapter Protocol
我们提出了一个概念整合演绎程序验证到现有的用户界面的软件调试。这种集成在“调试适配器协议”中得到了很好的体现,这是一种广泛使用的通用技术,用于将程序调试集成到开发环境中。像步进和步进这样的命令由符号结构操作语义的步骤支持,并且通过程序的不同路径很容易由用户界面内的调试目标的多个运行线程表示。因此,现有的IDE可以被利用来进行演绎验证调试,而相对较少的工作。我们已经实现了这个计划的SecC,一个自动激活的程序验证C,并讨论其集成到Visual Studio代码。
2021-08-06 cs.LO
Re-verification of a Lip Synchronization Protocol using Robust Reachability
时间自动机是描述和分析实时系统的重要模型。鲁棒性是在时钟出现小漂移或测试防护装置不精确的情况下模型的正确性。实现了一种分析时间自动机鲁棒性的符号算法。在本文中,我们重新分析了一个工业案例唇同步协议使用新的鲁棒可达性算法。这个唇同步协议是一个有趣的情况下,因为定时方面是至关重要的协议的正确性。该模型的几个版本被认为是:一个理想的视频流,锚定抖动,和非锚定抖动。
2010-03-01 cs.LO
Automatic Verification of Correspondences for Security Protocols
我们提出了一种新的技术来验证安全协议中的对应关系。特别地,对应关系可以用于正式化认证。我们的技术是全自动的,它可以处理无限数量的会话的协议,它是有效的,在实践中。它大大扩展了以前的保密验证技术。该协议表示在一个扩展的π演算相当任意的密码原语。该协议表示包括要验证的对应关系的规范,但没有其他注释。这个表示然后被翻译成一个抽象的表示霍恩子句,这是用来证明所需的对应关系。我们的技术已被证明是正确的和实施。我们已经测试了它的各种协议从文献。实验结果表明,这些协议可以验证我们的技术在不到1 s。
2008-02-23 cs.CR cs.LO
A Review of Automated Formal Verification of Ad Hoc Routing Protocols for Wireless Sensor Networks
本文综述了无线传感器网络的基础设施--adhoc路由协议的正确性证明的形式化验证方法。现有的技术分为两类:小规模网络上的验证和无界网络上的验证。由于验证过程中产生的状态空间有限,前者始终是全自动的,易于使用。然而,它不能证明所有情况下的正确性。后者可以提供一个基于无界网络抽象的完整证明。然而,它通常需要用户干预和验证方面的专业知识。对这两种方法的稳定性、无环性和无死锁性等关键性能进行了验证。总之,它们可以分别用于查找错误和证明正确性。我们相信,他们可以一起帮助正确的ad hoc路由协议的发展和可靠的实现。
2014-08-26 cs.LO cs.NI
Formal Verification of a Map Merging Protocol in the Multi-Agent Programming Contest
通信是使多智能体系统能够合作的关键部分。这意味着将形式化方法应用于多智能体系统内的通信协议,可以为其可靠性提供有用的信心。在本文中,我们描述了形式化验证的一个复杂的通信协议,协调代理合并他们的环境的地图。LFC团队在2019年的多智能体编程竞赛(MAPC)中使用了该协议。我们的协议规范是写在通信顺序进程(CSP),这是一个非常适合的方法来指定智能体通信协议,由于其重点是并发通信系统。我们使用已知正确行为的场景来验证规范的行为,并验证最终所有映射都已合并。
2021-06-22 cs.LO cs.MA
Formal Verification of Parameterized Systems based on Induction
针对参数化协议形式化验证的难题,提出基于归纳的验证框架wiseParaverifier,通过反例引导、启发式不变式查找等方法,在多类协议上实现了高效自动验证。
2025-03-23 cs.LO cs.SC
Parameterized Verification of Safety Properties in Ad Hoc Network Protocols
总结了近年来Ad hoc网络协议安全性参数化验证的主要结果。我们考虑一个模型,其中的网络的通信拓扑结构表示为一个图形。节点表示各个进程的状态。相邻节点表示单跳邻居。进程是通过选择性广播消息进行通信的有限状态自动机。广播的接收仅限于单跳邻居。对于这个模型,我们考虑一个决策问题,可以表示为初始拓扑结构的存在,其中执行的协议可以导致配置至少有一个节点在某种状态下的验证。决策问题是参数的大小和形式的通信拓扑结构的初始配置。我们画出一个完整的图片,这个问题的可判定性和复杂性的边界,根据各种假设的可能的拓扑结构。
2011-08-09 cs.LO
Analysis and Verification of Service Interaction Protocols - A Brief Survey
服务间交互的建模和分析是面向服务计算的关键问题。组合Web服务是一项复杂的任务,需要技术和工具来验证新系统是否正确运行。在本文中,我们首先概述了文献中提出的一些形式化模型来描述服务。其次,我们简要介绍了可用于分析服务及其交互的验证技术。最后,我们关注的可实现性和一致性的舞蹈。
2010-09-20 cs.LO cs.SE
Scalable Probabilistic Models for 802.11 Protocol Verification
IEEE 802.11协议是用于无线局域网的流行标准。其介质访问控制层(MAC)是具有冲突避免的载波侦听多路访问(CSMA/CA)设计,并且包括指数退避机制,这使得其成为概率模型检验的可能目标。在这项工作中,我们确定的方法来增加概率模型检验的802.11 MAC的应用范围。目前的技术甚至不能扩展到中等规模的网络。为了解决这个问题,我们确定的协议,可以用来简化模型,使验证可行的属性。使用这些观察,我们直接优化概率时间自动机模型,同时保留概率可达性措施。我们证实了我们的索赔显着减少我们的结果使用概率模型检查PRISM。
2004-05-05 cs.LO cs.NI
Formal Verification of the Sumcheck Protocol
本文使用 Isabelle/HOL 对 sumcheck 协议进行形式化验证,通过模块化方法建立其可靠性和完备性,并证明公理适用于多元多项式,为基于该协议的密码系统提供安全性保障。
2024-02-08 cs.CR cs.LO
A Program Logic for Verifying Secure Routing Protocols
今天的互联网非常容易受到攻击。然而,很少有人去理解和验证安全域间路由协议,如安全BGP(S-BGP)的正式安全保证。在本文中,我们开发了一个健全的程序逻辑SANDLog-一个声明性的规约语言,用于安全路由协议的验证这些协议的属性。我们证明了在对抗环境中运行的SANDLog程序的不变属性。作为自动化验证的一步,我们实现了一个验证条件生成器(VCGen)自动提取证明义务。VCGen被集成到一个编译器的SANDLog,可以生成可执行的协议实现,因此,验证和经验评估的安全路由协议可以在这个统一的框架进行。为了验证我们的框架,我们在SANDLog中编码了几种建议的安全路由机制,通过手动释放Coq中生成的验证条件来验证路径真实性属性的变体,并根据SANDLog规范生成可执行代码并在模拟中运行代码。
2015-12-28 cs.LO
An Experiment in Ping-Pong Protocol Verification by Nondeterministic Pushdown Automata
通过一个实验证明了一类密码协议(Dolev-Yao入侵者模型)的安全性可以用双向非确定下推自动机(2NPDA)来验证.非确定性下推程序检查正则语言(要验证的协议)和包含所有取消字的给定Dyck语言的交集是否为空。如果不是,入侵者可以泄露可信用户之间发送的秘密消息。在2NPDA模拟器上,保证验证最多在立方时间内终止。在这个实验中使用的解释性方法简化了验证,通过分离的非确定性下推逻辑和程序控制,并使其更可预测。我们描述的解释方法和已知的转换解决方案,并显示他们共享有趣的功能。同样值得注意的是,自动机理论的抽象结果如何通过程序设计语言手段解决实际问题。
2018-03-27 cs.FL cs.LO cs.PL
Deductive Verification of Weak Memory Programs with View-based Protocols (extended version)
University of Twente(特温特大学);TU Delft(代尔夫特理工大学);Eindhoven University of Technology(埃因霍温理工大学)
本文提出在VerCors中编码弱内存并发的方案,通过扩展原子操作支持并引入协议自动机概念,实现基于许可的分离逻辑,用于验证弱内存并发程序的正确性。
2026-04-22 cs.LO
Verification of the busy-forbidden protocol (using an extension of the cones and foci framework)
busy-forbidden协议是一种新的读写器锁,在读取器之间没有资源争用,这使得它的性能优于其他锁。对于它的验证,它的实现和它的不太复杂的外部行为的规范是由原作者提供的,但只证明了最多7个线程的等效性。我们提供了一个一般的证明使用锥和焦点证明框架,它重新措辞是否两个规范分支bisimilarily在实现和规范中发生的数据对象之间的关系的证明义务。我们提供了这个框架的扩展,包括数据对象的三个附加属性,当这三个附加属性也成立时,这两个系统是保持分歧的分支双相似的,上述关系的更强版本,也区分活锁。我们证明了这个扩展是健全的,并使用它给一个一般的等价性证明繁忙禁止协议。
2023-01-06 cs.DM cs.LO
User-Guided Verification of Security Protocols via Sound Animation
本文提出一种基于交互树和Isabelle/HOL验证的用户引导协议动画方法,使设计者能直观调试并验证安全协议,弥合形式验证与设计实践之间的鸿沟。
2024-10-01 cs.CR cs.LO
Decidable Inductive Invariants for Verification of Cryptographic Protocols with Unbounded Sessions
我们开发了一个理论的可判定的归纳不变量的无限状态变量的应用π演算,与应用程序的自动验证有状态的加密协议与无界会话/随机数。由于这个问题是不可判定的一般,我们引入深度有界的协议,严格概括的一类文献,我们的可判定分析是健全和完整的。我们的核心贡献是一个检查不变量是归纳的过程,这意味着每个可达配置满足它。我们的不变量可以捕获安全属性,如保密性,可以自动推断,并表示一个独立的可检查的正确性证书。我们提供了一个原型实现,我们报告其性能的一些教科书的例子。
2020-07-19 cs.CR cs.FL cs.LO
Towards the Automated Verification of Cyber-Physical Security Protocols: Bounding the Number of Timed Intruders
时间入侵者模型被提出来验证网络物理安全协议(CPSP),修改了传统的Dolev-Yao入侵者以遵守环境的物理限制。由于要学习消息,定时入侵者需要等待消息到达,因此发起攻击可能取决于定时入侵者的位置。很可能出现这样的情况,即在存在大量入侵者的情况下,没有攻击,但在存在少量处于适当位置的入侵者的情况下,存在攻击。因此,CPSP自动化验证的一个主要挑战是确定使用多少定时入侵者以及将它们放置在何处。本文通过证明使用与参与者数量相同的定时入侵者数量就足够了来回答这个问题。我们还报告了一些初步的实验结果,发现在CPSP攻击。
2016-05-27 cs.CR cs.LO
Automated Verification of Quantum Protocols using MCMAS
我们提出了一种方法,用于自动验证的量子协议使用MCMAS,一个符号模型检查器的多智能体系统的方法是基于D'Hondt和Panangelo开发的逻辑框架,调查认知和时间属性,建立在模型上的分布式测量为基础的量子计算(DMC),扩展的测量演算分布式量子系统。我们描述的翻译地图从DMC解释系统,多智能体系统中的时间和知识的推理的典型形式主义。然后,我们介绍了dmc2ispl,一个编译器到MCMAS模型检查器的输入语言。我们通过验证量子隐形传态协议来演示该技术,并讨论该工具的性能。
2012-07-04 cs.CR cs.LO cs.MA
Verification of Population Protocols with Unordered Data
本文研究带无序数据的种群协议(PPUD)验证问题,证明一般 PPUD 的良规性不可判定,并证明即时观察子类 IOPPUD 上一大类问题属于 EXPSPACE 且为 coNEXPTIME 困难。
2024-05-02 cs.DC cs.LO cs.MA
Reusable Formal Verification of DAG-based Consensus Protocols
本文提出可复用、可组合的 TLA+/TLAPS 形式化验证框架,通过组合 DAG 构建与排序规范完成五种协议的安全性证明,并将证明工作量减少近一半。
2025-03-18 cs.DC cs.LO cs.SE
Verification of Immediate Observation Population Protocols
群体方案(Angluin等人,PODC,2004)是由相同的移动设备组成的传感器网络的正式模型。两个设备可以交互,从而改变它们的状态。计算是满足强公平约束的无限序列的交互。如果对于设备的每个初始配置$C$,以及从$C$开始的每个计算,所有设备最终都同意仅取决于$C$的共识值,则填充协议是良好指定的。如果一个协议是良好指定的,那么它被称为计算谓词,该谓词为每个初始配置分配其共识值。在以前的文件中,我们已经表明,一个给定的协议是否是指定的问题,以及它是否计算一个给定的谓词的问题是可判定的。然而,在同一篇论文中,我们证明了这两个问题至少是硬的可达性问题的Petri网。由于所有已知的Petri网可达性算法都具有非原始递归复杂性,因此在本文中,我们将注意力限制在即时观察(IO)种群协议上,这是在(Angluin et al.,PODC,2006年)。我们表明,这两个问题是可解的IO协议在指数空间。这是第一个语法定义的,有趣的一类协议,不需要Petri网可达性的算法被发现。
2018-08-13 cs.LO
Verification of Distributed Quantum Protocols
真并发进程代数是传统的真并发进程代数、CTC到CCS、APTC到ACP、$π_{tc}$到$π$演算、APPTC到概率进程代数、APTC到局部进程代数的推广。在量子过程代数中,有几个著名的工作,我们曾经在ACP \cite{ACP}和概率过程代数的框架下做过一些工作,将量子计算和经典计算统一起来。现在,是时候利用真正的具有局部性的并发进程代数来建模量子计算并在本书中统一量子计算和经典计算了。由于这项工作是局部性的,因此适合于验证量子通信协议的分布。
2021-10-25 cs.LO
PFMC: a parallel symbolic model checker for security protocol verification
我们提出了一个调查的安全协议验证,是基于一个符号模型的对手,具体的条款和消息的实例化,直到需要解决一个特定的断言的并行模型检查器的设计和实现。我们建议建立在这种自然懒惰的方法来并行化这种象征性的状态探索和评估。我们利用Haskell中的策略概念,它从线程管理的低级别细节中抽象出来,并模块化地添加并行评估策略(在Haskell中封装为monad)。我们建立在一个现有的符号模型检查器,OFMC,这是已经在Haskell中实现。我们表明,有一个非常显着的速度提高了约3-5倍的改进时,从原来的单线程实现OFMC到我们的多线程版本,Dolev-Yao攻击者模型和更一般的代数攻击者模型。我们确定了几个问题,在并行化的模型检查器:除其他外,控制内存消耗的增长,平衡懒惰与严格的评价,并实现最佳的并行粒度。
2022-07-20 cs.LO
Formal Verification of Physical Layer Security Protocols for Next-Generation Communication Networks (extended version)
本文针对结合物理层安全技术的Needham-Schroeder协议,提出基于Isabelle的通用可配置形式化验证框架,通过全面分析保密性与真实性,并设计安全的PLS-Diffie-Hellman协议,克服了ProVerif方法的局限。
2025-08-28 cs.CR cs.FL cs.LO
Temporal Hyperproperties for Population Protocols
本文研究无限状态系统群体协议的时序超性质,证明一般群体协议的HyperLTL验证不可判定,并指出即时观察子类在不包含next算子时验证可判定(2-EXPSPACE),任何扩展均导致不可判定。
2024-10-15 cs.LO
Formal Verification of Flow Equivalence in Desynchronized Designs
Cortadella,Kondratyev,Lavagno和Sotiriou的研究工作包括一个手写的证明,证明一个特定的握手协议保持了流等价性,一个基于同步锁存器的规范和它们的非同步化的加密数据异步实现之间的等价性概念。在这项工作中,我们确定了一个反例Cortadella等人。的证明说明了他们的协议实际上如何导致违反流等价性。然而,在他们的论文中确定的两个并发性较低的协议确实保持了流等价性。为了验证这一事实,我们形式化的Coq证明助手流等价,并提供机械化,机器检查证明我们的结果。
2020-04-06 cs.LO
Using Rely/Guarantee to Pinpoint Assumptions underlying Security Protocols
本文利用Rely/Guarantee方法在Needham-Schroeder公钥协议上揭示安全协议验证所依赖的隐藏假设,使假设清晰化以评估协议在特定环境下的安全性。
2024-11-10 cs.LO cs.SE
Partial Order Reduction for Security Protocols
安全协议是使用密码学进行通信的并发进程,目的是实现各种安全属性。最近关于它们的形式化验证的工作带来了用于决定迹等同性的过程和工具(例如,匿名性、不可链接性、投票保密性)。然而,这些程序是基于一个天真的符号探索所考虑的过程中,毫不奇怪,大大限制了验证工具的可扩展性和实际影响的所有痕迹。在本文中,我们克服了这个困难,通过发展偏序约简技术的安全协议的验证。我们提供了减少的过渡系统,最佳地消除冗余的痕迹,这是足够的模型检查跟踪等价性的协议通过符号执行。我们已经在工具Apte中实现了我们的减少,并证明了它在各种协议上实现了预期的加速。
2015-09-07 cs.CR cs.LO
Igloo: Soundly Linking Compositional Refinement and Separation Logic for Distributed System Verification
灯塔项目,如CompCert,seL 4,IronFleet和DeepSpec已经证明,通过在抽象系统规范和可执行实现之间建立细化关系,可以对整个系统进行全面验证。然而,现有的方法施加严重的限制,无论是抽象的系统规范,由于其有限的表现力或多功能性,或可执行代码,由于其依赖于次优的代码提取或无表现力的程序逻辑。我们提出了一种新的方法,结合了组成细化的抽象,基于事件的模型的分布式系统与验证的成熟的程序代码,使用表达分离逻辑,支持功能的现实程序设计语言,如可变堆数据结构和并发。我们的工作的主要技术贡献是一个正式的框架,健全的基于事件的系统模型,程序规范的分离逻辑,这样的成功验证建立了一个细化模型和代码之间的关系。我们在Isabelle/HOL中正式定义了我们的框架Igloo。我们的框架,使现有的程序验证器的协议开发工具的良好组合。我们报告的三个案例研究,领导人选举协议,复制协议,和安全协议,我们完善正式的要求到程序规范(在伊莎贝尔/HOL),我们在Java和Python中实现,并证明正确使用VeriFast和Nagini工具。
2020-10-09 cs.LO
Modeling and Verification of the Bitcoin Protocol
比特币是一种流行的在线支付数字货币,实现为分散的点对点电子现金系统。比特币保留了所有交易的分类账;大多数参与者决定正确的分类账。由于没有可信的第三方来防止双重支出,并且受到其流行程度的启发,我们想研究比特币协议的正确性。双重消费是电子支付系统的一个重要威胁。如果一个用户可以迫使大多数人相信没有他以前付款的分类账是正确的,那么就会发生双重支出。我们感兴趣的是这种双重花费攻击的成功概率,这与攻击者的计算能力有关。本文研究了比特币协议,并将其形式化为UPPAAL模型。该模型将用于展示如果比特币协议中的各方行为恶意,如何进行双重支出,以及发生双重支出的概率。
2015-11-13 cs.CR cs.LO
Safety Verification of Wait-Only Non-Blocking Broadcast Protocols
MPI-SWS(马克斯·普朗克软件系统研究所);DIBRIS, Università di Genova(热那亚大学DIBRIS);LIP6, CNRS, Sorbonne Université(索邦大学LIP6、法国国家科学研究中心)
该研究探讨了只等待非阻塞广播协议的安全性验证,证明了在特定条件下,状态和配置覆盖性问题的复杂性分别降低为P完全和PSPACE完全。
2026-07-31 cs.CL cs.LO cs.MA