Symbolic Parallel Composition for Multi-language Protocol Verification
By: Faezeh Nasrabadi, Robert Künnemann, Hamed Nemati
Potential Business Impact:
Makes computer security work across different languages.
The implementation of security protocols often combines different languages. This practice, however, poses a challenge to traditional verification techniques, which typically assume a single-language environment and, therefore, are insufficient to handle challenges presented by the interplay of different languages. To address this issue, we establish principles for combining multiple programming languages operating on different atomic types using a symbolic execution semantics. This facilitates the (parallel) composition of labeled transition systems, improving the analysis of complex systems by streamlining communication between diverse programming languages. By treating the Dolev-Yao (DY) model as a symbolic abstraction, our approach eliminates the need for translation between different base types, such as bitstrings and DY terms. Our technique provides a foundation for securing interactions in multi-language environments, enhancing program verification and system analysis in complex, interconnected systems.
Similar Papers
A Language-Agnostic Logical Relation for Message-Passing Protocols
Programming Languages
Checks if different computer parts talk correctly.
Compilation as Multi-Language Semantics
Programming Languages
Makes computer programs work together safely.
PolyVer: A Compositional Approach for Polyglot System Modeling and Verification
Programming Languages
Checks code written in different languages at once.