C library implementation of the Rail Safe Transport Application (RaSTA) protocol.
see CUnit HowTo
see Getting started
see Docker HowTo
- CUnit - For Unit tests
- CppCheck - For static code analysis
- Doxygen - Documentation generation
- CMake - Compilation on Raspberry Pi / ARM
This implementation of the RaSTA protocol supports Datagram TLS (DTLS), see TLS HowTo.
Orthogonally, this implementation of the RaSTA protocol also supports an additional key exchange phase after the initial handshake. During this phase, using the OPAQUE password authenticated key exchange protocol and a user-supplied pre-shared key, a session key with high randomness is exchanged between the peers. Also, it is verified that both peers have knowledge of the PSK. For more details, see OPAQUE HowTo.
This repository is maintained by Simon Giesel and the HPI