Bitcoin Script

20 min Niveau 10

Le bitcoin est parfois qualifié de monnaie programmable. En raison de sa nature numérique, il offre aux utilisateurs un grand degré de flexibilité lorsqu'il s'agit de définir les conditions dans lesquelles les fonds peuvent être dépensés.

Lorsque nous parlons de Bitcoin, nous parlons de portefeuilles et de pièces. Mais nous pourrions également considérer les portefeuilles comme des clés, les pièces comme des chèques et la blockchain comme une succession de rangées de coffres-forts verrouillés. Chaque coffre est doté d'une mince fente, de sorte que n'importe qui peut déposer des chèques ou regarder à l'intérieur pour connaître la valeur du coffre. Cependant, seul le détenteur de la clé pourra accéder à l'intérieur.

Lorsqu'un détenteur de clé veut donner de l'argent à quelqu'un d'autre, il déverrouille son coffre. Il établit un nouveau chèque qui fait référence à l'ancien (qui est ensuite détruit) et l'enferme dans une boîte que le destinataire peut ouvrir. Pour le dépenser, le nouveau bénéficiaire répète le processus.

Dans cet article, nous allons examiner de plus près le script, le langage de programmation interprété par les nœuds du réseau Bitcoin. Le script est ce qui régit le mécanisme de verrouillage/déverrouillage mentionné pour les coffres-forts.

Comment fonctionne Bitcoin ?

En reprenant l'analogie ci-dessus, on pourrait dire que chaque transaction comporte deux parties : une clé (pour déverrouiller votre boîte) et une serrure. Vous utilisez votre clé pour ouvrir la boîte qui contient le chèque que vous voulez envoyer, puis vous en ajoutez une nouvelle dans une nouvelle boîte avec une serrure différente. Pour dépenser à partir de la nouvelle boîte, vous avez besoin d'une autre clé.

C'est assez simple. Vous pouvez également varier un peu les types de serrures du système. Certains coffres exigent peut-être que vous fournissiez plusieurs clés, et d'autres que vous prouviez que vous connaissez un secret. Il y a un tas de conditions que les gens peuvent définir.

Notre clé est ce que nous appelons un scriptSig. Le verrou est notre scriptPubKey. Si nous examinons ces composants plus en détail, nous verrons qu'ils sont en fait constitués de bits de données et de blocs de code. Une fois combinés, ils créent un petit programme.

Lorsque vous effectuez une transaction, vous diffusez cette combinaison sur le réseau. Chaque nœud qui la reçoit vérifie le programme, qui lui indique si la transaction est valide. Si ce n'est pas le cas, elle sera simplement rejetée, et vous ne pourrez pas dépenser les fonds bloqués.

Les chèques (pièces) que vous détenez sont appelés sorties de transaction non dépensées (UTXO). Les fonds peuvent être utilisés par quiconque peut fournir la clé qui correspond à la serrure. Plus précisément, la clé est le scriptSig et la serrure est le scriptPubKey.

Si les UTXO se trouvent dans votre portefeuille, ils seront probablement assortis d'une condition stipulant que seule la personne pouvant prouver la propriété de cette clé publique peut débloquer ces fonds. Pour les débloquer, vous fournissez un scriptSig qui inclut une signature numérique, en utilisant la clé privée qui correspond à la clé publique spécifiée dans le scriptPubKey. Tout ceci deviendra plus clair dans un instant.

Comprendre la pile Bitcoin

logo discord

Besoin d'aide ?

Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !

En savoir plus