Learn by Interacting with Hash, Blocks, and Blockchain + get 100SP delegated for insightful comments

in #bitcoin6 years ago

Hi all,

Two week ago, I started my journey of learning to program on btc. See https://steemit.com/bitcoin/@ddangerwu/from-noob-to-proficient-how-you-can-program-on-blockchains-in-40-days for details.

BLOCKCHAIN1.png

I've stumbled upon a website that allows you to play with the relationships between Hash, and Blocks, Blockchain. see https://anders.com/blockchain/hash.html and you can also cycle through the tabs on the top right. Disclaimer: I did not make the website nor am I affiliated with it. I do think it is a great tool for helping to understand basic blockchain concepts though.

So, after playing around with it for a while, I have made some notes for myself in understanding these concepts and I'd like to share with you guys on my findings.

HASH

Screen Shot 2018-02-24 at 5.51.58 PM.png

What is it: it's a fingerprint of some digital data. As you can see, I've changed the words "Hello Steemit" into a series of gibberish starting with B016.... That gibberish is the SHA256 hash of "Hello Steemit".

Screen Shot 2018-02-24 at 5.59.26 PM.png

Now that I've changed the data, you can see the hash has also changed as well. Notice that the hash is always 64 characters long

BLOCK

Screen Shot 2018-02-24 at 6.07.16 PM.png

What is it: a block is hash that follows a certain rule or "fits" the algorithm. You notice that the background is currently red. That's because my data of "please resteem" does not currently fit the rule. What is the rule? Let's arbitrarily set it as the first 4 characters of the hash must start with 0000. You may have whatever rule you want in your algorithm, this is the rule for SHA256.

Screen Shot 2018-02-24 at 6.14.37 PM.png

If I want to force the data of "please resteem" to start with the hash of 0000... then I need to try many variations of hashing. This process of trying all variations is called "mining" and I've found that the NONCE 12175 helps me fit the rule and now the background is green. You can think of NONCE as guidelines or "key" as to how to hash the data to follow the rules.

BLOCKCHAIN

Screen Shot 2018-02-24 at 6.22.08 PM.png

What is it: it's a series of blocks all following the rule and each block verifies the previous block. Notice that all blocks have green backgrounds right now. This is because they all follow the rule of the hash starting with 0000. Their nonces are different because each block takes the hash of the last block and combines the new data within the block to calculate a new nonce.

Screen Shot 2018-02-24 at 6.30.30 PM.png

I've changed the data in block #1 from empty to "also, comment something insightful to win 100SP delegation!". I mined/found the nonce to make it follow the rule. Now block #2 and #3 are red because their respective nonces no longer allows them to follow the rule.

Screen Shot 2018-02-24 at 6.32.24 PM.png

Now I've found the nonce for block #2 which is 145

Screen Shot 2018-02-24 at 6.33.18 PM.png

Now I've found the nonce for block #3 which is 101148

Screen Shot 2018-02-24 at 6.35.24 PM.png

I've changed the data on block #2 from empty to "upvote if you want more~". Notice that block #1 is still green/following the rule and unaffected. but block #3 has also turned red because it's hash depends on the hash of block #2. Since I changed the data in block #2, the previous nonce for block #2 no longer works/follows the rule. You'd need to calculate the new nonce given the data change.

In conclusion: blockchain is secure because if you change any middle block's data, you'd cause every subsequent block to be invalidated. This is how we can be sure everything is tamper-proof just by verifying the latest block.

I will be making a video explaining the next few tabs of "distributed, token and coinbase" Please stay tuned.

-Dan


Now that you've read the post, what did you think? I want to do my part to fight spam and promote insightful comments/discussions. I read every comment and value your feedback. Write something and I will pick the most insightful comment to delegate 100 Steem Power to you for a week.

You may earn curation awards using my STEEM manually OR use a service like SmartSteem to vote automatically for you. Just click "sell your votes" button, log-in/authorize and you are set~

Here is last post's winner:Screen Shot 2018-02-24 at 6.44.36 PM.png

Sort:  
There are 2 pages
Pages

I find your post quite educative and at the same time easy enough to understand for a lay person. Thanks for explaining the meaning of a hash and a nonce, and the role they have in the block hashing process.

Do you know of a good site that explains how POS hashing works?

Thank you.

100% agree, this is a very educational post with explanations available to anyone a simple and entertaining way to explain the BLOCKCHAINS

Many of you may have heard about Proof of Stake, specifically that Ethereum is moving toward a hybrid model using Proof of Stake and Proof of Work.

But of course, the same lot of you probably asked, “What the heck is Proof of Stake really?” Let’s dive into that.

There are, currently, two main Blockchain systems that the larger crypto-networks utilize:

Proof of Work
Proof of Stake
Both of these Blockchain systems govern how transactions are verified on the decentralized network.
@ebargains Try this link for more information:
https://medium.com/@robertgreenfieldiv/explaining-proof-of-stake-f1eae6feb26f
https://talk.peercoin.net/t/pos-how-does-it-really-work-long-and-maybe-confusing-thread-incoming/648
https://bitcoin.stackexchange.com/questions/52321/how-is-a-proof-of-stake-block-mined-at-the-block-level-and-how-does-it-accompli
https://steemit.com/bitcoin/@mooncryption/guide-proof-of-work-pow-vs-proof-of-stake-pos-vs-delegated-proof-of-stake-dpos
I hope you find that information with these links are very interesting
regards

Thanks!

I like your profile pic....

Your Wellcome

Very informative as well! Thanks!

@mech820I always like to collaborate and help others

different POS have different mechanisms. are you looking for dPOS like steem?

How do you get 19$ for comments and I can even get a penny for upvotes? I have only made 2 cents so far commenting and upvoting plus investing in 240$ of SP . Still trying to figure out how I can make money. still not happening.

Its not just about making money here. Its about contibuting to the free sorce of information and contact. Earning anything would be a bonus.

Hashing and data structures.

A data structure is a specialized way of storing data. There are two data structure properties that are critical if you want to understand how a blockchain works. They are pointers

Pointers are variables in programming which stores the address of another variable. Usually normal variables in any programming language stores data.

Eg. int a = 10, means that there is a variable “a” which stores integer values. In this case, it is storing an integer value which is 10. This is a normal variable.

Pointers, however, instead of storing values will store addresses of other variables. Which is why they are called pointers, because they are literally pointing towards the location of other variables.

Anda membuat posting yang menakjubkan! Upvoted dari @antobrampu. Aku mengikutimu. Tolong ikuti saya dan upvote atau beri komentar di pos saya. Aku akan melakukan hal yang sama padamu. Bersama-sama kita tumbuh!

It was always very difficult for me to understand the meaning of all these widely used terms. But you simplified it by so easily demonstrating their functionality and association with the actual data input and screenshots, that it became crystal clear to grasp for me now.

One thing I wanna know: Does Nonce need to be calculated by hit and trial or is there some rule to find it? Is it this calculation of "Nonce", where all PoW computing (or hashing) power gets consumed?

good question. finding the nonce is completely random. and yes, the more hash rate you have i.e. mining hardware, the more likely you will find the nonce and will consume more power.

Are you a self learner? What is the resources are you using currently?

Anda membuat posting yang menakjubkan! Upvoted dari @antobrampu. Aku mengikutimu. Tolong ikuti saya dan upvote atau beri komentar di pos saya. Aku akan melakukan hal yang sama padamu. Bersama-sama kita tumbuh!

Thanks for giving new information to all us.

Epic post Thanks for sharing this information

Oh, that's really nice. Being a non-tech person, I never understood those concepts.

But you've actually made it so easy. But to get hands on experience, I should use the mentioned website.

