Stacking: a New Consensus Algorithm for Blockchains

Today, we’re proposing a potential major improvement to the Stacks consensus algorithm. Stacks 2.0 is expected to launch in Q2 this year. Stacks 2.0 is a major upgrade of the Stacks blockchain with a new Rust implementation, native Stacks mining, Clarity smart contract language, and other significant improvements. The current implementation uses a proof-of-burn mining mechanism where Stacks miners burn a base cryptocurrency (Bitcoin) to participate in the consensus algorithm and earn rewards (newly minted Stacks).

More specifically, with the Stacking consensus, we’re proposing to replace Proof-of-Burn (PoB) mining SIP-001 with a new concept of Proof-of-Transfer (PoX). With PoX, instead of burning a base cryptocurrency, miners transfer the base cryptocurrency to existing holders of a new cryptocurrency who participate in the consensus algorithm. In our proposed implementation using Bitcoin, Stacks miners would transfer Bitcoin to Stacks holders who are participating in our new consensus algorithm.

If adopted, we believe SIP-007 would introduce a landmark innovation for Stacks 2.0. We call the new consensus algorithm Stacking . Stacking takes the same Bitcoin used in PoB, but instead of destroying it, transfers it to users who are (1) holding Stacks and (2) actively participating in the consensus algorithm, i.e., adding value to the network. Once every reward cycle (roughly once per month), every user who meets the eligibility for Stacking would receive a reward (a payout) of Bitcoin from the network.

Why Bitcoin: Our proposal uses Bitcoin because it is the most secure Proof-of-Work blockchain in use. Stacking allows anyone to use a secure PoW cryptocurrency like Bitcoin to participate in consensus algorithms for new blockchains without ever repeating the need to go from electricity to PoW. These new blockchains benefit from the security of Bitcoin.

Benefits of Stacking: We believe that Proof-of-Transfer (PoX) mining used by the Stacking consensus algorithm is superior to Proof-of-Burn as it avoids destroying the base cryptocurrency. It also has a potential economic benefit for Stacks holders by allowing them to earn rewards in Bitcoin for participating in the consensus algorithm and Stacking their holdings.

Comparison with PoW and PoS: We believe that the Stacking consensus algorithm enables the network to reap the benefits of a standalone PoW blockchain without modifying Bitcoin’s core protocol. It does so while avoiding burning Bitcoin in most cases. Additionally, similar to Proof-of-Stake, holders of the new cryptocurrency who participate in the consensus algorithm can earn rewards. A major difference from Proof-of-Stake is the rewards in Stacking are in Bitcoin.

We’re currently looking for feedback on the initial proposal which is released today as a Stacks Improvement Proposal (SIP-007). We’re excited about this potential upgrade to the core consensus algorithm of Stacks 2.0 and look forward to hearing your thoughts!

<< Give feedback on SIP-007 >>

Important disclaimer

The Securities and Exchange Commission (SEC) has qualified the offering statement that we have filed with the SEC under Regulation A for our offering of certain of our Stacks Tokens. The information in that offering statement is more complete than the information we are providing now, and could differ in important ways. You must read the documents filed with the SEC before investing. The offering is being made only by means of its offering statement. This document shall not constitute an offer to sell or the solicitation of an offer to buy, nor shall there be any sale of these securities in any state or jurisdiction in which such offer, solicitation or sale would be unlawful prior to registration or qualification under the securities laws of any such state or jurisdiction.

An indication of interest involves no obligation or commitment of any kind. Any person interested in investing in any offering of Stacks Tokens should review our disclosures and the publicly filed offering statement and the final offering circular that is part of that offering statement here . Blockstack is not registered, licensed or supervised as a broker dealer or investment adviser by the SEC, the Financial Industry Regulatory Authority (FINRA) or any other financial regulatory authority or licensed to provide any financial advice or services.

Forward-looking statements

This communication contains forward-looking statements that are based on our beliefs and assumptions and on information currently available to us. In some cases, you can identify forward-looking statements by the following words: “will,” “expect,” “would,” “intend,” “believe,” or other comparable terminology. Forward-looking statements in this document include, but are not limited to, statements about our plans for developing the platform, future utility for the Stacks Token, our Clarity smart contracting language, and potential mining operations. These statements involve risks, uncertainties, assumptions and other factors that may cause actual results or performance to be materially different. More information on the factors, risks and uncertainties that could cause or contribute to such differences is included in our filings with the SEC, including in the “Risk Factors” and “Management’s Discussion & Analysis” sections of our offering statement on Form 1-A. We cannot assure you that the forward-looking statements will prove to be accurate. These forward-looking statements speak only as of the date hereof. We disclaim any obligation to update these forward-looking statements.

