consensus method even cheaper than POW

Previous topic - Next topic

zack

I am a big fan of this essay:
http://www.truthcoin.info/blog/pow-cheapest/

It helped me realize how expensive it is to lock money into bonds. This essay makes it obvious that the Casper POS being designed for ethereum will be more expensive compared to POW.

I have invented another consensus method based on the lightning network. It is more affordable than any other method, by far.
https://github.com/BumblebeeBat/FlyingFox/blob/development/docs/consensus_price.md

I need help from the community to make this document more readable.

psztorc

Nullius In Verba

zack


psztorc

My proof demonstrates that it is impossible for any peer-to-peer monetary system to be cheaper than proof of work. I'm not sure why you are trying to do something that I believe to be impossible...

I think that you should try to explain what it is about my proof that you don't find convincing, which leads you to reject it and attempt to construct a counterexample.

When you write:
Quote
This document is NOT about the cost of creating new coins.
...you admit that your system cannot survive in it's earliest stages.

Ignoring that, how expensive will the crypto-monetary system be when it is the case that no new coins are created? In Bitcoin, it will be the sum of all transaction fees. Here, presumably it is the same, and the fees go to channel operators.

Ignoring all of that, the block-creator always gets to exclude transactions which he/she doesn't like. What is the "heaviest chain" rule for selecting a blockchain history, if you wake up and see two blockchains of length 100,000, which forked awhile ago (such that each chain had a group that attempted to prevent members of the rival group from opening channels)?
Nullius In Verba

zack

#4
Thank you very much for reading the essay and giving feedback.

Quote from: psztorc on February 08, 2016, 03:52:36 AM
I think that you should try to explain what it is about my proof that you don't find convincing, which leads you to reject it and attempt to construct a counterexample.

There are a couple problems with your proof:
1) you assume that only consensus mechanisms that produce coins are viable. If you are right, then bitcoin is on a path of death. Bitcoin is slowing down coin production by half every few years. If Satoshi consensus stops working at some point, then bitcoin might want to switch to Flying Fox consensus. It is optimized for a finite non-growing money supply.
2) you only consider consensus maintained by the destruction of resources that cost the same amount for both coin-holders, and people who don't own coins. like POW and liquidity and elections. There exists a resource that is affordable for coin-holders, and expensive for non-coin-holders. (the coins)

Here is a very simple counterexample: Every coin holder is forced to stay online 24/7. The portion of coins you have is how much control you have to add the next block.
There is no way to force the addition of blocks, or censor a block, unless you are part of a coalition of >51% of coin owners who wants the same thing.
None of the coins are "bonded". you can spend them to whoever you want during any block. We aren't losing value by the interest rate.

The cost of consensus is very low, practically zero, but the cost of owning coins is excessively high. Leaving a computer on 24/7 is unreasonable for most users.

Quote from: psztorc on February 08, 2016, 03:52:36 AM
how expensive will the crypto-monetary system be when it is the case that no new coins are created? In Bitcoin, it will be the sum of all transaction fees. Here, presumably it is the same, and the fees go to channel operators.

It is as expensive as the fees yes.
In Flying Fox, the rate of block creation isn't connected to time. It is connected to a certain volume of money. Every time >X coins are ready to be spent, the next block is ready to add to the chain. So the transaction fee is proportional to the amount of money spent.
In bitcoin there is a finite supply of 1 megabyte per 10 minutes, and a variable demand.
In Flying Fox the supply changes to meet demand.

Flying Fox has normal tx fees, the same as bitcoin. It has channel fees on lightning txs, just like the lightning network will on bitcoin. Unlike bitcoin, we don't have to pay miners to waste electricity constantly, instead we pay juries of random coin-holders to vote on the next block. So the block creation fee should be a lot lower, for the same level of security.

Quote from: psztorc on February 08, 2016, 03:52:36 AM
Ignoring all of that, the block-creator always gets to exclude transactions which he/she doesn't like. What is the "heaviest chain" rule for selecting a blockchain history, if you wake up and see two blockchains of length 100,000, which forked awhile ago (such that each chain had a group that attempted to prevent members of the rival group from opening channels)?

somewhere in between these 2 rules:
1) the chain that had the most money provably destroyed.
2) the chain that has the most participation from validators.

In Flying Fox it is not possible for the chain to fork the way you describe. If 2 groups of validators were very determined to disagree on a particular block, it is like an auction. Whichever side is willing to throw away more money wins. It is more affordable for the side that has more validating power. The price of "raising" is at least 50% more than the previous raise. So it is a discrete process with exactly one winner. Everyone who stays online 24/7 can be certain that they are on the same chain they started with.

