42
Comprendre la blockchain

Présentation au Blockchain Day (Lyon)

Embed Size (px)

Citation preview

Comprendre la blockchain

Qu’est-ce qu’une blockchain ?

Block chain = Chaine de blocs

Qu’est-ce qu’une blockchain ?

Un bloc =

Un ensemble detransaction

Le processus de minage

Garantie du réseau

//

Tx2873Tx2865Tx2874…

Tx2864Tx2865Tx2874…

Tx2878

Le processus de minage

Garante du réseau ✓

Blockchain

Tx2873Tx2865Tx2874Tx2878…

Bloc 413517+25

Bloc 413517Bloc 413517

Fork

Bloc 413517

Bloc 413517

Bloc 413518

Bloc 413517

La Blockchain ?

La chaine de bloc la plus longue

(mieux) Comprendre la les blockchains

Les Blockchains

Bitcoin Ethereum

NXT

Bitshare

CryptoNote

Bitcoin

Bitcoin

Bitcoin : INPUT / OUTPUT

Address1xbtkdfkd…

0.1

INPUT OUTPUT

Pas de compte dans Bitcoin

Address1Bs647Gt…

Bitcoin : Coinbase

Coinbase

Address1xbtkdfkd…

25

INPUT OUTPUT

Bitcoin : Unspent Transaction Output (UTXO)

Address1xbtkdfkd…

0.1

INPUT OUTPUT

Pas dépensé ? ---------------------> Unspent(TX Output)

Address1Bs647Gt…

Bitcoin : Unspent Transaction Output (UTXO)

D’UTXO en UTXO

Bitcoin : Unspent Transaction Output (UTXO)

1

A quoi correspond le montant d’une adresse ?

Adresse : 1xbtkdfkd… 5

0,75 0,75 0,5 0,5

0,35 …

UTXOs

Ethereum

Ethereum

Ethereum : le concept de « compte »

Pas d’UTXOs dans Ethereum

Une adresse Ethereum0x7e1a0a3c40f703c971f62bb9ef066bb4560d08d2

=

Un compte

Ethereum : le concept de « compte »

2 types :

- Compte personnel – clé privée- Compte de contrat – code du contrat

Ethereum : le concept de « compte »

Un compte (= une adresse) :

- Un nonce – nb de tx- Une balance – en Wei (10-18 Eth)- Un contrat * – hash du code- Du stockage * – informations contrat

Ethereum : le concept de « compte »

Une transaction

=

Opération +/- sur balance

Ethereum : Compte Externe

Compte Externe: 0x7e1a0a3c40f703c971f62bb9ef066bb4560d08d2

Ethereum : Compte Contrat

Compte Contrat: 0xf0160428a8552ac9bb7e050d90eeade4ddd52843

EVM Code

Compte Contrat: 0xf0160428a8552ac9bb7e050d90eeade4ddd52843

Solidity --> EVM Code

Compte Contrat: 0xf0160428a8552ac9bb7e050d90eeade4ddd52843

Preuve d’existence sur la blockchain

Bitcoin : OP_Return

Address1xbtkdfkd…

0.1

INPUT OUTPUT

Address1Bs647Gt…

Bitcoin : avant l’OP_Return

Address1xbtkdfkd…

0.1

UTXO (inutilisable)

« Bitcoin c’est pas si pratique ? »

Bitcoin : OP_Return

Address1xbtkdfkd…

0Address1Bs647Gt…

« Op_return, c’est géant ! »

Bitcoin : OP_Return

Visualisation

Bitcoin : Preuve d’existence dans la Blockchain

« Digest »

23/03/16, 16:40:17

THE DAO(uille)

Bitcoin : langage voulu limité

For () do …

While () do …

Ethereum : « Turing complete »

Ethereum : langage programmation

Solidity « »

Serpent

LLL

https://solidity.readthedocs.io/

Ethereum : « Gas powered »

http://gavwood.com/paper.pdf

Ethereum : The DAO

- Levée de fonds- Création de tokens- Envoi de tokens- Gestion des propales- Votes des propales- …

The DAO : Split

The DAO100%

51%

39%

Proposition

no

The DAO : Split

The DAO100%

51%

39%

Proposition

no

Conclusion

www.chaintech.fr