Datagram Connections 🚀
The datagram-connections
crate implements a challenge-and-response protocol for securely acquiring connections
over datagrams. It includes both a client and host part, making it easy to establish and maintain connections
with integrity and security.
Features ✨
- Challenge Protocol: Secure your connections with a challenge-response handshake.
- Client and Host Implementation: Both sides of the connection are supported out of the box.
- Efficient Datagram Handling: Encode and decode datagrams with ease.
- Secure Random Number Generation 🎲: Leverage cryptographic random values for secure nonce generation.
How it Works ⚙️
Client Connection Flow 💻
- Challenge Phase: The client initiates a challenge by sending a nonce.
- Connecting Phase: After receiving the server's challenge response, the client sends a connect request.
- Connected Phase: Once the server validates the request, the client is considered connected and can send/receive packets.
Host Response Flow 🏠
- Challenge Response: The host sends a challenge response with its own nonce.
- Connection Validation: The host validates incoming connection requests using the nonce and establishes the connection.
Get started
[dependencies]
datagram-connections = "0.0.2"