Justification de la conception de Cardano

Why We Are Building Cardano

作者 Charles Hoskinson and IOHK · 2017

Introduction

Introduction

A long-term view on improving the design of cryptocurrencies so they can work on mobile devices with a reasonable and secure user experience ● Bringing stakeholders closer to the operations and maintenance of their cryptocurrency ● Acknowledging the need to account for multiple assets in the same ledger ● Abstracting transactions to include optional metadata in order to better conform to the needs of legacy systems ● Learning from the nearly 1,000 altcoins by embracing features that make sense ● Adopt a standards-driven process inspired by the Internet Engineering Task Force using a dedicated foundation to lock down the final protocol design
● Explore the social elements of commerce
● Find a healthy middle ground for regulators to interact with commerce without compromising some core principles inherited from Bitcoin

From this unstructured set of ideas, the principals working on Cardano began both to explore

cryptocurrency literature and to build a toolset of abstractions. The output of this research is

IOHK’s extensive library of papers, numerous survey results such as this recent scripting

language overview as well as an Ontology of Smart Contracts, and the Scorex project. Lessons

yielded an appreciation for the cryptocurrency industry’s unusual and at times

counterproductive growth.

First, unlike successful protocols such as TCP/IP, there is little layering in the design of

cryptocurrencies. There has been a desire to preserve a single notion of consensus around

facts and events recorded in a single ledger, regardless of whether it makes sense.

For example, Ethereum has encumbered enormous complexity attempting to become a

universal world computer, but suffers from trivial concerns potentially destroying the system’s

ability to operate as a store of value. Should everyone’s program be a first class citizen

regardless of its economic value, cost to maintain, or regulatory consequences?

Second, there is little appreciation for prior results in mainstream cryptographic research. For

example, Bitshares’ delegated Proof of Stake could have easily and reliably generated random

numbers using coin tossing with guaranteed output delivery, which is a technique known since

the 1980s (see the seminal paper by Rabin and Ben-Or).

Third, most altcoins (with a few notable exceptions such as Tezos) have not made any

accommodation for future updates. The ability to successfully push a soft or hard fork is pivotal

to the long-term success of any cryptocurrency.

As a corollary, enterprise users cannot commit millions of dollars worth of resources to

protocols where the roadmap and actors behind them are ephemeral, petty or radicalized. There

WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 3 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

needs to be an efficient process through which social consensus can form around a vision for

evolving the underlying protocol. If this process is enormously burdensome, fragmentation

could break the community apart.

Finally, money is ultimately a social phenomenon. In the effort to anonymize and

disintermediate central actors, Bitcoin and its contemporaries have also discarded the need for

stable identities, metadata and reputation in commercial transactions. Adding these data

through centralized solutions removes the auditability, global availability and immutability —

which is the entire point of using a blockchain.

Legacy financial systems such as those composed of SWIFT, FIX and ACH are rich in

transactional metadata. It is not enough to know how much value moved between accounts,

regulation often requires the attribution of actors involved, compliance information, reporting

suspicious activity, and other records and actions. In some cases, the metadata is more

important than the transaction.

Hence, it seems reasonable to infer that the manipulation of metadata could be as harmful as

counterfeiting currency or rewriting transaction history. Making no accommodation for actors

who want to voluntarily include these fields seems counterproductive to mainstream adoption

and consumer protection.

Sojourn's End

The aggregation of our principled exploration of the cryptocurrency space is two collections of

protocols. Respectively, a provably secure Proof-of-Stake [1][2] based cryptocurrency called the

Cardano Settlement Layer (CSL) and a set of protocols called the Cardano Computation Layer

(CCL).

Our design emphasis is to accommodate the social aspects of cryptocurrencies, build in layers

by separating the accounting of value from complex computation and address the needs of

regulators within the scope of several immutable principles . Furthermore, where it is sensible,

1 we attempt to vet proposed protocols through peer review and check code against formal

specifications.

1 See Regulation section for list WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 4 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Proof of Stake

Using proof of stake for a cryptocurrency is a hotly debated design choice, however because it

adds a mechanism to introduce secure voting, has more capacity to scale, and permits more

exotic incentive schemes, we decided to embrace it.

Our proof of stake protocol is called Ouroboros and it has been designed by an extremely

talented team of cryptographers from five academic institutions led by Professor Aggelos

2 Kiayias of the University of Edinburgh. The core innovation it brings beyond being proven secure

using a rigorous cryptographic model is a modular and flexible design that allows for the

composition of many protocols to enhance functionality.

This modularity allows for features such as delegation, sidechains, subscribable checkpoints,

better data structures for light clients, different forms of random number generation and even

different synchronization assumptions. As a network develops from having thousands to

millions and even billions of users, the requirements of its consensus algorithm will also

change. Thus, it is vital to have enough flexibility to accommodate these changes and thereby

future-proof the heart of a cryptocurrency.

Social Elements of Money

Cryptocurrencies are a prime example of the social component of money. When restricting

analysis solely to technology, there is little difference between Bitcoin and Litecoin and even

less so between Ethereum and Ethereum Classic. Yet, both Litecoin and Ethereum Classic

maintain large market capitalizations and robust, dynamic communities as well as their own

social mandates.

It can be argued that a large part of the value of a cryptocurrency is derived from its community,

the way it uses the currency, and its level of engagement in the currency’s evolution. Furthering

the thought, currencies such as Dash have even integrated systems directly into the protocol to

engage their community in deciding what should be a priority to develop and fund.

2 University of Connecticut, University of Athens, University of Edinburgh, Aarhus University, Tokyo Institute of Technology WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 5 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

The vast diversity of cryptocurrencies also provides evidence for their social elements.

Disagreements about philosophy, monetary policy, or even just between the core developers

lead to fragmentation and forks. Yet unlike their cryptocurrency counterparts, fiat currencies of

superpowers tend to survive political shifts and local disagreements without a currency crisis or

mass exodus.

Therefore, it seems that there are elements of legacy systems that are missing from the

cryptocurrency industry. We argue — and have inculcated into the Cardano roadmap – that

users of a protocol need incentives to understand the social contract behind their protocol and

have the freedom to propose changes in a productive way. This freedom extends to every

aspect of a value exchange system, from deciding how markets should be regulated to which

projects should be funded. Yet it cannot be brokered through centralized actors nor require

some special credential that could be co-opted by a well funded minority.

Cardano will implement a system of overlay protocols built on top of CSL to accommodate the

needs of its users.

First, regardless of the success of a crowdsale to bootstrap development, funds will eventually

dissipate. Hence, Cardano will include a decentralized trust funded from monotonically

3 decreasing inflation and transaction fees.

Any user should be eligible to request funds from the trust by a ballot system and the

stakeholders of CSL vote on who becomes a beneficiary. The process creates a productive

feedback loop seen in other cryptocurrencies with treasury/trust systems, such as Dash, by

starting a conversation about who should and should not be funded.

Funding discussions force a relation of long and short term goals, the cryptocurrency’s social

contract, priorities and the belief in value creation with particular proposals. This conversation

means that the community is constantly evaluating and debating its beliefs against possible

roadmaps.

Second, our hope is that Cardano will eventually include a formal, blockchain based system to

propose and vote on both soft and hard forks. Bitcoin with its block size debate, Ethereum with

the DAO fork, and many other cryptocurrencies besides have endured long standing and, in

frequent cases, unresolved arguments over the technical and moral direction of the codebase.

It can and should be argued that many of these disagreements, and the fracturing of the

community that results when action is taken, are a direct result of a lack of formal processes for

debating change.
3 This is also known as a treasury system WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 6 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Where does one go to convince Bitcoin users to adopt Segregated Witness? How should the

core developers of Ethereum measure community sentiment for bailing out the DAO? If the

community fractures, is the cryptocurrency damaged beyond repair?

In the worst cases, moral authority to act could simply devolve to whoever has the developers,

infrastructural relationships and money, not the best wishes of the vast majority of the

community. Furthermore, if a large portion of the community is inaccessible or disengaged due

to bad incentives , then how can one truly know if their acts are legitimate? 4

Proposed cryptocurrencies such as Tezos provide an interesting model to examine where a

cryptocurrency protocol is treated like a constitution containing three sections (Transaction,

Consensus and Network) with a set of formal rules and process to update the constitution. Yet

there remains much work to be done with incentives and over how exactly to model and change

a cryptocurrency with a formal language.

The use of formal methods, machine understandable specifications and merging a treasury with

this process for financial incentives are being explored as possible avenues for inspiration.

Ultimately, just the ability to propose a protocol change in a transparent, censorship free way

with blockchain based voting should improve the process, even if more elegant solutions cannot

be designed.

Designing in Layers – Cardano Settlement Layer

When designing great protocols and languages, one should not look to the future, but rather to the past. History provides a litany of examples of great ideas that are perfect on paper, yet somehow have not survived, such as the Open Systems Interconnection standards. History also provides happy accidents that have endured from TCP/IP to JavaScript.

Some principles extracted from a historical view are the following:

1. You cannot predict the future so build in wiggle room
2. Complexity is nice on paper, but simplicity usually wins 3. Too many cooks spoil the broth 4. Once a standard is set it will probably stick around, regardless of whether it is suboptimal 4 See rational ignorance
WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 7 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

5. Bad ideas can actually evolve into pretty good ones if there is a will

Cardano is a financial system that accepts its social nature. There will be a tremendous need for flexibility and the ability to address arbitrary complexity in a particular user’s transaction. If successful, there will be a need for tremendous computational, storage and network resources to accommodate millions of concurrent transactions.

Yet we do not have a digital, decentralized Robin Hood to take from the rich nodes and give to the poor ones in order to achieve a fair network. Nor do we have the luxury of trusting human beneficence to altruistically sacrifice for the greater good of the network. Therefore, Cardano’s design borrows from TCP/IP the concept of separation of concerns.

Blockchains are ultimately databases ordering facts and events with guarantees about timestamps and immutability. In the context of money, they order ownership of assets. Adding complex computation by storing and executing programs is an orthogonal concept. Do we want to know how much value went from Alice to Bob, or do we want to get involved in figuring out the whole story behind the transaction and deciding how much to send?

It is incredibly tempting to choose the latter as Ethereum has done because it is more flexible, but it violates the design principles above. Figuring out the story means that a single protocol has to be able to understand arbitrary events, script arbitrary transactions, permit arbitration in cases of fraud and even potentially reverse transactions when new information is made available.

Then one has to make difficult design decisions about what metadata to store for each transaction. What elements of the story behind Alice and Bob’s transaction are relevant? Are they relevant forever? When can we throw away some data? Does doing so violate the law in some countries?

Furthermore, some computation is private in nature. For example, when calculating the average salary of workers in an office, we would not necessarily want to leak how much each person makes. But what if every computation is publicly known? What if this publicity biases execution order to harm outcome?

Thus, we have chosen the position that the accounting of value should be separated from the story behind why the value was moved. In other words, separation of value from computation. This separation does not mean that Cardano will not support smart contracts. On the contrary, by making the separation explicit, it permits significantly more flexibility in the design, use, privacy and execution of smart contracts.

WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 8 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

The value ledger is called the Cardano Settlement Layer (CSL). As the purpose is to account for value, the roadmap has the following goals:

1. Support two sets of scripting languages, one to move value and another to enhance overlay protocol support
2. Provide support for KMZ sidechains to link to other ledgers 5 3. Support multiple types of signature including quantum resistant signatures for higher security
4. Support multiple user issued assets 5. Achieve true scalability, meaning as more users join, the capabilities of the system increase

Scripting

Starting with the scripting language, transactions between addresses in a ledger require some form of a script to execute and be proven valid. Ideally, one would not want Eve to access Alice’s money, nor would one want a poorly designed script to accidently send value to a dead address making the funds irretrievable.

Systems such as Bitcoin provide an extremely inflexible and draconian scripting language that is difficult to program bespoke transactions in, and to read and understand. Yet the general programmability of languages such as Solidity introduce an extraordinary amount of complexity into the system and are useful to only a much smaller set of actors.

Therefore, we have chosen to design a new language called Simon in honor of its creator 6 Simon Thompson and the creator of the concepts that inspired it, Simon Peyton Jones. Simon is a domain-specific language that is based upon Composing contracts: an adventure in financial engineering.

The principal idea is that financial transactions are generally composed from a collection of foundational elements . If one assembles a financial periodic table of elements, then one can 7 provide support for an arbitrarily large set of compound transactions that will cover most, if not all, common transaction types without requiring general programmability.

5 Coming soon in a paper from Kiayias, Zindros and Miller 6 Specifics will be released in an upcoming specification. The full language will be supported in the Shelley CSL release planned for Q4 of 2017 7 Project ACTUS has an in-depth elaboration
WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 9 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

The primary advantage is that security and execution can be extremely well understood. Proofs can be written to show correctness of templates and exhaust the execution space of problematic transaction events, such as the creation of new money out of thin air or transaction malleability. Second, one can leave in extensions to add more elements by way of soft forks if new functionality is required.

That said, there will always be a need to connect CSL to overlay protocols, legacy financial systems, and special purpose servers. Thus we have developed Plutus as both a general purpose smart contract language and also a special purpose DSL for interoperability.

Plutus is a typed functional language based on concepts from Haskell, which can be used to write custom transaction scripts. For CSL, it will be used for complex transactions required to add support for other layers we need to connect, such as our sidechains scheme.

Sidechains

With respect to sidechains, Cardano will support a new protocol developed by Kiayias, Miller and Zindros (KMZ sidechains) based upon prior results from proofs of proofs of work. The particular design is beyond the scope of this paper; however, the concept allows for the secure and non-interactive movement of funds from CSL to any Cardano Computation Layer or other blockchain supporting the protocol.

KMZ sidechains are the key to encapsulating complexity. Ledgers with regulatory requirements, private operations, robust scripting languages and other special concerns are effectively black boxes to CSL, yet the CSL user will gain certain guarantees about accounting and the ability to recall funds once computation is complete.

Signatures

In order to securely move value from Alice to Bob, Alice needs to prove she has the right to move the funds. The most direct and reliable way of accomplishing this task is to use a public key signature scheme where funds are connected to a public key and Alice controls an associated private key.

There are hundreds of possible schemes with different security parameters and assumptions. Some rely upon mathematical problems connected to elliptic curves, whereas others are connected to exotic concepts using lattices.
WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 10 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

The abstract goal is always the same. There exists a hard problem that cannot be solved unless someone has a secret piece of knowledge. The holder of this piece of knowledge is said to be the owner of the keypair and should be the only entity that has the ability to use it.

There are two groups of concerns a cryptocurrency faces with choosing a signature scheme. First, there is the long-term security durability of the scheme itself. Some cryptographic schemes used in the 1970s and 1980s such as DES have been broken. The period over which the scheme should be expected to survive must be decided upon.

Second, there are many enterprises, governments and other institutions that have preferred, or in some cases, mandated the use of a particular scheme. For example, the NSA maintains the Suite B protocol set. There are standards from ISO and even W3C workgroups on cryptography.

If a cryptocurrency chooses a single signature scheme, it is forced to accept that the scheme could be broken at some point in the future and at least one entity cannot use the cryptocurrency due to legal or industry restrictions. Yet a cryptocurrency cannot support every signature scheme as this would require every client to understand and validate each scheme.

For Cardano, we decided to start with using elliptic curve cryptography, the Ed25519 curve in particular. We also decided to enhance the existing libraries by adding support for HD wallets using Dr Dmitry Khovratovich and Jason Law’s Specification .
8

This said, Cardano will support more signature schemes in the future. In particular, we are interested in integrating BLISS-B to add quantum computer resistant signatures to our system. We are also interested in adding SECP256k1 to enhance interoperability with legacy cryptocurrencies such as Bitcoin.

Cardano has been designed with special extensions that will allow us to add more signature schemes through a soft fork. They will be added as needed and during major updates planned in the roadmap .
9

User Issued Assets (UIAs)

Early in Bitcoin’s history, protocols were quickly developed to allow users to issue assets that piggybacked on Bitcoin’s accounting system in order to track multiple currencies concurrently. 8 This is the documentation for Cardano’s HD Wallet Implementation. We believe Cardano is the first cryptocurrency to support Ed25519 HD Wallets
9 See cardanoroadmap.com
WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 11 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

These protocols were not natively supported by the Bitcoin protocol, but implemented through clever hacks.

In the case of Bitcoin overlays such as Colored Coins and Mastercoin (now called Omni), light clients are forced to rely on trusted servers. Also transaction fees still have to be paid in bitcoins. These properties combined with the single pipeline for transaction approval make Bitcoin suboptimal for multi-asset accounting.

In the Ethereum case using the ERC20 standard, there is more feature richness. However, transaction fees still require ether. Furthermore, the Ethereum network is having difficulty scaling to the needs of all the issued ERC20 tokens.

The fundamental problem can be broken into three parts: resources, incentives and concern. With respect to resources, adding an entirely new currency to the same ledger means one has two independent UTXO (unspent transaction inputs) sets sharing the bandwidth, mempool and block space. Consensus nodes responsible for embedding transactions of these currencies need an incentive for doing so. And not every user of a cryptocurrency will or should care about a particular entity’s currency.

Given these problems, the benefits are tremendous as the primary token of a multiasset ledger can effectively serve as a bridge currency allowing for decentralized market making. Special purpose assets could be issued to provide additional utility such as value stable assets like Tether or MakerDAO that are useful for lending and remittance applications.

Given the challenges, Cardano has adopted a pragmatic approach to multiasset accounting. Building in stages, the first challenge is designing the necessary infrastructure to support the demands of thousands of UIAs. Namely the following advancements are necessary:

1. Special purpose authenticated data structures to permit the tracking of a very large UTXO state

2. The ability to have a distributed mempool to hold a huge set of pending transactions
3. Blockchain partitioning and checkpoints to permit a huge global blockchain 4. An incentive scheme that rewards consensus nodes for including different sets of transactions 5. A subscription mechanic that allows users to decide which currencies they want to track
6. Strong security guarantees that UIAs enjoy similar security as the native asset 7. Support for decentralized market making to improve liquidity between UIA and the primary token

WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 12 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Our preliminary efforts for finding the right authenticated data structure have resulted in a new type of AVL+ Tree jointly developed by Leo Reyzin, IOHK and Waves. More research is required, but it is a foundational advancement that will be included in a later version of Cardano.

A distributed mempool could be implemented using Stanford University’s RAMCloud protocol. Experiments will begin in Q3 of 2017 to study its integration into Cardano’s consensus layer.

The remaining topics are interconnected and covered by ongoing research. We expect — subject to research results — to include a protocol into Cardano for UIAs during the Basho of CSL release in 2018.

Scalability

Distributed systems are composed of a set of computers (nodes) agreeing to run a protocol or

suite of protocols to accomplish a common goal. This goal could be sharing a file as defined by

the BitTorrent protocol or folding a protein using Folding@Home.

The most effective protocols gain resources as nodes join the network. A file hosted by

BitTorrent, for example, can be downloaded much faster on average if many peers are

concurrently downloading it. The speed increases because the peers provide resources while

also consuming them. This characteristic is what one typically means when stating a distributed

system scales.

The challenge with the design of all current cryptocurrencies is that they actually are not

designed to be scalable. Blockchains, for example, are usually an append-only linked list of

blocks. The security and availability of a blockchain protocol relies upon many nodes

possessing a full copy of the blockchain data. Thus, a single byte of data must be replicated

among N nodes. Additional nodes do not provide additional resources.

This result is the same for transaction processing and the gossiping of messages throughout

the system. Adding more nodes to the consensus system does not provide additional

transaction processing power. It just means more resources have to be spent to do the same

job. More network relaying meaning more nodes have to pass the same messages to keep the

whole network in synchronization with the most current block.

Given this topology, cryptocurrencies cannot scale to a global network on par with legacy

financial systems. In contrast, legacy infrastructure is scalable and has orders of magnitude for

more processing and storage power. Adding a specific point, Bitcoin is a very small network

relative to its payment peers, yet struggles to manage its current load.
WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 13 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Our scalability goals for Cardano are greatly aided by our consensus algorithm. Ouroboros

permits a decentralized way to elect a quorum of consensus nodes, which in turn can run more

traditional protocols developed over the last 20 years to accommodate the needs of large

infrastructure providers such as Google and Facebook .
10

For example, the election of a quorum for an epoch means we have a trusted set of nodes to

maintain the ledger for a specific time period. It is trivial to elect multiple quorums concurrently

and partition transactions to different quorums.

Similar techniques could be applied for network propagation and also sharding the blockchain

itself into unique partitions. In our current roadmap, scaling methods will be applied to

Ouroboros starting in 2018 and continue to be a focus in 2019 and 2020.

Cardano Computation Layer

As mentioned previously, there are two components of a transaction: the mechanism to send and record the flow of tokens and the reasons as well as conditions behind moving tokens. The latter can be arbitrarily complex and involve terabytes of data, multiple signatures and special events occurring. The latter can also be remarkably simple with a single signature pushing value to another address.

The challenge behind modeling the reasons and conditions of value flow is that they are immensely personal to the entities involved in the most unpredictable of ways. Lessons from contract law paint an even more problematic picture where the actors themselves might not even be aware that the transaction does not match commercial reality. We generally call this phenomenon “the semantic gap” . 11

Why should one build a cryptocurrency chasing an endless layer of complexity and abstraction? It seems Sisyphean in nature and naive in practice. Furthermore, each abstraction embraced has both legal and security consequences.

For example, there are numerous activities online that are universally deemed illegal or scorned such as the trafficking of child pornography or the selling of state secrets. By deploying robust 10 There are also other independently research protocols attempting to achieve the same end such as Elastico and Bitcoin-NG
11 Loi Luu et al. discuss this gap in their recent paper on Making Smart Contracts Smarter WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 14 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

decentralized infrastructure, one is now providing a channel for this activity to occur with the same censorship resistance that normal commercial transactions enjoy. It is legally unclear if the consensus nodes of the network — which have the incentive to become more federated over time to promote efficiency — would be held accountable for the content they host.

Prosecution of Tor operators, the brutal treatment of Silk Road’s operator and the lack of overall legal clarity behind legal protections of protocol participants leaves an uncertain road. There is no lack of imagination of what else a sufficiently advanced cryptocurrency could enable (see the Ring of Gyges). Is it reasonable to force all users of a cryptocurrency to endorse or at least enable the worst acts and conduct of the web?

Unfortunately, there are no clear answers that provide insight to a cryptocurrency designer. It is more about picking a position and defending its merit. The advantage that both Cardano and Bitcoin have is that we have chosen to separate concerns to layers. With Bitcoin, there is Rootstock. With Cardano, there is the Cardano Computation Layer.

The kinds of complex behavior that would enable the acts elaborated previously cannot run on CSL. They require the ability to run programs written in a Turing complete language and some form of gas economics to meter computation. They also require consensus nodes willing to include the transactions in their blocks.

Thus, a functionality restriction could reasonably protect users. So far, most established governments have not taken the position that the use or maintenance of a cryptocurrency is an illegal act. Hence, the vast majority of users should be comfortable maintaining a ledger that is comparable in capability with a digital payment system.

When one wants to extend capability, there are two possibilities. It is enabled by a private collective of likeminded individuals and ephemeral in nature (for example, a poker game). Or, it is enabled by a ledger of comparable capabilities as Ethereum. In both cases, we have chosen outsourcing the events to another protocol.

In the case of a private, ephemeral event, it is reasonable to avoid the blockchain paradigm entirely, but rather restrict efforts towards a library of special purpose MPC protocols that can be invoked when desired by a group of likeminded participants. The computations and activities are coordinated in a private network and reference CSL only as a trusted bulletin board and a message passing channel when necessary.

The key insight in this case is that there is consent, encapsulation of liability and privacy. CSL is being used as a digital commons for users to meet and communicate — like a park would host a private event — but does not provide any special accommodations or facilitation. Furthermore, WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 15 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

the use of special purpose MPC will enable low latency interaction without the need for blockchain bloat. Thus, it improves the scale of the system.

Cardano’s research efforts towards this library are centralized at our Tokyo Tech laboratory with some assistance from scientists abroad. We call the library “Tartaglia” after a fellow mathematician as well as contemporary of Cardano and expect the first iteration to be available in Q1 of 2018.

In the second case, one needs a blockchain with a virtual machine, a set of consensus nodes and a mechanism to enable communication between the two chains. We have begun the process of rigorously formalizing the Ethereum Virtual Machine using the K-framework in 12 partnership with a team from the University of Illinois.

The result of this analysis will inform the most optimal way to design a replicated and eventually distributed virtual machine with clear operational semantics and strong guarantees of correct 13 implementation from the specification. In other words, the VM actually does what the code tells it to do with the security risks minimized.

There are still unresolved questions about the gas economics proposed by Ethereum and how it relates to work such as Jan Hoffmann et al’s resource aware ML and the broader study of resource estimation for computation. We are also curious about the level of language independence of the virtual machine. For example, the Ethereum project has expressed desire for transition from their current VM to Web Assembly.

The next effort is in developing a reasonable programming language to express stateful contracts that will be called as services by decentralized applications. For this task, we have chosen both the approach of supporting the legacy smart contract language Solidity for low assurance applications and developing a new language called Plutus for higher assurance applications requiring formal verification.

Like the solidity based Zeppelin project, IOHK will also develop a reference library of Plutus code for application developers to use in their projects. We will also develop a specialized set of tools for formal verification inspired by work from UCSD’s Liquid Haskell project.

In terms of consensus, Ouroboros was designed in a sufficiently modular fashion to support smart contract evaluation. Hence, both CSL and CCL will share the same consensus algorithm. 12 Invented by Professor Grigore Rosu et. al., K is a universal framework for language independent machine executable semantics. Prior to our work, it has been used to model C, Java and JavaScript 13 Meaning that different consensus nodes run different smart contracts. Also known as state sharding WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 16 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

The difference is that Ouroboros can be confirmed to permit both permissioned and permissionless ledgers via token distribution.

With CSL, Ada has been distributed by a token generating event to purchasers throughout Asia who will eventually resell on a secondary market. This means that CSL’s consensus algorithm is controlled by a diverse and increasingly more decentralized set of actors or their delegated assigns. With CCL, it is possible to create a special purpose token held by delegates of that ledger who could be regulated entities, thereby creating a permissioned ledger.

The flexibility of this approach allows for different instances of CCL to materialize with different rules about the evaluation of transactions. For example, gambling activities could be restricted unless KYC/AML data is present simply by blacklisting non-attributed transactions.

Our final design focus is on adding trusted hardware security modules (HSM) to our protocol stack. These are two enormous advantages when introducing these capabilities into the protocol. First, HSMs provide massive boosts in performance without introducing security 14 concerns beyond trusting the vendor. Second, through the use of Sealed Glass Proofs (SGP), HSMs can provide assurances that data can be verified and then destroyed without being copied or leaked to malicious outsiders.

Focusing on the second point, SGPs could have a revolutionary impact upon compliance. Ordinarily, when a consumer provides personally identifiable information (PII) to authenticate identity or prove the right to participate, this information is handed to a trusted third party with the hope it will not act maliciously. This activity is intrinsically centralized, the data provider loses control over their PII and is also subject to various regulations based on jurisdiction.

The ability to select a set of trusted attestors and then warehouse PII in a hardware enclave means that any actor with a sufficiently capable HSM will be able to verify facts about an actor in an unforgeable way without the verifier knowing the identity of the actor. For example, Bob is not an US citizen. Alice is an accredited investor. James is a US taxpayer and one should send taxable profits to account X.

Cardano’s HSM strategy will be to attempt implemented specialized protocols over the next two years using Intel SGX and ARM Trustzone. Both modules are built into billions of consumer devices from laptops to cellphones and require no additional effort on the consumer side to use. Both are also heavily vetted, well designed and based upon years of iteration from some of the largest and best funded hardware security teams.

14 See http://hackingdistributed.com/2016/12/22/scaling-bitcoin-with-secure-hardware/ from Cornell University WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 17 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Regulation

The harsh reality of all modern financial systems is that as they scale, they accumulate a need, or at least a desire, for regulation. This outcome is generally the result of recurrent collapses due to the negligence of some actor or cabal of actors in a marketplace.

For example, the Knickerbocker Crisis of 1907 resulted in the creation of the Federal Reserve System in 1913 as a lender of last resort. Another example is the excesses of the 1920s in the United States that resulted in a terrible financial collapse, the Great Depression. This collapse yielded the creation of the Securities Exchange Commission in 1934 in order to prevent a similar event or at least hold bad actors accountable.

One can reasonably debate the need for, scope and efficacy of regulation, but one cannot deny its existence and the zeal with which major governments have enforced it. However, the challenge all regulators face as the world globalizes and cash becomes digital is two-pronged.

First, which set of regulations should be supreme when dealing with a collection of jurisdictions? The antiquated notion of Westphalian sovereignty melts when a single transaction can touch three dozen countries in under a minute. Should it simply be whomever wields the most geopolitical influence?

Second, improvements in privacy technology have created a digital arms race where it will become increasingly more difficult to even understand who has participated in a transaction, much less who owns a particular store of value. In a world where millions of dollars of assets can be controlled with nothing more than a secretly held 12-word mnemonic , how do you 15 enforce effective regulation?

Like all financial systems, the Cardano protocol must have an opinion in its design over what is fair and reasonable. We have chosen to divide between individual rights and the rights of a marketplace.

Individuals should always have sole access to their funds without coercion or civil asset forfeiture. This right has to be enforced because not all governments can be trusted not to abuse their sovereign power for the personal gain of corrupt politicians, as seen in Venezuela and Zimbabwe. Cryptocurrencies have to be engineered to the lowest common denominator.

15 See BIP39 https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki
WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 18 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Second, history should never be tampered with. Blockchains provide a promise of immutability. Introducing the power to roll back history or alter the official record introduces too much temptation to change the past in order to benefit a particular actor or actors.

Third, the flow of value should be unrestricted. Capital controls and other artificial walls diminish human rights. Outside of the futility of attempting to enforce them , in a global 16 economy with many citizens in the least developed nations traveling outside of their jurisdiction to find a living wage, restricting capital flows usually ends up harming the poorest in the world.

These principles stated, markets are distinctly different from individuals. While the designers of Cardano believe in individual rights, we also believe that markets have the right to openly state their terms and conditions, and if an individual agrees to do business within this market, then they must be held to those standards for the sake of integrity of the entire system.

The challenge has always been cost and practicality of enforcement. Small, multijurisdictional transactions are simply too expensive in legacy systems to provide high assurance of recourse in the event of fraud or a commercial dispute. When one sends their wire transfer to the Nigerian Prince , it is usually too expensive to try to get one’s funds back.
17

For Cardano, we feel we can innovate on three levels. First, through the use of smart contracts the terms and conditions of commercial relationships can be better controlled. If all assets are digital and can be solely expressed on CSL, strong guarantees of fraud-free commerce can be gained.

Second, the use of HSMs to provide an identity space where PII is not leaked but yet used to authenticate and credential actors should provide a global reputation system and allow for much lower cost regulated activities to be conducted, such as online gaming with automated tax compliance or decentralized exchanges.

Finally, in Cardano’s roadmap is the creation of a modular regulation DAO that can be customized to interact with user written smart contracts in order to add mutability, consumer protection and arbitration. The scope of this project will be outlined in a later paper.

16 As an example of a countermeasure to capital flow, see the Hawala Banking System 17 See Advance-fee Scam WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 19 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

What is the Point of All of It?

Cardano has been a marathon project involving feedback from hundreds of the brightest minds

inside and outside of the cryptocurrency industry. It involves tireless iteration, the active use of

peer review, and shameless theft of great ideas when uncovered.

The remaining sections each cover a particular aspect of focus we have decided is a core

component of our project. Some were selected due to a desire to improve the overall best

practices of the space whereas others are specific to Cardano’s evolution.

While no project can cover every goal or satisfy every user, our hope is to provide a vision for

what a self-evolving financial stack should look like for jurisdictions that lack them. The ultimate

reality of cryptocurrencies is not that they will disrupt the existing legacy financial systems.

Legacy financial systems are always capable of absorbing change and maintaining their form

and function.

Rather one ought to look to places where it is simply too expensive to deploy the existing

banking system, where many live on less than a few dollars a day, have no stable identity and

credit is impossible to find.

In these places, the power to bundle a payment system, property rights, identity, credit and risk

protection into a single application running on a cell phone is not just useful, it is life changing.

The reason we are building Cardano is that we feel we have a legitimate shot at delivering — or

at least advancing — this vision for the developing world.

Even in failure, if we can change the way cryptocurrencies are designed, evolved and funded,

then there is a great accomplishment.

Introduction

Une vision à long terme de l’amélioration de la conception des crypto-monnaies afin qu’elles puissent fonctionner appareils mobiles avec une expérience utilisateur raisonnable et sécurisée ● Rapprocher les parties prenantes des opérations et de la maintenance de leur cryptomonnaie ● Reconnaître la nécessité de comptabiliser plusieurs actifs dans le même grand livre ● Extraire les transactions pour inclure des métadonnées facultatives afin de mieux se conformer aux besoins des systèmes existants ● Apprendre de près de 1 000 altcoins en adoptant des fonctionnalités qui ont du sens ● Adopter un processus axé sur les normes inspiré de l'Internet Engineering Task Force en utilisant une fondation dédiée pour verrouiller la conception finale du protocole
● Explorez les éléments sociaux du commerce
● Trouver un juste milieu permettant aux régulateurs d’interagir avec le commerce sans compromettre certains principes fondamentaux hérités de Bitcoin

À partir de cet ensemble d'idées non structurées, les directeurs travaillant sur Cardano ont commencé à explorer

littérature sur les crypto-monnaies et pour construire un ensemble d'outils d'abstractions. Le résultat de cette recherche est

La vaste bibliothèque d'articles de l'IOHK, de nombreux résultats d'enquête tels que ce récent script

aperçu du langage ainsi qu'une ontologie de contrats intelligents et le projet Scorex. Leçons

cédé un appréciation pour le crypto-monnaie l'industrie inhabituel et à fois

croissance contreproductive.

Premièrement, contrairement aux protocoles à succès tels que TCP/IP, la conception des protocoles comporte peu de couches.

crypto-monnaies. Il y a eu une volonté de préserver une notion unique de consensus autour

les faits et les événements enregistrés dans un seul grand livre, que cela ait ou non un sens.

Par exemple, Ethereum a rencontré une énorme complexité en tentant de devenir un

ordinateur mondial universel, mais souffre de problèmes insignifiants qui pourraient détruire le système.

capacité à fonctionner comme une réserve de valeur. Le programme de chacun devrait-il être un citoyen de première classe

quelles que soient sa valeur économique, son coût de maintenance ou ses conséquences réglementaires ?

Deuxièmement, les résultats antérieurs de la recherche cryptographique traditionnelle sont peu appréciés. Pour

Par exemple, la preuve de participation déléguée de Bitshares aurait pu générer facilement et de manière fiable des

nombres utilisant le tirage au sort avec une livraison de sortie garantie, qui est une technique connue depuis

les années 1980 (voir l’article fondateur de Rabin et Ben-Or).

Troisièmement, la plupart des altcoins (à quelques exceptions notables telles que Tezos) n’ont apporté aucune contribution.

hébergement pour les futures mises à jour. La capacité de pousser avec succès une fourche souple ou dure est essentielle

au succès à long terme de toute cryptomonnaie.

En corollaire, les utilisateurs d'entreprise ne peuvent pas consacrer des millions de dollars de ressources à

des protocoles dont la feuille de route et les acteurs qui les sous-tendent sont éphémères, mesquins ou radicalisés. Là

POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 3 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

doit être un processus efficace grâce auquel un consensus social peut se former autour d’une vision pour

faire évoluer le protocole sous-jacent. Si ce processus est extrêmement lourd, la fragmentation

pourrait briser la communauté.

Enfin, argent est finalement un social phénomène. Dans le but d'anonymiser et

acteurs centraux désintermédiaires, Bitcoin et ses contemporains ont également écarté la nécessité de

identités, métadonnées et réputation stables dans les transactions commerciales. Ajouter ces données

grâce à des solutions centralisées, supprime l'auditabilité, la disponibilité mondiale et l'immuabilité -

c’est tout l’intérêt d’utiliser un blockchain.

Les systèmes financiers existants tels que ceux composés de SWIFT, FIX et ACH sont riches en

métadonnées transactionnelles. Il ne suffit pas de connaître la quantité de valeur transférée entre les comptes,

la réglementation nécessite souvent l'attribution des acteurs impliqués, des informations de conformité, des rapports

activité suspecte et autres enregistrements et actions. Dans certains cas, les métadonnées sont plus

important que la transaction.

Il semble donc raisonnable de déduire que la manipulation des métadonnées pourrait être aussi préjudiciable que

contrefaire de la monnaie ou réécrire l’historique des transactions. Ne faire aucun accommodement pour les acteurs

qui souhaitent inclure volontairement ces domaines semble contre-productif pour une adoption généralisée

et la protection des consommateurs.

Fin du séjour

L'agrégation de notre exploration raisonnée de l'espace des crypto-monnaies est constituée de deux collections de

protocoles. Respectivement, une crypto-monnaie basée sur une preuve de participation prouvée sécurisée [1][2] appelée le

Cardano Settlement Layer (CSL) et un ensemble de protocoles appelés Cardano Computation Layer

(CCL).

Notre objectif de conception est de prendre en compte les aspects sociaux des crypto-monnaies, en les construisant en couches

en séparant la comptabilisation de la valeur du calcul complexe et en répondant aux besoins de

régulateurs dans le cadre de plusieurs principes immuables. De plus, lorsque cela est raisonnable,

1 nous essayons d'examiner les protocoles proposés par le biais d'un examen par les pairs et de vérifier le code par rapport aux protocoles formels.

spécifications.

1 Voir la section Réglementation pour la liste POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 4 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Preuve de participation

L’utilisation d’une preuve de mise pour une crypto-monnaie est un choix de conception très controversé, mais parce qu’elle

ajoute un mécanisme pour introduire un vote sécurisé, a une plus grande capacité d'évolutivité et permet plus de

des programmes d'incitation exotiques, nous avons décidé de les adopter.

Notre protocole de preuve d'enjeu s'appelle Ouroboros et il a été conçu par un

équipe talentueuse de cryptographes de cinq institutions universitaires dirigée par le professeur Aggelos

2 Kiayias de l'Université d'Édimbourg. L'innovation fondamentale qu'il apporte au-delà de sa sécurité éprouvée

L'utilisation d'un modèle cryptographique rigoureux est une conception modulaire et flexible qui permet

composition de nombreux protocoles pour améliorer les fonctionnalités.

Cette modularité permet des fonctionnalités telles que la délégation, les sidechains, les points de contrôle abonnables,

de meilleures structures de données pour les clients légers, différentes formes de génération de nombres aléatoires et même

différentes hypothèses de synchronisation. À mesure qu'un réseau se développe, passant de milliers à

des millions, voire des milliards d'utilisateurs, les exigences de son algorithme de consensus seront également

changer. Il est donc essentiel de disposer de suffisamment de flexibilité pour s'adapter à ces changements et ainsi

pérenniser le cœur d’une crypto-monnaie.

Éléments sociaux de l'argent

Les crypto-monnaies sont un excellent exemple de la composante sociale de l’argent. Lors de la restriction

analyse uniquement à la technologie, il y a peu de différence entre Bitcoin et Litecoin et même

moins entre Ethereum et Ethereum Classic. Pourtant, Litecoin et Ethereum Classic

maintenir de grandes capitalisations boursières et des communautés robustes et dynamiques ainsi que leurs propres

mandats sociaux.

On peut affirmer qu’une grande partie de la valeur d’une cryptomonnaie provient de sa communauté,

la manière dont il utilise la monnaie et son niveau d’engagement dans l’évolution de la monnaie. Poursuivre

l'idée, des monnaies telles que Dash ont même intégré des systèmes directement dans le protocole pour

impliquer leur communauté dans le choix de ce qui devrait être une priorité à développer et à financer.

2 Université du Connecticut, Université d’Athènes, Université d’Édimbourg, Université d’Aarhus, Tokyo Institut de technologie POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 5 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

La grande diversité des crypto-monnaies témoigne également de leurs éléments sociaux.

Désaccords sur la philosophie, la politique monétaire ou même simplement entre les principaux développeurs

conduire à la fragmentation et aux fourches. Pourtant, contrairement à leurs homologues cryptomonnaies, les monnaies fiduciaires de

Les superpuissances ont tendance à survivre aux changements politiques et aux désaccords locaux sans crise monétaire ou

exode massif.

Il semble donc que certains éléments des systèmes existants soient absents du système.

industrie de la crypto-monnaie. Nous soutenons – et avons inculqué dans la feuille de route Cardano – que

les utilisateurs d’un protocole ont besoin d’incitations pour comprendre le contrat social derrière leur protocole et

avoir la liberté de proposer des changements de manière productive. Cette liberté s'étend à tous

aspect d'un système d'échange de valeurs, depuis la décision sur la manière dont les marchés doivent être réglementés jusqu'à quel

les projets devraient être financés. Pourtant, cela ne peut pas être négocié par des acteurs centralisés ni nécessiter

un titre spécial qui pourrait être coopté par une minorité bien financée.

Cardano mettra en œuvre un système de protocoles de superposition construits sur CSL pour s'adapter aux

besoins de ses utilisateurs.

Premièrement, quel que soit le succès d’une vente participative visant à amorcer le développement, les fonds finiront par

se dissiper. Par conséquent, Cardano inclura une confiance décentralisée financé de manière monotone

3 diminution de l’inflation et des frais de transaction.

Tout utilisateur devrait être éligible pour demander des fonds à la fiducie par un système de vote et le

les parties prenantes de CSL votent pour savoir qui devient bénéficiaire. Le processus crée un environnement productif

boucle de rétroaction observée dans d'autres crypto-monnaies dotées de systèmes de trésorerie/fiducie, tels que Dash, par

entamer une conversation sur qui devrait et ne devrait pas être financé.

Les discussions sur le financement imposent une relation entre les objectifs à long et à court terme, l’aspect social de la crypto-monnaie.

contrat, les priorités et la croyance en la création de valeur avec des propositions particulières. Cette conversation

signifie que la communauté évalue et débat constamment de ses croyances par rapport à d'éventuelles

feuilles de route.

Deuxièmement, nous espérons que Cardano inclura à terme un système formel basé sur blockchain pour

proposer et voter sur les soft et hard forks. Bitcoin avec son débat sur la taille des blocs, Ethereum avec

le fork DAO, et de nombreuses autres crypto-monnaies ont duré longtemps et, en

cas fréquents, disputes non résolues sur l'orientation technique et morale de la base de code.

On peut et devrait affirmer que bon nombre de ces désaccords et la fracture du

communauté qui résulte lorsque des mesures sont prises, sont le résultat direct d’un manque de processus formels pour

débattre du changement.
3 C'est ce qu'on appelle également un système de trésorerie POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 6 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Où peut-on convaincre les utilisateurs de Bitcoin d’adopter le témoignage séparé ? Comment le

Les principaux développeurs de Ethereum mesurent-ils le sentiment de la communauté en faveur du sauvetage de DAO ? Si le

Fractures communautaires, la crypto-monnaie est-elle endommagée de manière irréparable ?

Dans le pire des cas, l’autorité morale d’agir pourrait simplement revenir à celui qui détient les développeurs,

relations infrastructurelles et argent, pas les meilleurs vœux de la grande majorité des

communauté. De plus, si une grande partie de la communauté est inaccessible ou désengagée en raison

aux mauvaises incitations, alors comment savoir vraiment si leurs actes sont légitimes ? 4

Les crypto-monnaies proposées telles que Tezos fournissent un modèle intéressant pour examiner où un

Le protocole de cryptomonnaie est traité comme une constitution contenant trois sections (Transaction,

Consensus et réseau) avec un ensemble de règles formelles et un processus pour mettre à jour la constitution. Pourtant

il reste beaucoup de travail à faire en matière d'incitations et sur la manière exacte de modéliser et de changer

une cryptomonnaie avec un langage formel.

L'utilisation de méthodes formelles, de spécifications compréhensibles par machine et la fusion d'une trésorerie avec

ce processus d’incitations financières est exploré comme piste d’inspiration possible.

En fin de compte, juste la possibilité de proposer un changement de protocole de manière transparente et sans censure.

avec le vote basé sur blockchain devrait améliorer le processus, même si des solutions plus élégantes ne peuvent pas

être conçu.

Conception en couches – Cardano Couche de règlement

Lors de la conception de protocoles et de langages performants, il ne faut pas regarder vers l'avenir, mais plutôt vers le passé. L'histoire fournit une litanie d'exemples de grandes idées qui sont parfaites sur le papier, mais d'une manière ou d'une autre, n'ont pas survécu, comme les normes d'interconnexion des systèmes ouverts. L'histoire aussi fournit des accidents heureux qui ont duré de TCP/IP à JavaScript.

Certains principes extraits d’une vision historique sont les suivants :

1. Vous ne pouvez pas prédire l’avenir, alors prévoyez une marge de manœuvre
2. La complexité est belle sur le papier, mais la simplicité l'emporte généralement 3. Trop de cuisiniers gâchent le bouillon 4. Une fois qu’une norme est établie, elle restera probablement en vigueur, qu’elle soit ou non. sous-optimal 4 Voir l'ignorance rationnelle
POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 7 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

5. Les mauvaises idées peuvent en fait se transformer en de très bonnes idées s'il y a de la volonté

Cardano est un système financier qui accepte sa nature sociale. Il y aura un énorme besoin pour la flexibilité et la capacité de gérer la complexité arbitraire de la transaction d’un utilisateur particulier. Si pour réussir, il faudra d’énormes ressources de calcul, de stockage et de réseau pour gérer des millions de transactions simultanées.

