summaryrefslogtreecommitdiffstats
path: root/consensus/src/lib.rs
diff options
context:
space:
mode:
authorgabrix73 <gabriel1@frozenstar.info>2026-06-01 18:41:36 +0200
committergabrix73 <gabriel1@frozenstar.info>2026-06-01 18:41:36 +0200
commit9f5d864d533ce86459e654f5d78212933c0269ea (patch)
tree4b71e8c7ab4e78da93e5f3164803da4de68c7031 /consensus/src/lib.rs
downloadonioncoin-main.tar.gz
onioncoin-main.tar.xz
onioncoin-main.zip
Initial commit: OnionCoin prototype with Proof-of-Relay consensusHEADv0.1.0main
OnionCoin is a privacy cryptocurrency that rewards Tor relay operators through a unique Proof-of-Contribution consensus mechanism. Core Features: - Proof-of-Relay: 30% of block rewards go to Tor operators - Native .onion node identity (no IP exposure) - Temporal obfuscation protocols - Dandelion++ over Tor propagation - Native inheritance system with dead man's switch Technical Stack: - Rust workspace with 8 crates - Ed25519/X25519 cryptography - arti (Rust Tor client) integration planned - 10 minute block time, 5-10 TPS design Status: Prototype - Consensus logic complete with passing tests (30/33) - Network layer conceptual design complete - Tor integration pending - Testnet launch planned Q3 2026 License: MIT Author: Gabriele Salati (virebent) Contact: g48rix@gmail.com Website: https://www.gabrielesalati.eu Repository: https://git.virebent.art/virebent/onioncoin
Diffstat (limited to 'consensus/src/lib.rs')
-rw-r--r--consensus/src/lib.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/consensus/src/lib.rs b/consensus/src/lib.rs
new file mode 100644
index 0000000..80b8bd5
--- /dev/null
+++ b/consensus/src/lib.rs
@@ -0,0 +1,13 @@
+pub mod proof_of_contribution;
+pub mod validator;
+pub mod relay_proof;
+pub mod metrics;
+pub mod selection;
+pub mod genesis;
+
+pub use proof_of_contribution::{ProofOfContribution, ContributionScore, ScoreWeights};
+pub use validator::{Validator, ValidatorTier, ValidatorRegistry};
+pub use relay_proof::{RelayProof, RelayMetrics};
+pub use metrics::{BandwidthMetrics, UptimeMetrics, StorageMetrics};
+pub use selection::{ValidatorSelector, SelectionAlgorithm};
+pub use genesis::{GenesisMining, GenesisConfig};