5 ms·
Well in the first case the problem is the lack of centralized repo: there are a million and one forks of linux, and they are all linux however they have all dif
by askmike 8y ago
Well in the first case the problem is the lack of centralized repo: there are a million and one forks of linux, and they are all linux however they have all different code (Linus maintains the one that most people call linux, but there all Linux nonetheless). Imagine if it wasn't code, but financial data that would not really work.. The problem with git is that it doesn't allow you to form any consensus with a group of people (that you can't always trust). git's answer to 2 people committing to the same file is to throw a merge conflict in your face: Git is saying: I can't figure out what the truth anymore, so please tell me. That only works if you can trust everyone.
> Merkle trees have been around since the 70s.
Blockchains didn't reinvent many things, 95% of a blockchain is basic cryptography. Merkle trees are awesome and they are used as well (for example when grouping transactions into blocks within Bitcoin). The reason why you need more than a merkle tree is because a merkle tree doesn't help you if:
- You can't trust one single party to maintain (or host) the whole thing: yes you can use digital signatures to make sure they don't forge what you said. But what if they deny you access and ignore your messages? What if they change the order people said things? A merkle tree can't protect you from this.
- You need to agree with other people in what order certain things happened, this is a hard problem in networks / distributed systems. Especially if you have actors trying to manipulate this very thing.
- You need to align incentives in a way that breaking the complete system is infeasible from a financial point of view.
----
Take Bitcoin as an example, a (kind of) anonymous payment system in the internet, the only things protecting everyone's money are public/private cryptography and the costs involved with rewriting history (51% attack). Bad actors attack it every day, but no matter who's door the police kicks in you only have to trust cryptography (the only other weak link is your personal private key, so if you they hit in your door - but there is no other middlemen).
> I just don't get the hype.
There is a ton of hype, and whether it's valid or not depends on if the world needs such a system. Blockchain proponents say that once you have a stable decentralized system that can run any code and cannot be corrupted in any way, you will see innovation flourishing similar to the internet: the internet brought complete freedom of information (and industries build on top were not imaginable in the 80s), some people think the blockchain will bring freedom to anything that is (or should be) scarce. Like money and commodities.
- Moodles 8y agoTo be clear, what are you trying to convince me of? The target keeps moving. Are you trying to convince me that a blockchain is needed instead of Git for a currency like Bitcoin? In that case I agree. In fact I conjecture that blockchains are only useful for cryptocurrency. Or, are you trying to convince me that a blockchain is useful for businesses for something like “the supply chain” or whatever, without any cryptocurrency? If so, then I disagree. But please be clear. If you’re arguing for the latter, then try to explain to me as simply as possible how a blockchain with “proof of authority” is better to Git with signed commits. Or CT. Or Keybase. It seems that these business blockchains are inefficient, append-only Merkle trees. It’s not particularly novel, and replicating the database across all nodes of the network and constantly engaging on a consensus protocol to agree on the state of the network while all peers are trusted anyway with proof of authority seems quite useless. If I am wrong, then the blockchain people can do themselves a favour and make a simple comparison chart of their solution compared to possible alternatives. But I don’t think they want to do thst. I think they baffle non-technical people with words like “decentralised”, and “cryptographic signature” and polish it nicely until people believe in them. Just try reading Alex Tapscott’s book “The blockchain revolution”. I think it is snake oil. The emperor’s new blockchain.
- askmike 8y ago> To be clear, what are you trying to convince me of? The target keeps moving. Are you trying to convince me that a blockchain is needed instead of Git for a currency like Bitcoin? In that case I agree. In fact I conjecture that blockchains are only useful for cryptocurrency. Or, are you trying to convince me that a blockchain is useful for businesses for something like “the supply chain” or whatever, without any cryptocurrency? If so, then I disagree. I just went on explaining why you want to use a blockchain (private or not) instead of git. It's a broad question so you'll get a broad answer. This is the only thing I went into: > Exercise for the blockchain advocates: explain as simply as possible why a “private blockchain” is better than Git. I haven't talked about anything else. If you want to know what people think about using blockchains for A and B, you should ask that instead. My target hasn't moved at all. > try to explain to me as simply as possible how a blockchain with “proof of authority” is better to Git with signed commits. I specifically explained where an append-only merkle tree doesn't cut it in the comment you just replied to (my previous one). Note that git is an append-only merkle tree. You are more than welcome to go into my points. > It’s not particularly novel, and replicating the database across all nodes of the network and constantly engaging on a consensus protocol to agree on the state of the network while all peers are trusted anyway with proof of authority seems quite useless. If all peers are completely trusted you are 100% correct, if you trust everyone completely you don't need a blockchain. However in the real world trust isn't binary. If a bunch of banks KYC each other and go into a blockchain consortium, they do this specifically because they don't trust each other enough. Else they would have gone with a straight forward solution like git a decade ago.