stacksgov / critical-bounties

1 stars 0 forks source link

Decentralized Mining Pools #1

Closed will-corcoran closed 3 months ago

will-corcoran commented 1 year ago

Decentralizing of the Stacks network through mining is one of the top priorities for Stacks ecosystem. Fortunately, Stacks 2.1 unlocks mining pools.

The goal of this CRITICAL BOUNTY is to promote the decentralization of the Stacks network by increasing the total number of STX miners by a minimum of 200%. The means to promoting this increase is supporting the development of an (or several) end-to-end applications that allow for mining pool participants to:

Our belief is that providing easy to use and trustless mining pools (that provide participants with modest returns) will help prevent individual miners and/or mining syndicates from having majority control over mining. Decentralized mining pools will help Stacks expand from its current average miner count to thousands of participants via pools - something that will lead to a more robust, resilient, and decentralized network. We would like to encourage all qualified teams to submit an application to help us build this critical tooling and exiting product.

If you are interested please:

  1. Follow this link
  2. Duplicate the template
  3. Fill out the template (all of the boxes marked with a + )
  4. Paste a link to your completed application in the comment section below

Schedule:

Thanks! The Stacks Foundation

stacks-foundation commented 1 year ago

👋 @will-at-stacks
Thanks for your application! We will do a pre-review and let you know if we have any immediate questions. In the mean time please refer to our review schedule here for a detailed timeline and response dates.
Best, Will

ImTheCodeFarmer commented 1 year ago

I would love to contribute to the UI and front-end development on this is someone is interested in handling the smart contract side of things.

friedger commented 1 year ago

For me, main barrier of entry to mining is running the mining software efficiently. See for a years-long discussion with little code contributions: https://github.com/stacks-network/stacks-blockchain/issues/1969

How can I defined my mining algorithm? How can I change the settings while running my node?

Also mining event analysis would be helpful. onstacks.com seems not maintained anymore. How can I get data to make better decisions for mining.

friedger commented 1 year ago

Running a mining pool requires good dev ops!

njordhov commented 1 year ago

How does this bounty relate to Hiro's patent on "Decentralized fair mining pools" issued November 15, 2022:

https://patents.justia.com/patent/11501269

will-corcoran commented 1 year ago

Good question @njordhov I am not sure, but I'll tag @diwakergupta here to weigh in. Diwaker graciously helped us frame the RFP.

diwakergupta commented 1 year ago

How does this bounty relate to Hiro's patent on "Decentralized fair mining pools" issued November 15, 2022:

https://patents.justia.com/patent/11501269

No relation. Also FWIW all Hiro patents are under our patent pledge: https://www.hiro.so/patent-pledge

owenstrevor commented 1 year ago

I would like to see the goal to be to increase the total number of STX miners by 2,000% instead of 200%. e.g. 5 to 105, not 5 to 15.

tycho1212 commented 1 year ago

I wonder how a mining pool can be properly decentralised? Even if a Taproot address is used, any miner still needs to run a centralised server that spends the BTC to mine

Theoretically, a decentralised miner could hold xBTC and spend it to mine using a Magic Protocol interface contract, similar to what we use for Zest Protocol https://github.com/Trust-Machines/zest-contracts

I'm curious what FriendsFerdinand think about this theoretical solution?

pseudozach commented 1 year ago

this is definitely very important work and I'm happy to help in any way i.e. design, infra, devops.

@will-at-stacks it might help potential teams more if foundation can expand on this statement from notion doc Several solutions have been discussed internally ranging from trustless solutions to solutions involving a third party lender to DAO executed solutions requiring a quorum for operations.

I would think initially a good start would be to track all deposits + withdraws on a clarity contract for transparency and handle everything else centrally in batches (join mining pool for 1 week/month/year). Once this PR https://github.com/stacks-network/stacks-blockchain/pull/3385 is merged, mining operator will have more flexibility.

Akibalogh commented 1 year ago

We'd love to explore the idea of using DLCs (Bitcoin escrow) to let the user deposit native BTC in a self-custodied way

rswol commented 1 year ago

btw, StacksOnChain is working on creating a dashboard for mining statistics to reproduce onstacks charts. There are some data that is not available through the API node and has to be extracted directly from the node itself, hence the delay.

BowTiedDeployer commented 1 year ago

https://stacksdegens.notion.site/Research-and-thoughts-on-Decentralized-mining-pools-f54c2a6315324b8eb1cd28fc0ccaf604

Akibalogh commented 1 year ago

Please see our updated proposal: https://flossy-nape-994.notion.site/CRITICAL-BOUNTY-RFP-Decentralized-Mining-Pool-Applications-Ongoing-ba9824bb28e04af490b0feb170aee90e

BowTiedDeployer commented 1 year ago

Stacks Degens' Application https://stacksdegens.notion.site/Decentralized-Mining-Pool-c0796bf750984d1e86d68f78287076d4

tenuki commented 1 year ago