An attacker, instead of buying up tons of miners and wasting electricity, would be buying up lots of coins and provably destroying them. Which makes the rest of the coins more valuable. Flying Fox has anti-fragility built in. Attacking it makes it stronger.

It is possible to get a bunch of old private keys, and start building a fork from an old block.
This result is identical to taking the source code and launching a new chain from genesis block.
You treat it the same as any other altcoin. You go onto coinmarketcap.com or some exchanges to look up the exchange rate.
Either 1) you only have coins on the original chain, or 2) you have coins on both chains, and can't tell which is the original.
Either case is fine.

It cannot be profitable to make a fork by paying the jury of validators to double sign at every height.
The jury loses a safety deposit that is twice as big as the amount of money spent in the block.
The random seed is from a very long time ago. You would need >50% of the money in the blockchain to sustain the attack long enough for the random seed on each side to be different.

psztorc

#5
Quote from: zack on February 08, 2016, 05:04:30 PM
Thank you very much for reading the essay and giving feedback.

You're welcome.


Quote from: zack on February 08, 2016, 05:04:30 PM
There are a couple problems with your proof:
1) you assume that only consensus mechanisms that produce coins are viable. If you are right, then bitcoin is on a path of death. Bitcoin is slowing down coin production by half every few years. If Satoshi consensus stops working at some point, then bitcoin might want to switch to Flying Fox consensus. It is optimized for a finite non-growing money supply.

No, I don't.

""For simplicity, this section assumes that all P2P systems release new coins at the same schedule (ie, at a rate of 50 units per 10 minutes, a rate which itself halves every 4 years). The following section will describe how changes to the schedule are irrelevant.""

This section describes how changes to the schedule (such as yours) do not remove the need for expensive proof of work: www.truthcoin.info/blog/pow-cheapest/#the-coinbase-rot-paradox-less-is-more


Quote from: zack on February 08, 2016, 05:04:30 PM
2) you only consider consensus maintained by the destruction of resources that cost the same amount for both coin-holders, and people who don't own coins. like POW and liquidity and elections. There exists a resource that is affordable for coin-holders, and expensive for non-coin-holders. (the coins)

Again, this is untrue. And furthermore, with a tiny assumption, that users are free to buy and sell coins (ie, that "a price exists", which -by the way- is a necessary assumption to even calculate the PoW expense, as it is defined with Bitcoin numéraire), it is irrelevant.
Nullius In Verba

zack

I agree that POW is a great solution for coin distribution.
I am going to make a fork of Flying Fox that uses POW for coin distribution.
A problem with using POW for consensus is that if 51% of miners switch, they can modify the blockchain software.
It is not good to give miners this power.
Even if POW is used to distribute the coins, we should still use FF-POS to maintain consensus. That way, any >2/3 coalition of coin holders could update the software.

Quote from: psztorc on February 10, 2016, 05:56:59 PM
This section describes how changes to the schedule (such as yours) do not remove the need for expensive proof of work: www.truthcoin.info/blog/pow-cheapest/#the-coinbase-rot-paradox-less-is-more

I agree that marketing the initial coins is expensive. And I see how it is like having 1 block with all of the POW at once.

Bitcoin created a lot of coins when the price of a bitcoin was < $0.01
It cost a lot less electricity to produce a bitcoin back then.

If more of the 21 million bitcoins were produced when the price is lower, then the total cost of electricity to produce the bitcoins would be a lot less.

The price is very low at the first block, practically zero. It seems like the most affordable time to create the coins. The least work needs be done.

Quote from: psztorc on February 10, 2016, 05:56:59 PM
Quote from: zack on February 08, 2016, 05:04:30 PM
2) you only consider consensus maintained by the destruction of resources that cost the same amount for both coin-holders, and people who don't own coins. like POW and liquidity and elections. There exists a resource that is affordable for coin-holders, and expensive for non-coin-holders. (the coins)

Again, this is untrue. And furthermore, with a tiny assumption, that users are free to buy and sell coins (ie, that "a price exists", which -by the way- is a necessary assumption to even calculate the PoW expense, as it is defined with Bitcoin numéraire), it is irrelevant.

If an attacker was willing to purchase >2/3 of the coins, he would have control of flying fox the same way someone with >1/2 of bitcoin miners has control of bitcoin.
Flying Fox is only secure to a factor of 2. An attacker willing to destroy 2 of his own coins can also destroy 1 of someone else's coins.