Thanks for the resource and making it this simple.

You got a 29.08% upvote from @postpromoter courtesy of @ddangerwu!

Want to promote your posts too? Check out the Steem Bot Tracker website for more info. If you would like to support the development of @postpromoter and the bot tracker please vote for @yabapmatt for witness!

You made an amazing post ! Upvoted from @antobrampu. I followed you. Please Follow me and upvote or give a comment on my post. I will do the same to you. Together we grow !

One hour a day for forty days?

I don't want to discourage you, but the total of 40 hours is just not enough of time to do it. I would double it at least. You wouldn't regret doing 2hr/day, I can promise you that.

Just look what awaits you after your 40 days preparation:

Finite Fields
Elliptic Curves
Elliptic Curve Cryptography
Signing/Verifying Messages
Parsing Transactions
Signing Transactions
Creating Transactions
Script parsing and processing
Address construction/Private Key WIF Format Construction
Parsing Blocks
Validating Proof-of-Work
Difficulty Calculations
Merkle Tree Construction
Merkle Proofs
Network Message Parsing
Segwit

Those are some advanced topics that will make your head spin. Don't sabotage yourself with 1hr/day of preparation.

Anyhow, I'll follow your progress. Good luck!

hi you view my account- and help me steemit account

Wow! Remarkable post and teaching. You hit square into my ignorance and shed light so I can be smarter when talking about blockchains and their incredible potential.

I've been investing in cryptos and their blockchains for more than one year. I know what blockchain is, but not to the detail I just learned from your post.

The businesses being built currently on each of their version of blockchain are like going back to the early 1990's when few actually knew anything at all about the internet, what it was and most importantly, what world changing opportunities it would provide. We have a clean canvas and we can paint or repaint anything we want. Blockchain businesses and opportunities are only limited to the creativity of entrepreneurs. I will proclaim that creativity is nearly infinite. So let the world changing opportunities begin!

From a financial standpoint, blockchain has the ability to rewrite history by upsetting financial hierarchy. Anyone willing to learn and put small bets on many crypto coins can end up with life changing finial results.

We need to take the current opportunity in front of us and jump in head first. Learn everything we can about blockchain technology, push away the ignorance being propagated by media and governments and start putting small bets on many crypto coins. Focus on those that are solving big problems, those that are disrupting current dominant businesses and those with the team behind them to actually pull it off and be around in 5 years.

Resteeming!

Good lesson
Wish you always luck brotha...

Upvote and follow at @bujang88
Let me success like all of you brooo...
Thx

I like this post and I flw u :) plz flw me .

Great post :) Thanks for sharing

It's so informative 👍👍

This is good information.

great post
thanks for you sharing
DQmTTrv5dtJTS9RaYBuVCok79xJbED97RLYt354UcSDCgQj_640x480.jpeg

Difficult to understand what you posting

I try to understand things even if I'm not a coder by profession. So when I started investing in crypto I read a few articles around it. Found this one useful:
https://hackernoon.com/learn-blockchains-by-building-one-117428612f46

Not that I understood it completely, but it helped to get my head around it.

Tend to use alot of scripted macros in work, and dabbled in SQL, and Python, but its not the same thing.

investing in crypto is profitable now a days?

Forget the buy low sell high mentality. Short sighted views, and fear is why people are losing money right now by getting into something with known volatility and then making bad calls.

Unless you know what you are doing reading trends, and even then with a degree of luck this is still risky. This ain't the stock market, the same rules don't apply.

I've been investing various amounts since Oct of last year. It's had its ups and downs, but coming out with 78% profit on initial investment beats any traditional fund hands down(It's been as high as 400%, but that's the nature of the beast).

I've been in stocks for about ten years, and still invest in both.

Find projects that are going to be around in 5-10 years time, and are already changing the cryptocurrency landscape. Education and knowledge is what's key to doing well. Forget reading graphs. If your confident in what you invest in, you won't ever make panicked decisions.

