Facebook’s Libra Cryptocurrency: A Technical Deep Dive
Facebook announced Tuesday that its highly anticipated cryptocurrency, Libra, will run on a blockchain network secured at launch by 100 distributed computer servers, or nodes. Twenty-eight node-running members are currently on board.
The Libra blockchain will go live in 2020, with the Libra Association – a Switzerland-based non-profit – tasked with leading the cryptocurrency’s ongoing development. In a white paper released Tuesday, the organization detailed how the Libra blockchain will be Byzantine fault-tolerant, meaning faulty behavior by some of the actors in the network will not compromise the security of the broader network.
It states:
“[The Libra blockchain makes] it extraordinarily difficult for an attacker to compromise 33 separately run nodes that would be required to launch an attack against the system.”
All initial nodes tasked with validating transactions in the network will be run by “Foundation Members.” The group of 28 founding members includes the likes of Visa, Mastercard, Coinbase, PayPal, Uber, Lyft and others, which are each investing around $10 million to join the consortium.
This contrasts with the more open approach of public blockchains like bitcoin or ethereum, in which anyone in the world can dedicate the computing power necessary to validate the network’s transaction history. However, Libra’s node participation will eventually open up to everyone.
“In the initial version of the system, only founding members will be able to be a node that participates in the consensus algorithm,” Ben Maurer, Facebook’s blockchain technical lead, explained to CoinDesk in an exclusive interview, adding:
“Over time, it’s designed to transition the node membership from these founding members who have a stake in the creation of the ecosystem to people who hold Libra and have a stake in the ecosystem as a whole.”
Elsewhere in its announcement, Facebook noted how it intends to work alongside the existing financial system. For example, it noted specifically the regulatory issues of other blockchain products.
As more nodes are added, Facebook says Libra will become more fully decentralized.
“The Libra ecosystem is diverse – the organizations that make up the pool of validator nodes are from a variety of industries and sectors and will be located in different places around the world,” the white paper states. “This will create a strong and distributed infrastructure, which will increase resiliency and ensure the validator nodes are not subject to common influence or attack.”
On Tuesday, the Libra Association published documents detailing the full cryptocurrency project, one in which Facebook played a “key role” in hatching. The aim of the Libra project as detailed in the white paper is to create a “more accessible, more connected global financial system.”
Moving forward, Facebook is expected to maintain a leadership role over the initiative in 2019 but decision-making authority will ultimately rest with the non-profit Libra Association.
New programming language
Perhaps most notable of the project’s technical specs is that Facebook has built a dedicated computer programming language called “Move” to run its new Libra blockchain.
“The reason why we built our own language is that we want to really focus on the flexibility of the blockchain over time,” Maurer told CoinDesk, adding:
“One of the key ways to do that is by having programmability inside of the blockchain. If you want to take advantage of new functionality or new techniques, you don’t have to wait for the entire network to upgrade.”
Facebook’s reason for creating a whole new language is to remedy the shortcomings of existing blockchains, Maurer explained.
“In existing blockchains, there are a lot of issues with writing code securely,” he said. “The Move language is built with safety being a key principle of the design.”
According to a source with knowledge of the development process, clues to the technical implementation of the system could be found prior to Tuesday in Facebook’s February acquisition of Chainspace, a startup formed by a group of blockchain engineers at University College London.
“If you look at the stuff George Danezis and the technical team wrote on payment systems on the Coconut protocol, you will get a good flavor of some of the things they [Facebook] are looking to do, and the scale they are looking to do it at,” the source said, referring to an August 2018 white paper on the smart-contract protocol.
Danezis, as well as Chainspace’s Shehar Bano and Alberto Sonnino, all work at Facebook now and are listed as signatories on the Libra white paper.
Privacy and security
At launch, the Libra Blockchain will require its members to be responsible for spinning up nodes that connect, participate and ultimately secure the Libra network.
These founding members include payments giants Mastercard, PayPal and Visa, as well as tech majors like eBay, Lyft, Spotify and Uber.
Staking startup Bison Trails is one of several crypto companies involved in the foundation.
Speaking to the roster of current partners, Bison Trails CEO Joe Lallouz told CoinDesk:
“One of the most impressive things, to me, about this project is how thoughtful they’ve been about truly making it distributed. Bringing on lots of partners to make sure there isn’t any centralization of decision-making or governance.”
All these organizations will have to ensure the software and hardware they are running for the Libra network is “independent” from all other internal company systems, the white paper states.
In addition, these nodes while validating and committing transactions to the Libra blockchain will not store any data on a user’s real-world identity. Instead – following the example of traditional blockchain networks such as bitcoin – information about the users of the system will be restricted to their public alphanumeric blockchain addresses.
“Transactions do not contain links to a user’s real-world identity,” says the Libra white paper. “This approach follows the norm of pseudonymous transactions adopted by other major blockchains. This approach is familiar to many users, developers and regulators.”
‘Early-stage code’
“Move is designed to make it safe to write programs that manage Libra assets,” the white paper states.
Even so, the Libra Association is eager to have the Libra Blockchain and all its associated tooling fully inspected and secured by the broader public before its hopeful mainnet launch in the first half of 2020.
As such, the Libra Association has released “early-stage code” under a permissive and free software license by the Apache Software Foundation.
“This testnet will help us gather feedback from the community about the direction of the project and work toward ensuring a scalable, reliable and secure launch,” the Libra Association said.
To this, there will be a supplementary bug bounty program sponsored by the non-profit in partnership with cybersecurity company HackerOne to financially motivate researchers and developers in uncovering any hidden security and privacy vulnerabilities in the open-sourced code.
Speaking to the global motivations of not only the broader Libra project but this bug bounty program specifically, the Libra Association said:
“The Libra Association is a global effort and so is the Libra Bug Bounty Program. We will be globally inclusive as we promote researcher contributions from all over the world and host bug bounty events in diverse locations.”
Leigh Cuen and Zack Seward contributed reporting.
Tools image via Shutterstock