Similarly, the truthcoin oracle is only secure to a factor of 1. An attacker willing to buy >1/2 of the votecoins in a branch can break the outcomes of that branch.

I don't see how this attack is a problem. Could you give more details?

psztorc

If your system is rewarding "miners" with transaction fees, it is still paying out coins.

So you still need to explain why you think that my general proof is wrong.
Nullius In Verba

zack

I think we have been approaching the POW vs POS problem from the wrong direction. Comparing cost of consensus mechanisms is the wrong way to think about this.

It is bad to connect the consensus mechanism to the coin creation mechanism, because the rate of coin creation should be determined by the demand for new coin.

When the demand for gold goes up, we invest more into mining, and rate of gold production increases to meet demand.
When the demand for bitcoin goes up, we invest more into mining, and the rate of coin production stays static.

Having a fixed unchanging rate of supply is bad. It makes the currency price very volatile.
What we really want is for it to always cost 1000 coins of POW to produce 1000 cryptocoins.

If we disconnect the consensus from coin creation, then we can create something much more elegant. We can sell small amount of coins for small amounts of POW to determine the current exchange rate between coins and POW, then offer to sell any amount of coins at the current exchange rate. The resulting blockchain would be able to grow it's market cap very quickly when it needs to, without changing the price of individual coins.




zack

I designed a mechanism for efficiently determining the price https://github.com/BumblebeeBat/FlyingFox/blob/development/docs/coin_creation.md
That way we can sell unlimited coins at the current price.

psztorc

Quote from: zack on February 13, 2016, 07:22:27 PM
I think we have been approaching the POW vs POS problem from the wrong direction. Comparing cost of consensus mechanisms is the wrong way to think about this.

Yes, because as I and other have patiently explained many many times, all crypto-monetary consensus mechanisms must cost exactly the same.


Quote from: zack on February 13, 2016, 07:22:27 PM
It is bad to connect the consensus mechanism to the coin creation mechanism, because the rate of coin creation should be determined by the demand for new coin.

Because the units of money are of type="fractional", the creation of money is inherently redistributive -- it is a tax on some and a subsidy to others. The topic of what, if anything, should influence the rate of coin creation (particularly in the context of open source software) is very complex. I do not agree that it "should" be determined by the demand for new coin (whatever that would mean).
Nullius In Verba

zack

For example, imagine a group of people who owned $100 billion wanted to convert all that money to bitcoin. They should own 94% of all the bitcoin after this transaction, because all existing bitcoin is only worth 6% of the amount they are buying.

Going to each individual bitcoin owner and asking them to sell 94% of their coins is very difficult.

If someone tried this with $100 billion by trading, I bet they would own less than 1/2 of the bitcoin at the end, because the price would keep going up.

The mechanism I describe for flying fox would allow them to own the full 94% they paid for.

psztorc

Quote from: zack on February 16, 2016, 01:54:08 PM
The mechanism I describe for flying fox would allow them to own the full 94% they paid for.

Can you describe why you think that that is desirable? Most would say that the asset should serve it's current owners, not prospective new owners.
Nullius In Verba

zack

Quote from: psztorc on February 16, 2016, 03:06:48 PM
Most would say that the asset should serve it's current owners, not prospective new owners.

If that were true, then every time a new address is added to the system, we should require a 100 bitcoin fee, which is shared among everyone who already had coins.

Adding arbitrary fees to new users and giving the money to old users is often bad.

Linear rate of coin creation doesn't punish new users exactly, it only punishes new rich users.

The value of the coins is approximately equal to the value of the resources destroyed in creating those coins.

If a rich person spends 2x the market cap of bitcoin buying bitcoins, no resource is destoyed. The USD don't get destroyed, they go to other bitcoin holders who sell. So the market cap can't increase.
So the rich person ends up with less than 50% as much value as they started with.


psztorc

Quote from: zack on February 18, 2016, 05:19:28 PM
Quote from: psztorc on February 16, 2016, 03:06:48 PM
Most would say that the asset should serve it's current owners, not prospective new owners.

If that were true, then every time a new address is added to the system, we should require a 100 bitcoin fee, which is shared among everyone who already had coins.


Say there are two assets, one which costs a fee to send, and the other costs fee + 100 BTC to send.

Why would I, as a current owner, prefer to own the one that is more expensive to send? That would be like owning an air conditioner which uses hundreds of times the electricity...not at all in my interest (as a "current asset owner").
Nullius In Verba