senso-concept-Mcs (DnDiem)

McsHitp-creation:: {2019-06-18},

overview of DnDiem

· DnDiem is a-Dcurrency-DnChain with permissioned appender-nodes and a-Dcurrency backed with a-reserve-fund.

* McsEngl.McsTchInf000028.last.html!⇒DnDiem,
* McsEngl.dirTchInf/McsTchInf000028.last.html!⇒DnDiem,
* McsEngl.Diem--blockchain-net!⇒DnDiem,
* McsEngl.DnChain.Libra!⇒DnDiem,
* McsEngl.DnLibra!⇒DnDiem, {2019-06-18},
* McsEngl.DnDiem, {2021-04-10},
* McsEngl.DnDiem'(McsTchInf000028)!⇒DnDiem,
* McsEngl.DnDiem'(Diem--blockchain-net)!⇒DnDiem,
* McsEngl.Libra--Dchain-net!⇒DnDiem,
* McsEngl.Libra-DnChain!⇒DnDiem,
* McsEngl.Libra-Network!⇒DnDiem,

stakeholder of DnDiem

* McsEngl.DnDiem'stakeholder!⇒DnDiem-stakeholder,
* McsEngl.DnDiem-stakeholder,

* stakeholder-of-DnChain,


* McsEngl.DnDiem-stakeholder.specific,

* user,
* validator-owner,
* Facebook-Inc.,
* Libra-Association,
* Calibra-company,


· DnDiem-user is a-human-entity who owns an-account.

* McsEngl.DnDiem'user!⇒DnDiem-user,
* McsEngl.DnDiem-user,
* McsEngl.DnDiem-stakeholder.user!⇒DnDiem-user,


* McsEngl.DnDiem'developer!⇒DnDiem-developer,
* McsEngl.DnDiem-developer,
* McsEngl.DnDiem-stakeholder.developer!⇒DnDiem-developer,

info-resource of Ddeveloper

* McsEngl.DnDiem-developer'Infrsc,

* https://www.diem.com/,
* https://developers.libra.org/,
* https://github.com/libra,
* contribution-guide: https://developers.libra.org/docs/community/contributing,
* https://community.libra.org/,
* https://developers.libra.org/blog/,
* https://twitter.com/LibraDev,
* {2019-06-18} https://developers.libra.org/blog/2019/06/18/the-path-forward,


* McsEngl.DnDiem-developer.specific,

* Marcus.David: co-creator and leader,

asset of DnDiem

* McsEngl.DnDiem'asset,

Libra-token of DnDiem

"Libra is a global digital currency.
- It is stored on the Libra Blockchain.
- It is backed by a reserve of assets.
- It is governed by the independent Libra Association."

* McsEngl.DnDiem'cryptocurrency!⇒DvLibra,
* McsEngl.DvLibra,
* McsEngl.Libra-coin!⇒DvLibra,
* McsEngl.Libra-currency!⇒DvLibra,

DOING of DvLibra

creating of DvLibra


* McsEngl.DvLibra'creating!⇒DvLibra-minting,
* McsEngl.DvLibra-minting,

destroying of DvLibra


* McsEngl.DvLibra'destroying!⇒DvLibra-burning,
* McsEngl.DvLibra-burning,

GENERIC of DvLibra

* McsEngl.DvLibra'generic,

* Dcurrency,
* Lmv--resource-type,

LIT of DnDiem

"With each new release of Libra Investment Tokens, new members will be able to enter, own a stake in the network (through the Libra Investment Token), and start contributing to consensus and governance by operating a validator node on the network.
... As the technology matures, the Libra Blockchain will transition from relying on ownership of the Libra Investment Tokens — in order to operate validator nodes and vote on governance — to relying on ownership of Libra coins. The basic intuition is that at scale the network should be owned by its users and should always evolve in a way to protect their interests and assets."

* McsEngl.DnDiem'LIT!⇒DvLIT,
* McsEngl.DnDiem'Libra-Investment-Token!⇒DvLIT,
* McsEngl.DvLIT,
* McsEngl.Libra-Investment-Token!⇒DvLIT,

Libra-Reserve of DnDiem

"the Libra coin —which will be fully backed with a basket of bank deposits and treasuries from high-quality central banks."
"Unlike the majority of cryptocurrencies, Libra is fully backed by a reserve of real assets. A basket of currencies and assets will be held in the Libra Reserve for every Libra that is created, building trust in its intrinsic value."

* McsEngl.DnDiem'Reserve!⇒DnDiem-reserve,
* McsEngl.DnDiem-reserve,
* McsEngl.Libra-Reserve!⇒DnDiem-reserve,

* https://libra.org/en-us/about-currency-reserve,

asset of Libra-Reserve

* McsEngl.DnDiem-reserve'asset,

* government-backed-currency,
* security,

input of Libra-Reserve

"Where is the money for the reserve coming from? The money in the reserve will come from two sources: investors in the separate Investment Token, and users of Libra. The association will pay out incentives in Libra coin to Founding Members to encourage adoption by users, merchants, and developers. The funds for the coins that will be distributed as incentives will come from a private placement to investors. On the user side, for new Libra coins to be created, there must be an equivalent purchase of Libra for fiat and transfer of that fiat to the reserve. Hence, the reserve will grow as users’ demand for Libra increases. In short, on both the investor and user side, there is only one way to create more Libra — by purchasing more Libra for fiat and growing the reserve."

* McsEngl.DnDiem-reserve'input,

investment of Libra-Reserve

"How will the reserve be invested? Users of Libra do not receive a return from the reserve. The reserve will be invested in low-risk assets that will yield interest over time. The revenue from this interest will first go to support the operating expenses of the association — to fund investments in the growth and development of the ecosystem, grants to nonprofit and multilateral organizations, engineering research, etc. Once that is covered, part of the remaining returns will go to pay dividends to early investors in the Libra Investment Token for their initial contributions. Because the assets in the reserve are low risk and low yield, returns for early investors will only materialize if the network is successful and the reserve grows substantially in size."

* McsEngl.DnDiem-reserve'investment,

storage of Libra-Reserve

"the reserve will be held by a geographically distributed and highly respected global network of custodians with investment-grade credit rating to limit counterparty risk. Safeguarding the assets, providing extremely high auditability and transparency, avoiding the risks of a centralized reserve, and achieving operational efficiency are the key parameters we will follow in custody selection and design."

* McsEngl.DnDiem-reserve'storage,

problem of Libra-Reserve

· DvLibra will-fail when Libra-Reserve-assets will-fail.

* McsEngl.DnDiem-problem.reserve,
* McsEngl.DnDiem-reserve'problem,

info-resource of Libra-Reserve

* McsEngl.DnDiem-reserve'Infrsc,

* https://libra.org/en-US/about-currency-reserve/,
* {2019-06-28} https://cointelegraph.com/news/steve-forbes-tells-zuckerberg-use-gold-to-back-libra-call-it-the-mark,

changing-assets of Libra-Reserve

"Changes to the composition of the basket require a supermajority vote by the association."

* McsEngl.DnDiem-reseve'changing,

protocol of DnDiem

"Libra protocol is the specification of how transactions are submitted, ordered, executed, and recorded within the Libra ecosystem."

* McsEngl.DnDiem'protocol!⇒DnDiem-protocol,
* McsEngl.DnDiem-protocol, {2019-06-25},
* McsEngl.Libra-protocol!⇒DnDiem-protocol,

* protocol-of-DnChain,

part of protocol

* McsEngl.DnDiem-protocol'part,

* consensus-protocol,
* shared mempool protocol,

≋ libra White Paper

* McsEngl.DnDiem'white-paper,
* McsEngl.DnDiem-protocol'white-paper,
* McsEngl.DnDiem-whitepaper,
* McsEngl.Libra-white-paper,
* McsEngl.white-paper--of--Libra-Network,

* https://libra.org/en-US/white-paper/,

1. Introduction

Libra’s mission is to enable a simple global currency and financial infrastructure that empowers billions of people.

This document outlines our plans for a new decentralized blockchain, a low-volatility cryptocurrency, and a smart contract platform that together aim to create a new opportunity for responsible financial services innovation.

1.1 Problem Statement

The advent of the internet and mobile broadband has empowered billions of people globally to have access to the world's knowledge and information, high-fidelity communications, and a wide range of lower-cost, more convenient services.
These services are now accessible using a $40 smartphone from almost anywhere in the world.[ 1 ]
This connectivity has driven economic empowerment by enabling more people to access the financial ecosystem.
Working together, technology companies and financial institutions have also found solutions to help increase economic empowerment around the world.
Despite this progress, large swaths of the world's population are still left behind — 1.7 billion adults globally remain outside of the financial system with no access to a traditional bank, even though one billion have a mobile phone and nearly half a billion have internet access.[ 2 ]

For too many, parts of the financial system look like telecommunication networks pre-internet.
Twenty years ago, the average price to send a text message in Europe was 16 cents per message.[ 3 ]
Now everyone with a smartphone can communicate across the world for free with a basic data plan.
Back then, telecommunications prices were high but uniform; whereas today, access to financial services is limited or restricted for those who need it most — those impacted by cost, reliability, and the ability to seamlessly send money.

All over the world, people with less money pay more for financial services.
Hard-earned income is eroded by fees, from remittances and wire costs to overdraft and ATM charges.
Payday loans can charge annualized interest rates of 400 percent or more, and finance charges can be as high as $30 just to borrow $100.[ 4 ]
When people are asked why they remain on the fringe of the existing financial system, those who remain “unbanked” point to not having sufficient funds, high and unpredictable fees, banks being too far away, and lacking the necessary documentation.[ 5 ]

Blockchains and cryptocurrencies have a number of unique properties that can potentially address some of the problems of accessibility and trustworthiness.
These include distributed governance, which ensures that no single entity controls the network; open access, which allows anybody with an internet connection to participate; and security through cryptography, which protects the integrity of funds.

But the existing blockchain systems have yet to reach mainstream adoption.
Mass-market usage of existing blockchains and cryptocurrencies has been hindered by their volatility and lack of scalability, which have, so far, made them poor stores of value and mediums of exchange.
Some projects have also aimed to disrupt the existing system and bypass regulation as opposed to innovating on compliance and regulatory fronts to improve the effectiveness of anti-money laundering.
We believe that collaborating and innovating with the financial sector, including regulators and experts across a variety of industries, is the only way to ensure that a sustainable, secure and trusted framework underpins this new system.
And this approach can deliver a giant leap forward toward a lower-cost, more accessible, more connected global financial system.

1.2 The Opportunity

As we embark on this journey together, we think it is important to share our beliefs to align the community and ecosystem we intend to spark around this initiative:
• We believe that many more people should have access to financial services and to cheap capital.
• We believe that people have an inherent right to control the fruit of their legal labor.
• We believe that global, open, instant, and low-cost movement of money will create immense economic opportunity and more commerce across the world.
• We believe that people will increasingly trust decentralized forms of governance.
• We believe that a global currency and financial infrastructure should be designed and governed as a public good.
• We believe that we all have a responsibility to help advance financial inclusion, support ethical actors, and continuously uphold the integrity of the ecosystem.

2. Introducing Libra

The world truly needs a reliable digital currency and infrastructure that together can deliver on the promise of “the internet of money.”

Securing your financial assets on your mobile device should be simple and intuitive.
Moving money around globally should be as easy and cost-effective as — and even more safe and secure than — sending a text message or sharing a photo, no matter where you live, what you do, or how much you earn.
New product innovation and additional entrants to the ecosystem will enable the lowering of barriers to access and cost of capital for everyone and facilitate frictionless payments for more people.

Now is the time to create a new kind of digital currency built on the foundation of blockchain technology.
The mission for Libra is a simple global currency and financial infrastructure that empowers billions of people.
Libra is made up of three parts that will work together to create a more inclusive financial system:
1. It is built on a secure, scalable, and reliable blockchain;
2. It is backed by a reserve of assets designed to give it intrinsic value;
3. It is governed by the independent Libra Association tasked with evolving the ecosystem.

The Libra currency is built on the “Libra Blockchain.”
Because it is intended to address a global audience, the software that implements the Libra Blockchain is open source — designed so that anyone can build on it, and billions of people can depend on it for their financial needs.
Imagine an open, interoperable ecosystem of financial services that developers and organizations will build to help people and businesses hold and transfer Libra for everyday use.
With the proliferation of smartphones and wireless data, increasingly more people will be online and able to access Libra through these new services.
To enable the Libra ecosystem to achieve this vision over time, the blockchain has been built from the ground up to prioritize scalability, security, efficiency in storage and throughput, and future adaptability.
Keep reading for an overview of the Libra Blockchain, or read the technical paper.

The unit of currency is called “Libra.”
Libra will need to be accepted in many places and easy to access for those who want to use it.
In other words, people need to have confidence that they can use Libra and that its value will remain relatively stable over time.
Unlike the majority of cryptocurrencies, Libra is fully backed by a reserve of real assets.
A basket of bank deposits and short-term government securities will be held in the Libra Reserve for every Libra that is created, building trust in its intrinsic value.
The Libra Reserve will be administered with the objective of preserving the value of Libra over time.
Keep reading for an overview of Libra and the reserve, or read more here.

The Libra Association is an independent, not-for-profit membership organization headquartered in Geneva, Switzerland.
The association’s purpose is to coordinate and provide a framework for governance for the network and reserve and lead social impact grant-making in support of financial inclusion.
This white paper is a reflection of its mission, vision, and purview.
The association’s membership is formed from the network of validator nodes that operate the Libra Blockchain.

Members of the Libra Association will consist of geographically distributed and diverse businesses, nonprofit and multilateral organizations, and academic institutions.
The initial group of organizations that will work together on finalizing the association’s charter and become “Founding Members” upon its completion are, by industry:
• Payments: Mastercard, PayPal, PayU (Naspers’ fintech arm), Stripe, Visa
• Technology and marketplaces: Booking Holdings, eBay, Facebook/Calibra, Farfetch, Lyft, MercadoPago, Spotify AB, Uber Technologies, Inc.
• Telecommunications: Iliad, Vodafone Group
• Blockchain: Anchorage, Bison Trails, Coinbase, Inc., Xapo Holdings Limited
• Venture Capital: Andreessen Horowitz, Breakthrough Initiatives, Ribbit Capital, Thrive Capital, Union Square Ventures
• Nonprofit and multilateral organizations, and academic institutions: Creative Destruction Lab, Kiva, Mercy Corps, Women’s World Banking

We hope to have approximately 100 members of the Libra Association by the target launch in the first half of 2020.

Facebook teams played a key role in the creation of the Libra Association and the Libra Blockchain, working with the other Founding Members.
While final decision-making authority rests with the association, Facebook is expected to maintain a leadership role through 2019.
Facebook created Calibra, a regulated subsidiary, to ensure separation between social and financial data and to build and operate services on its behalf on top of the Libra network.

Once the Libra network launches, Facebook, and its affiliates, will have the same commitments, privileges, and financial obligations as any other Founding Member.
As one member among many, Facebook’s role in governance of the association will be equal to that of its peers.

Blockchains are described as either permissioned or permissionless in relation to the ability to participate as a validator node.
In a “permissioned blockchain,” access is granted to run a validator node.
In a “permissionless blockchain,” anyone who meets the technical requirements can run a validator node.
In that sense, Libra will start as a permissioned blockchain.

To ensure that Libra is truly open and always operates in the best interest of its users, our ambition is for the Libra network to become permissionless.
The challenge is that as of today we do not believe that there is a proven solution that can deliver the scale, stability, and security needed to support billions of people and transactions across the globe through a permissionless network.
One of the association’s directives will be to work with the community to research and implement this transition, which will begin within five years of the public launch of the Libra Blockchain and ecosystem.

Essential to the spirit of Libra, in both its permissioned and permissionless state, the Libra Blockchain will be open to everyone: any consumer, developer, or business can use the Libra network, build products on top of it, and add value through their services.
Open access ensures low barriers to entry and innovation and encourages healthy competition that benefits consumers.
This is foundational to the goal of building more inclusive financial options for the world.

3. The Libra Blockchain

The goal of the Libra Blockchain is to serve as a solid foundation for financial services, including a new global currency, which could meet the daily financial needs of billions of people.
Through the process of evaluating existing options, we decided to build a new blockchain based on these three requirements:
• Able to scale to billions of accounts, which requires high transaction throughput, low latency, and an efficient, high-capacity storage system.
• Highly secure, to ensure safety of funds and financial data.
• Flexible, so it can power the Libra ecosystem’s governance as well as future innovation in financial services.

The Libra Blockchain is designed from the ground up to holistically address these requirements and build on the learnings from existing projects and research — a combination of innovative approaches and well- understood techniques.
This next section will highlight three decisions regarding the Libra Blockchain:
1. Designing and using the Move programming language.
2. Using a Byzantine Fault Tolerant (BFT) consensus approach.
3. Adopting and iterating on widely adopted blockchain data structures.

“Move” is a new programming language for implementing custom transaction logic and “smart contracts” on the Libra Blockchain.
Because of Libra’s goal to one day serve billions of people, Move is designed with safety and security as the highest priorities.
Move takes insights from security incidents that have happened with smart contracts to date and creates a language that makes it inherently easier to write code that fulfills the author’s intent, thereby lessening the risk of unintended bugs or security incidents.
Specifically, Move is designed to prevent assets from being cloned.
It enables “resource types” that constrain digital assets to the same properties as physical assets: a resource has a single owner, it can only be spent once, and the creation of new resources is restricted.
The Move language also facilitates automatic proofs that transactions satisfy certain properties, such as payment transactions only changing the account balances of the payer and receiver.
By prioritizing these features, Move will help keep the Libra Blockchain secure.
By making the development of critical transaction code easier, Move enables the secure implementation of the Libra ecosystem’s governance policies, such as the management of the Libra currency and the network of validator nodes.
Move will accelerate the evolution of the Libra Blockchain protocol and any financial innovations built on top of it.
We anticipate that the ability for developers to create contracts will be opened up over time in order to support the evolution and validation of Move.

To facilitate agreement among all validator nodes on the transactions to be executed and the order in which they are executed, the Libra Blockchain adopted the BFT approach by using the LibraBFT consensus protocol.
This approach builds trust in the network because BFT consensus protocols are designed to function correctly even if some validator nodes — up to one-third of the network — are compromised or fail.
This class of consensus protocols also enables high transaction throughput, low latency, and a more energy-efficient approach to consensus than “proof of work” used in some other blockchains.

In order to securely store transactions, data on the Libra Blockchain is protected by Merkle trees, a data structure used by other blockchains that enables the detection of any changes to existing data.
Unlike previous blockchains, which view the blockchain as a collection of blocks of transactions, the Libra Blockchain is a single data structure that records the history of transactions and states over time.
This implementation simplifies the work of applications accessing the blockchain, allowing them to read any data from any point in time and verify the integrity of that data using a unified framework.

The Libra Blockchain is pseudonymous and allows users to hold one or more addresses that are not linked to their real-world identity.
This approach is familiar to many users, developers, and regulators.
The Libra Association will oversee the evolution of the Libra Blockchain protocol and network, and it will continue to evaluate new techniques that enhance privacy in the blockchain while considering concerns of practicality, scalability, and regulatory impact.

For more details, read the technical paper on the Libra Blockchain.
Detailed information is also available on the Move programming language and the LibraBFT consensus protocol.
We’ve open sourced an early preview of the Libra testnet, with accompanying documentation.
The testnet is still under development, and APIs are subject to change.
Our commitment is to work in the open with the community and hope you will read, build, and provide feedback.

4. The Libra Currency and Reserve

We believe that the world needs a global, digitally native currency that brings together the attributes of the world’s best currencies: stability, low inflation, wide global acceptance, and fungibility.
The Libra currency is designed to help with these global needs, aiming to expand how money works for more people around the world.

Libra is designed to be a stable digital cryptocurrency that will be fully backed by a reserve of real assets — the Libra Reserve — and supported by a competitive network of exchanges buying and selling Libra.
That means anyone with Libra has a high degree of assurance they can convert their digital currency into local fiat currency based on an exchange rate, just like exchanging one currency for another when traveling.
This approach is similar to how other currencies were introduced in the past: to help instill trust in a new currency and gain widespread adoption during its infancy, it was guaranteed that a country’s notes could be traded in for real assets, such as gold.
Instead of backing Libra with gold, though, it will be backed by a collection of low-volatility assets, such as bank deposits and short-term government securities in currencies from stable and reputable central banks.

It is important to highlight that this means one Libra will not always be able to convert into the same amount of a given local currency (i.e., Libra is not a “peg” to a single currency).
Rather, as the value of the underlying assets moves, the value of one Libra in any local currency may fluctuate.
However, the reserve assets are being chosen to minimize volatility, so holders of Libra can trust the currency’s ability to preserve value over time.
The assets in the Libra Reserve will be held by a geographically distributed network of custodians with investment-grade credit rating to provide both security and decentralization of the assets.

The assets behind Libra are the major difference between it and many existing cryptocurrencies that lack such intrinsic value and hence have prices that fluctuate significantly based on expectations.
Libra is indeed a cryptocurrency, though, and by virtue of that, it inherits several attractive properties of these new digital currencies: the ability to send money quickly, the security of cryptography, and the freedom to easily transmit funds across borders.
Just as people can use their phones to message friends anywhere in the world today, with Libra, the same can be done with money — instantly, securely, and at low cost.

Interest on the reserve assets will be used to cover the costs of the system, ensure low transaction fees, pay dividends to investors who provided capital to jumpstart the ecosystem (read “The Libra Association” here), and support further growth and adoption.
The rules for allocating interest on the reserve will be set in advance and will be overseen by the Libra Association.
Users of Libra do not receive a return from the reserve.

For more on the reserve policy and the details of the Libra currency, please read here.

5. The Libra Association

To make the mission of Libra a reality — a simple global currency and financial infrastructure that empowers billions of people — the Libra Blockchain and Libra Reserve need a governing entity that is comprised of diverse and independent members.
This governing entity is the Libra Association, an independent, not-for-profit membership organization, headquartered in Geneva, Switzerland.
Switzerland has a history of global neutrality and openness to blockchain technology, and the association strives to be a neutral, international institution, hence the choice to be registered there.
The association is designed to facilitate the operation of the Libra Blockchain; to coordinate the agreement among its stakeholders — the network’s validator nodes — in their pursuit to promote, develop, and expand the network, and to manage the reserve.

The association is governed by the Libra Association Council, which is comprised of one representative per validator node.
Together, they make decisions on the governance of the network and reserve.
Initially, this group consists of the Founding Members: businesses, nonprofit and multilateral organizations, and academic institutions from around the world.
All decisions are brought to the council, and major policy or technical decisions require the consent of two-thirds of the votes, the same supermajority of the network required in the BFT consensus protocol.

Through the association, the validator nodes align on the network’s technical roadmap and development goals.
In that sense, it is similar to other not-for-profit entities, often in the form of foundations, which govern open-source projects.
As Libra relies on a growing distributed community of open-source contributors to further itself, the association is a necessary vehicle to establish guidance as to which protocols or specifications to develop and to adopt.

The Libra Association also serves as the entity through which the Libra Reserve is managed, and hence the stability and growth of the Libra economy are achieved.
The association is the only party able to create (mint) and destroy (burn) Libra.
Coins are only minted when authorized resellers have purchased those coins from the association with fiat assets to fully back the new coins.
Coins are only burned when the authorized resellers sell Libra coin to the association in exchange for the underlying assets.
Since authorized resellers will always be able to sell Libra coins to the reserve at a price equal to the value of the basket, the Libra Reserve acts as a “buyer of last resort.” These activities of the association are governed and constrained by a Reserve Management Policy that can only be changed by a supermajority of the association members.

In these early years of the network, there are additional roles that need to be performed on behalf of the association: the recruitment of Founding Members to serve as validator nodes; the fundraising to jumpstart the ecosystem; the design and implementation of incentive programs to propel the adoption of Libra, including the distribution of such incentives to Founding Members; and the establishment of the association’s social impact grant-making program.

An additional goal of the association is to develop and promote an open identity standard.
We believe that decentralized and portable digital identity is a prerequisite to financial inclusion and competition.

An important objective of the Libra Association is to move toward increasing decentralization over time.
This decentralization ensures that there are low barriers to entry for both building on and using the network and improves the Libra ecosystem’s resilience over the long term.
As discussed above, the association will develop a path toward permissionless governance and consensus on the Libra network.
The association’s objective will be to start this transition within five years, and in so doing will gradually reduce the reliance on the Founding Members.
In the same spirit, the association aspires to minimize the reliance on itself as the administrator of the Libra Reserve.

For more on the Libra Association, please read here.

6. What’s Next for Libra?

Today we are publishing this document outlining our goals for Libra and launching libra.org as a home for the association and all things Libra.
It will continue to be updated over the coming months.
We are also open- sourcing the code for the Libra Blockchain and launching Libra’s initial testnet for developers to experiment with and build upon.

There is much left to do before the target launch in the first half of 2020.

The Libra Blockchain:
Over the coming months, the association will work with the community to gather feedback on theLibra Blockchain prototype and bring it to a production-ready state.
In particular, this work will focus on ensuring the security, performance, and scalability of the protocol and implementation.

• The Libra Association will construct well-documented APIs and libraries to enable users to interact with the Libra Blockchain.
• The Libra Association will create a framework for the collaborative development of the technology behind the Libra Blockchain using the open-source methodology.
Procedures will be created for discussing and reviewing changes to the protocol and software that support the blockchain.
• The association will perform extensive testing of the blockchain, which range from tests of the protocol to constructing a full-scale test of the network in collaboration with entities such as wallet services and exchanges to ensure the system is working before launch.
• The association will work to foster the development of the Move language and determine a path for third parties to create smart contracts once language development has stabilized — after the launch of the Libra ecosystem.

Together with the community, the association will research the technological challenges on the path to a permissionless ecosystem so that we can meet the objective to begin the transition within five years of the launch.

The Reserve:
• The association will work to establish a geographically distributed and regulated group of global institutional custodians for the reserve.
• The association will establish operational procedures for the reserve to interact with authorized resellers and ensure high-transparency and auditability.
• The association will establish policies and procedures that establish how the association can change the composition of the reserve basket.

The Libra Association:
• We will work to grow the Libra Association Council to around 100 geographically distributed and diverse members, all serving as the initial validator nodes of the Libra Blockchain.
• The association will develop and adopt a comprehensive charter and set of bylaws for the association on the basis of the currently proposed governance structure.
• We will recruit a Managing Director for the association and work with her/him to continue hiring for the association’s executive team.
• We will identify social impact partners aligned with our joint mission and will work with them to establish a Social Impact Advisory Board and a social impact program.

7. How to Get Involved

The association envisions a vibrant ecosystem of developers building apps and services to spur the global use of Libra.
The association defines success as enabling any person or business globally to have fair, affordable, and instant access to their money.
For example, success will mean that a person working abroad has a fast and simple way to send money to family back home, and a college student can pay their rent as easily as they can buy a coffee.

Our journey is just beginning, and we are asking the community to help.
If you believe in what Libra could do for billions of people around the world, share your perspective and join in.
Your feedback is needed to make financial inclusion a reality for people everywhere.
If you are a researcher or protocol developer, an early preview of the Libra testnet is available under the Apache 2.0 Open Source License, with accompanying documentation.
This is just the start of the process, and the testnet is still an early prototype under development, but you can read, build, and provide feedback right away.
Since the current focus is on stabilizing the prototype, the project may initially be slower to take community contributions.
However, we are committed to building a community-oriented development process and opening the platform to developers — starting with pull requests — as soon as possible.
If you want to learn about the Libra Association, read more here.
If your organization is interested in becoming a Founding Member or applying for social impact grants from the Libra Association, read more here.

The association will work with the global community in the coming months and continue to partner with policymakers worldwide to further the mission.

8. Conclusion

This is the goal for Libra: A stable currency built on a secure and stable open-source blockchain, backed by a reserve of real assets, and governed by an independent association.

Our hope is to create more access to better, cheaper, and open financial services — no matter who you are, where you live, what you do, or how much you have.
We recognize that the road to delivering this will be long, arduous, and won’t be achieved in isolation — it will take coming together and forming a real movement around this pursuit.
We hope you’ll join us and help turn this dream into a reality for billions of people around the world.


[1] Best Buy. “AT&T prepaid Alcatel CAMEOX device purchase.” Bestbuy.com.(Accessed: May 15, 2019). Available: https://www.bestbuy.com/site/at-t-prepaid-alcatel-cameox-4g-lte-with- 16gb-memory-cell-phone-arctic-white/6008102.p?skuId=6008102

[2] A. Demirgüç-Kunt, L. Klapper, D. Singer, S. Ansar, and J. Hess. The Global Findex database 2017: Measuring financial inclusion and the fintech revolution. World Bank Group, 2018. Globalfindex.worldbank.org. Accessed: May 15 2019. Available: https://globalfindex.worldbank.org/sites/globalfindex/ files/2018-04/2017%20Findex%20full%20report_0.pdf

[3] OECD. Mobile phones: Pricing structures and trends. Paris, France: OECD Publishing, 2000, p. 67. Available: https://books.google.com/books?id=p- cP84M_GBeoC&pg=PA6&lpg=PA6&dq=1999+price+SMS+europe&source=bl&ots=TIbwgZWCmj&sig=ACfU3U2Z_yRawxW78qVSVO_wHCtRupoqoA&hl=en&sa=X- &ved=2ahUKEwjOmeG9tMHiAhVVFzQIHU8eBEMQ6AEwD3oECAkQAQ#v=onepage&q=SMS&f=false

[4] Consumer Federation of America. “How payday loans work.” Payday Loan Consumer Information. (Accessed: May 19, 2019). Available: https://paydayloaninfo.org/facts.

[5] A. Demirgüç-Kunt, L. Klapper, D. Singer, S. Ansar, and J. Hess. The Global Findex database 2017: Measuring financial inclusion and the fintech revolution. World Bank Group, 2018. Globalfindex.worldbank.org. Accessed: May 15 2019. Available: https://globalfindex.worldbank.org/sites/globalfindex/ files/2018-04/2017%20Findex%20full%20report_0.pdf

technical-paper of DnDiem

* McsEngl.DnDiem'techincal-paper,
* McsEngl.DnDiem-protocol'techincal-paper,

* The Libra Blockchain: https://developers.libra.org/docs/assets/papers/the-libra-blockchain.pdf,
* Move: A Language With Programmable Resources: https://developers.libra.org/docs/assets/papers/libra-move-a-language-with-programmable-resources.pdf,
* State Machine Replication in the Libra Blockchain: https://developers.libra.org/docs/assets/papers/libra-consensus-state-machine-replication-in-the-libra-blockchain.pdf,

LibraBFT of protocol

"In LibraBFT, validators receive transactions from clients and share them with each other through a shared mempool protocol. The LibraBFT protocol then proceeds in a sequence of rounds. In each round, a validator takes the role of leader and proposes a block of transactions to extend a certified sequence of blocks (see quorum certificates below) that contain the full previous transaction history. A validator receives the proposed block and checks their voting rules to determine if it should vote for certifying this block. These simple rules ensure the safety of LibraBFT — and their implementation can be cleanly separated and audited. If the validator intends to vote for this block, it executes the block’s transactions speculatively and without external effect. This results in the computation of an authenticator for the database that results from the execution of the block. The validator then sends a signed vote for the block and the database authenticator to the leader. The leader gathers these votes to form a quorum certificate that provides evidence of \ge≥ 2f + 1 votes for this block and broadcasts the quorum certificate to all validators.
A block is committed when a contiguous 3-chain commit rule is met. A block at round k is committed if it has a quorum certificate and is confirmed by two more blocks and quorum certificates at rounds k + 1 and k + 2. The commit rule eventually allows honest validators to commit a block. LibraBFT guarantees that all honest validators will eventually commit the block (and proceeding sequence of blocks linked from it). Once a sequence of blocks has committed, the state resulting from executing their transactions can be persisted and forms a replicated database."

* McsEngl.DnDiem'consensus-algorithm!⇒LibraBFT,
* McsEngl.DnDiem'consensus-protocol!⇒LibraBFT,
* McsEngl.DnDiem'protocol!⇒LibraBFT,
* McsEngl.DnDiem-protocol'consensus-protocol!⇒LibraBFT,
* McsEngl.LibraBFT,

implementation of protocol (link)

Move-language of DnDiem

· Move is "a blockchain language" that maps parts of a-Dprotocol to bytecode documents that a-stack-virtual-machine executes.
· also defines and a-source-language and a-intermediate-representation-language that can-be-translated to its bytecode-language.
"We present Move, a safe and flexible programming language for the Libra Blockchain.
Move is an executable bytecode language used to implement custom transactions and smart contracts.
The key feature of Move is the ability to define custom resource types with semantics inspired by linear logic: a resource can never be copied or implicitly discarded, only moved between program storage locations.
These safety guarantees are enforced statically by Move’s type system.
Despite these special protections, resources are ordinary program values — they can be stored in data structures, passed as arguments to procedures, and so on.
First-class resources are a very general concept that programmers can use not only to implement safe digital assets but also to write correct business logic for wrapping assets and enforcing access control policies.
The safety and expressivity of Move have enabled us to implement significant parts of the Libra protocol in Move, including Libra coin, transaction processing, and validator management."

* McsEngl.DnDiem'Move-language!⇒Lmv,
* McsEngl.Lmv, /el-muv/ {2019-06-23},
* McsEngl.Lmv'(Move-language)!⇒Lmv,
* McsEngl.Move-language!⇒Lmv,
* McsEngl.lagMove!⇒Lmv,

archetype of Lmv

"The safety and expressivity of Move have enabled us to implement significant parts of the Libra protocol in Move, including Libra coin, transaction processing, and validator management."

* McsEngl.Lmv'archetype,

algorithm of Lmv

· Move-algorithm is a-document describing the-info-processing of its archetype as done by a-machine.

* McsEngl.Lmv'algorithm!⇒Lmv-algo,
* McsEngl.Lmv-algo,

algo'resource-sunt of Lmv

"The key feature of Move is the ability to define custom resource types with semantics inspired by linear logic: a resource can never be copied or implicitly discarded, only moved between program storage locations.
These safety guarantees are enforced statically by Move’s type system.
Despite these special protections, resources are ordinary program values — they can be stored in data structures, passed as arguments to procedures, and so on.
First-class resources are a very general concept that programmers can use not only to implement safe digital assets but also to write correct business logic for wrapping assets and enforcing access control policies."
"The Move resources store data values and modules store code."

* McsEngl.DnDiem'resource-value!⇒Lmv-resource,
* McsEngl.Lmv'resource!⇒Lmv-resource,
* McsEngl.Lmv'programmable-resource!⇒Lmv-resource,
* McsEngl.Lmv-resource,
* McsEngl.Move-resource--semantic-unit!⇒Lmv-resource,
* McsEngl.lagMove'resource-sut!⇒Lmv-resource,

individual-name of Lmv-resource


* McsEngl.Lmv-resource'name,

safety of Lmv-resource

"We use the term resource safety to describe the guarantees that Move resources can never be copied, reused, or lost. These guarantees are quite powerful because Move programmers can implement custom resources that also enjoy these protections."

* McsEngl.Lmv-resource'safety,


· example: 0x56.Currency.T
· 0x56 is the address where the-Currency-module is stored, Currency is the name of the module, and Currency.T is the name of the resource.

* McsEngl.DnDiem'resource-type,
* McsEngl.Lmv-resource'type,


* McsEngl.Lmv--resource-type.specific,

* LibraAccount.T,
* LibraCoin.T,
* Libra-coin: This allows us to represent Libra coins as a resource type in the Move language (in contrast to Ether and Bitcoin, which have a special status in their respective languages) [https://developers.libra.org/docs/assets/papers/the-libra-blockchain.pdf],


"When we say that a user "has an account at address 0xff on the Libra Blockchain", what we mean is that the address 0xff holds an instance of the LibraAccount.T resource. Every nonempty address has a LibraAccount.T resource. This resource stores account data, such as the sequence number, authentication key, and balance. Any part of the Libra system that wants to interact with an account must do so by reading data from the LibraAccount.T resource or invoking procedures of the LibraAccount module."

* McsEngl.Lmv'LibraAccount.T,


"The account balance is a resource of type LibraCoin.T.
As we explained in Move Has First Class Resources, this is the type of a Libra coin. This type is a "first-class citizen" in the language just like any other Move resource. Resources of type LibraCoin.T can be stored in program variables, passed between procedures, and so on."

* McsEngl.Lmv'LibraCoin.T,


· Move-resources defined by programers.

* McsEngl.Lmv-resource.custom,

algo'module-sut of Lmv

"Move modules are similar to smart contracts in other blockchain languages. A module declares resource types and procedures that encode the rules for creating, destroying, and updating its declared resources. Modules can invoke procedures declared by other modules and use types declared by other modules. However, modules enforce strong data abstraction — a type is transparent inside its declaring module and opaque outside of it. Furthermore, critical operations on a resource type T may only be performed inside the module that defines T."
"The Move resources store data values and modules store code.
...A module value, or module, contains Move bytecode that declares resource types and procedures (see Section 3.4 for more details). Like a resource type, a module is identified by the address of the account where the module is declared. For example, the identifier for the Currency module in Figure 2 is 0x56.Currency."

* McsEngl.Move-module!⇒Lmv-module,
* McsEngl.Lmv'module!⇒Lmv-module,
* McsEngl.Lmv-module,
* McsEngl.lagMove'module!⇒Lmv-module,

individual-name of module

"The module name 0x0.Currency used in the example above contains the account address 0x0 where the module code is published."

* McsEngl.Lmv-module'name,

account of module

· every Move-module is-stored in an-account.

* McsEngl.Lmv-module'account,

struct of module

"A module declares both struct types (including resources, which are a special kind of struct) and procedures."

* McsEngl.Lmv-module'struct,

procedure of module

"The procedures of a Move module define the rules for creating, accessing, and destroying the types it declares."

* McsEngl.Lmv-module'procedure,

Ircode of module

module Currency {
  resource Coin { value: u64 }
  // ...

* McsEngl.Lmv-module'Ircode,

DOING of module

upgrading of module

"We will design a versioning scheme for Move modules, resources, and transaction scripts.
Currently, Move modules can never be upgraded or deleted.
Sustainable software infrastructure must support updates and deletion."

* McsEngl.Lmv-module'upgrading,

deleting of module

"We will design a versioning scheme for Move modules, resources, and transaction scripts.
Currently, Move modules can never be upgraded or deleted.
Sustainable software infrastructure must support updates and deletion."

* McsEngl.Lmv-module'deleting,

algo.SPECIFIC of Lmv

* McsEngl.Lmv-algo.specific,

* source-algorithm,
* intermediate-representation--algorithm,
* bytecode-algorithm,
* module,
* transaction-script,

algo.SOURCECODE of Lmv

"In the future, we will have a higher-level Move source language. This source language will be designed to express common Move idioms and programming patterns safely and easily.
Since Move bytecode is a new language and the Libra Blockchain is a new programming environment, our understanding of the idioms and patterns we should support is still evolving. The source language is in the early stages of development, and we do not have a timetable for its release yet."

* McsEngl.Lmv-algo.sourcecode,

source-language of Lmv

· Move-source-language is the-language that maps Move-archetypes to Move-source-algos which are-translated to Move-bytecode-algos.

* McsEngl.Move-source-language,

algo.IRCODE of Lmv

"This section describes how to write transaction scripts and modules in the Move intermediate representation (IR).
We caution the reader that the IR is an early (and unstable) precursor to a forthcoming Move source language (see Future Developer Experience for more details).
Move IR is a thin syntactic layer over Move bytecode that is used to test the bytecode verifier and virtual machine, and it is not particularly developer-friendly.
It is high level enough to write human-readable code, yet low level enough to compile directly to Move bytecode.
Nevertheless, we are excited about the Move language and hope that developers will give the IR a try, despite the rough edges."

* McsEngl.Lmv-algo.Ircode,

intermediate-representation-language of Lmv

· Move-Ir-language is the-language that maps Move-archetypes to Move-Ir-algos which are-translated to Move-bytecode-algos.

* McsEngl.Move-IR-language,
* McsEngl.Move-intermediate-representation-language,

Ircode of Lmv

· Ircode is any part of an-Ircode-algo.

* McsEngl.Lmv-Ircode, /el-muv-aiar-koud/
* McsEngl.Move-IR!⇒Lmv-Ircode,
* McsEngl.Move-intermediate-representation!⇒Lmv-Ircode,

algo.BYTECODE of Lmv

* McsEngl.Lmv-algo.bytecode,

bytecode-language of Lmv

· Move-bytecode-language is the-language that maps Move-archetypes to Move-bytecode-algos.

* McsEngl.Move-bytecode-language,

bytecode of Lmv

· Move-bytecode is any part of a-bytecode-algo.

* McsEngl.Move-bytecode!⇒Lmv-bytcode,
* McsEngl.Lmv'bytecode!⇒Lmv-bytcode,
* McsEngl.Lmv-bytcode,
* McsEngl.bytecode-of-Move!⇒Lmv-bytcode,

virtual-machine of Lmv

"The MoveVM is a stack machine with a static type system."
"The Move virtual machine executes transaction scripts written in Move bytecode to produce an execution result. This result is used to update the blockchain state.
The virtual machine is part of a validator node."

* McsEngl.Move-Virtual-Machine!⇒Lmvvm,
* McsEngl.MoveVM!⇒Lmvvm,
* McsEngl.MVM!⇒Lmvvm,
* McsEngl.Lmv'virtual-machine!⇒Lmvvm,
* McsEngl.Lmvvm,

evaluation of Lmv

benefit of Lmv

· Dasset--semantic-unit that can-not-be-copied or implicitly discarded.
"The key feature of Move is the ability to define custom resource types with semantics inspired by linearlogic: a resource can never be copied or implicitly discarded, only moved between program storage locations"

* McsEngl.Lmv-benefit,

problem of Lmv

relation-to-Solidity of Lmv

"Move can not only be used to implement smart contracts but also custom transactions (explained later in the article), while Solidity is a language for smart contracts on Ethereum only."

* McsEngl.Lmv'relation-to-Solidity,

resource-reference of Lmv

* McsEngl.Lmv'resource-reference,

* https://developers.libra.org/docs/move-overview,
* Move-technical-paper: https://developers.libra.org/docs/assets/papers/libra-move-a-language-with-programmable-resources.pdf,
* {2019-06-19} Lee-Ting-Ting, Whitepaper Deep Dive — Move: Facebook Libra Blockchain’s New Programming Language: Key characteristics of Move and How it differentiates with Ethereum from a developer’s perspective, https://medium.com/coinmonks/whitepaper-deep-dive-move-facebook-libra-blockchains-new-programming-language-7dbd5b242c2b,

attribute of Lmv

expressivity of Lmv

"The safety and expressivity of Move have enabled us to implement significant parts of the Libra protocol in Move, including Libra coin, transaction processing, and validator management."

* McsEngl.Lmv'expressivity,

safty of Lmv

"The safety and expressivity of Move have enabled us to implement significant parts of the Libra protocol in Move, including Libra coin, transaction processing, and validator management."

* McsEngl.Lmv'safty,


* McsEngl.Lmv'generic,

* DnChain--programing-language,

node of DnDiem

* McsEngl.DnDiem'node!⇒DnDiem-node,
* McsEngl.DnDiem-node,

* Dnode,


"The Libra protocol allows a set of replicas — referred to as validators — from different authorities to jointly maintain a database of programmable resources."
· validators paid with interest from the-reserve.

* McsEngl.DnDiem'node.validator!⇒DnDiem-validator,
* McsEngl.DnDiem'validator-node!⇒DnDiem-validator,
* McsEngl.DnDiem-validator,

* appender-Dnode,

owner of validator-node


* McsEngl.DnDiem-validator'owner,

SMR-module of validator

"We call SMR module the software implementation of a LibraBFT node run by each validator."

* McsEngl.DnDiem'SMR-module,
* McsEngl.DnDiem-validator'SMR-module,

Move-vm of validator (link)


"LibraBFT belongs to the family of leader-based consensus protocols. In leader-based protocols, validators make progress in rounds, each having a designated validator called a leader. Leaders are responsible for proposing new blocks and obtaining signed votes from the validators on their proposals."

* McsEngl.DnDiem'leader,
* McsEngl.DnDiem-validator.leader,

chain of DnDiem

"The Libra Blockchain is a decentralized, programmable database designed to support a low-volatility cryptocurrency that will have the ability to serve as an efficient medium of exchange for billions of people around the world."
"The blockchain is represented as an ever-growing Merkle tree of transactions. A “leaf” is appended to the tree for each transaction executed on the blockchain."

* McsEngl.DnDiem'blockchain!⇒DnDiem-chain,
* McsEngl.DnDiem-chain,
* McsEngl.Libra-Blockchain!⇒DnDiem-chain,

history of Dchain

"Ledger history is represented by a Merkle accumulator. Each time a transaction T is added to the blockchain, a TransactionInfo structure containing the transaction T, the root hash for the state Merkle tree after the execution of T and the root hash for the event Merkle tree generated by T is appended to the accumulator."
"The ledger history stores the sequence of committed and executed transactions as well as the associated events they emitted. The purpose of the ledger history is to keep a record of how the latest ledger state was computed. There is no concept of a block of transactions in the ledger history. The consensus protocol batches transactions into blocks as an optimization and to drive the consensus protocol. However, in the logical data model, the transactions occur in sequence without distinction as to which block contained each transaction."

* McsEngl.DnDiem'ledger-history!⇒DnDiem-history,
* McsEngl.DnDiem-chain'history!⇒DnDiem-history,
* McsEngl.DnDiem-history,

Merkle-accumulator of Dchain

"The Merkle Accumulator is an append-only Merkle tree that the Libra Blockchain uses to store the ledger.
· Merkle accumulators can provide proofs that a transaction was included in the chain (“proof of inclusion”).
· They are also called history trees in literature."

* McsEngl.DnDiem'Merkle-accumulator,
* McsEngl.DnDiem-chain'Merkle-accumulator,

state of Dchain

"The ledger state represents the ground truth about the Libra ecosystem, including the quantity of Libra held by each user at a given version. Each validator must know the ledger state at the latest version in order to execute new transactions."
"At the heart of the Libra protocol are two fundamental concepts — transactions and states. At any point in time, the blockchain has a “state.” The state (or ledger state) represents the current snapshot of data on the chain. Executing a transaction changes the state of the blockchain."

* McsEngl.DnDiem'ledger-state!⇒DnDiem-state,
* McsEngl.DnDiem'state!⇒DnDiem-state,
* McsEngl.DnDiem-chain'state!⇒DnDiem-state,
* McsEngl.DnDiem-state,

structure of state

"The Libra protocol uses an account-based data model [16] to encode the ledger state. The state is structured as a key-value store, which maps account address keys to account values. An account value in the ledger state is a collection of published Move resources and modules. The Move resources store data values and modules store code. The initial set of accounts and their state are specified in the genesis ledger state (seeSection 3.1)."


* McsEngl.DnDiem-state'structure,

Merkle-tree of state

"The ledger state at each version is represented by a sparse Merkle tree that has the state of all accounts. The keys are the 256-bit hash of the addresses, and their corresponding value is the state of the entire account serialized as a binary blob. While a tree of size 2^256 is an intractable representation, subtrees consisting entirely of empty nodes are replaced with a placeholder value, and subtrees consisting of exactly one leaf are replaced with a single node.
While each TransactionInfo structure points to a different state tree, the new tree can reuse unchanged portion of the previous tree, forming a persistent data structure."

* McsEngl.DnDiem'state-Merkle-tree,
* McsEngl.DnDiem-state'Merkle-tree,


· the-latest-state is-computed from Libra's--ledger-history.

* McsEngl.DnDiem-state.latest,


"The initial set of accounts and their state are specified in the genesis ledger state"

* McsEngl.DnDiem'genesis-ledger-state,
* McsEngl.DnDiem-state.genesis,

transaction of Dchain


* McsEngl.DnDiem'transaction!⇒DnDiem-tx,
* McsEngl.DnDiem-chain'transaction!⇒DnDiem-tx,
* McsEngl.DnDiem-tx,

script of transaction

"- Each Libra transaction includes a Move transaction script that encodes the logic a validator should perform on the client's behalf (for example, to move Libra from Alice's account to Bob's account).
- The transaction script interacts with Move resources published in the global storage of the Libra Blockchain by calling the procedures of one or more Move modules.
- A transaction script is not stored in the global state, and it cannot be invoked by other transaction scripts. It is a single-use program."
"At a high level, a transaction consists of a transaction script (written in Move bytecode) and arguments to the transaction script (e.g., a recipient account address or the number of Libra to send)."

* McsEngl.DnDiem-tx'script!⇒DnDiem-tx-script,
* McsEngl.DnDiem-tx-script,
* McsEngl.Libra-transaction-script!⇒DnDiem-tx-script,
* McsEngl.Move-transaction-script!⇒DnDiem-tx-script,

argument of transaction

"At a high level, a transaction consists of a transaction script (written in Move bytecode) and arguments to the transaction script (e.g., a recipient account address or the number of Libra to send)."

* McsEngl.DnDiem-tx'argument,

execution-result of transaction

"Execution result of a transaction is a combination of:
- The new state of the set of accounts affected by the transaction.
- The events emitted by executing the transaction.
- The exit code, which indicates either success or a specific error.
- The number of gas units consumed while executing the transaction."

* McsEngl.DnDiem-tx'execution-result,

event of transaction

"Each transaction emits a list of events and those events form a Merkle accumulator. Similar to the state Merkle tree, the root hash of the event accumulator of a transaction is recorded in the corresponding TransactionInfo structure."

* McsEngl.DnDiem'event!⇒DnDiem-event,
* McsEngl.DnDiem-event,
* McsEngl.DnDiem-tx'event!⇒DnDiem-event,


· the-transaction with version|height 0.

* McsEngl.DnDiem'genesis-transaction,
* McsEngl.DnDiem-tx.genesis,

version-number of Dchain

"A version number is an unsigned 64-bit integer that corresponds to the number of transactions the system has executed. At each version i, the database contains a tuple (Ti, Oi, Si) representing the transaction (Ti), transaction output (Oi), and ledger state (Si)."
"A version is also called “height” in blockchain literature.
· The Libra Blockchain doesn't have an explicit notion of a block — it only uses blocks for batching and executing transactions.
· A transaction at height 0 is the first transaction (genesis transaction), and a transaction at height 100 is the 101th transaction in the transaction store."

* McsEngl.DnDiem'height!⇒DnDiem-version,
* McsEngl.DnDiem'version!⇒DnDiem-version,
* McsEngl.DnDiem-chain'version-number!⇒DnDiem-version,
* McsEngl.DnDiem-version,

TransactionInfo of Dchain

"Each time a transaction T is added to the blockchain, a TransactionInfo structure containing the transaction T, the root hash for the state Merkle tree after the execution of T and the root hash for the event Merkle tree generated by T is appended to the accumulator."

* McsEngl.DnDiem'TransactionInfo-structure,
* McsEngl.DnDiem-chain'TransactionInfo-structure,

info-resource of Dchain

* McsEngl.DnDiem-chain'Infrsc,

* https://developers.libra.org/docs/assets/papers/the-libra-blockchain.pdf,

governance of DnDiem

"The Libra Association governs the technology behind the Libra Blockchain. The governance of the technology behind the Libra Blockchain will evolve over time. The association’s first goal is to ready Libra Core for the launch of the Libra Blockchain and to create a formal Libra protocol specification. Before this launch, it is imperative that the community has a chance to review the decisions that have been made to ensure that the best technological choices have indeed been made. Before the launch of the network, the association is committed to establishing a fair and transparent process for accepting technical changes to the Libra Blockchain. No single company — including Facebook or Calibra — will have the ability to determine the future evolution of the blockchain. The association is committed to building a strong community that guides the development of the technology so that it can serve as a financial infrastructure for billions of people.
As the project evolves, so will the governance of the ecosystem. The association may create processes so that important technical changes go through a more formal review process. The association will collaborate with the community to find ways to strengthen its commitment to open source and open governance."

* McsEngl.DnDiem-govc,

Libra-Association of DnDiem

"The Libra Association is an independent, not-for-profit membership organization, headquartered in Geneva, Switzerland.
The Libra Association works to evolve and scale the network and reserve and leads a social impact grant-making program that supports financial inclusion efforts worldwide. The association collaborates with the global community and partners with policymakers to help further the Libra mission."

* McsEngl.DnDiem'Association!⇒DnDiem-Association,
* McsEngl.DnDiem-Association,
* McsEngl.Libra-Association!⇒DnDiem-Association,

membership of DnDiem-Association

· the-owners of validator-nodes consist the-membership of the-Association.
"Over time, membership eligibility will shift to become completely open and based only on the member’s holdings of Libra."

* McsEngl.DnDiem-Association'membership,

Founding-Members of DnDiem-Association

"Initially, the association (and validators) will consist of a geographically distributed and diverse set of Founding Members. These members are organizations chosen according to objective participation criteria, including that they have a stake in bootstrapping the Libra ecosystem and investing resources toward its success."
"Facebook, through its subsidiary Calibra, is just one of the initial 28 Founding Members that are coming together to form the Libra Association."

* McsEngl.DnDiem'founding-member,
* McsEngl.DnDiem-Association'Founding-Members,

Council of DnDiem-Association

"Libra Association Council is the governing body of the Libra Association.
Libra Association Council is part of the Libra Association."

* McsEngl.DnDiem-Association'Council,
* McsEngl.Libra-Association-Council,

info-resource of DnDiem-Association

* McsEngl.DnDiem-Association'Infrsc,

* https://twitter.com/Libra_,
* https://libra.org/en-US/becoming-founding-member/,

on-chain-governance of DnDiem

todo: "Defining on-chain governance contracts. Some governance actions and processes, such as the definition of the validator node set in epochs, distribution of fees, abuse reporting, etc., may initially be performed off-chain by the association. For the network to become permissionless, progressively more of these governance actions should be implemented on-chain, including the ability to modify the rules of the network over time."

* McsEngl.DnDiem-govc'on-chain,

program of DnDiem

Libra-Core of DnDiem

"Libra Core is the official name for the open-source implementation of the Libra protocol published by the Libra Association.
- This software is the first implementation of the Libra protocol and the Move language.
- Libra Core includes both validator and client functionalities.
- Libra Core is written in Rust."
· Libra-Core is an-open-source prototype of the-Libra-protocol.
· you can-run validator-nodes using the-Libra-Core.

* McsEngl.DnDiem'Core!⇒DnDiem-Core,
* McsEngl.DnDiem-Core,
* McsEngl.Libra-Core!⇒DnDiem-Core,

open-source of DnDiem-Core

"The first implementation of the Libra protocol — the technology behind the blockchain — is Libra Core, which is an open-source project managed by the Libra Association using development practices established by the open-source community."

* McsEngl.DnDiem-Core'open-source,

license of DnDiem-Core

· Apache 2.0: https://www.apache.org/licenses/LICENSE-2.0.html.
"The license grants the user of the software the freedom to use the software for any purpose, to distribute it, and to modify it."

* McsEngl.DnDiem-Core'license,

repo of DnDiem-Core

· https://github.com/libra/libra.

* McsEngl.DnDiem-Core'repo,

implementation-language of DnDiem-Core

· Rust.
"Ben here, I'm the tech lead on the Calibra team. Libra started with a blank slate -- all options were open. Once we made the decision to build our own blockchain infrastructure, the next question was what language to use. The team spent time considering different options, many of which OP listed. As a project where security is a primary focus, the type-safety and memory-safety of Rust were extremely appealing. Over the past year, we've found that even though Rust has a high learning curve, it's an investment that has paid off. Rust has helped us build a clean, principled blockchain implementation.
Part of our decision to chose Rust was based on the incredible momentum this community has achieved. We'll need to work together on challenges like tooling, build times, and strengthening the ecosystem of 3rd-party crates needed by security-sensitive projects like ours. We're looking forward to working with the Rust community for years to come. I'd love to hear your thoughts on ways that we can work together to continue building the momentum behind Rust."

* McsEngl.DnDiem-Core'language,

language-component of DnDiem-Core

"Move is a new programming language developed to provide a safe and programmable foundation for the Libra Blockchain."

* McsEngl.DnDiem-Core'language-component,

virtual-machine--component of DnDiem-Core-language

"The virtual machine (VM), which contains the bytecode format, a bytecode interpreter, and infrastructure for executing a block of transactions. This directory also contains the infrastructure to generate the genesis block."
"The MoveVM executes transactions expressed in the Move bytecode. There are two main crates: the core VM and the VM runtime. The VM core contains the low-level data type for the VM - mostly the file format and abstraction over it. A gas metering logical abstraction is also defined there."

* McsEngl.DnDiem-Core'vm-component,

bytecode-verifier--component of DnDiem-Core-language

"The bytecode verifier, which contains a static analysis tool for rejecting invalid Move bytecode. The virtual machine runs the bytecode verifier on any new Move code it encounters before executing it. The compiler runs the bytecode verifier on its output and surfaces the errors to the programmer."

* McsEngl.DnDiem-Core'bytecode-verifier,

* https://github.com/libra/libra/tree/master/language/bytecode_verifier,

Ir-compiler--component of DnDiem-Core-language

"The Move intermediate representation (IR) compiler, which compiles human-readable program text into Move bytecode.
Warning: the IR compiler is a testing tool. It can generate invalid bytecode that will be rejected by the Move bytecode verifier. The IR syntax is a work in progress that will undergo significant changes."

* McsEngl.DnDiem-Core'Ir-compiler--component,

standard-library--component of DnDiem-Core-language

"The standard library, which contains the Move IR code for the core system modules such as LibraAccount and LibraCoin."

* McsEngl.DnDiem-Core'standard-library,

tests--component of DnDiem-Core-language

"The tests for the virtual machine, bytecode verifier, and compiler. These tests are written in Move IR and run by a testing framework that parses the expected result of running a test from special directives encoded in comments."

* McsEngl.DnDiem-Core'tests-component,

network-component of DnDiem-Core

"The network component is specifically designed to facilitate the consensus and shared mempool protocols."

* McsEngl.DnDiem-Core'network-component,

admission-control--component of DnDiem-Core

"Admission Control (AC) is the public API endpoint for Libra and it takes public gRPC requests from clients.
... This module interacts with:
- The Mempool component, to submit transactions from clients.
- The Storage component, to query validator storage."
"In Libra Core, admission control is the sole external interface to the validator. Any incoming request (transaction submission or queries) from a client goes through admission control. A client does not have the ability to access the storage, or any other component in the system, without going through AC. This filters requests and protects the system.
· AC is a validator's entry point for all client interactions. It performs basic validity checks on a submitted transaction. After completing validity checks, it passes the transaction to mempool.
· A client will use AC for submitting transactions and performing queries (reads)."

* McsEngl.DnDiem'AC,
* McsEngl.DnDiem-Core'admission-control--component,

storage-component of DnDiem-Core

"The storage module provides reliable and efficient persistent storage for the entire set of data on the Libra Blockchain, as well as the necessary data used internally by Libra Core.
The storage module is designed to serve two primary purposes:
· Persist the blockchain data, specifically the transactions and their outputs that have been agreed by validators via consensus protocol.
· Provide a response with Merkle proofs to any query that asks for a part of the blockchain data. A client can easily verify the integrity of the response if they have obtained the correct root hash."

* McsEngl.DnDiem-Core'storage,

Libra-client of DnDiem

"A Libra client:
- Is a piece of software that has the capability to interact with the Libra Blockchain.
- Can be run by the end-user or on behalf of the end user (for example, for a custodial client).
- Allows the user to construct, sign, and submit transactions to a validator node.
- Can issue queries to the Libra Blockchain (through the validator node), request the status of a transaction or account, and verify the response.
Libra Core contains a client"

* McsEngl.DnDiem'client!⇒DnDiem-client,
* McsEngl.DnDiem-client,

Libra-CLI of DnDiem

"This guide describes how to use the Libra command line interface (CLI) client to interact with the Libra Blockchain.
The CLI is invoked as an interactive shell.
It provides basic commands to create accounts, mint coins, perform transfers, and query the blockchain.
You can use the CLI client to interact with a validator node on the testnet, on a local Libra Blockchain, or on a remote blockchain by specifying the node's hostname."

* McsEngl.DnDiem'CLI!⇒DnDiem-Cli,
* McsEngl.DnDiem-Cli,
* McsEngl.Libra-CLI!⇒DnDiem-Cli,

invocation of DnDiem-Cli

1) Connect to the Testnet via the CLI Client: ./scripts/cli/start_cli_testnet.sh
2) Run a Local Libra Network and Spawn a CLI Client: cargo run -p libra_swarm -- -s
3) Run a CLI Client to Connect to Any Libra Network: cargo run -p client --bin client -- [OPTIONS] --host <host> --validator_set_file <validator_set_file>

