Using TLA+/TLC for modeling and verification of cryptographic protocols
Modelirovanie i analiz informacionnyh sistem, Tome 31 (2024) no. 4, pp. 446-473

Voir la notice de l'article provenant de la source Math-Net.Ru

Interacting in open networks carries certain risks. To ensure the information security of network interaction participants, cryptographic protocols (CrP) are used. High levels of security can be achieved through their formal verification. A common formal method for verifying CrP is model checking. In this work, we propose using the TLA+/TLC toolset to check models of CrP. This toolset is widely applied in various practical fields. The protocol model is defined in the TLA+ specification language, as well as the required security properties in the form of invariants. The model of a protocol describes its behavior as a transition system containing all possible states of the protocol model and transitions between them. The TLC model checker is employed to automatically verify that the model meets the required properties. The task of verifying CrP has its specifics. This study proposes three modeling techniques that take into account the specifics of both the task and the TLA+/TLC toolset being used. The first technique involves replacing a system consisting of an arbitrary number of agents with a three-agent system. This simplifies the model and reduces its state space. The second technique is related to representing transmitted messages as a hierarchical structure, allowing encrypted messages to be nested within others. The third technique consists of optimizing the model to improve the performance of the TLC model checker by defining a function that generates only those elements leading to transitions between states in the model. These techniques simplify the model and reduce verification time. We demonstrate the application of these results on a simple protocol example — the Needham-Schroeder public key authentication protocol. After detecting a known vulnerability in the original protocol by using TLC, we model and verify an improved version. Verification results show that the new version of the protocol does not have this vulnerability.
Keywords: protocol vulnerability, security properties, authentication, Needham-Schroeder protocol, asymmetric encryption system, formal verification, verification duration, model checking, transition system, protocol model, modeling techniques, generating function.
@article{MAIS_2024_31_4_a3,
     author = {M. V. Neyzov and E. V. Kuzmin},
     title = {Using {TLA+/TLC} for modeling and verification of cryptographic protocols},
     journal = {Modelirovanie i analiz informacionnyh sistem},
     pages = {446--473},
     publisher = {mathdoc},
     volume = {31},
     number = {4},
     year = {2024},
     language = {ru},
     url = {http://geodesic.mathdoc.fr/item/MAIS_2024_31_4_a3/}
}
TY  - JOUR
AU  - M. V. Neyzov
AU  - E. V. Kuzmin
TI  - Using TLA+/TLC for modeling and verification of cryptographic protocols
JO  - Modelirovanie i analiz informacionnyh sistem
PY  - 2024
SP  - 446
EP  - 473
VL  - 31
IS  - 4
PB  - mathdoc
UR  - http://geodesic.mathdoc.fr/item/MAIS_2024_31_4_a3/
LA  - ru
ID  - MAIS_2024_31_4_a3
ER  - 
%0 Journal Article
%A M. V. Neyzov
%A E. V. Kuzmin
%T Using TLA+/TLC for modeling and verification of cryptographic protocols
%J Modelirovanie i analiz informacionnyh sistem
%D 2024
%P 446-473
%V 31
%N 4
%I mathdoc
%U http://geodesic.mathdoc.fr/item/MAIS_2024_31_4_a3/
%G ru
%F MAIS_2024_31_4_a3
M. V. Neyzov; E. V. Kuzmin. Using TLA+/TLC for modeling and verification of cryptographic protocols. Modelirovanie i analiz informacionnyh sistem, Tome 31 (2024) no. 4, pp. 446-473. http://geodesic.mathdoc.fr/item/MAIS_2024_31_4_a3/