BIP-324 Protocol
A BIP-324 library to establish and communicate over an encrypted channel.
The library is designed with a bare no_std and Sans I/O interface to keep it as agnostic as possible to application runtimes, but higher level interfaces are exposed for ease of use.
- High-level I/O -
io::Protocol(sync) andfutures::Protocol(async) handle the complete encrypted connection lifecycle including handshake, writes, and reads. - Low-level components - For applications requiring more control,
Handshakeis a type-safe state machine for the handshake protocol andCipherSessionmanages encryption/decryption after the handshake.
Feature Flags
std- Standard library dependencies for I/O, memory allocation, and random number generators.tokio- High level I/O wrappers for the asynchronous tokio runtime.
Minimum Supported Rust Version (MSRV)
This crate has a baseline MSRV of 1.63.0.
However, the effective MSRV may be higher depending on the specific versions of dependencies selected by the caller. Currently, tokio is known to affect MSRV when using newer versions with the tokio feature flag, but other dependencies may also impact the effective MSRV in the future.