We present MetaCP, a tool to aid the cryptographer throughout the process of designing and modelling a communication protocol suitable for formal verification. The crucial innovative aspect of the tool is its data-centric approach, where protocol specification is stored in a structured way rather than in natural languages to facilitate its interpretation to multiple target languages. Previous work shows a single exporting plugin (for Tamarin) which required aftermath modifications. By improving the expressiveness of the specification data structure we extend the tool to export to an additional formal language, i.e. ProVerif, as well as a C++ implementation. Starting with its modern graphical interface, MetaCP allows us to model the Diffie-Hellman key exchange, traditionally referred to as a case study, in just a few minutes. Ultimately, we use the formal tools to verify the executability and correctness of the automatically exported models. The design core of MetaCP is freely available in an online demo that provides two further sample protocols, Needham-Schroeder and Needham-Schroeder-Lowe, along with instructions to use the tool to begin modelling from scratch and to export the model to desired external languages.
翻译:在设计和模拟适合正式核查的通信协议的整个过程中,我们提出了帮助密码员的一个工具MetCP。工具的关键创新方面是其以数据为中心的方法,即协议规格以结构化的方式而不是以自然语言储存,以便利对多种目标语言的翻译。以前的工作显示一个单一的出口插件(针对Tamarin)需要事后修改。通过改进规格数据结构的清晰度,我们将该工具扩展至向另外一种正式语言(即ProVerif)出口,以及C++执行。从现代图形界面开始,MetCP允许我们在几分钟内模拟Diffie-Hellman关键交换,传统上称之为案例研究。最终,我们使用正式工具核查自动出口模型的可执行性和正确性。MetCP的设计核心可以在提供另外两个样本协议的在线演示中自由提供,即需要ham-Schroeder和需要ham-Schroeder-Lowwe,以及使用工具从刮指开始模拟和将模型出口到理想的外部语言的指示。