Skip to content
Snippets Groups Projects

Bitcoin

Bitcoin

  • Satoshi Nakamoto (2009)
    • Bitcoin White Paper
      • Monnaie électronique
        • Dématérialisée
        • Finie
      • Entièrement pair à pair (P2P)
      • Résout le problème de la double dépense

Bitcoin White Paper

  • Objectif se passer d'une institution bancaire
    • solution décentralisée
  • Solution partielle
    • système de clés publiques / privées (RSA)
  • Problème à résoudre la double dépense
    • réseau P2P
      • transactions horodatées, chainées entre elles
        • la chaîne la plus longue est la chaîne nécessitant le plus de calcul à falsifier

Institution financière

  • Tiers de confiance

    • fait la loi dans les transactions
  • Interdit les transactions réellement irréversibles

    • les banques jouent le rôle de médiateur
  • Le coût de cette médiation est répercutée sur les frais bancaires

    • rend les transactions à faible montant chères

Non réversibilité

  • Si la non réversibilité n'existe pas

    • les vendeurs cherchent à en savoir plus sur leurs clients pour instaurer la confiance
  • Le cash règle ce problème

    • mais n'a pas d'équivalent sur un système de télécommuncation
      • sans autorité centrale

Preuve cryptographique

  • Remplace le tiers de confiance
  • Les Transactions
    • directes
    • irréversibles
      • protège le vendeur
      • compte séquestre pour protégér les acheteurs
        • escrow internmédiaire pour faire respecter un contrat entre les partis
          • paiement après réception par exemple
            • gère les litiges

Solution proposée

  • Génération d'une preuve calculée de l'ordonnancement des transactions
  • Utilisation d'un serveur d'horodatage P2P
    • distribué sur des noeuds (mineurs)
    • résolvant le problème de la double dépense

Transactions

  • une pièce électronique (coin)
    • est une chaîne de signature
  • le propriétaire ajoute de la coin
    • signature de la transaction précédente
    • clé publique du nouveau propriétaire
  • les transactions sont vérifiables par tous

Transactions

Transactions

Double dépense

  • Comment savoir si le propriétaire n'a pas dépensé la coin 2 fois?
    • sans jouer le rôle d'hôtel de la monnaie
      • tout passe par lui
      • seul l'argent qui provient de lui n'est pas dépensé 2 fois
      • solution centralisée

Solution proposée

  • Tout l'historique des transactions sur chaque coin est publique
    • vérifiable
    • distribué
      • consensus pour la version de l'historique à adopter

Serveur d'horodatage

  • hash un ensemble d'élément (bloc)

  • publication horodaté de ce hash

    • ce bloc a existé!
    • avec le hash du bloc horodaté précédent
  • C'est une chaîne publique de blocs

Serveur d'horodatage

Serveur d'horodatage

Preuve de Travail / POW

  • Challenge

    sha256(X) = 00000004bb4bec2b98.. (32 bytes en hexa soit 64 caractères)
    • le travail requis croît exponentiellement
      • f(nombre de 0)
    • validation simple(un calcul d'empreinte)

Preuve de Travail / POW

  • Il faut refaire le travail pour modifier ce bloc
    • les blocs sont chainés
      • plus un bloc est vieux plus il est coûteux à espérer modifier
        • la sécurité de la chaîne repose sur ce principe

Preuve de Travail

Preuve de Travail / POW

  • Se substitue au vote
    • repose sur la puissance de calcul
  • La chaîne la plus longue détient la "vérité"
    • celle qui a nécessité le plus de calcul
  • Tant que la majorité de la puissance de calcul est entre les mains de personnes honnêtes
    • les échanges sont sécurisés

Preuve de Travail / POW

  • Difficulté (nombre de 0) ajustée automatiquement
    • objectif de N blocs à trouver par heure en moyenne
    • régule
      • les évolutions de puissance des machines
      • la fluctuation des noeuds de calcul
      • le flux des transactions

Réseau

  • Envoie des transactions par les utilisateurs
  • Chaque noeud regroupe les nouvelles transactions dans un bloc
  • Chaque noeud travaille à la résolution de la preuve de travail sur son bloc
    • broadcast de la preuve de travail quand elle est trouvée

Réseau

  • Les noeuds vérifient le bloc pour l'accepter
    • la preuve de travail
    • que toutes les transactions du bloc sont valides
    • que toutes les transactions du bloc n’ont pas déjà été dépensées
  • Accepter un bloc signifie que le noeud travail sur le bloc suivant
    • le hash du bloc qui vient d'être validé sera utilisé pour ce nouveau bloc

Incitation

  • La puissance de calcul mise à disposition pour le développement de la chaîne de blocs est récompensée
  • La première transaction d'un bloc est une récompense
    • pas d'émetteur
    • le bénéficiaire est le créateur du bloc
      • cela correspond au inage mining
  • Création monétaire du système

Incitation

  • Contribution des utilisateurs (fees)
    • le montant en entrée est plus grand que celui de sortie?
      • la différence est pour le noeud
    • le devenir du système un fois toutes les pièces émises

SPV

Vérification de Paiement Simplifié

(Simplified Payment Verification)

  • Le simple utilisateur (wallet) n'a pas besoin de tous les blocs pour créer une nouvelle transaction

    • il peut conserver les derniers blocs de la chaîne la plus longue
      • en interrogeant plusieurs noeuds
  • Il lie sa transaction au bloc courant afin de l'horodaté

Combinaison et Fractionnement de Valeur

  • Une grosse entrée ou multiples petites entrées
  • Une sortie bénéficiaire et éventuellement une sortie pour récupérer la monnaie
  • L'historique complet de chaque transaction est inutile

Combinaison et Fractionnement de Valeur

bitcoin

Confidentialité

  • Les clés publiques utilisées pour les transactions sont anonymes
    • les échanges se font entre possesseur des clés
    • on peut générer de nouvelles clés bénéficiaires pour chaque transaction

Confidentialité

  • L'anonymat

    • est levé lors du change en € ou en $
    • les entrées d'une transaction sont contrôlées par la clé en entrée de la transaction
  • Lever l'anonymat d'une clé permet de faire parler toutes les transactions associées

En Pratique

  • L'argent est créé différemment
    • création finie à 2100000BTC
  • Pas de banque
  • Le cluster est coûteux éngergétiquement

En Pratique

  • Transparent
    • grand livre ouvert de transactions publiques
      • une clé = un billet
        • comme si on pouvait prendre les empreintes digitales de tous ceux qui l'ont eu, datés. on coupe toujours les billets et il y a toujours de la monnaie

En Pratique

clean (mixers, atomic swaps, trading?)

  • mixers: mélangeur de bitcoin
    • on perd le lien aux clés qu'on a
      • on a aucune garanti sur celles que l'on obtient
        • machine à lavers

Calculer ses fees

  • Chaque transaction est plus ou moins complexede
    • plusieurs payeurs
    • plusieurs destinataires
  • les fees sont fonctions de la complexité de la transaction
    • le mineur intelligent choisit en priorité les transactions au meillleur ratio fee/complexité
    • l'utilisateur maximise ses chances d'avoir sa transaction prise en compte rapidement en augmentant les fees

Calculer ses fees

Calculer ses impôts

Impôts & bitcoin : comment bien déclarer ses cryptomonnaies, notre guide en 10 questions

le monde fou fou fou des cryptomonnaies

White Paper

Buy some

  • controle d'identité
    • carte d'identité
    • passeport
    • webcam
    • selfie
  • cubtis
  • coinbase
  • poloniex