Automatic verification of transparency protocols (extended version)

03/08/2023
by   Vincent Cheval, et al.
0

We introduce new features in ProVerif, an automatic tool for verifying security protocols, and a methodology for using them. This methodology and these features are aimed at protocols which involve sophisticated data types that have strong properties, such as Merkle trees, which allow compact proofs of data presence and tree extension. Such data types are widely used in protocols in systems that use distributed ledgers and/or blockchains. With our methodology, it is possible to describe the data type quite abstractly, using ProVerif axioms, and prove the correctness of the protocol using those axioms as assumptions. Then, in separate steps, one can define one or more concrete implementations of the data type, and again use ProVerif to show that the implementations satisfy the assumptions that were coded as axioms. This helps make compositional proofs, splitting the proof burden into several manageable pieces. To enable this methodology, we introduce new capabilities in ProVerif, by extending the class of lemmas and axioms that it can reason with. Specifically, we allow user-defined predicates, attacker predicates and message predicates to appear in lemmas and axioms. We show the soundness of the implementation of this idea with respect to the semantics. We illustrate the methodology and features by providing the first formal verification of two transparency protocols which precisely models the Merkle tree data structure. The two protocols are transparent decryption and certificate transparency. Transparent decryption is a way of ensuring that decryption operations are visible by people who are affected by them. This can be used to support privacy: it can mean that a subject is alerted to the fact that information about them has been decrypted. Certificate transparency is an Internet security standard for monitoring and auditing the issuance of digital certificates.

READ FULL TEXT
research
12/05/2022

A Generic Methodology for the Modular Verification of Security Protocol Implementations

Security protocols are essential building blocks of modern IT systems. S...
research
10/21/2022

TAP: Transparent and Privacy-Preserving Data Services

Users today expect more security from services that handle their data. I...
research
06/07/2023

Monitoring Blackbox Implementations of Multiparty Session Protocols

We present a framework for the distributed monitoring of networks of com...
research
05/19/2019

Verification of Threshold-Based Distributed Algorithms by Decomposition to Decidable Logics

Verification of fault-tolerant distributed protocols is an immensely dif...
research
10/19/2017

Paxos Made EPR: Decidable Reasoning about Distributed Protocols

Distributed protocols such as Paxos play an important role in many compu...
research
06/29/2022

Verified Causal Broadcast with Liquid Haskell

Protocols to ensure that messages are delivered in causal order are a ub...
research
02/16/2022

PhishChain: A Decentralized and Transparent System to Blacklist Phishing URLs

Blacklists are a widely-used Internet security mechanism to protect Inte...

Please sign up or login with your details

Forgot password? Click here to reset