TOML · 1962 bytes Raw Blame History
1 [package]
2 name = "zephyrfs-node"
3 version = "0.1.0"
4 edition = "2021"
5 authors = ["espadonne (mfw)"]
6 license = "MIT"
7 description = "Core P2P node implementation for ZephyrFS distributed storage"
8 repository = "https://github.com/ZephyrFS/zephyrfs-node"
9
10 [dependencies]
11 # LibP2P networking stack
12 libp2p = { version = "0.54", features = [
13 "tcp",
14 "mdns",
15 "noise",
16 "yamux",
17 "kad",
18 "ping",
19 "identify",
20 "gossipsub",
21 "dcutr",
22 "tokio",
23 "macros"
24 ]}
25 tokio = { version = "1.39", features = ["full"] }
26
27 # Storage and database
28 rocksdb = { version = "0.24", default-features = false, features = ["snappy", "lz4", "zstd"] }
29 serde = { version = "1.0", features = ["derive"] }
30 serde_yaml = "0.9"
31 bincode = "1.3"
32 tempfile = "3.8"
33
34 # Cryptography and hashing
35 blake3 = "1.5"
36 sha2 = "0.10"
37 rand = "0.8"
38 hex = "0.4"
39
40 # Phase 2: Advanced cryptography
41 ring = "0.17" # AES-256-GCM, SHA-256, secure crypto primitives
42 scrypt = "0.11" # Key derivation from passwords
43 zeroize = "1.7" # Secure memory clearing
44 constant_time_eq = "0.3" # Timing-safe comparisons
45 rand_core = "0.6" # Cryptographic randomness
46
47 # TLS and networking security
48 rustls = "0.23" # TLS 1.3 implementation
49 rustls-pemfile = "2.0" # Certificate management
50
51 # Protocol buffers
52 prost = "0.13"
53 prost-types = "0.13"
54 tonic = "0.12"
55
56 # Logging and tracing
57 tracing = "0.1"
58 tracing-subscriber = { version = "0.3", features = ["env-filter"] }
59
60 # Error handling
61 anyhow = "1.0"
62 thiserror = "1.0"
63
64 # Configuration
65 config = "0.14"
66 clap = { version = "4.5", features = ["derive"] }
67
68 # Async utilities
69 futures = "0.3"
70 async-trait = "0.1"
71
72 # Coordinator integration
73 uuid = { version = "1.6", features = ["v4"] }
74 chrono = { version = "0.4", features = ["serde"] }
75 hyper = "1.0"
76
77 [build-dependencies]
78 tonic-build = "0.12"
79
80 [[bin]]
81 name = "zephyrfs-node"
82 path = "src/main.rs"
83
84 [profile.release]
85 codegen-units = 1
86 lto = true
87 panic = "abort"