Facebook's Libra Strategy - Deep-diving the Documents
By Matthew Hine
The reaction to Libra, Facebook’s proposed cryptocurrency, has been both passionate and widespread. Media pundits have suggested this is yet another sign of a Facebook out of control. Congress is frantically calling hearings. Banks have warned that Libra could impact global financial stability. Cryptocurrency enthusiasts have both denounced it as centralized, and praised it as a spearhead for cryptocurrency adoption.
Amidst the noise and posturing about a “Facebook coin”, the true scope and nature of Libra’s potential impact has been largely lost. Facebook has published a surprising amount of detail about Libra’s technology as well as the ecosystem being built around it. Reviewing those documents, a picture emerges of a project with a vision more similar to Ethereum than JPMorgan coin – but with a radically different approach than either. It has a silicon valley startup’s laser focus on user experience and MVP features, and is willing to compromise on crypto-libertarian ideals when they stand in the way of delivering that as directly as possible.
Here are three big conclusions that we can draw about the Libra strategy from what we know today:
Libra is much more than a cryptocurrency
Media coverage has focused primarily on the Libra coin - a cryptocurrency “stablecoin” backed by a basket of global currencies and low-risk investments. But Libra clearly aims to create a much more general purpose “smart contract” application platform with goals in step with the most idealistic of blockchains. From the Libra blockchain whitepaper:
“Access to financial services is still limited for those who need it most — impacted by cost, reliability, and the ability to seamlessly send money.
… [Libra] seeks to address these challenges, expand access to capital, and serve as a platform for innovative financial services.
… A key prerequisite for healthy competition and innovation in financial services is the ability to rely on common infrastructure for processing transactions, maintaining accounts, and ensuring interoperability across services and organizations. By lowering barriers to entry and switching costs, the Libra protocol will enable startups and incumbents to compete on a level playing field, and experiment with new types of business models and financial applications.”
The first element of that “common infrastructure” is a common currency of predictable value that is usable around the world by users and businesses. Libra coin is designed to fill that utilitarian role, rather than as a trading position on cryptocurrency exchanges as with today’s stablecoins.
The coin is only one piece of a “platform for innovative financial services” however. There must be a common transaction layer with scale and stability – and there must be an integrated and highly usable development environment where secure business logic can be easily built around Libra coin, as well as user-created tokens and assets.
To achieve this, Libra goes much further than just a stablecoin. It describes an ecosystem that includes a unique Libra blockchain protocol with a new blockchain-focused programming language, Move, and a unique governance structure, the Libra Association.
Governance is central to Libra’s approach
Although Libra has a vision that may be similar to that of many blockchain projects, their approach is very different, and initially relies more heavily on governance than technology.
Governance is a controversial topic in the blockchain world. The original Bitcoin vision was to avoid the abuses of the traditional financial system by establishing a new blockchain-based currency with absolute transparency and completely decentralized control. In this light, “governance” of a public blockchain reeks of centralization. Nonetheless, any blockchain network is ultimately made of self-interested individuals, and as billions of dollars have flowed into these networks governance has emerged among the parties in these open networks. Miners, developers, investors, and users have jockeyed for influence over blockchain policies leading to disruptive forks, unfocused technology roadmaps, and lack of confidence for businesses considering blockchain.
Rather than treating governance as an afterthought, Libra’s first action was to create a Libra Association with striking governance powers. Votes in this body have defining power over the Libra reserves, technology roadmap, budget, management of development and promotion, and in fact directly define the consensus that commits transactions to the Libra ledger. The Libra association is formed from a list of companies around the globe, each contributing $10M+ to the Libra “reserve” that creates the backing for the Libra token. And while it has the final say on what is committed to the Libra blockchain and how it is governed, that blockchain itself is open for anyone to use, build on, and – critically – audit.
In short, Libra takes a middle road between opaque, centralized banking and a radically open Bitcoin-style blockchain. It is permissioned, but not closed; more centralized than Bitcoin, but transparent.
This compromise provides striking advantages. Trusting known network operators makes it vastly easier to quickly build a secure blockchain platform that is fast, easy to use, and with powerful development capability; an organized governing body makes it vastly easier to build services like a universal stable-value coin backed by real currency reserves; and perhaps most importantly, an empowered decision-making structure of limited membership means that even sweeping changes to the platform can be made quickly and with minimal drama.
The Libra Association lets Libra “move fast and break things” – just how Facebook likes it. It allows Libra to focus totally on what users and businesses care about: user experience, ease of development, low cost, instant global reach, and wide adoption.
Libra’s Move programming language is potentially revolutionary
The Libra protocol described in its whitepaper is not particularly innovative and is full of known gaps to be filled and sections to be replaced wholesale with future research. It relies on its permissioned governance to sidestep otherwise sticky technical problems like throughput and sybil attack resistance.
The protocol’s unique features instead seem built primarily to support Move, a new programming language designed specifically for blockchain. Move isn’t just a convenient high level scripting language; it serves as the universal language of Libra. In just the launch form described in its whitepaper, Move’s usage includes:
Pre-built definition of the Libra coin and its supply control (driven by funds in/out of reserve)
Pre-built definition of the Association governance voting structure for transaction validation
Pre-built definition of a module for user-created tokens (which is also used by Libra coin)
User-created modules for arbitrary assets or business logic, available across Libra (Libra’s version of smart contracts)
All transactions conducted on Libra (using simple single-use Move scripts)
Virtually everything that makes Libra what it is, above the network/consensus layer, is implemented in Move – both built-in functionality and user-created applications. This universality is powerful because it means that (unlike Ethereum and most smart contract blockchains) the tools available to developers have the same security guarantees, performance, and interfaces as built-in functionality like Libra coin. It also further supports Libra’s ability to rapidly add and new functionality and evolve the platform in a move-fast-break-things manner.
Move itself is also an important step forward in blockchain development. Applications-oriented blockchains up to now have essentially taken one of two approaches that I term the EVM approach, and the API approach.
EVM blockchains (such as Ethereum) provide a general purpose “on chain” computing environment where any business logic can be implemented, but concepts such as “tokens” or other assets need to be created from scratch. This is powerful, but highly complex and risky when developing trust-critical applications.
API blockchains (such as NEM) package up the most commonly-needed blockchain functionality, such as creating and managing tokens, at protocol level and offer it directly through a simple API. This makes it tremendously easy and secure to use these API features, but means that more complex logic must be built “off chain” where it is not enforced by blockchain network consensus.
Libra again takes a middle ground with Move. Move is a general purpose “on chain” language, but designed for programmatic control of the kinds of assets that blockchain is good for. Blockchain’s fundamental advantage is managing scarce assets – such as Bitcoins – ensuring that they behave like real-world objects that can’t be copied, only transferred. Move, using a linear logic paradigm, simply defines such objects as a new data type: resources. Anything declared as a resource in Move – whether Libra coin, a utility token for a business, a shipment to be tracked, or the deed to a home – automatically behaves like a physical asset. Libra itself ensures resources cannot be copied, only moved, guaranteeing correct behavior.
Because Move is the universal language of Libra, this special treatment of resources is embedded in the way the Libra platform operates at a protocol level. This makes Move both more secure than the EVM approach and more flexible than the API approach. Given the automatic attention that Libra will draw, I think there is every chance that Move will be transformative to how developers think about blockchain development. Other platforms may start to look convoluted, risky, and static by comparison.
Libra embraces the “crypto” vision of accessible financial services with scale, value stability, and usable development – but with both governance and tech structured to allow the classic Facebook user-centric "move fast and break things" approach. Libra, in its initial form, is a true “minimum viable product” featuring 1) a usable stable value coin and 2) Move-based development platform that together immediately enable myriad business applications in payments and finance. From that starting point, the Libra platform may be rapidly iterated for adoption, tech maturation, and features, cherry-picking the best ideas from the rest of the blockchain world.
Libra takes a bold middle-ground between the two poles of the blockchain false dichotomy, ignoring the assumptions of both. It is neither fully decentralized as a hard prerequisite, nor is it a dumb database that fails to take advantage of DLT’s capabilities. The Libra Association’s governance and publicly-auditable ledger provides greater transparency and decentralization than traditional banking and finance, and Move provides an accessible way to create and manage “resources” in a way that should provide real advantages to business.
Libra is far from perfect however. Libra asserts that it intends to become more decentralized in time, but I remain skeptical; any such changes would require super-majority agreement between some of the world’s biggest incumbents. Ultimately this means that Libra will tend to favor their summed corporate interests rather than those of the common man – let alone the unbanked and disenfranchised – when profit is on the line. This is far from the full potential of blockchain.
Newer DLT technologies are on the horizon which promise all of the benefits of Libra but with both greater performance and greater accountability and it seems inevitable that we will see compelling alternatives to Libra and its ecosystem. Just as the internet didn’t reach its full revolutionary potential the way the early adopters wanted, nor as quickly, the revolutionary potential for blockchain will inevitably go through phases that the early adopters will consider anathema. Through this lens, Libra looks to be decisive step in the right direction, bringing practical use of blockchain and cryptocurrency to a mass audience of users and developers.