SlideShare une entreprise Scribd logo
1  sur  72
2
Projet BLISS
Output O3 Ressources Éducationnelles Ouvertes
Tache O3-T1 Matériel d’apprentissage et d’évaluation
20
Définit les principales caractéristiques des blockchains. Adresse les
fonctionalités fondamentales de la technologie blockchain.
U1 Blockchain essentials for ICT professionals
Unité d’enseignement :
Résumé :
Heures :
3
Objectifs d’apprentissage
Introduction
• Terminologie Blockchain
• Distinction entre bases de données et les
registres de blockchain
Éléments de cryptographie
• Cryptographie, fonctions de hashage et
signatures numériques
Méthodes de consensus
• Principes et paradigmes des systèmes
distribués
• Algorithmes de consensus Blockchain
La Blockchain en tant que structure de
données
• Structure des Blockchains
• Différents types of blockchain
• Identifier les caractéristiques blockchain dans
un environnement donné
• Analyser les applications existentes des
blockchain dans un context donné
• Évaluer de façon critique les fonctionnalités
cryptographiques d’une application blockchain
• Identifier les éléments cruciaux de sécurité
dans une blockchain
• Différencier les différents systèmes
décentralisés et autonomes, tels que les
registres distribués adaptés à une application
blockchain donnée
Savoir Savoir faire
Unité
d’enseignement
U1 Blockchain essentials for ICT professionals
Donner les avantages et désavantages des caractéristiques
d’une application blockchain spécifique, en termes de sécurité,
decentralisation, et la réalisation du consensus
K1
4
Objectifs d’apprentissage
Théorie des contrats intelligents
• Théorie et architecture des contrats
intelligents
• Architecture des systèmes autonomes et
décentralisés
Applications des contrats intelligents
• Applications blockchain existantes, structures
liées et architectures
• Séléctionner l’algorithme de
consensus adapté à une
application blockchain
spécifique
• Formaliser et évaluer les
contrats intelligents
nécessaires dans un context
blockchain donné
Savoir Savoir faire
U1 Blockchain essentials for ICT professionals
Expliquer de façon autonome le fonctionnement d’un contrat
intelligent dans un scenario blockchain donné
K2
Unité
d’enseignement
5
Introduction à la technologie
Blockchain
Translated by Léo Besançon
University of Claude Bernard of Lyon (UCBL), France
Revised by Catarina Ferreira Da Silva and
Parisa Ghodous, UCBL, France
6
Table des matières K1
● Introduction
1. Terminologie Blockchain
2. Distinction entre les bases de données et les registres de
blockchain
● Éléments de cryptographie
1. Cryptographie, fonctions de hashage et signatures numériques
● Méthodes de consensus
1. Principes et paradigmes des systèmes distribués
2. Algorithmes de consensus Blockchain
● La Blockchain en tant que structure de données
1. Structure des Blockchains
2. Différents types de blockchain
7
Table des matières K1
● Introduction
1. Terminologie Blockchain
2. Distinction entre les bases de données et les registres de
blockchain
● Éléments de cryptographie
1. Cryptographie, fonctions de hashage et signatures numériques
● Méthodes de consensus
1. Principes et paradigmes des systèmes distribués
2. Algorithmes de consensus Blockchain
● La Blockchain en tant que structure de données
1. Structure des Blockchains
2. Différents types de blockchain
8
Introduction
“Pour comprendre le pouvoir de la technologie blockchain,
et ce qu’elle peut faire, il est important de différencier
trois choses qui sont souvent mélangées, la cryptomonnaie
Bitcoin, la blockchain spécifique sous-jacente, et le
concept des blockchains en général.”
The Trust Machine, THE ECONOMIST, 31 Oct. 2015
Source : https://www.economist.com/leaders/2015/10/31/the-trust-machine
9
Table des matières K1
● Introduction
1. Terminologie Blockchain
2. Distinction entre les bases de données et les registres de
blockchain
● Éléments de cryptographie
1. Cryptographie, fonctions de hashage et signatures numériques
● Méthodes de consensus
1. Principes et paradigmes des systèmes distribués
2. Algorithmes de consensus Blockchain
● La Blockchain en tant que structure de données
1. Structure des Blockchains
2. Différents types de blockchain
10
Terminologie Blockchain
● Une Blockchain – Qu’est ce que c’est ?
o Aussi nommées “DLT” (Distributed Ledger Technology) – un registre
de compte partagé rudimentaire
o Technologiquement, c’est
• Une base de données distribuée – un register
publique (il est possible d’insérer ou de
rechercher des données, mais pas de les mettre
à jour ou les supprimer)
• Un ordinateur distribué – qui execute des
contrats intelligents
• Basé sur les technologies P2P (pair-à-pair), la
cryptographie et des API
Image source : https://www.ibm.com/blockchain/assets/images/landing/blockchain_shared_ledger.png
11
Terminologie Blockchain
● Une Blockchain – Qu’est ce que c’est ?
En fait, les blockchains forment plus qu’une technologie, elles :
o Contiennent habituellement des transactions financières
o Sont répliquées à travers un grand nombre de systems en quasi-temps réel
o Utilisent la cryptographie et les signatures numériques pour prouver
l’identité des acteurs, l’authenticité des transactions, et faire respecter
les droits d’accès en lecture/écriture
o Peuvent être accédées en écriture par un certains nombre de participants
o Peuvent être lues par les participants, habituellement un cercle plus large
que pour les droits en écriture
o Possèdent des mécanismes pour rendre difficile le changement des
données historiques, ou du moins rendent facile la detéction d’une
tentative de le faire
Source : https://miethereum.com/wp-content/uploads/2017/11/A.-A-Gentle-Introduction-To-Blockchain-Technology.pdf
Block 2 Block 3 Block 4
Block 1
hash hash hash hash
12
Terminologie Blockchain
● Un ledger distribué – qu’est ce que c’est ?
Source : https://tradeix.com/distributed-ledger-technology/
Image source : https://knowledgecrypto.com/the-difference-between-blockchains-distributed-ledger-technology/
13
Terminologie Blockchain
● Un ledger distribué – qu’est ce que c’est ?
Les utilisateurs
initient les
transactions en
les signants
numériquement
Les
utilisateurs
diffusent leurs
transactions
aux noeuds
du réseau
Un ou
plusieurs
noeuds
commencent
à valider
chaque
transaction
Les noeuds
aggrègent les
transactions
validées dans
des blocs
Les noeuds
diffusent les
blocs entre eux
Le protocol de
consensus est
utilisé
Le bloc
représentant
“l’état réel” est
chaîné au bloc
précédent
Source : https://ccl.yale.edu/sites/default/files/files/A%20Brief%20Introduction%20to%20Blockchain%20(Final%20without%20Notes).pdf
14
Terminologie Blockchain
● Transactions et blocs
o Un bloc de transaction est une collection de transactions sur le
réseau Bitcoin, regroupées au sein d’un bloc qui peut être hashé et
ajouté à la blockchain
Image source : https://pplware.sapo.pt/informacao/monero-xmr-uma-moeda-segura-privada-e-sem-rasto/
15
Terminologie Blockchain
● Minage
o Le processus par lequel les transactions sont vérifiées et ajoutées à
la blockchain
Source : https://marmelab.com/blog/2016/05/12/blockchain-expliquee-aux-developpeurs-web-la-theorie.html
16
Terminologie Blockchain
● Minage
o Ce processus, correspondant à la resolution de problems
cryptographiques par l’utilisation de puissance de calcul, déclenche
également la creation de nouvelles cryptomonnaies
Source : https://marmelab.com/blog/2016/05/12/blockchain-
expliquee-aux-developpeurs-web-la-theorie.html
17
Terminologie Blockchain
● Minage
o Les mineurs du réseau sélectionnent les transactions depuis une
pool pour combiner en un ‘bloc’
Image source : https://www.thinkgeek.com/images/products/additional/carousel/e847_minecraft_pickaxe_inuse.jpg
18
Terminologie Blockchain
● Les forks, ou bifurcations
o La creation d’une version alternative de la blochcain, en créant
deux blocs simultanément à deux endroits différents du réseau.
Cela créé deux blockchain parralèles, parmi lesquelles une sera
gagnante sur l’autre
o Quand-est ce que cela se produit t’il ?
• Si deux blocs sont trouvés au même moment par deux mineurs
différents
• En cas d’incompatibilités entre les logiciels des noeuds des mineurs
• En cas de désaccord sur les règles du protocole entre plusieurs noeuds
Source : https://medium.com/my-blockchain-bible/101-blockchain-terminology-874f007c0270
19
Terminologie Blockchain
● Forks
Image source : Scorechain
20
Terminologie Blockchain
● Bitcoin
o La cryptomonnaie Bitcoin est le premier actif basé sur la
technologie Blockchain
o Utilisée pour la vente en ligne de drogues et armes illegals, ainsi
que les ransomware (rançongiciel)
o Utilisée pour realiser des transferts de fonds, de la speculation, et
en tant que reserve de valeur
“Ce don’t on a besoin est un système de paiement électronique basé
sur des preuves cryptographiques et non sur la confiance, qui
permettrait à deux parties de réaliser des transactions directement
entre ells, sans avoir besoin de tierce partie de confiance.”
Satoshi Nakamoto – 31 Oct. 2008
Source : https://medium.com/@flatoutcrypto/what-is-the-point-of-eos-ad385740b05f
21
Terminologie Blockchain
● Bitcoin
o Création monétaire
Image source : https://upload.wikimedia.org/wikipedia/commons/thumb/5/54/Total_bitcoins_over_time.png/740px-
Total_bitcoins_over_time.png
22
Terminologie Blockchain
● Bitcoin
o À l’intérieur de la blockchain
Bitcoin
Entête
(Hashé deux fois pour créer l’empreinte qui
sera référencé dans le bloc suivant)
BLOC
(Unité de la Blockchain, comme des pages de transactions au
sein d’un registre)
Nombre de transactions
(Combien de transactions sont incluses
dans le bloc, en incluant la coinbase
transaction qui rémunère le mineur)
Contenu du bloc
Coinbase
transaction
Transactions
Bitcoin
Source : https://bitsonblocks.files.wordpress.com/2015/09/bitcoin_blockchain_infographic1.jpg
23
Terminologie Blockchain
● Bitcoin
o À l’intérieur de la blockchain
Bitcoin
- Entête du bloc : contient des
données techniques, le hash du bloc
précédent, racine de Merkle,
horodatage, difficulté, nonce
Voici un example
horodatage
Source : https://bitsonblocks.files.wordpress.com/2015/09/bitcoin_blockchain_infographic1.jpg
Image source : www.blockchain.com
24
Terminologie Blockchain
● Bitcoin
o À l’intérieur de la blockchain Bitcoin
- Contenu du bloc : Flux de transactions
* Mining Coinbase * Regular Address to Address Transaction
Image source : Scorechain
25
Terminologie Blockchain
● Bitcoin
o À l’intérieur de la blockchain Bitcoin
- Exemple de transactions d’un bloc
Image source : www.blockchain.com
26
Terminologie Blockchain
● Bitcoin
o Comment le transfert
de monnaie fonctionne
Image source : https://www.weusecoins.com/images/bitcoin-transaction-life-cycle-high-resolution.png
27
Terminologie Blockchain
● Ethereum
o Proposé fin 2013 par Vitalik Buterin (chercheur et programmeur
dans le domaine des cryptomonnaies)
o Financement participative par vente d’Ether contre des bitcoin,
durant l’été 2014
o Bitcoin gonflé aux stéroïdes !
“Une blockchain est un ordinateur magique sur lequel tout le monde
peut télécharger des programmes, et les faire s’auto-executes, où
l’état present ainsi que l’historique des états de tous les programmes
sont toujours visibles publiquement, et qui integer une garantie
crypto-économique très forte que ces programmes continueront de
s’exécuter exactement de la manière spécifiée par le protocole de la
blockchain.”
Vitalik Buterin
Source : https://medium.com/blockchain-review/how-does-the-blockchain-work-for-dummies-explained-simply-9f94d386e093
Image source : https://znews-photo-td.zadn.vn/w660/Uploaded/lce_uxlcq/2017_06_27/20DBBITCOIN4master675.jpg
28
Terminologie Blockchain
● Ethereum
o Plateforme d’applications décentralisées (appelées Dapps)
o Registre de transactions et de contrats intelligents
o Basé sur l’Ethereum Virtual Machine (EVM), machine virtuelle
d’Ethereum
o Intègre une cryptomonnaie, appellée
Ether (ETH)
Image source : https://image.slidesharecdn.com/empresaeinovaonasociedadeemredemaro2013-130717064842-
phpapp01/95/empresa-e-inovao-na-sociedade-em-rede-84-638.jpg?cb=1374043787
29
Terminologie Blockchain
● Ethereum
o Contrat intelligent
Comment un contrat
“traditionnel”
fonctionne
Source : https://www.investopedia.com/terms/s/smart-contracts.asp
Image source : https://image.slidesharecdn.com/smart-contracts-150925125324-lva1-app6892/95/smart-contracts-4-638.jpg?cb=1443185644
30
Terminologie Blockchain
● Ethereum
o Contrat intelligent
Comment un contrat
“intelligent”
fonctionne
Source : https://www.investopedia.com/terms/s/smart-contracts.asp/
Image source : https://image.slidesharecdn.com/smart-contracts-150925125324-lva1-app6892/95/smart-contracts-5-638.jpg?cb=1443185644
31
Table des matières K1
● Introduction
1. Terminologie Blockchain
2. Distinction entre les bases de données et les registres de
blockchain
● Éléments de cryptographie
1. Cryptographie, fonctions de hashage et signatures numériques
● Méthodes de consensus
1. Principes et paradigmes des systèmes distribués
2. Algorithmes de consensus Blockchain
● La Blockchain en tant que structure de données
1. Structure des Blockchains
2. Différents types de blockchain
32
Distinction entre les bases de données et les registres
de blockchain
● Tout d’abord, au niveau de l’architecture
● Bases de données
● Registres de blockchain
Source :
https://www.coindesk.com/information
/what-is-the-difference-blockchain-and-
database/
33
Distinction entre les bases de données et les registres
de blockchain
Bases de données Blockchains
Les bases de données ont des
administrateurs, et un contrôle
centralisé
Personne n’a le contrôle ou administre une
blockchain
Uniquement les individus ayant les
droits ont accès à la base de données
Tout le monde peut accéder à une blockchain
(publique)
Seulement les individus autorisés
peuvent lire et/ou écrire sur la base de
données
N’importe qui qui possède une prevue de travail
valide peut écrire sur la blockchain
Les bases de données sont rapides Les blockchains sont lentes
Il n’y a pas de registre de transactions
contenant tout l’historique
Présence d’un register de transactions avec tout
l’historique
Source : https://coinsutra.com/blockchain-vs-database/
34
Table des matières K1
● Introduction
1. Terminologie Blockchain
2. Distinction entre les bases de données et les registres de
blockchain
● Éléments de cryptographie
1. Cryptographie, fonctions de hashage et signatures numériques
● Méthodes de consensus
1. Principes et paradigmes des systèmes distribués
2. Algorithmes de consensus Blockchain
● La Blockchain en tant que structure de données
1. Structure des Blockchains
2. Différents types de blockchain
35
Table des matières K1
● Introduction
1. Terminologie Blockchain
2. Distinction entre les bases de données et les registres de
blockchain
● Éléments de cryptographie
1. Cryptographie, fonctions de hashage et signatures numériques
● Méthodes de consensus
1. Principes et paradigmes des systèmes distribués
2. Algorithmes de consensus Blockchain
● La Blockchain en tant que structure de données
1. Structure des Blockchains
2. Différents types de blockchain
36
Cryptographie, fonctions de hashage et
signatures numériques
● Cryptographie: Le chiffrement et déchiffrement des données data
o 2 concepts principaux de cryptographie utilisée dans la technologie Blockchain :
- Les fonctions de hashage
- Les signatures numériques
o Il existe 3 formes de chiffrement largement utilisées :
Cryptography symétrique Cryptography asymétrique Hashage
Le même mot de
passe sert à chiffrer
et déchiffrer les
données
Un mot de passe sert à
chiffrer les données, un autre
à les déchiffrer
Projette vers un
espace de dimension
fixe
Fonction bidirectionnelle Les mots de passe vont par
pair (clé publique / clé
privée)
Fonction
monodirectionnelle
Source : https://lisk.io/academy/blockchain-basics/how-does-blockchain-work/what-is-hashing
https://lisk.io/academy/blockchain-basics/how-does-blockchain-work/digital-signatures
37
Cryptographie, fonctions de hashage et
signatures numériques
Image source : Scorechain
38
Cryptographie, fonctions de hashage et
signatures numériques
Image source : Scorechain
39
Cryptographie, fonctions de hashage et
signatures numériques
Image source : Scorechain
40
Cryptographie, fonctions de hashage et
signatures numériques
Image source : Scorechain
41
Cryptographie, fonctions de hashage et
signatures numériques
Image source : https://pascalpares.gitbook.io/an-introduction-to-the-bitcoin-system/the-transactions/structure-of-a-transaction
42
Table des matières K1
● Introduction
1. Terminologie Blockchain
2. Distinction entre les bases de données et les registres de
blockchain
● Éléments de cryptographie
1. Cryptographie, fonctions de hashage et signatures numériques
● Méthodes de consensus
1. Principes et paradigmes des systèmes distribués
2. Algorithmes de consensus Blockchain
● La Blockchain en tant que structure de données
1. Structure des Blockchains
2. Différents types de blockchain
43
Table des matières K1
● Introduction
1. Terminologie Blockchain
2. Distinction entre les bases de données et les registres de
blockchain
● Éléments de cryptographie
1. Cryptographie, fonctions de hashage et signatures numériques
● Méthodes de consensus
1. Principes et paradigmes des systèmes distribués
2. Algorithmes de consensus Blockchain
● La Blockchain en tant que structure de données
1. Structure des Blockchains
2. Différents types de blockchain
44
Méthodes de consensus
● Principles et paradigmes des systèmes distributés
o Tolérance aux pannes byzantines (Byzantine Fault Tolerance -
BFT) : la fiabilité d’un système tolérant aux pannes, en particulier
les systèmes distribués, où des composants peuvent faire défaut, et
l’information de leur panne est imparfaite à travers le réseau
o L’obectif de la BFT est de se défendre contre la panne de
composants du système, avec ou sans symptômes qui
empêcheraient les autres composants d’arriver à un consensusentre
eux, lorsque ce consensus est necessaire au bon fonctionnement du
système
o Un example de BFT utilisé est bitcoin. Le réseau bitcoin fonctionne
en parallèle pour générer une blockchain avec preuve de travail
proof-of-work permettant au système de surmonter les pannes
Byzantines et d’arriver à une vue cohérente globale de l’état du
système
Source : https://en.wikipedia.org/wiki/Byzantine_fault
45
Table des matières K1
● Introduction
1. Terminologie Blockchain
2. Distinction entre les bases de données et les registres de
blockchain
● Éléments de cryptographie
1. Cryptographie, fonctions de hashage et signatures numériques
● Méthodes de consensus
1. Principes et paradigmes des systèmes distribués
2. Algorithmes de consensus Blockchain
● La Blockchain en tant que structure de données
1. Structure des Blockchains
2. Différents types de blockchain
46
Méthodes de consensus
● Les algorithmes de consensus
Derrière chaque cryptomonnaie, il se cache un algorithme de
consensus. Aucun de ces algorithme n’est parfait, mais chacun à ses
forces. Dans le monde de la crypto, ces algorithme sont utilisés pour
résoudre le problème de double dépense : comment s’assurer qu’un
utilisateur n’utilise pas deux fois la même cryptomonnaie pour payer deux
personnes différentes ? Parmi les plus utilisés, il y a
o Preuve de travail - Proof of Work (PoW)
o Preuve d’enjeu - Proof of Stake (PoS)
o Preuve d’enjeu déléguée - Delegated Proof of Stake (DPOS)
o Preuve de brulage - Proof of Burn (PoB)
o Practical Byzantine fault tolerant Mechanism (PBFT)
o …
Source : https://www.newgenapps.com/blog/8-blockchain-consensus-mechanisms-and-benefits
47
Méthodes de consensus
Image source :
https://cointelegraph.com/storage/uploads/vi
ew/ea5b21f014547b4b44cf2dafcd76aad2.jpg
48
Table des matières K1
● Introduction
1. Terminologie Blockchain
2. Distinction entre les bases de données et les registres de
blockchain
● Éléments de cryptographie
1. Cryptographie, fonctions de hashage et signatures numériques
● Méthodes de consensus
1. Principes et paradigmes des systèmes distribués
2. Algorithmes de consensus Blockchain
● La Blockchain en tant que structure de données
1. Structure des Blockchains
2. Différents types de blockchain
49
Table des matières K1
● Introduction
1. Terminologie Blockchain
2. Distinction entre les bases de données et les registres de
blockchain
● Éléments de cryptographie
1. Cryptographie, fonctions de hashage et signatures numériques
● Méthodes de consensus
1. Principes et paradigmes des systèmes distribués
2. Algorithmes de consensus Blockchain
● La Blockchain en tant que structure de données
1. Structure des Blockchains
2. Différents types de blockchain
50
La Blockchain en tant que structure de
données
● Structure des Blockchains
o Plus besoin d’architectures client/serveur avec des rôles prédéfinis
Image source : Scorechain
51
La Blockchain en tant que structure de
données
● Structure des Blockchains
o À la place, une architecture pair-à-pair, avec des paires de clé
privées / publiques pseudonymes pour chaque client. Chaque
noeud possède une copie du registre
Image source : Scorechain
52
La Blockchain en tant que structure de
données
● Structure des Blockchains
o Structure de données :
Image source : Scorechain
53
La Blockchain en tant que structure de
données
● Structure des Blockchains
o Blocs de
données
Image source : Scorechain
54
Table des matières K1
● Introduction
1. Terminologie Blockchain
2. Distinction entre les bases de données et les registres de
blockchain
● Éléments de cryptographie
1. Cryptographie, fonctions de hashage et signatures numériques
● Méthodes de consensus
1. Principes et paradigmes des systèmes distribués
2. Algorithmes de consensus Blockchain
● La Blockchain en tant que structure de données
1. Structure des Blockchains
2. Différents types de blockchain
55
La Blockchain en tant que structure de
données
● Différents types de blockchains
o Il y a trois principaux types de Blockchain, qui ont émergés après
l’apparition de Bitcoin.
 Blockchain publique :
