{"id":13422694,"url":"https://github.com/openblockchains/awesome-diem","last_synced_at":"2025-04-12T10:33:08.087Z","repository":{"id":52979694,"uuid":"104585354","full_name":"openblockchains/awesome-diem","owner":"openblockchains","description":"A collection about all things Diem (formerly Libra), Move \u0026 Facebook Zuckerbucks - Let's reinvent money with fast and cheap world-wide transfers; let's bank the 1.7 billion unbanked, ...","archived":false,"fork":false,"pushed_at":"2021-05-13T16:23:57.000Z","size":2286,"stargazers_count":61,"open_issues_count":0,"forks_count":25,"subscribers_count":11,"default_branch":"master","last_synced_at":"2024-05-20T00:21:45.127Z","etag":null,"topics":["awesome","awesome-diem","awesome-libra","blockchain","contracts","diem","facebook","libra","move","novi"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openblockchains.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-09-23T17:19:36.000Z","updated_at":"2023-08-08T02:27:19.000Z","dependencies_parsed_at":"2022-09-08T01:10:20.082Z","dependency_job_id":null,"html_url":"https://github.com/openblockchains/awesome-diem","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openblockchains%2Fawesome-diem","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openblockchains%2Fawesome-diem/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openblockchains%2Fawesome-diem/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openblockchains%2Fawesome-diem/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openblockchains","download_url":"https://codeload.github.com/openblockchains/awesome-diem/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223510288,"owners_count":17157306,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["awesome","awesome-diem","awesome-libra","blockchain","contracts","diem","facebook","libra","move","novi"],"created_at":"2024-07-30T23:00:50.564Z","updated_at":"2024-11-07T12:12:01.177Z","avatar_url":"https://github.com/openblockchains.png","language":null,"readme":"A collection about all things Diem (formerly Libra), Move \u0026 Facebook Zuckerbucks - Let's reinvent money with fast and cheap world-wide transfers; let's bank the 1.7 billion unbanked, ...\n\n# Awesome Diem (formerly Libra) and Move\n\n_Moving money around the world should be as easy and cheap as sending a text message (or a photo)._\n\n\n## Best Diem (formerly Libra) Book of the Year 2020 Award Goes To...\n\n\n\u003c!-- todo/fix: check how to make image float left\n    kramdown-style attribute list no longer work on github?! e.g.\n    ![](i/libra-shrugged.png){: style=\"float: left\"}\n  --\u003e\n  \n![](i/libra-shrugged.png)\n[**Libra Shrugged: How Facebook Tried to Take Over the Money**](https://davidgerard.co.uk/blockchain/libra/) \nby David Gerard, November 2020, 182 Pages --\n_Introduction: Taking over the money  ++\nA user's guide to Libra   ++\nThe genesis of Libra: Beller's blockchain ++\nTo launch a Libra: Let’s start a crypto  ++\nBitcoin: why Libra is like this  ++\nThe Libra White Papers  ++\nBanking the unbanked  ++\nThe Libra Reserve plan and economic stability ++\nLibra, privacy and your digital identity  ++\nThe regulators recoil in horror  ++\nDavid Marcus before the US House and Senate ++\nJuly to September 2019: Libra runs the gauntlet  ++\nOctober 2019: Libra's bad month  ++\nMark Zuckerberg before the US House  ++\nNovember 2019: The comedown  ++\nCentral bank digital currencies  ++\nEpilogue: Libra 2.0: not dead yet  ++\nAppendix: 2010–2013: The rise and fall of Facebook Credits_\n\n\n\n\n## What's News?\n\n[**Goodbye Switzerland, hello United States. Facebook's Diem is moving its stablecoin project to the U.S.**](https://mashable.com/article/diem-stablecoin-us/), Mashable, May 13, 2021, -- _The project isn't even Swiss-based anymore, as Diem's primary operations are being moved from Switzerland to the United States. Diem Association announced it has partnered with U.S.-based Silvergate Capital Corporation, whose Silvergate Bank will be the exclusive printer of the upcoming (private) Diem Dollar (≋USD) stablecoin. [...] Diem is also withdrawing its application for a payment system license from the Swiss Financial Markets Authority (FINMA). The company's plans \"take the project fully within the US regulatory perimeter and no longer require a license from FINMA,\" says Stuart Levey, Chief of Diem (formerly Libra) Association. [...] Diem is planning to print a first small-batch of its (private) Diem Dollars (≋USD) stablecoin sometime in 2021._ \n\n[**[Libra is now Diem! New chiefs hired for launch in 2021!]**](https://www.diem.com/en-us/updates/diem-association/), Diem (formerly Libra Association) Press Release, December 1, 2020 -- _The Libra Association announces \nthe adoption of a new name and the recruitment of key [chief] executives, reinforcing [with smoke and mirrors] its organizational independence [from Facebook]._\n\nQ: Why the name change?\n\n\u003e A: \"The original [Libra] name was tied to an early iteration of the project that received a difficult reception\n\u003e from regulators. We have dramatically changed that proposition [humbly starting with printing (private) Diem Dollars (≋USD) only on an invite-only (private) network.\", \n\u003e says [Stuart Levey, Chief of Diem (formerly Libra) Association](https://www.reuters.com/article/facebook-cryptocurrency-int-idUSKBN28B574)\n\n\n[**Facebook's Libra may launch January 2021, with US dollars only - what this means**](https://davidgerard.co.uk/blockchain/2020/11/27/facebook-libra-may-launch-january-2021-with-us-dollars-only-what-this-means/) - \nby David Gerard, November 2020 -- _There will only be a US dollar token running on the network — no EUR or GBP, no synthetic Libra currency;\nFacebook's Novi (formerly Calibra) wallet is ready as a product, to be released in the US and some Latin American countries - \"high-volume remittance corridors\"; no date as yet, though Facebook hopes for January 2021_\n\n\n\n## Diem (formerly Libra)\n\nweb: [`diem.com`](https://www.diem.com) (formerly ~~`libra.org`~~)\n\nQ: Why is it called Libra? A: The Libra name was inspired by \n(1) Libra the [Roman unit of weight measure](https://en.wikipedia.org/wiki/Ancient_Roman_units_of_measurement), which was eventually used to mint coins. \n(2) Libra the astrological symbol is the balance of justice, and\n(3) Libra phonetically sounds like libre, which is French for free or freedom.\nThe Libra name is a combination of money, justice, and freedom.\n\nQ: Why is it called Diem? A: Diem stems from the famous latin phrase 'Carpe Diem' translating to\n'Enjoy the present, make the most of today', a common mistranslation is 'Seize the Day' (according to [Carpe diem @ Wiktionary](https://en.wiktionary.org/wiki/carpe_diem)). \n\n\u003e Carpe is the second-person singular present active imperative of carpō \"pick or pluck\" used by Horace \n\u003e to mean \"enjoy, seize, use, make use of\". Diem is the accusative of dies \"day\". \n\u003e A more literal translation of carpe diem would thus be \"pluck the day as it is ripe\" - that is, enjoy the moment. \n\u003e It has been argued by various authors that this interpretation is closer to Horace's original meaning\n\u003e\n\u003e -- [Carpe diem @ Wikipedia](https://en.wikipedia.org/wiki/Carpe_diem)\n\n\n\n## Historic - Libra Version 1.0 - Anno June 2019\n\nThe Official (Historic) Libra White Paper (V1.0), [PDF Download (~600k, 12 Pages)](https://github.com/openblockchains/blockchain-whitepapers/raw/master/libra.pdf) \n\n\u003e Libra's mission is to enable a simple global currency and financial infrastructure that empowers billions of people.\n\u003e\n\u003e This document outlines our plans for a new decentralized blockchain, a low-volatility cryptocurrency, \n\u003e and a contract platform that together aim to create a new opportunity for responsible financial services innovation.\n\n**Currency / Money**\n\n\u003e Libra's goal: A stable cryptocurrency built on a secure and stable open-source blockchain, \n\u003e backed by a reserve of real assets, and governed by an independent association.\n\u003e\n\u003e (Source: Libra White Paper (V1.0))\n\nLibra is a stable coin backed by a basket of (four?) currencies (USD, EURO, GBP, JPY), \nand US Treasury securities in an attempt to avoid volatility (and speculation). \nFacebook has announced that each of the (100?) partners will stake an initial US$10 million, so Libra is backed by US$1 billion of solid currency, on the day it opens.\n\n(Source: [Libra (cryptocurrency) @ Wikipedia](https://en.wikipedia.org/wiki/Libra_(cryptocurrency)))\n\n\nQ: What's a Microlibra? What's the smallest Libra subunit? \n\nA: Libra can be broken into 1 million smaller units, that is, 0.000001 Libra (six digits).\nThe official name for the smallest 0.000001 Libra unit is Microlibra. \n\n\n**Libra Rerseve**\n\n- The Official (Historic) Libra Reserve White Paper (V1.0), [PDF Download (~40k, 4 Pages)](https://github.com/openblockchains/blockchain-whitepapers/raw/master/libra-reserve.pdf)\n\n\u003e Q: What are the actual assets that will be backing each Libra coin? A: The actual assets will be\n\u003e a collection of low-volatility assets, including bank deposits and government securities in currencies\n\u003e from stable and reputable central banks. As the value of Libra will be effectively linked to a basket\nof fiat currencies, from the point of view of any specific currency, there will be fluctuations in the\nvalue of Libra. The makeup of the reserve is designed to mitigate the likelihood and severity of these\nfluctuations, particularly in the negative direction (i.e., even in economic crises). To that end, the\nabove basket has been structured with capital preservation and liquidity in mind. On the capital\npreservation point, the association will only invest in debt from stable governments with low default\nprobability that are unlikely to experience high inflation. In addition, the reserve has been diversified\nby selecting multiple governments, rather than just one, to further reduce the potential impact of such\nevents. In terms of liquidity, the association plans to rely on short-dated securities issued by these\ngovernments, that are all traded in liquid markets that regularly accommodate daily trading volume\nin the tens or even hundreds of billions. This allows the size of the reserve to be easily adjusted as\nthe number of Libra in circulation expands or contracts.\n\n\n**Mint \u0026 Burn Libras**\n\n\u003e The Libra Association is the only party able to create\n\u003e (mint) and destroy (burn) Libra. Coins are only minted when authorized resellers have purchased those coins\n\u003e from the association with real assets to fully back the new coins. \n\u003e Coins are only burned when the authorized\n\u003e resellers sell Libra coin to the association in exchange for the underlying assets. \n\u003e Since authorized resellers will always be able to sell Libra coins to the reserve at a price equal to the value of the basket, \n\u003e the Libra Reserve acts as a \"buyer of last resort.\" \n\u003e\n\u003e (Source: Libra White Paper (V1.0))\n\n\n**Digital Identity (Id)**\n\n_Open Identity (Id) Standard_\n\n\u003e An additional goal of the Libra association is to develop and promote an open identity standard.\n\u003e We believe that decentralized and portable digital identity is a prerequisite to financial inclusion and competition.\n\u003e\n\u003e (Source: Libra White Paper (V1.0))\n\n\n\n## Historic - Libra Version 2.0 - April 2020 Update (Nine Month Later)\n\nThe Official (Historic) Libra White Paper (V2.0), [PDF Download (~1,300k, 29 Pages)](https://github.com/openblockchains/blockchain-whitepapers/raw/master/libra-v2.pdf) \n\n\u003e Note to readers: The first Libra Association white paper was published in June 2019. \n\u003e This new Libra Association white paper, published in April 2020, \n\u003e is intended to be a stand-alone update regarding the plans of the Libra Association. \n\u003e Additionally, supporting technical papers also published in June 2019 have been edited or retired.\n\u003e\n\u003e (Source: Libra White Paper (V2.0))\n\nQ: What's changed?\n\n\u003e A: \"Most notable evolutions are:\n\u003e\n\u003e a) the creation of single currency stablecoins, \n\u003e e.g. ≋USD, ≋EUR, ≋GBP, in addition to Libra Coin (≋LBR), \n\u003e which will now be a Move blockchain contract \"stitching\" together \n\u003e fixed nominal weights of underlying stablecoins. \n\u003e\n\u003e b) a comprehensive network-level system around anti-money laundering (AML), \n\u003e combatting the Financing of Terrorism (CFT), \n\u003e and sanctions enforcement.\n\u003e\n\u003e c) replacing the originally planned transition to a permissionless [public] form of [blockchain]\n\u003e governance to a market-driven open and competitive [private invite-only] network [managed by Facebook].\n\u003e\n\u003e d) building stronger protections into the design of the Libra Reserve \n\u003e to protect consumers, even in the most adverse [bank run can-I-get-my-money-back] \n\u003e situations.\",\n\u003e\n\u003e says [David Marcus (Head of Novi @ Facebook Financial)](https://twitter.com/davidmarcus/status/1250786163964559360)\n\n\n\n## Diem - December 2020 Rename\n\n_Libra is Now Diem!_\n\n[The Official Diem White Paper](https://diem.com/en-US/white-paper)\n\n\u003e Note to Readers: On December 1, 2020, the Libra Association was renamed to Diem Association. \n\u003e This white paper, originally published by the Libra Association in June 2019 and then re-issued as a stand-alone update in April 2020, \n\u003e replaces previous versions published by the Association.\n\u003e\n\u003e (Source: Diem White Paper)\n\n\n\u003c!-- todo - still linking to \"old\" unchaged libra v2.0 pdf \n  [PDF Download (~1,300k, 29 Pages)](https://github.com/openblockchains/blockchain-whitepapers/raw/master/diem.pdf)\n   keep link - why? why not?\n--\u003e\n\nOfficial Learn Diem Frequently Asked Questions (FAQs) and Answers:\n\n\u003e Q: What is the Diem payment system?\n\u003e\n\u003e The Diem payment system incorporates three aspects that work together to create a financial system: \n\u003e 1) A secure, scalable, and reliable blockchain as the backbone of the payment system; \n\u003e 2) Diem Coins that are backed by a reserve of assets made up of cash or cash equivalents and very short-term government securities; and \n\u003e 3) Governance by the Diem Association and its subsidiary Diem Networks, tasked with developing and operating the payment system.\n\u003e\n\u003e Q: What are Diem Coins?\n\u003e\n\u003e Diem Coins are single-currency stablecoins (e.g., ≋USD, ≋EUR, and ≋GBP) \n\u003e and a multi-currency coin (≋XDM) supported on the Diem payment system.\n\u003e\n\u003e Q: What is a Diem single-currency stablecoin?\n\u003e\n\u003e A: Diem single-currency stablecoin (e.g., ≋USD, ≋EUR, and ≋GBP) \n\u003e is a (private) crypto currency that has a 1:1 face value to a (public) national currency (USD, EUR, and GBP)). \n\u003e Diem single-currency stablecoins will be fully backed by the Diem Reserve, \n\u003e consisting of cash or cash equivalents and very short-term government securities \n\u003e denominated in the same national currency (USD, EUR, and GBP) as the stablecoins.\n\u003e\n\u003e Q: What is a Diem multi-currency coin (≋XDM)?\n\u003e\n\u003e A: ≋XDM is a (private) world crypto currency composed of the major single-currency stablecoins (e.g., ≋USD, ≋EUR, and ≋GBP)\n\u003e available on the Diem network for use in world-wide cross-border settlements or \n\u003e as an alternative (private) currency replacing the unstable, high-inflation (public) national currency \n\u003e leading to (\"Diem-ization\" instead of \"Dollar-ization\") \n\u003e for people and businesses in almost all countries \n\u003e that will never have a single-currency stablecoin on the Diem network.\n\u003e\n\u003e Q: How can I get Diem Coins?\n\u003e\n\u003e A: We expect most users will be able to buy Diem Coins through exchanges that list Diem Coins \n\u003e or through the applications that will be built on the Diem Blockchain, \n\u003e including digital wallets and other financial products and services.\n\u003e\n\u003e Q: How can I use Diem Coins?\n\u003e\n\u003e A: Diem Coin holders can use Diem Coins for everyday use to pay for goods and services \n\u003e (if big if accepted by the seller), \n\u003e send Diem Coins to other users, or cash out the Diem Coins back into the local (public) national currency.\n\n\n## Org\n\nDiem (formerly Libra) Association, Switzerland, Quai de l'Ile 13, Gèneve 1204.\n\n\u003e The Diem (formerly Libra) Association is a [self-proclaimed] independent membership organization [setup, financed and managed by Facebook], \n\u003e headquartered in Geneva, Switzerland.\n\n\u003c!-- break --\u003e\n\n- Diem Assocciation Org Page - [`diem.com/association`](https://www.diem.com/en-us/association)\n- Diem Assocciation Updates - twitter: [`@DiemAssociation`](https://twitter.com/DiemAssociation) \n\nWhat's News?\n\n- On December 1, 2020, the Libra Association was renamed to Diem Association. \n\nOfficial Learn Diem Frequently Asked Questions (FAQs) and Answers:\n\n\u003e Q: What is the purpose of the Diem Association?\n\u003e\n\u003e The Association's purpose is to govern\n\u003e the Diem network and Diem Reserve; oversee the operation and evolution of the Diem payment system; \n\u003e help [Facebook] building services on top of the Diem Blockchain in a safe and compliant manner; \n\u003e and establish grant-making for banking the 1.7 billion unbanked.\n\n\n**Are We Decentralized Yet?**\n\nLibra V1.0 - Anno June 2019\n\nThe Official (Historic) Libra Roadmap White Paper from Permissioned (Members-Only) to Permissionless (Public) Blockchain, [PDF Download (~50k, 5 Pages)](https://github.com/openblockchains/blockchain-whitepapers/raw/master/libra-governance.pdf)\n\n\u003e We believe that for the Libra network to achieve its full potential, it needs to be permissionless.\n\u003e As a result, one of the association's directives will be to work with the community to research and implement\n\u003e this transition, which will begin within five years of the public launch of the Libra Blockchain and ecosystem.\n\nLibra V2.0 Update - Nine Month Later in April 2020\n\n\u003e \"Most notable evolutions are:\n\u003e ... replacing the originally planned transition to a permissionless [public] form of [blockchain]\n\u003e governance to a market-driven open and competitive [private invite-only] network [managed by Facebook].\",\n\u003e says [David Marcus (Head of Novi @ Facebook Financial)](https://twitter.com/davidmarcus/status/1250786163964559360)\n\n\n\n## Code\n\n\u003e The Diem Blockchain is open source. We're working to build a trusted and innovative financial network \n\u003e that empowers people and businesses around the world. \n\u003e\n\u003e -- [Diem Developers](https://twitter.com/diemdevelopers)\n\ngithub: [`diemassociation`](https://github.com/diemassociation)  (formerly [`libra`](https://github.com/libra))\n\n- Diem (formerly Libra) Core / Testnet Client, github: (formerly [`libra/libra`](https://github.com/libra/libra))\n\n\n\n## Developers, Developers, Developers\n\nDiem Developer Website HQ - [`developers.diem.com`](https://developers.diem.com)\n\nCommunity\n\n- Diem Discussion Forum - [`community.diem.com`](https://community.diem.com)  (formerly ~~`community.libra.org`~~) \n- Diem Dev / Tech Updates -  twitter: [`@diemdevelopers`](https://twitter.com/diemdevelopers)   (formerly ~~`@libradev`~~)\n- Diem Dev / Tech Blog - [`developers.diem.com/blog`](https://developers.diem.com/blog/)  (formerly ~~`developers.libra.org/blog`~~)\n\nWhat's News?\n\n\u003e \"The Diem Developers website is live with a bundle of goodness.\n\u003e Featuring a reference wallet, tools for merchants, Move components, and more!\",\n\u003e says [David Marcus, Facebook, \n\u003e Head of Novi (formerly Head of Calibra)](https://twitter.com/davidmarcus/status/1333862686891802624), December 1, 2020\n\nFrom the Diem Forum post [\"Libra is now Diem\"](https://community.diem.com/t/announcement-libra-is-now-diem/3282): \n\n\u003e **New Developer Site** -\n\u003e We've restructured our developer website, written in-depth tutorials, and added tons of new documentation. \n\u003e Check out the new Diem Documentation site [`developers.diem.com`](http://developers.diem.com/)\n\u003e\n\u003e **Reference Projects** - \n\u003e We've built two new interactive projects that are now ready to test:\n\u003e\n\u003e 1) Reference Wallet ([`developers.diem.com/reference-wallet`](https://developers.diem.com/reference-wallet/)) - \n\u003e Set up an account, transfer funds in and out of the wallet, and send or request coins - all running fully on the testnet.\n\u003e\n\u003e 2) Reference Merchant ([`developers.diem.com/docs/merchant/try-demo-merchant`](https://developers.diem.com/docs/merchant/try-demo-merchant/)) - \n\u003e Experience Diem in action with a demo storefront and purchasing flows, including integration with the reference wallet.\n\u003e\n\u003e **Move Documentation** -\n\u003e We built our blockchain with Move, a new Rust-based language with resource scarcity and improved asset protections. \n\u003e And while it was created for Libra/Diem, we always hoped Move would be a resource for all blockchain developers, regardless of the project.\n\u003e\n\u003e We're excited to announce the long-awaited official Move documentation, publicly available for the first time\n\u003e [`developers.diem.com/docs/move/overview`](https://developers.diem.com/docs/move/overview/).\n\n\n\n## Blockchain / Protocol\n\n- [The Official Diem (formerly Libra) Blockchain / Protocol White Paper](https://developers.diem.com/docs/technical-papers/the-diem-blockchain-paper/), [PDF Download (~400k, 29 Pages)](https://github.com/openblockchains/blockchain-whitepapers/raw/master/libra-blockchain.pdf) \n\n\u003e **Abstract**: The Diem Blockchain is a decentralized, programmable database designed to support a\n\u003e low-volatility cryptocurrency that will have the ability to serve as an efficient medium of exchange for\n\u003e billions of people around the world. We present a proposal for the Diem protocol, which implements\n\u003e the Diem Blockchain and aims to create a financial infrastructure that can foster innovation, lower\n\u003e barriers to entry, and improve access to financial services. To validate the design of the Diem protocol,\n\u003e we have built an open-source prototype implementation - Diem Core - in anticipation of a global\n\u003e collaborative effort to advance this new ecosystem.\n\u003e\n\u003e The Diem protocol allows a set of replicas - referred to as validators - from different authorities\n\u003e to jointly maintain a database of programmable resources. These resources are owned by different\n\u003e user accounts authenticated by public key cryptography and adhere to custom rules specified by the\n\u003e developers of these resources. Validators process transactions and interact with each other to reach\n\u003e consensus on the state of the database. Transactions are based on predefined and, in future versions,\n\u003e user-defined contracts in a new programming language called Move.\n\u003e\n\u003e We use Move to define the core mechanisms of the blockchain, such as the currency and validator\n\u003e membership. These core mechanisms enable the creation of a unique governance mechanism that\n\u003e builds on the stability and reputation of existing institutions in the early days but transitions to a\n\u003e fully open system over time.\n\n\n\n### Move Programming Language\n\n_The (Secure) Contract-Oriented Programming Language for Digital (Blockchain) Resources / Assets_\n\n[The Official Move: A Language With Programmable Resources White Paper](https://developers.diem.com/docs/technical-papers/move-paper/), [PDF Download (~200k, 26 Pages)](https://github.com/openblockchains/blockchain-whitepapers/raw/master/libra-move.pdf) \n\n\u003e **Abstract:** We present Move, a safe and flexible programming language for the Diem Blockchain.\n\u003e Move is an executable bytecode language used to implement custom transactions and contracts.\n\u003e The key feature of Move is the ability to define custom resource types with semantics inspired by linear\n\u003e logic: a resource can never be copied or implicitly discarded, only moved between program storage\n\u003e locations. These safety guarantees are enforced statically by Move's type system. Despite these\n\u003e special protections, resources are ordinary program values - they can be stored in data structures,\n\u003e passed as arguments to procedures, and so on. First-class resources are a very general concept that\n\u003e programmers can use not only to implement safe digital assets but also to write correct business\n\u003e logic for wrapping assets and enforcing access control policies. The safety and expressivity of Move\n\u003e have enabled us to implement significant parts of the Diem protocol in Move, including Diem coin,\n\u003e transaction processing, and validator management.\n\n\nQ: What's Move?\nA: A statically-typed programming language derived from Rust, compiled to bytecode.\n\nUpdate December 2020 - Official Move Documention Goes Live\n\n\u003e Welcome to Move, a next generation language for secure, sandboxed, and formally verified programming.\n\u003e Its first use case is for the Diem blockchain, where Move provides the foundation for its implementation.\n\u003e Move allows developers to write programs that flexibly manage and transfer assets, \n\u003e while providing the security and protections against attacks on those assets.\n\u003e However, Move has been developed with use cases in mind outside a blockchain context as well.\n\u003e\n\u003e Move takes its cue from Rust by using resource types with move (hence the name)\n\u003e semantics as an explicit representation of digital assets, such as currency.\n\u003e\n\u003e [...]\n\u003e\n\u003e Move has all of the syntax and semantics you would expect from a first-class programming language. \n\u003e However, there is an entire architecture dedicated to creating, using, and executing code based on Move. \n\u003e The diagram below shows the architecture of Move as it pertains to the Diem Payment Network, \n\u003e from using the source language to script execution.\n\u003e\n\u003e ![](i/move-architecture.png)\n\u003e\n\u003e (Source: [Move Introduction @ Diem Developers](https://developers.diem.com/docs/move/overview))\n\n\n\n**Examples**\n\n[`p2p_payment.mvir`](contracts/snippets/p2p_payment.mvir) - Example of a peer-to-peer transaction script:\n\n```\n// Simple peer-peer payment example.\n\n// Use LibraAccount module published on the blockchain at account address\n// 0x0...0 (with 64 zeroes). 0x0 is shorthand that the intermediate representation (IR) pads out to\n// 256 bits (64 digits) by adding leading zeroes.\nimport 0x0.LibraAccount;\nimport 0x0.LibraCoin;\nmain(payee: address, amount: u64) {\n  // The bytecode (and consequently, the intermediate representation (IR)) has typed locals.  The scope of\n  // each local is the entire procedure. All local variable declarations must\n  // be at the beginning of the procedure. Declaration and initialization of\n  // variables are separate operations, but the bytecode verifier will prevent\n  // any attempt to use an uninitialized variable.\n  let coin: R#LibraCoin.T;\n  // The R# part of the type above is one of two *kind annotation* R# and V#\n  // (shorthand for \"Resource\" and \"unrestricted Value\"). These annotations\n  // must match the kind of the type declaration (e.g., does the LibraCoin\n  // module declare `resource T` or `struct T`?).\n\n  // Acquire a LibraCoin.T resource with value `amount` from the sender's\n  // account.  This will fail if the sender's balance is less than `amount`.\n  coin = LibraAccount.withdraw_from_sender(move(amount));\n  // Move the LibraCoin.T resource into the account of `payee`. If there is no\n  // account at the address `payee`, this step will fail\n  LibraAccount.deposit(move(payee), move(coin));\n\n  // Every procedure must end in a `return`. The IR compiler is very literal:\n  // it directly translates the source it is given. It will not do fancy\n  // things like inserting missing `return`s.\n  return;\n}\n```\n\nMore contract samples (from the [Move Contract Playground](https://libraide.com/)):\n\n[`mint.mvir`](contracts/snippets/mint.mvir):\n\n```\nimport 0x0.LibraAccount;\nimport 0x0.LibraCoin;\nmain(payee: address, amount: u64) {\n  LibraAccount.mint_to_address(move(payee), move(amount));\n  return;\n}\n```\n\n[`transfer.mvir`](contracts/snippets/transfer.mvir):\n\n```\nimport 0x0.LibraAccount;\nmain (payee: address, amount: u64) {\n  LibraAccount.pay_from_sender(move(payee), move(amount));\n  return;\n}\n```\n\n[`balance.mvir`](contracts/snippets/balance.mvir):\n\n```\nimport 0x0.LibraAccount;\n\nmain() {\n    let addr: address;\n    let struct1_original_balance: u64;\n    addr = get_txn_sender();\n    struct1_original_balance = LibraAccount.balance(copy(addr));\n    assert(copy(struct1_original_balance) \u003e 10, 77);\n\n    return;\n}\n```\n\n[`address.mvir`](contracts/snippets/address.mvir):\n\n```\nmain() {\n    let a1: address;\n    let a2: address;\n    let a3: address;\n    let a4: address;\n    let a5: address;\n    let a6: address;\n    let a7: address;\n    let a8: address;\n    let a9: address;\n\n    a1 = 0x1;\n    a2 = 0x01;\n    a3 = 0x0001;\n    a4 = 0x00000001;\n    a5 = 0x0000000000000001;\n    a6 = 0x00000000000000000000000000000001;\n    a7 = 0x000000000000000000000000000000001;\n    a8 = 0x000000000000000000000000000000000000000000000000000000000000001;\n    a9 = 0x0000000000000000000000000000000000000000000000000000000000000001;\n\n    assert(copy(a1) == copy(a2), 42);\n    assert(copy(a2) == copy(a3), 43);\n    assert(copy(a3) == copy(a4), 44);\n    assert(copy(a4) == copy(a5), 45);\n    assert(copy(a5) == copy(a6), 46);\n    assert(copy(a6) == copy(a7), 47);\n    assert(copy(a7) == copy(a8), 48);\n    assert(copy(a8) == copy(a9), 49);\n    return;\n}\n```\n\n[`create_account.mvir`](contracts/snippets/create_account.mvir):\n\n```\nimport 0x0.LibraAccount;\nimport 0x0.LibraCoin;\n\nmain() {\n    let addr: address;\n    let account_exists: bool;\n    let ten_coins: R#LibraCoin.T;\n    let account_exists_now: bool;\n\n    addr = 0x0111111111111111111111111111111111111011111111111111111111111110;\n    account_exists = LibraAccount.exists(copy(addr));\n    assert(!move(account_exists), 83);\n\n    ten_coins = LibraAccount.withdraw_from_sender(10);\n    create_account(copy(addr));\n    LibraAccount.deposit(copy(addr), move(ten_coins));\n\n    account_exists_now = LibraAccount.exists(copy(addr));\n    assert(move(account_exists_now), 84);\n\n    return;\n}\n```\n\n\n\n\n\n## Consensus with Byzantine Fault Tolerance (BFT)\n\n_Inside Diem Byzantine Fault Tolerance (BFT) and the HotStuff Protocol - The Truth Machine with State Replication_ \n\n\n- [The Official Libra Byzantine Fault Tolerance (BFT): State Machine Replication in the Blockchain White Paper](https://developers.diem.com/docs/technical-papers/state-machine-replication-paper/), [PDF Download (~300k, 41 Pages)](https://github.com/openblockchains/blockchain-whitepapers/raw/master/libra-consensus.pdf) \n\n\u003e **Abstract**: This report presents DiemBFT, a robust and efficient state machine replication system designed for the Diem Blockchain.\n\u003e DiemBFT is based on HotStuff, a recent protocol that leverages several decades of scientific advances in Byzantine fault tolerance (BFT)\n\u003e and achieves the strong scalability and security properties required by internet settings. DiemBFT further refines the HotStuff\n\u003e protocol to introduce explicit liveness mechanisms and provides a concrete latency analysis. To drive the integration with the Diem\n\u003e Blockchain, this document provides specifications extracted from a fully-functional simulator. These specifications include state\n\u003e replication interfaces and a communication framework for data transfer and state synchronization among participants. \n\u003e Finally, this report provides a formal safety proof that induces criteria to detect misbehavior of BFT nodes, \n\u003e coupled with a simple reward and punishment mechanism.\n\n\n- [What is HotStuff and why is it a big deal](https://medium.com/@cypherium/what-is-hotstuff-and-why-is-it-a-big-deal-213f39696763) by Cypherium, June 18, 2019\n- [What is the difference between Practical Byzantine Fault Tolerance (PBFT), Tendermint, Scalable Byzantine Fault Tolerance (SBFT) and HotStuff?](https://ittaiab.github.io/2019-06-23-what-is-the-difference-between/) by Ittai Abraham, June 23, 2019\n- [Facebook's proposed currency is technically sound, but should you trust it?](https://medium.com/dapperlabs/dapper-labs-cto-reviews-libra-s-white-paper-656638778100) by Dapper Labs, June 21, 2019\n- [On LibraBFT's use of broadcasts](https://blog.trailofbits.com/2019/07/12/librabft/) by Sam Moelius (Trail of Bits), July 12, 2019 \n\n\n**HotStuff**\n\n- [HotStuff: Three-chain Rules!](https://dahliamalkhi.wordpress.com/2018/10/24/hotstuff-three-chain-rules/) by Dahlia Malkhi, October 24, 2018 - Most protocols contain quadratic voting steps. When Byzantine consensus protocols were originally conceived, a typical target system size was n=4 or n=7, tolerating one or two faults. But scaling Byzantine Fault Tolerance (BFT) consensus to n=2000 means that even on a good day, when communication is timely and a handful of failures occurs, quadratic steps require 4,000,000 messages. A cascade of failures might bring the communication complexity to whopping 8,000,000,000 (!) transmissions for a single consensus decision...\n- [HotStuff: Byzantine Fault Tolerance (BFT) Consensus with Linearity and Responsiveness Whitepaper](https://arxiv.org/abs/1803.05069),  [PDF Download (~800k, 10 Pages)](https://github.com/openblockchains/blockchain-whitepapers/raw/master/hotstuff.pdf) by Maofan Yin, Dahlia Malkhi, Michael K. Reiter, Guy Golan Gueta, Ittai Abraham -  a leader-based Byzantine fault-tolerant replication protocol for the partially synchronous model. Once network communication becomes synchronous, HotStuff enables a correct leader to drive the protocol to consensus at the pace of actual (vs. maximum) network delay - a property called responsiveness - and with communication complexity that is linear in the number of replicas. To our knowledge, HotStuff is the first partially synchronous BFT replication protocol exhibiting these combined properties. Its simplicity enables it to be further pipelined and simplified into a practical, concise protocol for building large-scale replication services.\n\n\n\n\n## Testnet\n\n### Blockchain Explorer\n\n_Transactions, Transactions, Transactions_\n\n- [Libra Testnet Explorer](https://librabrowser.io), [(Source)](https://github.com/Disk1n/LibraBrowser) by [Gal Diskin](https://twitter.com/gal_diskin)   - incl. faucet to mint your own free (test) libra tokens / money\n- [Libra Block (Testnet Explorer)](https://librablock.io), [(Source Front-End)](https://github.com/libra-china-org/librablock-frontend), [(Source Back-End)](https://github.com/libra-china-org/librabock-backend)\n- [Libra Vista (Testnet Explorer)](https://www.libravista.com)\n- [Libranaut (Testnet Explorer)](https://libranaut.io)\n- [Libratics (Testnet Explorer)](http://libratics.com)\n- [iLibraExplorer](https://ilibraexplorer.com)\n\n### Wallets \n\n**Official**\n\nHistoric \n\n**Calibra** (web: ~~`calibra.com`~~) - Facebook's official wallet for Libra. Calibra will be available in the Apple App Store, Google Play Store, integrated into Facebook's Messenger and WhatsApp. Calibra's launch is planned for the 2nd half of 2020. Calibra will be a custodial wallet - meaning they hold the actual Libra tokens - for the user (that's you!) - \nand will require KYC (Know Your Customer).\n\nRebranded in May 2020\n\n[**Welcome to Novi (formerly Calibra)**](https://about.fb.com/news/2020/05/welcome-to-novi/) by David Marcus, Facebook, \nHead of Novi (formerly Head of Calibra), May 26, 2020 -- _With Novi, sending money will be as easy as sending a message. You'll be able to use Novi as a stand-alone app, as well as in Messenger and WhatsApp. There will be no hidden charges to add, send, receive or withdraw money and your transfers will arrive instantly. All Novi customers will be verified using government-issued ID, and fraud protections will be built in throughout the app._\n\nQ: Why the name change?  A: \"People were confusing Libra [the \"pseudo-independent\" payment network - \"blockchain\"] \nand Calibra [the official Facebook Libra wallet] all the time\", says David Marcus.\n\n**Novi** (web: [`novi.com`](https://www.novi.com), twitter: [`@novi`](https://twitter.com/novi)) - Facebook's official wallet for Libra from Facebook Financial (F2) that also\nincl. Facebook Pay, WhatsApp Pay, among all things payments.\n\n- [Novis's Blockchain and Cryptoeconomics Team Page @ Facebook Research](https://research.fb.com/category/blockchain-and-cryptoeconomics/) includes publications / papers such as:\n    - FastPay: High-Performance Byzantine Fault Tolerant Settlement by Mathieu Baudet, George Danezis, Alberto Sonnino, November 2020\n    - Winkle: Foiling Long-Range Attacks in Proof-of-Stake Systems by Sarah Azouvi, George Danezis, Valeria Nikolaenko,  October 2020\n    - Taming the many EdDSAs by Kostas Chalkias, François Garillot, Valeria Nikolaenko,  October 2020\n    - The Move Prover by Emma Zhong, Kevin Cheang, Shaz Qadeer, Wolfgang Grieskamp, Sam Blackshear, Junkil Park, Yoni Zohar, Clark Barrett, David Dill, October 2020\n    - and many more\n\n\u003c!-- break --\u003e\n\n**Others**\n\nArticles \u0026 Live Demos\n\n- [The First Libra Wallet Proof-of-Concept (POC) - Building your own Wallet and APIs](https://medium.com/kulapofficial/the-first-libra-wallet-poc-building-your-own-wallet-and-apis-3cb578c0bd52)\nby Nattapon Nimakul, June 23, 2019\n  - [Live Demo](https://dev.kulap.io/libra/), [(Source)](https://github.com/kulapio/libra-wallet-poc)\n- [Libra Paper Wallet](https://librapaperwallet.com) ([Source](https://github.com/librastartup/libra-paper-wallet)) by Libra Startup; generate a new Libra cryptocurrency wallet address, its QR code, and the recovery seed - 24 words\n\n\n\n### Libraries\n\n\n**JavaScript**\n\n- [Libra Core](https://github.com/perfectmak/libra-core) by Perfect Makanju  - a javascript library client that can be used to interact with libra nodes. Coded in typescript\n- [Libra gRPC](https://github.com/bonustrack/libra-grpc) by Fabien - a lightweight JavaScript library for Libra\n- [Libra API](https://github.com/bonustrack/libra-api) by Fabien  - a REST API for Libra blockchain\n- [Libra Web](https://github.com/bandprotocol/libra-web) by Paul C. (Band Protocol) -  a javascript client for Libra blockchain. The library allows javascript program to interact with Libra nodes with protobuf message through grpc web. It works in both browser and node.js environments\n\n**Python**\n\n- [PyLibra](https://github.com/bandprotocol/pylibra) by Sorawit Suriyakarn (Band Protocol) - a python client for Libra blockchain. The library allows Python program to interact with Libra nodes with protobuf message through grpc \n- [Libra gRPC](https://github.com/egorsmkv/libra-grpc-py) by Yehor Smoliakov - a gRPC client for Libra in Python\n\n**Ruby**\n\n- [Libra Client](https://github.com/yuan-xy/libra_client_ruby) by Yuan - a client library that lets you interact with Libra nodes with protobuf message through gRPC\n\n**Go**\n\n- [Libra Go Client](https://github.com/codemaveric/libra-go) by Ibraheem Bello - a go client for interacting with Libra blockchain\n- [Libra Go SDK](https://github.com/philippgille/libra-sdk-go) by Philipp Gillé - a go dev kit for Libra\n- [Libra Example](https://github.com/phlip9/libra_example) by Philip Kannegaard Hayes - example Libra Go client \n- [go-libra](https://github.com/the729/go-libra) by the729 - a Libra go client library with crypto verifications\n\n**Java Libraries**\n\n- [Libraj](https://github.com/libra-vista/libraj) by Wen Shen Jun  - a java library client that can be used to interact with libra nodes\n- [Jlibra](https://github.com/ketola/jlibra) by Sauli Ketola  - a Java library for interacting with the Libra blockchain.\n\n**Move**\n- [TaoHe](https://github.com/taoheorg/taohe) by Ville Sundell - Collection of nestable smart contract resources for Diem and other MoveVM blockchains.\n\n### Courses / Code Schools\n\n[**CryptoZombies (Libra/Move Edition)**](https://cryptozombies.io/libra/)  Upcoming! -\nlearn Libra blockchain contract programming by coding your own  game using the Move programming language; completely free and open source\n- [**Libra Basics Lesson 1 Live - Becoming a Shop Owner**](https://cryptozombies.io/en/lesson/12/chapter/1)  -- In this first lesson, you'll learn how to interact with the Libra testnet blockchain using the command line interface (CLI). This perfectly simulates how you can interact with the REAL libra testnet today. Later, we'll show you how to install it yourself.\n\n[**MoveCastle**](https://learnlibramove.com) - learn Libra blockchain contract programming \nby coding your own game using the Move programming language;\nby Blockchain Lab of Beijing Normal University and White Matrix Corporation\n\n\n\n### More\n\n- [#diem](https://github.com/topics/diem), [#libra](https://github.com/topics/libra) Topics @ GitHub\n\n\n\u003c!-- break --\u003e\n\n- [Help \u0026 Discussion in Testnet Channel / Category](https://community.diem.com/c/testnet) @ Diem Discussion Forum\n- [Connecting to Libra TestNet on Windows with the Windows Subsystem for Linux (WSL)](https://medium.com/coinmonks/connecting-to-libra-testnet-on-windows-with-wsl-45bdfd23150a) by Ibraheem Kolawole Bello, June 19th, 2019\n\n\n## Forks \u0026 Alternatives\n\nHistoric\n\n### Open Libra\n\n_An open platform for financial inclusion. Not run by Facebook._\n\nweb: ~~`openlibra.io`~~,\ngithub: ~~`open-libra`~~\n\nbuild on Libra's strengths but extend it where needed. OpenLibra aims to be technically (Move Language) and financially compatible (Libra coin), embracing what is powerful, but also replacing what's concerning in a non-adversarial way. \n\n\n\n## Timeline\n\n- June 18th, 2019 - Libra Testnet Live and Open Source Libra Client (Core) Code\n\n\u003c!-- break --\u003e\n\n![](i/libra-mainnet-milestones.png)\n\nWhat's upcoming? See the [Libra Core Roadmap](https://github.com/orgs/libra/projects/1)\n\n\n\n## Reference\n\n- [Diem (cryptocurrency) @ Wikipedia](https://en.wikipedia.org/wiki/Diem_(digital_currency))\n  - [Diem (cryptocurrency) Talk / Discussion @ Wikipedia](https://en.wikipedia.org/wiki/Talk:Diem_(digital_currency))\n\n\n\n## Trivia \u0026 Fun Facts\n\nDid you know? David Marcus is the public face of Facebook's Libra - but Morgan Beller started the cryptocurrency effort in 2017, \nbefore Marcus was even at Facebook. (Source: [Meet Morgan Beller, the 26-year-old woman behind Facebook's plan to make its own currency](https://www.cnbc.com/2019/07/20/facebook-libra-partly-created-by-female-engineer-morgan-beller.html), by Salvador Rodriguez (CNBC), July 20, 2019) \n\n\n## Articles\n\nOfficial\n\n- [Five months and growing strong: the Libra project](https://developers.libra.org/blog/2019/11/15/5-months-and-growing-strong) by Michael Engle (Libra Association), Nov 15, 2019\n- [Why building a new protocol for money is the only way to truly change the game for people](https://medium.com/@davidmarcus/why-building-a-new-protocol-for-money-is-the-only-way-to-truly-change-the-game-for-people-254c55407e22) by David Marcus (Libra / Calibra Project Chief / Head), July 25, 2019 \n- [Libra Testimony @ US Senate, Committee on Banking, PDF Download (~100k, 7 Pages)](https://www.banking.senate.gov/imo/media/doc/Marcus%20Testimony%207-16-19.pdf) by David Marcus (Libra / Calibra Project Chief / Head), July 16, 2019\n- [Libra, 2 weeks in](https://www.facebook.com/notes/david-marcus/libra-2-weeks-in/10158616513819148/) by David Marcus (Libra / Calibra Project Chief / Head), July 3, 2019\n- [Libra: The Path Forward](https://developers.libra.org/blog/2019/06/18/the-path-forward) by Libra Engineering Team, June 18, 2019 - Today we are announcing the Libra testnet, a live demonstration of an early prototype of the technology behind Libra - a simple global currency and financial infrastructure that can empower billions of people...\n- [Coming in 2020: Calibra - A New Digital Wallet for a New Digital Currency](https://newsroom.fb.com/news/2019/06/coming-in-2020-calibra/) by Facebook Newsroom, June 18, 2019\n\nPro\n\n- [(Christian Catalini) Libra co-creator (and Calibra Head Economist) explains, defends Facebook's cryptocurrency](https://mitsloan.mit.edu/ideas-made-to-matter/libra-co-creator-explains-defends-facebooks-cryptocurrency) by Beth Stackpole, MIT Sloan Business School Newsletter, Nov 13, 2019\n\n\nNeutral\n\n- [First Look: Libra](https://info.binance.com/en/research/marketresearch/libra.html) by Binance Research, June 18th 2019 - An in-depth review of Facebook's long-anticipated entry into cryptocurrency\n- [Libra: Understanding Facebook's Digital Currency](https://pages.consensys.net/understanding-libra)\nby Coogan Brennan (ConsenSys), Sept 2019 - 21-page guide booklet (free PDF download; email registration required)\n\n\n\nRegulation, Regulation, Regulation\n\nThere's a [bipartisan bill in US Congress](https://sylviagarcia.house.gov/media/press-releases/rep-sylvia-garcia-and-rep-lance-gooden-introduce-managed-stablecoins-are) to firmly rule that managed stablecoins - they mean Libra - are securities. \nSylvia Garcia (D-TX) and Lance Gooden (R-TX) are pretty sure that Libra-like tokens would be securities already - it was \nimmediately obvious that this would constitute an exchange-traded fund or synthetic foreign-exchange derivative - but \nthey want to nail it down. Whether this bill has legs depends ...\n(via [David Gerard, Nov 22, 2019 - News: Libra and stablecoins and [the US Treasury's Financial Crimes Enforcement Network] (FinCEN)](https://davidgerard.co.uk/blockchain/2019/11/22/news-libra-and-stablecoins-and-fincen-china-still-hates-crypto-trading-tether/))\n\n- [Uncle Sam weighs Libra](https://decrypt.co/7910/uncle-sam-weighs-libra) by Ben Munster (Decrypt), July 16, 2019 - Facebook's David Marcus spoke before [the US] Congress on the company's upcoming pseudo-bank, Libra. The oldies on Capitol Hill [in Washington] could barely conceal their contempt...\n- [[US] Fed[eral] [Reserve] chief [Jerome Powell] calls for Facebook to halt Libra project until concerns addressed](https://www.reuters.com/article/us-usa-fed-powell-libra/fed-chief-calls-for-facebook-to-halt-libra-project-until-concerns-addressed-idUSKCN1U51VE), July 10, 2019, Reuters\n\n\nScams, Scams, Scams - The Art of the Steal\n\n- [Facebook's Libra currency spawns a wave of fakes, including on Facebook itself](https://www.washingtonpost.com/technology/2019/07/22/facebooks-libra-currency-spawns-wave-fakes-including-facebook-itself) by Drew Harwell, Tony Romm and Cat Zakrzewski (Washington Post), July 22, 2019 - Roughly a dozen fake accounts, pages and groups scattered across Facebook and its photo-sharing app Instagram present themselves as official hubs for the digital currency, in some cases offering to sell Libra at a discount if viewers visit potentially fraudulent, third-party websites... \n\n\nSkeptic / Critical Thinking\n\n- [Facebook Libra is Architecturally Unsound](http://www.stephendiehl.com/posts/libra.html) by Stephen Diehl, November 2019 - Libra's byzantine tolerance on a permissioned network is an incoherent design; Libra has no transaction privacy; Libra HotStuff BFT is not capable of achieving the throughput necessary for a payment rail; Libra's Move language is not sound; Libra's cryptography engineering is unsound; Libra has no capacity for consumer protection mechanisms. Answer: [Factual inaccuracies of \"Facebook Libra is Architecturally Unsound\"](https://tonyarcieri.com/factual-inaccuracies-of-facebook-libra-is-architecturally-unsound) by Tony Arcieri  \n\n- [Thoughts on Facebook's Libra Coin](https://prestonbyrne.com/2019/07/17/libra/) by Preston Byrne, July 17, 2019 - Permissioned blockchains: where it all began...  \n\n- [Why Facebook's Libra currency gets the thumbs down](https://www.theguardian.com/business/2019/jul/02/why-facebook-libra-currency-gets-the-thumbs-down) by Joseph Stiglitz, July 2, 2019 - Facebook has earned a level of distrust that took the banking sector much longer to achieve. Time and again, Facebook's leaders, faced with a choice between money and honouring their promises, \nhave grabbed the money. And nothing could be more about money than creating a new currency. \nOnly a fool would trust Facebook with his or her financial wellbeing. \nBut maybe that's the point: with so much personal data on some 2.4bn monthly active users, \nwho knows better than Facebook just how many suckers are born every minute?\n\n- [The Real Threat From Facebook's Libra Coin](https://www.forbes.com/sites/francescoppola/2019/06/30/the-real-threat-from-facebooks-libra-coin/) by Frances Coppola, June 30, 2019 - Facebook's Libra cryptocurrency is generating an immense amount of hype. \nSome hail it as the beginning of the end of sovereign currencies. \nOthers believe it will draw people into the cryptocurrency world, \nleading them inexorably to place their faith in the One True Cryptocurrency, Bitcoin...\n\n- [Facebook's New Currency Has Big Claims and Bad Ideas - Libra is an ideological project, not a practical one](https://foreignpolicy.com/2019/06/24/971554-facebook-bitcoin-libra-crypto-bad/) by David Gerard (Foreign Policy), June 24, 2019 - Libra has certainly demonstrated one of the main characteristics of blockchain projects - grandiose claims and egregious nonsense...\n\n- [Facebook's Libra Must Be Stopped](https://www.project-syndicate.org/commentary/facebook-libra-must-be-stopped-by-katharina-pistor-2019-06) by Katharian Pistor (Project Syndicate), June 20, 2019 - Facebook has now unveiled a cryptocurrency and payment system that could take down the entire global economy. Governments must intervene before a company that \"moves fast and breaks things\" ends up breaking everything...\n\n- [Facebook's Cryptocurrency: Stop It Before It Starts](https://www.lawfareblog.com/facebooks-cryptocurrency-stop-it-it-starts) by Nicholas Weaver, June 19, 2019 - The [Libra] coin is really a Facebook project. It is not live yet, giving governments the opportunity to kill this project before it gets off the ground and gives rise to cybercriminals who couldn't capitalize on existing cryptocurrencies. In particular, the [Internal Revenue Service] IRS and [the U.S. Treasury's Financial Crimes and Enforcement Network] FinCEN should take action now...\n\n- [FacebookCoin is being announced on Tuesday - and we still don't know why it's a crypto](https://davidgerard.co.uk/blockchain/2019/06/15/facebookcoin-is-being-announced-on-tuesday-and-we-still-dont-know-why-its-a-crypto/) by David Gerard, June 15, 2019 - FacebookCoin is being announced on Tuesday! It's called Libra, and Facebook are apparently stressing very hard that everyone should call it Libra, and not Facebook-anything. And definitely not ZuckerBucks...\n\n\n\n## Awesome Awesomeness\n\n_A curated list of awesome lists_\n\n- [Awesome Libra Blockchain](https://github.com/copperbits/awesome-libra) by Copperbits \n- [Awesome Libra](https://github.com/learndapp/awesome-libra) by LearnDapp \n- [Awesome Libra](https://github.com/methuz/Awesome-Libra) by Methuz Kaewsaikao \n- [#awesome-libra](https://github.com/topics/awesome-libra) Topic @ GitHub\n\nMore curated lists or dashboards\n\nHistoric\n\n- Librazilla (web: ~~`librazilla.com`~~) - Libra cryptocurrency resources dashboard; tools, tutorials, docs, links and other useful things for the Libra blockchain\n \n\n\n## Meta\n\n**License**\n\n![](https://publicdomainworks.github.io/buttons/zero88x31.png)\n\nThe list is dedicated to the public domain. Use it as you please with no restrictions whatsoever.\n\n","funding_links":[],"categories":["What's News?","Other Lists"],"sub_categories":["The Open Blockchains Book of the Year 2020 Award Goes To...","TeX Lists"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenblockchains%2Fawesome-diem","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenblockchains%2Fawesome-diem","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenblockchains%2Fawesome-diem/lists"}