* McsEngl.DnDiem-Cli'invocation,

command of DnDiem-Cli

* McsEngl.DnDiem-Cli'command,

* account | a — Account related operations,
* transfer | transferb | t | tb — Transfer coins from account to another,
* query | q — Query data from destination chain,
* quit | q! — Exits the CLI,
* help | h — Prints help,

info-resource of DnDiem-Cli

* McsEngl.DnDiem-Cli'Infrsc,

* https://developers.libra.org/docs/reference/libra-cli,

info-resource of program

* McsEngl.DnDiem-program'Infrsc,

* A lightweight JavaScript library for Libra: https://github.com/bonustrack/libra-grpc,
* Example Libra Go client SDK: https://github.com/phlip9/libra_example,
* Libra Testnet Explorer: https://librabrowser.io/,

wallet of DnDiem


* McsEngl.DnDiem'wallet,

account of DnDiem

"An account in the Libra Blockchain is a container for an arbitrary number of Move resources and Move modules."

* McsEngl.DnDiem'account!⇒DnDiem-account,
* McsEngl.DnDiem-account,

address of account

"An account address is a 256-bit value. To create a new account, a user first generates a fresh verification/signature key-pair (vk,sk) for a signature scheme and uses the cryptographic hash of the public verification key vk as an account address a=H(vk)."

