Skip to content

lithometric/jerop2p

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JeroP2P: High-Performance Blockchain Networking

JeroP2P is a custom peer-to-peer networking library built in Rust, designed as a high-performance alternative to libp2p for blockchain applications. It features ultra-low latency, deterministic behavior, and seamless Node.js integration.

🚀 Current Status

  • ✅ Phase 1: Requirements & High-Level Architecture — COMPLETED
  • ✅ Phase 2: Transport Layer (UDP/QUIC) — COMPLETED
  • ✅ Phase 3: Deterministic Peer Mesh — COMPLETED
  • ✅ Phase 4: Message Framing & Serialization — COMPLETED
  • ✅ JeroSHP Phase 1: Planning & Requirements — COMPLETED
  • ✅ JeroSHP Phase 2: Crate Initialization — COMPLETED
  • ✅ Phase 5: Simplified Consensus (PoA & PoS) — COMPLETED (MVP)

🏗️ Architecture

Core Components

Crate Purpose Status
jerop2p-core Shared types and utilities ✅ Complete
jerop2p-transport UDP/QUIC transport layer ✅ Complete
jerop2p-peer-mesh Deterministic peer discovery ✅ Complete
jerop2p-messaging Message framing & serialization ✅ Complete
jerop2p-consensus PoA & PoS consensus ✅ MVP
jerop2p-storage State storage & execution 🚧 Pending
jerop2p-crypto Cryptographic primitives 🚧 Pending
jerop2p-telemetry Monitoring & metrics 🚧 Pending
jerop2p-node-bindings Node.js FFI integration 🚧 Pending

JeroSHP: AI-Powered Security Layer

Crate Purpose Status
jeroshp AI message & contract verification ✅ Phase 2

JeroSHP (Smart Hybrid Protocol) provides AI-powered message and contract verification as a middleware layer for JeroP2P, acting as an intelligent firewall that prevents malicious content from entering the consensus layer.

Key Features (Implemented)

  • Ultra-low latency networking
  • High throughput message processing
  • Deterministic peer selection and routing
  • DoS protection, message integrity, protocol versioning
  • AI-powered filtering and verification (JeroSHP)
  • Real-time metrics and performance tracking

🚧 Getting Started

For Blockchain Developers

  • Developer Quickstart: docs/DEVELOPER_QUICKSTART.md
  • Full Integration Guide: docs/jeroshp-integration-guide.md
  • Testing Guide: docs/TESTING_GUIDE.md
  • Quick Test Reference: docs/QUICK_TEST_REFERENCE.md
# Interactive guided testing (recommended for first time)
cd examples
cargo run --bin interactive_test_runner

# For verbose output with full test details
cargo run --bin interactive_test_runner -- --verbose

# Or see JeroSHP in action directly
cargo run --bin blockchain_integration_example

Prerequisites

  • Rust 1.70+
  • Node.js 18+ (for bindings)

Quick Start

# Clone the repository
git clone https://github.com/yourusername/JeroP2P.git
cd JeroP2P

# Build the workspace (excluding Node.js bindings for now)
cargo build --release --workspace --exclude jerop2p-node-bindings

# Run basic transport example
cargo run --bin transport_example -p jerop2p-examples

# Run comprehensive Phase 4 security tests
cargo run --bin phase4_security_summary -p jerop2p-examples

# Run AI verification example (JeroSHP)
cargo test -p jeroshp

Example Usage

use jerop2p_messaging::{Message, MessageType, MessageCodec};
use jerop2p_core::PeerId;
use jeroshp::{JeroSHP, VerificationConfig};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    // Initialize AI-powered message verification
    let mut shp = JeroSHP::new(VerificationConfig::default()).await?;
    
    // Create a message
    let sender = PeerId([1u8; 32]);
    let message = Message::broadcast(
        MessageType::Transaction,
        sender,
        b"transaction_data".to_vec(),
    );
    
    // AI verification before consensus
    let decision = shp.verify_message(&message).await?;
    if !decision.is_allowed() {
        println!("Message blocked: {}", decision.reason());
        return Ok(());
    }
    
    // Process verified message...
    println!("Message verified and processed");
    Ok(())
}

📚 Documentation

  • Requirements: ./Requirements.md
  • Data Flows: ./docs/data-flows.md
  • Event Loop Design: ./docs/event-loop-design.md
  • JeroSHP Requirements: ./docs/jeroshp-requirements.md
  • JeroSHP Phase 2 Summary: ./docs/jeroshp-phase2-summary.md

🤝 Contributing

JeroP2P is in active development. Each phase builds upon the previous ones with comprehensive testing and validation. Issues and PRs are welcome.

📄 License

This project is licensed under the MIT OR Apache-2.0 license.

About

Jero peer to peer communication protocol module for the Jero Blockchain

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages