Comprendre la blockchain
Qu’est-ce qu’une blockchain ?
Block chain = Chaine de blocs
Qu’est-ce qu’une blockchain ?
Un bloc
=
Un ensemble de
transaction
Le processus de minage
Garantie du réseau
//
Tx2873
Tx2865
Tx2874
…
Tx2864
Tx2865
Tx2874
…
Tx2878
Le processus de minage
Garante du réseau ✓
Blockchain
Tx2873
Tx2865
Tx2874
Tx2878
…
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
Address
1xbtkdfkd…
0.1
INPUT OUTPUT
Pas de compte dans Bitcoin
Address
1Bs647Gt…
Bitcoin : Coinbase
Coinbase
Address
1xbtkdfkd…
25
INPUT OUTPUT
Bitcoin : Unspent Transaction Output (UTXO)
Address
1xbtkdfkd…
0.1
INPUT OUTPUT
Pas dépensé ? ---------------------> Unspent
(TX Output)
Address
1Bs647Gt…
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 Ethereum
0x7e1a0a3c40f703c971f62bb9ef066bb4560d08d2
=
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
Address
1xbtkdfkd…
0.1
INPUT OUTPUT
Address
1Bs647Gt…
Bitcoin : avant l’OP_Return
Address
1xbtkdfkd…
0.1
UTXO
(inutilisable)
« Bitcoin c’est pas si
pratique ? »
Bitcoin : OP_Return
Address
1xbtkdfkd…
0Address
1Bs647Gt…
« 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 DAO
100%
51%
39%
Proposition
no
The DAO : Split
The DAO
100%
51%
39%
Proposition
no
Conclusion
www.chaintech.fr

Présentation au Blockchain Day (Lyon)