Difference between revisions of "VT2015 BitCoin"

From air
Jump to navigation Jump to search
 
(69 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
= Présentation =
 
= Présentation =
   
* Enseignants : Georges-Pierre Bonneau, Didier Donsez
+
* Enseignants : Georges-Pierre Bonneau, Didier Donsez ([[VT2015]])
  +
* Date : 13 novembre 2015
* Sujet : Bitcoin
 
  +
* Auteur : Longfei YAO
* Date : 11 novembre 2015
 
* Auteur : Paul MARIAGE
 
   
== Mots Clés ==
+
== Résumé ==
  +
Bitcoin est une technologie pair à pair fonctionnant sans autorité centrale. La gestion des transactions et la création de bitcoins est prise en charge collectivement par le réseau. Bitcoin est libre et ouvert. Sa conception est publique, personne ne possède ni ne contrôle Bitcoin et tous peuvent s'y joindre. Grâce à plusieurs de ses propriétés uniques, Bitcoin rend possible des usages prometteurs qui ne pourraient pas être couverts par les systèmes de paiement précédents.
Adresse, Bloc, BTC, Chaine de bloc, Cryptographie, Minage, P2P, Portefeuille, Signature, Taux de Hachage
 
  +
  +
==Abstract==
  +
Bitcoin uses peer-to-peer technology to operate with no central authority or banks; managing transactions and the issuing of bitcoins is carried out collectively by the network. Bitcoin is open-source; its design is public, nobody owns or controls Bitcoin and everyone can take part. Through many of its unique properties, Bitcoin allows exciting uses that could not be covered by any previous payment system.
   
 
= Synthèse =
 
= Synthèse =
   
 
== Introduction ==
 
== Introduction ==
  +
Le terme bitcoin (de l'anglais « bit » : unité d'information binaire et « coin » : pièce de monnaie) désigne à la fois un système de paiement à travers le réseau Internet et l'unité de compte utilisée par ce système de paiement. Cependant, quand il est employé comme un nom propre (il commence par une majuscule et n'est pas précédé d'un article), il réfère au système de paiement et quand il est utilisé comme un nom commun (il commence par une minuscule, est précédé d'un article et peut se mettre au pluriel), il réfère à l'unité de compte.
   
  +
== Comment utiliser Bitcoin ==
Bitcoin est une technologie pair à pair fonctionnant sans autorité centrale. La gestion des transactions et la création de bitcoins est prise en charge collectivement par le réseau.
 
  +
===Choisir votre portefeuille===
  +
Vous pouvez emporter un portefeuille Bitcoin dans votre vie de tous les jours avec votre téléphone portable ou seulement effectuer des paiements en ligne sur votre ordinateur. Dans tous les cas, choisir votre portefeuille ne prend qu'une minute. Choisir une portefeuille: https://bitcoin.org/fr/choisir-votre-porte-monnaie
  +
[[Image:portefeuille.png|400px|thumb|center|Fig. 1 : Portefeuille Bitcoin]]
   
  +
===Obtenir des bitcoins===
Bitcoin est libre et ouvert. Sa conception est publique, personne ne possède ni ne contrôle Bitcoin et tous peuvent s'y joindre.
 
  +
Vous pouvez obtenir des bitcoins en les acceptant en tant que paiement pour des biens ou des services ou en les achetant à quelqu'un près de chez vous. Vous pouvez aussi les acheter directement sur une bourse de change en ligne à l'aide de votre compte bancaire.Trouver une bourse de change: http://howtobuybitcoins.info/#!/
  +
===Dépenser des bitcoins===
  +
Il y a un nombre croissant de services et de commerçants qui acceptent Bitcoin partout à travers le monde. Vous pouvez utiliser Bitcoin pour les payer et laisser une évaluation afin d'aider les entreprises honnêtes à gagner plus de visibilité. Trouver des commerçant: http://usebitcoins.info/
  +
===Déroulement d’une transaction===
  +
