Hi all,
This is part 3 of my series on the basics of blockchain/bitcoin. Start with part 1: https://steemit.com/bitcoin/@ddangerwu/learn-by-interacting-with-hash-blocks-and-blockchain-get-100sp-delegated-for-insightful-comments
This post will focus on public vs private keys and its function in bitcoin transactions. Again, I highly recommend that you play around with the parameters discussed in the post by going to https://Anders.com/blockchain/public-private-keys/keys.html Disclaimer: This website was made by Anders Brownworth and you should check him out at https://anders.com.
So last post ended with our understanding that ledgers on the blockchain because there are many transactions of A sending X amount to B. But what is stopping people from just adding/changing a transaction and spending all of someone else money? Or, we can spend our money to multiple people, creating the problem known as "double-spend".
Let me introduce to you the idea of private and public key pair. Let's assume that you can make up some string of numbers and derive another string of data similar to how you could make up some data and derive some hash as we learned in Part 1. You can think of the public key as the representation of your private key, open for everyone to see. As you can see from the above picture, the public key for the private key "1" is "0479..."
What is very important to understand here is that you can verify the keys match but cannot go backwards and derive a private key with your public key. Imagine that you have a math problem of 2+x=4. You figure out by doing the computation that the answer x=2. You can very easily verify that the answer and the problem match but if only given x=2, you have a infinitesimally small chance of guessing the problem is "2+x=4". This concept is called asymmetrical encryption and it is at the heart of making bitcoin work. My analogy dumbs down the concept a lot and you should read about it further here: https://en.wikipedia.org/wiki/P_versus_NP_problem
For now, let's make up a random private key "1030..." and derive its public key "041b..."
Now, with our private key, we derive again or sign the data "Hello again Steemit! Remember to follow, upvote and resteem if you found this post helpful!" This gives us the signature "3045..."
If we input the same info again, we can check or verify that the data, signature and private key match. This is similar to that given x=2, we can verify the problem 2+x=4 matches with the answer.
Notice that if I change any given components, in the above picture I changed the private key to 1234, then the transaction does not verify.
For a real transaction, we have the data be a structured message with peoples' names replaced by public keys. Similarly, we can verify the transaction given the public keys and the signature of the sender, which was derived from the private key of the sender.
Lastly, let’s put everything together into the blockchain distributed ledger (see part 2 if you don’t understand). I’ve changed the first transaction that I have in block #2 from 10 to 1000, giving myself more money. This causes the block to be invalid because that transaction is invalid.
Notice that even if I re-mined block #2 to make the hash “follow the rule”, the transaction is still invalid because the signature don’t match. This is how can throw the transaction back into the mem-pool and still have a valid block.
Important understanding: These concepts shows that one of the biggest reasons that bitcoin has value is that you can get a new address or public key by just making up a new private key. This allows you to send money peer to peer, cutting out any centralized permission. For details, see my video: https://steemit.com/bitcoin/@ddangerwu/the-reason-that-bitcoin-has-value-is-because-get-100sp-delegated-to-you-by-commenting
-Dan Wu
—————
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.
Here is last post's winner:
my response:
I want a B sticker for my keyboard!!
Really great article!!
Probably the most important part to many is fully understanding this process.
This series has been very insightful :-)
hey there
click on my link to earn 2000 per month free
https://steemit.com/money/@wolf92/easy-job-from-home-earn-at-least-2000-dollers-per-month
vote and tell me if you like it
This concept is what drew me to cryptos, and what I perceive as their value. Yet few people even think about it or understand it. When I'm asked what bitcoin is, I typically answer it's a way of paying people without having to give them your account number and liken it to Visa... where they try to increase security by adding a secret pin number to the back which you then have to give to everyone that you make a purchase from. Bitcoin has created a secret pin that never has to be shared yet can be verified. It's an extremely difficult thing to accomplish and that in of itself is immensely valuable.
Is it theoretically possible for a seed generator to generate the same seed twice? Or do they only create so far not existing wallets?
That would depend on the workings of the seed generator if it's gathering enough entropy then no!
Very informative post. You explaining that from our public key we can't recover our private key because of unlimited number of probalities. All public and private key coded with crytographic code.But the Quantum computing which is very very fast and calculate unlimited number of probalities within a second . So by use of quantum computing one can got your private key. That's why latest technology used photon/ light for sending message in internate communication which is far better than crytographic encryption and unhackable if anyone want to hack it will detectable and the message is lost.
Thanks for sharing your valuable information about blockchain.
I was just about to say the same thing, and I saw you’re comment. I was not aware that quantum computers could compromise private keys though. If that’s a fact, there has to be some kind of way to write a script to defend against that.
There has to be a way. Say you have a Nano Ledger Wallet for example, wouldnt those private keys be just as vulnerable? Either way you’re post was informative. Thanks.
The maths analogy is a bit complicated, but I think that the idea of mining is probably still a little absurd in my mind even though I've been mining since December. The information about hash power is a discussion that is rather exclusive and underground which makes it complicated to understand. The idea behind computing power having real value in industry is fresh and perhaps it needs to be introduced to the syllabus in schools. Shoutout for the gangster post @ddangerwu. This one has dangerous cashflow vested..
Wonderful and beautiful article
If it wasn't for life, we wouldn't have the Blockchain.
I am thankful for life.
I am thankful for the Blockchain 👍✨
Get Free 100 Uniworth Coins (UNIX) to Visit http://www.uniworthcoin.com
This is a scam! Its a phishing scam! Hope you get this post removed!
Please help me
https://steemit.com/promo-steem/@munawire/steemauto-dan-sndbox-not-responsible
I am send wrong
Thankyou
its really working. if its working then its one of the best deal. Thanks
go bitcoin
it is hard for me to understand what you said .
Yeah blockchain technology is a mind-fook.
You got a 95.24% upvote from @inciter courtesy of @ddangerwu!
Congratulations, your post received 77.10% up vote form @spydo courtesy of @ddangerwu! I hope, my gratitude will help you getting more visibility.
You can also earn by making delegation. Click here to delegate to @spydo and earn 95% daily reward payout! Follow this link to know more about delegation benefits.
Good post
This is quite an interesting and educative post. I will have to follow you in other to increase on my small knowledge of the intricacies of Bitcoin and Co. Thanks a lot.
A wonderful and beautiful article continued, worthy of follow-up and support what you publish very beautiful
You got a 23.23% 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!
This is a significant fascinating and educative post. I should tail you in other to increment on my little information of the complexities of Bitcoin. Great post
This post has received a 69.38% upvote from thanks to: @ddangerwu.
For more information, click here!!!!
Try the new Minnowhelper Bots for more information here
Help support @minnowhelper and the bot tracker by voting for @yabapmatt for Steem witness! To vote, click the button below or go to https://steemit.com/~witnesses and find @yabapmatt in the list and click the upvote icon. Thank you.
Voting for @yabapmatt
upvote and follow @rikineng
i am a newcomer in steemit
thanks for post
Generic comments could be mistaken for spam.
Tips to avoid being flagged
Thank You! ⚜
wonderful post❤️
Great in-depth explanation of key pairs. Probably a bit more than the average Bitcoin user is interested in, but I personally think it's important to have a basic understanding of how Bitcoin works on a technical level.
Also want to add that you can also sign messages to give proof of ownership of a private key over a certain address. It's a function in many wallets.
you know.....bitcoin is best.....it is a golden coin.... it is so nice post...
thanks for sharing! i will start following your exciting posts! Checkout my posts as well
Wow... honestly I’m just coming across you blog but I must say, what I saw kinda look like magic to me. All the pages you used for illustration and the calculations are just exceptional. I Love that I learn and value is being added to me everyday on steemit. I’m a user of smartmarket/smartsteem and I sell upvotes sometimes. Smartmarket I recommend to anyone who’s willing to sell upvote and earn good rewards on it . I look forward to more of your post. FYI Value has been added to one soul which is me. Merci
I do not understand how I can get curation rewards when you vote automatically for me. Please explain.
Well this is amazing I really feel good to see this
Is it theoretically possible for a seed generator to generate the same seed twice? Or do they only create so far not existing wallets?
It's Awesome, Even seeing this process every day, I did not know the difference between them. thanks for your post regards
Nice your post
Nice post brother
I am very much delighted after reading your post. Very well detailed and described. Kudos to you. Your post is inspiration for the new comers like me and many others on steemit platform. Once again thanks for your efforts and hardwork.
Congratulations @ddangerwu, this post is the most rewarded post (based on pending payouts) in the last 12 hours written by a Superuser account holder (accounts that hold between 1 and 10 Mega Vests). The total number of posts by Superuser account holders during this period was 1706 and the total pending payments to posts in this category was $13943.85. To see the full list of highest paid posts across all accounts categories, click here.
If you do not wish to receive these messages in future, please reply stop to this comment.
Upvoted plz do the same for me
Congratulations, your post received one of the top 10 most powerful upvotes in the last 12 hours. You received an upvote from @upme valued at 140.06 SBD, based on the pending payout at the time the data was extracted.
If you do not wish to receive these messages in future, reply with the word "stop".
This is awesome! A great way of explaining something complicated to those of us less tech savvy, thank you! Ill be following!
HELLO, THANK YOU FOR THIS POST.
thank you for share
any of you guys are a good way of storing/verifying private keys without having to save them down or write them by hand. That would be truly awesome
consider getting a ledger nano s - Safest way to store your coins (ledger on taobao) - https://tinyurl.com/ycfth9ar
(ledger on official site) - https://tinyurl.com/y7onrx7v
Thanks I already have a trezor so have been using that amongst MEW and some other exchanges. Still do take the precaution to store my seed in at least 2 different places as a hard copy just in case
Hi Dan Wu. Even though I did not understand the words that you are using, maybe you are using a different or unreliable translation, I understand the thought of the whole article. This is very informative, considering the fees that are being used in every single transaction. I was very interested when I saw the title of your post, therefore I went and read the article and all the previous article. This specific article makes me more interested. This makes everyone informed of the concept known as double spending, and providing knowledge about public and private key pair. Continue to provide knowledge about the whole platform and inspire others. You are doing great.
Hey man great post!
Most of all since it shows your vast knowledge on this so I got encouraged to ask you this question I have:
How does the lightning nodes routing payment technology works? meaning, I heard a lot that the payment channels are like a smart contract between 2 bitcoin private keys, so if that's the case what's underneath the technology of the nodes that enables payment to go through them to find the wallet that is receiving the payment?
It's a 2 part question since what I'm trying to find out is if big companies will be able to develop a bandwidth shaping technology as they have done so in the case of ISP with the internet to limit the bandwidth of the lightning network nodes and hence hijack bitcoin and manipulate it as ISP are doing with the internet ?
here is my post about lightning https://steemit.com/bitcoin/@ddangerwu/understanding-lightning-in-simple-terms-and-what-it-means-for-you-get-100sp-delegated-to-you
Ok cool, I'm going to check that.
Edit: I just watch it and you don't explain my question, beg your pardon if you find my to demanding, but just to let you know that video doesn't explain how the technology itself of routing payment through LN works.
Thanks for your efforts in explaining this to the newbies anyways man, I'm on a different level of knowing this, again excuse me if I sound arrogant, it is what it is but I know you know more than this, the one that can explain in simple terms see a big picture.
So, I'm going to take a look at this document, is from 2016 but probably has the answer I'm looking for, if you have time you can read it too and probably make a post about it summarizing your thoughts on it:
http://bitfury.com/content/5-white-papers-research/whitepaper_flare_an_approach_to_routing_in_lightning_network_7_7_2016.pdf
Now i understand the keys a bit.
Nice post
This article was very insightful to me as a newbie / minnow. I don't have anything insightful to offer, but it was a very valuable read. Resteemed, followed and upvoted.