The Fundamental Underpinning of Blockchain Consensus


All peer-to-peer blockchains operate under some form of consensus. People often talk about the rules of the blockchain as defining the terms of that consensus, which is true in some sense, but very wrong in another.

At it’s deepest level, peer-to-peer network consensus is established by the people who run the software on their computers. As a computer owner, you have the right to run the software you want on that system and this includes running software that let’s you participate in a peer-to-peer network. If you don’t like the rules for how that software works, you can always change the rules and run new software.

Now a peer-to-peer network isn’t very useful if there is only one person using the network, so you generally must then seek out other people who want to run compatible software.

Cryptocurrency forks

In terms of a cryptocurrency peer-to-peer network, a change in the rules of the network is generally referred to as a fork. It’s called a fork because some people may choose to continue to run the old software and others will use the new software. So what was one community running the same software becomes two communities operating under different rule sets.

Note that in this case, a person can even operate both forms of the software if they choose. In the case of cryptocurrency, this means that such a person is assigning value to both types of coins, the old ones and the new ones. Exchanges often do this, for example.

Rule changes: are there any limits?

Note that there are no limits on how the rules can be changed when forking. You can create a fork where all the money is given to your associates, for example, and you and your associates can run that software. This can and does happen. But such cryptocurrencies don’t generally gain much popularity, because they are exclusive in nature, unless they make some promise about future distribution to most people (this is basically how many ICOs have occurred, for example).

So in the end, while there are no technical or legal limits on what changes can be made in a fork, the real limiting factor is people’s acceptance of those changes. A coin on a cryptocurrency network with only one participant isn’t worth much.

This, in fact, is the real “consensus” of a cryptocurrency network: it’s the people who are willing to operate under the rules of a cryptocurrency network and assign value to those coins. At the moment you, as an individual, decide those coins no longer have value, you have the right to leave that network, join another one, or even start your own fork.

But wait, what about “Code is Law”

The rules of a cryptocurrency network can always change, and they generally do over time. In my opinion, “code-is-law” is a nonsense term unless there’s an actual legal agreement backing it. This would be the case, for example, if a formal contract was established between all the participants in the cryptocurrency to abide by the rules of the code.

I think this would be a terrible idea, however, unless there were also defined some clear rules for establishing a method for updating the agreement over time and also a way to handle code bugs, because inevitably complex software never does exactly what was intended all the time.

Beyond blockchain consensus

Note, as a practical matter, most blockchains do not have any associated legal agreement of the type mentioned above, nor am I advocating for one.

I believe, in fact, that the greatest philosophical idea that has emerged from cryptocurrency is this idea of voluntary cooperation via support for a common set of rules which one can join or leave as it suits the individual. Indeed, I think that this idea has applications beyond today’s cryptocurrencies, and will lead to many new ways that humans can organize to voluntarily work together in the future.


Comments 58


Do you personally feel more secure in Steem and the value of your stake with the latest code change?

As one of the largest stakeholders on Steem (with access to that stake :D) your actions carry weight with many others in the community, as does your voice.

24.02.2020 00:13
0

I do. The huge Steemit stake was long ago promised to support onboarding and development of the Steem blockchain and I think only this promise allowed the blockchain to get established, given the huge percentage obtained by Steemit initially. Since that time, that promise has clearly been violated, and I think it's led to much of the struggle that Steem has faced in the cryptocurrency rankings.

Also, as a purely philosophical matter, making promises then not keeping them, just ticks me off.

24.02.2020 00:18
0

Would have liked to have seen this implemented far earlier in the history of the chain, but I guess better late than never.

Personal philosophy matters for every individual action - some just deal in words with no follow through.

24.02.2020 00:22
0

Been reading a lot of the comments/concerns over this and I think this point is being missed by most -- Ned/Steemit's clear violation of the original promises made through this acquisition. I am very happy about this change and I think the people who are pissed about this would have a very different opinion if they experienced any sort of the potential downside we faced without it.

Posted via Steemleo

24.02.2020 00:35
0