* McsEngl.DnDiem-account'address,

public-verification-key of account

"To create a new account, a user first generates a fresh verification/signature key-pair (vk,sk) for a signature scheme"

* McsEngl.DnDiem-account'public-verification-key!⇒DnDiem-vk,

private-signing-key of account

"To create a new account, a user first generates a fresh verification/signature key-pair (vk,sk) for a signature scheme
... Once the new account is created at a, the user can sign transactions to be sent from that account using the private signing key sk. The user can also rotate the key used to sign transactions from the account without changing its address, e.g., to proactively change the key or to respond to a possible compromise of the key."

* McsEngl.DnDiem-account'private-signing-key!⇒DnDiem-sk,

Move-resource of account

· each account contains one or more resources.

* McsEngl.DnDiem-account'Move-resource,

Move-module of account

· each account contains zero or more modules.

* McsEngl.DnDiem-account'Move-module,

relation-to--human-entity of account

"The Libra protocol does not link accounts to a real-world identity. A user is free to create multiple accounts by generating multiple key-pairs. Accounts controlled by the same user have no inherent link to each other. This scheme follows the example of Bitcoin and Ethereum in that it provides pseudonymity [19] for users."

* McsEngl.DnDiem-account'relation-to--human-entity,

wallet.Calibra of DnDiem

