peochain-demo
PeoChain Demo—a high-performance, Rust-driven test network.
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
Repository
PeoChain Demo—a high-performance, Rust-driven test network.
Basic Info
Statistics
- Stars: 1
- Watchers: 1
- Forks: 2
- Open Issues: 2
- Releases: 1
Topics
Metadata Files
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.
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
unsafeblocks 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:
proptestis 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
Clone the Repository:
bash git clone https://github.com/peochain/peochain-demo.git cd peochain-demoBuild All Components: This command compiles the Rust modules (consensus, evm, bridge) and the Go API.
bash make buildRun All Tests: This executes unit and integration tests for all modules, including property-based fuzzing tests.
bash make test
Local Deployment
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.shInitialize Network Data: This script sets up initial accounts, deploys example smart contracts, and configures the network validators.
bash ./scripts/init_data.shVerify 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.
- Fork the repository.
- Create a new branch for your feature (
feature/my-new-feature). - Commit your changes and push them to your fork.
- 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
- Website: https://peochain.xyz
- Twitter: peochain
- Repositories: 1
- Profile: https://github.com/peochain
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
Top Committers
| Name | 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
Pull Request Labels
Dependencies
- alpine 3.17 build
- golang 1.19 build
- debian stable-slim build
- rust 1.68 build
- debian stable-slim build
- rust 1.68 build
- debian stable-slim build
- rust 1.68 build
- github.com/gorilla/mux v1.8.1
- github.com/gorilla/mux v1.8.1