[[Image:Transaction_bitcoin.jpg|550px|thumb|center|Fig. 2 : Transaction de Bitcoin]]
  +
===Génerer une address bitcoin===
  +
Vous pouvez génerer une aaddress bitcoin dans cette site web: https://www.bitaddress.org
   
  +
== Principes techniques ==
Grâce à plusieurs de ses propriétés uniques, Bitcoin rend possible des usages prometteurs qui ne pourraient pas être couverts par les systèmes de paiement précédents.
 
  +
===Chaine de bloc===
  +
La chaine de blocs est un journal public de toutes les transactions Bitcoin par ordre chronologique. Elle est partagée entre tous les utilisateurs du réseau Bitcoin. Elle est utilisée pour vérifier la permanence des transactions Bitcoin et empêcher la double dépense. Voici un site web où vous pouvez voir tous les transaction qui sont entrain d'attendre la confirmation: https://blockchain.info/
  +
===Adresse===
  +
Une adresse Bitcoin est similaire à une adresse physique ou une adresse courriel. Il s'agit de la seule information que vous avez besoin de fournir pour que quelqu'un vous paie avec Bitcoin. Une différence importante toutefois, est que chaque adresse Bitcoin ne devrait être utilisée que pour une seule transaction.
  +
===Clé privée===
  +
Une clé privée est une information secrète qui prouve votre droit de dépenser des bitcoins à partir d'un portefeuille défini grâce à une signature cryptographique. Vos clés privées sont stockées dans votre ordinateur si vous utilisez un portefeuille logiciel, tandis qu'elles sont stockées sur quelques serveurs en ligne si vous utilisez un portefeuille Web. Les clés privées ne doivent jamais être révélées car elles permettent de dépenser les bitcoins de leur portefeuille respectif.
  +
===Confirmation===
  +
Une confirmation signifie qu'une transaction a été traitée par le réseau et que ses chances d'être renversée sont quasiment inexistantes. Les transactions reçoivent une confirmation lorsqu'elles sont incluses dans un bloc et pour chaque bloc subséquent. Même une seule confirmation peut offrir une sécurité suffisante pour de petites transactions, alors que pour de plus grandes sommes telles que 1 000 $, il est prudent d'attendre 6 confirmations ou plus. Chaque confirmation diminue exponentiellement le risque d'un renversement de transaction.
  +
===Cryptographie===
  +
La cryptographie est une branche des mathématiques qui permet de créer des preuves mathématiques qui offrent un haut niveau de sécurité. Les commerces et banques en ligne utilisent déjà la cryptographie. Avec Bitcoin, la cryptographie est utilisée pour empêcher quiconque de dépenser les fonds provenant du portefeuille d'un autre utilisateur et pour empêcher la corruption de la chaine de blocs. Elle peut aussi être utilisée pour chiffrer un portefeuille afin qu'il ne puisse être utilisé qu'avec un mot de passe.
  +
===Signature===
  +
Une signature cryptographique est un mécanisme mathématique qui permet à quelqu'un de prouver sa propriété. Dans le cas de Bitcoin, un portefeuille Bitcoin et ses clés privées sont liés par la magie des mathématiques. Quand votre logiciel Bitcoin signe une transaction avec la clé privée appropriée, le réseau entier peut voir que la signature correspond aux bitcoins dépensés. Cependant, il n'existe aucun moyen de deviner votre clé privée afin de voler vos bitcoins durement gagnés.
  +
===Taux de hachage===
  +
Le taux de hachage est l'unité de mesure de la puissance de traitement du réseau Bitcoin. Le réseau Bitcoin doit faire des calculs mathématiques intensifs pour des raisons de sécurité. Quand le réseau a atteint un taux de hachage de 10 Th/s, ceci signifiait que le réseau pouvait faire 10 billions de calculs par secondes.
   
== Bitcoin, what is it? ==
+
=== Minage ===
  +
Le minage de bitcoins est l'utilisation de matériel informatique pour effectuer des calculs mathématiques pour le réseau Bitcoin afin de confirmer des transactions et d'augmenter la sécurité. Comme récompense pour leurs services, les mineurs de bitcoins peuvent recevoir les frais de transaction pour les transactions qu'ils confirment et pour les bitcoins nouvellement créés. Le minage est un marché spécialisé compétitif où les récompenses sont divisées en fonction du nombre de calculs effectués. Tous les utilisateurs de Bitcoin ne font pas de minage et il ne s'agit pas d'une manière facile pour faire de l'argent.
   
  +
===Technologies employées===
Le terme bitcoin (de l'anglais « coin » : pièce de monnaie et « bit » : unité d'information binaire) désigne à la fois un système de paiement à travers le réseau Internet et une unité de compte utilisée par ce système de paiement.
 
  +
Bitcoin utilise le concept de preuve de travail, initialement imaginé pour résoudre le problème du spam, et implémenté par exemple dans le système Hashcash. Les algorithmes de hashage sont SHA-256 et RIPEMD-160. Un double hash en SHA-256 est utilisé pour obtenir le hash des blocs et donc la preuve de travail, tandis qu'un SHA-256 suivi d'un RIPEMD-160 est utilisé pour construire les adresses bitcoins. Les signatures de transactions sont effectuées en utilisant la cryptographie à courbes elliptiques, dite ECDSA. En l'occurrence, la courbe employée est secp256k1. Le logiciel originel écrit par Nakamoto utilise Berkeley DB pour la gestion de ses bases de données. Depuis la version 0.8.0, BerkeleyDB n'est plus utilisée que pour le porte-clef. Les transactions et blocs sont eux stockés dans une base LevelDB. Au sein d'un bloc, les transactions sont stockées sous la forme d'un arbre de Merkle. La validation des transactions fait appel à un langage de script interne conçu par Nakamoto. Ce langage, volontairement minimaliste et non Turing-complet, doit permettre au logiciel de s'adapter aisément à des évolutions ultérieures et permettre des fonctionnalités avancées comme les Smart contract.
 
Cependant quand il est employé comme un nom propre (il commence par une majuscule et n'est pas précédé d'un article), il réfère au système de paiement et quand il est utilisé comme un nom commun (il commence par une minuscule, est précédé d'un article et peut se mettre au pluriel), il réfère à l'unité de compte.
 
 
== "Peer-to-Peer*" System ==
 
 
Le système est « pair à pair » car tous les nœuds sont dotés des mêmes fonctionnalités et aucun ne joue un rôle privilégié.
 
 
Conçu en 2009 par un développeur non identifié utilisant le pseudonyme de Satoshi Nakamoto, le protocole a été employé pour la première fois par un logiciel écrit par Nakamoto en C++ et publié sous licence libre MIT.
 
 
Grâce à des procédés cryptographiqueset un protocole spécifique, le système décentralise la gestion de la monnaie et ne dépend pas de l'intégrité ou de la compétence d'un émetteur central.
 
 
== Principle of Bitcoin ==
 
 
[[File:principes_technique_bitcoin.jpg|center|300px]]
 
 
Le principe de ce système de paiement est de tenir à jour sur tous les nœuds du réseau un registre à la fois public et infalsifiable de toutes les transactions, dont le montant est exprimé dans l'unité de compte bitcoin.
 
 
Chaque bitcoin est identifié par son histoire depuis sa création jusqu'à la date présente où un agent le détient, à travers toutes les transactions dans lesquelles ce bitcoin est impliqué et qui sont reconnues par les signatures cryptographiques de tous les nœuds du réseau qui ainsi l'avalisent.
 
 
Les bitcoins figurant dans les transactions dont un compte est bénéficiaire peuvent être réutilisés par le titulaire de ce compte dans des transactions dont il est l'émetteur, à condition qu'il puisse justifier de son identité au moyen de sa signature cryptographique, les comptes eux-mêmes étant anonymes.
 
 
Les bitcoins ainsi échangés constituent une monnaie cryptographique, qui a vocation à être utilisée en tant que devise monétaire et comme moyen de paiement dans cette devise.
 
 
== Technical overview of Bitcoin ==
 
 
===Cryptography===
 
 
[[File:BITCOINcrypto.png|center|400px]]
 
 
Bitcoin utilise le concept de preuve de travail, initialement imaginé pour résoudre le problème du spam, et implémenté par exemple dans le système Hashcash.
 
 
Les algorithmes de hashage sont SHA-256* et RIPEMD-160*. Un double hash en SHA-256 est utilisé pour obtenir le hash des blocs et donc la preuve de travail, tandis qu'un SHA-256 suivi d'un RIPEMD-160 est utilisé pour construire les adresses bitcoins.
 
 
Les signatures de transactions sont effectuées en utilisant la cryptographie à courbes elliptiques, dite ECDSA*. En l'occurrence, la courbe employée est secp256k1*.
 
 
===Storage===
 
 
[[File:BITCOINstorage.jpg|left|200px]]
 
 
 
 
Le logiciel originel écrit par Nakamoto utilise Berkeley DB* pour la gestion de ses bases de données. Depuis la version 0.8.0, BerkeleyDB n'est plus utilisée que pour le porte-clef. Les transactions et blocs sont eux stockés dans une base LevelDB*.
 
 
Au sein d'un bloc, les transactions sont stockées sous la forme d'un arbre de Merkle*.
 
 
 
 
 
 
 
 
 
===Conception===
 
 
La validation des transactions fait appel à un langage de script interne conçu par Nakamoto.
 
 
Ce langage, volontairement minimaliste et non Turing-complet, doit permettre au logiciel de s'adapter aisément à des évolutions ultérieures et permettre des fonctionnalités avancées comme les Smart Contract*.
 
 
== How can I get bitcoins? ==
 
 
Générer du Bitcoin est relativement simple puisque dans les faits, il suffit de lancer un logiciel dédié et de laisser son ordinateur travailler.
 
 
Dans la pratique, l'ensemble fonctionne via un réseau Peer to peer, sur lequel les utilisateurs vont travailler sur des blocs. Ces blocs sont composés de transactions Bitcoin récentes qu'il va falloir "valider" via un traitement cryptographique qui génère ce qu'on appelle une "preuve de travail".
 
 
Vous contribuez à faire fonctionner le système, et vous êtes récompensés pour cela.
 
 
== How can I spend my bitcoins? ==
 
 
Le schéma suivant permet de comprendre très simplement comment se déroule une transaction avec Bitcoin :
 
 
 
[[File:BITCOINDeroulementAchat.gif|center]]
 
 
== Competitors of bitcoins ==
 
 
 
Il existe plusieurs concurrents aux bitcoins. Les principaux sont Freecoin, Litecoin, Devcoin, Ixcoin, Namecoin, Ppcoin, Terracoin.
 
 
== Vertus ==
 
Il existe de nombreux avantages à utiliser le bitcoin. Entre autres, nous pouvons citer les suivants :
 
 
* Le bitcoin ne dépend ni d’une banque centrale ni d’un Etat, une crise économique ou politique ne l’affectera donc pas.
 
 
* Les transactions entre deux Etats dont les devises sont différentes seront moins coûteuses que s’il faut changer de devise.
 
 
* La masse monétaire du bitcoin étant limitée, cette devise ne connaît pas l’inflation.
 
 
* Pour les spéculateurs, sa très grande volatilité permet de faire des profits à très court terme.
 
 
* Le bitcoin est utilisable dans le monde entier.
 
 
* Il n’y a pas de limite de montant aux transactions en bitcoin.
 
 
== Vices ==
 
 
Les risques les plus souvent mentionnés pour les utilisateurs de Bitcoin sont les suivants :
 
 
*Un risque lié à l'irréversibilité des transactions, essentiellement liée à l'anonymat, même relatif, du système.
 
 
*Un risques opérationnels liés au logiciel et à l'environnement informatique (fichier wallet mal protégé, bande passante requise pour charger les blocs, possibilité d'attaques de déni de service).
 
 
*Un risque de change par rapport aux monnaies fiduciaires. Pour convertir le bitcoin, il est obligatoire de passer par une plateforme d'échange. Plateformes qui sont opérées par des entreprises privées et donc vulnérables aux défaillances, voire la faillite comme cela est arrivé à Mt.Gox. De plus, sa relative jeunesse l'expose à de fortes variations de son cours.
 
 
*Un risque technologique : il est souvent avancé que le réseau Bitcoin ne pourrait pas monter en puissance pour traiter toutes les transactions en mode pair-à-pair. La croissance exponentielle de la taille de la base de données deviendrait ingérable. Cependant, il faut noter que, pour économiser de l'espace disque, cette base est stockée à l'aide d'un arbre de Merkle qui pourra être « élagué » au fil du temps. D'autre part, si les nœuds du réseau peinent à suivre l'augmentation de la taille de la base de données, des « super-nœuds » Bitcoin sont déjà envisagés, comparables aux processeurs de paiement qu'on trouve sur les réseaux bancaires actuels. On peut noter aussi que, la loi de Moore aidant, il est probable que la puissance de calcul et de stockage mémoire nécessaire des ordinateurs personnels continue d'être suffisante.
 
 
==Bitcoin Miners==
 
===CPU===
 
====DiabloMiner====
 
 
Source : http://forum.bitcoin.org/index.php?topic=1721.0
 
 
Support: Windows, Linux, OSX
 
 
Features: Long Polling, BFI_INT
 
 
====poclbm====
 
Source : http://forum.bitcoin.org/index.php?topic=1334.0
 
 
Support: Windows, Linux
 
 
Features: Long Polling, BFI_INT
 
 
====hashkill====
 
Source : http://forum.bitcoin.org/index.php?topic=6819.0
 
 
Support: Linux
 
Features: Long Polling, BFI_INT, Auto Reconnect
 
 
====Phoenix====
 
Source : http://forum.bitcoin.org/index.php?topic=6458.0
 
 
Support: Windows, Linux
 
Features: Long Polling, BFI_INT, Auto Reconnect
 
 
===GPU ===
 
====Jgarzik====
 
 
Source : http://forum.bitcoin.org/index.php?topic=1925.0
 
 
Support: Windows, Linux
 
 
====Ufasoft====
 
Source : http://forum.bitcoin.org/index.php?topic=3486.0
 
 
Support: Windows, Linux
 
 
Features: Long Polling, Failover
 
 
===FPGA et ASIC===
 
Une liste complète se trouve à l'adresse suivante : https://en.bitcoin.it/wiki/Mining_hardware_comparison
 
   
 
== Conclusion ==
 
== Conclusion ==
  +
Bitcoin est un nouveau concept, mais il est en train d'être compris et adopté par un nombre croissant de consommateurs, les commerçants et les investisseurs du monde entier. Comme ce processus se poursuit les raisons pour commencer à utiliser bitcoins sont de plus en plus convaincante. Il est également un investissement accru dans le secteur et de nombreuses nouvelles sociétés de financement sont en offrant des solutions plus respectueuses de professionnels et de consommateurs pour un usage quotidien. Bitcoin pose des risques technologiques et financiers, à savoir la perte permanente de capital. Cependant, comme ces risques sont atténués, plus de consommateurs, les commerçants et les investisseurs devraient commencer à apprendre sur et en utilisant Bitcoin.
   
  +
= Références =
En conclusion, nous pouvons dire que Bitcoin est un système sécurisé grâce à l'authenticité des transactions, c'est un système participatif et rémunéré, mais il présentes des risques non négligeables.
 
  +
'''BitCoin''': https://bitcoin.org/fr/
 
= Plus d'informations sur le vocabulaire =
 
 
* Peer-To-Peer : http://fr.wikipedia.org/wiki/Pair_%C3%A0_pair
 
* Smart Contract : http://en.wikipedia.org/wiki/Smart_contract
 
* Preuve de travail : http://fr.wikipedia.org/wiki/Preuve_de_travail et http://fr.wikipedia.org/wiki/Hashcash
 
* Fonction de Hachage : http://fr.wikipedia.org/wiki/Fonction_de_hachage
 
* SHA-256 : http://fr.wikipedia.org/wiki/SHA-256
 
* RIPEMD-160 : http://fr.wikipedia.org/wiki/RIPEMD-160
 
* ECDSA : http://fr.wikipedia.org/wiki/Elliptic_curve_digital_signature_algorithm
 
* Secp256k1 : https://en.bitcoin.it/wiki/Secp256k1
 
* Berkeley DB : http://fr.wikipedia.org/wiki/Berkeley_DB
 
* LevelDB : http://fr.wikipedia.org/wiki/LevelDB
 
* Arbre de Merkle : http://fr.wikipedia.org/wiki/Arbre_de_Merkle
 
* Turing-complet : http://fr.wikipedia.org/wiki/Turing-complet
 
 
= Sources =
 
   
  +
'''BitCoin Wikipedia''': https://fr.wikipedia.org/wiki/Bitcoin
*http://wiki.p2pfr.com/p2p/bitcoin
 
   
  +
'''BitCoin Minage''': https://www.bitcoinmining.com/
*http://linuxfr.org/users/gof/journaux/comment-fonctionne-bitcoin
 
   
  +
'''BitCoinWiki''': https://en.bitcoin.it/wiki/Main_Page
*http://www.wikiberal.org/wiki/Bitcoin
 
   
  +
'''Bitcoin: A Peer-to-Peer Electronic Cash System''': https://bitcoin.org/bitcoin.pdf
*http://www.sitedutrader.fr/bitcoin/le-bitcoin-definition-complete/
 
   
*https://en.bitcoin.it/wiki/
+
'''Preuve de travail''': https://fr.wikipedia.org/wiki/Preuve_de_travail
   
  +
'''Fonctionnement de Bitcoin''': https://bitcoin.fr/fonctionnement/
*https://bitcointalk.org/index.php?topic=16125.0
 

Latest revision as of 00:19, 13 November 2015

Présentation

  • Enseignants : Georges-Pierre Bonneau, Didier Donsez (VT2015)
  • Date : 13 novembre 2015
  • Auteur : Longfei YAO

Résumé

Bitcoin est une technologie pair à pair fonctionnant sans autorité centrale. La gestion des transactions et la création de bitcoins est prise en charge collectivement par le réseau. Bitcoin est libre et ouvert. Sa conception est publique, personne ne possède ni ne contrôle Bitcoin et tous peuvent s'y joindre. Grâce à plusieurs de ses propriétés uniques, Bitcoin rend possible des usages prometteurs qui ne pourraient pas être couverts par les systèmes de paiement précédents.

Abstract

Bitcoin uses peer-to-peer technology to operate with no central authority or banks; managing transactions and the issuing of bitcoins is carried out collectively by the network. Bitcoin is open-source; its design is public, nobody owns or controls Bitcoin and everyone can take part. Through many of its unique properties, Bitcoin allows exciting uses that could not be covered by any previous payment system.

Synthèse

Introduction

Le terme bitcoin (de l'anglais « bit » : unité d'information binaire et « coin » : pièce de monnaie) désigne à la fois un système de paiement à travers le réseau Internet et l'unité de compte utilisée par ce système de paiement. Cependant, quand il est employé comme un nom propre (il commence par une majuscule et n'est pas précédé d'un article), il réfère au système de paiement et quand il est utilisé comme un nom commun (il commence par une minuscule, est précédé d'un article et peut se mettre au pluriel), il réfère à l'unité de compte.

Comment utiliser Bitcoin

Choisir votre portefeuille

Vous pouvez emporter un portefeuille Bitcoin dans votre vie de tous les jours avec votre téléphone portable ou seulement effectuer des paiements en ligne sur votre ordinateur. Dans tous les cas, choisir votre portefeuille ne prend qu'une minute. Choisir une portefeuille: https://bitcoin.org/fr/choisir-votre-porte-monnaie

Fig. 1 : Portefeuille Bitcoin

Obtenir des bitcoins

Vous pouvez obtenir des bitcoins en les acceptant en tant que paiement pour des biens ou des services ou en les achetant à quelqu'un près de chez vous. Vous pouvez aussi les acheter directement sur une bourse de change en ligne à l'aide de votre compte bancaire.Trouver une bourse de change: http://howtobuybitcoins.info/#!/

Dépenser des bitcoins

Il y a un nombre croissant de services et de commerçants qui acceptent Bitcoin partout à travers le monde. Vous pouvez utiliser Bitcoin pour les payer et laisser une évaluation afin d'aider les entreprises honnêtes à gagner plus de visibilité. Trouver des commerçant: http://usebitcoins.info/

Déroulement d’une transaction

Fig. 2 : Transaction de Bitcoin

Génerer une address bitcoin

Vous pouvez génerer une aaddress bitcoin dans cette site web: https://www.bitaddress.org

Principes techniques

Chaine de bloc

La chaine de blocs est un journal public de toutes les transactions Bitcoin par ordre chronologique. Elle est partagée entre tous les utilisateurs du réseau Bitcoin. Elle est utilisée pour vérifier la permanence des transactions Bitcoin et empêcher la double dépense. Voici un site web où vous pouvez voir tous les transaction qui sont entrain d'attendre la confirmation: https://blockchain.info/

Adresse

Une adresse Bitcoin est similaire à une adresse physique ou une adresse courriel. Il s'agit de la seule information que vous avez besoin de fournir pour que quelqu'un vous paie avec Bitcoin. Une différence importante toutefois, est que chaque adresse Bitcoin ne devrait être utilisée que pour une seule transaction.

Clé privée

Une clé privée est une information secrète qui prouve votre droit de dépenser des bitcoins à partir d'un portefeuille défini grâce à une signature cryptographique. Vos clés privées sont stockées dans votre ordinateur si vous utilisez un portefeuille logiciel, tandis qu'elles sont stockées sur quelques serveurs en ligne si vous utilisez un portefeuille Web. Les clés privées ne doivent jamais être révélées car elles permettent de dépenser les bitcoins de leur portefeuille respectif.

Confirmation

Une confirmation signifie qu'une transaction a été traitée par le réseau et que ses chances d'être renversée sont quasiment inexistantes. Les transactions reçoivent une confirmation lorsqu'elles sont incluses dans un bloc et pour chaque bloc subséquent. Même une seule confirmation peut offrir une sécurité suffisante pour de petites transactions, alors que pour de plus grandes sommes telles que 1 000 $, il est prudent d'attendre 6 confirmations ou plus. Chaque confirmation diminue exponentiellement le risque d'un renversement de transaction.

Cryptographie

La cryptographie est une branche des mathématiques qui permet de créer des preuves mathématiques qui offrent un haut niveau de sécurité. Les commerces et banques en ligne utilisent déjà la cryptographie. Avec Bitcoin, la cryptographie est utilisée pour empêcher quiconque de dépenser les fonds provenant du portefeuille d'un autre utilisateur et pour empêcher la corruption de la chaine de blocs. Elle peut aussi être utilisée pour chiffrer un portefeuille afin qu'il ne puisse être utilisé qu'avec un mot de passe.

Signature

Une signature cryptographique est un mécanisme mathématique qui permet à quelqu'un de prouver sa propriété. Dans le cas de Bitcoin, un portefeuille Bitcoin et ses clés privées sont liés par la magie des mathématiques. Quand votre logiciel Bitcoin signe une transaction avec la clé privée appropriée, le réseau entier peut voir que la signature correspond aux bitcoins dépensés. Cependant, il n'existe aucun moyen de deviner votre clé privée afin de voler vos bitcoins durement gagnés.

Taux de hachage

Le taux de hachage est l'unité de mesure de la puissance de traitement du réseau Bitcoin. Le réseau Bitcoin doit faire des calculs mathématiques intensifs pour des raisons de sécurité. Quand le réseau a atteint un taux de hachage de 10 Th/s, ceci signifiait que le réseau pouvait faire 10 billions de calculs par secondes.

Minage

Le minage de bitcoins est l'utilisation de matériel informatique pour effectuer des calculs mathématiques pour le réseau Bitcoin afin de confirmer des transactions et d'augmenter la sécurité. Comme récompense pour leurs services, les mineurs de bitcoins peuvent recevoir les frais de transaction pour les transactions qu'ils confirment et pour les bitcoins nouvellement créés. Le minage est un marché spécialisé compétitif où les récompenses sont divisées en fonction du nombre de calculs effectués. Tous les utilisateurs de Bitcoin ne font pas de minage et il ne s'agit pas d'une manière facile pour faire de l'argent.

Technologies employées

Bitcoin utilise le concept de preuve de travail, initialement imaginé pour résoudre le problème du spam, et implémenté par exemple dans le système Hashcash. Les algorithmes de hashage sont SHA-256 et RIPEMD-160. Un double hash en SHA-256 est utilisé pour obtenir le hash des blocs et donc la preuve de travail, tandis qu'un SHA-256 suivi d'un RIPEMD-160 est utilisé pour construire les adresses bitcoins. Les signatures de transactions sont effectuées en utilisant la cryptographie à courbes elliptiques, dite ECDSA. En l'occurrence, la courbe employée est secp256k1. Le logiciel originel écrit par Nakamoto utilise Berkeley DB pour la gestion de ses bases de données. Depuis la version 0.8.0, BerkeleyDB n'est plus utilisée que pour le porte-clef. Les transactions et blocs sont eux stockés dans une base LevelDB. Au sein d'un bloc, les transactions sont stockées sous la forme d'un arbre de Merkle. La validation des transactions fait appel à un langage de script interne conçu par Nakamoto. Ce langage, volontairement minimaliste et non Turing-complet, doit permettre au logiciel de s'adapter aisément à des évolutions ultérieures et permettre des fonctionnalités avancées comme les Smart contract.

Conclusion

Bitcoin est un nouveau concept, mais il est en train d'être compris et adopté par un nombre croissant de consommateurs, les commerçants et les investisseurs du monde entier. Comme ce processus se poursuit les raisons pour commencer à utiliser bitcoins sont de plus en plus convaincante. Il est également un investissement accru dans le secteur et de nombreuses nouvelles sociétés de financement sont en offrant des solutions plus respectueuses de professionnels et de consommateurs pour un usage quotidien. Bitcoin pose des risques technologiques et financiers, à savoir la perte permanente de capital. Cependant, comme ces risques sont atténués, plus de consommateurs, les commerçants et les investisseurs devraient commencer à apprendre sur et en utilisant Bitcoin.

Références

BitCoin: https://bitcoin.org/fr/

BitCoin Wikipedia: https://fr.wikipedia.org/wiki/Bitcoin

BitCoin Minage: https://www.bitcoinmining.com/

BitCoinWiki: https://en.bitcoin.it/wiki/Main_Page

Bitcoin: A Peer-to-Peer Electronic Cash System: https://bitcoin.org/bitcoin.pdf

Preuve de travail: https://fr.wikipedia.org/wiki/Preuve_de_travail

Fonctionnement de Bitcoin: https://bitcoin.fr/fonctionnement/