I am going to write a description of my understand of the POW and POS mechanisms. I would appreciate any corrections to any flaws in my understanding which might appear below. These concepts have been tricky for me for a while, and I want to solidify my understanding.
General Ideas Behind Both Mechanisms:
Both POW and POS use a hash to identify a particular transaction. A hash is an identification for a piece of data, and the hash consists of letters and numbers. A piece of data could be anything- e.g. a word file, excel file, video, etc. A transaction in the digital currency context is in the form of "Saul paid Sarah 100 eth. Saul now has 0 eth, and Sarah has 200 eth". This is just a piece of data because this information is contained in some kind of file like an excel file. The hash for this transaction will be based not only off of the transaction between Saul and Sarah, but based on the hash of all prior transactions combined which is also included in the data file making up Saul and Sarah's transaction. So far so good?
In order to approve a block of transactions, 51% of the computers in the network (in a POW system), must agree on the hash of the most recent block of transactions. Fuzzy area number one- say there are ten thousand transactions in a block, and only one of them is fraudulent, does that mean the entire block doesn't get approved? Or, do the other computers all spot the one fraudulent transaction and void it before approving the block with all the valid transactions?
Now it's getting to the hard part for me. In POW all computers on the network have to solve some complex mathematical problem that takes up a lot of energy, and hence is expensive. The computer which first solves the problem gets to be the one to validate the most recent block. Fuzzy area number 2- aren't all the computers validating each block? Isn't that how we get to our 51% approval? Correct me if I'm wrong, but validating a hash is a trivial problem for a computer, and the complex math problem that the computers are trying to solve is unrelated to trying to solve the hash. So what's the point of making the computers use all that energy? I heard an explanation a while ago but I forgot the details.
POS:
In POS, instead of 51% of the computers validating blocks, it's the computers that in total have 51% or more of the eth that are validating blocks. Fuzzy area three- is it 51% of the staking computers that participate in validating a transaction, or is it 51% of all computers on the eth network? If it's the former, what if only one person/computer is choosing to stake their eth? Wouldn't they then be validating all transactions?
Fuzzy area number 4- do 51% of the eth holding computers need to not only validate balances and transactions from the recent block, but also the code generated by the recent block? For example, say a bad actor wants to change the code of the ethereum blockchain such that now only 1% of eth holding computers need to validate transactions. Does this code itself need to be validated by 51% of the eth holding computers before it becomes the new law of the blockchain? I assume the ethereum blockchain has multiple rules/algorithms, such as an inflation algorithm. Say someone wanted to change the inflation algorithm to make it possible to issue an unlimited supply of eth at any time, would 51% of the eth holding computers need to approve this before it became the new law? Is this even possible? Would that be considered a fork in the blockchain?
Thanks
[link] [comments]
You can get bonuses upto $100 FREE BONUS when you:
π° Install these recommended apps:
π² SocialGood - 100% Crypto Back on Everyday Shopping
π² xPortal - The DeFi For The Next Billion
π² CryptoTab Browser - Lightweight, fast, and ready to mine!
π° Register on these recommended exchanges:
π‘ Binanceπ‘ Bitfinexπ‘ Bitmartπ‘ Bittrexπ‘ Bitget
π‘ CoinExπ‘ Crypto.comπ‘ Gate.ioπ‘ Huobiπ‘ Kucoin.
Comments