Pourtant, nous n’avons pas de Robin des Bois numérique et décentralisé à prendre aux nœuds riches et à donner aux les pauvres afin de parvenir à un réseau équitable. Nous n'avons pas non plus le luxe de faire confiance aux humains bienfaisance à sacrifier de manière altruiste pour le plus grand bien du réseau. Par conséquent, Cardano Le design emprunte à TCP/IP le concept de séparation des préoccupations.

Les blockchains sont en fin de compte des bases de données ordonnant des faits et des événements avec des garanties sur horodatages et immuabilité. Dans le contexte de l’argent, ils ordonnent la propriété des actifs. Ajout le calcul complexe en stockant et en exécutant des programmes est un concept orthogonal. Voulons-nous pour savoir quelle valeur est passée d'Alice à Bob, ou voulons-nous nous impliquer dans la détermination de toute l'histoire derrière la transaction et décider du montant à envoyer ?

Il est incroyablement tentant de choisir cette dernière comme l'a fait Ethereum car elle est plus flexible, mais cela viole les principes de conception ci-dessus. Comprendre l'histoire signifie qu'un seul protocole doit être capable de comprendre des événements arbitraires, de scripter des transactions arbitraires, de permettre l'arbitrage dans cas de fraude et même potentiellement d'annulation de transactions lorsque de nouvelles informations sont fournies disponible.

Il faut ensuite prendre des décisions de conception difficiles quant aux métadonnées à stocker pour chaque transaction. Quels éléments de l’histoire derrière la transaction entre Alice et Bob sont pertinents ? Sont sont-ils pertinents pour toujours ? Quand pouvons-nous jeter certaines données ? Cela viole-t-il la loi en certains pays ?

De plus, certains calculs sont de nature privée. Par exemple, lors du calcul de la moyenne salaire des ouvriers d'un bureau, on ne voudrait pas forcément divulguer combien chaque personne fait. Et si chaque calcul était rendu public ? Et si cette publicité biaisait l'exécution afin de nuire au résultat ?

Ainsi, nous avons choisi la position selon laquelle la comptabilité de la valeur doit être séparée de la l'histoire derrière la raison pour laquelle la valeur a été déplacée. En d’autres termes, séparation de la valeur du calcul. Cette séparation ne signifie pas que Cardano ne prendra pas en charge les smart contract. Au contraire, en rendant la séparation explicite, elle permet une plus grande flexibilité dans la conception, l'utilisation, confidentialité et exécution des smart contracts.

POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 8 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Le grand livre de valeurs est appelé Cardano Settlement Layer (CSL). Comme le but est de rendre compte valeur, la feuille de route a les objectifs suivants :

1. Prend en charge deux ensembles de langages de script, un pour déplacer la valeur et un autre pour améliorer prise en charge du protocole de superposition
2. Fournir la prise en charge des sidechains KMZ pour établir des liens avec d'autres registres 5 3. Prend en charge plusieurs types de signatures, y compris les signatures résistantes quantiques pour des performances supérieures. sécurité
4. Prise en charge des actifs émis par plusieurs utilisateurs 5. Atteindre une véritable évolutivité, c'est-à-dire qu'à mesure que davantage d'utilisateurs se joignent, les capacités du système augmenter

Script

En commençant par le langage de script, les transactions entre adresses dans un grand livre nécessitent quelques forme d'un script à exécuter et à prouver sa validité. Idéalement, on ne voudrait pas qu'Ève ait accès L'argent d'Alice, et on ne voudrait pas non plus qu'un script mal conçu envoie accidentellement de la valeur à un mort. adresse rendant les fonds irrécupérables.

Des systèmes tels que Bitcoin fournissent un langage de script extrêmement rigide et draconien qui Il est difficile de programmer des transactions sur mesure, ainsi que de les lire et de les comprendre. Pourtant le général la programmabilité de langages tels que Solidity introduit une complexité extraordinaire dans le système et ne sont utiles qu’à un ensemble beaucoup plus restreint d’acteurs.

Nous avons donc choisi de concevoir un nouveau langage appelé Simon en l'honneur de son créateur 6 Simon Thompson et le créateur des concepts qui l'ont inspiré, Simon Peyton Jones. Simon est un langage spécifique à un domaine basé sur Composer des contrats : une aventure en finance ingénierie.

L'idée principale est que les transactions financières sont généralement composées d'un ensemble de éléments fondateurs. Si l’on rassemble un tableau périodique des éléments financiers, alors on peut 7 fournir un support pour un ensemble arbitrairement large de transactions composées qui couvriront la plupart, sinon tous, types de transactions courants sans nécessiter de programmabilité générale.

5 Bientôt disponible dans un article de Kiayias, Zindros et Miller 6 Les détails seront publiés dans une prochaine spécification. La langue complète sera prise en charge dans le Sortie de Shelley CSL prévue pour le quatrième trimestre 2017 7 Le projet ACTUS a une élaboration approfondie
POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 9 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Le principal avantage est que la sécurité et l’exécution peuvent être extrêmement bien comprises. Preuves peut être écrit pour montrer l'exactitude des modèles et épuiser l'espace d'exécution de des événements de transaction problématiques, tels que la création de nouvelle monnaie à partir de rien ou une transaction malléabilité. Deuxièmement, on peut laisser des extensions pour ajouter plus d'éléments via des soft forks si une nouvelle fonctionnalité est requise.

Cela dit, il sera toujours nécessaire de connecter CSL aux protocoles superposés, aux systèmes financiers existants. systèmes et serveurs spéciaux. Ainsi, nous avons développé Plutus à la fois comme un langage smart contract à usage spécifique ainsi qu'un DSL à usage spécial pour l'interopérabilité.

Plutus est un langage fonctionnel typé basé sur les concepts de Haskell, qui peut être utilisé pour écrire des scripts de transactions personnalisés. Pour CSL, il sera utilisé pour les transactions complexes nécessaires à ajoutez la prise en charge d'autres couches que nous devons connecter, telles que notre schéma de sidechains.

Chaînes latérales

En ce qui concerne les sidechains, Cardano prendra en charge un nouveau protocole développé par Kiayias, Miller et Zindros (sidechains KMZ) basé sur les résultats antérieurs des preuves de travail. Le particulier la conception dépasse le cadre de cet article ; cependant, le concept permet une sécurité et mouvement non interactif de fonds de CSL vers n’importe quelle couche de calcul Cardano ou autre blockchain prenant en charge le protocole.

Les sidechains KMZ sont la clé pour encapsuler la complexité. Des grands livres aux exigences réglementaires, les opérations privées, les langages de script robustes et autres préoccupations particulières sont effectivement noires boîtes à CSL, mais l'utilisateur de CSL bénéficiera de certaines garanties en matière de comptabilité et de capacité à rappeler les fonds une fois le calcul terminé.

Signature

Afin de transférer en toute sécurité de la valeur d'Alice à Bob, Alice doit prouver qu'elle a le droit de déplacer les fonds. La manière la plus directe et la plus fiable d'accomplir cette tâche est d'utiliser un système de signature de clé dans lequel les fonds sont connectés à une clé publique et Alice contrôle une clé privée associée.

Il existe des centaines de schémas possibles avec différents paramètres et hypothèses de sécurité. Certains s'appuient sur des problèmes mathématiques liés aux courbes elliptiques, tandis que d'autres sont connecté à des concepts exotiques à l’aide de treillis.
POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 10 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Le but abstrait est toujours le même. Il existe un problème difficile qui ne peut être résolu que si quelqu'un a une connaissance secrète. On dit que le détenteur de ce savoir est le propriétaire de la paire de clés et doit être la seule entité habilitée à l'utiliser.

Il existe deux groupes de préoccupations auxquelles une crypto-monnaie est confrontée lors du choix d’un schéma de signature. Premièrement, il y a la durabilité à long terme du système lui-même en matière de sécurité. Certains cryptographiques les programmes utilisés dans les années 1970 et 1980, comme le DES, ont été brisés. La période sur laquelle il faut décider si le projet devrait survivre.

Deuxièmement, de nombreuses entreprises, gouvernements et autres institutions ont préféré, ou dans certains cas, imposait le recours à un système particulier. Par exemple, la NSA maintient le Ensemble de protocoles Suite B. Il existe des normes des groupes de travail ISO et même du W3C sur la cryptographie.

Si une cryptomonnaie choisit un schéma de signature unique, elle est obligée d’accepter que ce schéma pourrait être brisé à un moment donné dans le futur et au moins une entité ne peut pas utiliser le crypto-monnaie en raison de restrictions légales ou industrielles. Pourtant, une crypto-monnaie ne peut pas prendre en charge tout système de signature, car cela exigerait que chaque client comprenne et valide chaque système.

Pour Cardano, nous avons décidé de commencer par utiliser la cryptographie à courbe elliptique, la courbe Ed25519 dans particulier. Nous avons également décidé d'améliorer les bibliothèques existantes en ajoutant la prise en charge des portefeuilles HD. en utilisant les spécifications du Dr Dmitry Khovratovich et Jason Law.
8

Cela dit, Cardano prendra en charge davantage de systèmes de signature à l'avenir. En particulier, nous sommes intéressé à intégrer BLISS-B pour ajouter des signatures résistantes aux ordinateurs quantiques à notre système. Nous souhaitons également ajouter SECP256k1 pour améliorer l'interopérabilité avec les systèmes existants. crypto-monnaies telles que Bitcoin.

Cardano a été conçu avec des extensions spéciales qui nous permettront d'ajouter plus de signature schémas via un soft fork. Ils seront ajoutés au fur et à mesure des besoins et lors des mises à jour majeures prévues dans la feuille de route.
9

Actifs émis par l'utilisateur (UIA)

Au début de l'histoire de Bitcoin, des protocoles ont été rapidement développés pour permettre aux utilisateurs d'émettre des actifs qui s'est appuyé sur le système comptable de Bitcoin afin de suivre plusieurs devises simultanément. 8 Il s'agit de la documentation relative à la mise en œuvre du portefeuille HD de Cardano. Nous pensons que Cardano est le premier crypto-monnaie pour prendre en charge les portefeuilles Ed25519 HD
9 Voir cardanoroadmap.com
POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 11 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Ces protocoles n'étaient pas supportés nativement par le protocole Bitcoin, mais implémentés via des astuces astucieuses.

Dans le cas des superpositions Bitcoin telles que Coloured Coins et Mastercoin (maintenant appelé Omni), la lumière les clients sont obligés de s'appuyer sur des serveurs de confiance. De plus, les frais de transaction doivent toujours être payés des bitcoins. Ces propriétés, combinées au pipeline unique d'approbation des transactions, font Bitcoin sous-optimal pour la comptabilité multi-actifs.

Dans le cas Ethereum utilisant la norme ERC20, il y a plus de richesse en fonctionnalités. Cependant, les frais de transaction nécessitent toujours de l'éther. De plus, le réseau Ethereum rencontre des difficultés s'adapter aux besoins de tous les ERC20 token émis.

Le problème fondamental peut être divisé en trois parties : les ressources, les incitations et les préoccupations. En ce qui concerne les ressources, ajouter une devise entièrement nouvelle au même grand livre signifie que l'on a deux ensembles indépendants UTXO (entrées de transaction non dépensées) partageant la bande passante, le pool de mémoire et bloquer l'espace. Nœuds de consensus responsables de l'intégration des transactions de ces devises besoin d’une incitation pour le faire. Et tous les utilisateurs de crypto-monnaie ne s’en soucieront pas ou ne devraient pas s’en soucier. la devise d’une entité particulière.

Compte tenu de ces problèmes, les avantages sont énormes en tant que principal token d'un grand livre multi-actifs peut effectivement servir de monnaie relais permettant une tenue de marché décentralisée. Spécial des actifs à cet effet pourraient être émis pour fournir une utilité supplémentaire, telle que des actifs à valeur stable comme Tether ou MakerDAO qui sont utiles pour les applications de prêt et de transfert de fonds.

Compte tenu des défis, Cardano a adopté une approche pragmatique de la comptabilité multi-actifs. En construisant par étapes, le premier défi consiste à concevoir l'infrastructure nécessaire pour soutenir le demandes de milliers d’UIA. À savoir, les avancées suivantes sont nécessaires :

1. Structures de données authentifiées à usage spécial pour permettre le suivi d'un très grand nombre UTXO état

2. La possibilité d'avoir un pool de mémoire distribué pour contenir un vaste ensemble de transactions en attente
3. Partitionnement de la blockchain et points de contrôle pour permettre un énorme blockchain global 4. Un système d'incitation qui récompense les nœuds de consensus pour avoir inclus différents ensembles de opérations 5. Un mécanisme d'abonnement qui permet aux utilisateurs de décider quelles devises ils souhaitent suivre
6. Une sécurité renforcée garantit que les UIA bénéficient d'une sécurité similaire à celle de l'actif natif. 7. Soutien à la tenue de marché décentralisée pour améliorer la liquidité entre l'UIA et le primaire token

POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 12 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Nos efforts préliminaires pour trouver la bonne structure de données authentifiées ont abouti à une nouvelle type d’arbre AVL+ développé conjointement par Leo Reyzin, IOHK et Waves. Des recherches supplémentaires sont nécessaires, mais il s'agit d'une avancée fondamentale qui sera incluse dans une version ultérieure de Cardano.

Un pool de mémoire distribué pourrait être implémenté à l’aide du protocole RAMCloud de l’Université de Stanford. Les expériences débuteront au troisième trimestre 2017 pour étudier son intégration dans la couche consensus de Cardano.

Les sujets restants sont interconnectés et couverts par des recherches en cours. Nous nous attendons — sous réserve aux résultats de la recherche — pour inclure un protocole dans Cardano pour les UIA lors du Basho du CSL sortie en 2018.

Évolutivité

Les systèmes distribués sont composés d'un ensemble d'ordinateurs (nœuds) acceptant d'exécuter un protocole ou

suite de protocoles pour atteindre un objectif commun. Cet objectif pourrait être de partager un fichier tel que défini par

le protocole BitTorrent ou plier une protéine à l'aide de Folding@Home.

Les protocoles les plus efficaces gagnent des ressources à mesure que les nœuds rejoignent le réseau. Un fichier hébergé par

BitTorrent, par exemple, peut être téléchargé beaucoup plus rapidement en moyenne si de nombreux pairs sont connectés.

en le téléchargeant simultanément. La vitesse augmente car les pairs fournissent des ressources tout en

les consommer également. Cette caractéristique est ce que l'on entend généralement lorsqu'on énonce une distribution distribuée.

échelles du système.

Le défi avec la conception de toutes les crypto-monnaies actuelles est qu’elles ne le sont pas réellement.

conçu pour être évolutif. Les blockchains, par exemple, sont généralement une liste chaînée de

blocs. La sécurité et la disponibilité d'un protocole blockchain reposent sur de nombreux nœuds

possédant une copie complète des données blockchain. Ainsi, un seul octet de données doit être répliqué

parmi N nœuds. Les nœuds supplémentaires ne fournissent pas de ressources supplémentaires.

Ce résultat est le même pour le traitement des transactions et les commérages de messages tout au long du processus.

le système. L'ajout de nœuds supplémentaires au système de consensus ne fournit pas d'informations supplémentaires.

puissance de traitement des transactions. Cela signifie simplement que davantage de ressources doivent être dépensées pour faire de même

travail. Plus de relais réseau, ce qui signifie que davantage de nœuds doivent transmettre les mêmes messages pour conserver le

tout le réseau en synchronisation avec le bloc le plus récent.

Compte tenu de cette topologie, les crypto-monnaies ne peuvent pas s'adapter à un réseau mondial comparable à celui des crypto-monnaies existantes.

systèmes financiers. En revanche, l’infrastructure existante est évolutive et présente des ordres de grandeur pour

plus de puissance de traitement et de stockage. En ajoutant un point spécifique, Bitcoin est un très petit réseau

par rapport à ses pairs en matière de paiement, mais a du mal à gérer sa charge actuelle.
POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 13 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Nos objectifs d'évolutivité pour Cardano sont grandement aidés par notre algorithme de consensus. Ouroboros

permet une manière décentralisée d'élire un quorum de nœuds de consensus, qui à leur tour peuvent gérer plus de

protocoles traditionnels développés au cours des 20 dernières années pour répondre aux besoins des grands

des fournisseurs d'infrastructures tels que Google et Facebook.
10

Par exemple, l’élection d’un quorum pour une époque signifie que nous disposons d’un ensemble de nœuds de confiance pour

conserver le grand livre pendant une période de temps déterminée. Il est trivial d’élire plusieurs quorums simultanément

et diviser les transactions en différents quorums.

Des techniques similaires pourraient être appliquées pour la propagation du réseau et également pour le partage du blockchain

lui-même en partitions uniques. Dans notre feuille de route actuelle, les méthodes de mise à l'échelle seront appliquées à

Ouroboros à partir de 2018 et continue d’être une priorité en 2019 et 2020.

Cardano Couche de calcul

Comme mentionné précédemment, une transaction comporte deux éléments : le mécanisme d'envoi et enregistrez le flux des token et les raisons ainsi que les conditions du déplacement des token. Le ce dernier peut être arbitrairement complexe et impliquer des téraoctets de données, des signatures multiples et des informations spéciales. événements survenus. Ce dernier peut également être remarquablement simple avec une seule valeur de poussée de signature à une autre adresse.

Le défi que pose la modélisation des raisons et des conditions du flux de valeur est qu’elles sont immensément personnel aux entités impliquées de la manière la plus imprévisible. Leçons de le droit des contrats dresse un tableau encore plus problématique dans lequel les acteurs eux-mêmes pourraient ne pas sachez même que la transaction ne correspond pas à la réalité commerciale. On appelle généralement cela phénomène « le fossé sémantique ». 11

Pourquoi devrait-on créer une crypto-monnaie en poursuivant une couche infinie de complexité et d’abstraction ? Cela semble de nature sisyphéenne et naïf dans la pratique. De plus, chaque abstraction embrassait a des conséquences à la fois juridiques et sécuritaires.

Par exemple, il existe de nombreuses activités en ligne qui sont universellement considérées comme illégales ou méprisées. comme le trafic de pédopornographie ou la vente de secrets d'État. En déployant des solutions robustes 10 Il existe également d’autres protocoles de recherche indépendants tentant d’atteindre le même objectif, tels que Elastico et Bitcoin-NG
11 Loi Luu et al. discutent de cette lacune dans leur récent article intitulé Rendre les contrats intelligents plus intelligents POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 14 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

infrastructure décentralisée, on fournit désormais un canal pour que cette activité se produise avec le la même résistance à la censure dont bénéficient les transactions commerciales normales. Il n'est pas clair sur le plan juridique si les nœuds de consensus du réseau – qui ont intérêt à devenir davantage fédérés il est temps de promouvoir l’efficacité – seraient tenus responsables du contenu qu’ils hébergent.

Poursuites contre les opérateurs de Tor, traitement brutal de l’opérateur de Silk Road et absence de la clarté juridique derrière les protections juridiques des participants au protocole laisse un chemin incertain. Il y a il ne manque pas d'imagination quant à ce qu'une crypto-monnaie suffisamment avancée pourrait permettre d'autre (voir l'Anneau de Gygès). Est-il raisonnable de forcer tous les utilisateurs d’une crypto-monnaie à l’approuver ou du moins permettre les pires actes et comportements du web ?

Malheureusement, il n’existe pas de réponses claires qui puissent donner un aperçu à un concepteur de crypto-monnaie. C'est il s'agit davantage de choisir un poste et de défendre son mérite. L'avantage que Cardano et Bitcoin est que nous avons choisi de séparer les préoccupations en plusieurs couches. Avec Bitcoin, il y a Porte-greffe. Avec Cardano, il existe la couche de calcul Cardano.

Les types de comportements complexes qui permettraient les actes élaborés précédemment ne peuvent pas s’appliquer CSL. Ils nécessitent la capacité d'exécuter des programmes écrits dans un langage complet de Turing et certains forme d'économie du gaz au calcul des compteurs. Ils nécessitent également des nœuds de consensus disposés à inclure les transactions dans leurs blocs.

Ainsi, une restriction de fonctionnalité pourrait raisonnablement protéger les utilisateurs. Jusqu'à présent, les plus établis les gouvernements n’ont pas adopté la position selon laquelle l’utilisation ou la maintenance d’une crypto-monnaie est une acte illégal. Par conséquent, la grande majorité des utilisateurs devraient être à l’aise avec la tenue d’un grand livre comparable en capacité à un système de paiement numérique.

Lorsqu’on souhaite étendre les capacités, il existe deux possibilités. Il est activé par un privé collectif d'individus partageant les mêmes idées et de nature éphémère (par exemple, une partie de poker). Ou bien, ce est activé par un registre de capacités comparables à Ethereum. Dans les deux cas, nous avons choisi externaliser les événements vers un autre protocole.

Dans le cas d’un événement privé et éphémère, il est raisonnable d’éviter le paradigme blockchain entièrement, mais plutôt restreindre les efforts vers une bibliothèque de protocoles MPC à usage spécial qui peuvent être invoqué lorsque cela est souhaité par un groupe de participants partageant les mêmes idées. Les calculs et les activités sont coordonnés dans un réseau privé et font référence à CSL uniquement en tant que babillard de confiance et canal de transmission de messages si nécessaire.

L’idée clé dans ce cas est qu’il y a consentement, encapsulation de la responsabilité et respect de la vie privée. CSL est être utilisé comme un espace commun numérique permettant aux utilisateurs de se rencontrer et de communiquer – comme un parc hébergerait un événement privé – mais ne fournit aucun hébergement ou animation spécial. De plus, POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 15 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

l'utilisation d'un MPC spécial permettra une interaction à faible latence sans avoir besoin de blockchain ballonnements. Ainsi, cela améliore l’échelle du système.

Les efforts de recherche de Cardano concernant cette bibliothèque sont centralisés dans notre laboratoire Tokyo Tech avec une certaine aide de scientifiques étrangers. Nous appelons la bibliothèque « Tartaglia » en hommage à un camarade mathématicien ainsi que contemporain de Cardano et nous nous attendons à ce que la première itération soit disponible au premier trimestre 2018.

Dans le deuxième cas, il faut un blockchain avec une machine virtuelle, un ensemble de nœuds de consensus et un mécanisme pour permettre la communication entre les deux chaînes. Nous avons commencé le processus de formalisation rigoureuse de la machine virtuelle Ethereum à l'aide du framework K dans 12 partenariat avec une équipe de l’Université de l’Illinois.

Le résultat de cette analyse éclairera la manière la plus optimale de concevoir un modèle répliqué et éventuellement machine virtuelle distribuée avec une sémantique opérationnelle claire et de fortes garanties de bon fonctionnement 13 mise en œuvre à partir de la spécification. En d’autres termes, la VM fait réellement ce que le code lui dit. cela a à voir avec les risques de sécurité minimisés.

Il reste encore des questions non résolues sur l’économie du gaz proposée par Ethereum et sur la manière dont elle se rapporte à des travaux tels que le ML conscient des ressources de Jan Hoffmann et al et à l’étude plus large de estimation des ressources pour le calcul. Nous sommes également curieux du niveau de langue indépendance de la machine virtuelle. Par exemple, le projet Ethereum a exprimé le désir pour la transition de leur VM actuelle vers Web Assembly.

Le prochain effort consiste à développer un langage de programmation raisonnable pour exprimer contrats qui seront appelés comme services par les applications décentralisées. Pour cette tâche, nous avons choisi à la fois l'approche consistant à prendre en charge l'héritage smart contract langage Solidity pour les faibles applications d'assurance et développement d'un nouveau langage appelé Plutus pour une assurance supérieure les demandes nécessitant une vérification formelle.

Comme le projet Zeppelin basé sur la solidité, IOHK développera également une bibliothèque de référence de code Plutus que les développeurs d'applications peuvent utiliser dans leurs projets. Nous développerons également un ensemble d'outils spécialisés pour une vérification formelle inspirée des travaux du projet Liquid Haskell de l’UCSD.

En termes de consensus, Ouroboros a été conçu de manière suffisamment modulaire pour prendre en charge Évaluation smart contract. Par conséquent, CSL et CCL partageront le même algorithme de consensus. 12 Inventé par le professeur Grigore Rosu et. al., K est un cadre universel pour les langages indépendants sémantique exécutable par machine. Avant nos travaux, il a été utilisé pour modéliser C, Java et JavaScript 13 Cela signifie que différents nœuds de consensus exécutent différents smart contracts. Également connu sous le nom de partitionnement d’État POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 16 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

La différence est qu'Ouroboros peut être confirmé pour autoriser à la fois les utilisateurs autorisés et les utilisateurs autorisés. registres sans autorisation via la distribution token.

Avec CSL, Ada a été distribuée par un événement générateur de token aux acheteurs dans toute l'Asie qui finira par revendre sur un marché secondaire. Cela signifie que l’algorithme de consensus de CSL est contrôlé par un ensemble d’acteurs diversifiés et de plus en plus décentralisés ou par leurs délégués attribue. Avec CCL, il est possible de créer un but spécial token détenu par les délégués de ce grand livre qui pourraient être des entités réglementées, créant ainsi un grand livre autorisé.

La flexibilité de cette approche permet à différentes instances de CCL de se matérialiser avec différents règles relatives à l'évaluation des transactions. Par exemple, les activités de jeu pourraient être restreintes à moins que les données KYC/AML ne soient présentes simplement en mettant sur liste noire les transactions non attribuées.

Notre conception finale se concentre sur l'ajout de modules de sécurité matériels (HSM) fiables à notre protocole. pile. Ce sont là deux énormes avantages lorsqu’on introduit ces capacités dans le protocole. Premièrement, les HSM améliorent considérablement les performances sans introduire de sécurité. 14 préoccupations au-delà de la confiance dans le vendeur. Deuxièmement, grâce à l'utilisation d'épreuves en verre scellé (SGP), Les HSM peuvent garantir que les données peuvent être vérifiées puis détruites sans être copié ou divulgué à des tiers malveillants.

En ce qui concerne le deuxième point, les PSC pourraient avoir un impact révolutionnaire en matière de conformité. Habituellement, lorsqu'un consommateur fournit des informations personnelles identifiables (PII) pour authentifier identité ou prouver le droit de participer, ces informations sont transmises à un tiers de confiance avec en espérant qu'il n'agira pas de manière malveillante. Cette activité est intrinsèquement centralisée, le fournisseur de données perd le contrôle de ses informations personnelles et est également soumis à diverses réglementations basées sur la juridiction.

La possibilité de sélectionner un ensemble d'attestations de confiance, puis de stocker les informations personnelles dans une enclave matérielle signifie que tout acteur disposant d'un HSM suffisamment compétent sera en mesure de vérifier les faits sur un acteur de manière infalsifiable sans que le vérificateur connaisse l'identité de l'acteur. Par exemple, Bob est pas un citoyen américain. Alice est une investisseur qualifié. James est un contribuable américain et il faut envoyer bénéfices imposables sur le compte X.

La stratégie HSM de Cardano consistera à tenter de mettre en œuvre des protocoles spécialisés au cours des deux prochaines années. années d'utilisation d'Intel SGX et d'ARM Trustzone. Les deux modules sont intégrés à des milliards de consommateurs appareils, des ordinateurs portables aux téléphones portables, et ne nécessitent aucun effort supplémentaire de la part du consommateur pour utiliser. Les deux sont également soigneusement vérifiés, bien conçus et basés sur des années d'itération de certains des les équipes de sécurité matérielle les plus importantes et les mieux financées.

14 Voir http://hackingdistributed.com/2016/12/22/scaling-bitcoin-with-secure-hardware/ de Cornell Université POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 17 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Règlement

La dure réalité de tous les systèmes financiers modernes est qu’à mesure qu’ils évoluent, ils accumulent un besoin, ou du moins une volonté de régulation. Ce résultat est généralement le résultat d’effondrements récurrents en raison de la négligence d'un acteur ou d'une cabale d'acteurs sur un marché.

Par exemple, la crise Knickerbocker de 1907 a abouti à la création de la Réserve fédérale. Système en 1913 comme prêteur en dernier ressort. Un autre exemple est celui des excès des années 1920 dans le aux États-Unis qui a entraîné un terrible effondrement financier, la Grande Dépression. Cet effondrement a donné lieu à la création de la Securities Exchange Commission en 1934 afin d'empêcher un phénomène similaire. événement ou au moins demander des comptes aux mauvais acteurs.

On peut raisonnablement débattre de la nécessité, de la portée et de l’efficacité d’une réglementation, mais on ne peut nier son existence et le zèle avec lequel les principaux gouvernements l’ont appliqué. Cependant, le Le défi auquel tous les régulateurs sont confrontés à mesure que le monde se mondialise et que les espèces deviennent numériques est à deux volets.

Premièrement, quel ensemble de réglementations devrait être suprême lorsqu’il s’agit d’un ensemble de juridictions ? La notion désuète de souveraineté westphalienne fond lorsqu’une seule transaction peut toucher trois douzaines de pays en moins d’une minute. Devrait-il simplement s'agir de celui qui détient le pouvoir la plus grande influence géopolitique ?

Deuxièmement, les améliorations apportées aux technologies de protection de la vie privée ont créé une course aux armements numériques. il devient de plus en plus difficile de comprendre qui a participé à une transaction, et encore moins à qui appartient une réserve de valeur particulière. Dans un monde où des millions de dollars d'actifs peut être contrôlé avec rien de plus qu'un mnémonique secret de 12 mots, comment pouvez-vous 15 appliquer une réglementation efficace ?

Comme tous les systèmes financiers, le protocole Cardano doit avoir une opinion dans sa conception sur ce qui est juste et raisonnable. Nous avons choisi de diviser entre les droits individuels et les droits d'un marché.

Les individus devraient toujours avoir un accès exclusif à leurs fonds, sans contrainte ni patrimoine civil. confiscation. Ce droit doit être appliqué car on ne peut pas faire confiance à tous les gouvernements pour ne pas abuser de leur pouvoir souverain pour le gain personnel de politiciens corrompus, comme on le voit au Venezuela et le Zimbabwe. Les crypto-monnaies doivent être conçues selon le plus petit dénominateur commun.

15 Voir BIP39 https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki
POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 18 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Deuxièmement, l’histoire ne devrait jamais être altérée. Les blockchains offrent une promesse d’immuabilité. L’introduction du pouvoir de faire reculer l’histoire ou de modifier les documents officiels introduit trop de choses tentation de changer le passé afin de bénéficier à un ou plusieurs acteurs en particulier.

Troisièmement, le flux de valeur ne doit pas être restreint. Contrôles des capitaux et autres murs artificiels diminuer les droits de l’homme. En dehors de la futilité de tenter de les faire respecter , dans un contexte mondial 16 économie avec de nombreux citoyens des pays les moins développés voyageant en dehors de leur juridiction Pour trouver un salaire décent, restreindre les flux de capitaux finit généralement par nuire aux plus pauvres du monde.

Ces principes énoncés, les marchés sont nettement différents des individus. Alors que les concepteurs de Cardano croit aux droits individuels, nous pensons également que les marchés ont le droit de déclarer ouvertement leurs termes et conditions, et si un individu accepte de faire des affaires sur ce marché, alors ils doivent être tenus de respecter ces normes dans l’intérêt de l’intégrité de l’ensemble du système.

Le défi a toujours été le coût et l’aspect pratique de l’application des lois. Petit, multijuridictionnel les transactions sont tout simplement trop coûteuses dans les systèmes existants pour fournir une garantie élevée de recours en cas de fraude ou de litige commercial. Lorsqu'on envoie son virement bancaire au Prince nigérian, il est généralement trop coûteux d’essayer de récupérer ses fonds.
17

Pour Cardano, nous pensons pouvoir innover à trois niveaux. Premièrement, grâce à l'utilisation de smart contracts les termes et conditions des relations commerciales peuvent être mieux contrôlés. Si tous les actifs sont numérique et peut être exprimé uniquement sur CSL, de solides garanties de commerce sans fraude peuvent être gagné.

Deuxièmement, l'utilisation de HSM pour fournir un espace d'identité dans lequel les informations personnelles ne sont pas divulguées mais sont néanmoins utilisées pour les acteurs d’authentification et d’accréditation devraient fournir un système de réputation mondial et permettre activités réglementées à moindre coût, telles que les jeux en ligne avec systèmes automatisés conformité fiscale ou échanges décentralisés.

Enfin, dans la feuille de route de Cardano figure la création d’une réglementation modulaire DAO qui peut être personnalisé pour interagir avec les smart contract écrits par l'utilisateur afin d'ajouter de la mutabilité, du consommateur protection et arbitrage. La portée de ce projet sera décrite dans un article ultérieur.

16 Comme exemple de contre-mesure aux flux de capitaux, voir le Hawala Banking System 17 Voir Arnaque aux frais d'avance POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 19 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Quel est le but de tout cela ?

Cardano a été un projet marathon impliquant les commentaires de centaines d'esprits les plus brillants

à l’intérieur et à l’extérieur de l’industrie des crypto-monnaies. Cela implique une itération inlassable, l'utilisation active de

l'examen par les pairs et le vol éhonté de bonnes idées lorsqu'elles sont découvertes.

Les sections restantes couvrent chacune un aspect particulier que nous avons décidé de considérer comme un élément central.

composante de notre projet. Certains ont été sélectionnés en raison du désir d'améliorer le meilleur d'ensemble.

pratiques de l’espace alors que d’autres sont spécifiques à l’évolution de Cardano.

Bien qu'aucun projet ne puisse couvrir tous les objectifs ou satisfaire tous les utilisateurs, notre espoir est de fournir une vision pour

à quoi devrait ressembler une pile financière auto-évolutive pour les juridictions qui en sont dépourvues. L'ultime

La réalité des crypto-monnaies n’est pas qu’elles perturberont les systèmes financiers existants.

Les systèmes financiers traditionnels sont toujours capables d’absorber le changement et de conserver leur forme

et fonction.

Il faudrait plutôt se tourner vers les endroits où il est tout simplement trop coûteux de déployer les systèmes existants.

système bancaire, où beaucoup vivent avec moins de quelques dollars par jour, n'ont pas d'identité stable et

le crédit est impossible à trouver.

Dans ces lieux, le pouvoir de regrouper système de paiement, droits de propriété, identité, crédit et risque

la protection dans une seule application exécutée sur un téléphone portable n’est pas seulement utile, elle change la vie.

La raison pour laquelle nous construisons Cardano est que nous pensons que nous avons une chance légitime de livrer - ou

au moins faire progresser cette vision du monde en développement.

Même en cas d’échec, si nous pouvons changer la façon dont les cryptomonnaies sont conçues, évoluées et financées,

alors il y a une grande réussite.

Science and Engineering

Science and Engineering

The Art of Iteration

Cryptocurrencies are protocols implemented as software. Protocols are simply intelligent conversations between participants. Software is ultimately the manipulation of data given some WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 20 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

goal. Yet the difference between solid, reliable software as well as useful, secure protocols and their converse is completely human.

Good software needs accountability, clear business requirements, repeatable processes, thorough testing and tireless iteration. Good software also needs reasonably talented developers with enough domain specific knowledge to properly design a system that can fully resolve whatever problem they are trying to solve.

As for useful and secure protocols, especially ones involving cryptography and distributed systems, they start in a more academic and standards driven process. Peer review, endless debates and a firm concept of trade offs are necessary to ensure a protocol is useful. Yet these alone are not sufficient, protocols need to be implemented and tested by real life use.

The unique challenge in the cryptocurrency industry is that two completely different philosophies are mangled together without a proper Hegelian synthesis. Our thesis is a “move fast and break things” startup mentality driven by youth, greed and passion. The antithesis is a slow, methodical and academically oriented approach motivated by a desire to solidify the innovations of our space into a nice niche enjoying ample funding and prestige.

The result is that many cryptocurrencies are either entirely specified on a white paper only relevant to a CV or just by hastily written code. None of the current top ten cryptocurrencies by 18 market capitalization are based upon a peer reviewed protocol. None of the current ten top cryptocurrencies were implemented from a formal specification .

19

Yet billions of dollars of value are at stake. Once deployed, a cryptocurrency is exceedingly

difficult to change. How does a user know they are using a secure system? How does a user

know that the marketing claims are legitimate? What if the proposed protocol can never achieve

the claims?

This lack of synthesis and respect for process is one of the primary reasons IOHK wanted to

build Cardano. Our hope was to develop a reference project that would serve as an example of

how to do things in a more effective, sane and honest way.

The goal is not to propose a totally new way of developing software and protocols, but rather to

acknowledge that great software and protocols already exist and we can mimic the conditions

that led to their creation. Second, to make these conditions publicly known and open source if

possible so that they can be imitated for the benefit of the entire field. 18 See www.coinmarketcap.com for a comprehensive listing by market capitalization 19 Ethereum has a semi-formal specification known as the Yellow Paper; however, the EVM semantics are not fully specified nor are sufficient for a full implementation of the protocol. WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 21 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Facts and Opinions

The other concern is over where facts end and opinion begins. There are hundreds of

programming languages, dozens of development paradigms and more than one philosophy on

project management. The academic world is riddled with its own challenges stemming from its

distance from business concerns and practicality.

For Cardano, we first attempted to capture obvious deficiencies that can be universally agreed

to be useful from an engineering perspective. For example, cryptography and distributed

systems are both extraordinarily involved topics with far too many examples of how naive hands

can make horrific mistakes. Therefore, any protocol requiring insight from these domains needs

to be designed by an acknowledged expert and be submitted for review by other experts.

Ouroboros is our first case study of this area. It was designed by a team of cryptographers with

a large, diverse and publicly verifiable publication history. It was built according to the standard

cryptography process, with security assumptions, an adversarial model and proofs. These

proofs were checked by submission to conferences and also independently by computer

20 proofs written in Isabelle by a team at the University of Cambridge .
21

Yet this work alone provides no guarantees of usefulness — just a rigorous check of a security

model given some assumptions. For usefulness, one needs to implement and test the protocol.

Our developers have done so in both Haskell and also Rust. This work revealed that more effort

needed to be focused on the synchronization model, which led to the creation of Ouroboros

Praos.

This art of iteration is what produces great protocols, with each step leading to new lessons and

a requirement to re-verify the correctness of prior step . It is costly, time consuming, and at

22 times truly tedious, yet it is required to ensure a protocol is correctly designed.

Protocols — especially ones to be used by billions of people — are not short lived and rapidly

evolving. Rather they are intended to be followed for years to decades. It seems entirely

reasonable that, prior to burdening the world with a new financial system we all have to live with

for the next 100 years, we want to demand some tedium and rigor from its designers.

20 Accepted Paper Number 71 of the IACR’s Annual Crypto Conference in California
21 By Kawin Worrasangasilpa under the supervision of Professor Lawrence Paulson
22 Following a tangent for a sake of levity, one should watch Professor Halmos’s discussion about how to write a math textbook WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 22 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Functional Sins

Moving into more opinionated territory, the tools, languages and methodologies used in

software development are more artifacts of religious providence than objective reality. Source

code is like written prose. Everyone has an opinion of what is good — and what is being

communicated is, at times, less important than how it is communicated.

We must commit the sin of choosing a side accepting that it will be wrong in at least one

person’s eyes. However, there is at least a large corpus of justification behind our choice.

The protocols making Cardano possible are being implemented in Haskell. The user interface

has been encapsulated in a fork of Electron that we are calling Daedalus. We have chosen to

use the web architectural model where possible, and for our database, we opted for a key-value

paradigm using RocksDB.

From a component level, this abstraction means that maintenance is far simpler, better

technology can be substituted later with little effort, and that our stack is partly tied to the

development efforts of Github and Facebook.

Using a WebGUI allows us to leverage React and develop front end features using tools

understood by hundreds of thousands of JavaScript developers. Using a web architecture

means that components can be treated as services and the security model is sensible.

Choosing Haskell for protocol development was the most difficult choice. Even in the functional

world, there are ample choices. On the more flexible and impure side, there are languages like

Clojure, Scala and F#, which benefit from the enormous libraries of Java and the .Net

ecosystems while preserving some of the best aspects of functional programming.

There are more academically oriented languages such as Agda and Idris that have a close

connection to techniques that would allow for strong verification of correctness. Yet they lack

reasonable libraries and have a subpar development experience.

For Cardano, the choice came down to Ocaml and Haskell. Ocaml is a wonderful language with

a great community, good tooling, reasonable development experience and a great legacy in the

formal verification space through Coq . So why did we choose Haskell? 23

23 Adding to this point, IOHK actually does have a project being implemented in Ocaml called Qeditas that we inherited from the pseudonymous Bill White WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 23 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Why Haskell?

The protocols that compose Cardano are distributed, bundled with cryptography and require a

high degree of fault tolerance. On the best days, there will still be Byzantine actors, malformed

messages and faulty clients unintentionally causing some form of havok on the network.

First, we wanted a language that enjoys a strong type system where we could easily use tools

such as Quickcheck and more elaborate techniques such as Refinement Types while having a

reasonable expectation of fault tolerance. An Erlang style OTP model satisfies the latter

whereas languages like Haskell and Ocaml satisfy the former.

With the introduction of Cloud Haskell, Haskell gained many of Erlang’s advantages while not

surrendering its own. Furthermore, Haskell’s modularity and composability has allowed us to

use a lighter weight bespoke library called Time Warp for Cardano.

Second, Haskell’s libraries have evolved greatly over the last few years thanks to extensive work

of commercial entities like Galois, FP Complete and Well-Typed. As a consequence, Haskell can

be used to write production applications.
24

Third, PureScript’s rapid evolution has provided a much needed bridge to the JavaScript world

akin to what Clojurescript has given Clojure. We expect PureScript will be especially important

when it comes to getting Cardano to work in a browser and developing mobile wallets.

Fourth, with respect to dependency resolution, Haskell in the last several years has enjoyed a

significant social and technological effort led by technologists like Michael Snoyman through a

platform called stackage that is both easy to use and well supported by FP Complete.

Fifth, beyond adequate dependency resolution, we aim for our software builds to be

reproducible. In other words, with the same configuration values and dependency versions it

should produce exactly the same build artifacts. Through stackage, we have been using NixOps

to achieve reproducibility with great success.

Finally, the talent pool of developers specializing in Haskell is reasonably large — compared to

its peers — and quite well-trained with the right mix of academic and industry credentials. It also

acts as a competency filter as it is uncommon to find experienced Haskell developers without

detailed knowledge of computer science.
24 Bryan O'Sullivan provides a nice talk about Haskell’s industrial use here.
WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 24 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Formal Specification and Verification

A significant strength of developing a protocol using a provably correct security model is that it provides a guaranteed limit of adversarial power. One is given a contract that as long as the protocol is followed and the proofs are correct, the adversary cannot violate the security properties claimed.

Deeper reflection makes the prior assertion even more significant. Adversaries can be arbitrarily intelligent and capable. To say they are defeated solely through a mathematical model is extraordinary. And, of course, it is not entirely true.

Reality introduces factors and circumstances that prevent the utopia of pure security and correct behavior from existing. Implementations can be wrong. Hardware can introduce attack vectors previously unconsidered. The security model might be insufficient and not conform to real life use.

A judgement call is needed about how much specification, rigor and checking is demanded for a protocol. For example, endeavors like the SeL4 Microkernel project are a prime example of an all out assault on ambiguity requiring almost 200,000 lines of Isabelle code to verify less than 10,000 lines of C code. Yet an operating system kernel is critical infrastructure that could be a serious security vulnerability if not properly implemented.

Should all cryptographic software require the same Herculean effort? Or can one choose a less vigorous path that produces equivalent outcomes? Also does it matter if the protocol is perfectly implemented if the environment it runs in is notoriously vulnerable such as on Windows XP?

For Cardano, we have chosen the following compromise. First, due to the complex nature of the domains of cryptography and distributed computing, proofs tend to be very subtle, long, complicated and sometimes quite technical. This implies that human driven checking can be tedious and error-prone. Therefore, we believe that every significant proof presented in a white paper written to cover core infrastructure needs to be machine checked.

WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 25 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Second, to verify Haskell code so it correctly corresponds to our white papers, we can choose between two popular options: interfacing with SMT provers via LiquidHaskell and using Isabelle/HOL.

SMT (satisfiability modulo theories) solvers deal with the problem of finding functional parameters that satisfy an equation or inequation, or alternatively showing that such parameters do not exist. As discussed by De Moura and Bjørner, use cases of SMT are various, but the key point is that these techniques are both powerful and can dramatically reduce bugs and semantic errors.

Isabelle/HOL, on the other hand, is a more expressive and diverse tool which can be used to

both specify and verify implementation. Isabelle is a generic theorem solver working with

higher-order logic constructs, capable of representing sets and other mathematical objects to

be used in proofs. Isabelle itself integrates with Z3 SMT prover to work with problems involving

such constraints.

Both approaches provide value and therefore we have decided to embrace them both in stages.

Human written proofs will be encoded in Isabelle to check their correctness thereby satisfying

our machine checking requirement. And we intend on gradually adding Liquid Haskell to all

production code in Cardano’s implementation throughout 2017 and 2018.

As a final point, formal verification is only as good as the specification one is verifying from and the toolsets available. One of the primary reasons for choosing Haskell is that it provides the right balance of practicality and theory. Specification derived from white papers looks a lot like Haskell code, and connecting the two is considerably easier than doing so with an imperative language.

There is still enormous difficulty in capturing a proper specification and also updating the specification when changes such as upgrades, bug fixes and other concerns need to be made; however, this reality does not in any way diminish the overall value. If one is going to trouble of building a foundation upon provable security, then the implementation should be what was actually proposed on paper.

Transparency

A final question when discussing the science and engineering of developing a cryptocurrency is how to address transparency. Design decisions are not Boolean and ethereal, coming to developers in dreams and then suddenly becoming canon. They are derived from experience, debate and lessons learned from earlier mistakes.

WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 26 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

The challenge is that a totally transparent development process could influence discussion to become more theatrical than evidence based. Egos, attempts to win over a community, and fear of sounding stupid could force conversations to become sterile and counterproductive.

Furthermore, outsiders could attempt to co-opt the conversation in an effort to force their particular tangent to become the only relevant topic. Everyone has a sacred cow.

So how does one balance the need for a transparent development process, which is owed to the community that has entrusted progress to a set of core developers, with the need for freedom of expression without fear?

With Cardano, we have decided to embrace a standards driven process with directed oversight. The community needs to know that the science and the code are well thought out, checked and actually solve the things that developers claim they do. To this end, peer review should completely satisfy the science component as it has been designed specifically for this purpose and has given us the modern world.

For code, this topic is a bit more opinionated. For Cardano, we have elected to entrust the Cardano Foundation to serve as a final auditor of IOHK’s work. In particular, they are entrusted with the following duties:

1. Regular review of the source code contained in the Cardano Github to check for quality, test coverage, proper comments and completeness
2. Review of all Cardano documentation for correctness and usefulness
3. Verifying the claims that the protocols produced by the scientists are fully implemented

To accomplish this task, IOHK will submit regular and timely reports to the Foundation – and its assigns – to review. The Foundation in turn will release a development oversight report to the Cardano community on at least a quarterly basis.

This first effort is intended to start a broader conversation about how a decentralized project achieves accountability. Development oversight from a trusted third party is a powerful tool to ensure that developers are on track, but it is not sufficient to completely guarantee that the project will always deliver.

For this reason, after the treasury is integrated into CSL, the Foundation will encourage additional development teams to construct alternative clients based upon the formal specifications developed jointly with IOHK. Development diversity has been a great technique used by the Ethereum project to avoid a monoculture forming around a single set of ideas or developers. WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 27 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

With respect to specifications, there is a wealth of knowledge to be gained from the standards process followed by the WC3 and the IETF. Ultimately, each protocol Cardano integrates requires a specification that is independent of academic work or source code. Rather it needs to be in a suitable format such as an RFC.

One of the Cardano Foundation’s core tenets is to act as standards body specifically for the Cardano protocols and to host conversations to update, add or change standards relevant to Cardano. If the internet (a product of standards) through IETF can reach consensus about what core protocols shall be used, then it is entirely reasonable to assume that a dedicated body could facilitate the same outcome.

As a closing note, it is interesting to explore moving these discussions to a decentralized entity hosted on a blockchain. This concept is called a decentralized autonomous organization (DAO) and preliminary work is underway in this area. IOHK will develop a reference DAO model for entities interfacing with Cardano to use if desired and it is the Cardano Foundation’s prerogative to decide whether to embrace it under their standards mandate.

Sciences et ingénierie

L'art de l'itération

Les crypto-monnaies sont des protocoles implémentés sous forme de logiciels. Les protocoles sont tout simplement intelligents conversations entre participants. Le logiciel est en fin de compte la manipulation de données compte tenu de certaines POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 20 sur 44

IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

objectif. Pourtant, la différence entre un logiciel solide et fiable et des protocoles et protocoles utiles et sécurisés leur conversation est complètement humaine.

Un bon logiciel nécessite des responsabilités, des exigences commerciales claires, des processus reproductibles, des tests approfondis et des itérations infatigables. Un bon logiciel a également besoin de personnes raisonnablement talentueuses développeurs ayant suffisamment de connaissances spécifiques au domaine pour concevoir correctement un système capable de pleinement résoudre le problème qu’ils tentent de résoudre.

Quant aux protocoles utiles et sécurisés, notamment ceux impliquant la cryptographie et les protocoles distribués systèmes, ils commencent par un processus plus académique et axé sur les normes. Examen par les pairs, sans fin des débats et une conception ferme des compromis sont nécessaires pour garantir l’utilité d’un protocole. Pourtant ces ne suffisent pas à eux seuls, les protocoles doivent être mis en œuvre et testés en situation réelle.

Le défi unique dans le secteur des cryptomonnaies réside dans le fait que deux cryptomonnaies complètement différentes les philosophies sont mutilées sans une synthèse hégélienne appropriée. Notre thèse est un « mouvement vite et casse les choses »mentalité de startup motivée par la jeunesse, la cupidité et la passion. L'antithèse est une approche lente, méthodique et orientée académiquement motivée par le désir de solidifier le innovations de notre espace dans une niche agréable bénéficiant d'un financement et d'un prestige suffisants.

Le résultat est que de nombreuses crypto-monnaies sont entièrement spécifiées sur un livre blanc uniquement. pertinent pour un CV ou simplement par un code écrit à la hâte. Aucune des dix principales crypto-monnaies actuelles par 18 la capitalisation boursière est basée sur un protocole évalué par les pairs. Aucun des dix meilleurs actuels les crypto-monnaies ont été implémentées à partir d'une spécification formelle.

19

Pourtant, des milliards de dollars sont en jeu. Une fois déployée, une cryptomonnaie est extrêmement

difficile à changer. Comment un utilisateur sait-il qu’il utilise un système sécurisé ? Comment un utilisateur

savez-vous que les allégations marketing sont légitimes ? Et si le protocole proposé ne parvenait jamais à atteindre

les revendications ?

Ce manque de synthèse et de respect du processus est l'une des principales raisons pour lesquelles IOHK a voulu

construire Cardano. Notre espoir était de développer un projet de référence qui servirait d'exemple de

comment faire les choses de manière plus efficace, saine et honnête.

Le but n'est pas de proposer une manière totalement nouvelle de développer des logiciels et des protocoles, mais plutôt de

reconnaître que d'excellents logiciels et protocoles existent déjà et que nous pouvons imiter les conditions

qui a conduit à leur création. Deuxièmement, rendre ces conditions publiques et open source si

possible afin qu'ils puissent être imités au profit de l'ensemble du domaine. 18 Voir www.coinmarketcap.com pour une liste complète par capitalisation boursière 19 Ethereum a une spécification semi-formelle connue sous le nom de Livre jaune ; cependant, la sémantique EVM est pas entièrement spécifiés ni suffisants pour une mise en œuvre complète du protocole. POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 21 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Faits et opinions

L’autre préoccupation concerne la question de savoir où finissent les faits et où commence l’opinion. Il y en a des centaines

langages de programmation, des dizaines de paradigmes de développement et plus d'une philosophie sur

gestion de projet. Le monde universitaire est confronté à ses propres défis découlant de son

distance des préoccupations commerciales et de l’aspect pratique.

Pour Cardano, nous avons d'abord tenté de capturer les lacunes évidentes qui peuvent être universellement acceptées.

être utile d’un point de vue technique. Par exemple, la cryptographie et la distribution

les systèmes sont tous deux des sujets extraordinairement complexes avec beaucoup trop d'exemples montrant à quel point des mains naïves

peut commettre d’horribles erreurs. Par conséquent, tout protocole nécessitant un aperçu de ces domaines nécessite

être conçu par un expert reconnu et soumis à l’examen d’autres experts.

Ouroboros est notre première étude de cas dans ce domaine. Il a été conçu par une équipe de cryptographes avec

un historique de publication vaste, diversifié et publiquement vérifiable. Il a été construit selon la norme

processus de cryptographie, avec des hypothèses de sécurité, un modèle contradictoire et des preuves. Ces

les épreuves ont été vérifiées par soumission à des conférences et aussi de manière autonome par ordinateur

20 épreuves rédigées en Isabelle par une équipe de l'Université de Cambridge.
21

Pourtant, ce travail à lui seul ne fournit aucune garantie d'utilité - juste une vérification rigoureuse d'un élément de sécurité.

modèle étant donné certaines hypothèses. Pour être utile, il faut implémenter et tester le protocole.

Nos développeurs l'ont fait à la fois en Haskell et en Rust. Ce travail a révélé que davantage d'efforts

Il fallait se concentrer sur le modèle de synchronisation, ce qui a conduit à la création d'Ouroboros

Praos.

Cet art de l'itération est ce qui produit d'excellents protocoles, chaque étape menant à de nouvelles leçons et

une obligation de revérifier l'exactitude de l'étape précédente. C'est coûteux, cela prend du temps et, à

22 des moments vraiment fastidieux, mais il est nécessaire de garantir qu'un protocole est correctement conçu.

Les protocoles – en particulier ceux destinés à être utilisés par des milliards de personnes – ne sont pas de courte durée et ne durent pas longtemps.

évoluant. Ils sont plutôt destinés à être suivis pendant des années, voire des décennies. Il semble entièrement

Il est raisonnable de penser qu'avant d'imposer au monde un nouveau système financier, nous devons tous vivre avec

pour les 100 prochaines années, nous voulons exiger de ses concepteurs un peu d'ennui et de rigueur.

20 Article accepté numéro 71 de la conférence annuelle sur la cryptographie de l'IACR en Californie
21 Par Kawin Worrasangasilpa sous la direction du professeur Lawrence Paulson
22 En suivant une tangente par souci de légèreté, il convient d’observer la discussion du professeur Halmos sur la manière de écrire un manuel de mathématiques POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 22 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Péchés fonctionnels

En évoluant vers un territoire plus opiniâtre, les outils, langages et méthodologies utilisés dans

le développement de logiciels est plus le fruit d’une providence religieuse que d’une réalité objective. Origine

le code est comme la prose écrite. Tout le monde a une opinion sur ce qui est bien – et sur ce qui l’est

la communication est parfois moins importante que la manière dont elle est communiquée.

Nous devons commettre le péché de choisir un camp en acceptant qu'il aura tort dans au moins un

les yeux de la personne. Cependant, il existe au moins un large corpus de justifications derrière notre choix.

Les protocoles rendant Cardano possible sont en cours d'implémentation dans Haskell. L'interface utilisateur

a été encapsulé dans une branche d'Electron que nous appelons Dédale. Nous avons choisi de

utilisez le modèle architectural Web lorsque cela est possible, et pour notre base de données, nous avons opté pour une clé-valeur

paradigme utilisant RocksDB.

Au niveau des composants, cette abstraction signifie que la maintenance est beaucoup plus simple, meilleure

la technologie peut être remplacée plus tard avec peu d'effort, et que notre pile est en partie liée au

efforts de développement de Github et Facebook.

L'utilisation d'une WebGUI nous permet d'exploiter React et de développer des fonctionnalités frontales à l'aide d'outils

compris par des centaines de milliers de développeurs JavaScript. Utiliser une architecture Web

signifie que les composants peuvent être traités comme des services et que le modèle de sécurité est judicieux.

Choisir Haskell pour le développement du protocole a été le choix le plus difficile. Même dans le fonctionnel

monde, les choix sont nombreux. Du côté plus flexible et impur, il existe des langages comme

Clojure, Scala et F#, qui bénéficient des énormes bibliothèques de Java et du .Net

écosystèmes tout en préservant certains des meilleurs aspects de la programmation fonctionnelle.

Il existe des langues plus académiques telles que l'Agda et l'Idris qui ont un lien étroit avec

connexion à des techniques qui permettraient une vérification rigoureuse de l’exactitude. Pourtant, ils manquent

bibliothèques raisonnables et ont une expérience de développement médiocre.

Pour Cardano, le choix s'est porté sur Ocaml et Haskell. Ocaml est un langage merveilleux avec

une grande communauté, de bons outils, une expérience de développement raisonnable et un grand héritage dans le

espace de vérification formelle via Coq . Alors pourquoi avons-nous choisi Haskell ? 23

23 Ajoutant à ce point, IOHK a effectivement un projet en cours de mise en œuvre en Ocaml appelé Qeditas qui nous avons hérité du pseudonyme Bill White POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 23 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Pourquoi Haskell ?

Les protocoles qui composent Cardano sont distribués, livrés avec de la cryptographie et nécessitent un

haut degré de tolérance aux pannes. Dans les plus beaux jours, il y aura encore des acteurs byzantins, malformés

messages et clients défectueux provoquant involontairement une certaine forme de ravages sur le réseau.

Premièrement, nous voulions un langage bénéficiant d'un système de typage solide dans lequel nous pourrions facilement utiliser des outils.

telles que Quickcheck et des techniques plus élaborées telles que les types de raffinement tout en ayant un

attente raisonnable de tolérance aux pannes. Un modèle OTP de style Erlang satisfait ce dernier

alors que des langages comme Haskell et Ocaml satisfont au premier.

Avec l'introduction de Cloud Haskell, Haskell a bénéficié de nombreux avantages d'Erlang sans pour autant

abandonner les siens. De plus, la modularité et la composabilité de Haskell nous ont permis de

utilisez une bibliothèque sur mesure plus légère appelée Time Warp pour Cardano.

Deuxièmement, les bibliothèques de Haskell ont considérablement évolué au cours des dernières années grâce à un travail approfondi.

d'entités commerciales comme Galois, FP Complete et Well-Typed. En conséquence, Haskell peut

être utilisé pour écrire des applications de production.
24

Troisièmement, l’évolution rapide de PureScript a fourni un pont indispensable vers le monde JavaScript.

semblable à ce que Clojurescript a donné à Clojure. Nous pensons que PureScript sera particulièrement important

lorsqu'il s'agit de faire fonctionner Cardano dans un navigateur et de développer des portefeuilles mobiles.

Quatrièmement, en ce qui concerne la résolution des dépendances, Haskell a bénéficié ces dernières années d'une

un effort social et technologique important mené par des technologues comme Michael Snoyman à travers un

plate-forme appelée stackage qui est à la fois facile à utiliser et bien prise en charge par FP Complete.

Cinquièmement, au-delà d'une résolution adéquate des dépendances, nous visons à ce que nos versions logicielles soient

reproductible. En d'autres termes, avec les mêmes valeurs de configuration et versions de dépendances, il

devrait produire exactement les mêmes artefacts de construction. Grâce au stackage, nous utilisons NixOps

pour atteindre la reproductibilité avec beaucoup de succès.

Enfin, le vivier de talents des développeurs spécialisés dans Haskell est raisonnablement important, comparé à

ses pairs – et assez bien formé avec la bonne combinaison de diplômes universitaires et industriels. C'est aussi

agit comme un filtre de compétences car il est rare de trouver des développeurs Haskell expérimentés sans

connaissance approfondie de l'informatique.
24 Bryan O'Sullivan propose ici un exposé intéressant sur l'utilisation industrielle de Haskell.
POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 24 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Spécification formelle et vérification

L’un des points forts du développement d’un protocole utilisant un modèle de sécurité dont l’exactitude a été prouvée réside dans le fait qu’il fournit une limite garantie de la puissance adverse. On donne un contrat qui, aussi longtemps que le le protocole est suivi et les preuves sont correctes, l'adversaire ne peut pas violer la sécurité propriétés revendiquées.

Une réflexion plus approfondie rend l’affirmation antérieure encore plus significative. Les adversaires peuvent être arbitrairement intelligent et capable. Dire qu’ils sont vaincus uniquement grâce à un modèle mathématique est extraordinaire. Et bien sûr, ce n’est pas entièrement vrai.

La réalité introduit des facteurs et des circonstances qui empêchent l'utopie de la sécurité pure et comportement correct par rapport à l'existant. Les implémentations peuvent être erronées. Le matériel peut introduire une attaque vecteurs jusqu’alors inconsidérés. Le modèle de sécurité peut être insuffisant et ne pas être conforme aux utilisation réelle.

Il faut faire preuve de jugement quant au degré de spécification, de rigueur et de vérification requis pour un protocole. Par exemple, des projets tels que le projet SeL4 Microkernel sont un excellent exemple d'une approche globale. un assaut contre l'ambiguïté nécessitant près de 200 000 lignes de code Isabelle pour vérifier moins de 10 000 lignes de code C. Pourtant, un noyau de système d'exploitation est une infrastructure critique qui pourrait être un grave vulnérabilité de sécurité s’il n’est pas correctement mis en œuvre.

Tous les logiciels cryptographiques devraient-ils nécessiter le même effort herculéen ? Ou peut-on choisir un moins une voie vigoureuse qui produit des résultats équivalents ? Est-il également important que le protocole soit parfaitement mis en œuvre si l'environnement dans lequel il s'exécute est notoirement vulnérable, comme sur WindowsXP ?

Pour Cardano, nous avons choisi le compromis suivant. Premièrement, en raison de la nature complexe du domaines de la cryptographie et de l'informatique distribuée, les preuves ont tendance à être très subtiles, longues, compliqué et parfois assez technique. Cela implique que la vérification humaine peut être fastidieux et sujet aux erreurs. Par conséquent, nous pensons que toute preuve significative présentée dans un blanc le papier rédigé pour couvrir l’infrastructure de base doit être vérifié par machine.

POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 25 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Deuxièmement, pour vérifier le code Haskell afin qu'il corresponde correctement à nos livres blancs, nous pouvons choisir entre deux options populaires : s'interfacer avec les prouveurs SMT via LiquidHaskell et utiliser Isabelle/HOL.

Les solveurs SMT (théories de satisfiabilité modulo) traitent le problème de la recherche de fonctionnalités paramètres qui satisfont une équation ou une inéquation, ou bien montrant que ces paramètres n'existent pas. Comme l’expliquent De Moura et Bjørner, les cas d’utilisation du SMT sont variés, mais la clé Le fait est que ces techniques sont à la fois puissantes et peuvent réduire considérablement les bugs et erreurs sémantiques.

Isabelle/HOL, en revanche, est un outil plus expressif et diversifié qui peut être utilisé pour

à la fois spécifier et vérifier la mise en œuvre. Isabelle est une résolveuse de théorèmes génériques travaillant avec

constructions logiques d'ordre supérieur, capables de représenter des ensembles et d'autres objets mathématiques pour

être utilisé dans les preuves. Isabelle elle-même s'intègre au prouveur Z3 SMT pour travailler sur des problèmes impliquant

de telles contraintes.

Les deux approches apportent de la valeur et nous avons donc décidé de les adopter toutes deux par étapes.

Les preuves écrites humaines seront codées dans Isabelle pour vérifier leur exactitude, satisfaisant ainsi

notre exigence de vérification de la machine. Et nous avons l'intention d'ajouter progressivement Liquid Haskell à tous

code de production dans la mise en œuvre de Cardano tout au long de 2017 et 2018.

Enfin, la qualité de la vérification formelle dépend de la spécification à partir de laquelle on vérifie et les ensembles d’outils disponibles. L'une des principales raisons du choix de Haskell est qu'il offre la juste équilibre entre praticité et théorie. Les spécifications dérivées des livres blancs ressemblent beaucoup à code Haskell, et connecter les deux est considérablement plus facile que de le faire avec un impératif langue.

Il reste encore d'énormes difficultés à capturer une spécification appropriée et à mettre à jour les spécification lorsque des modifications telles que des mises à niveau, des corrections de bogues et d'autres problèmes doivent être apportées ; cependant, cette réalité ne diminue en rien la valeur globale. Si l'on a du mal à construisant une base sur une sécurité prouvable, alors la mise en œuvre devrait être ce qui était effectivement proposé sur papier.

Transparence

Une dernière question lorsque l’on discute de la science et de l’ingénierie liées au développement d’une crypto-monnaie est comment aborder la transparence. Les décisions de conception ne sont ni booléennes ni éthérées. développeurs dans les rêves et puis devient soudainement canon. Ils sont issus de l'expérience, débat et les leçons tirées des erreurs passées.

POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 26 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Le défi est qu’un processus de développement totalement transparent pourrait influencer les discussions deviennent plus théâtrales que fondées sur des preuves. Egos, tentatives de conquête d’une communauté et peur avoir l’air stupide pourrait rendre les conversations stériles et contre-productives.

En outre, des étrangers pourraient tenter de récupérer la conversation dans le but de forcer leur opinion. tangente particulière pour devenir le seul sujet pertinent. Tout le monde a une vache sacrée.

Alors, comment concilier la nécessité d’un processus de développement transparent, dû à la communauté qui a confié le progrès à un ensemble de développeurs principaux, avec le besoin de liberté d'expression sans crainte ?

Avec Cardano, nous avons décidé d'adopter un processus axé sur les normes avec une surveillance dirigée. La communauté doit savoir que la science et le code sont bien pensés, vérifiés et résolvez réellement les choses que les développeurs prétendent faire. À cette fin, l'examen par les pairs devrait satisfaire pleinement au volet scientifique puisqu’il a été conçu spécifiquement à cet effet et nous a donné le monde moderne.

Pour le code, ce sujet est un peu plus opiniâtre. Pour Cardano, nous avons choisi de confier le La Fondation Cardano servira d’auditeur final du travail de l’IOHK. Ils sont notamment chargés avec les missions suivantes :

1. Examen régulier du code source contenu dans le Cardano Github pour en vérifier la qualité, couverture des tests, commentaires appropriés et exhaustivité
2. Examen de toute la documentation Cardano pour en vérifier l'exactitude et l'utilité
3. Vérifier les affirmations selon lesquelles les protocoles produits par les scientifiques sont pleinement mis en œuvre

Pour accomplir cette tâche, l'IOHK soumettra des rapports réguliers et opportuns à la Fondation – et à ses assigne – à réviser. La Fondation publiera à son tour un rapport de surveillance du développement au Cardano communauté au moins une fois par trimestre.

Ce premier effort vise à lancer une conversation plus large sur la manière dont un projet décentralisé parvient à la responsabilisation. La supervision du développement par un tiers de confiance est un outil puissant pour garantir que les développeurs sont sur la bonne voie, mais cela ne suffit pas à garantir complètement que le le projet sera toujours à la hauteur.

C'est pour cette raison qu'après l'intégration de la trésorerie à CSL, la Fondation encouragera des équipes de développement supplémentaires pour construire des clients alternatifs basés sur le formel spécifications développées conjointement avec IOHK. La diversité du développement a été une excellente technique utilisé par le projet Ethereum pour éviter la formation d'une monoculture autour d'un seul ensemble d'idées ou développeurs. POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 27 sur 44

IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

En ce qui concerne les spécifications, il existe une richesse de connaissances à tirer des normes processus suivi par le WC3 et l’IETF. Au final, chaque protocole Cardano intègre nécessite une spécification indépendante du travail académique ou du code source. Il faut plutôt être dans un format approprié tel qu'un RFC.

L’un des principes fondamentaux de la Fondation Cardano est d’agir en tant qu’organisme de normalisation spécifiquement pour le Cardano protocoles et pour héberger des conversations pour mettre à jour, ajouter ou modifier les normes pertinentes pour Cardano. Si Internet (un produit de normes) via l'IETF peut parvenir à un consensus sur ce protocoles de base doivent être utilisés, il est alors tout à fait raisonnable de supposer qu'un organisme dédié pourrait faciliter le même résultat.

En guise de conclusion, il est intéressant d'envisager de déplacer ces discussions vers une entité décentralisée. hébergé sur un blockchain. Ce concept est appelé organisation autonome décentralisée (DAO) et des travaux préliminaires sont en cours dans ce domaine. IOHK développera un modèle de référence DAO pour entités interfacées avec Cardano à utiliser si vous le souhaitez et c'est la prérogative de la Fondation Cardano décider s'il convient de l'adopter dans le cadre de leur mandat de normalisation.

Interoperability

Interoperability

The Grand Myopia

Finance and the broader idea of commerce is ultimately a human endeavor. There exist elegant languages, extremely precise tools to capture intent, and endless mazes of techniques to achieve recourse in the event of bad outcomes as well as thousands of years of laws seeking equity in trade. In fact some of the earliest forms of writing were commercial contracts.

Yet the human element cannot be eschewed regardless of the disintermediation to logic, machines or governmental sentinels entrusted with terrible powers. Therein lies the grand myopia of cryptocurrencies. They are mostly divorced from human reality.

People make mistakes. People change their minds. People do not always fully understand the business relationships they are agreeing to enter. People get misled and defrauded. Circumstances change on an individual and state level that require unique solutions. Belaboring this point, most contracts contain force majeure clauses.

WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 28 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

However, cryptocurrencies seek to toss out human understanding, compassion and judgement in exchange for an uncaring digital judge perfectly bound to a constitution without consideration to fairness or outcome. Given that humans have always tried and will continue to attempt to change rules to selfish ends, it is refreshing to actually have a system that cannot be corrupted.

But what happens when a user needs to blend these new systems with traditional financial systems? What happens when one needs to live in the human world? For example, property rights such as land registration live entirely in the physical world. Even tokenizing the land still requires some acknowledgement of the incumbent jurisdiction.

To provide another point, a bar of gold cannot move itself. The digital judge can command its movement, but cannot force it without humans to accommodate. Hence a digital ledger can drift from reality.

Thus a protocol designer needs to decide how much human reality should be permitted in his cryptocurrency. The more flexibility, the less fidelity to the absolute one should expect. The more consumer protection, the more mechanisms have to exist to provide rollbacks, refunds and editing of history.

This section and the next on regulation covers Cardano’s pragmatic approach to the topic. In terms of interoperability, there are two broad groups to discuss. First, interoperability with legacy financial systems (the non-cryptocurrency world). Second, interoperability with other cryptocurrencies.

Legacy

Fintech is not composed of a single standard or even a common language. There is tremendous

diversity in approaches, the entities responsible for settlement and clearing, business

processes, and other domains involved in the accounting, transformation and movement of

value.

It is unreasonable to suggest that, simply because one technology is superior, the rest of the

ecosystem will somehow admit defeat and upgrade. For example, many people still use

Windows XP 16 years after the initial release. This sad state of affairs is equivalent to someone

using the original Macintosh released in 1984 in the year 2000.

Consumer behavior aside, businesses are generally even slower in their upgrade cycle. Many

banks still use back ends written in Cobol. Once infrastructure is known to work and meets

business requirements, there is usually little incentive to upgrade or refine software and

protocols for a consumer’s benefit outside of compliance or security concerns. WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 29 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

For Cardano, we first have to establish what would a legacy bridge even entail? What systems,

standards, entities and protocols should we target to ensure there is a reasonable certainty of

interoperability? Can these bridges be federated or decentralized? Or like exchanges will they

become central points of failure for hackers, malicious owners or overzealous regulators?

There are three concerns that have to be addressed. First, the representation of information and

belief in its accuracy. Second, representation of value and its associated ownership. Third,

representation of entities and, a particular user’s alongside the aggregate level of trust in such

entities.

To be useful, information and value need to freely flow between the legacy financial world and

Cardano. Then outcomes need to be established and recorded to build reputation and grounds

for recourse. Yet such things are mostly scoped in nature to the actors involved. To encode

them on a blockchain would make them global and permanent.

Furthermore, value cannot always freely flow in the legacy world. Embargos, sanctions, capital

controls and judicial action could freeze assets. To be interoperable, one cannot create an

always open escape valve for value to leak.

Finally, the brand and reputation of entities is one of the cornerstones of commercial relationships. Billions of dollars are spent yearly on marketing campaigns to establish, maintain and repair brands. If libelous, false or misleading claims are made about a person or entity, then they have the right to seek legal recourse. Yet blockchains attempt to permanently preserve history.

Like our choice of programming language, there is no ideal solution for Cardano to resolve these concerns in a ubiquitously correct way. Rather, we have to yield to supported opinion again.

With respect to the flow of information, this flow is known as a trusted data feed. It has a source and content. Sources have some notion of credibility and incentive to deceive or maintain honesty. Content can be arbitrarily encoded.

Given that we intend on supporting trusted hardware in our protocol stack, we have chosen to explore adding support for Professor Ari Juel et al.’s Town Crier Protocol. Assuming the existence of a credible set of data sources, Town Crier permits the secure scraping of web content for use in smart contracts and other applications.

WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 30 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

A bootstrap list of sources will be provided by Emurgo, IOHK and the Cardano Foundation. Later this list will be replaced by a community curated list using mechanics derived from Cardano’s treasury system. Our hope is that a reputation system can materialize around good data feeds, thereby creating a positive feedback loop to gradually improve reliability and fidelity.

The representation of value is a more complex topic. Unlike information — where once the veracity, timeliness and completeness are established, protocols can behave in a reliable and deterministic way — value is more delicate.

Once tokenized, value should behave like a unique object. Information can be copied and passed around, but a token representing ownership of something (say a vehicle title) cannot be cloned and traded on two different ledgers. This act would effectively destroy the integrity of the system.

The challenge in legacy interoperability when dealing with tokenized value is that trust assumptions, reliability and auditability change as tokens flow between ledgers. For example, if Bob owns some Bitcoin and then deposits them on an exchange, then Bob now has the exchange’s representation of his Bitcoin on their ledger. In the case of MtGOX, their ledger did not conform to reality, causing the users to lose everything.

The problem is further complicated by the need for legacy systems to recognize tokens living in a cryptocurrency. As mentioned previously, businesses are historically resistant to upgrading their software and supporting new protocols. This situation makes it difficult to see a clear solution.

For Cardano, our best hope is to provide an option for users to attach a rich supply of metadata to their transactions and then wait for industry standards to emerge to hook into. Some progress has been made with the Interledger workgroup, efforts like R3Cev and international mandates to upgrade old financial protocols.

However, the larger challenge remains of quantifying and qualifying value sent from a legacy system to a cryptocurrency ledger. For example if Bob is a bank owner and issues a dollar backed token, then he can always build a bridge to send his tokens to a ledger like Cardano as a user issued asset.

While Cardano would track ownership precisely and provide all the features we have come to love such as timestamping and auditability, no cryptocurrency can make Bob an honest banker. He always has the option of running a fractional reserve bank by not backing all of his dollar WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 31 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

tokens with real dollars. This fraud cannot be detected by a cryptocurrency unless the dollar itself was a token accounted by a digital ledger . 25

Finally, the representation of entities online is a classical network problem dating back to early days of the internet. Universities, businesses, government departments and any arbitrary users need to establish their identity at some point.

To this end, pragmatic yet centralized solutions like the web’s Public Key Infrastructure and ICANN’s DNS system have been implemented. Given that we enjoy the modern web, these solutions are both scalable and practical. But they do not answer a more commercially oriented question of reliability, trustworthiness and other meta characteristics necessary for determining if one wants to do business with the entity.

Multi-sided marketplace hosts like eBay have constructed a business model on providing some of this metadata alongside a framework to complete transactions. Judgements about the quality of content, events and businesses are often deeply influenced solely by online ratings from trusted sources . 26

The part of this point relevant to Cardano is a question of centralization of reputation. One of our goals for Cardano is to provide a financial stack for the developing world. A key to this effort is the ability to establish trust with actors one has never met.

If a single entity or a consortium of entities control who is labeled good or bad, not an organic process derived from actual interactions in the community as a whole, then these entities could arbitrarily blacklist anyone for any perceived sin. This power is against our values as a project and defeats the broader point of using a cryptocurrency.

Fortunately, the same mechanisms used in voting for treasury ballots, adding sources to a list of trusted data feeds and forking a protocol can be reused to establish a reputation space. It is an open area of research and our hope is to provide an overlay protocol for a decentralized reputation web of trust in 2018-2019 after more foundational elements have been settled.

Cryptocurrency Interoperability

25 For digital ledgers on the other hand, proof of reserve has been proposed as a clever way of keeping cryptocurrency only exchanges honest. 26 These rates even impact the creation of content itself. See this interest story on how Rotten Tomatoes has impacted the movie industry. WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 32 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Moving from the legacy world to distributed digital ledgers, interoperability becomes far simpler. Each ledger has a network protocol, standards of communication and security assumptions about its respective consensus algorithm. These in turn can be easily quantified.

Movement of information is established by connecting to the foreign network and translating its messages. Movement of value can be done through a relay system, atomic cross chain trading or through a clever sidechains scheme. As there is not a centralized operator, one representation of entities restricts more to a metadiscussion of trust in developers, miners or some other powerbroker.

For Cardano, we are integrating a new sidechain protocol developed by Kiayias, Miller and Zindros. It provides a non-interactive way of safely moving value between two chains that support the protocol. This mechanism will be the primary way value will flow between CSL and a CCL layer.

For other cryptocurrencies, federated bridges should form as Cardano grows in value and user base. To help accelerate this growth, Cardano SL supports a restricted version of Plutus for interoperability scripts. New transactions will be added in the Shelley and later releases of CSL specifically to address these needs.

The Maze of Daedalus

The points on interoperability come from a global perspective. Specialized protocols, new

transaction types, systems to assess credibility and the flow of information cannot be scoped to

just a single gatekeeper or user. Rather they must be readily available to anyone without

censorship or tolls.

Yet what happens when Cardano does not support a protocol, transaction or application that a

user cannot live without? Should we just be out of scope? The web faced a similar concern

during the 1990s.

Ironically, the web provides two different solutions that can be replicated with cryptocurrencies.

The introduction of JavaScript provided programmability to any website to add arbitrary

features. The introduction of browser plugins and extensions added custom capabilities for

users willing to install them. Both approaches gave us the modern web alongside all its security

horrors.

WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 33 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Ethereum adopted the former approach by allowing users to embed subprotocols on the

Ethereum blockchain as smart contracts. Cardano supports this feature through the CCL

paradigm. But what about custom extensions?

An elucidating example would be a cryptocurrency trader. Imagine a decentralized marketplace,

called DM, that supports a set of different cryptocurrencies. A trader wants to automate his

strategies acting on DM.

In a fragmented ecosystem, the trader would have to install dozens of clients for each

cryptocurrency and then write custom software to talk to each client in order to coordinate

automated trades. If one client updates, then it could break the bespoke software. Furthermore,

what if the trader wants to sell the software?

Inspired from the web model of extensions, if the interface to various cryptocurrencies can be

pulled into a web stack, then the trader’s task becomes dramatically easier. A universal

interface can be established. Installation is one click. Distribution of software can be modeled

after the Chrome web store.

For Cardano, we have decided to experiment with this paradigm by deploying our reference

wallet’s front end on Electron. It is an open source project maintained by Github that combines

both Node and Chrome together. Cardano’s build of Electron is called Daedalus.

The first generation of Daedalus will act as an HD wallet with support for many of the expected

27 accounting and security features that are industry standards, such as spending passwords and

BIP39. In later generations Daedalus will develop into an application framework with a store,

universal integration APIs and an SDK.

The key innovations are ease of development by allowing programmers to use JavaScript,

HTML5 and CSS3 to build their applications and a unified bridge for cross application

communication. Complex behavior such as cryptography, managing a distributed network and

database mechanics can be abstracted away thereby letting the developer focus solely on user

experience and their application’s core logic.

As Daedalus is intended to be a universal framework, its roadmap and evolution is somewhat

independent of Cardano’s. During 2017 they are tightly coupled, but later Cardano will be just

another application for a Daedalus user. We also intend on exploring extremely unique features

such as a universal key management service running solely in Intel SGX.

27 Which is already available at daedaluswallet.io
WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 34 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Ultimately, as protocol designers, we cannot support all needs. Our hope is that the flexibility

that Daedalus will provide combined with stateful smart contracts running on CCL will satisfy

those left out by our design decisions. We also hope that better standards can emerge to

encourage all cryptocurrencies to enjoy better interoperability and security.

Interopérabilité

La grande myopie

La finance et l’idée plus large du commerce sont en fin de compte une entreprise humaine. Il existe des élégants langages, des outils extrêmement précis pour capturer l'intention et des labyrinthes infinis de techniques pour obtenir des recours en cas de mauvais résultats ainsi que des milliers d'années de lois cherchant l'équité dans le commerce. En fait, certaines des premières formes d’écriture étaient des contrats commerciaux.

Pourtant, l'élément humain ne peut être évité, indépendamment de la désintermédiation vers la logique, des machines ou des sentinelles gouvernementales dotées de pouvoirs terribles. C'est là que réside le grand myopie des crypto-monnaies. Ils sont pour la plupart coupés de la réalité humaine.

Les gens font des erreurs. Les gens changent d’avis. Les gens ne comprennent pas toujours pleinement relations d'affaires qu'ils acceptent d'établir. Les gens sont induits en erreur et fraudés. Les circonstances changent au niveau individuel et national et nécessitent des solutions uniques. Travaillant sur ce point, la plupart des contrats contiennent des clauses de force majeure.

POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 28 sur 44

IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Cependant, les crypto-monnaies cherchent à éliminer la compréhension, la compassion et le jugement humains. en échange d'un juge numérique indifférent, parfaitement lié à une constitution sans contrepartie à l’équité ou au résultat. Étant donné que les humains ont toujours essayé et continueront d'essayer de changer les règles à des fins égoïstes, il est rafraîchissant d’avoir un système qui ne peut pas être corrompu.

Mais que se passe-t-il lorsqu'un utilisateur a besoin de combiner ces nouveaux systèmes avec des systèmes financiers traditionnels ? systèmes ? Que se passe-t-il lorsque l’on doit vivre dans le monde humain ? Par exemple, la propriété les droits tels que l’enregistrement foncier vivent entièrement dans le monde physique. Même tokenizing la terre encore nécessite une certaine reconnaissance de la juridiction en place.

Pour ajouter un autre point, un lingot d’or ne peut pas bouger tout seul. Le juge numérique peut commander son mouvement, mais ne peut pas le forcer sans que les humains ne s’y adaptent. Un registre numérique peut donc dérive de la réalité.

Ainsi, un concepteur de protocole doit décider dans quelle mesure la réalité humaine doit être autorisée dans son cadre. crypto-monnaie. Plus il y a de flexibilité, moins on peut s’attendre à une fidélité à l’absolu. Le plus les consommateurs sont protégés, plus il doit exister de mécanismes pour fournir des annulations, des remboursements et édition de l'histoire.

Cette section et la suivante sur la réglementation couvrent l’approche pragmatique de Cardano sur le sujet. Dans En termes d'interopérabilité, il y a deux grands groupes à discuter. Premièrement, l'interopérabilité avec systèmes financiers existants (le monde sans crypto-monnaie). Deuxièmement, l'interopérabilité avec d'autres crypto-monnaies.

Héritage

La Fintech n’est pas composée d’un seul standard ni même d’un langage commun. Il y a énormément

diversité des approches, des entités responsables du règlement-livraison et de la compensation, des

processus et autres domaines impliqués dans la comptabilité, la transformation et le mouvement des

valeur.

Il n'est pas raisonnable de suggérer que, simplement parce qu'une technologie est supérieure, le reste des technologies

l’écosystème admettra d’une manière ou d’une autre sa défaite et s’améliorera. Par exemple, beaucoup de gens utilisent encore

Windows XP 16 ans après la version initiale. Ce triste état de choses équivaut à quelqu'un

en utilisant le Macintosh original sorti en 1984 en 2000.

Mis à part le comportement des consommateurs, les entreprises sont généralement encore plus lentes dans leur cycle de mise à niveau. Beaucoup

les banques utilisent toujours des back-ends écrits en Cobol. Une fois que l’on sait que l’infrastructure fonctionne et répond

exigences de l'entreprise, il y a généralement peu d'incitation à mettre à niveau ou à affiner les logiciels et

protocoles pour le bénéfice du consommateur en dehors des problèmes de conformité ou de sécurité. POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 29 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Pour Cardano, nous devons d’abord établir ce qu’impliquerait un pont hérité ? Quels systèmes,

normes, entités et protocoles devrions-nous cibler pour garantir qu’il existe une certitude raisonnable de

interopérabilité ? Ces ponts peuvent-ils être fédérés ou décentralisés ? Ou comme les échanges, le feront-ils

deviennent-ils des points de défaillance centraux pour les pirates informatiques, les propriétaires malveillants ou les régulateurs trop zélés ?

Il y a trois préoccupations auxquelles il faut répondre. Premièrement, la représentation de l'information et

croyance en son exactitude. Deuxièmement, la représentation de la valeur et sa propriété associée. Troisièmement,

représentation des entités et d’un utilisateur particulier aux côtés du niveau global de confiance dans ces

entités.

Pour être utiles, l’information et la valeur doivent circuler librement entre le monde financier traditionnel et

Cardano. Ensuite, les résultats doivent être établis et enregistrés pour bâtir une réputation et des fondements.

pour recours. Pourtant, de telles choses sont pour la plupart limitées aux acteurs impliqués. Pour encoder

les sur un blockchain les rendrait globaux et permanents.

De plus, la valeur ne peut pas toujours circuler librement dans le monde traditionnel. Embargos, sanctions, capitaux

les contrôles et les poursuites judiciaires pourraient geler les avoirs. Pour être interopérable, on ne peut pas créer un

ouvrez toujours la vanne d'échappement pour que la valeur fuie.

Enfin, la marque et la réputation des entités constituent l’une des pierres angulaires de la stratégie commerciale. relations. Des milliards de dollars sont dépensés chaque année en campagnes de marketing pour établir, maintenir et marques de réparation. Si des allégations diffamatoires, fausses ou trompeuses sont faites au sujet d'une personne ou d'une entité, alors ils ont le droit de recourir à la justice. Pourtant, la tentative de blockchain de préserver en permanence histoire.

Comme notre choix de langage de programmation, il n'existe pas de solution idéale pour Cardano résoudre ces préoccupations d’une manière omniprésente et correcte. Nous devons plutôt céder à une opinion étayée encore une fois.

En ce qui concerne le flux d'informations, ce flux est appelé flux de données fiables. Il a une source et le contenu. Les sources ont une certaine notion de crédibilité et sont incitées à tromper ou à maintenir honnêteté. Le contenu peut être arbitrairement codé.

Étant donné que nous avons l'intention de prendre en charge du matériel fiable dans notre pile de protocoles, nous avons choisi de envisagez d’ajouter la prise en charge du protocole des crieurs publics du professeur Ari Juel et al. En supposant que existence d'un ensemble crédible de sources de données, Town Crier permet le scraping sécurisé des données Web contenu à utiliser dans smart contracts et d’autres applications.

POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 30 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Une liste bootstrap de sources sera fournie par Emurgo, IOHK et la Fondation Cardano. Plus tard cette liste sera remplacée par une liste organisée par la communauté utilisant des mécanismes dérivés de ceux de Cardano système de trésorerie. Notre espoir est qu'un système de réputation puisse se matérialiser autour de bons flux de données, créant ainsi une boucle de rétroaction positive pour améliorer progressivement la fiabilité et la fidélité.

La représentation de la valeur est un sujet plus complexe. Contrairement à l'information — où une fois le la véracité, l'actualité et l'exhaustivité sont établies, les protocoles peuvent se comporter de manière fiable et manière déterministe – la valeur est plus délicate.

Une fois tokenized, la valeur doit se comporter comme un objet unique. Les informations peuvent être copiées et transmis, mais un token représentant la propriété de quelque chose (par exemple un titre de véhicule) ne peut pas être clonés et négociés sur deux registres différents. Cet acte détruirait effectivement l'intégrité du système.

Le défi de l'interopérabilité héritée lorsqu'il s'agit de valeur tokenisée est que la confiance les hypothèses, la fiabilité et l'auditabilité changent à mesure que les token circulent entre les grands livres. Par exemple, si Bob possède des Bitcoin et les dépose ensuite sur un échange, puis Bob a maintenant le représentation par la bourse de son Bitcoin sur leur grand livre. Dans le cas de MtGOX, leur grand livre a fait pas conforme à la réalité, faisant tout perdre aux utilisateurs.

Le problème est encore compliqué par la nécessité pour les systèmes existants de reconnaître les token vivant dans une crypto-monnaie. Comme mentionné précédemment, les entreprises sont historiquement réticentes à se moderniser. leurs logiciels et prenant en charge de nouveaux protocoles. Cette situation fait qu'il est difficile d'y voir clair solution.

Pour Cardano, notre meilleur espoir est de fournir aux utilisateurs la possibilité de joindre une riche quantité de métadonnées. à leurs transactions, puis attendent que les normes de l'industrie émergent pour s'y conformer. Certains des progrès ont été réalisés avec le groupe de travail Interledger, des efforts comme R3Cev et la communauté internationale mandats pour mettre à niveau les anciens protocoles financiers.

Cependant, le plus grand défi reste de quantifier et de qualifier la valeur envoyée par un système hérité. système à un registre de crypto-monnaie. Par exemple, si Bob est propriétaire d'une banque et émet un dollar soutenu token, alors il peut toujours construire un pont pour envoyer ses token vers un grand livre comme Cardano en tant que actif émis par l'utilisateur.

Alors que Cardano suivrait la propriété avec précision et fournirait toutes les fonctionnalités auxquelles nous sommes parvenus amour comme l’horodatage et l’auditabilité, aucune crypto-monnaie ne peut faire de Bob un banquier honnête. Il a toujours la possibilité de gérer une banque à réserves fractionnaires en ne garantissant pas la totalité de son dollar. POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 31 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

tokens avec de vrais dollars. Cette fraude ne peut être détectée par une cryptomonnaie que si le dollar lui-même était un token comptabilisé par un grand livre numérique. 25

Enfin, la représentation des entités en ligne est un problème de réseau classique remontant au début jours d'Internet. Universités, entreprises, ministères et tout utilisateur arbitraire besoin d’établir leur identité à un moment donné.

À cette fin, des solutions pragmatiques mais centralisées telles que l’infrastructure à clé publique du Web et Le système DNS de l’ICANN a été mis en œuvre. Étant donné que nous apprécions le Web moderne, ces les solutions sont à la fois évolutives et pratiques. Mais ils ne répondent pas à une problématique plus commerciale question de fiabilité, de fiabilité et d'autres méta-caractéristiques nécessaires à la détermination si l'on veut faire affaire avec l'entité.

