peochain-demo

PeoChain Demo—a high-performance, Rust-driven test network.

https://github.com/peochain/peochain-demo

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.1%) to scientific vocabulary

Keywords

blockchain ethereum evm-blockchain layer0
Last synced: 6 months ago · JSON representation ·

Repository

PeoChain Demo—a high-performance, Rust-driven test network.

Basic Info
  • Host: GitHub
  • Owner: peochain
  • License: mit
  • Language: Rust
  • Default Branch: main
  • Homepage:
  • Size: 27.3 MB
Statistics
  • Stars: 1
  • Watchers: 1
  • Forks: 2
  • Open Issues: 2
  • Releases: 1
Topics
blockchain ethereum evm-blockchain layer0
Created 12 months ago · Last pushed 8 months ago
Metadata Files
Readme License Citation Security Roadmap

README.md

PeoChain Demo

PeoChain Demo is a high-performance, security-focused blockchain test network implemented in Rust. It serves as a reference implementation for the PeoChain architecture, which combines a novel PoSyg + DCS consensus mechanism with a compatible EVM module. The design prioritizes memory safety, execution speed, and deterministic execution, making it a robust platform for decentralized applications.

DOI Bitcointalk Thread License: MIT


Key Highlights

  • Rust-Based for Safety and Performance: Core modules are written in idiomatic Rust, leveraging its ownership model and type system to guarantee memory safety. The codebase contains zero unsafe blocks in all critical network message paths.
  • Advanced Consensus (PoSyg + DCS): A unique consensus algorithm designed for high-throughput and low-latency transactions, featuring a Dynamic Contribution Scoring (DCS) system to incentivize validators.
  • EVM Compatibility: An integrated EVM module allows for the deployment and execution of existing Ethereum smart contracts without modification.
  • Rigorous Security Audits: The system has undergone extensive memory safety and message validation audits. Key improvements include:
    • Bounded Inputs: Strict size limits on all network inputs, including proofs (64KB), blocks (8MB), and transactions (32KB), to mitigate DoS attacks.
    • Property-Based Testing: proptest is used for fuzzing critical components like proof verification and block validation to ensure resilience against malformed inputs.
    • Integer Overflow Protection: All arithmetic operations in critical financial paths are checked to prevent overflow vulnerabilities.
  • Mobile-First Bridge: The architecture includes a cross-chain bridge designed for seamless crypto-to-mobile money conversions.

For a detailed overview of the security enhancements, see the Memory Safety Implementation Report.


Repository Structure

plaintext peochain-demo/ ├── consensus/ # Rust code for the PoSyg + DCS consensus algorithm ├── evm/ # EVM module for smart contract execution ├── bridge/ # Cross-chain bridge logic ├── api/ # Go-based REST API for node management and user endpoints ├── scripts/ # Deployment and network management scripts ├── docs/ # Architectural documentation and project roadmap ├── ci/ # CI/CD configurations (e.g., GitHub Actions) ├── docker-compose.yml # Docker orchestration for a complete test network └── Makefile # High-level commands for build, test, and deploy


Getting Started

Prerequisites

  • Rust (1.68+ recommended)
  • Go (1.19+ recommended)
  • Docker & Docker Compose
  • A compatible Linux distribution (e.g., Fedora 41, Ubuntu 22.04)

Building and Testing

  1. Clone the Repository: bash git clone https://github.com/peochain/peochain-demo.git cd peochain-demo

  2. Build All Components: This command compiles the Rust modules (consensus, evm, bridge) and the Go API. bash make build

  3. Run All Tests: This executes unit and integration tests for all modules, including property-based fuzzing tests. bash make test

Local Deployment

  1. Deploy the Test Network: This script builds and starts all services (consensus-node, evm-node, bridge-service, api-service) in detached mode using Docker Compose. bash ./scripts/deploy_testnet.sh

  2. Initialize Network Data: This script sets up initial accounts, deploys example smart contracts, and configures the network validators. bash ./scripts/init_data.sh

  3. Verify Network Status: Check the health of the API service, which indicates the status of the underlying nodes. bash curl http://localhost:8080/health


Contributing

We welcome contributions that improve PeoChain. This includes feature enhancements, bug fixes, performance optimizations, and documentation.

  1. Fork the repository.
  2. Create a new branch for your feature (feature/my-new-feature).
  3. Commit your changes and push them to your fork.
  4. Open a Pull Request with a detailed description of your changes.

Citing This Work

If you use this software in your research, please cite it using the information in CITATION.cff.


Author & License

This project is authored by PEOCHAIN GmBH and is licensed under the MIT License. See the LICENSE file for details.

Owner

  • Name: PEOCHAIN
  • Login: peochain
  • Kind: organization
  • Email: info@peochain.xyz
  • Location: Switzerland

PEOCHAIN is a blockchain platform built for speed, security, and scalability, aiming to promote global financial inclusion through innovative technology.

Citation (CITATION.cff)

cff-version: 1.1.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Krizhanovskyi
  given-names: Daniil
  orcid: https://orcid.org/0009-0008-8351-3552
title: 'PEOChain(NonProduction)/peochain-demo: v0.0.1'
version: v0.0.1
doi: 10.5281/zenodo.14908526
date-released: 2025-02-22
url: "https://github.com/PeoPay/peochain-demo"

GitHub Events

Total
  • Issues event: 1
  • Watch event: 1
  • Issue comment event: 5
  • Push event: 4
  • Pull request review event: 2
  • Pull request event: 4
  • Fork event: 1
Last Year
  • Issues event: 1
  • Watch event: 1
  • Issue comment event: 5
  • Push event: 4
  • Pull request review event: 2
  • Pull request event: 4
  • Fork event: 1

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 21
  • Total Committers: 4
  • Avg Commits per committer: 5.25
  • Development Distribution Score (DDS): 0.333
Past Year
  • Commits: 21
  • Committers: 4
  • Avg Commits per committer: 5.25
  • Development Distribution Score (DDS): 0.333
Top Committers
Name Email Commits
arec1b0 d****i@p****o 14
Daniil Krizhanovskyi d****i@p****h 5
Karma Nodes 1****s 1
krinzhanovskyi k****s@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 1
  • Total pull requests: 8
  • Average time to close issues: N/A
  • Average time to close pull requests: about 1 hour
  • Total issue authors: 1
  • Total pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 1.38
  • Merged pull requests: 7
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 8
  • Average time to close issues: N/A
  • Average time to close pull requests: about 1 hour
  • Issue authors: 1
  • Pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 1.38
  • Merged pull requests: 7
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • arec1b0 (1)
Pull Request Authors
  • arec1b0 (2)
  • KarmaNodes (2)
Top Labels
Issue Labels
bug (1) documentation (1) enhancement (1)
Pull Request Labels
Review effort 1/5 (2) Review effort 2/5 (2)

Dependencies

docker-compose.yml docker
bridge/Cargo.lock cargo
bridge/Cargo.toml cargo
consensus/Cargo.lock cargo
consensus/Cargo.toml cargo
evm/Cargo.lock cargo
evm/Cargo.toml cargo
api/Dockerfile docker
  • alpine 3.17 build
  • golang 1.19 build
bridge/Dockerfile docker
  • debian stable-slim build
  • rust 1.68 build
consensus/Dockerfile docker
  • debian stable-slim build
  • rust 1.68 build
evm/Dockerfile docker
  • debian stable-slim build
  • rust 1.68 build
api/go.mod go
  • github.com/gorilla/mux v1.8.1
api/go.sum go
  • github.com/gorilla/mux v1.8.1