Personne ne dirige le réseau, n’importe qui peut participer en lisant, écrivant,
ou en auditant la blockchain (i.e. Bitcoin, Litecoin, etc.)
 Blockchain privée :
La propriété privée d’un individu ou d’une organisation, où une entité dirige
l’écriture / la lecture ou bien les droits d’accès à l’écriture / à la lecture (i.e.
Bankchain)
 Blockchain fédérée / consortium :
Plusieures personnes dirigent le réseau. Un groupe d’entreprise ou d’individus
représentant prennent des décisions communes au profit du réseau (i.e. r3,
EWF)
Soucre: https://coinsutra.com/different-types-blockchains
56
Table des matières K2
● Théorie des contrats intelligents
1. Théorie et architecture des contrats intelligents
2. Architecture des systèmes autonomes et décentralisés
● Applications des contrats intelligents
1. Applications blockchain existantes, structures liées et
architectures
57
Table des matières K2
● Théorie des contrats intelligents
1. Théorie et architecture des contrats intelligents
2. Architecture des systèmes autonomes et décentralisés
● Applications des contrats intelligents
1. Applications blockchain existantes, structures liées et
architectures
58
Table des matières K2
● Théorie des contrats intelligents
1. Théorie et architecture des contrats intelligents
2. Architecture des systèmes autonomes et décentralisés
● Applications des contrats intelligents
1. Applications blockchain existantes, structures liées et
architectures
59
Théorie et architecture des contrats
intelligents
● Théorie des contrats intelligents
o Un protocole de calcul conçu pour faciliter, vérifier, ou mettre en
oeuvre numériquement la négociation ou l’exécution d’un contrat
o Cela permet l’exécution fiable de transactions sans parties tierces
de confiances
o Les transactions sont traçables et irréversibles
Source : https://en.wikipedia.org/wiki/Smart_contract
60
● Architecture de contrats intelligents
Théorie et architecture des contrats
intelligents
Vérifier si
elle est
signee par
l’initiateur
du
message.
Si oui
Vérifier si la
balance des
comptes est
suffisante
pour le
paiement
Si oui
Le message
sera ajouté
à la
blockchain
* Transaction sans contrat intelligent
* Transaction avec contrat intelligent
Date:
avant
le 31
Dec.
2019…
Prix de
l’essenc
e >50$/
litre
Condi-
tion 3
…
Condi-
tion 4
…
Condi-
tion X
…
Si oui
Image source : Scorechain
61
Table des matières K2
● Théorie des contrats intelligents
1. Théorie et architecture des contrats intelligents
2. Architecture des systèmes autonomes et décentralisés
● Applications des contrats intelligents
1. Applications blockchain existantes, structures liées et
architectures
62
Architecture des systèmes autonomes et décentralisés
● Organisations Autonomes et Décentralisées : DAO
(Decentralized Autonomous Organization)
o Il s’agit d’une organisation représentée par des règles encodées dans un
programme informatique, qui est transparent, contrôlé par les
actionnaires, et n’est pas influencé par un gouvernement central
o Cette notion est similaire à la collecte de fond d’une petite conférence,
mais elle est bien plus vaste. Les membres achètent des parts dans la
DAO et peuvent voter en function du nombre de parts qu’ils possèdent.
Les rêveurs imaginent que les DAO vont remplacer les démocraties et
que des pays entiers pourraient être gouvernés de cette manière
o “The DAO” était le plus gros financement participative de l’histoire –
par le biais d’une ICO - en levant plus de 150 millions de dollars auprès
de plus de 11 000 membres enthousiastes
o Les transactions financières d’une DAO ainsi que les règles du
programme sont gardés sur une Blockchain
Source :
https://blog.erratasec.com/2016/06/etheriumdao-hack-similfied.html#.XHbF3VNKhPN
https://medium.com/@nasirhm/understanding-the-dao-attack-9328a230243
63
Table des matières K2
● Théorie des contrats intelligents
1. Théorie et architecture des contrats intelligents
2. Architecture des systèmes autonomes et décentralisés
● Applications des contrats intelligents
1. Applications blockchain existantes, structures liées et
architectures
64
Table des matières K2
● Théorie des contrats intelligents
1. Théorie et architecture des contrats intelligents
2. Architecture des systèmes autonomes et décentralisés
● Applications des contrats intelligents
1. Applications blockchain existantes, structures liées et architectures
65
Applications des contrats intelligents
● Exemple 1 : Lotterie
o Lotterie sans contrat intelligent
Termes &
conditions
des
paiements
Status de
l’entreprise
organisatrice
Termes &
conditions
de la
lotterie
Organisateur
Participants
Gestionnaire des paiements
Compte séquestre
Sélection du gagnant
Source : https://www.slideshare.net/ThomasCharlesVanderstraeten/ethereum-smart-contract-101-with-cryptizensio
66
Applications des contrats intelligents
● Exemple 1 : Lotterie
o Lotterie avec contrat intelligent
Organisateur
Participants
Source : https://www.slideshare.net/ThomasCharlesVanderstraeten/ethereum-smart-contract-101-with-cryptizensio
67
Applications des contrats intelligents
● Exemple 2-1: Portefeuille de groupe
o S’assure qu’au moins 2 des 3 personnes du groupe sont d’accord
pour créer une transaction valide
Transaction Bitcoin
Andrew Beth
Carl
Blockchain
2 <pubKeyAndrew>
<pubKeyBeth>
<pubKeyCarl> 3
CHECKMULTISIG
Source : https://www.slideshare.net/FedericoTenga/state-smart-contract-ttechnologies
68
Applications des contrats intelligents
● Exemple 2-2: Portefeuille de gestion des héritages
o S’assure qu’une transaction soit signée par Camille, ou bien par
Beth après 5 ans
Camille
Beth
Blockchain
IF
<pubKeyCamille>
CHECKSIG
ELSE
<5 y> CLTV DROP
<pubKeyBeth>
CHECKSIG
ENDIF
Source : https://www.slideshare.net/FedericoTenga/state-smart-contract-ttechnologies
Transaction Bitcoin
69
Applications des contrats intelligents
● Exemple 2-3: Stockage sécurisé
o S’assure qu’une transaction doit être signée sur 3 périphériques
différents OU qu’une clé de recuperation soit déposée à la banque
après 8 mois
Maison Mobile Bureau
Blockchain
IF
3 <pubKeyHome>
<pubKeyMobile>
<pubKeyOffice> OP_3
CHECKMULTISIG
ELSE
<8 m> CLTV DROP
<pubKeyBank>
CHECKSIG
ENDIF
Banque
Source : https://www.slideshare.net/FedericoTenga/state-smart-contract-ttechnologies
Transaction Bitcoin
70
Applications blockchain existantes, structures
liées et architectures
● ERC-20
o Proposé le 19 Nov. 2015 par Fabian Vogelsteller
o Un standard technique utilisé pour les contrats intelligents sur la
blockchain Ethereum, pour l’implementation de tokens. (ERC:
Ethereum Request for Comment, 20: le numéro assigné à la
requête.)
o Défini une liste de règles qu’un token sur Ethereum doit
implémenter, permettant aux développeurs de programmer
comment les nouveaux tokens seront intégrés au sein de
l’écosystème d’Ethereum. Ces règles comprennent entre autre
comment les tokens sont transférés d’une adresse à une autre, et
comment les données de chaque token peuvent être accédés
o Au 19 Nov. 2018, il y a plus de 142,200 contracts de token
implémentant le standard : Dai, Bancor, Qash, etc.
Source : https://en.wikipedia.org/wiki/ERC-20
71
Applications blockchain existantes, structures
liées et architectures
● ERC-721: une classe de tokens uniques
o Un standard libre et ouvert qui décrit la façon de créer des tokens non-fongibles – ou
uniques – sur la blockchain Ethereum. Bien que la plupart des tokens soient fongibles
(tous les tokens sont indifferent des autres d’un même type, i.e. ERC-20), les tokens
ERC-721 sont tous uniques
o Il définit l’interface minimale qu’un contrat intelligent doit implementer afin de
permettre la gestion, la possession, et l’échange de tokens uniques
● ERC-725: Standard d’identité sur Ethereum
o Une proposition de standard pour une identité basée sur la blockchain, tournant sur la
blockchain Ethereum
o Elle décrit des proxies de contrats intelligents qui peuvent être contrôlés par
différentes clés ainsi que d’autres contrats intelligents, qui peut représenter des
individus, des groups, des objets ou des machines
o Les utilisateurs devraient pouvoir posséder et gérer leur identité au lieu de céder la
possession de leur identité à des organisations centralisées
Source :
http://erc721.org/
https://erc725alliance.org/
BLISS 03-T1_c_LU1 slides v3.0 final controled-French version.pptx