Les hébergeurs de marchés multifacettes comme eBay ont construit un modèle commercial en fournissant certains de ces métadonnées ainsi qu'un cadre pour réaliser les transactions. Les jugements sur la qualité du contenu, des événements et des entreprises est souvent profondément influencée uniquement par les évaluations en ligne provenant de sources fiables. 26

La partie de ce point pertinente pour Cardano est une question de centralisation de la réputation. L'un des notre objectif pour Cardano est de fournir une pile financière au monde en développement. Une clé de cet effort est la capacité d’établir la confiance avec des acteurs qu’on n’a jamais rencontrés.

Si une seule entité ou un consortium d’entités contrôle qui est étiqueté comme bon ou mauvais, ce n’est pas une entité biologique. processus dérivé d’interactions réelles dans la communauté dans son ensemble, alors ces entités pourraient mettre arbitrairement sur liste noire quiconque pour tout péché perçu. Ce pouvoir est contraire à nos valeurs en tant que projet et va à l’encontre du point plus large de l’utilisation d’une crypto-monnaie.

Heureusement, les mêmes mécanismes utilisés pour voter pour les bulletins de vote du Trésor, ajoutant des sources à une liste de les flux de données fiables et la création d'un protocole peuvent être réutilisés pour établir un espace de réputation. C'est un domaine de recherche ouvert et notre espoir est de fournir un protocole de superposition pour un système décentralisé réseau de confiance de réputation en 2018-2019 après que des éléments plus fondamentaux aient été réglés.

Interopérabilité des cryptomonnaies

25 En revanche, pour les registres numériques, la preuve de réserve a été proposée comme un moyen astucieux de conserver la crypto-monnaie n'échange que de manière honnête. 26 Ces tarifs impactent même la création de contenu elle-même. Voir cette histoire d'intérêt sur la façon dont Rotten Tomatoes a eu un impact sur l’industrie cinématographique. POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 32 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

En passant du monde traditionnel aux registres numériques distribués, l’interopérabilité devient beaucoup plus simple. Chaque grand livre dispose d'un protocole réseau, de normes de communication et d'hypothèses de sécurité. sur son algorithme de consensus respectif. Ceux-ci peuvent à leur tour être facilement quantifiés.

Le mouvement de l'information est établi en se connectant au réseau étranger et en traduisant son messages. Le mouvement de la valeur peut être effectué via un système de relais, le commerce atomique en chaîne ou via un système intelligent de sidechains. Comme il n'existe pas d'opérateur centralisé, un la représentation des entités se limite davantage à une métadiscussion sur la confiance dans les développeurs, les mineurs ou un autre courtier en puissance.

Pour Cardano, nous intégrons un nouveau protocole sidechain développé par Kiayias, Miller et Zindros. Il fournit un moyen non interactif de déplacer de la valeur en toute sécurité entre deux chaînes qui soutenir le protocole. Ce mécanisme sera le principal moyen par lequel la valeur circulera entre CSL et un Couche CCL.

Pour les autres crypto-monnaies, des ponts fédérés devraient se former à mesure que Cardano augmente en valeur et en nombre d'utilisateurs. socle. Pour aider à accélérer cette croissance, Cardano SL prend en charge une version restreinte de Plutus pour scripts d'interopérabilité. De nouvelles transactions seront ajoutées dans les versions Shelley et ultérieures de CSL. spécifiquement pour répondre à ces besoins.

Le labyrinthe de Dédale

Les points sur l’interopérabilité viennent d’une perspective globale. Protocoles spécialisés, nouveaux

les types de transactions, les systèmes permettant d’évaluer la crédibilité et le flux d’informations ne peuvent pas être étendus à

juste un seul gardien ou utilisateur. Ils doivent plutôt être facilement accessibles à toute personne sans

censure ou péages.

Mais que se passe-t-il lorsque Cardano ne prend pas en charge un protocole, une transaction ou une application qu'un

l'utilisateur ne peut pas vivre sans ? Devons-nous simplement être hors de portée ? Le Web est confronté à une préoccupation similaire

au cours des années 1990.

Ironiquement, le Web propose deux solutions différentes qui peuvent être répliquées avec les crypto-monnaies.

L'introduction de JavaScript a fourni la possibilité de programmer n'importe quel site Web pour ajouter des

fonctionnalités. L'introduction de plugins et d'extensions de navigateur a ajouté des fonctionnalités personnalisées pour

utilisateurs prêts à les installer. Les deux approches nous ont donné le Web moderne avec toute sa sécurité

horreurs.

POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 33 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Ethereum a adopté l'ancienne approche en permettant aux utilisateurs d'intégrer des sous-protocoles sur le

Ethereum blockchain comme smart contracts. Cardano prend en charge cette fonctionnalité via le CCL

paradigme. Mais qu’en est-il des extensions personnalisées ?

Un exemple éclairant serait celui d’un trader de crypto-monnaie. Imaginez un marché décentralisé,

appelé DM, qui prend en charge un ensemble de différentes crypto-monnaies. Un commerçant souhaite automatiser son

stratégies agissant sur DM.

Dans un écosystème fragmenté, le commerçant devrait installer des dizaines de clients pour chaque

crypto-monnaie, puis écrire un logiciel personnalisé pour parler à chaque client afin de coordonner

échanges automatisés. Si un client met à jour, cela pourrait endommager le logiciel sur mesure. De plus,

que se passe-t-il si le commerçant souhaite vendre le logiciel ?

Inspiré du modèle web des extensions, si l'interface avec diverses crypto-monnaies peut être

intégré dans une pile Web, la tâche du commerçant devient alors considérablement plus facile. Un universel

une interface peut être établie. L'installation se fait en un clic. La distribution des logiciels peut être modélisée

après la boutique en ligne Chrome.

Pour Cardano, nous avons décidé d'expérimenter ce paradigme en déployant notre référence

l’avant du portefeuille sur Electron. Il s'agit d'un projet open source maintenu par Github qui combine

Node et Chrome ensemble. La version d'Electron de Cardano s'appelle Daedalus.

La première génération de Dédale agira comme un portefeuille HD avec prise en charge de nombreux éléments attendus

27 fonctionnalités de comptabilité et de sécurité qui sont des normes de l'industrie, telles que les mots de passe de dépenses et

BIP39. Dans les générations suivantes, Daedalus deviendra un framework d'application avec un magasin,

des API d'intégration universelles et un SDK.

Les principales innovations sont la facilité de développement en permettant aux programmeurs d'utiliser JavaScript,

HTML5 et CSS3 pour construire leurs applications et un pont unifié pour les applications croisées

communications. Comportements complexes tels que la cryptographie, la gestion d'un réseau distribué et

les mécanismes de base de données peuvent être abstraits, permettant ainsi au développeur de se concentrer uniquement sur l'utilisateur

expérience et la logique fondamentale de leur application.

Comme Daedalus est destiné à être un framework universel, sa feuille de route et son évolution sont quelque peu

indépendant de Cardano. En 2017, ils sont étroitement couplés, mais plus tard Cardano ne sera que

une autre application pour un utilisateur de Daedalus. Nous avons également l'intention d'explorer des fonctionnalités extrêmement uniques

comme un service universel de gestion de clés fonctionnant uniquement dans Intel SGX.

27 Qui est déjà disponible sur daedaluswallet.io
POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 34 sur 44

IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

En fin de compte, en tant que concepteurs de protocoles, nous ne pouvons pas répondre à tous les besoins. Nous espérons que la flexibilité

que Daedalus fournira, combiné avec des smart contract avec état fonctionnant sur CCL, satisfera

ceux laissés de côté par nos décisions de conception. Nous espérons également que de meilleures normes pourront émerger pour

encourager toutes les crypto-monnaies à bénéficier d’une meilleure interopérabilité et sécurité.

Regulation

Regulation

The False Dichotomy

As mercurial and arcane as regulation can often be, one can metaphorically infer an elegant narrative loop of the corrupt and their prosecutors seeking justice. Regulations are the toolkit of the lawbringer. But like all tools, they might be crude, old or simply misused.

Cryptocurrencies have not changed the human condition or the narrative loop. There will always be scams, bad actors and terrible outcomes despite the best of intentions. While cryptocurrencies can remove human judgement, they cannot remove human behavior.

A cryptocurrency designer has to take a position on what toolkit he will offer the regulator to correct bad events. The unique challenge cryptocurrencies face is that they are a product of regulatory and monetary failure . 28

Culturally, many in cryptocurrencies consider government action to be corrupt, inept or ineffective. Therefore, they have little respect, patience or desire to endorse a special backdoor for a regulator or lawman to right wrongs. This act would be anathema to the entire purpose of cryptocurrencies.

On the other hand, counting exchange failures and historic events, more than 10 percent of Bitcoin has been lost or stolen since the protocol started on January 3rd, 2009. As of June 30th, 2017, the value lost or stolen comes to a little over $4 billion. And this figure does not account for Bitcoin and other tokens lost to scams and poorly formed ICOs.

28 In fact Satoshi embedded in the Bitcoin Genesis Block the following headline taken from The Times: The Times 03/Jan/2009 Chancellor on brink of second bailout for banks WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 35 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Then there is the issue of privacy. On a macro scale, value flows through specialized channels that are regulated, rich in metadata and actively monitored by law enforcement, governments and international regulators. It is a well understood game with leakage occurring only on the cash side of affairs, which has been gradually diminishing as the world moves to digital money.

29

The paradigm if cryptocurrencies did not exist would seem to be a world that increasingly treats financial privacy like social media content. There is none and one cannot opt out. Hence we have a dilemma yielding an apparent dichotomy.

A cryptocurrency designer can surrender principles and yield to whatever demands their local jurisdiction places upon their code, thereby compromising the privacy and integrity of their users. Or he can adopt a more principled, but anarchistic, philosophy that divorces itself from current best practices and laws.

For Cardano, we feel this narrative is a false dichotomy brought on by a lack of imagination. The reality is that most users are not concerned about rules existing for markets. They are usually concerned about sudden changes in the rules to benefit one or more actors. They are worried about a lack of transparency over who gets special privileges.

We need to distinguish between individual and market rights. Given that cryptocurrencies have a global reach, rights needs to be as user oriented as possible.

Privacy should be reasonable and at the user’s control, not a gatekeeper. The flow of value should be unrestricted. Value should not be subject to sudden forfeiture without consent.

From a market perspective, the marketplace needs to be transparent about the use of data, how funds will be handled within and everyone needs to play by the same set of rules. Furthermore, once the user has consented, then they cannot suddenly change their mind due to inconvenience. Counterparties need certainty as well.

But how exactly does one move from the abstract to an actual system? What should something practical and legal look like? We have broken our solution into three categories: metadata, authentication and compliance as well as marketplace DAOs.

29 The reader should consider picking up a copy of David Wolman’s The End of Money. It covers the international movement towards cash disappearing. WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 36 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Metadata

The act of something can often be less interesting than the metadata surrounding it. For example, driving from Denver to Boulder is an act. Driving from Denver to Boulder in a Ferrari 488 at an average of 120 MPH is metadata. Certainly this infers a different experience than in a Toyota Prius at an average of 30 MPH.

Financial transactions are no different. The context surrounding them is extraordinarily important to economists, tax authorities, law enforcement, businesses and other entities. Sadly in our current fiat based system, most consumers never see how rich in metadata their transactions are or who they are shared with . 30

For Cardano, we acknowledge that users could need or are legally required to share transactional metadata with certain actors like tax authorities. But we believe this sharing has to be at the user’s consent.

We also believe that blockchain systems have tremendous power to eliminate fraud, waste and abuse by providing auditability, timestamping and immutability. Thus some metadata should be posted to the Cardano blockchain.

The hard part is finding a correct balance that does not condemn our blockchain to substantial bloat. Given this concern, we have chosen a pragmatic approach.

First, Daedalus will support over the next 12 months a large array of features to label transactions and financial activity. These metadata can be exported and shared on demand with whoever the user deems necessary. Furthermore, the data can be operated on by three party applications for domain specific purposes (for example, tax accounting).

Second, we are exploring adding support for special addresses that can include hashes and encrypted fields. This structure would permit a user to post metadata on our blockchain without publicly revealing it. But if she wants to share the data, it would carry all the auditability, immutability and timestamp surety that a transaction enjoys.

30 On a more macro scale, author Juan Zarate writes about how this data is used by the US Treasury Department in the war on terrorism in Treasury’s War. It provides a comprehensive view into how the current structure of global financial markets can be used for geopolitical ends. WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 37 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

We have already deployed an address structure that contains an attribute field. It is currently being used to store an encrypted copy of HD wallet trees structure for fast wallet recovery (see HD Wallet documentation). Later versions will generalize this construction.

Authentication and Compliance

Closely connected to transactions are the topics of the right to make transactions and the ownership of funds. For example, while there might be sufficient funds to buy something (for example alcohol), there could be restrictions on its purchase (age requirements).

Ownership and origin of funds are typically providence of know your customer regulations. When a money service business like a bank or exchange opens an account for a new customer, it is usually required to collect basic facts about the customer and where he acquired his funds from.

The technological challenge is that in the process of submitting this legally required information, the user sending it has no guarantee how it will be used, stored and if it will ever be destroyed. Compliance information is commercially valuable. It could be stolen for identity theft or resold where regulations permit.

For Cardano, we want to innovate as much as possible. On the software side of protocols, there is little to provide a guarantee that the receiver of compliance information will behave within a scope of conduct. However, on the hardware side of protocols, using trusted hardware, one can leverage Intel SGX and other HSMs to enforce certain policies.

Thus we are exploring using Sealed Glass Proofs alongside a sharing policy to permit the safe transmission of compliance information to a verifier who in turn is forced to comply with the policies it was transmitted under. We believe that both uniform standards could emerge and also that this method will reduce risk to verifiers by preventing the loss of customer data from hackers.

As a corollary to this effort, the layered model we propose for Cardano separating value from computation also can benefit from this approach. If the computation layer is run by regulated entities (say exchanges or casinos), then they would need to conduct compliance checks and potentially enforce tax policy on users.

Using SGPs, the user can send funds alongside personally identifiable information without concern that it will leak into the broader internet or be preserved by the consensus nodes of the WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 38 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

computation layer. Furthermore, the computation layer would gain certainty that all users transacting are authenticated and legitimate.

This paradigm also allows for customer portability between regulated entities. Exchanges could transfer balances and accounts for customers instantly through these safe channels and also — where policies permit — share data with regulators.

We expect our first beta test of this technology to be conducted in mid-2018 with an aim towards Cardano integration in late-2018 to early 2019 pending research results. This timeline also assumes the ability to collaborate with ARM and Intel in order to get code signed to run on their hardware . 31 Marketplace DAOs

The two previous sections covered the generation and movement of information assuming the existence of some external system. To ensure legacy interoperability, these features will always be necessary, but they do not address blockchain based regulation.

Smart contracts enable a completely new kind of commercial system where relationships are deterministic, self-enforcing and free of ambiguity. They can in turn be used to create rules for marketplaces including arbitrarily complex structures such as arbitration, event driven refunds, and revelation of facts given special conditions.

We call these smart contract enforced structures Marketplace DAOs. They do not require special protocol support nor mutability to be embedded in the ledger. In fact, they can be totally constructed using a collection of interdependent smart contracts.

The architectural concept is to design a collection of commercial templates inspired from contract law and business best practices. These templates can be wired into a developer’s smart contract to enforce specific standards upon the marketplace.

For example, say a developer wants to issue an ERC20 token on CCL to conduct a crowdsale. A Marketplace DAO could be established specifically for crowdsales and its terms and conditions parameterized or even enforced by volunteer or legal standards. Things such as refunds, reallocation of funds or freezing of payment could be inherited in the developer’s ERC20 contract.

31 See Intel SGX Commercial License Policy WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 39 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

This effort allows us to have a macro discussion about how a marketplace should be controlled in order to ensure consumer protection. Second, we can discuss how to model transactions in a way to automatically ensure legal protection and rights within specific jurisdictions, such as New Hampshire.

Working with the Cardano Foundation, IOHK and other entities, the Cardano project will create a reference library of Marketplace DAOs for smart contract developers to use. Our hope is that insurance and regulatory markets can form around these DAOs and that they will be self-evolving based upon outcomes.

Règlement

La fausse dichotomie

Aussi mercurielle et obscure que puisse être la réglementation, on peut métaphoriquement en déduire une élégante boucle narrative des corrompus et de leurs procureurs en quête de justice. Les réglementations sont la boîte à outils de le législateur. Mais comme tous les outils, ils peuvent être rudimentaires, vieux ou simplement mal utilisés.

Les crypto-monnaies n’ont pas changé la condition humaine ni la boucle narrative. Il y aura toujours être des escroqueries, de mauvais acteurs et des résultats terribles malgré les meilleures intentions. Tandis que les crypto-monnaies peuvent supprimer le jugement humain, elles ne peuvent pas supprimer le comportement humain.

Un concepteur de cryptomonnaie doit prendre position sur la boîte à outils qu’il proposera au régulateur. corriger les mauvais événements. Le défi unique auquel les crypto-monnaies sont confrontées est qu’elles sont le produit de échec réglementaire et monétaire. 28

Culturellement, de nombreux acteurs des crypto-monnaies considèrent l’action du gouvernement comme corrompue, incompétente ou inefficace. Par conséquent, ils ont peu de respect, de patience ou de désir d’approuver une porte dérobée spéciale. pour un régulateur ou un homme de loi de réparer les torts. Cet acte serait contraire à l'objectif même de crypto-monnaies.

En revanche, en comptant les échecs de change et les événements historiques, plus de 10 pour cent des Bitcoin a été perdu ou volé depuis le début du protocole le 3 janvier 2009. Au 30 juin, En 2017, la valeur perdue ou volée s'élève à un peu plus de 4 milliards de dollars. Et ce chiffre ne tient pas compte pour Bitcoin et autres token perdus à cause d'escroqueries et d'ICO mal formées.

28 En fait, Satoshi a intégré dans le bloc Genesis Bitcoin le titre suivant tiré du Times : The Times 03/jan/2009 La chancelière sur le point d'effectuer un deuxième plan de sauvetage des banques POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 35 sur 44

IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Ensuite, il y a la question de la vie privée. À l’échelle macro, la valeur circule via des canaux spécialisés qui sont réglementés, riches en métadonnées et activement surveillés par les forces de l'ordre, les gouvernements et les régulateurs internationaux. Il s'agit d'un jeu bien compris dans lequel les fuites se produisent uniquement sur le l’aspect cash des affaires, qui diminue progressivement à mesure que le monde s’oriente vers la monnaie numérique.

29

Si les cryptomonnaies n’existaient pas, le paradigme serait celui d’un monde qui traite de plus en plus la confidentialité financière comme le contenu des médias sociaux. Il n’y en a pas et on ne peut pas s’en retirer. C'est pourquoi nous se trouvent face à un dilemme qui donne lieu à une apparente dichotomie.

Un concepteur de crypto-monnaie peut abandonner ses principes et céder à toutes les exigences de son environnement local. la juridiction impose leur code, compromettant ainsi la confidentialité et l'intégrité de leurs utilisateurs. Ou il peut adopter une philosophie plus fondée sur des principes, mais anarchiste, qui se sépare de meilleures pratiques et lois actuelles.

Pour Cardano, nous pensons que ce récit est une fausse dichotomie provoquée par un manque d’imagination. Le la réalité est que la plupart des utilisateurs ne se soucient pas des règles existantes pour les marchés. Ils sont généralement préoccupés par les changements soudains des règles au profit d’un ou de plusieurs acteurs. Ils sont inquiets sur le manque de transparence quant à savoir qui bénéficie de privilèges spéciaux.

Nous devons faire la distinction entre les droits individuels et les droits du marché. Étant donné que les crypto-monnaies ont un portée mondiale, les droits doivent être aussi orientés utilisateur que possible.

La confidentialité doit être raisonnable et sous le contrôle de l’utilisateur, et non comme un contrôleur d’accès. Le flux de valeur devrait être sans restriction. La valeur ne devrait pas faire l’objet d’une confiscation soudaine sans consentement.

Du point de vue du marché, celui-ci doit être transparent quant à l'utilisation des données, à la manière dont les fonds seront gérés à l’intérieur et tout le monde doit respecter les mêmes règles. De plus, une fois que l'utilisateur a donné son consentement, il ne peut pas soudainement changer d'avis en raison de inconvénient. Les contreparties ont également besoin de certitude.

Mais comment passer exactement de l’abstrait à un système réel ? Que devrait faire quelque chose à quoi ressemble-t-il à la fois pratique et juridique ? Nous avons divisé notre solution en trois catégories : les métadonnées, l'authentification et la conformité ainsi que les DAOs du marché.

29 Le lecteur devrait envisager de se procurer un exemplaire de The End of Money de David Wolman. Il couvre le mouvement international vers la disparition des espèces. POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 36 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Métadonnées

L’acte de quelque chose peut souvent être moins intéressant que les métadonnées qui l’entourent. Pour Par exemple, conduire de Denver à Boulder est un acte. Conduire de Denver à Boulder en Ferrari 488 à une moyenne de 120 MPH sont des métadonnées. Cela implique certainement une expérience différente de celle d'un Toyota Prius à une moyenne de 30 MPH.

Les transactions financières ne sont pas différentes. Le contexte qui les entoure est extraordinairement important pour les économistes, les autorités fiscales, les forces de l’ordre, les entreprises et d’autres entités. Malheureusement Dans notre système actuel basé sur la monnaie fiduciaire, la plupart des consommateurs ne voient jamais à quel point leurs métadonnées sont riches. sont les transactions ou avec qui elles sont partagées. 30

Pour Cardano, nous reconnaissons que les utilisateurs pourraient avoir besoin ou sont légalement tenus de partager métadonnées transactionnelles avec certains acteurs comme les autorités fiscales. Mais nous pensons que ce partage doit être avec le consentement de l’utilisateur.

Nous pensons également que les systèmes blockchain ont un énorme pouvoir pour éliminer la fraude, le gaspillage et abus en fournissant l’auditabilité, l’horodatage et l’immuabilité. Ainsi, certaines métadonnées devraient être posté sur le Cardano blockchain.

Le plus difficile est de trouver un juste équilibre qui ne condamne pas notre blockchain à des difficultés substantielles. ballonner. Face à cette préoccupation, nous avons choisi une approche pragmatique.

Premièrement, Daedalus prendra en charge au cours des 12 prochains mois un large éventail de fonctionnalités permettant d'étiqueter transactions et activités financières. Ces métadonnées peuvent être exportées et partagées à la demande avec celui que l'utilisateur juge nécessaire. De plus, les données peuvent être exploitées par des tiers applications à des fins spécifiques à un domaine (par exemple, comptabilité fiscale).

Deuxièmement, nous envisageons d'ajouter la prise en charge d'adresses spéciales pouvant inclure des hashes et champs cryptés. Cette structure permettrait à un utilisateur de publier des métadonnées sur notre blockchain sans le révélant publiquement. Mais si elle veut partager les données, elles auront toute la possibilité d'être auditées, l'immuabilité et la sécurité d'horodatage dont bénéficie une transaction.

