No, it was about finance right from the start, says so right there in the title of the paper ("cash").
It got distracted by politics and greed. What I mean with greed is obvious, and I guess it was kinda inevitable.
Politics is a more interesting angle: many blockchain/bitcoin afficionados seem to be of the Libertarian persuasion who think the main point is to prevent government interference, especially inflation. And they seem to thik this was Satoshi's primary goal as well.
And here I'm a bit baffled: I can't find that in the original paper. Did Satoshi state any political goals in other communications? I gather that he was actively involved in the early Bitcoin community for some time.
I agree with you that Bitcoin was originally conceived to solve digital cash problems (like double spending). But I think the parent's point (which I also agree with) is that the actual utility of modern blockchains, regardless of original intentions, is in strong fault-tolerant systems.
By any reasonable standard, Bitcoin itself has not matured into a strong currency usable for day to day cash payments. It has extremely high volatility, slow transaction verification and very high transaction fees. I think it's good that it was developed (it inspired a lot of follow-up R&D), and you can make a case for it as a store of value, but it's not really suitable as a payments platform whatsoever. But that failure doesn't diminish its main contribution, which is thermodynamically guaranteed cryptographic resilience and fault tolerance.
To your comments re bitcoin, it sounds to me like somebody complaining that Internet is slow back in the 90s/00s.
EDIT:
I am not pontificating in favor of bitcoin. It's just that the technology is still immature but there is a lot of great and promising work happening today.
...Really? That's one application, sure, but I hardly think it compares to the generalizable usage of cryptographic fault-tolerance assurance in distributed systems. I would consider the elimination of trusted third parties in more well-established and widely used cryptographic protocols (like CAa) or improvements to e.g. NTP node fault-tolerance to be more presently and practically useful than decentralized payments (in particular, because blockchains are much more useful for the former examples than the latter in the present day).
> Many people don't care about it today but there are those who do. That's why cryptocurrency is the real killer app for blockchain, like it or not.
I don't have an emotional investment in what use case becomes the most successful for blockchains in perpetuity, so it isn't a matter of "liking" or "not liking" any particular application. Rather, I'm speaking in terms of present facts, and purposely not making any points about the future.
Sure, people could become passionate en masse about seizing control of their assets in a decentralized, trustless, permissionless, etc systems. I'm not discounting that possibility. But in the present case, blockchains exhibit far more utility for resolving hard problems in domains of computer science than they do for cryptocurrencies.
> To your comments re bitcoin, it sounds to me like somebody complaining that Internet is slow back in the 90s/00s.
I never considered the internet slow in either of those decades because it was all I knew. More to the point, I think you mistake me for someone who is bearish on cryptocurrencies or blockchains in general - I'm emphatically not. I just think that Bitcoin is not going to be the actual winner for that use case, and regardless of future innovations, it is pretty clearly not succeeding now, either, for the reasons I've already outlined.
To their point though, dial-up modems are (by and large) a relic of the past and have been replaced by better (i.e. faster) methods of internet access.
Definitely
> Slow transaction verification
Depends on your definition of slow. The fact that I can send hundreds of thousands of USD across the world in about an hour seems to beat any other method easily available to me.
> very high transaction fees
A month or two ago, sure - TX congestion had driven up fees to ridiculous levels. Now that the congestion has cleared, I can once again send hundreds of thousands of USD across the world for less than a dollar.
Congestion has only cleared because the transaction volume has fallen to a two-year low:
https://bitinfocharts.com/comparison/transactions-btc-sma3.h...
The bubble is deflating, in case you haven't noticed.
The genesis block contains, among other data, a reference to the front page of the January 3rd 2009 edition of The Times;
The Times 03/Jan/2009 Chancellor on brink of second bailout for banks
Whether this was simply to prove that the genesis block was mined no sooner than January 3rd 2009, or if additionally that date and that news paper was chosen for the headline of that day one cannot know but a lot of people choose to interpret it as a comment on the instability caused by fractional-reserve banking.
https://en.bitcoin.it/wiki/Genesis_block
Edit: Between the time that I opened this tab and when I got around to writing my comment someone else already said it. Oh well.
Whoever Satoshi is, he's probably not a Keynesian.
http://p2pfoundation.ning.com/m/discussion?id=2003008%3ATopi...
>>The root problem with conventional currency is all the trust that's required to make it work. The central bank must be trusted not to debase the currency, but the history of fiat currencies is full of breaches of that trust. Banks must be trusted to hold our money and transfer it electronically, but they lend it out in waves of credit bubbles with barely a fraction in reserve. We have to trust them with our privacy, trust them not to let identity thieves drain our accounts. Their massive overhead costs make micropayments impossible.
https://www.mail-archive.com/[email protected]/msg09...
>>Yes, but we can win a major battle in the arms race and gain a new territory of freedom for several years.
>>Governments are good at cutting off the heads of a centrally controlled networks like Napster, but pure P2P networks like Gnutella and Tor seem to be holding their own.
There is nothing wrong with a deflationary currency once the rate of supply side deflation becomes small. Worthy investments will still be worthy investments and it helps the wealth of technological progress be distributed to the working class. Federal Reserve Notes are themselves arguably deflationary in nature except that remittance payments to citizens are taxed at 100%.
Bitcoin has other problems though.
In my opinion, a future successful digital decentralised currency should find a way to prevent itself from being seen as an "investment opportunity". That is not what money is for. That attitude creates bubbles, and "get rich quick" types. You can't have functional money without price stability. The deflationary property of bitcoin works against that.
So IMO bitcoin appreciating in value and creating bubbles along the way is not a good thing for bitcoin itself. You shouldn't need to "invest" in a currency, you need to use it. It needs to be trusted and accepted.
Many people remember the million dollar pizza now. No one wants to be that guy. Even if BTC was universally accepted now, not many holders would dare to use it to buy things. Because in their mind, BTC is poised to appreciate in value whereas fiat will collapse, so they'd use their fiat instead. If you have $5 in one hand, and a lottery ticket with perceived high odds you bought for $5, and the store accepts both as payment, why would you use the lottery ticket to buy things?
But any new currency is going to offer the opportunity for capital gains as long as it's competition includes the U.S. Dollar, because almost by definition a better alternative to the dollar would be deflationary relative to the dollar.
My point is that small rates of deflation aren't bad in a currency and bitcoins fixed size is not really a problem as long as you can trade small enough increments. Also fixed size is not even deflationary, it's just fixed unless something beneficial happens on the demand side like manufacturing cars with less materials.
At the same time fixed size is not really a feature though either. You have the whole number line available why not use it?
Bitcoins real problem is that it's not a "victory against entropy" like gold coins were in ancient times or reserve notes which can appease Uncle Sam in the future are today. Bitcoin is quite the opposite in fact, because we are dissipaiting so much concentrated energy to maintain the system. It's ironic because bitcoins greatest success is making us imagine currencies that don't dissipate value.
I'm pessimistic that there is a distributed solution to this beside just electricity or energy itself, and we're obviously not quite at that point technologically yet.
I am not convinced that what is being transferred here is value. It's transferring data, but I am not convinced that it is valuable. If it was out only option, then I guess I'd see the value in that, but in the current landscape, I'm not convinced that it is an efficient and sensible way of doing what it is trying to do.
>also providing means to accept digital payments with little to no fees.
Fees are variable. In real world volume (which it can't touch or sustain yet), the network cannot sustain the volume and the fees are exorbitant. I know, you'll say "it will get better, infancy" etc. but I'm not convinced. I don't see the value of decentralisation here so the overhead looks massive to me. And in the end, if bitcoin takes off as a successful alternative for high volume low fee transactions, the centralised industry can compete and they have the upper hand: Centralised version has orders of magnitude less overhead so they can make the fees cheaper than BTC always if it came to that. So that advantage is moot.
>Also you invest in whatever your countries currency is via time, so buying BTC with fiat is no different.
No, it is different. When I earn money, I intend to use it or invest it. I don't see my money as an investment which will appreciate in value if I "hodl" it. Money itself is not an investment. You invest with it.
>Deflationary currencies also don’t contribute anymore to hoarding than high savings rates.
[Citation needed.] Deflation literally is economic crisis where people hoard and refuse to spend which brings economy to a halt. Central banks use their policy to encourage people to spend. Deflation is our "crisis" state.
>Bitcoins main issue here is that it’s not a country’s main currency.
It is an issue but IMO it is quite a bit far from being the main issue. Bitcoin is technologically incapable of being any country's currency right now, the throughput alone is not even close to enough.
Making incentives to not spend 'cash'.
The Two Generals Problem, as stated, implies that a failure to reach consensus about a future decision would be catastrophic and ought to be considered as a failure of the protocol.
By contrast, in blockchains a failure to reach consensus about a future decision is not catastrophic, instead we have a very strong guarantee that we do reach consensus for the whole of the past up to some reasonable time close enough to the present. This is rather "eventual consistency".
I really dislike how many academic and non-academic papers lump all of these difference types of "byzantine generals problem" all into the same phrase. Another aspect is protecting against attacks. Some papers "defend" against attacks by modelling random errors that they also call "byzantine", this is bullshit and sort of like saying Error Correction Codes are equivalent to cryptography.
The Two Generals Problem, as stated, implies that a failure to reach consensus about a future decision would be catastrophic and ought to be considered as a failure of the protocol.
Strictly speaking, sure. But I still agree with the parent's point. Bitcoin was the original innovation that inspired later research in proof-of-stake based blockchains. PoS consensus systems do allow for blockchains to be used to resolve consensus for future decisions in the context of deterministic state machines (ironically, somewhat at the expense of strong eventual consistency guarantees provided by proof of work consensus).
> I really dislike how many academic and non-academic papers lump all of these difference types of "byzantine generals problem" all into the same phrase. Another aspect is protecting against attacks. Some papers "defend" against attacks by modelling random errors that they also call "byzantine", this is bullshit and sort of like saying Error Correction Codes are equivalent to cryptography.
Interesting - do you mind providing an exemplary paper or two? I'd like to read them.
I suppose you mean that someone (out of a group G) can commit an instruction saying "the future decision is Y" into the blockchain, and at some time later everyone will be convinced this is the future decision. This is not related to PoS, this will work for pretty much any system that supports smart contracts.
In this situation the decision is not executed in a shared manner - even if one of G gets disconnected from the network, the decision still gets executed by the blockchain. So it is still different from the Two Generals Problem (as stated), where everyone in the group G must participate in executing the decision.
So blockchains still don't solve the Two General Problem. Nor should this be a goal. I think the Two Generals Problem is stupidly strong and really unnecessary in the vast majority of real computing scenarios, including the blockchain.
> Interesting - do you mind providing an exemplary paper or two? I'd like to read them.
It's basically all of them, and I don't think many are worth reading so I don't remember the titles. Search for papers that try to solve the Sybil or Eclipse attacks. (Quite a lot of them rely on trusted authorities, these are not relevant here, I mean the other ones.)
No, I specifically mean a voting protocol in which the "round" will not proceed ("the generals will not attack") unless all voters v in the voting set V come to consensus about the values t in the set of transactions T at the next block height ("the city to be attacked", "the time to attack", etc). Then the voting protocol asserts a proof of stake, such that Byzantine voters are penalized and honest/correct voters are rewarded. Then future decision resolution is provably guaranteed, so long as all activity remains deterministic, the cryptography is secure, all voters in the set V are online and active, and proof of stake is a plausible economic incentive.
The caveat here is - pretty obviously - that it's possible for the consensus system to enter an infinite loop if it fails to reach consensus (just like the original problem). So no, it's not perfect, but it is modeling the Two Generals Problem and compartmentalizing it somewhat, though it can't completely resolve it.
Otherwise, I agree with you - the classical Two Generals problem is an inordinate fault-tolerance ideal.
How do you decide which one is a "Byzantine" voter? A minority is not necessarily dishonest. If you penalise a minority, at each step at most ceil(n/2-1) of the group will lose their stake, even if they were honest. That sounds overly-harsh.
In the original paper by Lamport, Shostak, and Pease, the problem is described this way: "We imagine that several divisions of the Byzantine army are camped outside an enemy city, each division commanded by its own general. The generals can communicate with one another only by messenger. After observing the enemy, they must decide upon a common plan of action. However, some of the generals may be traitors, trying to prevent the loyal generals from reaching agreement."
A common way to describe the participants in such a scenario is simply "honest" and "dishonest". The term "Byzantine" has become used in distributed systems research to refer to situations in which we can't be sure of participants' honesty and intentions. However, it doesn't correctly refer only to the dishonest participants.
Lamport's original paper does seem to treat adversaries appropriately, but I've seen many worse papers from recently failing to consider what happens if a malicious peer specifically tries to exploit your "defence" mechanism.
I wouldn't say this is a problem. It's a useful red flag that you should stop reading this paper, or at the very least question the competency of the authors. Could save hours of your life!
The whole point is that I can't tell if it's a red flag simply by reading the abstract, I have to read the entire paper. The good papers also use the same vague terminology!
I really think we need to stop citing it as a "thing", it's like the Halting Problem, stupidly strong and not necessary most of the time. Saying that something "solves" Two Generals is diverting the conversation into pointless impossibilities.
This isn't really right. Pre-trade (price discovery and trade matching) are about the most efficient parts around today - in equities in no small measure due to HFT. Post-trade (clearing & settlement) is pretty messy and error prone. Something like $50bn a year is spent on reconciliation processes, mostly in manual operations work. It's certainly reliable, but it isn't especially efficient.
It's also far from being the easiest to upgrade. See the incredible pain most markets go through when they face a mandatory move from T+3 to T+2 settlement. Making changes to post-trade procedures pretty much means a wholesale, industry wide change.
(As an aside, a shared database actually goes quite a long way towards alleviating some of the problems in clearing & settlement - the author makes it clear they see quite a bit of potential in private blockchains, just not public ones. And clearing & settlement is an area well served by private blockchains.)
Public blockchains replace the need for trust with, essentially, energy usage. That's what gets you your validity, despite operating in a hostile environment. They give you a shared, single source of truth about the state of whatever system you've embodied on that blockchain. The problem they are solving is the undesirability (or impossibility) of trusting an intermediary.
Private blockchains replace the need for reconciliation between parties who minimally trust* one another with a method for provably ensuring everybody has and will get the same information. They also give you a shared, single source of truth about the state of your particular market, but you get that in an environment where parties on the network are assumed to be behaving well. The problem these solve is the cost and complexity in establishing a trusted third party. It isn't hard technically to have a reliable ledger, but it is hard structurally and operationally.
The point of a private blockchain is to mutualize the infrastructure required to form that single source of truth. You could do it with a trusted intermediary operating a big shared database, but you'd have to set one up in a market where that doesn't exist and assign to them complete responsibility for your record keeping. Private blockchains are a way for parties with a shared problem - the cost of reconciling their independent books - to construct a solution that doesn't require forming and staffing some new industry utility, or abrogating control over their own records (so they can maintain secrecy of trade data, for example.)
*I mean by this, they have stronger economic and legal incentives to cooperate in doing business with each other than they do in ripping off the other guy. Put another way, their horizon for trusting a counterparty extends beyond the immediate transaction on the table at any given moment. This isn't the case in anonymous individual peer-to-peer transactions.
If this is true, why oh why does it take 3 days (in the US) to transfer funds between my own accounts in two different banks?
Why does it take 5-15 days (including multiple "fraud" verification emails, calls etc) to send money from the US to my Indian bank account?
>> ...it is certainly the easiest to upgrade.
It is 2018... why are these systems not upgraded yet?
My bank in New Zealand has instant clearing to accounts within the same bank, and hourly clearing to other banks. I can transfer money from my Australian account to my New Zealand account using TransferWise within 3 hours, or 2 working days if I use the international transfer service offered by my bank.
One problem with America is that you have so many small banks and credit unions, a small town might have its own bank, that nobody is willing to standardise and agree on new standards. This is why Americans still use cheques, and why adoption of contactless payment using debit/credit cards, as well as chip+PIN (or even swipe+PIN) has been so slow.
Contactless payment is so ubiquitous in Australia and New Zealand that I've had to insert my card literally once all year.
Australia only has half a dozen main banks, which service >90% of the population. For whatever economic implications that has (too big to fail etc.), it has been great for encouraging innovation.
Against this back drop of US service culture the idea is to make it as easy as possible for the customer - they don't have to enter a complicated four digit pin number, they can just sign their signature and if the cashier thinks it looks like the scrawl on the back of the card then the sale is done.
I currently do not have millions of credit card details from a client database on my computer but that has happened before now. If I was criminally minded then I would have been able to sift off a lot of money, however, I have yet to steal a penny, despite also knowing some flaws in the 'double entry system' that I could have hacked to cover my tracks. I am sure that there are many millions of developers out there that have had such data on their laptop at some time. How many go rogue and steal? Not many. But in crypto-land it seems that this situation is reversed, everywhere there is a scam. The good actors are as rare as the bad actors in regular accounting/book-keeping.
So ten years ago when I did have many millions of credit card numbers that could be used (no 3D secure back then), I was trusted but not expressly by a single one of those named in that 'Sybase' database (as it was then). The system then very much worked entirely on trust and generally all those in the chain were trustworthy. I don't feel that banking has moved on in the USA from this trust way of working, things are much more locked down in the rest of the world. This is good for many reasons, I prefer today's customer databases where all the bits you would want to hack are hashed and salted if at all present.
This flakiness of banking in the USA - where a bank is not really any more likely to stick around than a company - means people do flock to the crypto coins precisely because of the 'store of value', there is chance of getting more than 2% return and the perceived risk is not much 'worse'.
Hopefully the net result of this fantasy blockchain nonsense is that we do build out better banking systems that do have a better 'trust model'.
The article does point out the absurdity of pushing around a whole copy of the database to every user and keeping it synced...
Bank wire transfers within the entire EU is regulated by the SEPA framework which basically means that banks are not allowed to charge more for a intra-EU transfer than a transfer within the same country. This allows me to send money between my EU bank accounts for a fee that is usually between 1-3 EUR and never more than that. The transactions take one bank day to clear in my experience.
Currently, the EU equivalent of Swish is being rolled out. It's called "SEPA Instant credit transfer" [2] and will work pretty much the same as Swish, except with coverage over the entire EU.
The money is insured [3] and faulty transactions can be reversed with due process in many cases. [4]
It's unfortunate you have to have these experiences with your banking system - it does not work like that all over the world, however.
Also: Can someone please enlighten me on what we need "the blockchain" here for?
[1]: https://medium.com/@etiennebr/swish-the-secret-swedish-finte...
[2]: https://www.europeanpaymentscouncil.eu/what-we-do/sepa-insta...
[3]: https://ec.europa.eu/info/business-economy-euro/banking-and-...
[4]: https://www.metro.se/artikel/det-h%C3%A4r-g%C3%A4ller-om-du-...
Wire transfers are instantaneous [1]. They cost pennies a transaction, a fee banks often cover if you have more than ~$15,000 with them. For smaller transfers, real-time P2P was recently rolled out across most American banks [2]. This was a result of competition from Venmo, which one could think of as a lightning network over ACH [3]. (The latter being Fedwire's net settled and thus slower but cheaper cousin.)
I did something similar a few days ago, and while it didn't take 3 days, it did take over a day.
They chose the cheap, safe option over the fast, risky one. I talked about the difference between net and real-time gross settlement in an earlier comment [1]. TL; DR There is a fundamental trade-off between mutability, speed and cost.
This is not a technology problem. Blockchain won't change either of these.
I'd imagine international transfers are slower proportional to the risk of security lapses when working with disparate organizations (and the difficulty in reversing mistakes.)
Blockchains might be more secure in principle than traditional banks, but blockchains are pretty much all designed so that a single key compromise amounts to a catastrophic failure. Now you can manage this by having manu wallets and many keys to some extent, but at the end of the day it's still much less reliable than just having a bunch of bankers who are paid to take their time and ensure sure all transfers are authorized.
There’s an effort to modernize ACH, but it’s still years away from wide rollout.
[0] https://payment21.com/blog/paper-check%E2%80%99s-death-began...
https://www.npr.org/sections/money/2018/01/10/576879734/epis...
All of that gets dragged in the mud with the giant financial sideshow running rampant through the industry. It's become enough at this point to overshadow the (very legitimate) academic research and engineering work put into blockchains for the last several years.
Bitcoin isn't meant to be efficient. It's meant to solve problems that (Satoshi believes) are vastly more important: decentralization, trustlessness, & inflation.
«The blockchain got distracted by finance.»
Payments are the perfect application found, so far, for the blockchain.
That statement really needs to be tempered with context.
For some relatively recent blockchains, and for particular tradeoffs that enhance transaction throughput over raw security guarantees, payments are a practical use case, yes. But of course, the parent was talking about Bitcoin, and Bitcoin is a miserable payments protocol.
There really shouldn't be any sentimentality to that second assertion. It's simply a poor currency according to the metrics of price volatility, transaction verification speed and transaction fees. If you redefine the ideal parameters of a payments protocol as trustlessness, permissionlessness and decentralization, then sure, it seems better. But then we're disagreeing on what constitutes a robust payments protocol according to normative statements, not positive ones. I think the only people who would agree Bitcoin constitutes a robust, practical payments protocol are those who really want its qualities in a payments protocol. But in the real world, companies like Stripe have very specifically and publicly abandoned it for their own alternatives.
I do think blockchains can be used as a payments platform, with the caveat that I think proof-of-stake based consensus and various throughput improvements (not lightning network) in other blockchains are the way forward for that use case. Stripe has invested in Stellar, Tendermint/Cosmos can scale up dramatically, etc. I also regard Bitcoin as a cultural landmark of exceptional importance because it inspired many follow-on innovations in research and engineering. However, for most practical applications, I consider Bitcoin to have failed (thus far) in its original goal as a payments protocol, and to be largely superseded in practice by various alternatives.
As you said: Bitcoin isn't designed to be efficient. But if payments were actually the "perfect" application for it, it would actually be efficient, because the utility of a currency becomes higher the more efficient it becomes (e.g. higher liquidity, higher stability, etc). As for blockchains in general, I don't think payments are really the perfect application for any of them, because I disagree that decentralization, permissionlessness or trustlessness are desirable qualities in a payments platform - each of those reduces efficiency, which leaves you with private blockchains that tradeoff one or more of those security guarantees. They can be used for this purpose, but I don't consider them ideal at the moment.
Rather, I think blockchains map well to solutions for hard cryptographic problems and fault-tolerant distributed systems.
Bitcoin critics like you always focus on temporary issues. All the points you list are either being solved or fundamentally solvable. It's like criticizing cars from the early 1900s and missing the point that, obviously, they, like Bitcoin, will improve over time. For example:
• Volatility: on the long term it's declining because markets are getting deeper https://mobile.twitter.com/lsukernik/status/8649208737189519...
• Transaction verification speed: new technologies like Lightning Network make them instant; even a 0-conf non-RBF transaction is relatively safe to accept instantly for most use cases (eg. certainly safer than a CC transaction which can be fraudulently charged back.)
• Transaction fees: solvable by off-chain technologies like Lightning, or by increasing the block size (Graphene or UTXO set commitments make this scalable).
And cars from the early 1900s may very well have been unsuitable to to the purposes for which they were employed in the early 1900s. You can't ask people to build their businesses and trust on a foundation that will "maybe" be poured "sometime" in the future.
You cherry-pick cars in the 1900s while failing to ignore all of the early 1900s technology that didn't succeed because there was no way to improve it. None of that was obvious then, either.
few things can do as much harm as an untrustworthy money system or say a damaged "rule of law" - both of which the western world struggles with right now.
we are plenty inefficient with many things (subsidies, war) but inefficiency isn't even in the same league as a broken (fraudulent) money system.
I am no fan of bitcoin, but here's some anecdata for you:
It takes five full business days for an ACH transfer to clear and become available between my bank and my brokerage.
BTC, for all its faults, can give you sufficient confirmation in about an hour. Many other cryptocurrencies, much faster than even this.
The blockchain got distracted by finance. Modern settlement and clearing is efficient. It's perhaps the most efficient part of the financial system; it is certainly the easiest to upgrade. The difficult stuff, the messy institutional knowledge, customs and tendencies, are unaffected by protocol choice. That's why the same behaviors which plagued the unregulated banking system plague cryptocurrency markets today. People are still people.
There are many systems which require a trusted group of people to reach a consensus in public. (Libor is an example [1]. Notaries appear, prima facie, to be in a similar category.) Immutability is of dubious benefit. But a simple, public consensus mechanism beats checking sundry private APIs and blog posts (how a lot of this is done today). Unfortunately, this class of use cases is negated by a "currency-like" token value.
[1] https://bitcoin.org/bitcoin.pdf
[2] https://en.wikipedia.org/wiki/Two_Generals%27_Problem
[3] https://www.investopedia.com/terms/l/libor.asp