Coder Social home page Coder Social logo

shashank-iitbhu / braidpool Goto Github PK

View Code? Open in Web Editor NEW

This project forked from pool2win/braidpool

0.0 0.0 0.0 7.03 MB

A scalable peer to peer bitcoin mining pool with support for hashrate futures.

License: MIT License

Shell 0.54% Rust 99.46%

braidpool's Introduction

Build status codecov

Proposal

Read the proposal for braidpool.

For details on how delivering shares to market makers for enabling hashrate futures, read the blog post: Deliver Hashrate to Market Markets.

The goals of the pool are:

  1. Lower variance for independent miners, even when large miners join the pool.
  2. Miners build their own blocks, just like in p2pool.
  3. Payouts require a constant size blockspace, independent of the number of miners on the pool.
  4. Provide building blocks for enabling a futures market of hash rates.

Developer

To run tests for the braidpool node, use the usual cargo test utility.

cd node
cargo test

We are using codecov in the CI workflow. To set codecov locally, you will need to install llvm-codecov and then you'll be able to run it.

Installation cargo +stable install cargo-llvm-cov --locked or follow instructions here: https://github.com/taiki-e/cargo-llvm-cov.

Running test with coverage reports cargo llvm-code.

Running the node

For the moment, the node runs a simple p2p broadcast. To run it you need to do the usual cargo things

cd node
cargo build

# run the first seed node on port 6680
cargo run --bind=localhost:6680

# run other nodes pointing to the seeding node and specify their own port as 6680
cargo run --bind=localhost:6680 --addpeer=localhost:6680

Progress

The project on github tracks the main components to build. Here's a list to keep us focused:

  • P2P gossip based broadcast of miner blocks and shares.
  • Use FROST rust implementation for providing threshold schnorr signatures. Use mock clock for identifying rounds.
  • A DAG of shares to track contributions for miners.
  • Validate received blocks and shares.
  • Single script installer (limited to Linux variants, potentially using docker).

Matrix chat: https://matrix.to/#/#braidpool:matrix.org

Mailing list: https://sourceforge.net/p/braidpool/mailman/braidpool-discuss/

Development blog: https://blog.opdup.com/

braidpool's People

Contributors

pool2win avatar kulpreet avatar mcelrath avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.