# Dependencies ## Runtime dependencies | Crate | Version | Purpose | | ----- | ------- | ------- | | `clap` | 4 | CLI parsing with derive macros | | `tokio` | 1 | Async runtime (full features) | | `tokio-util` | 0.7 | I/O utilities | | `tracing` | 0.1 | Structured logging | | `tracing-subscriber` | 0.3 | Log formatting with env-filter | | `anyhow` | 1 | Application error handling | | `thiserror` | 1 | Library error enums | | `serde` | 1 | Serialization (derive) | | `serde_json` | 1 | JSON encoding/decoding | | `rcgen` | 0.14 | Certificate generation | | `x509-parser` | 0.16 | Certificate parsing for identity validation | | `time` | 0.3 | Date/time formatting for certificate validity | | `rand` | 0.8 | Random token generation | | `hex` | 0.4 | Hex encoding for auth tokens | | `rustls` | 0.23 | TLS implementation (ring provider) | | `rustls-pki-types` | 1 | rustls type definitions | | `rustls-pemfile` | 2 | PEM parsing for certificates and keys | | `tokio-rustls` | 0.26 | Tokio integration for rustls | | `hyper` | 1 | HTTP types (used for auth handshake) | | `hyper-util` | 0.1 | HTTP utilities | | `http-body-util` | 0.1 | HTTP body utilities | | `tower-service` | 0.3 | Service trait (Hyper ecosystem) | | `base64` | 0.22 | Connection key encoding | | `sha2` | 0.10 | Certificate fingerprinting | | `bytes` | 1 | Byte buffers for framing | | `futures` | 0.3 | Future utilities | | `url` | 2 | URL parsing | ## Dev dependencies | Crate | Version | Purpose | | ----- | ------- | ------- | | `tempfile` | 3 | Temporary directories for tests | ## Key source files | File | Purpose | | ---- | ------- | | `Cargo.toml` | Dependency declarations and features |