This!
If I remember correctly, there are even early on-chain interactions during the earliest days of the Steem blockchain and the ninja-mine reassuring the community that supporting community development was the justification of the majority stake amassed by Steem Inc and Steem Inc representatives. (It may have been @dantheman) I'd have to dig to find the statements I'm referring to though, as I would prefer to point directly to the comments.

I also feel that on a fundamental level we, the community, have been deceived and the promises made to the community - yes, we can call it a social contract - have been flouted time and time again. Even if overdue, it's time for action.
Thank you for your post and statements above, they strike a chord with many in the community, I have no doubts about that.

24.02.2020 02:45
0

Excellent question, and as another significant stakeholder (not as large as BT though), I'll give you my answer. I haven't felt very secure about the value of my stake for some time, even less so after the sale of Steemit, but this code change gives me at least some reason for cautious optimism. We'll see how it plays out.

The Steemit ninja-mined stake has always been a special case since day one (and one particularly terribly handled up to this point) and no other stakeholder need infer any concern for their stake in my opinion, but that is just one person's view.

24.02.2020 00:20
0

Thanks. Obviously no need to answer below :)

Over the course of the three years I have been here, both you and BT have been voices of reason, which is why I am glad I caught you both on this topic, and your answers align.

24.02.2020 00:25
0

If you continue with this irrelevant spam, I will downvote you heavily.

24.02.2020 09:00
0

good explanation about how blockchain works. Thank you for letting us know. By the way I noticed that it took too much time buying bch in your website and send it to coins. ph?

24.02.2020 00:15
0

I'm not aware of any problems with us sending BCH. The only issue I know we've faced recently is that our EOS wallet has had timeouts occassionally when we're sending EOS, so that we must occasionally intervene manually and retry the sends.

24.02.2020 00:21
0

I understand that our time zone is different. I bought BCH by steem before and I received it in my wallet for almost 2 hours but now from just last 2 days. I was worried that I did wrong because I received it more than 4 hours. But I'm not complaining about it, I'm just wondering why.
thanks for responding by the way

24.02.2020 00:33
0

If there was a large delay with delivery of BCH, it probably means we had temporary trouble pricing one of the two coins involved. In that case, an admin would have had to retry the transaction later, which would explain the multi-hour delay.

24.02.2020 00:42
0

ah so that's why, got it. Now I understand it, thanks..

24.02.2020 00:47
0

Code is Law

Well, code is law on a particular fork because, after all, the computer will always do exactly what the code says, no more and no less. But as you say you are free to leave it and join another one.

24.02.2020 00:16
0

Is the shutdown of your witness due to in disagreement to the softfork? Is this your "free to leave and join another" put into practice?

Again, similarly to what I said in the comment to BT above, your actions and voice carry weight here too.

24.02.2020 00:19
0

No. I support the soft fork and I think it, at least, should have been done long ago. In fact I worked to get the community behind taking firm action a year ago when Ned's 'mismanagement' of the stake (an overly favorable characterization, in hindsight), only to find that too many people peeling off and preferring to be opportunists trying to gain personal advantage from being first accept and support more of Ned's empty promises.

24.02.2020 00:26
0

It is going to set up some interesting discussions around the philosophy of the chain, but I think it is best to get the ducks in a row earlier, rather than later.

A little positive drama that questions fundamentals might be good for the community.

Thanks again for all you have done over the years.

24.02.2020 00:31
0

Yes, but from what I've read by most "Code is Law" advocates, it seems to be more of a philosophical belief that participants in a network should abide by the results of the code, and any retroactive change should not be allowed via a hardfork.

I guess the most notable case of this was the arguments for "Ethereum Classic", where a hacker exploited a weakness in the code to obtain funds from the DAO in an unexpected way. The majority community response was to hardfork and revert this exploit. But a vocal minority argued that this reversion was morally wrong because "Code is Law" and so we got two Ethereum forks.

24.02.2020 00:30
0

I guess. But in the end, both communities picked the code and law they want.

24.02.2020 00:31
0

Yes, they both had to abide by what I'm calling the true law of consensus, which will hold as long as we're allowed to choose what software we run on our computers.

But a philosophical difference did emerge between the two groups as to what types of changes are morally right. This just becomes another argument that can be used when users decide to choose what rule changes they consider valid and willing to accept/operate under.

