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 : 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
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