Tyler Cowen links to the course description for "Foundations of Blockchains" by Columbia's Tim Roughgarden:
Perhaps this course will also serve as a partial corrective to the misguided coverage and discussion of blockchains in a typical mainstream media article or water cooler conversation, which seems bizarrely stuck in 2013 (focused almost entirely on Bitcoin, its environmental impact, the use case of payments, Silk Road, etc.). An enormous number of people, including a majority of computer science researchers and academics, have yet to grok the modern vision of blockchains: a new computing paradigm that will enable the next incarnation of the Internet and the Web, along with an entirely new generation of applications.
I would be delighted to read the layman's version of this, free of hype and full of serious applications for the future. So I'll open this to the hive mind: has anybody written such a thing?
Read Matt Levine's take: https://www.bloomberg.com/opinion/articles/2017-10-13/icos-marxism-and-credit-reports
The key thing to understand is that blockchains allow you to build new internet *protocols* that are decentralized rather than building closed-wall internet apps. Ask any computer scientist and they will tell you that there really is some cool innovations that blockchains bring to the table. Whether or not this will actually lead to the internet of the future is hard to say, but it's not without promise.
But isn't the environmental damage built in?
- The value comes from the non-forgeability,
- the non-forgeability comes from proof of work,
- and proof of work is necessary because of the decentralization
- (as opposed to, eg, the non-forgeability of dollar bills, which can be achieved by a central authority that limits the manufacture of the bills).
I don't see how you square that circle
- everyone can contribute BUT
- what they contribute can't be forged
- unless you require proof of work (ie LOTS of pointless, energy-wasting, compute)
There are different schemes than proof-of-work. There are proof-of-stake, proof-of-space (as in hard drive, or for some really limited applications, RAM) and other schemes. Some of them are not terrible in some applications.
(And remember, specific just to currency questions, you can build digital currencies that don't have any of these problems, if you're willing to give up the "distributed" part of this.)
But fundamentally, this is all just a distributed ledger. There are not that many applications where mutually-distrustful agents want to share a public ledger enough to make these complicated schemes make sense.
Distributed storage is a big one where some of these schemes could be modified to enforce fairness - think of a huge distributed backup system, where you get to back up about as much data as storage you make available to it. (This starts having serious content-based legal issues pretty quickly, but from a technical perspective, it works really well, and I suspect we'll end up with something like it eventually one way or another.)
I can make a case for an "Event Registry". Some company that you pay to have them attach, say, a document to their ledger. This gives you an unforgable proof that this particular document, including signatures, say, existed at X date. Or, it could be used for copyright-like purposes.
Otherwise, regulatory schemes seem like the most likely consumers of public ledgers. Think radiation monitoring between nations.
Some sort of public ledger, if you squint, maybe, kinda might be good for environmental monitoring. Suppose you have a swarm of sensors monitoring for pollution. You don't want the vandals or scaliwags blowing up the data. A proof of stake (basically, a secret) could be used with a blockchain ledger for this purpose. But I think that's probably too complicated and unnecessary.
Honestly, maybe I just lack imagination, but I do not see many other real-world applications. There are some, but the people claiming everything is going to be running on a Merkle tree in 10 years is nuts.
(You shouldn't listen to me. But as far as cred, I have been involved in attempts at building digital cash off and on since the 90s, have worked in internet tech as long, and have written code that uses the same sort of math for different purposes.)
great observations, thanks. I still think the whole cryptocurrency aspect of it all needs to be heavily regulated for ransomware and tax evasion, criminal transfers, etc.
Oh, I agree with your overall point (which I read as "this is solving a non-problem").
But my point is that, for *most* the loudest enthusiasts, it's precisely the distributed nature, the lack of a central authority (or equivalents like centralized secret) that makes this all valuable regardless of the hassle (and regardless of the more-or-less-essential burn up the world aspect)...
You stated:
"But fundamentally, this is all just a distributed ledger. There are not that many applications where mutually-distrustful agents want to share a public ledger enough to make these complicated schemes make sense."
Thank you!
It is a wonderfully designed decentralized ledger, but it is just a ledger.
If you need a distributed ledger in the face of untrustworthy participants, then this provides an elegant solution to that problem.
But it is only a ledger.
At a scan, I don't see anything in there which actually lays out practical uses for blockchain. Want to point us at the relevant quote?
I'm a software developer, not a computer scientist (if we worked in the oil industry, they would be the geologists and chemists, and I would be the guy running a drilling rig). But I'm familiar with the basic principles of the blockchain, and I can't see many applications that can't be done more easily and efficiently with existing technology.
Free of hype is hard.VCs so write some good stuff, but that is obviously full of hype. This is an older Ben Thompson article. This Sums it up well.
“The problem, of course, is that while blockchain applications make sense in theory, the road to them becoming a reality is still a long one. That is why I suspect the better analogy for blockchain-based applications and their associated cryptocurrencies is not tulips but rather the Internet itself, specifically the 1990s. “
https://stratechery.com/2017/tulips-myths-and-cryptocurrencies/
In theory you could run an internet on blockchain free of the centralized control of Apple, Amazon, Google etc. in practice, lots of hard problems for scale and ease of use. But, lots of smart people and money working on it. It should grow in utility and functionality over time.
One sign it is all hype is that the whole issue is couched in incomprehensible lingo. This is always a red flag. I am sure there are very real innovations here, and I don’t want to dismiss them outright, but if you need to surround these innovations with tech garble, then my immediate instinctive response is to stay the heck away.
This is not a new critique. And the industry and innovators have all heard it. And yet, the whole field remains a sea of verbal nonsense. I wonder why?
Your instincts are good. Incomprehensible gabble is at the heart of "biz speak", once known as "patter", as in "The cheaper the crook, the gaudier the patter."
"If you can't explain it simply, you don't understand it well enough. " —Albert Einstein
when an adult uses the word grok in a serious document i immediately discount them as a crank libertarian.
As I understand it, Bitcoin needs blockchain, but blockchain doesn't need Bitcoin.
The question is whether human beings need either one.
Maybe machine learning can tell us.
Blockchain is an /extremely expensive/ way to solve a very specific distributed consensus problem that /very few/ systems actually, practically, have.
Pretty much anything one proposes to do with "blockchain" can better be done with a simple database and/or authority.
And the properties that blockchain specifically requires are in fact not desirable for most applications … turns out that eg. immutability is a problem when illegal content is in your core data structure!
Sorry I don't have the reference to what you're asking for, Kevin. The answer is likely in DSHR's Blog or Nicholas Weaver would have a good takedown of the stupidity of it all. A hunch brings me to Maciej Cegłowski (@Pinboard) , where someone links to a Bruce Schneier post, which ultimately links to .
I think that Schneier piece is probably what you're looking for, actually. 🙂
Gah, form ate my links…
"DSHR's blog": https://blog.dshr.org/
"Nicholas Weaver": https://twitter.com/ncweaver
"Maciej Cegłowski (@Pinboard)": https://twitter.com/Pinboard/status/1399058952336277505
"Bruce Schneier post": https://www.schneier.com/blog/archives/2020/11/on-blockchain-voting.html
>> "which ultimately links to: https://www.schneier.com/blog/archives/2019/02/blockchain_and_.html
thanks!
What is immutability?
Immutability means that the recorded data cannot be changed after the fact. In the context of blockchain, it means that it cannot be changed without the change being detected.
If it can't be changed, can it be corrected, recalled, or replaced? If not, how can a system operated by fallible humans not break down?
Also, as I understand blockchain, a ket aspect is that all transactions are instantly reported to (potentially) billions of people worldwide. But what's the significance of that if the transaction can't be changed?
(Not a question directed solely at Steve but a question for anyone with a potential answer)
Generally, transactions cannot be reversed. But I think Ethereum nodes voted to reverse a transaction some time ago after a hack that stole a bunch of cryptocurrency. My basic understanding is that it is very difficult, but not impossible. Most everyone has to agree for it to happen.
But if they can be changed, doesn’t that imply some kind old centralized administration?
You can change data - but only by addition. That's where the "ledger" part of blockchain comes in. But you don't need blockchain to achieve that. I designed databases back in the mid-70s that had that feature - you just added the new data and marked it (or placed it at the front of a set chain - this was back in CODASYL database days) as the current version. Deletion of a piece of data did not delete any data. It just wrote a "this record deleted on..." record. You could still walk down the chain and answer the question: "What did it look like before the latest changes?".
There are file systems that are designed to handle data in this fashion too.
So, in Bitcoin, for example, is there someone who audits these records to make sure they are accurate?
jsled gives the correct answer..
there is no explanation of blockchain that is free of hype, since blockchain has no serious applications.
I don't see the link to the Schneier piece ?
The one I usually refer people to is Blockchain and Trust,
https://www.schneier.com/blog/archives/2019/02/blockchain_and_.html
Not too long back Kevin mused on whether bitcoins were actually money, and finally came to the conclusion that they were collectibles. Someone mentioned tulips (bulbs, actually), but beany babies, Hummel figurines, etc. No backing but the fickle interest of the mob (literally, in some cases).
Right now, it's a black box that can solve everything if we could just implement it correctly....Sort of like how AI was 20 years ago...
And AI will be 20 years from now....
Well, we went through a phase were IPO's used "blockchain" in names/discussions to pump up prices....
I don't know. I'd guess the blockchain that ate the internet would just slow everything way down eventually. Targeted minimalist blockchains built to "forget" (archive) might work for specific functions. Of course, then they'd have to mesh well, else you end up with cascading blockchains of blockchains.... Would that be any better than what we have right now--no. Could it be--maybe. Is the blockchain essential to making things better immediately--no. Could it help in the future--maybe.
I don't see how it's going to work generally. A secure blockchain needs wide acceptance. Lots of "miners". That means we can only have few really trustworthy blockchains. Therefore, we would need one blockchain that does everything.
That's not what we've got. We have thousands of crummy blockchains that do little more than pretend to be money.
Last year the stupid derecho knocked out my internet for three days.
Three! Days!
I had thought the purpose of the internet was redundancy so it could survive any such wide-scale disaster.
Should there not be legislation to enforce such redundancy throughout the entire system?
That was the ARPAnet version. We have the Commercial Version, in which any redundancy is an unnecessary cost.
Internet redundancy was designed to route around problem areas caused by things like nuclear blasts. It does this very well. However it was not intended to also provide service to the problem area. So congratulations, you were in the blast radius and were routed around.
If you're lucky your neighborhood has more than 2 internet providers (include cellular hotspots I have 3), but if the storm takes out the cell towers and the other 2 providers access points in your neighborhood then you are SOL.
If the storm only takes out one or 2 of the providers, well you can switch, but you probably have to break an existing contract or create a new contract which isn't a technical issue but is a reason people decide to live with a 3 day outage.
The storm took out the middle part of Iowa, straight along Interstate 80, along which, apparently, almost the entire internet and cable tv infrastructure of the state is routed.
I wasn't actually in an area that was hit by it, I'm about sixty miles north, which is why I think I should have been within a redundant region.
Back at DEC, we had a line of redundant communications and computers that would share data across them. A transaction didn't finish till the computer(s) at the far end acknowledged that they'd updated. Making sure the redundant communications were actually redundant was a real pain. The customer would set up two comm lines, with two different companies, leaving from opposite sides of the facility. Then find that 100 miles away they'd converged and were running down the same poles or through the same underground conduits. You pretty much had to walk the lines with each comm supplier to confirm the redundancy back then.
Cryptocurrencies provide the following:
1. Database of transactions
2. Database is distributed & decentralized, most clients keep a copy of at least some part of the database (currently bitcoin blockchain is 350+ GB in size, etherium's is approaching a terabyte)
3. Updates are added in blocks of transactions, each block has a cryptographic hash of the current transaction block + the has of the previous block. if the content used to generate the hash is modified the hash changes unpredictably. This creates a chain of blocks of verifiable hashes so that no past block can be modified without detection, but no one entity asserts that no past transaction has been modified.
4. who gets to add that last block is randomly decided based on some algorithm. You want to distribute who gets to approve the block as much as possible, if one entity makes the decision all the time you've re-centralized your transactions. To make sure you're dealing with multiple entities you ask the to expend resources that cost them something (usually money) - Proof of Work asks you to burn as much CPU time as possible. You don't want to split your CPU usage to look like multiple people as that actually reduces your chances of winning. The only other system that I'm aware of that actually got traction for a bit used disk space instead. You will hear about Proof of Stake, these systems have been promised to fix the energy issue for about 5 years and keep getting pushed down the road.
5. Some systems (Etherium does, bitcoin does not) provide a way of running your own code on the system too.
Issues:
1. Databases are common already
2. Distributed databases are also common, decentralized not so much but is decentralization a good feature? Most times, for databases, it is not. Decentralization removes many opportunities to reverse or roll-back transactions. When you are scammed of crypto you are permanently scammed.
3. Signing a block with the hash of the past block in order to generate a verifiable immutable chain of transactions is simple and requires neither a distributed database nor decentralization (and does not provide either on its own).
4. To date only Proof of Work (energy sucking CPU burning with no result but heat and carbon) has a proven track record of working. Chiacoin's hard drive disk space usage seems to be failing. Proof of Stake has yet to make any kind of actual appearance, let alone actually work at scale.
5. Smart contracts, the code you run on a block chain, are notoriously buggy. Either intentionally so the author can steal all the money, or inadvertently so the money is stolen by somebody else.
The end result is a technology that offers no advancements over current capabilities (in the database/computer science fields), and this is why it has had no "killer" application outside of cryptocurrency.
The one thing it does innovate on is a way to transfer funds "trustlessly" and while you can be sure the money gets to it's destination you have no guarantee:
a) it went to the person you intended to (see malware that changes the destination address on the fly, or typos)
b) the person you sent money to is trustworthy (no way to get your money back because of immutability)
And that's why it ends up being used on Silk Road as it's primary application as a currency. It's also used for rampent speculation because the continual crashes and spikes can provide quick turn overs of lots of money and new people seem to be forever willing to come in and give up all their money.
I’m not a technically savvy guy but from your description it would seem that crypto is uniquely vulnerable to all kinds of common attacks, but especially key logging and man in the middle. But apart from criminal activities, I don’t see any real advantages to blockchain.
man in the middle is usually difficult because when you send your transactions to be added to block they're cryptographically signed with your private key.
Key loggers can be a huge problem but also malware that just looks at your clipboard for a cryptocoin wallet address and whenever it sees one just substitutes in it's own address. Unless you can memorize 128-bit numbers there is little chance you'll notice.
While the private key provides encryption to prevent man in the middle it is its own huge issue. You lose that key and your account is permanently inaccessible. There is no bank teller you can go to, show your ID, and get your account back.
https://nypost.com/2021/01/15/man-who-lost-password-to-220m-worth-of-bitcoin-says-hes-made-peace/
Crypto key recovery services exist but depending on what happened to the key can be futile.
I don’t understand how or why a private key works in this context. I have email now that uses a private key but I’ve always worried that it was vulnerable to man in the middle if the program sitting between us could impersonate the program of the intended recipient. I understand if we’re using a PGP program and we’ve already established communication but this blockchain seems to be broadcasting to potentially millions of recipients. How can they all have the key?
everybody has their own key. The address you send coins to is somebody else's public key.
public/private keys provide several services. One is encryption, encrypt something with your public key and only the person with the private key (you) can decrypt it. If you encrypt something with your private key, anyone with your public key can decrypt it.
Another service is signing. If you sign something, it isn't necessarily encrypted but rather a code is added to the message that says "this message is signed and you can verify the contents have not been altered by checking this signature with my public key" Since only the person with the private key can generate that particular code block you can verify who it came from.
So when you send a transaction to the blockchain you sign it with your private key and send the public key with it. The public key can be used to verify the contents of the transaction have not changed since it was signed with the private key.
To get coins sent to your public key you need your private key. So as long as the private key remains private only you can access the transactions sent to your public key.
But if the private key is lost the security around them (if properly implemented) is so good there is not chance of randomly figuring out what it was, even if you know the public key.
Excellent job at summarizing everything. ????
I tried to come up with a list of fundamental internet protocols or established use-cases where blockchain, as currently understood, would be my go-to technology, and I keep coming up blank. I could maybe see using a cryptographically-signed distributed ledger to replace Certificate Authorities with something decentralized for SSL/TLS. I could imagine a world in which that fundamentally changes the internet in useful and interesting ways.
For all the other situations in which I have security challenges, there are faster, lighter-weight, more feature-full (pick any two) options already available.
Not sure how your picturing the certificate block chain would work. There are some issues that might cause problems. Certificates expire, usually after a year, but blockchains are designed to carry all the transactions forever. That's a lot of wasted space. Let's Encrypt currently issues over a million certificates a day. Blockchain transaction rates don't come anywhere near that currently.
Let's Encrypt maintains a certificate transparency log (every certificate they issue is listed) which might be an option for a blockchain, but i honestly don't think it would improve over the existing. They rotate it yearly and the infrastructure they have to maintain it is huge.
https://letsencrypt.org/2019/11/20/how-le-runs-ct-logs.html
You seem to think I'm advocating for blockchain here. I'm not. I'm saying there have been issues in the past with rogue CAs (see Verisign), and that is a problem my industry will have to solve eventually. If and when that happens, I could imagine a scenario in which some of the concepts of blockchains are reusable to engineer a zero-trust replacement for CAs.
El Salvador's attempt to make bitcoin legal tender exactly as well as anticipated,
https://foreignpolicy.com/2021/09/17/el-salvador-bitcoin-law-farce/
[ . . . . 'has worked' exactly as well as anticipated. ]
Off topic (sorry) but related. Tyler Cowen was on Ezra Klein’s show a week or two ago and opined that Bitcoin was here to stay and would surely be a big deal because of all the “talent” working on it and flocking to it.
I thought that was the most absurd justification I’d ever heard offered from someone who’s supposed to be a genius.
I mean, Theranos, just for starters… and how about Vietnam War?
*the Vietnam War (famous, of course, as the brainchild of “The Best and the Brightest”)
Pours one out for BaseballProspectus, where both Jonah Keri & Nate Silver first made their names, & where Jeff Luhnow & the Houston Astros front office got their best ideas.
I think Blockchain has some of the same appeal of perpetual motion machines in a different era. In this case somehow perfectly secure transactions can be done without any human (external) intervention ... forever ... with no downside and no cost. Right.
I am reminded of my futile battle with Facebook. I once had a Facebook account. It was tied to an old email address. I switched internet providers and ditched the email address and at the same time pretty much ceased to use Facebook as I had no need of it. Over time - years - I came to the conclusion that it was worse than useless so I decided I would log back in, declare my reasons for departure, note my disapproval of smart but emotionally stunted overgrown 14 year olds with too much money and power and then delete my Facebook account. But there was a problem. I no longer remembered my password and the computer it had been stored on was long gone. My only recourse was to reset my password but that could only be done with my old internet address which I could no longer access.
A Catch 22 because Facebook allows for no other recourse (trust me, I tried). So, that Facebook account will live on forever until the bits crumble in eternity. But as I paid nothing for it it never really was mine, was it ? It was just Facebook's advertising portal into my life.
If it's any consolation, on his deathbed, Zuck will mutter your name, just like Rosebud.
Well, there are nonfungible tokens. NFTs are intended to represent ownership of a particular digital file or files (e.g an artwork). If you pay for one of these, you can claim to be the owner of said file(s). But that doesn't give you any special control or right to them. It doesn't protect them from being accessed by others. It does give you bragging rights, if you like to pay actual cash for bragging rights.
As an example, some bozo paid $5.4 million for an NFT claiming "ownership" of the files linked to in this article:https://arstechnica.com/tech-policy/2021/06/tim-berners-lee-makes-an-nft-from-world-wide-webs-objective-c/
Hmmm... If Tyler Cowen thinks it's awesome, I'm guessing it's not very important. He and the National Review and the Wall Street Journal and Fox News are wrong about sooo much.
https://www.wired.com/story/whats-blockchain-good-for-not-much/
I use this article in a class I teach about emerging technology, I think it matches up well with your interest in a layman's version that cuts through the hype.
https://hbr.org/2017/01/the-truth-about-blockchain
It's a little more optimistic about blockchain than I am, but overall I think it's held up well since it was written.
Or is this just another Dean Drive? https://en.wikipedia.org/wiki/Dean_drive
Do you think proponents of blockchain, who disregard the complaints about cryptocurrencies (whose underlying enabling technology is blockchain), might have a change of heart if they were to end up on the other side of the coin, victims of ransomware, forced to fork over hundreds of thousands of dollars in Bitcoin?
Or nah, having to pay a handsome ransom is just a small obstacle to blockchain greatness?
I'm late to this conversation, but an interesting and in-place application of blockchain technology is in its use to create very secure land/property registration. It is used to protect land rights in Georgia (the country) which, like The Netherlands, has introduced it to further advance land tenure protection.
What benefit does that have over … government?
The government is using the tech. It's not generally a good thing for governments to delegate fundamental vital records protection to random Randians - ask the old Hawaiians about how their pre-digital experiences with signing bits of paper about land worked.
I read a New Yorker article a couple of years ago about Latvia using blockchain for applications like that. They apparently didn't see any governmental need for bitcoin.
"I would be delighted to read the layman's version of this, free of hype and full of serious applications for the future."
Not a written piece, but a presentation, by Balaji Srinivasan, titled, 'Applications: Today & 2025'. Found at https://www.youtube.com/watch?v=3jPYk7ucrjo.
He starts listing the applications at timecode 20:20. This is the list I generated from his presentation.
Lending and Interest [Compound, Maker]
Scaling [26:45]
Decentralized cold storage (Casa)
Saas-for-gas (Starkware)
Insurance (Opyn, Nexus Mutual)
Multiwallets (MyCrypto) verbs: send receive buy sell sign vote register
Security innovation (ZenGo)
Novel financial instruments (Fomo3D, PoolTogether)
Blockchain games (egamers, Forte, EOS)
Crypto social networks (Voice, Twethch)
Decentralized DNS (ENS, Unstoppable Blockstack, Handshake)
Automated Market Making (he’s bearish on this) (Uniswap, Kyber Bonding Curves)
Decentralized Identity (3Box)
Personal tokenization (CNSL, Dinwiddle)
Mutuals and Guilds (Moloch, Gitcoin)
Founders Rewards (Zcash, BCH)
On-chair developer bounties (Tezos)
Clients for dApps
Developer Tools (Alchemy, Bison Trails)
Oracles and Prediction Markets (Auger)
DAOs
Community Owned Organizations
The Mosaic browser was released in 1993, which is when people started hearing about the Internet. Facebook was founded in 2004. When I map what is going on in the crypto space to Internet history, I'd guess we are at about 1998.
We used to have decentralized money. There was the gold standard which required access to experts who could verify that a given weight of metal was actually gold or silver. Those "money changers" took a cut of any deal and had to be regulated lest some engage in fraudulent schemes.
Then we had an era when any bank with gold or silver reserves could issue paper money which required access to a reputation manager like The Bank Note Reporter to let people determine which bills were actually properly backed by metal reserves and which weren't.
Now we are thinking of using bitcoin, but none of the existing blockchain schemes allow for easy retail access. They require some kind of proof of effort, and that means access to advanced computing resources beyond those of the typical phone or PC user. So, who is going to manage reputations and prosecute fraudulent blockchain access operators? Let me guess.
That whole thing sounds like hype. Blockchain solves a certain technical problem, and it is having a good run since it has yet to be regulated well enough to provide a product useful to the general public.