Comment détruire les bitcoins

image

Nous savons comment créer des bitcoins , mais comment les détruire?

Graver des bitcoins signifie s'assurer qu'ils ne peuvent pas être dépensés. Vous pouvez proposer plusieurs applications pour cela - par exemple, lancer rapidement une nouvelle crypto-monnaie (comme ils l'ont fait dans Counterparty ) ou augmenter légèrement le coût de la partie restante des bitcoins, en réduisant le nombre de ceux disponibles. Dans cet article, nous décrivons trois méthodes pour graver des bitcoins.

Méthode la plus simple


Il est très facile de graver des bitcoins en les envoyant à une adresse fictive. Heureusement, les utilisateurs de Bitcoin ont une chance extrêmement faible de brûler accidentellement des bitcoins de cette manière, car l'adresse a une somme de contrôle de 4 octets pour empêcher les fautes de frappe (le wiki bitcoin a des instructions détaillées pour créer des adresses bitcoin).

C'est pourquoi pour créer une adresse bitcoin fictive, vous devez dépenser un peu d'effort, et pas seulement frapper quelques fois sur le clavier. Hash160 est utilisé pour créer l'adresse, il peut prendre n'importe quelle valeur, et cette valeur se transforme en premiers caractères de l'adresse (et ces derniers indiquent la somme de contrôle).

Exemples connus d'adresses fictives:

1BitcoinEaterAddressDontSendf59kuE (reçu 2,10556692 BTC),
1ContrepartieXXXXXXXXXXXXXXXXUWLpVr (2 130.84717717 BTC),
1111111111111111111114oLvT2 (43.2884582 BTC), le hash160 minimum possible est encodé dans cette adresse,
1QLbz7JHiBTspS962RLKV8GndWFwi5j6Qr (0,01159201 BTC), le hachage maximum possible 160 est codé à cette adresse.

En envoyant des bitcoins à une telle adresse, vous les gravez presque certainement, mais vous ne pouvez pas le prouver, car pour une telle adresse, en principe, une clé privée peut exister. Cependant, la recherche d'une telle clé peut consommer plus d'énergie que celle produite par notre système solaire tout au long de sa vie.

Méthode sensée


Pendant un certain temps, les utilisateurs de Bitcoin ont inclus diverses données dans la blockchain, qu'il s'agisse d'une preuve de droit d'auteur sur un document , d'une preuve d'identité , de sécurisation de contrats ou d' une représentation numérique d'actifs réels .

En 2013, un moyen simple a été introduit pour ajouter des données à toute transaction bitcoin. Jusqu'à présent, l'instruction incorrecte OP_RETURN a été standardisée et l'utilisateur a pu ajouter jusqu'à 40 octets de données à la transaction.

Avant la normalisation, ce type de sortie de données vers la blockchain n'était pas une tâche facile et comprenait l'utilisation de nombreuses adresses fictives codant des données arbitraires. L'introduction de la norme a simplifié le processus et a permis aux nœuds Bitcoin d'oublier la manière compliquée et de limiter le gonflement de la blockchain .

Depuis son introduction , 3,66 BTC a déjà été dépensé pour des conclusions via OP_RETURN, et le nombre de ces conclusions ne fait qu'augmenter, ce qui indique un nombre croissant de façons d'utiliser la blockchain de diverses manières.

Méthode sans ambiguïté


Et bien que les méthodes précédentes soient assez efficaces, elles ne détruisent pas les bitcoins. Ils peuvent toujours être vus sur la blockchain, ne peuvent tout simplement pas être dépensés. Cependant, il existe un moyen de détruire efficacement les bitcoins en les supprimant de la blockchain.

Lors de la création de mon site Internet avec des statistiques sur les transactions Bitcoin, j'ai pris des mesures pour ne manquer aucune donnée de transaction, et pour que les données de la base de données soient cohérentes. J'ai calculé le nombre de bitcoins existants comme la somme des bitcoins stockés dans les conclusions non dépensées mais confirmées. Si tout est correct, ce montant devrait coïncider avec le nombre de bitcoins existants (ce nombre ne peut être calculé qu'en connaissant le nombre de blocs dans la chaîne de blockchain principale).

Cependant, j'ai trouvé que 10,19768818 BTC avait disparu quelque part. Au début, je pensais que j'avais raté certaines transactions ou que j'avais une erreur dans le code. Face à cela, j'ai vu que j'avais raison: 1031 n'a pas reçu le prix qui leur était destiné. Une récompense en bloc est une combinaison de pièces créées (50 BTC au tout début de l'existence de Bitcoin, divisant par deux tous les 210 000 blocs) et des commissions contenues dans les transactions en bloc.

Cette divergence pourrait survenir du fait que les mineurs ont manqué plusieurs commissions pour les transactions, ou qu'une commission excessive a été payée pour une transaction à base de monnaie, et n'a pas été incluse dans la valeur de sortie de la transaction du mineur, ou cela a été fait intentionnellement, qui sait.

Le premier bloc de ce type était daté du 18 mai 2011 et le dernier est apparu le 15 août 2015 (il ne manquait qu'un seul satoshi et l'a exploité à l'aide de CoiniumServ ). La plupart de ces blocs ont été extraits de janvier 2012 à mars 2013.

Plusieurs piscines ont miné des blocs et n'ont pas pris la récompense. Selon l'API Blocktrail , plus de la moitié de ces blocs sont extraits par EclipseMC et Eligius . Fait intéressant, ces deux pools ont commencé à les exploiter en même temps - ils utilisaient peut-être le même logiciel. Cependant, EclipseMC a terminé l'extraction en septembre 2012 et Eligius en janvier 2013. D'autres pools, comme Slush ou P2Pool, ont également exploité ces blocs, mais très peu.

Les bitcoins manquants ont disparu pour toujours. L'envoi de bitcoins à des adresses fictives ou des dépenses pour des conclusions inappropriées pour cela ne conduit pas à leur disparition - ils peuvent être observés sur la blockchain. Et si vous ne demandez pas la récompense entière pour le bloc, les bitcoins disparaissent réellement - ils ne peuvent pas être vus dans la blockchain. La seule vérification de la valeur de récompense pour le bloc est (à en juger par la source de bitcoind ) qu'elle ne doit pas dépasser la valeur maximale - il s'avère que vous pouvez détruire complètement la récompense entière, y compris les pièces générées.

Conclusion


Il existe d'autres façons de graver des bitcoins (par exemple, en utilisant des scripts incorrects non standard ), mais les plus courants sont les adresses fictives et les scripts OP_RETURN. Et bien qu'il s'agisse d'un argument non étayé par des preuves, il était très intéressant pour moi de savoir quels pools utilisaient le même logiciel, simplement en étudiant la blockchain.

Source: https://habr.com/ru/post/fr404443/


All Articles