24.02.2020 00:38
0

Sure there is a moral argument, but where does that ultimately end up? One group claims it is moral and the other group is not, and the other group claims the exact same thing.

Live and let live works for me. Neither is taking any sort of violent action against anyone.

24.02.2020 00:42
0

Yes, I agree.

When I say that I consider "Code is Law" nonsense, it's mostly from my perspective that bugs in software are common, and rigidly obeying the results of a bug just seems like a terrible idea to me. Others are more than welcome to operate under such rules if they wish, however, and I consider this greatest idea that has emerged from cryptocurrency networks.

24.02.2020 00:45
0

in the particular case of Szabos law and the 21 Million Bitcoin supply-limit, "code is law" is vital for price discovery and yes otherwise it is a weakness (evolution proves you right). Of course the term "law" is BS but it is a suggestion to the ones deciding. Once a particular system is established, you cant undo it by hopping to another software. You cant undo mindshare. Szaboslaw was allready broken when we shifted from p2pkh legacy addresses (starting with "1") to bech32 native Segwit ("bc1") ... after your logic it is fine, since there is no "code is law". But from a moral point of view most non-techi Bitcoin users are tricked off the Nakamoto chain. Nakamoto holds p2pkh coins, while most of the newer users hold netiveSegWit, while believing they hold the same BTC as Nakamoto 😂. The market does not discriminate between both flavors of BTC, but game-theoretically it is a huge difference if you hodl like Nakamoto or if you blindly follow the consensus ("because majority consensus is king"). Iterated over many trial and errors mistakes are fine and makes the system anti-fragile but can you really apply this to the already established systems?

24.02.2020 00:44
0

but can you really apply this to the already established systems?
Sure, we can, and sure we will.

In my own opinion, both our current monetary and governance systems are severely flawed (note I'm referring to both cryptocurrency and fiat monetary systems, and pretty much every form of government which sovereign nations currently operate under).

I operate under these systems today, but I long for, and work for new, better systems to replace them. I don't know if we'll see significant change in my life time, but I've reached the point in my life where it's the primary goal for all my future work.

24.02.2020 00:56
0

I admit, my first response on hearing this was a negative one toward the witnesses that must be supporting it but in the light of the comments on this thread particularly,I have changed my mind. Yes indeed, this is probably something that should have happened some time ago too address the issue of the ninja mined stake. The timing, well, it could be argued that it is both good and bad.

But, I am certainly glad I dropped by this post, it has assuaged my fears somewhat.

24.02.2020 01:00
0

@blocktrades, In my opinion beauty of Decentralisation is Freedom Of Decisions. And Steem Blockchain gone through from so many dynamic circumstances and survived and grown so effectively and in my opinion definitely this time also it will going to grow same way as always. I know it's very critical time for the Witnesses but we back them and believe that they will do what is good for Steem Blockchain. Stay blessed team.

Posted using Partiko Android

24.02.2020 02:59
0

Good night.

Interesting article you just published. Honestly, it is of great help to many people, especially me, since I know little about Steemit and his fantastic strategies.

Thank you, brother.

24.02.2020 03:04
0

Thanks for sharing this helpful information about consensus

24.02.2020 04:14
0

This whole thing would make an incredible TV series.
The early days, the ninja mine, Ned and Dan falling out, the forks, the reduction in inflation, linear rewards, reduction in power downs. Fumbled hardforks, outages and replays, the layoffs, Ned handing the reins to Eli; the sale; communities, the softfork....

I try to keep my finger on the pulse; but I feel like I'm 3 layers from the epicentre.
When the dust settles I'd love to spend a long weekend binge-watching the back story.

24.02.2020 04:53
0

It would make quite a story, especially if went all the way back to ProtoShares, then AngelShares, then BitShares, then Steem. If we ever manage to truly change the world with any of this work, I'll definitely think about writing my memoirs :-)

24.02.2020 05:17
0

24.02.2020 05:22
0

Call the movie: The Social Contract.

01.03.2020 11:19
0

I really appreciate you

24.02.2020 08:37
0

I am learning slowly what this is all about and why there are so many ICO's. I am I right is saying most of the tokens or coins out their with their ICO's have mainly come off only a few block chains then?

24.02.2020 14:29
0

Many of the early blockchains were simply bitcoin forks. It is much easier to simply fork bitcoin (or another existing blockchain) than to create a new one from scratch.

Not only is there less coding effort, it also is easier to get your coin listed on an exchange that already supports the coin you're forking from, because there's less technical work for them to do to support deposits and withdrawals from the exchange.

Note that forking from an existing blockchain doesn't necessarily mean the new chain has less technical quality than one made "from-scratch", either. Indeed, in some cases the smartest thing to do can be to start with an already good chain, then make it better. Most chains, including bitcoin itself, have leveraged existing code (in bitcoin's case this includes open-source cryptographic libraries, for example).