As for the current slump, the year is only just getting started.

Yes, you can still buy cryptos low, and sell higher, new projects are coming out frequently with great potential. I think we are scratching the surface of what the Crypto market will become.

Great post ^_^

I learn something from your post, thanks, friend.

U5dr5A3TsfXpzGGfznbVZa7G795jEpk.gif

Okay... this was funny! 😅😂😂

from modern era of techno and crypto we just remeber its bright future from all past mistakes and new yeah future mistakes. Get well soon i say again for btc. @ddangerwu u know what i mean, as i follow u from past time.

this article has useful information and is worth reading.

thank you very much for the input you give. this is very useful for us all

Thanks for posting the sight! I will definitely play with this over the weekend.

#blockchain #cryptogator #cryptocurrency

Been to this site before. It really helps to solidify what you read in plain textual lines about the hashing mechanism.
By the way, I have been through your earlier post and have started learning bitcoin blockchain along with it. I have understood Finite Fields but I am kind of juggling with Elliptic Curves + Finite Fields. Do you have any useful links to get hold of the topic?

watch some of jimmy song's older videos, he explains those concepts

Good post

I would like to add the point that it's easy to find the SHA256 hash but it's very difficult / impossible to find the original string from the hash. Through this mechanism and the proof of work algorithm makes Blockchain a Blockchain. They are secure cyptographically, Not everyone can add a block (like Git) and the blocks are immutable because if you change a block, it would create a new branch and you would need to mine faster than all the miners on earth and keep on increasing the length of the branch to stop it from getting rejected which is impossible. No one has such computing power.

yep, which is why pow is really valuable

Read your post and you give alot information about the hashing power, Blocks and blockchain, but i am a newby like most people in this. I'm not sure what the relationship between those three is. You might want to point that out for the "normal" people among us.

Anda membuat posting yang menakjubkan! Upvoted dari @antobrampu. Aku mengikutimu. Tolong ikuti saya dan upvote atau beri komentar di pos saya. Aku akan melakukan hal yang sama padamu. Bersama-sama kita tumbuh!

Wow really interesting thank u @ddangerwu for sharing this is a post that must be seen.
I will resteem it 👍🏼

Gracias @ ddangerwu, realmente es una manera de explicar las cadenas y hash de forma entendible para personas que no somo programadores.
Me ha servido mucho

It is useful info. thanks

This is very enlightening... Thanks for taking out time to share

Gracias por excelente Post, estoy incursionando en el mundo de las criptomonedas y esta información es bastante interesante, gracias por compartir. Y feliz de pertenecer a esta comunidad de Steemit

Pochopil jsem princip ,ale to nestačí.

thanks for valuable information.......

Don't forget the good old genesis block, the first block of the blockchain that's hand made solely by the developers starting the blockchain ;) That's often overlooked by far too many people but is important to get one started.

👍👍👍👍

Great time to join in at blockchain focused programming overall and get familiar with it if You feel like cryptorrencies are here to stay.

Guys, help us to succeed on Binance and get a reward of 200 #WPR if listed! Vote: https://www.binance.com/vote.html
Sign up for #bounty here: https://goo.gl/JbF3uY & fill in “Bounty report” when voted: https://goo.gl/SWDNyw
Let's win this!
DWtwgruW0AEF2MX.jpg

Thank you very much for the information that I think is very helpful to people like me who really like things like that .... !!!
https://steemit.com/life/@akhy/look-at-this-valiant-act-this-monkey--do-2018-02-24-14-10-11

so informative post @ddangerwu thank you dear

Wow.... what fully filled and informative post. just great...... keep continue @ddangerwu

I am a trader and signal provide
Join telegram group for for info:-
❣️ BITTEX ❣️
https://t.me/cryptowind_trading_signals

💰BINANCE💰
https://t.me/cryptosaurus_signals

There are 2 pages
Pages