6 ms·
People are trying to solve a lot of interesting problems with blockchain, but I fear it's become the ultimate shoehorn solution for the modern era. See also: h
by CiPHPerCoder 9y ago
People are trying to solve a lot of interesting problems with blockchain, but I fear it's become the ultimate shoehorn solution for the modern era. See also:
https://tonyarcieri.com/on-the-dangers-of-a-blockchain-monoculture https://tonyarcieri.com/on-the-dangers-of-a-blockchain-monoc...
I've had meetings with prospective clients that opened with, "We have $problem, can we use blockchain to solve it?" where anything that doesn't qualify as a blockchain is cast to the wayside because it doesn't scratch that buzzword itch.
(Amusingly, I've witnessed one pitch where the person called it "bitchain" and it sounded like "ba-ching!" and I was waiting for the follow-up to what I thought was onomatopoeia for a cash register sound. I've since learned to not abbreviate cryptography as "crypto" lest I attract sketchy prospects.)
A lot of the problems that you might want to solve with a blockchain probably doesn't need a blockchain. A distributed, append-only cryptographic ledger will suffice. To wit: https://paragonie.com/blog/2017/07/chronicle-will-make-you-question-need-for-blockchain-technology https://paragonie.com/blog/2017/07/chronicle-will-make-you-q...
- arkona 9y ago> A distributed, append-only cryptographic ledger Pardon my ignorance, but isn’t that what a blockchain is?
- CiPHPerCoder 9y agoA distributed ledger doesn't necessarily mean a decentralized one. This is a handy reference to decide if you're building a cryptographic ledger or a blockchain: https://gist.github.com/joepie91/e49d2bdc9dfec4adc9da8a8434fd029b https://gist.github.com/joepie91/e49d2bdc9dfec4adc9da8a8434f...
- hiq 9y agoI think the confusion stems from permissioned vs permissionless blockchain, and the comment you replied assumed you were talking about one instead of the other. I find the plain term "blockchain" rather vague in that regard. In addition to this github gist, I like http://doyouneedablockchain.com/ http://doyouneedablockchain.com/ .
- dsacco 9y agoFor precision, it’s good to distinguish between decentralization and permissionlessness as separate axes. Technically speaking the two are commonly positively correlated, but you can build centralized, permissionless systems and decentralized, permissioned systems.
- woah 9y agoI agree that blockchain is overhyped right now, but I don't understand the common sentiment on HN that "you don't need a blockchain, just an append-only decentralized database with Merkel root logs", as if that's something easy to build. What is this hypothetical non-blockchain, where are you going to get it, and why not just use a blockchain if that's what you need?
- CiPHPerCoder 9y ago> I don't understand the common sentiment on HN that "you don't need a blockchain, just an append-only decentralized database with Merkel root logs", as if that's something easy to build. In my case, this sentiment accompanies an implementation in the form of an easily-deployable open source microservice. https://github.com/paragonie/chronicle https://github.com/paragonie/chronicle If it's too hard for people to build, they can use what I wrote. > What is this hypothetical non-blockchain, where are you going to get it, and why not just use a blockchain if that's what you need? That's the tx/s limit on Bitcoin today? I can do hundreds of writes per seconds to Chronicle on a modest VM without sweat. This is possible because it's centralized, albeit supports mirroring (i.e. replication) and cross-signing.
- sharemywin 9y agoThis sounds a lot like ripple: ... Are people still fighting about this or have they come to a consensus? I'm probably the worst person to represent whether there's a consensus or not since I'm one of the designers of Ripple. But the important thing, at least in my opinion, is that there is no "secret sauce". The software is open source. People are free to modify it however they please. We run the exact same software that we make available on our public servers and our validators. Others are free to run validators and they do so. As it happens, much of the network infrastructure is run by us today. But we are more than happy to turn that over to others who are willing to do it. Why do you care if something is decentralized? The main reason is usually that you don't want the users of the system to be forced to accept changes made by an owner/operator of the system whose interest may be averse to them. Ripple is decentralized in this sense. For example, eBay is not decentralized. They don't warehouse their goods. But if eBay the company says no auctions of adult merchandise, then there will be no such auctions. It wouldn't matter if every user disagreed with the policy. Their only recourse would be to re-create what eBay had done, that is, to themselves implement eBay's secret sauce. By contrast, Ripple has no secret sauce. Anyone can run their own servers. If we make changes people don't like, nothing requires them to run the code with those changes. If Ripple disappeared and users of the ledger wanted it to continue, nothing would stop them from continuing it. https://bitcoin.stackexchange.com/questions/40448/is-ripple-centralized-or-decentralized https://bitcoin.stackexchange.com/questions/40448/is-ripple-...
- TheDong 9y agoNo, that's what a write-ahead-log is, or quite a few various databases, or a git branch are. The key innovation of the blockchain was the use of proof-of-work in order to associate an amount of computer-time with a given block, and then pick, from competing views of a blockchain, which view took the most energy to arrive at... all while being resistant to a small number of subversive actors. In short, the blockchain solved the Byzantine Generals’ Problem, and happened to use a append-only cryptographic ledger as part of it.
- Jasper_ 9y agoProof of Work doesn't determine which view took the most energy to arrive at. What it does is give a self-adjusting brute force cracking problem that takes 10 real-world minutes to perform, regardless of the amount of energy put in. The assumption is that 10 minutes is enough for even the slowest links of the network to get an up-to-view of the world, preventing double-spends or similar issues.
- dozzie 9y ago> The key innovation of the blockchain was the use of proof-of-work in order to associate an amount of computer-time with a given block Correct. In other words, proof of work is only a tool to make everybody slow in producing data while keeping everybody fast in verifying it. > In short, the blockchain solved the Byzantine Generals’ Problem, No. It's a common misconception, but in fact it does not solve Byzantine generals problem, with the simplest reason being that the problem requires the solving protocol to terminate (blockchain does no such thing). > and happened to use a append-only cryptographic ledger as part of it. The correct terminology is not "ledger", but "document timestamping". You don't need to record transactions in blockchain, they can be any statements. Cryptographers already had such systems, except that each of those required trusted third party to produce timestamps.
- scardine 9y agoA couple weeks ago a startup pitched blockchain solutions for government problems (I work at a government agency in Brazil). The presentation sounded like Scientology, lots of circular arguments and bold claims without much substance. I asked a few questions and he dodged them like a professional politician: * what do you do if you need to reverse a transaction (lets say, court order) * what if someone loses his wallet/password * some people claims blockchain is over-hyped He said that I being skeptical proves my ignorance and I should study more about the subject instead of challenge him. Remembered the short tale "The Emperor's new clothes", I'm unable to see the king's clothes because they are made of a magic fabric invisible to the stupid. I guess the magic fabric is made of blockchain.
- pimeys 9y agoI might need to do something with blockchains at work and I need to follow the scene and study stuff. The behavior you described here is too common. Sometimes I feel everybody has too much money involved and everybody is cheating everybody... So there definitely is no trust.
- elmar 9y agoDoes your problem gets easier/solved with a permissionless ownerless database, if "yes" then you need a public blockchain, if "no" you need something else.
- ericb 9y agoI agree, although I might add "trustless" in there.
- bitcoinmoney 9y agoi think trustless == ownerless. do you agree?
- Asdfbla 9y agoThere's more dimensions to that though. Can participants have identities? If yes, then you don't need proof-of-work, for instance but can have a distributed ledgers with conventional algorithms for Byzantine agreement etc. Might be just my misinterpretation, but when I hear blockchain I usually just think of conventional totally trustless and identity-less protocols that necessarily require proof-of-work - which is a security level which is not needed for most applications.
- dozzie 9y agoIf "yes", then you still don't need blockchain. There are better protocols, like DHT. The only time you need blockchain is when you need to tell which of the two related statements was issued earlier and at the same time you absolutely have to have no trusted third party that assigns timestamps to the statements.
- ericb 9y agoThere's another aspect, unforgeability. The interesting thing about the blockchain is that it is a very hard to forge data-set, by design. You can take a proof of work blockchain and look at the hashes of the blocks in it, and based on the number of 0's in each block (the difficulty), you can know how much energy (and cost) went into mining that block. So if there's a danger of forgery, or you have an interest in security, a blockchain with proof of work provides a really trustworthy way to know you're getting authentic data, because you can look at the chain, and know things like it would cost about 100,000,000 to forge this full history, and 1,000,000 to forge to last block.
- viach 9y agoHow the DDOS problem is solved there?
- bambax 9y ago[Question] What technology, based or not on blockchain, would enable an entity to write relatively large amounts of data in a "sustainable" way -- sustainable meaning, that the data is independent from whoever wrote it (can survive it)? Writing data to the blockchain solves this problem, but the cost is large and performance is dismal. Writing hashes to the blockchain at specified intervals, delivers proof of existence, at an acceptable cost and performance, but does not really make sure the data itself will survive its original author. Is there another way? Can chronicle help?