30 À une échelle plus macro, l'auteur Juan Zarate écrit sur la manière dont ces données sont utilisées par le Trésor américain. Département dans la guerre contre le terrorisme dans la guerre du Trésor. Il offre une vision globale de la manière dont La structure actuelle des marchés financiers mondiaux peut être utilisée à des fins géopolitiques. POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 37 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Nous avons déjà déployé une structure d'adresse qui contient un champ d'attribut. C'est actuellement utilisé pour stocker une copie cryptée de la structure des arborescences de portefeuille HD pour une récupération rapide du portefeuille (voir Documentation du portefeuille HD). Les versions ultérieures généraliseront cette construction.

Authentification et conformité

Les thèmes du droit d'effectuer des transactions et de la propriété des fonds. Par exemple, même s’il y a suffisamment de fonds pour acheter quelque chose (par exemple exemple l'alcool), il pourrait y avoir des restrictions sur son achat (conditions d'âge).

La propriété et l'origine des fonds dépendent généralement de la connaissance des réglementations relatives à vos clients. Lorsqu'une entreprise de services monétaires comme une banque ou une bourse ouvre un compte pour un nouveau client, il est généralement nécessaire de recueillir des informations de base sur le client et sur l'endroit où il a acquis ses fonds. de.

Le défi technologique est que, dans le processus de soumission de cette obligation légale informations, l'utilisateur qui les envoie n'a aucune garantie sur la manière dont elles seront utilisées, stockées et si elles seront un jour détruit. Les informations de conformité ont une valeur commerciale. Il pourrait être volé pour usurpation d'identité ou revendu là où la réglementation le permet.

Pour Cardano, nous souhaitons innover le plus possible. Du côté logiciel des protocoles, il y a est peu susceptible de garantir que le destinataire des informations de conformité se comportera dans les limites d'un portée de la conduite. Cependant, du côté matériel des protocoles, en utilisant du matériel fiable, on peut exploitez Intel SGX et d’autres HSM pour appliquer certaines politiques.

Nous étudions donc l'utilisation d'épreuves en verre scellé parallèlement à une politique de partage pour permettre la sécurité. transmission des informations de conformité à un vérificateur qui, à son tour, est contraint de se conformer aux politiques dans lesquelles il a été transmis. Nous pensons que des normes uniformes pourraient émerger et également que cette méthode réduira les risques pour les vérificateurs en empêchant la perte de données client de les pirates.

En corollaire à cet effort, le modèle en couches que nous proposons pour Cardano séparant la valeur de le calcul peut également bénéficier de cette approche. Si la couche de calcul est gérée par des entités (par exemple des bourses ou des casinos), elles devraient alors effectuer des contrôles de conformité et potentiellement appliquer une politique fiscale aux utilisateurs.

Grâce aux SGP, l'utilisateur peut envoyer des fonds accompagnés d'informations personnellement identifiables sans crainte qu'il ne s'infiltre dans l'Internet au sens large ou qu'il ne soit préservé par les nœuds de consensus du POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 38 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

couche de calcul. De plus, la couche de calcul aurait la certitude que tous les utilisateurs les transactions sont authentifiées et légitimes.

Ce paradigme permet également la portabilité des clients entre entités réglementées. Les échanges pourraient transférer instantanément les soldes et les comptes des clients via ces canaux sécurisés et également : là où les politiques le permettent, partagez des données avec les régulateurs.

Nous prévoyons de réaliser notre premier test bêta de cette technologie à la mi-2018 dans le but vers l’intégration de Cardano fin 2018 ou début 2019 en attendant les résultats de la recherche. Cette chronologie suppose également la possibilité de collaborer avec ARM et Intel afin de faire signer le code pour qu'il puisse s'exécuter leur matériel. 31 Marché DAOs

Les deux sections précédentes couvraient la génération et le mouvement des informations en supposant que existence d’un système externe. Pour garantir l'interopérabilité existante, ces fonctionnalités seront toujours être nécessaire, mais ils ne traitent pas de la réglementation basée sur blockchain.

Les contrats intelligents permettent un tout nouveau type de système commercial dans lequel les relations sont déterministe, autonome et sans ambiguïté. Ils peuvent à leur tour être utilisés pour créer des règles pour des marchés incluant des structures arbitrairement complexes telles que l'arbitrage, les remboursements événementiels, et la révélation de faits dans des conditions particulières.

Nous appelons ces smart contract structures appliquées Marketplace DAOs. Ils ne nécessitent pas prise en charge de protocole spécial ni mutabilité à intégrer dans le grand livre. En fait, ils peuvent être totalement construit à l’aide d’une collection de smart contract interdépendants.

Le concept architectural consiste à concevoir une collection de modèles commerciaux inspirés de droit des contrats et bonnes pratiques commerciales. Ces modèles peuvent être intégrés dans le logiciel d'un développeur. smart contract pour appliquer des normes spécifiques sur le marché.

Par exemple, supposons qu'un développeur souhaite émettre un ERC20 token sur CCL pour effectuer une vente participative. Un La place de marché DAO pourrait être créée spécifiquement pour les ventes participatives et ses termes et conditions paramétrés ou même appliqués par des normes volontaires ou juridiques. Des choses telles que les remboursements, la réaffectation des fonds ou le gel des paiements pourraient être hérités de l’ERC20 du développeur contrat.

31 Voir la politique de licence commerciale Intel SGX POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 39 sur 44

IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Cet effort nous permet d'avoir une discussion macro sur la manière dont un marché devrait être contrôlé. afin d'assurer la protection des consommateurs. Deuxièmement, nous pouvons discuter de la façon de modéliser les transactions dans un moyen d'assurer automatiquement la protection juridique et les droits au sein de juridictions spécifiques, telles que New Hampshire.

En collaboration avec la Fondation Cardano, l'IOHK et d'autres entités, le projet Cardano créera un bibliothèque de référence de Marketplace DAOs que les développeurs smart contract peuvent utiliser. Notre espoir est que les marchés de l'assurance et de la réglementation peuvent se former autour de ces DAO et qu'ils seront auto-évolutif en fonction des résultats.

Sustainability

Sustainability

An immersion into the cryptocurrency area yields many conceptual contradictions.

Cryptocurrencies are designed to be difficult to change, but, like all technology, they need to

change to address design flaws and advancements. Blockchains are intended to prevent

centralization, yet require strong actors to lead changes or maintain the code.

Perhaps the most frustrating experience comes when there are clear deficiencies that most

stakeholders agree need to be corrected, yet consensus cannot emerge on the path forwards.

Bitcoin’s block size debate has now been an active issue for more than two years. Daily,

transactions totalling over a billion dollars are pending because the network is at peak capacity.

If changing a simple parameter — even in the presence of temporary solutions — cannot be

coordinated, then how can enterprises and governments feel comfortable investing billions of

dollars into building infrastructure on top of these systems? For that matter, how can any

business gamble on the strategic risk of integrating accountability-free protocols that cannot

make rational design upgrades?

Looking back into history, the evolution of the internet has followed a similar pattern with even

simple changes like the transition from IPv4 to IPv6 taking decades to realize. Yet there is a

strong contrast between blockchain technology and the internet in that they follow a very

different style of custodianship.

The internet was a military project that grew out of DARPA into academic circles with strong

government backing and a well-defined set of initial custodians. The internet grew under

non-commercial conditions without the machinations of corporate influence attempting to

WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 40 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

monopolize the network. In fact, e-commerce violated the NSF AUP until it was repealed in

By the time businesses had the luxury of commercializing the internet, there was already a

strong set of standards, principles and evangelistic adherents. This did not stop companies like

AOL and Microsoft from trying to build wall gardens and creating proprietary technology like

ActiveX. This foundation has not stopped next generation actors such as Google from pushing

their own agendas given their enormous user bases and capitalizations.

With swarms of rent seeking actors from traders to miners, cryptocurrencies are the ultimate

32 commercially motivated ecosystems. Given this foundation, evolution of the custodianship of

cryptocurrencies has resulted in optimization around self-interest.

For example, validationless mining is starting to occur more frequently as it improves a miner’s

profit margin, yet this completely disregards the entire purpose and utility of mining. Mining

centralization has already occurred with just a handful of actors in control of the majority of

Bitcoin’s hash power.

Like the internet, cryptocurrencies require consensus to change. But when such rapid

centralization of power to a handful of brokers occurs, what happens when change is not

convenient to them?

Unlike the internet, the bootstrapping of most cryptocurrencies is not done through altruistically

non-commercial or academic means. From inception, some group seeks to make gains and

there are power brokers assigned to help ensure those gains.

Founding centralization is a reality that each cryptocurrency must face in its evolution. We

cannot fully escape it, but should at least try to design around gradual decentralization.

For Cardano, we thought carefully about what factors promote centralization and what

techniques could be applied to encourage our protocol to gradually become public

infrastructure like the web.

We fully admit that total decentralization is both impossible and perhaps even

counterproductive. Yet certain factors can be encouraged to produce a more balanced system.

First, while centralized custodianship of crowdsale funds allows for agile and rapid development

of the protocol during the early days, eventually funding has to diversify and the speed of

32 See link for more information on this term WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 41 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

development needs to retire to a more systematic and deliberate pace. Following this point,

funding needs to avoid cultural, linguistic and geographic bias.

Second, as the community becomes more informed about the underlying nature of the

cryptocurrency’s technology, decisions about the roadmap cannot be centralized to a set of

core developers or foundation. There needs to be a blockchain based method for proposing,

vetting, and enacting changes to the protocol.

Third, the incentives behind maintaining the Cardano SL blockchain have to be directly aligned

with the aggregate desires of all users. We cannot permit a cabal of specialized actors to

emerge who are independent of the will of the greater community.

For the first principle, we have chosen to integrate a treasury system into Cardano. For the

second, we will deploy a formal process to propose Cardano Improvement Proposals through a

system coordinated by CSL itself. For the third, we believe Ouroboros provides an elegant

solution.

More detail could be provided on the above topics, but they are extensive in their own right and

beyond the scope of a survey paper. Mechanism design is one of the most intricate and

interdependent academic fields with incomplete theory and no solid canonical model to stand

on.

Rather our science driven approach described in section two serves us well here. IOHK’s Veritas

team is working in partnership with a group of researchers from Lancaster University under the

direction of Professor Bingsheng Zhang to develop Cardano’s reference treasury model. With

the aim of integration in 2018, we expect a dedicated peer reviewed publication by the end of

For formal description and vetting of changes to a cryptocurrency protocol, this topic is the

least understood as it requires both ontological notions as well as a mechanism to incentivize

broad participation. Perhaps some form of representative democratic process could emerge or

use of liquid feedback to provide more rational voting.

We expect research in this direction to consume most of IOHK’s formal involvement in the

development of Cardano . As a starting point, we will deploy alongside the reference treasury

33 model several mechanisms to capture consent. Further study is required for a definitive

solution.

33 IOHK is retained to build Cardano until the end of 2020 WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 42 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

Finally, work to improve incentives for Ouroboros is being supervised by Professor Elias

Koutsoupias of the University of Oxford. After the cryptographic foundations of Ouroboros are

solidified alongside all required scalability work, a broader study of bonds, penalties and exotic

incentives will be added to the reference protocol.

Durabilité

Un plongée dans le crypto-monnaie zone rendements beaucoup conceptuel contradictions.

Les cryptomonnaies sont conçues pour être difficiles à modifier, mais, comme toute technologie, elles doivent

changement pour corriger les défauts de conception et les progrès. Les blockchains visent à empêcher

centralisation, mais nécessitent des acteurs forts pour diriger les changements ou maintenir le code.

L’expérience la plus frustrante survient peut-être lorsqu’il existe des lacunes évidentes que la plupart des

les parties prenantes conviennent qu’il faut corriger cette situation, mais aucun consensus ne peut émerger sur la voie à suivre.

Le débat sur la taille des blocs de Bitcoin est désormais un sujet actif depuis plus de deux ans. Quotidiennement,

des transactions totalisant plus d'un milliard de dollars sont en attente car le réseau est au maximum de sa capacité.

Si la modification d'un paramètre simple — même en présence de solutions temporaires — ne peut être

coordonnée, alors comment les entreprises et les gouvernements peuvent-ils se sentir à l’aise en investissant des milliards de dollars ?

des dollars pour construire une infrastructure au-dessus de ces systèmes ? D’ailleurs, comment peut-on

les entreprises parient sur le risque stratégique d’intégrer des protocoles exempts de responsabilité qui ne peuvent pas

apporter des améliorations de conception rationnelles ?

Si l’on regarde l’histoire, l’évolution d’Internet a suivi un schéma similaire, avec même

des changements simples comme la transition d’IPv4 à IPv6 prennent des décennies à être réalisés. Il existe pourtant un

fort contraste entre la technologie blockchain et Internet dans la mesure où ils suivent une approche très

un style de garde différent.

Internet était un projet militaire qui est né de la DARPA et s'est répandu dans les cercles universitaires avec une forte influence.

le soutien du gouvernement et un ensemble bien défini de dépositaires initiaux. Internet s'est développé sous

conditions non commerciales sans les machinations de l’influence des entreprises qui tentent de

POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 40 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

monopoliser le réseau. En fait, le commerce électronique a violé la NSF AUP jusqu'à ce qu'elle soit abrogée en

Au moment où les entreprises ont eu le luxe de commercialiser Internet, il existait déjà un

un ensemble solide de normes, de principes et d’adhérents évangéliques. Cela n'a pas empêché des entreprises comme

AOL et Microsoft d'essayer de construire des jardins muraux et de créer des technologies propriétaires comme

ActiveX. Cette fondation n’a pas empêché les acteurs de la nouvelle génération comme Google de pousser

leurs propres agendas étant donné leurs énormes bases d’utilisateurs et leurs capitalisations.

Avec des essaims de loyers en quête acteurs, des traders aux mineurs, les crypto-monnaies sont l'ultime

32 écosystèmes à motivation commerciale. Compte tenu de ce fondement, l'évolution de la tutelle de

les crypto-monnaies ont abouti à une optimisation autour de l’intérêt personnel.

Par exemple, le minage sans validation commence à se produire plus fréquemment car il améliore les compétences du mineur.

marge bénéficiaire, mais cela ignore complètement le but et l’utilité de l’exploitation minière. Exploitation minière

la centralisation s’est déjà produite avec seulement une poignée d’acteurs contrôlant la majorité des

La puissance hash de Bitcoin.

Comme Internet, les crypto-monnaies nécessitent un consensus pour changer. Mais quand si rapide

Lorsque la centralisation du pouvoir se produit entre les mains d’une poignée de courtiers, que se passe-t-il lorsque le changement n’est pas apporté ?

cela leur convient-il ?

Contrairement à Internet, le démarrage de la plupart des crypto-monnaies ne se fait pas de manière altruiste.

moyens non commerciaux ou académiques. Dès leur création, certains groupes cherchent à réaliser des gains et

des courtiers en pouvoir sont chargés d’aider à garantir ces gains.

La centralisation fondatrice est une réalité à laquelle chaque cryptomonnaie doit faire face dans son évolution. Nous

ne peut pas y échapper complètement, mais devrait au moins essayer de concevoir autour d’une décentralisation progressive.

Pour Cardano, nous avons soigneusement réfléchi aux facteurs qui favorisent la centralisation et à ce qui

techniques pourrait être appliqué pour inciter notre protocole à devenir progressivement public

infrastructure comme le Web.

Nous entièrement admettre que total décentralisation est les deux impossible et peut-être même

contre-productif. Pourtant, certains facteurs peuvent être encouragés pour produire un système plus équilibré.

Premièrement, même si la garde centralisée des fonds de vente participative permet un développement agile et rapide

du protocole au début, le financement devra éventuellement se diversifier et la vitesse de mise en œuvre

32 Voir le lien pour plus d'informations sur ce terme POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 41 sur 44IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

le développement doit revenir à un rythme plus systématique et délibéré. Suite à ce point,

le financement doit éviter les préjugés culturels, linguistiques et géographiques.

Deuxièmement, à mesure que la communauté est mieux informée sur la nature sous-jacente du

technologie de la crypto-monnaie, les décisions concernant la feuille de route ne peuvent pas être centralisées dans un ensemble de

développeurs principaux ou fondation. Il doit y avoir une méthode basée sur blockchain pour proposer,

vérification et adoption de modifications au protocole.

Troisièmement, les incitations derrière le maintien du Cardano SL blockchain doivent être directement alignées

avec les désirs globaux de tous les utilisateurs. Nous ne pouvons pas permettre qu'une cabale d'acteurs spécialisés

émergent et sont indépendants de la volonté de la communauté dans son ensemble.

Pour le premier principe, nous avons choisi d'intégrer un système de trésorerie dans Cardano. Pour le

Deuxièmement, nous déploierons un processus formel pour proposer des propositions d'amélioration Cardano via un

système coordonné par CSL lui-même. Pour le troisième, nous pensons qu'Ouroboros offre un cadre élégant

solution.

De plus amples détails pourraient être fournis sur les sujets ci-dessus, mais ils sont vastes en eux-mêmes et

au-delà du cadre d’un document d’enquête. La conception des mécanismes est l’une des plus complexes et

domaines universitaires interdépendants avec une théorie incomplète et aucun modèle canonique solide

sur.

Notre approche scientifique décrite dans la deuxième section nous sert plutôt ici. Veritas de l'IOHK

L'équipe travaille en partenariat avec un groupe de chercheurs de l'Université de Lancaster sous le

direction du professeur Bingsheng Zhang pour développer le modèle de trésorerie de référence de Cardano. Avec

l’objectif d’intégration en 2018, nous attendons une publication dédiée à comité de lecture d’ici la fin de

Pour une description formelle et le contrôle des modifications apportées à un protocole de cryptomonnaie, cette rubrique est la

moins compris car il nécessite à la fois des notions ontologiques ainsi qu'un mécanisme pour inciter

une large participation. Peut-être qu'une certaine forme de processus démocratique représentatif pourrait émerger ou

utilisation de la rétroaction liquide pour fournir un vote plus rationnel.

Nous nous attendons à ce que la recherche dans cette direction consomme la majeure partie de l’implication formelle de l’IOHK dans le

développement de Cardano . Dans un premier temps, nous déploierons aux côtés de la trésorerie de référence

33 modéliser plusieurs mécanismes pour recueillir le consentement. Une étude plus approfondie est nécessaire pour une décision définitive

solution.

33 IOHK sont retenus pour construire Cardano jusqu'à fin 2020 POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 42 sur 44

IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Enfin, les travaux visant à améliorer les incitations pour les Ouroboros sont supervisés par le professeur Elias.

Koutsoupias de l'Université d'Oxford. Après que les fondements cryptographiques d’Ouroboros soient

solidifié parallèlement à tous les travaux d'évolutivité requis, une étude plus large des obligations, des pénalités et des éléments exotiques

des incitations seront ajoutées au protocole de référence.

Conclusion

Conclusion

A cryptocurrency is more than the sum of its protocols, source code and utility. It is ultimately a social system that inspires, enables and connects people. Frustrated by the many half measures, failures and broken promises of past protocols, we set out to build something better.

This process is not simple nor have we ever believed it can finish. Social protocols continue indefinitely changing as people and society change. To be useful, we want to trap the power of evolution and port it into Cardano.

Evolution is not guided by a single hand or a grand design. It is a process of serendipity inspired by endless mistakes and problems. Cardano seeks to be the digital embodiment of this process — fit enough to be able to survive the markets of today and adaptive enough to evolve to meet the needs of the future.

The previous sections capture a brief view into how we have been approaching this goal. We have diligently tried to recognize cognitive biases, learn from history and follow a rigorous process. We have tried to balance the need for rapid development with formal methods that traditionally cannot move quickly.

It has been an extraordinary privilege to embark on this journey. In the past two years, we have already developed a provably secure proof-of-stake protocol, recruited a small army of Haskell developers and made Cardano’s development the concern of many talented scientists.

As we move from the laboratory to a deployed system in the wild, there will be growing pains, but our hope is that Cardano’s future could be summarized in a single anthropomorphized sentence. Cardano is a pragmatic dreamer that learns from its elders, is a good citizen in its community, and always finds a way to pay its bills.

WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 43 of 44

IOHK | WHY WE ARE BUILDING CARDANO | 06/28/2017

We cannot know the future, but we are glad to be trying to make it a better one for everyone. Thanks for reading. WHY WE ARE BUILDING CARDANO Creative Commons Attribution 4.0 International License Page 44 of 44

Conclusion

Une crypto-monnaie est bien plus que la somme de ses protocoles, de son code source et de son utilitaire. C'est finalement un système social qui inspire, permet et connecte les gens. Frustré par les nombreuses moitiés mesures, échecs et promesses non tenues des protocoles passés, nous avons décidé de construire quelque chose de mieux.

Ce processus n’est pas simple et nous n’avons jamais cru qu’il puisse se terminer. Les protocoles sociaux se poursuivent changeant indéfiniment à mesure que les gens et la société changent. Pour être utile, nous voulons piéger le pouvoir de revolution et portez-le dans Cardano.

L’évolution n’est pas guidée par une seule main ou par un grand dessein. C'est un processus de hasard inspiré par des erreurs et des problèmes sans fin. Cardano cherche à être l'incarnation numérique de ce processus — suffisamment en forme pour pouvoir survivre aux marchés d'aujourd'hui et suffisamment adaptatif pour évoluer pour répondre les besoins du futur.

Les sections précédentes donnent un bref aperçu de la manière dont nous avons approché cet objectif. Nous ont essayé avec diligence de reconnaître les préjugés cognitifs, d'apprendre de l'histoire et de suivre une approche rigoureuse processus. Nous avons essayé d'équilibrer la nécessité d'un développement rapide avec des méthodes formelles qui ne peut traditionnellement pas agir rapidement.

Ce fut un privilège extraordinaire de se lancer dans ce voyage. Au cours des deux dernières années, nous avons déjà développé un protocole proof-of-stake dont la sécurité a été prouvée, a recruté une petite armée de Haskell développeurs et a fait du développement de Cardano la préoccupation de nombreux scientifiques talentueux.

À mesure que nous passons du laboratoire à un système déployé dans la nature, il y aura des difficultés de croissance, mais notre espoir est que l’avenir de Cardano puisse être résumé dans un seul tableau anthropomorphisé. phrase. Cardano est un rêveur pragmatique qui apprend de ses aînés, est un bon citoyen dans son communauté et trouve toujours un moyen de payer ses factures.

POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 43 sur 44

IOHK | POURQUOI NOUS CONSTRUISONS CARDANO | 28/06/2017

Nous ne pouvons pas connaître l’avenir, mais nous sommes heureux d’essayer de le rendre meilleur pour tout le monde. Merci d'avoir lu. POURQUOI NOUS CONSTRUISONS CARDANO Licence internationale Creative Commons Attribution 4.0 Page 44 sur 44