Live data from Hacker News

Facebook Libra Is Architecturally Unsound

stephendiehl.com

181–190 of 347 posts

Re: Facebook Libra Is Architecturally Unsound

#181
post #150
post #100

Earlier quoted context omitted.

I disagree that blockchain has almost no good use cases. All a blockchain is, is a Merkle tree with a third party that ensures there is only one “main line”. That’s the use case. All the other stuff — such as having all computers in the network watch every transaction — that’s the wasteful part. There are other ways to have a set of third party validators, that is a subset of the network watching a given merkle tree,…

> All a blockchain is, is a Merkle tree with a third party that ensures there is only one “main line”. No. The "wasteful part" is also part of the definition of the blockchain. Just because the word "blockchain" seems to describe only the data structure, doesn't mean that's the case. The innovation was to couple a Merkle tree with a proof-of-work system. Both existed before in standalone forms. The Merkle tree in man…

Blockchains are just a datastructure and proof of work is not a strict requirement. I believe the rising popularity of Proof of Stake blockchains will make that evident.

Re: Facebook Libra Is Architecturally Unsound

#182

> Not many people who work on financial infrastructure speak publicly about their work... This was a bit of a throw away line, but I found it insightful. As someone who isn't in this space, my question is: why is this? Is it contractual, or is that just not part of the space's ethos? Feels like we need to overcome this some how to achieve progress?

[deleted]

Re: Facebook Libra Is Architecturally Unsound

#183
post #154
post #134

Earlier quoted context omitted.

Because while the core innovation of blockchain is a trusted database a context without trust, the core benefit of blockchain is reduced transaction costs. A blockchain is a singleton global computer of program code and data. It turns out this is sufficient to represent capital (money) on that computer. In practice this results in dramatically reduced transaction costs. For example you can transfer money with an API…

> the core benefit of blockchain is reduced transaction costs. No, this is not true. It might incidentally currently be the case with, say, Bitcoin vs. $US, but there's nothing technical that inherently makes it so. In fact, as this article and countless others reiterate, from a technical perspective blockchain is almost always more costly.

Indeed. The main reason why a given bitcoin transaction might be cheaper is because nobody's checking to make sure it's actually legal.

It's the same reason why AirBnB is often cheaper: hosts don't pay business fees and don't follow other regulatory requirements like safety inspections.

Re: Facebook Libra Is Architecturally Unsound

#184

Earlier quoted context omitted.

> they could provide consumers (and authorities) a way to trace their products back to their origins, a capability that already would have saved several lives. Why would blockchain be required for that? In case of drugs and food there recalls are being done using batch number of day of production.

Suppose somebody named Mary wants to sell you a vape cartridge which has a serial number, and they also give your a website which accepts the serial number and tells you: > Joe runs the factory and gave this cartridge to Bob. Bob have it to Mary. The assumption is that if you buy it then the site will then say: > And Mary gave it to aiCeivi9 What reason do you have to believe that the website contents are accurate or…

[deleted]

Re: Facebook Libra Is Architecturally Unsound

#185

Earlier quoted context omitted.

That's an enormous burden. If we require lawsuits to enforce even minor cases of consumer protection, I argue that there is effectively no actual consumer protection.

The law not working for "minor cases" (which includes cases over hundreds of dollars) is exactly the failing of the justice system I mentioned. This isn't universal, in many places you can get theft of a Mars bar or possession of tiny amounts of drugs prosecuted very effectively, all cases much more minor than the typical credit card dispute.

So, rather than having a financial system with basic consumer protections (which would allow transaction reversals and contestation), you would prefer we have a criminal justice system which aggressively enforces and prosecutes minor offenses? I think there is a weak connection between the two, particularly since most situations where we do things like dispute a credit card charge are civil matters. And, as stated above, requiring civil suits for something like disputing a credit card charge is an enormous burden, and puts the burden on the consumer. (Which will also disproportionally affect the poor.)

Re: Facebook Libra Is Architecturally Unsound

#186
post #134

Earlier quoted context omitted.

Why would Coca-Cola need to use a block chain? They can run their own code on their own servers.

Because while the core innovation of blockchain is a trusted database a context without trust, the core benefit of blockchain is reduced transaction costs. A blockchain is a singleton global computer of program code and data. It turns out this is sufficient to represent capital (money) on that computer. In practice this results in dramatically reduced transaction costs. For example you can transfer money with an API…

The key in your explanation is "without any middlemen". It's really easy to build a system that lets you send tokens to other people with low transaction costs: just trust someone to run a central database of all the account balances. This is how you can trade Team Fortress 2 hats with virtually no fees or settlement time, for example.

What blockchain ostensibly allows you to do is create that system without having to trust anyone to run the central database. But why would Coca-Cola ever need to do this? There will always be a trusted central party who can maintain the Coca-Cola bottle production database: the Coca-Cola company itself.

Re: Facebook Libra Is Architecturally Unsound

#187
post #124
post #100

Earlier quoted context omitted.

