The Blockchain & Bitcoin - Computerphile
Vložit
- čas přidán 23. 03. 2017
- Blockchain is the underlying technology behind cryptocurrencies bringing together Merkle trees, Hashing & Distributed Architecture. Christopher Ellis explains.
Note1 - At 6:46 when Chris is drawing the Merkle Tree, C would actually be duplicated and hashed with itself not with B. So you would get H(C - C) instead of H(B - C).
Note2 - At minute 17, Christopher mentioned the mining reward halving at 21,000 bitcoins but meant 210,000 blocks.
Public Key Encryption: • Public Key Cryptograph...
The Perfect Code: • The Perfect Code - Com...
/ computerphile
/ computer_phile
This video was filmed and edited by Sean Riley.
Computer Science at the University of Nottingham: bit.ly/nottscomputer
Computerphile is a sister project to Brady Haran's Numberphile. More at www.bradyharan.com
This is the best block chain 101 video I've seen. Most often people explaining it don't sound like they understand what they're endeavoring to describe.
Ah yes. Pretty sure those are investors and speculators mate. Ask them about blockchain and they'll goes: 'Sorry I have a meeting'
Best, most technically understandable explanation of the blockchain that I have ever heard.
ikr
Coincurrrr
I think 3blue1brown may have just made a better one.
Virtue signalling.
@@175griffin More graphics I agree. This one explains better the hashing, Merkal tree and what miners are actually responsible for. Both videos together are unbeatable. I finally get it. Like when trying to under RSA encryption scheme you just keep researching until you finally get it. The information age I love it.
I salute a fellow stereotypical nerd
i salute someone who doesn't like pi
Tau is at about 2 times more awesome than pi.
Finally numerical value doesn't pose any restrictions on coolness (for mathematical constants).
Remarks: Tau=2Pi=circumference/radius Pi=circumference/diameter radius=1/2diameter.
This dude is a *baller*.
No, he's an engineer
This guy is brilliant. Finally someone who explained so clear with good enough knowledge but accessible for anyone who is not in the world of cryptocurrency and blockchain technologies.
It's interesting that the people criticising this guy's pronunciation can't post simple comment using correct spelling and grammar.
Great video. I learned more in five minutes of this description than in a couple of hours worth of other videos.
I feel this would have been easier to understand if they had gone over version control system before this
I'm not sure how, exactly. True, some version control systems (e.g. Git, Mercurial, Bazaar) use hashes to identify and authenticate their commits, among other things, but I think the same explanation of "hashing is the process of mapping an input to a unique and immutable output code" could've been used there too. They're just two independent concepts that happen to rely on the same underlying and independent technology of crypto-hashes.
ray They are not independent concept. a block chain is just a version control with prof of work. Every time someone write in block chain is like making a commit in git.
git commits include the hash for its parent commits. That's a has chain.
The only difference with the bitcoin ledger is that it's hard to make blocks.
He looks so nervous I want to give him a hug. Perfectly explained though
Yeah, talk about that, this triggers a protection mechanism deep down in me somehow, like a duck family crossing a dangerous street. He doesn't have to be nervous though, apart from the somewhat rare way of pronouncing sharp sounds ,). No, really, he seems to be quite able to explain things; definately one of the better... umm... 'explain-guys' on computerphile!
It's really hard to explain something you have understood on a very deep layer on a much more common layer. You have to double-check if your listener can still follow you and jet your simplification does not lead to miss information. That's especially hard in math and IT wheres nothing really in your hands that can be checked against your knowledge.
This video actually explained it to me. thank you. many podcasts and blogs have failed, but the whole public private key explanation made it click! thanks
Thanks for /finally/ taking the time to make a in-depth video about Bitcoin/Blockchain on Computerphile!
Each block is 12.5 Bitcoins right now, not 6.
His Divine Shadow I thought bitcoins were worth like $100... are miners really making $1250 per block, or did the value go down or what
time traveler confirmed
kiefac They make $12,000 for every block
It is almost impossible to find a block on your own though.
A bitcoin is almost $1000 right now.
His shirt is killing the antialias when you play it in a small window
Out of all the vague explanations about blockchains and cryptocurrencies available out there.. this is the best I have seen and most technically explained, and in a very short time.
The block reward is halved every 210,000 blocks (about 4 years), not every 21,000 bitcoins.
nyx211 check description ;)
heh. whoops.
if you did it by bitcoins it would be nonconvergent
11:23 - Basically, if you mine a block but it ends up on the shorter chain, then you lose your block reward!
nyx of course ... orphaned blocks are just part of the function, and a known unknown.
Omg, you have no idea how useful this video is and how perfectly timed it is. I am applying for an apprenticeship at IBM and I researched Blockchain as it is one of their big things at the moment. This is exactly what I needed to learn further about it. THANK YOU!
Yeah, they seem to have many open positions in that field atm.
The Hyperledger Intership program?
Nice try, IBM
Daniel Hammond IBM is involved with bitcoin?
Not exactly Bitcoin, but blockchain technology AFAIK.
OMG hadn't seen dot matrix paper in more than 15 years, nearly cried :)
I last seen in 2013
for anyone interesed in learning more about bitcoin the princeton course available in youtube is very well done
I already understood the components of this, but a clear brain-to-mouth presentation made it make sense (fully-ish). Thanks.
Can someone tell me, in video description that mention about Note1, why the C is hashing to itself, not with B?
I have seen multiple simplified explanations of bit coins, the block chain and, mining and never understood it. Thank you Computerphile!
Guys, why are you so mean? This man tells interesting stuff, he is definitely cool guy, why do you care so much about how he pronounces "s"?
This is the beauty of CZcams. TV will only hire robots as presenters... and they will lie about bitcoin. This man has got the knowledge and he can just put it out there. BTW, I found his delivery to be clear.
because many funny comrade
really pathetic comment
I always thought that 'nonce value' meant the number of people in the Tory cabinet. Thanks for clearing that up!
We would be friends irl
so many questions...who decides or sets the policy over how long the miners should take on average to decrypt the key? dont these people hold a lot of power over the bitcoin market? also, what if there arent enough miners around? then the transactions would take ages to validate, unless the keys are made easier to decrypt (which would mean constant adjustment of their difficulties?)?
Is it necessarily the longest chain that wins? Couldn't I just create a longer chain in isolation on a reduced difficulty and then broadcast that chain to the network?
This is the hardest Computerphile video to watch while eating cereal
L Ramsden literally doing that right now lol
You mean shereal?
thatsh what he shaid!
I am eating cereal and watching this video as well
Maybe I'm just spoiled by listening to people who're comfortable in front of a mic. Helpful information shouldn't be cut off by our aesthetic standards
This is by far the best explanation of the system that I have heard yet. The ending of the video was rather sobering however. An hour or more to have a verified transaction is way too long for much of the world's trading, especially when we still have to pay a fee for the transaction.
Great video! Keep them coming! Just please pay attention: When looking for the merkle root C is duplicated and hashed with itself to get hash(C,C). It won't be hashed together with B!
12:30 The txs on a fork chain are not "out of luck" or illegitimate(the block is orphaned or illegitimate the txs aren't), they simply go back into the mempool and get added to the next block on the valid chain. The end user isn't effected and he will get confirmations like normal.
More on this topic please! And please talk about other implementations of the blockchain too. But Bitcoin is inherently interesting ofc.
Bitcoin is going through a turbulent time right now as miners can't currently achieve consensus on how Bitcoin should scale to increase .capacity for more transaction volume.
There is always tons of Drama in bitcoin and will continue to be for some time period.... yes
BU
Doesn't this mean that the block-chain will become (close to) "infinitely" large eventually?
I mean (eventually) 21 million bitcoins times whatever huge amount of transactions each day equals an enormously large block-chain?
Even though it's only text, eventually not even NSA + GOOGLES + whatever, size of server is not going to be big enough to hold all this text?
There are different types of full nodes, pruned full nodes are less than 5GB and can still 100 Validate all txs, Archival full nodes do indeed store the full blockchain ~105GB in size for all txs going back to 2009 , in the future we may end up sharding these archival nodes but as of right now they aren't too big.
there are other blockchains besides bitcoin. One of the solutions to scaling is sharding the network.
Still a little confused about the nonce hash. Is the purpose simply to increase the computing difficulty of the blockchain creation?
Yes, in order to keep the block generation time at ~10 min.
Just what skynet needs. First, a distributed internet now a distributed currency.
Great video. Hope to see you in more Computerphile videos!
Can you make a new video explaining SegWit (and maybe the Lightning Network)?
So how does the value in USD come about?
This guys is very good at explaining the system Good job!
I like to use blockchain and this video was cool but I am now more confused about how the system works
Great video, would like to see more detail in the future about the network side of things behind this, like keeping track of transactions which were lost in a forked chain etc.
In a forked chain, both forks probably have all of the same transactions on them long before either side is dropped.
This is a bit focused on crypto coins like Bitcoin used as cash. I recommend discussing blockchain tech for distributed computing, for instance, Ethereum.
I'm glad you guys managed to talk about "the blockchain" in 2017 by mentioning only bitcoin and leaving out ponzi schemes fraudulent securities and vaporware projects. However, despite the superficial overview about mining, one cannot talk about bitcoin and immutability without a more in-depth explanation about proof-of-work and how the process of burning energy is key to achieve that immutability and secure the network.
I totally love that you write on a perforated computer paper.
Holy moly, I have watched many explanations on blockchain and this is the first one that made me go "Aha!". Thank you!
wow. in depth and great explanation. Thank you!
At that point in the future when miners are only rewarded for transaction fees, can miners decide to not incorporate transactions from the "ether" into their block if the transaction fee is too low or zero? Will that mean that, essentially, zero-fee transactions may have to wait longer until they are eventually confirmed into a block by a miner who does accept free transactions?
"can miners decide to not incorporate transactions from the "ether" into their block if the transaction fee is too low or zero?"
This already is occurring. Without a tx fee the tx will likely never get included in a block. Offchain txs dont need fees though.
Zero fee txs will only exist for payment channels and offchain.
Why is the puzzle where the miner varies the nonce value to eventually meet the hash criteria made to be so difficult?
Is it to provide enough delay time for some process to prevent the same transaction getting grouped into two different blocks or something?
Or just to slow down the mining process? I don't get it
The idea is to target 1 block roughly every 10 mins - gives enough time to ensure the block is propagated the world over and to give ample time to all miners to have a chance to fairly solve the next one. If blocks are being made faster than every 10 mins (on average), the difficulty is algorithmically increased (and lowered if blocks are being made too slowly).
Best explanation I've seen thus far. Fantastic video. -Cheers
Nice description of proof-of-work.
i really like this subject, but i just realized i know very little about it...
Still mining 12.5btc per block till 2020. Much love to all involved in doing this vids!
it was a nice talk, from which i learned something. but it could use some more emphasis on practical details of:
- how the concepts tie together
- maybe just a tiny bit more about how public and private keys are normally used
- could also mention that the sender chooses the transaction fee
Excellent explanation of block chain. Thanks a lot!
brilliant video and well explained.
Great work !
This is a MUCH better explanation of blockchain technology than his video on Smart Contracts.
i watched the Video a 2nd time, the first time i was really impressed of such a cute pronouncing. But then i want to really know something about the Blockchain. And wow! by far the best technical Explanation of Blockchain here on CZcams.
Could be a bit more Graphical, but it is to 95% top! :D
Nice work and keep up, i saw you made already an 2nd Video. Nice! i respect you a lot.
very smart in explaining the process I loved it
So the actual bitcoins are actually just the result of the transactions? Not even an actual binary number? I guess the transactions are signed with the iniatiator's private key. Is that correct?
The bitcoins are merely the unspent outputs left in an address that originated originally from a coinbase mined. The private key allow you to transact or sign those outputs
Question: Who makes the criteria for the block puzzles? (Or how are they generated?)
They are generated based on parameters of the previous block that was mined.
SAL OK thanks mate.
Great video!
How about a video on ethereum now?
Very useful and detailed video!
I think his speech impediment makes him better at explaining ideas. He is probably focused less on using big words to appear brilliant and just wants to help you understand what he’s talking about. It’s also a sign that he truly understands what he’s talking about.
I didn't really notice a speech impediment. I *DID* notice he is really, really knowledgeable.
Great explanation! Thank you. :)
Point of clarification in Bitcoin. It isn't the longest chain that defines bitcoin but the "Most worked VALID chain" that defines it. Bitcoin testnet and many alts have longer chains. Economic nodes define what is valid or not through consensus and the most worked is the combination of the cumulative weight on a chain of PoW (Proof of work)
will have a watch one more time cause it's high level for me! Thanks!
really well done!
at 3:16 this states that a bitcoin transaction is all or nothing. if I have 5 bitcoins and want to spend one I transfer 5 out, 1 to the person I am paying and 4 back to myself
at 13:30 it states that transactions aren't really final until the are on the block chain and that takes about an hour.
does this mean that if I spend some bitcoin I need to wait an hour before I can spend any more bitcoin, that would be really annoying, I regularly make 3-4 transactions within an hour on my credit card.
Bitcoin txs show up instantly in wallets, and payment processors approve them instantly as well so there is no wait when spending . Waiting 1 hour for 6 block confirmations is just good advice for those wanting to be careful and spending 100k and up
Transactions are visible immediately, but being on a block prevents double spending. What you describe wouldn't be considered double spending though, so you should have no problem doing that.
There have been estimations about total power consumption of crypto-currency servers, miners, exchanges and cracking/manipulation attempts. The total electrical energy used far exceeds the net worth of, say, Bitcoin. Thoughts?
thanks for this great explanation.
Its like a database to which you can only insert and read... you cannot tamper with existing records.
It's more like the transaction log of a database.
There's no record of the current balance of each account but you can compute it from all the transactions in and out of the account you're looking at.
Append and read, and appending has to be done according to the proof-of-work algorithm.
So in a sense, the investments of real world currencies into this dedicated network infrastructure creates and supports the value of the digital currency, until those tx fees are supporting it. But won't another online currency be able to promise more growth and tease away capacity from BC? Fees might collapse a currency if they're too high, while not high enough to compete with mining rewards in (BC de novo).
I was hoping for information about the split. Good intro video though!
kripkee from big bang is here boys and girls. very well explained
Brilliant. I think I finally get (some of) it. Thanks.
After many years I finally understand Bitcoin. Kinda. Thank you so much! :)
Wanna see my block chain?
Panties hit the floor
Awesome video! Thanks!
Man this video solved my puzzle to understand blockchain you deserve a heart coin ❤.
Although they did not use the term blockchain, there existed software that proceeded Bitcoin that uses blockchains. One prominent example is git, and it's not a coincidence that it's also a distributed decentralised system.
Gary van der Merwe Git uses a merkle tree. While very similar, I believe a blockchain is a merkle tree that also includes a consensus protocol.
put 720p damn... HD analysis too high
Very interesting video, very informative
So @Computerphile Core or Unlimited?
I know what a hashing algorithm is, I use them all the time to store passwords in databases. I know what public-private key cryptography is, I use it all the time over SSL. But I still do not understand how you put these together to come up with the Bitcoin system. To be honest, I still do not understand how the Bitcoin system works at all.
Marcos Beni
You download blockchain, use some serious computing power to find proof of work that satisfies current requirements, you take bunch of transactions, slap these things together and place it on top of last block - viola you have a new block. You need to sign it with your private key, and that's it - transaction fees and block reward are landing on address associated with your private key. Repeat forever
It might be beneficial for you to picture bitcoin as a large accounting ledger where the units (bitcoins) are tied to addresses. You need to own the corresponding private key (of your address) to sign transactions.
Best video on Blockchain technology on youtube !! Kudos to the explainer
I've been interested in and owned bitcoin for a while, but there's still one thing I don't understand. If the blockchain records every transaction ever made, won't it become arbitrarily large over time, until it becomes unmanageable for computers?
Yepp, that is an issue, and it's why we have a limit on transaction speed. We could just make blocks twice as fast or twice as large and thus have twice the transaction speeds, but that would mean it grows in size twice as fast.
As time passes, harddrive space increases, so hopefully it'll keep up. Or we'll find some awesome new way to deal with this problem.
Some cyptocurrencies (and even some bitcoin "tools"?) solve this by making it possible to not have all of the blockchain downloaded. This of course has the problem of making the currency less decentralized, and also "hiding" some of the information, even if you're obviously allowed to download the whole things.
brilliant,thank you!
amazing explanation, thank u very much
Thanks learnt a lot from this
Can you make a video on Segregated Witness? I'd really appreciate it.
goeiecool9999 I doubt it is a topic that needs a full video on it.
Long story short, bitcoin transactions reference previous transactions to prove ownership of bitcoin. They do this by including the hash of the previous transaction.
Now, the big thing Segwit fixes is something called transaction malleability. Basically, the current issue is that there are some parts of a bitcoin transaction that can be changed by anyone. These parts don’t really do anything too important, but they are not enforced by the signature for that transaction, so anyone can change them before they are committed into the blockchain. Normally this isn’t an issue, so long as they aren’t changing anything important in the transaction, which they can’t because it is protected by the signature. But these changes can change the hash of the entire transaction, which generally doesn’t matter, but it is annoying when it does.
This data is known as witness data. So what do we do? When taking the hash of the transaction, we ignore the witness data.
And that is what segwit is in a nutshell.
Now the big debate currently going on is that one of the few things where transaction malleability matters is in a thing called a Lightning Network, which is something that is a bit of a cheat to allow off the blockchain transactions. Opponents argue that this is bad and that blockchain transactions are more secure and have less issues, so we should instead allow bitcoin to do more onchain transactions. The other side says that the blockchain is already crowded so we don’t need to make it bigger.
Either way, Segwit is simple. The debate is complicated.
wait...so the proof of work is just getting the nonce right? well...what keeps you from just making a transaction and telling a miner the nonce for that block?...or just confirming your own transaction?
Nothing at all. you're free to do that if you like. It's just as difficult for you to guess a nonce that includes your transaction AND solves the puzzle, as it is for a miner. Since there are so many miners with so much computing power, the difficulty of the puzzle has been increased so much that chances of you guessing a nonce yourself are very slim. Why would you want to do this anyway, instead of just normal mining?
if you're thinking to make a transaction sending someone elses money to yourself, it's impossible for you to generate such a transaction without their private key.
well in this case you aren't guessing the nonce...you KNOW the nonce...because you made it...which would make it a lot faster than simply GUESSING it.
The nonce has to be the key that solves a hash puzzle. if you just make one up then it wont solve the puzzle. you can't make up the whole block ahead of time because the hash must also include the hash of the previous block, so the puzzle changes every 10 minutes.
Thanks for the explanation
I like to think of a Bitcoin wallet as owning the private key which corresponds to the transaction history on the distributed Bitcoin blockchain ledger of the coins held within it.
....since you own the transaction history of the coins you 'own', you can therefore alter the transaction state or 'spend' the coins within the wallet that you own the transaction history of.
5:50 when transactions are published in the network, it's existing out there in the ether. No pun intended.
This is a very brave man.
Regarding this fork thing... If one network is big enough and favors the blocks computed by their own miners, couldn't this be exploited to first create a huge chain before making that one public?
To outdo all other networks working on the blocks in question and "monopolize" the whole mining business?
Miners are incentivized to publish their blocks as quickly as possible to ensure they are accepted by the network. The longer they wait to publish their blocks, the higher the risk of all the other miners publishing their mined blocks (and take the reward for each block).
couldn't follow along from the block part :(
Just a quick comment on block halving. Current block reward is 12.5 and when it all started for BTC it was 50 BTC. Next year in April or May I think it will be half so 6.25 BTC then 3.125 BTC then 1.5625 BTC then 78.125 Million Satoshi then 39.062 Million Satoshi so on and so forth, that means it will take almost more than 7-10 decades to mine all coins. By then, I reckon it will evolve into something unknown.
Just what _is_ "the ether"?
WTF. I just started reading about this yesterday. I even visited blockchain.info! Right on time guys👍👍
Look up how the banks , Feds, IBM etc have invested in Blockchain .
Look up IBM Hyperledger
Johmathan ok i did. what about it?
Askhay stated just started, along with right on time.
I believe it started in 2009 or 2010.
That's all.
Akshay It's called the Baader-Meinhof phenomenon (when you learn about something and then right after you suddenly start to see it being discussed or used in contexts you wouldn't have before). It happens to me all the time! Always feels eerie too, even tho it's just a cognitive bias
But yea. Boring lil piece of trivia for ya there