https://docs.google.com/document/d/13j-TcKdZ5dM5QYQDHFEyM5F65Bat-EaA4AM-_vCWaG8/edit?usp=sharingBitcoins Nuclear Option - A Defensive Weapon for Armageddon Avoidance Proof-of-Coinbase (POC) - Poison Pill BTC refers to the post-fork bitcoin-core / SegWit fork of bitcoin
BTU refers to the post-fork bitcoins unlimited fork of bitcoin
Bitcoin Nuclear Option (BNO) is a Bitcoin Unlimited (BU) repellent system. It is a built-in nuclear weapon that will act as the last line of defense during a post contentious hard fork in the face of a BU 51% attack against BTC, when BTU has at least 85% hash-power. It is a poison pill, that when made known to the “tl;dr” BU supporters and miners, it will act as a deterrent and we will avoid the fork in the first place.
AssumptionsBU is technically incompetent as a whole
BU is actively attacking a $18 billion dollar asset owned by all humanity
BU will attack with intent to destroy BTC and rename itself from BTU to BTC
Bitcoin will die if above is true
SummaryBNO is a bitcoin fork that activates with the same protocol as BU hardfork. The post fork BTC will not be POW for even a moment. Once the fork occurs there are two coins BTU, with sha256 POW and BTC with POC. NBO activation in core code will be based on 95% signaling, and since its post-fork, BU signaling blocks will not count. All BTC forks by core would essentially be non-contentious.
Objective: To stop bitcoin from forking.Mechanism: A poison pill that activates with BTU fork.
What: A change from POW to POC on BU activation
Result: Existence alone should compel miners to avoid BU signaling.
How: POC gives all the money to non BU signaling miners, making it unprofitable to signa BU
If successful, BU will never be activated, similar to the success of Nuclear Weapons as a defensive deterrent.
BNO is an offensive weapon meant to prevent an attack the same way nuclear weapons are used as defensive deterrent mechanism.
PlaybookBNO takes the playbook for the Chinese Central Bank.
Chinese Central Bank “manipulates” it currency by setting caps and floors. However the yuan trades in many free open markets, so how does it actually defend against the cap?
Instead of fighting the market head-on, it uses a strategy where the market itself never tries to test them. It makes it known to the public, that it went
short trillions of dollars of call options at the cap price. Market assumes that China will defend it position, so trying to buy above that price is all risk no reward.
They avoid a costly battle against the open market by pre-emptivley putting a “poison pill” at their cap price, that they would have no choice but to defend with everything they have.
BNO is a poison pill, where its existence alone should avoid it ever getting signaled!
BNO StrategyIn the context of a bitcoin armageddon. ie; a post fork and imminent 51% percent attack of BTC from BU leaders
Implementing BNO in core and describing its effects, should deter BU activation.
- Threat itself disincentives miners from signaling BU
- POC rewards miners for signed blocks without a BU signal
- Best case - BU never signals, the status quo - cold-car
- Worst case - BU and BNO gets activated, and BTC instead of getting killed by a BU 51% attack, is now POC and immune from BTU hash-power attack
Activation-- BNO get activated on BU activation
-- The first post fork block is no longer POW, but POC.
Each pre-fork mined block with BU signal, gives that miner one less opportunity to “mine” post-fork blocks in BTC. Assuming majority of bitcoin economic activity remains with BTC, BU miners just lost most of their infrastructure investment and are limited in the number of block-rewards they will ever receive in BTC. On the other hand, miners whose blocks did not signal BU will get their full share of the remaining block-rewards and TX fees for the foreseeable future.
EffectsBefore describing POC and debating its merits, it is important to understand that by giving away large amounts of future bitcoins to non BU signaling block miners, many miners will stop signaling BU.
This itself should ensure BU and BNO never get activated. To be clear: BNO activation is not in anyone's best interest, and would only get activated as the final and last line of defense, when BTU forks off BTC with 85% hash power and initiates a 51% attack on the economic chain of $15 billion.
Proof-of-CoinbasePOC is a Proof-of-Stake like system, but it is immune to the issues with POS, like “nothing at stake” and “stake grinding” or “long-range attacks” .
Virtual Perpetual Mining Rig The idea, described by others before, is to use POW from previous blocks to build a virtual mining rig.
- Miners who solved POW would secure the private-keys that controls the outputs from the coinbase transaction in each block
- The set of all public-keys from coinbase outputs is used as the “Stake” in POS
- Even when the coinbase coins are transferred, the “Stake” keys do not change
POS is a controversial and highly debated topic, but with some specific properties it can be as secure as POW (and alot faster).
Again, to reiterate, the point here is not to debate if and how it will work, but to point out what will happen if it does in fact work. Which should stop it from being signaled in the first place. Theorem 1:Distributed Decentralized Consensus (DDC) can reached via “proof-of-stake” if the following conditions are met:
1) Stake is static and is immutably tied to a specific public-key
2) Block signer selection algorithm is independent of the contents of any block data.
3) The set of public-keys in the selection algorithm was created from a Distributed Decentralized Consensus (DDC) protocol.
*see proof
Using a static set of public-keys from historical POW as the “Stake”, and not using contents of the block to determine block-signer, removes “long-range” or “stake-grinding” attack vectors, and enables “byzantine consensus” via proof-of-stake.
POC Algorithm - Coinbase in Proof-of-Coinbase is defined as the set of public-keys from coinbase outputs of non BU signaled blocks since block n
- Coinbase set is static and immutable, and is used in lace of Stake in POS consensus algorithm
- NXT POS (forging) algorithm is used to determine the next block signer from the Coinbase set.
Note: no TX or Block data is used in determining right to sign next block. See: http://bitcoin.stackexchange.com/a/38730
POC is a pure POS system where public-keys from coinbase tx from non BU signaled blocks are the stake, which give miners block signing rights.
NXT forging algorithm is used to decide who gets to sign the next block. This algorithm DOES NOT use the contents of the current or previous blocks to determine next signer, so “long-range” attacks are eliminated. Slasher is used to solve “nothing-at-stake”.
All other theoretical issues, and centralization concerns are debatable. However these risks are acceptable in the context of a poison pill used as a defensive mechanism to a 51% attack
In practice, most private-keys from old coinbases are probably not secure, so we should have a start point from where to start using coinbase keys as “stake” so miners can start securing those private-keys, even after coins are transferred way.
ConclusionProof-of-Coinbase turns the mining hardware of non BU signaling miners into “virtual perpetual mining rigs”, and they will earn block-rewards indefinitely. While miners with all BU signed blocks will not earn a single BTC block reward.
This poison pill, makes BU signaling less attractive as BU gets closer to activation, which will bring BU hash power down.
A (Nash) equilibrium should emerge below the BU activation threshold, and BU should never be signaled. which was the objective of Bitcoin Nuclear Option. Pseudo Proof - attempted
=======================================================================
*Theorem 1 Proof: Must show one case of DDC reached via POS algorithm
Lemma1: POW is a DDC protocol
Lemma2: POW produces a set of public-keys tied to the coinbase.
condition #3 met
Lemma3: a random sampling from a set of keys in Lemma2 is a DDC protocol.
Corollary: assuming no collusion, a deterministic sampling is a DDC protocol.
Corollary: sampling Lemma2 set, in block order, in an infinite loop is a DDC protocol
condition #2 met
Lemma5: we define “stake” as the Lemma2 public-keys which is static and immutable
condition #1 met
Theorem proved by defining “Stake” as the public-keys of all coinbase TXs from discrete set of historical POW blocks, and defining the Block Signer Selection protocol as ordered by “block number” and looping at highest block in set.
========================================================================