24.02.2020 18:07
0

That makes sense and thanks for the explanation.

24.02.2020 18:11
0

What will happen to our Steem-Engine balances?

*asking for a friend

Posted using Partiko Android

24.02.2020 15:45
0

Under the soft fork, nothing has changed as far as Steem-engine balances go.

24.02.2020 18:08
0

I still feel secure on Steemit, great conversation in this thread, Ned, Dan and Elizabeth are doing the right thing, and we have good community leaders.

24.02.2020 21:11
0

Powering down! Wow ! @blocktrades

image.png

25.02.2020 03:52
0

Yes, I was asked why I was powering down last week, and my answer is here: https://goldvoice.club/steem/@blocktrades/q5ylfo

25.02.2020 20:20
0

Thank you for the reply! Just another one, will you power down completely or just part of your SP?

26.02.2020 06:19
0

Congratulations @blocktrades!
Your post was mentioned in the Steem Hit Parade in the following category:

  • Pending payout - Ranked 2 with $ 115,33
25.02.2020 15:53
0

My goodness! Way over my head. But Mr Trades..... I'm heading back to Thailand, first stop the adoption agency on behalf of you and your lovely wife! Hahaha.

Hope you and the Misses are well! And I'm sure you and the other bigs have this forky business under control!

Wishing you the best from The Middle of No where Vietnam!

-Dan "World Travel Pro!"

25.02.2020 16:31
0

Wow, I admire your dedication to travel: I must admit I'm planning to avoid any near term air travel if possible due to covid-19. I know it's probably excessive concern, but I often catch something from plane travel in normal times...

As far as the post goes, I was really hoping it was at the general reader level, instead of just targeting crypto people. If there were some points that weren't clear, I'd be happy to add more words, if you could point me in the right direction. It is more than possible I made too many assumptions about the reader's background, and if so, I'd like to repair that lack.

25.02.2020 20:43
0

Dan the man. It's all good! Your article was very well written and clear, I just reread it again. My first go around I was tired after a long day of Motor Biking the Ho Chi Minh Trail. That combined with a low IQ, a low attention span, and having to having to use my trusty pocket dictionary on the word "peer", the odds were clearly stacked against me! lol

But it's all good, in fact after reading it again just now it offers some very good insight into how this whole thing works for a non-techy like myself. The effort you spent writing this is very much appreciated. I just have one last question...... Do you and the misses prefer a little Thai girl or boy? Hahaha

On another matter, if you want to see two turtles making love in a Vietnamese Aquarium check out my latest blog post! lol That pretty much says it all in regards to the level I'm working at over here. Imagine if "blocktrades" posted something like this! lol

As far as the Wooohan, I don't blame you for not wanted to travel. For me, I've just got nothing else to do, so Thai Island hopping with my girlfriend is next on the list. Luckily it just a 40 dollar, hour long flight, and I suspect the plane will be half empty.

Thanks again for putting out such quality articles and supporting so many bloggers on steemit.

Hi to the misses and have a great day brother!

26.02.2020 13:57
0

Lol, I just started reading my own article again, and I can see where the confusion could set in pretty early, probably starting with terms like peer-to-peer network. I probably have my work cut out for me, to really bring this down to the level of the general reader.

25.02.2020 20:47
0

Let’s get this digital abundance, guys and girls!😉

Posted using Partiko iOS

27.02.2020 01:26
0

wise words

27.02.2020 03:06
0