Que signifie Lock Time dans une transaction Bitcoin: LockTime: hauteur de bloc, date?

Lors de la construction d’une transaction Bitcoin sur l’électrum et le portefeuille Bitcoin principal, vous trouverez cette option appelée Lock Time.

Sur le portefeuille principal, il offre la possibilité de choisir un délai de confirmation pour votre transaction. Alors que sur electrum, vous pouvez spécifier l’heure et la date du bloc.

electrum bitcoin locktime

Sur la plupart des transactions, vous n’avez pas besoin d’utiliser cette fonction de verrouillage. Si vous souhaitez que votre transaction soit définitive, laissez simplement ce champ au paramètre par défaut. En fonction du trafic mempool et de vos frais, la transaction sera confirmée dans les prochains blocs.

Certains débutants sans savoir à quoi sert cette fonction bloquent accidentellement leur transaction pendant des jours voire des mois.

Récemment, l’un de nos utilisateurs a bloqué sa transaction pendant des semaines. Lors de la vérification de la transaction sur l’explorateur de blocs, il y avait un champ appelé temps de verrouillage qui spécifiait le bloc de temps de verrouillage: 664777. Cela signifie simplement que cette transaction particulière ne sera valide qu’à la hauteur de bloc donnée. La transaction ne peut pas être incluse dans un bloc tant que le bloc 664777 n’a pas été miné.

Alors, qu’est-ce que le temps de verrouillage signifie dans une transaction Bitcoin? Quel est le but de cette fonctionnalité et quand vous devez définir l’heure de verrouillage pour votre transaction?

Qu’est-ce que le temps de verrouillage dans une transaction Bitcoin?

Le temps de verrouillage dans la transaction Bitcoin est spécifié par l’utilisateur. C’est le moment auquel une transaction particulière peut être ajoutée à la blockchain.

Locktime est le dernier champ d’un élément de données de transaction utilisé pour la post-datation. Cela définit l’heure au plus tôt ou le premier bloc auquel les mineurs peuvent choisir la transaction et la joindre au dernier bloc de la blockchain..

Lorsqu’un expéditeur spécifie une heure de verrouillage, la transaction restera simplement verrouillée jusqu’à la hauteur ou l’heure de bloc spécifiée.

Par exemple, si un utilisateur a spécifié une hauteur de bloc de verrouillage @ 664777 et si la hauteur de bloc actuelle est de 664700 alors l’utilisateur doit attendre jusqu’à ce que le bloc 664777 soit atteint. Ce n’est qu’après que le bloc 664777 a été miné, les mineurs tenteront d’inclure leur transaction dans un bloc. Dans Bitcoin, le temps de blocage est de 10 minutes, donc plus ou moins l’utilisateur doit attendre 770 heures (près d’un mois) pour que sa transaction soit confirmée..

Pourquoi utiliser cette fonction?

Tout d’abord, la plupart des transactions Bitcoin ne nécessitent pas cette fonction et n’utilisent pas de temps de verrouillage défini. Ainsi, toutes les transactions qui n’utilisent pas cette fonctionnalité auront un temps de verrouillage défini sur 0x00000000.

Si vous ne souhaitez pas que votre transaction soit verrouillée jusqu’à une hauteur ou une heure de bloc spécifique, vous pouvez simplement définir le temps de verrouillage sur une valeur inférieure à la hauteur de bloc actuelle ou à l’heure UNIX. Cela définira le champ locktime sur 0x00000000. De cette façon, votre transaction sera définitive. Alors, quand exactement avons-nous besoin de cette fonction?

En simple, la fonction LockTime est utilisée pour verrouiller une transaction jusqu’à une hauteur de bloc ou un moment précis. La définition de l’heure de verrouillage signifie que la transaction ne sera confirmée que lorsque l’heure ou la hauteur de bloc requises aura été atteinte. La transaction ne sera pas valide tant que la fonction spécifiée ne sera pas remplie.

Les nœuds valident chaque transaction et si une transaction contient un script de verrouillage, ils la rejetteront simplement. La transaction dont le temps de verrouillage est spécifié ne sera ajoutée à la blockchain qu’après l’heure définie ou la hauteur de bloc écoulée et non avant..

Considérez cette fonctionnalité comme un chèque postdaté écrit avec une date future. Le chèque ne sera pas compensé avant cette date spécifiée. De même avec le locktime, les pièces ne peuvent pas être dépensées avant un temps spécifié ou jusqu’à ce qu’une certaine hauteur de bloc ait été dépassée. Cela va simplement verrouiller l’UTXO pendant une durée prédéterminée.

Comment la fonction de verrouillage de Bitcoin peut être utilisée?

Par exemple, supposons que vous souhaitiez envoyer du Bitcoin à quelqu’un maintenant, mais que vous ne vouliez qu’il le reçoive à une date ultérieure. Ou disons que vous souhaitez envoyer de l’argent sur le compte d’épargne de vos enfants qu’ils ne peuvent pas dépenser avant l’expiration du verrou. Avec locktime, vous signez essentiellement une transaction à l’avance qui ne sera confirmée qu’à l’expiration du verrou.

LockTime peut être défini de deux manières. Il peut s’agir de l’heure réelle ou de la hauteur du bloc. Bitcoin core, electrum et la plupart des autres portefeuilles Bitcoin auront lock_time défini par défaut sur la hauteur de bloc actuelle. Vous devrez spécifier la date ou le numéro de blocage uniquement si vous souhaitez verrouiller votre transaction.

Cette fonction spécifie les conditions temporelles dans lesquelles une transaction devient valide. C’est un outil puissant et une fonction complètement optionnelle. Si vous n’êtes pas sûr de cette fonctionnalité, laissez simplement le champ Locktime aux paramètres par défaut. De cette façon, votre transaction sera instantanément relayée sur le réseau.

Ne compliquez pas les choses et ne verrouillez pas accidentellement vos pièces pendant des années.

J’espère que ça disparaît.