Delegated Proof of Stake, Smart Contracts and Minting Rights

in #blockchain9 years ago (edited)

You


probably have heard of terms like "Proof of Work" and "Proof of Stake" and "Delegated Proof of Stake" and "Smart Contracts" but you may not have any idea exactly what they mean in practice.

I also wondered exactly what it meant, and rather than researching it, I am just using logic to figure out what it means so I can simply express it.

Firstly, these "Proof" things... Why does a blockchain even need proof?

Well, basically because nobody trusts anyone else to not put transactions on the record that benefit them that are false, and the transactions have to be assembled by someone, so what they make has to have something about it that can be agreed upon to be factual through some test.

Proof of Work means that the right to create a new block is allocated by being the first to solve a puzzle (hash collisions, usually). This is the way it works in Bitcoin, and Miners thus are also Witnesses. A miner is someone who issues currency by Proof of Work, as well as assembling blocks.

Proof of Stake means that a secondary token representing a right to make new blocks has been paid for, from a limited pool of such tokens. Minting new tokens is still generally done via Proof of Work. In Dash they are called "Masternodes" and in Steem they are called "Witnesses". The new name relates to the fact that they solely have the right to make blocks under some scheme usually involving tens or more other such competing nodes.

Delegated Proof of Stake is the same as Proof of Stake, except it means specifically delegating the right to make new blocks via a process of assenting to representation, or, as it is called, delegation. In Bitshares and Steem the right to make blocks is assigned in this way. As @dantheman explained in his recent piece about censorship resistance, DPoS allows both accountability and a community response to abuse of this privelege (This is partly why also there is a forum in Steem, this precisely is a purpose for it related to DPoS, namely accountability and auditing).

Minting Rights

By some scheme or other, all blockchains have a consensus rule about the rights for making blocks and making new tokens. In Bitcoin and many others, in fact, pretty much all, the right is combined and allocated randomly using a brute force cryptographic attack on a hash, usually.

But there is new ideas floating around about the idea of using some kind of PoS or DPoS scheme to determine minting rights.

One scheme involves buying a token that grants that right.

I believe that presently Steemit, Inc. is in the process of devising a scheme for this also, but I am not sure what kind.

The token buying scheme is similar to making a claim in a real life mining business, except maybe instead more like a licence to run a money printing press, or a share in a cooperative printing press's issuance.

A scheme that models the mining situation could be based on a random seed that has a specific built in (into its sequence of produced numbers) 'richness' - that is to say, somehow these tokens could have some unknown but predetermined sequence of 'hits' that varies over time.

Knowing which one to buy would be mostly just guessing. After all, over time, the sequence will even out, but during time periods there will be some amount of changes in the density of these 'strikes' that dictate the size of the token that can be made.

You could also just run a lottery - every account could have an equal chance of being paid the next token, which will be created by a Witness and assigned to the recipient.

There is also literal jobs that could get paid in this way also, like proof of performance of a service like file storage or traffic routing. A consensus agreed pegging to some external phenomena could also be used - like the rate of Gold production, for example. This would also give a reason to 'premine' some amount to make it an accurate model, and there has to be agreed sources of the data of this external phenomena.

Note that in the cases of 'buying minting rights', the actual minting, or not minting, could be a prerogative (the owner can issue them, or not), or the witnesses could work on a smart contract that automatically pays it out to the holders of the rights token.

Smart Contracts and Delegation

Which leads us to the much ballyhooed business of "Smart Contracts". What are these things anyway?

Firstly, they are basically a contract requiring a specific procedure to take place between a number of parties.

To execute a contract as it is specified, the parties do not have any prerogative about how it goes, they just choose them, create and sign the 'form', and then the onus is upon the people who are assigned to this task in the scheme of granting block creation rights that the Witnesses execute.

The contract has to be certified and witnessed. This is where the term 'Witness' came from in Steem, it is related to the third party verification of an agreement between parties or deed of a person.

If you didn't immediately start to see where this was going, I just wanted to point to the fact that in order to perform smart contracts, there has to be an auditable trail of delegation of rights to make it consensual (proof of consent). That is to say, it requires Proof of Stake (your signatures) and Delegation to really work. This was one of the main innovations devised by the inventors of Ethereum, and why the direction of development is moving towards Stake rather than Work based systems.

In Steem, your votes for Witnesses is you signing your right to them to act on your (and your counterparty's) behalf. You are saying by this, that you submit to the rules of the network - and by this, witnesses distribute tokens that are created by miners and split by witnesses into the rewards and the interest pools of the forum voting system, the Steem Power and the Steem Backed Dollars, all of these are Smart Contracts and are executed by the Witnesses on our behalf and our votes (or not votes) on witnesses determines which witnesses join the group that makes the blocks.

Each new hardfork of the system changes the rules of the network in some way, and the witnesses themselves have the right to veto if more than 1/3 disagree to the new code base, and the rules built into it. The big deal about Ethereum is that you can write these contracts and execute them in more limited ways, but really there is no need for this because most transactions fit into specific forms, purchase, order, vote, payment, escrow, and so on.

In practice, there really is not that many ways to make such contracts anyway, there is a limit to how much data is available without human interaction to execute the contract. It could be used to accurately track production, damage and TCO for robotic manufacturing and distribution systems, but even then, a human would have to be the party the machines he is in charge of have their rights in the network to execute.

Notes

I just want to mention again that I cooked this whole article up out of my own mind and did very little research and just basically thought it through.

I like to write this way because I think to some extent the way I figure it out maps to the process of learning it, by binding the new concepts back to old concepts you already understand and looking closer at the meanings of words used.

Or in other words, as I write down what I figure out, it comes out in a way that my own brain used to produce a model to understand it, based on previous knowledge. I think this methodology helps other people learn faster.

😎


We can't stop here! This is Whale country!
https://steemit.com/@l0k1

Sort:  

After reading this, I'd like to have a smart contract in the future that dispenses a steak with greenmint sauce every evening after 6.30 pm..

Robots and AI will eventually make that possible :)

Nice...........................

Great post but I have a rather technical question I'm not sure if you can answer.
Whatever your smokin will you please pass it over here?

Dash still uses PoW. It is their network isn't 1 rank.
There is 2nd layer of nodes, that are collateralized with 1000 DASH, those are the Masternodes. They are the same like any full node, but with that collateral they get to participate in all those fun things, like enabling InstaSend, mixing for PrivateSend, and voting for the proposals, that is what to do with the money that go into Treasury.
They also get part of mining rewards.

Thank you for your words. This makes difficult things for me now able to understand. I follow you now and @kevinwong. His joke is very funny because it talks technology and food. Ha. Ha.

Coin Marketplace

STEEM 0.14
TRX 0.35
JST 0.034
BTC 115784.31
ETH 4710.96
SBD 0.86