Contenu connexe

Similaire à BLISS 03-T1_c_LU1 slides v3.0 final controled-French version.pptx

Blockchain et crypto-monnaies
Blockchain et crypto-monnaiesBlockchain et crypto-monnaies
Blockchain et crypto-monnaiesAyoub Eddakhly
 
La Blockchain: la fin des tiers de confiance?
La Blockchain: la fin des tiers de confiance?La Blockchain: la fin des tiers de confiance?
La Blockchain: la fin des tiers de confiance?Antoine Vigneron
 
Business & Decision - Blockchain et applications : Etat de l'art
Business & Decision - Blockchain et applications : Etat de l'artBusiness & Decision - Blockchain et applications : Etat de l'art
Business & Decision - Blockchain et applications : Etat de l'artBusiness & Decision
 
Qu'est-ce que la blockchain ?
Qu'est-ce que la blockchain ?Qu'est-ce que la blockchain ?
Qu'est-ce que la blockchain ?Jedha Bootcamp
 
De la Blockchain en Propriété Intellectuelle
De la Blockchain en Propriété IntellectuelleDe la Blockchain en Propriété Intellectuelle
De la Blockchain en Propriété IntellectuelleQuentin Lacour
 
Innovation et technologie blockchain -intervention DigitalPlace
Innovation et technologie blockchain -intervention DigitalPlaceInnovation et technologie blockchain -intervention DigitalPlace
Innovation et technologie blockchain -intervention DigitalPlaceNazim Morera
 
Conférence Blockchain OctoTechnology 9 mars 2016
Conférence Blockchain OctoTechnology  9 mars 2016Conférence Blockchain OctoTechnology  9 mars 2016
Conférence Blockchain OctoTechnology 9 mars 2016Antoine Wintrebert
 
Blockchain publique, blockchain privée - Usages et régimes juridiques distincts
Blockchain publique, blockchain privée - Usages et régimes juridiques distinctsBlockchain publique, blockchain privée - Usages et régimes juridiques distincts
Blockchain publique, blockchain privée - Usages et régimes juridiques distinctsSimon Polrot
 
Introduction à la Blockchain Voxxed day luxembourg
Introduction à la Blockchain Voxxed day luxembourgIntroduction à la Blockchain Voxxed day luxembourg
Introduction à la Blockchain Voxxed day luxembourgFabrice Croiseaux
 
BlockChain, vers une nouvelle révolution
BlockChain, vers une nouvelle révolutionBlockChain, vers une nouvelle révolution
BlockChain, vers une nouvelle révolutionEric Lévy-Bencheton
 
JUG - Soirée Blockchain
JUG - Soirée BlockchainJUG - Soirée Blockchain
JUG - Soirée Blockchainadetante
 
Blockchain & ICOs : l'innovation et son financement
Blockchain & ICOs : l'innovation et son financementBlockchain & ICOs : l'innovation et son financement
Blockchain & ICOs : l'innovation et son financementJérémy Roche
 
Support de la conférence Pink Innov' - La blockchain pour les nuls
Support de la conférence Pink Innov' - La blockchain pour les nulsSupport de la conférence Pink Innov' - La blockchain pour les nuls
Support de la conférence Pink Innov' - La blockchain pour les nulsSébastien Bourguignon
 
[22/03/2016] Conférence : Blockchain, disruption & révolution
[22/03/2016] Conférence : Blockchain, disruption & révolution[22/03/2016] Conférence : Blockchain, disruption & révolution
[22/03/2016] Conférence : Blockchain, disruption & révolutionSilicon Comté
 
Les grands principes de la Blockchain
Les grands principes de la BlockchainLes grands principes de la Blockchain
Les grands principes de la BlockchainAlain EJZYN
 

Similaire à BLISS 03-T1_c_LU1 slides v3.0 final controled-French version.pptx (20)

Blockchain
BlockchainBlockchain
Blockchain
 
Blockchain par Claude Duvallet
Blockchain par Claude DuvalletBlockchain par Claude Duvallet
Blockchain par Claude Duvallet
 
Blockchain et crypto-monnaies
Blockchain et crypto-monnaiesBlockchain et crypto-monnaies
Blockchain et crypto-monnaies
 
Cci 92 - Club Nelson - Microsoft - Introduction à la Blockchain
Cci 92 - Club Nelson - Microsoft - Introduction à la BlockchainCci 92 - Club Nelson - Microsoft - Introduction à la Blockchain
Cci 92 - Club Nelson - Microsoft - Introduction à la Blockchain
 
La Blockchain: la fin des tiers de confiance?
La Blockchain: la fin des tiers de confiance?La Blockchain: la fin des tiers de confiance?
La Blockchain: la fin des tiers de confiance?
 
Business & Decision - Blockchain et applications : Etat de l'art
Business & Decision - Blockchain et applications : Etat de l'artBusiness & Decision - Blockchain et applications : Etat de l'art
Business & Decision - Blockchain et applications : Etat de l'art
 
Qu'est-ce que la blockchain ?
Qu'est-ce que la blockchain ?Qu'est-ce que la blockchain ?
Qu'est-ce que la blockchain ?
 
De la Blockchain en Propriété Intellectuelle
De la Blockchain en Propriété IntellectuelleDe la Blockchain en Propriété Intellectuelle
De la Blockchain en Propriété Intellectuelle
 
Bitcoin and beyond
Bitcoin and beyondBitcoin and beyond
Bitcoin and beyond
 
Innovation et technologie blockchain -intervention DigitalPlace
Innovation et technologie blockchain -intervention DigitalPlaceInnovation et technologie blockchain -intervention DigitalPlace
Innovation et technologie blockchain -intervention DigitalPlace
 
Conférence Blockchain OctoTechnology 9 mars 2016
Conférence Blockchain OctoTechnology  9 mars 2016Conférence Blockchain OctoTechnology  9 mars 2016
Conférence Blockchain OctoTechnology 9 mars 2016
 
Blockchain publique, blockchain privée - Usages et régimes juridiques distincts
Blockchain publique, blockchain privée - Usages et régimes juridiques distinctsBlockchain publique, blockchain privée - Usages et régimes juridiques distincts
Blockchain publique, blockchain privée - Usages et régimes juridiques distincts
 
Introduction à la Blockchain Voxxed day luxembourg
Introduction à la Blockchain Voxxed day luxembourgIntroduction à la Blockchain Voxxed day luxembourg
Introduction à la Blockchain Voxxed day luxembourg
 
Blockchain
BlockchainBlockchain
Blockchain
 
BlockChain, vers une nouvelle révolution
BlockChain, vers une nouvelle révolutionBlockChain, vers une nouvelle révolution
BlockChain, vers une nouvelle révolution
 
JUG - Soirée Blockchain
JUG - Soirée BlockchainJUG - Soirée Blockchain
JUG - Soirée Blockchain
 
Blockchain & ICOs : l'innovation et son financement
Blockchain & ICOs : l'innovation et son financementBlockchain & ICOs : l'innovation et son financement
Blockchain & ICOs : l'innovation et son financement
 
Support de la conférence Pink Innov' - La blockchain pour les nuls
Support de la conférence Pink Innov' - La blockchain pour les nulsSupport de la conférence Pink Innov' - La blockchain pour les nuls
Support de la conférence Pink Innov' - La blockchain pour les nuls
 
[22/03/2016] Conférence : Blockchain, disruption & révolution
[22/03/2016] Conférence : Blockchain, disruption & révolution[22/03/2016] Conférence : Blockchain, disruption & révolution
[22/03/2016] Conférence : Blockchain, disruption & révolution
 
Les grands principes de la Blockchain
Les grands principes de la BlockchainLes grands principes de la Blockchain
Les grands principes de la Blockchain
 

Plus de JordaniMike

Risques professionnels et prévention.pdf
Risques professionnels et prévention.pdfRisques professionnels et prévention.pdf
Risques professionnels et prévention.pdfJordaniMike
 
Analyse des besoins et gestion des projets besoin.pdf
Analyse des besoins et gestion des projets besoin.pdfAnalyse des besoins et gestion des projets besoin.pdf
Analyse des besoins et gestion des projets besoin.pdfJordaniMike
 
Évaluation financière des projets.pdf
Évaluation financière des projets.pdfÉvaluation financière des projets.pdf
Évaluation financière des projets.pdfJordaniMike
 
Cours SGBD - L3 Bio-informatique - Mohamed Skander DAAS.pdf
Cours SGBD  - L3 Bio-informatique - Mohamed Skander DAAS.pdfCours SGBD  - L3 Bio-informatique - Mohamed Skander DAAS.pdf
Cours SGBD - L3 Bio-informatique - Mohamed Skander DAAS.pdfJordaniMike
 
La Gestion des entreprises créative.pdf
La Gestion des entreprises créative.pdfLa Gestion des entreprises créative.pdf
La Gestion des entreprises créative.pdfJordaniMike
 
9_h_30__presentation__methodologie_de_gestion_de_projet.pdf
9_h_30__presentation__methodologie_de_gestion_de_projet.pdf9_h_30__presentation__methodologie_de_gestion_de_projet.pdf
9_h_30__presentation__methodologie_de_gestion_de_projet.pdfJordaniMike
 
Insecurite-alimentaire.pdf
Insecurite-alimentaire.pdfInsecurite-alimentaire.pdf
Insecurite-alimentaire.pdfJordaniMike
 
Administration_et_Supervision_RESEAU (1).pptx
Administration_et_Supervision_RESEAU (1).pptxAdministration_et_Supervision_RESEAU (1).pptx
Administration_et_Supervision_RESEAU (1).pptxJordaniMike
 
MODULE-3-PROCUREMENT-PRINCIPLES-AND-ETHICS-27-JUNE-2018.pptx
MODULE-3-PROCUREMENT-PRINCIPLES-AND-ETHICS-27-JUNE-2018.pptxMODULE-3-PROCUREMENT-PRINCIPLES-AND-ETHICS-27-JUNE-2018.pptx
MODULE-3-PROCUREMENT-PRINCIPLES-AND-ETHICS-27-JUNE-2018.pptxJordaniMike
 
Presentation_DDPP_formation_VS.pptx
Presentation_DDPP_formation_VS.pptxPresentation_DDPP_formation_VS.pptx
Presentation_DDPP_formation_VS.pptxJordaniMike
 
guidemesure_fr_compl.pdf
guidemesure_fr_compl.pdfguidemesure_fr_compl.pdf
guidemesure_fr_compl.pdfJordaniMike
 

Plus de JordaniMike (11)

Risques professionnels et prévention.pdf
Risques professionnels et prévention.pdfRisques professionnels et prévention.pdf
Risques professionnels et prévention.pdf
 
Analyse des besoins et gestion des projets besoin.pdf
Analyse des besoins et gestion des projets besoin.pdfAnalyse des besoins et gestion des projets besoin.pdf
Analyse des besoins et gestion des projets besoin.pdf
 
Évaluation financière des projets.pdf
Évaluation financière des projets.pdfÉvaluation financière des projets.pdf
Évaluation financière des projets.pdf
 
Cours SGBD - L3 Bio-informatique - Mohamed Skander DAAS.pdf
Cours SGBD  - L3 Bio-informatique - Mohamed Skander DAAS.pdfCours SGBD  - L3 Bio-informatique - Mohamed Skander DAAS.pdf
Cours SGBD - L3 Bio-informatique - Mohamed Skander DAAS.pdf
 
La Gestion des entreprises créative.pdf
La Gestion des entreprises créative.pdfLa Gestion des entreprises créative.pdf
La Gestion des entreprises créative.pdf
 
9_h_30__presentation__methodologie_de_gestion_de_projet.pdf
9_h_30__presentation__methodologie_de_gestion_de_projet.pdf9_h_30__presentation__methodologie_de_gestion_de_projet.pdf
9_h_30__presentation__methodologie_de_gestion_de_projet.pdf
 
Insecurite-alimentaire.pdf
Insecurite-alimentaire.pdfInsecurite-alimentaire.pdf
Insecurite-alimentaire.pdf
 
Administration_et_Supervision_RESEAU (1).pptx
Administration_et_Supervision_RESEAU (1).pptxAdministration_et_Supervision_RESEAU (1).pptx
Administration_et_Supervision_RESEAU (1).pptx
 
MODULE-3-PROCUREMENT-PRINCIPLES-AND-ETHICS-27-JUNE-2018.pptx
MODULE-3-PROCUREMENT-PRINCIPLES-AND-ETHICS-27-JUNE-2018.pptxMODULE-3-PROCUREMENT-PRINCIPLES-AND-ETHICS-27-JUNE-2018.pptx
MODULE-3-PROCUREMENT-PRINCIPLES-AND-ETHICS-27-JUNE-2018.pptx
 
Presentation_DDPP_formation_VS.pptx
Presentation_DDPP_formation_VS.pptxPresentation_DDPP_formation_VS.pptx
Presentation_DDPP_formation_VS.pptx
 
guidemesure_fr_compl.pdf
guidemesure_fr_compl.pdfguidemesure_fr_compl.pdf
guidemesure_fr_compl.pdf
 

BLISS 03-T1_c_LU1 slides v3.0 final controled-French version.pptx

  • 1.
  • 2. 2 Projet BLISS Output O3 Ressources Éducationnelles Ouvertes Tache O3-T1 Matériel d’apprentissage et d’évaluation 20 Définit les principales caractéristiques des blockchains. Adresse les fonctionalités fondamentales de la technologie blockchain. U1 Blockchain essentials for ICT professionals Unité d’enseignement : Résumé : Heures :
  • 3. 3 Objectifs d’apprentissage Introduction • Terminologie Blockchain • Distinction entre bases de données et les registres de blockchain Éléments de cryptographie • Cryptographie, fonctions de hashage et signatures numériques Méthodes de consensus • Principes et paradigmes des systèmes distribués • Algorithmes de consensus Blockchain La Blockchain en tant que structure de données • Structure des Blockchains • Différents types of blockchain • Identifier les caractéristiques blockchain dans un environnement donné • Analyser les applications existentes des blockchain dans un context donné • Évaluer de façon critique les fonctionnalités cryptographiques d’une application blockchain • Identifier les éléments cruciaux de sécurité dans une blockchain • Différencier les différents systèmes décentralisés et autonomes, tels que les registres distribués adaptés à une application blockchain donnée Savoir Savoir faire Unité d’enseignement U1 Blockchain essentials for ICT professionals Donner les avantages et désavantages des caractéristiques d’une application blockchain spécifique, en termes de sécurité, decentralisation, et la réalisation du consensus K1
  • 4. 4 Objectifs d’apprentissage Théorie des contrats intelligents • Théorie et architecture des contrats intelligents • Architecture des systèmes autonomes et décentralisés Applications des contrats intelligents • Applications blockchain existantes, structures liées et architectures • Séléctionner l’algorithme de consensus adapté à une application blockchain spécifique • Formaliser et évaluer les contrats intelligents nécessaires dans un context blockchain donné Savoir Savoir faire U1 Blockchain essentials for ICT professionals Expliquer de façon autonome le fonctionnement d’un contrat intelligent dans un scenario blockchain donné K2 Unité d’enseignement
  • 5. 5 Introduction à la technologie Blockchain Translated by Léo Besançon University of Claude Bernard of Lyon (UCBL), France Revised by Catarina Ferreira Da Silva and Parisa Ghodous, UCBL, France
  • 6. 6 Table des matières K1 ● Introduction 1. Terminologie Blockchain 2. Distinction entre les bases de données et les registres de blockchain ● Éléments de cryptographie 1. Cryptographie, fonctions de hashage et signatures numériques ● Méthodes de consensus 1. Principes et paradigmes des systèmes distribués 2. Algorithmes de consensus Blockchain ● La Blockchain en tant que structure de données 1. Structure des Blockchains 2. Différents types de blockchain
  • 7. 7 Table des matières K1 ● Introduction 1. Terminologie Blockchain 2. Distinction entre les bases de données et les registres de blockchain ● Éléments de cryptographie 1. Cryptographie, fonctions de hashage et signatures numériques ● Méthodes de consensus 1. Principes et paradigmes des systèmes distribués 2. Algorithmes de consensus Blockchain ● La Blockchain en tant que structure de données 1. Structure des Blockchains 2. Différents types de blockchain
  • 8. 8 Introduction “Pour comprendre le pouvoir de la technologie blockchain, et ce qu’elle peut faire, il est important de différencier trois choses qui sont souvent mélangées, la cryptomonnaie Bitcoin, la blockchain spécifique sous-jacente, et le concept des blockchains en général.” The Trust Machine, THE ECONOMIST, 31 Oct. 2015 Source : https://www.economist.com/leaders/2015/10/31/the-trust-machine
  • 9. 9 Table des matières K1 ● Introduction 1. Terminologie Blockchain 2. Distinction entre les bases de données et les registres de blockchain ● Éléments de cryptographie 1. Cryptographie, fonctions de hashage et signatures numériques ● Méthodes de consensus 1. Principes et paradigmes des systèmes distribués 2. Algorithmes de consensus Blockchain ● La Blockchain en tant que structure de données 1. Structure des Blockchains 2. Différents types de blockchain
  • 10. 10 Terminologie Blockchain ● Une Blockchain – Qu’est ce que c’est ? o Aussi nommées “DLT” (Distributed Ledger Technology) – un registre de compte partagé rudimentaire o Technologiquement, c’est • Une base de données distribuée – un register publique (il est possible d’insérer ou de rechercher des données, mais pas de les mettre à jour ou les supprimer) • Un ordinateur distribué – qui execute des contrats intelligents • Basé sur les technologies P2P (pair-à-pair), la cryptographie et des API Image source : https://www.ibm.com/blockchain/assets/images/landing/blockchain_shared_ledger.png
  • 11. 11 Terminologie Blockchain ● Une Blockchain – Qu’est ce que c’est ? En fait, les blockchains forment plus qu’une technologie, elles : o Contiennent habituellement des transactions financières o Sont répliquées à travers un grand nombre de systems en quasi-temps réel o Utilisent la cryptographie et les signatures numériques pour prouver l’identité des acteurs, l’authenticité des transactions, et faire respecter les droits d’accès en lecture/écriture o Peuvent être accédées en écriture par un certains nombre de participants o Peuvent être lues par les participants, habituellement un cercle plus large que pour les droits en écriture o Possèdent des mécanismes pour rendre difficile le changement des données historiques, ou du moins rendent facile la detéction d’une tentative de le faire Source : https://miethereum.com/wp-content/uploads/2017/11/A.-A-Gentle-Introduction-To-Blockchain-Technology.pdf Block 2 Block 3 Block 4 Block 1 hash hash hash hash
  • 12. 12 Terminologie Blockchain ● Un ledger distribué – qu’est ce que c’est ? Source : https://tradeix.com/distributed-ledger-technology/ Image source : https://knowledgecrypto.com/the-difference-between-blockchains-distributed-ledger-technology/
  • 13. 13 Terminologie Blockchain ● Un ledger distribué – qu’est ce que c’est ? Les utilisateurs initient les transactions en les signants numériquement Les utilisateurs diffusent leurs transactions aux noeuds du réseau Un ou plusieurs noeuds commencent à valider chaque transaction Les noeuds aggrègent les transactions validées dans des blocs Les noeuds diffusent les blocs entre eux Le protocol de consensus est utilisé Le bloc représentant “l’état réel” est chaîné au bloc précédent Source : https://ccl.yale.edu/sites/default/files/files/A%20Brief%20Introduction%20to%20Blockchain%20(Final%20without%20Notes).pdf
  • 14. 14 Terminologie Blockchain ● Transactions et blocs o Un bloc de transaction est une collection de transactions sur le réseau Bitcoin, regroupées au sein d’un bloc qui peut être hashé et ajouté à la blockchain Image source : https://pplware.sapo.pt/informacao/monero-xmr-uma-moeda-segura-privada-e-sem-rasto/
  • 15. 15 Terminologie Blockchain ● Minage o Le processus par lequel les transactions sont vérifiées et ajoutées à la blockchain Source : https://marmelab.com/blog/2016/05/12/blockchain-expliquee-aux-developpeurs-web-la-theorie.html
  • 16. 16 Terminologie Blockchain ● Minage o Ce processus, correspondant à la resolution de problems cryptographiques par l’utilisation de puissance de calcul, déclenche également la creation de nouvelles cryptomonnaies Source : https://marmelab.com/blog/2016/05/12/blockchain- expliquee-aux-developpeurs-web-la-theorie.html
  • 17. 17 Terminologie Blockchain ● Minage o Les mineurs du réseau sélectionnent les transactions depuis une pool pour combiner en un ‘bloc’ Image source : https://www.thinkgeek.com/images/products/additional/carousel/e847_minecraft_pickaxe_inuse.jpg
  • 18. 18 Terminologie Blockchain ● Les forks, ou bifurcations o La creation d’une version alternative de la blochcain, en créant deux blocs simultanément à deux endroits différents du réseau. Cela créé deux blockchain parralèles, parmi lesquelles une sera gagnante sur l’autre o Quand-est ce que cela se produit t’il ? • Si deux blocs sont trouvés au même moment par deux mineurs différents • En cas d’incompatibilités entre les logiciels des noeuds des mineurs • En cas de désaccord sur les règles du protocole entre plusieurs noeuds Source : https://medium.com/my-blockchain-bible/101-blockchain-terminology-874f007c0270
  • 20. 20 Terminologie Blockchain ● Bitcoin o La cryptomonnaie Bitcoin est le premier actif basé sur la technologie Blockchain o Utilisée pour la vente en ligne de drogues et armes illegals, ainsi que les ransomware (rançongiciel) o Utilisée pour realiser des transferts de fonds, de la speculation, et en tant que reserve de valeur “Ce don’t on a besoin est un système de paiement électronique basé sur des preuves cryptographiques et non sur la confiance, qui permettrait à deux parties de réaliser des transactions directement entre ells, sans avoir besoin de tierce partie de confiance.” Satoshi Nakamoto – 31 Oct. 2008 Source : https://medium.com/@flatoutcrypto/what-is-the-point-of-eos-ad385740b05f
  • 21. 21 Terminologie Blockchain ● Bitcoin o Création monétaire Image source : https://upload.wikimedia.org/wikipedia/commons/thumb/5/54/Total_bitcoins_over_time.png/740px- Total_bitcoins_over_time.png
  • 22. 22 Terminologie Blockchain ● Bitcoin o À l’intérieur de la blockchain Bitcoin Entête (Hashé deux fois pour créer l’empreinte qui sera référencé dans le bloc suivant) BLOC (Unité de la Blockchain, comme des pages de transactions au sein d’un registre) Nombre de transactions (Combien de transactions sont incluses dans le bloc, en incluant la coinbase transaction qui rémunère le mineur) Contenu du bloc Coinbase transaction Transactions Bitcoin Source : https://bitsonblocks.files.wordpress.com/2015/09/bitcoin_blockchain_infographic1.jpg
  • 23. 23 Terminologie Blockchain ● Bitcoin o À l’intérieur de la blockchain Bitcoin - Entête du bloc : contient des données techniques, le hash du bloc précédent, racine de Merkle, horodatage, difficulté, nonce Voici un example horodatage Source : https://bitsonblocks.files.wordpress.com/2015/09/bitcoin_blockchain_infographic1.jpg Image source : www.blockchain.com
  • 24. 24 Terminologie Blockchain ● Bitcoin o À l’intérieur de la blockchain Bitcoin - Contenu du bloc : Flux de transactions * Mining Coinbase * Regular Address to Address Transaction Image source : Scorechain
  • 25. 25 Terminologie Blockchain ● Bitcoin o À l’intérieur de la blockchain Bitcoin - Exemple de transactions d’un bloc Image source : www.blockchain.com
  • 26. 26 Terminologie Blockchain ● Bitcoin o Comment le transfert de monnaie fonctionne Image source : https://www.weusecoins.com/images/bitcoin-transaction-life-cycle-high-resolution.png
  • 27. 27 Terminologie Blockchain ● Ethereum o Proposé fin 2013 par Vitalik Buterin (chercheur et programmeur dans le domaine des cryptomonnaies) o Financement participative par vente d’Ether contre des bitcoin, durant l’été 2014 o Bitcoin gonflé aux stéroïdes ! “Une blockchain est un ordinateur magique sur lequel tout le monde peut télécharger des programmes, et les faire s’auto-executes, où l’état present ainsi que l’historique des états de tous les programmes sont toujours visibles publiquement, et qui integer une garantie crypto-économique très forte que ces programmes continueront de s’exécuter exactement de la manière spécifiée par le protocole de la blockchain.” Vitalik Buterin Source : https://medium.com/blockchain-review/how-does-the-blockchain-work-for-dummies-explained-simply-9f94d386e093 Image source : https://znews-photo-td.zadn.vn/w660/Uploaded/lce_uxlcq/2017_06_27/20DBBITCOIN4master675.jpg
  • 28. 28 Terminologie Blockchain ● Ethereum o Plateforme d’applications décentralisées (appelées Dapps) o Registre de transactions et de contrats intelligents o Basé sur l’Ethereum Virtual Machine (EVM), machine virtuelle d’Ethereum o Intègre une cryptomonnaie, appellée Ether (ETH) Image source : https://image.slidesharecdn.com/empresaeinovaonasociedadeemredemaro2013-130717064842- phpapp01/95/empresa-e-inovao-na-sociedade-em-rede-84-638.jpg?cb=1374043787
  • 29. 29 Terminologie Blockchain ● Ethereum o Contrat intelligent Comment un contrat “traditionnel” fonctionne Source : https://www.investopedia.com/terms/s/smart-contracts.asp Image source : https://image.slidesharecdn.com/smart-contracts-150925125324-lva1-app6892/95/smart-contracts-4-638.jpg?cb=1443185644
  • 30. 30 Terminologie Blockchain ● Ethereum o Contrat intelligent Comment un contrat “intelligent” fonctionne Source : https://www.investopedia.com/terms/s/smart-contracts.asp/ Image source : https://image.slidesharecdn.com/smart-contracts-150925125324-lva1-app6892/95/smart-contracts-5-638.jpg?cb=1443185644
  • 31. 31 Table des matières K1 ● Introduction 1. Terminologie Blockchain 2. Distinction entre les bases de données et les registres de blockchain ● Éléments de cryptographie 1. Cryptographie, fonctions de hashage et signatures numériques ● Méthodes de consensus 1. Principes et paradigmes des systèmes distribués 2. Algorithmes de consensus Blockchain ● La Blockchain en tant que structure de données 1. Structure des Blockchains 2. Différents types de blockchain
  • 32. 32 Distinction entre les bases de données et les registres de blockchain ● Tout d’abord, au niveau de l’architecture ● Bases de données ● Registres de blockchain Source : https://www.coindesk.com/information /what-is-the-difference-blockchain-and- database/
  • 33. 33 Distinction entre les bases de données et les registres de blockchain Bases de données Blockchains Les bases de données ont des administrateurs, et un contrôle centralisé Personne n’a le contrôle ou administre une blockchain Uniquement les individus ayant les droits ont accès à la base de données Tout le monde peut accéder à une blockchain (publique) Seulement les individus autorisés peuvent lire et/ou écrire sur la base de données N’importe qui qui possède une prevue de travail valide peut écrire sur la blockchain Les bases de données sont rapides Les blockchains sont lentes Il n’y a pas de registre de transactions contenant tout l’historique Présence d’un register de transactions avec tout l’historique Source : https://coinsutra.com/blockchain-vs-database/
  • 34. 34 Table des matières K1 ● Introduction 1. Terminologie Blockchain 2. Distinction entre les bases de données et les registres de blockchain ● Éléments de cryptographie 1. Cryptographie, fonctions de hashage et signatures numériques ● Méthodes de consensus 1. Principes et paradigmes des systèmes distribués 2. Algorithmes de consensus Blockchain ● La Blockchain en tant que structure de données 1. Structure des Blockchains 2. Différents types de blockchain
  • 35. 35 Table des matières K1 ● Introduction 1. Terminologie Blockchain 2. Distinction entre les bases de données et les registres de blockchain ● Éléments de cryptographie 1. Cryptographie, fonctions de hashage et signatures numériques ● Méthodes de consensus 1. Principes et paradigmes des systèmes distribués 2. Algorithmes de consensus Blockchain ● La Blockchain en tant que structure de données 1. Structure des Blockchains 2. Différents types de blockchain
  • 36. 36 Cryptographie, fonctions de hashage et signatures numériques ● Cryptographie: Le chiffrement et déchiffrement des données data o 2 concepts principaux de cryptographie utilisée dans la technologie Blockchain : - Les fonctions de hashage - Les signatures numériques o Il existe 3 formes de chiffrement largement utilisées : Cryptography symétrique Cryptography asymétrique Hashage Le même mot de passe sert à chiffrer et déchiffrer les données Un mot de passe sert à chiffrer les données, un autre à les déchiffrer Projette vers un espace de dimension fixe Fonction bidirectionnelle Les mots de passe vont par pair (clé publique / clé privée) Fonction monodirectionnelle Source : https://lisk.io/academy/blockchain-basics/how-does-blockchain-work/what-is-hashing https://lisk.io/academy/blockchain-basics/how-does-blockchain-work/digital-signatures
  • 37. 37 Cryptographie, fonctions de hashage et signatures numériques Image source : Scorechain
  • 38. 38 Cryptographie, fonctions de hashage et signatures numériques Image source : Scorechain
  • 39. 39 Cryptographie, fonctions de hashage et signatures numériques Image source : Scorechain
  • 40. 40 Cryptographie, fonctions de hashage et signatures numériques Image source : Scorechain
  • 41. 41 Cryptographie, fonctions de hashage et signatures numériques Image source : https://pascalpares.gitbook.io/an-introduction-to-the-bitcoin-system/the-transactions/structure-of-a-transaction
  • 42. 42 Table des matières K1 ● Introduction 1. Terminologie Blockchain 2. Distinction entre les bases de données et les registres de blockchain ● Éléments de cryptographie 1. Cryptographie, fonctions de hashage et signatures numériques ● Méthodes de consensus 1. Principes et paradigmes des systèmes distribués 2. Algorithmes de consensus Blockchain ● La Blockchain en tant que structure de données 1. Structure des Blockchains 2. Différents types de blockchain
  • 43. 43 Table des matières K1 ● Introduction 1. Terminologie Blockchain 2. Distinction entre les bases de données et les registres de blockchain ● Éléments de cryptographie 1. Cryptographie, fonctions de hashage et signatures numériques ● Méthodes de consensus 1. Principes et paradigmes des systèmes distribués 2. Algorithmes de consensus Blockchain ● La Blockchain en tant que structure de données 1. Structure des Blockchains 2. Différents types de blockchain
  • 44. 44 Méthodes de consensus ● Principles et paradigmes des systèmes distributés o Tolérance aux pannes byzantines (Byzantine Fault Tolerance - BFT) : la fiabilité d’un système tolérant aux pannes, en particulier les systèmes distribués, où des composants peuvent faire défaut, et l’information de leur panne est imparfaite à travers le réseau o L’obectif de la BFT est de se défendre contre la panne de composants du système, avec ou sans symptômes qui empêcheraient les autres composants d’arriver à un consensusentre eux, lorsque ce consensus est necessaire au bon fonctionnement du système o Un example de BFT utilisé est bitcoin. Le réseau bitcoin fonctionne en parallèle pour générer une blockchain avec preuve de travail proof-of-work permettant au système de surmonter les pannes Byzantines et d’arriver à une vue cohérente globale de l’état du système Source : https://en.wikipedia.org/wiki/Byzantine_fault
  • 45. 45 Table des matières K1 ● Introduction 1. Terminologie Blockchain 2. Distinction entre les bases de données et les registres de blockchain ● Éléments de cryptographie 1. Cryptographie, fonctions de hashage et signatures numériques ● Méthodes de consensus 1. Principes et paradigmes des systèmes distribués 2. Algorithmes de consensus Blockchain ● La Blockchain en tant que structure de données 1. Structure des Blockchains 2. Différents types de blockchain
  • 46. 46 Méthodes de consensus ● Les algorithmes de consensus Derrière chaque cryptomonnaie, il se cache un algorithme de consensus. Aucun de ces algorithme n’est parfait, mais chacun à ses forces. Dans le monde de la crypto, ces algorithme sont utilisés pour résoudre le problème de double dépense : comment s’assurer qu’un utilisateur n’utilise pas deux fois la même cryptomonnaie pour payer deux personnes différentes ? Parmi les plus utilisés, il y a o Preuve de travail - Proof of Work (PoW) o Preuve d’enjeu - Proof of Stake (PoS) o Preuve d’enjeu déléguée - Delegated Proof of Stake (DPOS) o Preuve de brulage - Proof of Burn (PoB) o Practical Byzantine fault tolerant Mechanism (PBFT) o … Source : https://www.newgenapps.com/blog/8-blockchain-consensus-mechanisms-and-benefits
  • 47. 47 Méthodes de consensus Image source : https://cointelegraph.com/storage/uploads/vi ew/ea5b21f014547b4b44cf2dafcd76aad2.jpg
  • 48. 48 Table des matières K1 ● Introduction 1. Terminologie Blockchain 2. Distinction entre les bases de données et les registres de blockchain ● Éléments de cryptographie 1. Cryptographie, fonctions de hashage et signatures numériques ● Méthodes de consensus 1. Principes et paradigmes des systèmes distribués 2. Algorithmes de consensus Blockchain ● La Blockchain en tant que structure de données 1. Structure des Blockchains 2. Différents types de blockchain
  • 49. 49 Table des matières K1 ● Introduction 1. Terminologie Blockchain 2. Distinction entre les bases de données et les registres de blockchain ● Éléments de cryptographie 1. Cryptographie, fonctions de hashage et signatures numériques ● Méthodes de consensus 1. Principes et paradigmes des systèmes distribués 2. Algorithmes de consensus Blockchain ● La Blockchain en tant que structure de données 1. Structure des Blockchains 2. Différents types de blockchain
  • 50. 50 La Blockchain en tant que structure de données ● Structure des Blockchains o Plus besoin d’architectures client/serveur avec des rôles prédéfinis Image source : Scorechain
  • 51. 51 La Blockchain en tant que structure de données ● Structure des Blockchains o À la place, une architecture pair-à-pair, avec des paires de clé privées / publiques pseudonymes pour chaque client. Chaque noeud possède une copie du registre Image source : Scorechain
  • 52. 52 La Blockchain en tant que structure de données ● Structure des Blockchains o Structure de données : Image source : Scorechain
  • 53. 53 La Blockchain en tant que structure de données ● Structure des Blockchains o Blocs de données Image source : Scorechain
  • 54. 54 Table des matières K1 ● Introduction 1. Terminologie Blockchain 2. Distinction entre les bases de données et les registres de blockchain ● Éléments de cryptographie 1. Cryptographie, fonctions de hashage et signatures numériques ● Méthodes de consensus 1. Principes et paradigmes des systèmes distribués 2. Algorithmes de consensus Blockchain ● La Blockchain en tant que structure de données 1. Structure des Blockchains 2. Différents types de blockchain
  • 55. 55 La Blockchain en tant que structure de données ● Différents types de blockchains o Il y a trois principaux types de Blockchain, qui ont émergés après l’apparition de Bitcoin.  Blockchain publique : Personne ne dirige le réseau, n’importe qui peut participer en lisant, écrivant, ou en auditant la blockchain (i.e. Bitcoin, Litecoin, etc.)  Blockchain privée : La propriété privée d’un individu ou d’une organisation, où une entité dirige l’écriture / la lecture ou bien les droits d’accès à l’écriture / à la lecture (i.e. Bankchain)  Blockchain fédérée / consortium : Plusieures personnes dirigent le réseau. Un groupe d’entreprise ou d’individus représentant prennent des décisions communes au profit du réseau (i.e. r3, EWF) Soucre: https://coinsutra.com/different-types-blockchains
  • 56. 56 Table des matières K2 ● Théorie des contrats intelligents 1. Théorie et architecture des contrats intelligents 2. Architecture des systèmes autonomes et décentralisés ● Applications des contrats intelligents 1. Applications blockchain existantes, structures liées et architectures
  • 57. 57 Table des matières K2 ● Théorie des contrats intelligents 1. Théorie et architecture des contrats intelligents 2. Architecture des systèmes autonomes et décentralisés ● Applications des contrats intelligents 1. Applications blockchain existantes, structures liées et architectures
  • 58. 58 Table des matières K2 ● Théorie des contrats intelligents 1. Théorie et architecture des contrats intelligents 2. Architecture des systèmes autonomes et décentralisés ● Applications des contrats intelligents 1. Applications blockchain existantes, structures liées et architectures
  • 59. 59 Théorie et architecture des contrats intelligents ● Théorie des contrats intelligents o Un protocole de calcul conçu pour faciliter, vérifier, ou mettre en oeuvre numériquement la négociation ou l’exécution d’un contrat o Cela permet l’exécution fiable de transactions sans parties tierces de confiances o Les transactions sont traçables et irréversibles Source : https://en.wikipedia.org/wiki/Smart_contract
  • 60. 60 ● Architecture de contrats intelligents Théorie et architecture des contrats intelligents Vérifier si elle est signee par l’initiateur du message. Si oui Vérifier si la balance des comptes est suffisante pour le paiement Si oui Le message sera ajouté à la blockchain * Transaction sans contrat intelligent * Transaction avec contrat intelligent Date: avant le 31 Dec. 2019… Prix de l’essenc e >50$/ litre Condi- tion 3 … Condi- tion 4 … Condi- tion X … Si oui Image source : Scorechain
  • 61. 61 Table des matières K2 ● Théorie des contrats intelligents 1. Théorie et architecture des contrats intelligents 2. Architecture des systèmes autonomes et décentralisés ● Applications des contrats intelligents 1. Applications blockchain existantes, structures liées et architectures
  • 62. 62 Architecture des systèmes autonomes et décentralisés ● Organisations Autonomes et Décentralisées : DAO (Decentralized Autonomous Organization) o Il s’agit d’une organisation représentée par des règles encodées dans un programme informatique, qui est transparent, contrôlé par les actionnaires, et n’est pas influencé par un gouvernement central o Cette notion est similaire à la collecte de fond d’une petite conférence, mais elle est bien plus vaste. Les membres achètent des parts dans la DAO et peuvent voter en function du nombre de parts qu’ils possèdent. Les rêveurs imaginent que les DAO vont remplacer les démocraties et que des pays entiers pourraient être gouvernés de cette manière o “The DAO” était le plus gros financement participative de l’histoire – par le biais d’une ICO - en levant plus de 150 millions de dollars auprès de plus de 11 000 membres enthousiastes o Les transactions financières d’une DAO ainsi que les règles du programme sont gardés sur une Blockchain Source : https://blog.erratasec.com/2016/06/etheriumdao-hack-similfied.html#.XHbF3VNKhPN https://medium.com/@nasirhm/understanding-the-dao-attack-9328a230243
  • 63. 63 Table des matières K2 ● Théorie des contrats intelligents 1. Théorie et architecture des contrats intelligents 2. Architecture des systèmes autonomes et décentralisés ● Applications des contrats intelligents 1. Applications blockchain existantes, structures liées et architectures
  • 64. 64 Table des matières K2 ● Théorie des contrats intelligents 1. Théorie et architecture des contrats intelligents 2. Architecture des systèmes autonomes et décentralisés ● Applications des contrats intelligents 1. Applications blockchain existantes, structures liées et architectures
  • 65. 65 Applications des contrats intelligents ● Exemple 1 : Lotterie o Lotterie sans contrat intelligent Termes & conditions des paiements Status de l’entreprise organisatrice Termes & conditions de la lotterie Organisateur Participants Gestionnaire des paiements Compte séquestre Sélection du gagnant Source : https://www.slideshare.net/ThomasCharlesVanderstraeten/ethereum-smart-contract-101-with-cryptizensio
  • 66. 66 Applications des contrats intelligents ● Exemple 1 : Lotterie o Lotterie avec contrat intelligent Organisateur Participants Source : https://www.slideshare.net/ThomasCharlesVanderstraeten/ethereum-smart-contract-101-with-cryptizensio
  • 67. 67 Applications des contrats intelligents ● Exemple 2-1: Portefeuille de groupe o S’assure qu’au moins 2 des 3 personnes du groupe sont d’accord pour créer une transaction valide Transaction Bitcoin Andrew Beth Carl Blockchain 2 <pubKeyAndrew> <pubKeyBeth> <pubKeyCarl> 3 CHECKMULTISIG Source : https://www.slideshare.net/FedericoTenga/state-smart-contract-ttechnologies
  • 68. 68 Applications des contrats intelligents ● Exemple 2-2: Portefeuille de gestion des héritages o S’assure qu’une transaction soit signée par Camille, ou bien par Beth après 5 ans Camille Beth Blockchain IF <pubKeyCamille> CHECKSIG ELSE <5 y> CLTV DROP <pubKeyBeth> CHECKSIG ENDIF Source : https://www.slideshare.net/FedericoTenga/state-smart-contract-ttechnologies Transaction Bitcoin
  • 69. 69 Applications des contrats intelligents ● Exemple 2-3: Stockage sécurisé o S’assure qu’une transaction doit être signée sur 3 périphériques différents OU qu’une clé de recuperation soit déposée à la banque après 8 mois Maison Mobile Bureau Blockchain IF 3 <pubKeyHome> <pubKeyMobile> <pubKeyOffice> OP_3 CHECKMULTISIG ELSE <8 m> CLTV DROP <pubKeyBank> CHECKSIG ENDIF Banque Source : https://www.slideshare.net/FedericoTenga/state-smart-contract-ttechnologies Transaction Bitcoin
  • 70. 70 Applications blockchain existantes, structures liées et architectures ● ERC-20 o Proposé le 19 Nov. 2015 par Fabian Vogelsteller o Un standard technique utilisé pour les contrats intelligents sur la blockchain Ethereum, pour l’implementation de tokens. (ERC: Ethereum Request for Comment, 20: le numéro assigné à la requête.) o Défini une liste de règles qu’un token sur Ethereum doit implémenter, permettant aux développeurs de programmer comment les nouveaux tokens seront intégrés au sein de l’écosystème d’Ethereum. Ces règles comprennent entre autre comment les tokens sont transférés d’une adresse à une autre, et comment les données de chaque token peuvent être accédés o Au 19 Nov. 2018, il y a plus de 142,200 contracts de token implémentant le standard : Dai, Bancor, Qash, etc. Source : https://en.wikipedia.org/wiki/ERC-20
  • 71. 71 Applications blockchain existantes, structures liées et architectures ● ERC-721: une classe de tokens uniques o Un standard libre et ouvert qui décrit la façon de créer des tokens non-fongibles – ou uniques – sur la blockchain Ethereum. Bien que la plupart des tokens soient fongibles (tous les tokens sont indifferent des autres d’un même type, i.e. ERC-20), les tokens ERC-721 sont tous uniques o Il définit l’interface minimale qu’un contrat intelligent doit implementer afin de permettre la gestion, la possession, et l’échange de tokens uniques ● ERC-725: Standard d’identité sur Ethereum o Une proposition de standard pour une identité basée sur la blockchain, tournant sur la blockchain Ethereum o Elle décrit des proxies de contrats intelligents qui peuvent être contrôlés par différentes clés ainsi que d’autres contrats intelligents, qui peut représenter des individus, des groups, des objets ou des machines o Les utilisateurs devraient pouvoir posséder et gérer leur identité au lieu de céder la possession de leur identité à des organisations centralisées Source : http://erc721.org/ https://erc725alliance.org/