I disagree that blockchain has almost no good use cases. All a blockchain is, is a Merkle tree with a third party that ensures there is only one “main line”. That’s the use case. All the other stuff — such as having all computers in the network watch every transaction — that’s the wasteful part. There are other ways to have a set of third party validators, that is a subset of the network watching a given merkle tree,…

I would go even more minimalist and claim that a blockchain is any distributed consensus on an immutable log

Surely byzantine fault tolerance is a requirement for a distributed immutable log to be considered blockchain?

Re: Facebook Libra Is Architecturally Unsound

#188
post #150

Earlier quoted context omitted.

> All a blockchain is, is a Merkle tree with a third party that ensures there is only one “main line”. No. The "wasteful part" is also part of the definition of the blockchain. Just because the word "blockchain" seems to describe only the data structure, doesn't mean that's the case. The innovation was to couple a Merkle tree with a proof-of-work system. Both existed before in standalone forms. The Merkle tree in man…

Blockchains are just a datastructure and proof of work is not a strict requirement. I believe the rising popularity of Proof of Stake blockchains will make that evident.

> Blockchains are just a datastructure

Again, wrong.

> proof of work is not a strict requirement. I believe the rising popularity of Proof of Stake blockchains will make that evident.

I thought for a second whether I should include PoS and other schemes, but decided (wrongly) that nobody would try to squeeze imaginary internet points out of being willfully misunderstanding.

But so be it: proof of stake is a different mechanism that fulfills the same role as proof of work in blockchains.

Re: Facebook Libra Is Architecturally Unsound

#189
This is a well-written post, although obviously carrying some confirmation bias against the idea of a cryptocurrency.

I'm also obviously biased, but if people are interested in my opinion (and only my own) here it goes.

> Libra’s byzantine tolerance on a permissioned network is an incoherent design.

There are two aspects here that the author seems to forget:

* The next best system, that a consortium of very different companies (think from different countries) would agree to run together is probably a protocol like Certificate Transparency which would be too slow and would have no mechanism to prevent double spending. If you're not doing this, then you're probably using a protocol that doesn't tolerate faults and the first time you have a fault your protocol collapses. There's probably a reason that Venmo cannot talk to Paypal which cannot talk to Square.

* Libra will eventually move to a permissionless setting, which means it has to be designed from scratch to support this evolutionary change. You can agree or not with this, but this is the way it was planned.

> Libra HotStuff BFT is not capable of achieving the throughput necessary for a payment rail.

Two things again:

* The number of people in the world who uses GBP vs the number of people who will use Libra at launch is probably not comparable. This means that Libra will be perfectly fine to carry the load for a number of years.

* Current research has shown that the largest throughput improvements are hidden in layer 2. If you don't know what layer 2 is: basically you do transactions off-chain, with whatever protocol you have, and only sometimes do you confirm the current state on the chain.

> Libra’s Move language is not sound.

I believe the type checking (and other checks) are done by the VM, (but that's not my domain so I might be wrong). Indeed, why would you trust the compiler to do the right thing?

> Libra’s cryptography engineering is unsound.

There are two things in this section that are completely wrong:

* No, dalek is not the "wild west” and is actually written by some of the few people who you could trust to write such a library. Yet, audits are planned. Also: we do actually use formally verified code! We have integrated fiat-crypto (a formally verified library, not a cryptocurrency :D) into dalek in order to use formally verified field operations.

* Neither do we use VRFs, bilinear pairings, and threshold signatures (they are just experimentations at this point) nor are these new tools or techniques. I don't have to say much at this point but I would take the author "It should be assumed this entire crypto stack is vulnerable to a variety of attacks" with a huge grain of salt.

> Libra has no capacity for consumer protection mechanisms.

Of course, it is a financial backbone, not a financial service.

Re: Facebook Libra Is Architecturally Unsound

#190
post #42
post #36

Aside from perhaps lack of developers / competency, I wonder why central banks don't issue digital currencies themselves? Mark Carney (current Bank of England governor) has been warming up to the idea - https://www.theguardian.com/business/2019/jun/20/mark-carney... Not sure if that because he is setting himself up for a new job at Libra after his BoE gig finishes in 2 months, or is there merit to the idea and appeti…

> Aside from the perhaps lack of developers / competency, I wonder why central banks don't issue digital currencies themselves? Why would they though ? I can transfer money worldwide in a few hours for very little fees already. Normal currencies are good for 99.99% of use cases. Aren't most currencies already mostly digital, they're literally integers in databases around the world, most of it isn't backed by any phys…

I can think of a few reasons

1) Geopolitical - if there was a widely accepted, regulated global currency that is relatively non-volatile, pegged on a basket of assets, I think many countries would gladly do cross-border trade in that rather than USD. I don't think Libra will be it, because it's perceived as being Facebook coin. But an effort from central banks could be it.

2) mainstream programmable money doesn't really exist, neither do microtransactions, or access to the financial system for many of the world's poor

Post reply on HN