22 Likes

Is there any further research on how PoX might impact security vs PoB? Also, if I understand correctly, this would allow Stacks to use any PoW chain as a base, thereby making it even more resilient to future changes in the underlying base crypto, is that correct?

2 Likes

As long as miners can’t pay to their own addresses, then it’s just as secure – miners are irrevocably paying something to get STX. Miners can only pay to themselves if they themselves are Stacking, and even then, per the SIP, a certain fraction of the BTC they’d send would be burnt in all cases order to outright prevent mining “for free.”

Yup! Our engineering thesis has always been to build on the most secure PoW chain, and right now, that’s Bitcoin. Only the “chain driver” part that interfaces with the PoW chain would need to be rewritten to move over to a different PoW chain, should the need arise. In all cases, PoX would transfer the underlying PoW chain’s token to Stackers.

2 Likes

Thanks so much for the update! It is unclear to me exactly what kind of feedback you’re looking for and to what degree feedback will be implemented. In any case, I’ll offer my perspective from a designer/developer lens.

  • This draft is clear but lacks substance. It is easy to understand the potential but honestly this change isn’t enough to motivate action. The transfer of stacking does add value to the network but it doesn’t (again from my perspective) inspire engagement from community or developers. As blockchain evolves, I’m not certain a reward of Bitcoin would be significant enough to create real change.

  • On that note, Bitcoin is definitely secure. There are also many other options that have demonstrated secure Proof-of-Work in blockchain. The exclusive use of Bitcoin seems limiting.

  • The benefits of stacking seem obvious but not strong enough to make a significant shift. I’d advise looking more into community and design. Exploring what motivates people (beyond payment) might be worth while. Blockchain, for many, is about so much more than money. Shifting focus to community could be a strategy that creates a larger impact.

Hope this helps!

3 Likes

Avoids deflating rather than avoids destroying the base cryptocurrency, no?

There’s an engineering reason for this. PoW security isn’t additive – two PoW chains with 50% of the hash power of Bitcoin are not, collectively, as strong as Bitcoin at resisting reorgs. Building a chain that uses Stacking on top of two or more PoW chains would not get any additional security, since the Stacking chain’s state would get reorged as often as the weakest underlying PoW chain gets reorged.

3 Likes

Proof-of-burn i.e., SIP-001 literally destroys Bitcoin as part of the consensus algorithm. That’s what we’re avoiding with Stacking.

1 Like

We’re looking for three types of feedback:

  1. Technical feedback on the consensus algorithm. Corner cases of the design. We’re engaging with domain experts and computer scientists for this but want to open up the initial design to developers and engineers in our community early on.

  2. Economic incentives feedback, the economics of this behaves somewhat like proof-of-stake where holders can earn rewards on their holdings by doing work with one important difference: the rewards for holders who participate is in Bitcoin (and not in STX). This has potentially interesting economic dynamics and we’re looking for input on that.

  3. General feedback from the community on the proposed change. How that might impact people who are interested in mining or existing STX holders who might be interested in participating in Stacking. An example topic can be the current ~94K STX minimum floor on being able to participate, the community might want to work on Stacking pools (I’ve already seen some ideas in Discord around it!) and give feedback on the designs.

3 Likes

Sure, but why would anyone care, beyond a small group of blockheads? What is the bigger advantage from avoiding destroying bitcoin?

The burn can potentially be significant given relative marketcap of STX vs Bitcoin down the road. Also, the Bitcoin community would likely hate such (destructive) use of Bitcoin. There can be protocol upgrades at the Bitcoin-level that make such burns hard to do.

More importantly, SIP-007 is turning something potentially negative, at best neutral, into a potentially positive thing where instead of destroying the value, the value gets distributed to Stacks holders who’re participating.

2 Likes

Because STX holders have to signal on the BTC chain which Stacks chain tip is their preferred chain tip, it encourages active cooperation between users and miners, leading to higher chain quality. Stacking rewards only get distributed if the dominant Stacks fork has over 80% miner support. This means users are incentivized to remain vigilant to the behavior of miners – in particular, users would watch for miners who don’t try and build on the longest chain tip or don’t disclose blocks in a timely manner (like selfish miners). Stacking rewards encourage users to support honest miners through things like user support burns (see SIP 001) in order to help honest miners win.

4 Likes

Great job on this!

