Descripción
|
|
---|---|
In this article we test an Erlang implementation of the Noise Protocol Framework, using a novel form of white-box testing. We extend interoperability testing of an Erlang enoise implementation against an implementation of Noise in C. Testing typically performs a noise protocol handshake between the two implementations. If successful, then both implementations are somehow compatible. But this does, for example, not detect whether we reuse keys that have to be newly generated. Therefore we extend such operability testing: During the handshake the Erlang noise implementation is traced. The resulting protocol trace is refactored, obtaining as the end result a symbolic description (a functional term) of how key protocol values are constructed using cryptographic operations and keys. Therafter, this symbolic term is compared, using term rewriting, with a symbolic term representing the ideal symbolic execution of the tested noise protocol handshake (i.e., the ?semantics? of the handshake). The semantic symbolic term is obtained by executing a symbolic implementation of the noise protocol that we have developed. | |
Internacional
|
Si |
Nombre congreso
|
Erlang Workshop 2019 |
Tipo de participación
|
960 |
Lugar del congreso
|
Berlín |
Revisores
|
Si |
ISBN o ISSN
|
978-1-4503-6810-0 |
DOI
|
https://doi.org/10.1145/3331542.3342573 |
Fecha inicio congreso
|
18/08/2019 |
Fecha fin congreso
|
18/08/2019 |
Desde la página
|
56 |
Hasta la página
|
67 |
Título de las actas
|
Erlang 2019: Proceedings of 18th ACM SIGPLAN International Workshop on Erlang |