52 lines
1.5 KiB
TOML
52 lines
1.5 KiB
TOML
[package]
|
||
name = "chronogrid_net"
|
||
description = "P2P mesh networking for ChronoGrid – libp2p over QUIC with Noise XK encryption"
|
||
version.workspace = true
|
||
edition.workspace = true
|
||
rust-version.workspace = true
|
||
publish = false
|
||
|
||
[dependencies]
|
||
# Ed25519 keypair generation and signing
|
||
ed25519-dalek = { version = "2", features = ["rand_core"] }
|
||
# Cryptographically-secure random number generation
|
||
rand = "0.8"
|
||
# SHA-256 for NodeId and SwarmKey fingerprint derivation
|
||
sha2 = "0.10"
|
||
# Hex encoding for NodeId and fingerprints
|
||
hex = "0.4"
|
||
# Serialization for keypair persistence
|
||
serde = { version = "1", features = ["derive"] }
|
||
serde_json = "1"
|
||
# Error handling
|
||
thiserror = "2"
|
||
# Zeroize sensitive key material on drop
|
||
zeroize = { version = "1", features = ["derive"] }
|
||
|
||
# ── libp2p networking stack ──────────────────────────────────────────────────
|
||
# Core libp2p with all required transport and behaviour features.
|
||
libp2p = { version = "0.54", features = [
|
||
"noise",
|
||
"quic",
|
||
"tcp",
|
||
"yamux",
|
||
"mdns",
|
||
"gossipsub",
|
||
"kad",
|
||
"identify",
|
||
"relay",
|
||
"tokio",
|
||
"macros",
|
||
] }
|
||
# Async runtime — required by libp2p tokio transport
|
||
tokio = { version = "1", features = ["full"] }
|
||
# Futures utilities for async stream handling
|
||
futures = "0.3"
|
||
# Logging / tracing
|
||
tracing = "0.1"
|
||
|
||
[dev-dependencies]
|
||
tempfile = "3"
|
||
tokio = { version = "1", features = ["full", "test-util"] }
|
||
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|