As we all know, bitcoin block space is constrained and fees can be highly variable. I’d like to see a discussion of the constraints on the Stacking consensus algorithm.

Happy to start with some back of the napkin calculations regarding transactions volumes

From the SIP:

such that each Bitcoin address in the set of reward addresses has exactly one Bitcoin block in which miners will transfer funds to the reward address

It sounds like at most one bitcoin reward transaction is made per block.

Broadcast a signed message before the reward cycle begins that:

  • Locks the associated Stacks tokens for a protocol-specified lockup period.
  • Specifies a Bitcoin address to receive the funds.
  • Votes on a Stacks chain tip.

Entry submissions for Stacking rewards can be broadcast any time in the period before the next reward cycle (240 blocks). If Stacks wallets of >= 0.02% are eligible to enter and only eligible wallets enter, this is at max 500,000 entry transactions spread over 240 blocks or ~2083 txns per block.

That sounds like a lot of transactions and near the capacity of the bitcoin network.


Bitcoiners love anything that destroys Bitcoins. Deflation means the remaining Bitcoins are more scarce!

From an economics perspective, the issue with proof of burn is that Bitcoin holders were capturing a lot of the value of the use of our network instead of Stacks holders. Whenever a Blockstack name was registered, bitcoins were burned which all things being equal made the remaining bitcoins more valuable on a unit basis. What Stacking does is redirect the value that was being implicitly distributed among all bitcoin holders through deflation (burning of bitcoins) to Stacks holders that play a role in securing the network.

This seems great for Stacks holders and also good for Bitcoin holders & miners which will benefit from bitcoin tied up in this process (more demand for bitcoin) and increased transaction fee pressure (a larger security budget for the bitcoin network).


Maybe I missed this in the SIP, but are new STX still minted as part of the Stacking process?

Is there still a proof of work component? (tunable proof of work).

4 Likes

so what will happen to current App Mining program?

Stacking doesn’t have anything to do with the current App Mining program.

1 Like

Yes, STX still minted! Miners transfer Bitcoin in PoX mining mechanism and mint Stacks. Stacks holders “stack” their STX and earn Bitcoin for participating in the consensus algorithm.

This proposal effectively says instead of slowly migrating away from Bitcoin using tunable proofs, you keep using the Bitcoin chain forever. No native proof of work, no gradual migration. If the mechanism is working and Stackers are earning rewards, moving away from this would mean their rewards go down to zero (remember there were no Stackers rewards in SIP-001).

That’s precisely the problem we were working on from the technical details perspective. Does Bitcoin have enough transaction bandwidth to support this? We explored payment channels etc – that gets complicated very quickly and was requiring some modifications to traditional lighting-like protocols.

Eventually, the tradeoff we landed on was to limit the Stackers who can participate. The threshold is ~94K STX right now (and slowly goes up towards ~100K STX). Every 100K STX owner gets one entry in the payouts. If you have 450K STX, you get 4 entries (and not 5). So that’s 15,000 entries for a future 1.5B STX supply. We can do multiple output addresses per transaction, say 3-5 and that brings us down to 3000 - 5000 transactions per round to give every 100K stacker that is participating a payout. A round can be a month for example – totally doable with the current Bitcoin bandwidth!

To participate, Stackers are (a) parking/holding chunks of 100K stacks, (b) running a full-node, and ( c) signaling on the network what blockchain fork they think is correct (this information is very valuable to honest miners who might be on a different fork by mistake).

5 Likes

To build on this, it ought to be possible for individuals who have fewer than 94K STX (or whatever the minimal threshold is) to pool their STX together behind a single Bitcoin multisig address, which the pool participants control. This single Bitcoin multisig address would be considered a single Stacking participant by the protocol, and would get floor(total_STX / min_STX) slots.

7 Likes

Hi all,

Congratulation for your intro and bringing something Fresh on the table.

  • I would like to see more from this and i will stick here a little and see the evolution.

  • Do you guys have a plan about Financial Industry, Regulatory Authority, and Risk mostly because time will come and question will be asked about this.


Good Luck and if i can help to contribute i will.

Best Regards,
Armand B.

2 Likes

Hello,

Where does the bitcoin distributed to be distributed come from?

2 Likes

Someone asked a similar question on Twitter:

In SIP-001, miners were going to burn BTC – that’s the cost to mine. In SIP-007, the proposal is for the miners to distribute the BTC to Stacks holders who participate in consensus algorithm. That’s where the BTC is coming from – they were always part of the design as “cost of mining”. There is always a cost to mining by definition i.e., miners cannot earn newly minted STX for free.

4 Likes