BrightChain represents a revolutionary approach to blockchain technology, combining advanced cryptography with innovative governance mechanisms. Built on Ethereum's foundation but departing from traditional proof-of-work systems, BrightChain delivers a comprehensive suite of decentralized services designed for security, privacy, and democratic participation.
NOTE: The brightchain-api portion of the repo is currently a mess and incomplete- it is largely code i brought over from another project. It will not progress much until I get the library part of the code more complete (getting very close!) and I have just worked out the details of a document interface (Mongoose style Document) that I hope to use with the block store. Once I can store user accounts and whatnot, I will work on the API.
BrightChain integrates several groundbreaking technologies:
- Advanced Blockchain Architecture: Built on Ethereum's keyspace and foundation but engineered without proof-of-work constraints, offering improved efficiency and sustainability
- Decentralized Storage: A peer-to-peer distributed file system enabling secure, resilient data storage across the network
- Identity Management: A sophisticated decentralized identity provider ensuring user privacy and control
- Owner-Free File System: Implementation of OFF System principles for secure resource sharing with legal compliance
- Cryptographic Voting: Secure electoral infrastructure utilizing Paillier encryption and ECDH-derived keys
- Enhanced File Security: State-of-the-art encryption combining ECIES for key derivation with AES-256-GCM for file security
- Digital Governance Framework: Revolutionary quorum-based system supporting configurable majority requirements for secret reconstruction
BrightChain introduces "Brokered Anonymity," a sophisticated privacy mechanism that enables anonymous operations while maintaining accountability through encrypted identity information. This information can only be reconstructed through majority quorum consensus, typically in response to legal processes like FISA warrants. After a specified period, this identifying information becomes permanently inaccessible, ensuring long-term privacy protection.
The system implements advanced document sealing and unsealing mechanisms, allowing groups to protect sensitive information with customizable threshold requirements for access restoration. This feature ensures both security and flexibility in document management.
BrightChain is currently implemented as an NX monorepo, with the core functionality contained in the "brightchain-lib" project. The system incorporates:
- Authentication: Robust implementation using BIP39/32 and SECP256k1
- Encryption: Advanced ECIES encryption utilizing user-specific keys
- Data Integrity: Verified block-level integrity with XOR functionality
- Democratic Systems: Integrated voting mechanisms using Paillier encryption
BrightChain is currently in pre-alpha stage, with several key components under active development:
- Core Library: Near completion with verified data integrity at block level
- Block Generation: Ongoing development of complex generation and reconstruction processes
- API Development: Initial framework established, pending completion of core library features
- Quorum Implementation: Advanced stages of development for document management features
- Docker Desktop (optional)
- NodeJS 20+ (if not using Docker)
- Clone the repository
- Open in VSCode
- For Docker users:
- Install Dev Container extension
- Select "Remote-Containers: Reopen in Container"
- Run
yarn
in repository root and brightchain-lib - Execute tests:
npx nx test brightchain-lib
For comprehensive understanding:
- BrightChain Summary: High-level system overview
- Brightchain Writeup: Detailed technical documentation
This project leverages Nx build system for enhanced development efficiency. For detailed information about working with Nx:
nx list # View available plugins
nx list <plugin-name> # View plugin-specific generators
nx <target> <project> # Single target
nx run-many -t <target1> <target2> # Multiple targets
nx run-many -t <target1> <target2> -p <proj1> <proj2> # Filtered projects
Enhance your development experience with Nx Console extensions, providing:
- Autocomplete support
- Task & generator UI
- VSCode, IntelliJ, and Vim LSP support
Build your application with:
nx build demoapp
Build artifacts will be available in the dist/
directory.
Nx supports advanced CI features:
Join the Nx community: