Un Bitcoin c’est une monnaie électronique pair à pair décentralisée. Essentiellement, c’est similaire a un compte bancaire, dans le sens que votre argent est gardé en chiffre dans une base de données et que le système transfert un nombre d’un compte a l’autre pour faire une transaction, a l’exception que le système est décentralisé donc la base de données est sauvegardée sur chaque ordinateur participant simultanément. Bitcoin est le premier a distribuer une tel monnaie, ce qui a pour résultat que son architecture n’a pas d’homme au milieu pour prendre des frais sur chaque transaction que vous faites et que ce n’est pas contrôlé par aucune organisation ou gouvernement.
Les courriels vous permettent d’envoyer des messages n’importe où dans le monde. Skype fait la même chose, mais avec les conversations téléphoniques. Maintenant il y a Bitcoin, vous permettant d’envoyer de l’argent n’importe où de n’importe où sans restrictions ou frontières nationales pour moins d’une cent par transaction.
Le système a été décrit dans le papier de Satoshi Nakamoto de 2008 qui a été envoyé à une liste de courriel de la cryptographie, et le projet original en open source a été fondé le 3 janvier 2009. Pour ses deux premières années, le nombre d’usagers a pris de l’expansion, jusqu’à fin 2010, suite a un article dans Slashdot où qu’il a eu un influx de nouveaux usagers et d’attention médiatique et d’une croissance rapide des prix vu que pour la première fois Bitcoin était exposé au monde entier.
Depuis son inception, il y a maintenant plus d’un million d’usagers et les 8.5 millions unités existants présentement valent ensemble des dizaines de millions de dollars. La base de données décentralisée de Bitcoin sécure des transferts entre comptes (ou, dans la terminologie de Bitcoin, adresses) en utilisant un algorithme mathématique connu sous le nom de signatures digitales et prévieny le problème connu sous le nom de la double dépense – envoyer le même bitcoins a deux personnes différentes – en diffusant tous les transactions sur un réseau qui prend trace de quelles bitcoins ont été dépensés et quand pour synchroniser l’information sur toutes les machines participantes. Vu que toutes les transactions sont diffusés sur le réseau entier, il sont automatiquement publiques. Contrairement à la banque régulière, qui conserve l’intimité des consommateurs en gardant les transactions privées, pour Bitcoin, la transparence ce fait en gardant l’identité du propriétaire de l’addresse privé.
“Miner” pour des Bitcoins
Quand un ordinateur participant activement dans le réseau, appelé un mineur, prend charge d’une nouvelle transaction et qu’il est satisfait de son authenticité, il l’ajoute a la fin d’une liste maintenue collectivement avec les dates et l’heure de toutes les transactions connue appeler le “blockchain”, ce qui le confirme en même temps. N’importe qu’elle autre essaie d’envoyer le même coins encore une fois va être automatiquement rejetée vu que la chaîne met en évidence que ce coin a déjà été dépensé. Le processus pour ajouter un bloc a la blockchain a été désigné pour être vraiment difficile, nécessitant beaucoup de temps et de puissance de calcul pour accomplir, ce qui fait que c’est essentiellement impossible de créer un blockchain de contrebande sans avoir encore plus de puissance de calcul que le reste de la communauté du réseau Bitcoin combiné au complet.
Chaque bloque a une valeur appelée hache, un chiffre mathématique généré des données d’un bloque en utilisant une fonction délibéré visée a être alambiqué pour que son résultat soit essentiellement aléatoire et qu’il soit impossible a prédire ce que le résultat va être avant de le calculer, et la difficulté de créer un bloque augmente dans le sens que pour chaque bloque sois valide, son hache doit être plus bas qu’une certaine “cible”. Les mineurs sont alors forcés de faire des changements insignifiants au bloque en essayant des valeurs différentes d’une variable factice appelée “nonce“ jusqu’à ce qu’un mineur soit chanceux et voit que la hache d’une de ses versions du bloque tombe plus basse que la cible, et là le bloque se fait ajouter et le processus recommence. La cible est ajustée automatiquement pour que, en moyenne, un nouveau bloque apparait chaques 10 minutes. Alors, plus qu’il y a de mineurs qui s’engagent dans l’activité de miner, le plus difficile que c’est pour chaque mineur de produire un bloque.
Alors quelle est la motivation des mineurs de dépenser tous ses efforts pour essayer de produire des bloques, si ça prend au temps de temps et d’énergie? La réponse est que la personne qui réussit a produire le bloc reçoit une récompense. Cette récompense est en deux parties. Premièrement, le producteur du bloc reçoit une abondante somme de bitcoins, celle-ci est convenue par le réseau (présentement, cette somme est de 50 bitcoins; cette valeur va être coupée en deux en décembre 2012 et environ a chaque quatre ans qui suivent pour que le nombre de bitcoins récompensé approche, mais ne dépasse jamais, 21 millions). Deuxièmement, tous les frais de transaction qui apparaissent dans les transactions incluses dans le bloc se font réclamés par le producteur du bloc.
Donc, autre que d’être important pour maintenant la base de données des transactions, miner est aussi le seul mécanique par le quelle des bitcoins puissent être crées et distribués aux personnes dans l’économie du Bitcoin.
Miner avec le CPU vs GPU
Dans les premiers jours de Bitcoin, c’était facile pour n’importe qui de trouver des nouveaux blocs en utilisant seulement des CPU standards. Mais ainsi que de plus en plus de gens commençaient à miner, la difficulté a grandement augmenté au point que le temps moyen pour un CPU de trouver un simple bloc a été augmenté en années. La seule méthode de miner qui en vaut la peine est d’utiliser une carte graphique haut de gamme avec un logiciel spécialisé ou de joindre une piscine de mineur.
Certains utilisateurs Bitcoin peuvent se demander pourquoi il y a une aussi grande différence de rendement entre le minage CPU vs le minage GPU. Un CPU est principalement désigné à être un exécuteur et à prendre des décisions, dirigées par un logiciel. Les CPU sont facilement capables de suivre des instructions du genre “si cela arrive, fais cela, sinon fais telle affaire”. De l’autre cote, les GPU ont été désignés pour être excellents a faire des procédés de vidéo et moins de travail d’exécution. Le procédé des vidéos est beaucoup de travaux répétitifs, vu qu’il faut faire presque la même chose sans cesse pour afficher un grand nombre de pixels a l’écran en continu. Pour faire fonctionner cela efficacement, les processeurs vidéo sont beaucoup plus capables de faire les travaux répétitifs, que de changer de tache rapidement. Les GPU ont une grosse somme d’ALU (Unité Arithmetique/Logique), plus que les CPU.
Ce qui a pour effet qu’il peut faire un plus gros travail mathématique en plus grande quantité que les CPU. Une manière de voir cela serait, pour le CPU, de s’imaginer un petit group de genre vraiment intelligent qui puisse faire n’importe quelle tache qu’on leur donne rapidement. Un GPU serait un gros groupe de gens stupides qu’individuellement sont pas trop intelligent ou rapide, mais qui puisse être entraîné a faire des tache répétitives et que collectivement, ils puissent être plus productifs simplement à cause de leurs grands nombre. Essayer plusieurs haches rapidement – le processus derrière le minage du Bitcoin – est une tache vraiment répétitive très approprié pour le GPU, parce que c’est presque la même travail chaque essai mais avec la changement d’un seul nombre (appeler le “nonce”) dans les données qui se font hacher. Et voilà pourquoi, rapidement, qu’un GPU peut miner plus rapidement des Bitcoins qu’un CPU. Miner pour des bitcoins nécéssite aucune décision – c’est une tache mathématique répétitive pour un ordinateur. La seule décision qu’il ont a faire dans le minage Bitcoin est : Est-ce que j’ai un bloc valide ou non. C’est une excellente charge de travail à exécuter sur un GPU.