Cryptocurrency once again finds itself in mass media coverage this June, but not just over the price of Bitcoin. After being rumored for months, Facebook has finally confirmed that it intends to enter into the cryptocurrency market by introducing its own digital coin named Libra. The primary objective of Libra, as stated in the white paper available online, is to provide banking services to those around the world that do not have ready access to them. While that may sound familiar to Bitcoin and some other cryptocurrencies (although it was not the purpose that Bitcoin was created for) and is arguably their “killer feature”, the white paper points out that none have truly achieved the magnitude of mass adoption necessary because they have serious inherent issues with scalability and volatility, and there has always been an undercurrent of anti-authoritarian philosophy behind those projects that hindered fostering a cooperative relationship with regulators. Libra asserts that it can overcome all such issues by working closely with the financial sector and regulators instead, and it hopes to solve at least enough problems to launch in the first half of 2020. It is clear that the Libra Project is not lacking for ambition – this article will look into the currently available public information on Libra and analyze whether the project has the potential to succeed in bringing cryptocurrency worldwide where numerous altcoins and even Bitcoin itself have yet to achieve.
Currently, most of the active cryptocurrencies that has aspirations of widespread use as a form of currency emulate the Bitcoin model, which generally consists of a decentralized blockchain used as a ledger for recording transactions, which are confirmed and secured through a distributed consensus model (i.e., “mining”), and employ a specific hash algorithm for cryptographic challenge and verification, all of which enable transactions between two or more parties without relying on any intermediary. Furthermore, with very few exceptions, the asset itself is not backed by or based on any fiat money, cryptocurrency or any commodities, leaving it theoretically free from inflation. Bitcoin cites the above features, in particular the use of the blockchain to create a trustless system, as the key difference in decoupling the concept of “currency” from a specific country and/or financial institution(s), thereby allowing any person to partake in the system anywhere in the world that has a connection to the blockchain network. However, the Libra project intends to take the opposite approach.
To understand how Libra would still work as a cryptocurrency with such a different philosophy, it is important to know that all aspects of the Libra project, from maintenance of the network to working with regulators, will be governed by a single non-profit entity named the Libra Association. Currently comprised of 27 “Founding Members” and planned for expansion to 100 total, the Libra Association boasts of having several finance industry heavyweights already on board, such as Visa and Mastercard, as well as others in more specialized fields such as Coinbase for blockchain and cryptocurrency exchange, and Kiva, a microfinancing platform connecting lenders to provide online loans to entrepreneurs worldwide. Facebook, for its part, states that while it will play a leadership role for the Association in the beginning, it will ultimately have the same rights and powers as all other members. This extent of centralization for a cryptocurrency project that has similar goals to Libra is previously unheard of, since centralized management is in principle antithetical to the trustless system that many blockchain systems rely upon, but Libra has made it the linchpin for its proposed solutions to the mass adoption problem, as seen below.
To solve the volatility issue, Libra proposes to be a stablecoin, meaning that for each Libra in existence, there will be some form of low-volatility real assets, which can range from bank deposits in various fiat currencies and government bonds, that are held in a “Libra Reserve” that is managed by the Libra Association as a backing. In explaining this decision, Libra has likened the process to countries in the past employing a gold standard for its currency so as to instill trust in the value of the new national currency. For greater stabilization, Libra will only be created when they are purchased from the Association with fiat-backed assets, and destroyed only when those assets are redeemed. Finally, interest on the fiat reserve assets will go to cover the upkeep costs and paid out as dividends to the investors who provided capital to the project. In short, Libra’s solution to rein in volatility appears to be twofold: taking exclusive control of the creation and destruction of the currency, and providing a “crutch” by linking it to a very low-risk investment portfolio, which would need to be closely managed by (most likely the finance members of) the Libra Association.
It is fair to question why Facebook sees the need to make Libra into a cryptocurrency at all if so much control is deemed necessary to prevent volatility, as the (centralized) issuing of digital tokens for use over a digital platform is by now very pedestrian technology that does not in concept need to involve blockchain systems. While the Libra white paper shows that the Libra blockchain will eventually be more than just a simple ledger of Libra transactions, such as implementing “smart contracts” similar to Ethereum, Libra’s very different nature points to a need to make substantial changes to conventional blockchain setups to make it work properly before it can tackle the scalability problem as promised. In this connection, a short explanation of the scalability problem is appropriate.
As mentioned, in most cryptocurrency blockchains, the blockchain acts as a ledger for transactions, which are grouped into “blocks” of a set size (e.g., 1 MB per block for Bitcoin). Transactions are processed and “wrote” onto the blockchain in such block units through mining, but the speed of mining itself is also pre-determined so that no matter the mining hash power, each block is added to the blockchain over about the same period of time on average (e.g., 10 minutes for Bitcoin). A bottleneck is thus created if too many transactions occur at around the same time which cannot be squeezed into the next incoming block, thereby delaying some transactions for up to several blocks at a time; in fact, given the 1 MB block size, the Bitcoin blockchain is estimated to be capped at around only 7-10 transactions per second. Since neither the block size nor the average time of block creation can be easily varied without essentially starting a new blockchain, proponents of different solutions have been engaged in contentious infighting for some time over this issue, but no clear consensus solution has been reached.
Based on the white paper and other information provided by Libra so far, Libra intends to leverage its centralization to solve what it sees as the current issues affecting cryptocurrency blockchains. Although a detailed analysis of the technology underlying the Libra blockchain is out of the scope of this article, the key differences and features touted by Libra for its blockchain are as follows:
• Permissioned blockchain
Libra will initially run on a permissioned blockchain where the 27 Founding Members serve as validators. The term “permissioned” refers to whether “permission” is required to become a validator node for the blockchain. Bitcoin, Ethereum and almost every cryptocurrency runs on a permissionless system, so any person around the world may download the software for the relevant cryptocurrency and assist in the effort to validate ongoing transactions for recording on the blockchain. Permissioned blockchains, on the other hand, require approval from a central entity before access may be granted to become a validator for the blockchain. As expected, permissioned blockchains are often used in contexts where centralized control and internal privacy is desired, such as a blockchain storage system that is setup and used by a company for its internal operations. Where a permissionless blockchain must obtain a consensus from every validator, the much smaller group of validators for a permissioned blockchain means that it can generally operate faster and with less energy cost.
What does it take to become a validator node for Libra? Since a validator is currently equivalent to becoming a one of the Founding Members, the published requirements are extremely steep at the moment, and Libra warns that even applicants who meet those requirements may still be put on a “wait-list” after review. For example, general businesses that wish to become a validator must have more than US$1 billion in market value, reach over 20 million people a year in multiple countries, and is recognized as a top-100 industry leader by a third party industry-specific association or media company. For those in the cryptocurrency industry, public interest or academics sector, the requirements are adjusted to more specific achievements within that sector. Furthermore, prospective applicants must make at least a US$10 million investment in the network. Libra’s validator nodes, therefore, are expected to remain a highly exclusive membership for some time, and no information is provided as to the extent of information about the blockchain that would be made available to the public.
• Custom consensus protocol
A quintessential element of cryptocurrency is having consensus on the information in the blockchain; without such consensus, there would be no agreement as to what transactions took place, rendering the entire system useless.
To replace mining for the consensus mechanism among its small group of validators, Libra proposes a new Byzantine fault tolerance process called the “LibraBFT consensus protocol”. Byzantine fault tolerance (“BFT”) is a reference to the “Byzantine Generals Problem”, a thought experiment involving a group of “Byzantine generals” at different locations communicating with each other through messages in order to agree on a way to execute their next attack. The central issue thus concerns how separate entities may coordinate communications in order to reach an agreement on a decision and execute, when such communications may be improperly relayed, or when one or more actors convey a false message even though there was no problem with the communication reaching the recipient. Byzantine fault tolerance therefore refers to the mechanism(s) in place that prevents such phenomenon from happening.
There are a multitude of BFT solutions – any algorithm that allows consensus to be reached even when some actors are not working properly makes the system achieve BFT. The proof-of-work concept underlying mining for most cryptocurrencies is the most well-known BFT solution for blockchains, which works by linking consensus to completing a difficult task first, i.e., solving a mathematical puzzle. In short, to disrupt the consensus over the state of the blockchain, a bad actor would need to solve the puzzle before other honest actors, which becomes more likely depending on the proportion of computing power possessed by the bad actor. So the amount of effort increases multiplicatively if the bad actor wishes to alter more of the completed blocks because it would have to have enough computing power to solve the puzzles for all the previous blocks up to the current one before the honest actors can complete the current block. This makes altering consensus probability-based and directly related to the computational cost needed.
LibraBFT is stated to be an improved version of Hotstuff, a new protocol put forth by VMWare Research in 2018 that is itself based on practical BFT (“PBFT”). PBFT is a classic BFT consensus solution based on state machine replication, which means that a system state is replicated among all nodes to keep failures independent, and messages for verification are exchanged among the nodes over several rounds to progress toward consensus. Upon receiving an update request to the state from a client, a leader note tells all other nodes to complete the task on their replicated systems, the nodes (including the leader node) complete the update and respond back to the client, and the client waits until it has received the same results from at least n+1 nodes (where n is the maximum number of nodes that may be faulty), which becomes the new accepted update. A mechanism called “view-change” is also in place to switch up the leader among the nodes if the original leader is unresponsive after a timeout period. This protocol allows a consensus to always be reached as long as no more than one-third of the nodes are faulty. The big advantage of PBFT over proof-of-work is the avoidance of spending considerable time and energy to produce the work, while on the other hand, the exponential increase in the amount of messages that each node must pass to each other node (complexity of at least O(n)2) during the consensus process for each node added to the system means that PBFT has its own scalability issue, and it is best suited for systems with only a small number of nodes.
To put it in simple terms, the biggest improvements of Hotstuff over classical PBFT are the reduction of the aforementioned amount of messages to be communicated by making sure messages from nodes all go through the leader instead of all other nodes, and the other being incorporating the aforementioned view-change mechanism into the consensus process itself. This greatly reduces the complexity under classical PBFT and better maintains liveness of the blockchain. LibraBFT’s own enhancements to Hotsuff include its implementation of the “pacemaker” function, which further streamlines the leader node election process and the overall time of the current round, thereby further improving liveness. Libra anticipates the LibraBFT protocol to initially give the network a transaction rate of about 1,000 per second.
• No “blocks”:
Libra also intends to do away with the concept of blocks for the Libra blockchain; the transactions will be in the form of a single Merkle tree that validators continue to sign updates on. It is best to think of a Merkle tree as a way to represent a set of transaction data based on their cryptographic hash values, the primary benefit of which is to allow for efficient verification of a transaction. In typical blockchains, each block contains a single Merkle tree code (known as a Merkle root) by combining the hash values of all the transactions in that block, but for Libra, however, there will only ever be a single Merkle tree, with the root position called the authenticator that is based on the previous authenticator, which was replaced by the current authenticator upon the addition of new transaction(s) to the ledger. This means that although in a literal sense, Libra should not even be referring to its ledger as a blockchain since neither element is present, the concept of building upon the result of the previous state is still present with the authenticator as seen above.
• Custom programming language
Finally, Libra has a new language named Move for custom transactions and smart contracts on the Libra blockchain. The white paper explains that current blockchain application languages, particularly for Ethereum, have issues in how the underlying assets may be represented, and the controls in place regulating scarcity and access (i.e., an asset may only be spent once and only by the person owning that asset) are not sufficiently flexible. Move is therefore aimed at addressing those issues, in particular by allowing the definition of custom resource types, whether for Libra or some other digital asset, that are “first-class” in programming jargon, meaning they can be stored and passed around like variables, but those resources types can only be moved and never copied, and they can only be manipulated within the same code module that defined them. In short, Libra plans for Move to be the definitive smart programming language that improves upon existing deficiencies in Ethereum’s Solidity language. While Move at its current state is still quite a distance away from feature-complete, the potential for growth is apparent and may even become Libra’s greatest contribution to blockchain technology, depending on the comfort level third-party developers can achieve in using Move.
The Libra project’s technical aspects, to the extent documented and available to the public, are generally quite in-tune with the stated goals of the project and demonstrate a very high level of sophistication with respect to the current issues encountered by other cryptocurrency and its proposed solutions, which is expected given the level of expertise that the project has access to. A large part of this is because very little of the underlying technology is truly new – there are a number of stablecoins in the wild, permissioned blockchains are finding more applications for use in internal operations for many companies worldwide, and even though Hotstuff itself is a very recent development, PBFT consensus-based cryptocurrency has existed for some time. As such, barring any unforeseen failures in implementation, it should be unlikely for Libra to fail, at least in the initial stages, for reasons purely attributable to technology. On the other hand, the scale of the Libra project is also orders of magnitude greater than the existing projects with similar underlying technologies, and to its credit, Libra does recognize to some extent that its current form may not be the best technical solution for some of its stated objectives. A particular example is the project’s stated intention to start transitioning into a permissionless blockchain 5 years after the public launch so as to offer the greatest openness to its users, when almost every piece of technology it has selected are designed to work best with its current permissioned form, so a hard fork of the blockchain may be likely, which may lead to a whole host of other issues on how the project will be run.
The more pressing matter is that Libra would probably have not gotten as much attention as it did if it was not Facebook taking the lead. The 2019, post-Cambridge Analytica version of Facebook is facing greater business and reputational challenges than ever before, and its Libra announcement has stirred up strong political pushbacks worldwide, with officials in the US, France, Japan, Singapore, South Korea having all expressed serious concerns about Libra, and Facebook have already announced that Libra would not be offered in India due to regulations. The Libra project’s regulatory approval issues are a first of its kind because it has expressly stated its aspiration to provide banking services to the unbanked, and unlike Bitcoin, which has no entity that can be called upon for questioning, Facebook, as the leader and currently the only public-facing entity representing the Libra project, has made the project wide open for regulators to take aim at, so no government authority would let up the opportunity to closely scrutinize Libra when its success would likely cause an unprecedented level of disruption into the finance industry. Taking the US as an example, the Senate Committee on Banking, Housing and Urban Affairs had sent out a letter addressed to Facebook asking several preliminary questions about Libra’s compliance measures, and it, along with the House Financial Services Committee, have scheduled congressional hearings on Libra for July 16 and 17. Several other US House representatives, such as Maxine Waters, the Chairwoman of the House Financial Services Committee, have outright called for Facebook to halt all Libra development before the regulatory questions can be answered. Even as Facebook very recently provided reassurances in its response dated July 9 to the aforementioned Senate Committee’s letter, it has not been well received by the Senate Committee, given that it stated that it will be looking for “real answers” from Facebook at the upcoming hearing.
Even if some of the reactions may be more properly categorized as political grandstanding, Facebook’s plan of getting involved not only in providing financial services but also issuing money is clearly not lost even on politicians; there is a very real possibility that Libra may simply be denied access to a country due to the perceived risks regardless of how much effort Facebook puts in to show that it is willing to abide by whatever regulations may be placed upon it. So Facebook should expect a very tough crowd from whatever regulatory authority that has summoned it to appear and clarify its relationship to Libra, on top of the general difficulties encountered in explaining how cryptocurrency works to politicians.
Besides technical and regulatory challenges, there are also some practical questions that the Libra Project needs to answer:
1. Who is this really targeted to: It has been pointed out that for all of Libra’s statements on providing to the unbanked and focusing on the widespread use of smartphones, it is not clear that those people can actually benefit from Libra. Potential users may in principle be categorized into (i) individuals with less money living in a place where conventional banking is generally available but undesirable for one reason or another, (ii) individuals with money but living in a place with an unreliable or undesirable conventional banking system, or (iii) individuals with little money and living in a place with little to no conventional banking available. While (i), if living in first-world countries, may avoid additional costs in banking services and open up transaction opportunities online without a credit card, and (ii) may have a better storage of value for his/her liquid assets, there is no evidence that Libra could beat cash for their daily expenditures, and it is not even clear how Libra would improve the lives of (iii) at all. Worse yet, Libra may in some places have to compete with cashless services and/or mobile banking that are not based on cryptocurrency. In other words, the Libra project may need more convincing reasons to encourage people to try Libra.
2. How to obtain Libra: The white paper’s statement that Libra is only created when resellers pay for them with fiat assets appears to imply that Libra is dependent on resellers to increase in circulation and to get Libra into the hands of end users. While it makes sense for the Libra project to depend on resellers for offline access, in light that Libra’s target demographics are supposed to have little access to electronic payments, what is Libra’s overall plan to allow people to trade in cash for Libra? How will reseller activity be supervised, given the potential for abusive markup? A related point is whether Libra would be available to purchase with other cryptocurrency from exchanges, which will open up Libra to those that are already holding cryptocurrency and is vital for continued mass circulation.
3. Education and security: Cryptocurrency security has proved to be a challenge to maintain even for people well versed in technology, with usability often at odds with security. Given that the Libra Association is advertising itself as an alternative banking option and will be issuing both the coin and the wallet (through Facebook), failure to provide some form of PSAs on best practices in handling cryptocurrency to the general public is likely to result in a public relations and cybersecurity disaster, and even then it may still be difficult to disabuse the general public from the perception that the Libra Association can provide all the customer service that a conventional bank can, when certain restorative actions, such as reversing fraudulent transactions, are for all intents and purposes impossible for blockchains. In this connection, the Libra Association and Facebook in particular will also need to be prepared for legal disputes over security breaches, thereby setting precedents regarding the liabilities of blockchain owners.
To sum up, no cryptocurrency has ever had Libra’s prospects of having billions of potential users right off the bat, and if there exists a way to bring general understanding and acceptance of digital assets, wallets and other blockchain-based features into the general public around the world, the members of the Libra Association are among some of the most suited entities that can succeed in that front. Unfortunately, that may be about it for the good news on Libra at this time. No country will turn a blind eye to what is perceived to be a foreign threat to its banking system and national currency, and as mentioned, the fact that there is a face behind this announcement, and it is Facebook circa 2019 that is spearheading the effort, only served to galvanize regulators around the world to talk tough and demand answers. Even if deals are reached and Libra may be issued in certain key markets, there are too many unknowns to determine whether the Libra Association is ready for the unprecedented scale of operational issues that it will likely encounter. In any case, it may be worthwhile to observe whether the upcoming fight with regulators will cause the Libra Association to revise its stated goals in order to meet its planned launch date next year.