"Facebook created a subsidiary — Calibra — that will operate a wallet service on top of the Libra Network, and while Facebook, Inc. owns and controls Calibra, it won’t see financial data from Calibra. Even more importantly, people will have many ways in which to use Libra and access the network. You’ll be able to use a range of custodial and non-custodial wallets that will have full interoperability with one another, meaning you’ll be able to pay and receive payments across wallets from different companies, or use a software wallet you’d operate on your own. Bottom line: You won’t have to trust Facebook to get the benefit of Libra. And Facebook won’t have any special responsibility over the Libra Network. But we hope that people will respond favorably to the Calibra wallet."
[David-Marcus, https://www.facebook.com/notes/david-marcus/libra-2-weeks-in/10158616513819148/]

* McsEngl.DnDiem-wallet.Calibra,

evaluation of DnDiem

* McsEngl.DnDiem'evaluation,

* white-paper evaluation from Muneeb.Ali (Blockstack) https://muneebali.com/static/files/libra-muneeb.pdf,
* {2019-07-11} https://cointelegraph.com/news/top-6-issues-experts-entities-have-with-libra,
* {2019-07-02} Joseph-E-Stiglitz, Thumbs Down to Facebook’s Cryptocurrency, https://www.project-syndicate.org/commentary/facebook-libra-facilitates-crime-money-laundering-by-joseph-e-stiglitz-2019-07,
* {2019-06-26} Mustafa-Al-Bassam, "Thread: as the only research co-founder of Chainspace that did not join Facebook (the blockchain scalability startup that Facebook acquired), people have been asking me about my view of Libra. Here's a thread about it.", https://twitter.com/musalbas/status/1143629828551270401,
* {2019-06-25} Shay.Scott, Facebook’s Libra Cryptocurrency: Bad for Privacy, Bad for Competition, https://www.coindesk.com/facebooks-libra-cryptocurrency-bad-for-privacy-bad-for-competition,
* {2019-06-24} The Mother of Central Banks Sounds the Alarm on Facebook Cryptocurrency Libra: https://www.ccn.com/crypto/mother-central-banks-alarmed-facebook-cryptocurrency-libra/2019/06/24/,
* {2019-06-18} Alastair-Marsh, Facebook Token Runs Into Instant Political Opposition in Europe, https://www.bloomberg.com/news/articles/2019-06-18/france-calls-for-central-bank-review-of-facebook-cryptocurrency,
* {2019-06-11} Antonopoulos, Bitcoin Q&A: Facebook's Libra, https://www.youtube.com/watch?v=OjTQAkem-VU,

benefit of DnDiem

problem of DnDiem

* McsEngl.DnDiem'problem!⇒DnDiem-problem,
* McsEngl.DnDiem-problem,

* Libra-Reserve-problem,


· the-system must prove that preserves the ability of governments to conduct monetary policy.

* McsEngl.DnDiem-problem.monetary-policy,

* {2019-06-28} Adam-Reese, https://medium.com/@oneadamreese/does-facebooks-libra-threaten-fiscal-sovereignty-in-the-global-south-cca3dcba39a6,


"With Libra, censorship-resistance is even more important, as Libra could very well end up being the world's "de facto" currency, and if the Libra network is the only way to transfer that currency, and it's less censorship-resistant, we're worse off than where we started."
[Mustafa Al-Bassam, https://twitter.com/musalbas/status/1143629839666176002]
"a digital network that features regulated on and off ramps with proper know-your-customer (KYC) practices, combined with the ability for law enforcement and regulators to conduct their own analysis of on-chain activity"
[David-Marcus, https://www.facebook.com/notes/david-marcus/libra-2-weeks-in/10158616513819148/]

* McsEngl.DnDiem'censorship-resistance,
* McsEngl.DnDiem-problem.censorship-resistance,

law of DnDiem

* McsEngl.DnDiem'law,

* {2019-06-19} https://cointelegraph.com/news/russia-will-not-legalize-facebooks-cryptocurrency-official-says,

info-resource of DnDiem

* McsEngl.DnDiem'Infrsc,

* https://libra.org/en-US/,
* https://developers.libra.org/,
* https://libra.org/en-US/white-paper/,
* https://calibra.com/,
=== community:
* https://community.libra.org/,
* https://twitter.com/LibraDev,
* {2019-07-17} https://www.cryptoglobe.com/latest/2019/07/facebook-answers-tough-questions-about-libra-by-u-s-senate-banking-committee/,
* {2019-07-03} David-Marcus, https://www.facebook.com/notes/david-marcus/libra-2-weeks-in/10158616513819148/,
* {2019-06-18} Nick-Statt, FACEBOOK’S CALIBRA IS A SECRET WEAPON FOR MONETIZING ITS NEW CRYPTOCURRENCY The newly formed subsidiary will build Facebook’s digital wallet, https://www.theverge.com/2019/6/18/18682838/facebook-digital-wallet-calibra-libra-cryptocurrency-kevin-weil-david-marcus-interview,
* {2019-06-18} https://www.nytimes.com/2019/06/18/technology/how-libra-would-work-for-you.html,
* {2019-06-18} Alastair-Marsh, Facebook Token Runs Into Instant Political Opposition in Europe, https://www.bloomberg.com/news/articles/2019-06-18/france-calls-for-central-bank-review-of-facebook-cryptocurrency,
* {2019-06-18} https://cointelegraph.com/news/binance-research-facebooks-libra-could-spark-additional-cryptocurrency-volume,
* {2019-06-18} https://cointelegraph.com/news/facebook-releases-cryptocurrency-white-paper-for-libra-currency,
* {2019-02-04} Alex-Heath, Facebook Makes First Blockchain Acquisition With Chainspace: Sources, https://cheddar.com/media/facebook-blockchain-acquisition-chainspace,

DOING of DnDiem

main-function of DnDiem

"Libra’s mission is to enable a simple global currency and financial infrastructure that empowers billions of people."

* McsEngl.DnDiem'main-function,


* McsEngl.DnDiem'evoluting,

=== whitepaper release:
"Social media giant Facebook has released the white paper for its long-awaited cryptocurrency and blockchain-based financial infrastructure project today, June 18."

todo of DnDiem

* McsEngl.DnDiem'roadmap,
* McsEngl.DnDiem'todo,

* https://libra.org/en-US/permissionless-blockchain/,


* Dcurrency-DnChain,
* entity,


* McsEngl.DnDiem'specific,

* mainnet,
* testnet,


"The Libra testnet is a demonstration of an early prototype of the Libra Blockchain software — Libra Core."

* McsEngl.DnDiem.testnet,


this webpage was-visited times since {2019-06-18}

page-wholepath: synagonism.net / worldviewSngo / dirTchInf / DnDiem

· this page uses 'locator-names', names that when you find them, you find the-LOCATION of the-concept they denote.
· clicking on the-green-BAR of a-page you have access to the-global--locator-names of my-site.
· use the-prefix 'DnDiem' for structured-concepts related to current concept 'Libra--blockchain-net'.
· TYPE CTRL+F "McsLang.words-of-concept's-name", to go to the-LOCATION of the-concept.
· a-preview of the-description of a-global-name makes reading fast.

• author: Kaseluris.Nikos.1959
• email:
• twitter: @synagonism

• version.last.dynamic: McsTchInf000028.last.html,
• version.1-0-0.2021-04-10: (0-16) ../../dirMiwMcs/dirTchInf/filMcsDnLbr.1-0-0.2021-04-10.html,
• version.0-1-0.2019-06-18 draft creation,

support (link)