https://www.notion.so/CRITICAL-BOUNTY-RFP-Decentralized-Mining-Pool-Applications-Ongoing-bffa306f3eff479782c8ae3269d7041e

natemiller1 commented 1 year ago

https://snapdragon-child-d26.notion.site/CRITICAL-BOUNTY-RFP-Decentralized-Mining-Pool-Applications-Ongoing-7870fa6a18d143769a1ad0c8fc43e491

will-corcoran commented 1 year ago

https://www.notion.so/CRITICAL-BOUNTY-RFP-Decentralized-Mining-Pool-Applications-Ongoing-bffa306f3eff479782c8ae3269d7041e

@tenuki thanks for the submission! would you mind adjusting your Notion doc to allow for commenting? thanks!

will-corcoran commented 1 year ago

https://snapdragon-child-d26.notion.site/CRITICAL-BOUNTY-RFP-Decentralized-Mining-Pool-Applications-Ongoing-7870fa6a18d143769a1ad0c8fc43e491

Hi @natemiller1 thanks very much for the application! would you mind adjusting the Notion doc settings to allow for commenting? Thanks!

tenuki commented 1 year ago

https://www.notion.so/CRITICAL-BOUNTY-RFP-Decentralized-Mining-Pool-Applications-Ongoing-bffa306f3eff479782c8ae3269d7041e @tenuki thanks for the submission! would you mind adjusting your Notion doc to allow for commenting? thanks!

Ouh, I'm sorry, I think it is ready now.

natemiller1 commented 1 year ago

@will-at-stacks Sorry about that - should be good to go now!

will-corcoran commented 1 year ago

@natemiller1 I would like to set up a call with you and your team for either tomorrow or Wed. I am hoping to get some others from the Foundation on the call. Can you please email me your email address, timezone, and availability those days? will at stacks dot org.

Thanks

Hero-Gamer commented 1 year ago

Dear all applicants, I'm a Stacks Resident who is helping on SIP (Stacks Improvement Proposal) front. Additional methods to further decentralize mining further will involve SIP in the future most likely, which I thought might be relevant to the work you are doing rn.

Tomorrow (Friday 13th Jan) at 11am ET, I will be hosting a SIP call with @MattyTokenomics who produced STX mining and Stacking report, who also produced docs for 3 decentralized mining proposals. If you wanna attend and listen in or come ask any questions, please feel free to join the discussion tomorrow! Event link: https://www.addevent.com/event/IJ15791776 Or subscribe via discord: https://discord.com/events/621759717756370964/1054402147506212884

Wish you all good luck and looking forward seeing your work in the future!

will-corcoran commented 1 year ago

@BowTiedDeployer and the rest of the Stacks Degens team. Congrats, your application for the Decentralized Mining Pool Bounty was selected!

We would like to thank all of the other applicants ( @Akibalogh and the DLC.Link team, @tenuki and the CoinFabrik team, and @natemiller1 and the Stack Casimir team)! All of the applications were well crafted and thoughtful. We are so fortunate to have builders like you in the community!

We would also like to thank @diwakergupta @owenstrevor @wileyj @tycho1212 @jennymith and Kenny Rogers for their time and effort in conducting a review of the applications!

@BowTiedDeployer I will reach out via email with some next steps, but one thing that will be required is the creation of a User Group - which you will lead. @jennymith has offered to help you get it set up and establish a roadmap.

Thanks Will

igorsyl commented 1 year ago

@BowTiedDeployer Congrats!

We at Trust Machines have been working on a threshold signing library which @jcnelson has pointed out could be used by your project.

Joey (GitHub @xoloki) has led the development of the library and you can reach out to us for questions.

https://github.com/Trust-Machines/frost

BowTiedDeployer commented 1 year ago

@BowTiedDeployer and the rest of the Stacks Degens team. Congrats, your application for the Decentralized Mining Pool Bounty was selected!

We would like to thank all of the other applicants ( @Akibalogh and the DLC.Link team, @tenuki and the CoinFabrik team, and @natemiller1 and the Stack Casimir team)! All of the applications were well crafted and thoughtful. We are so fortunate to have builders like you in the community!

We would also like to thank @diwakergupta @owenstrevor @wileyj @tycho1212 @jennymith and Kenny Rogers for their time and effort in conducting a review of the applications!

@BowTiedDeployer I will reach out via email with some next steps, but one thing that will be required is the creation of a User Group - which you will lead. @jennymith has offered to help you get it set up and establish a roadmap.

Thanks Will

Sounds great! Thank you.

BowTiedDeployer commented 1 year ago

@BowTiedDeployer Congrats!

We at Trust Machines have been working on a threshold signing library which @jcnelson has pointed out could be used by your project.

Joey (GitHub @xoloki) has led the development of the library and you can reach out to us for questions.

https://github.com/Trust-Machines/frost

We’ll reach out for sure, thanks for offering!

will-corcoran commented 1 year ago

Additional discussion on this critical bounty can be found here.