ScriptPubKey

Difficoltà: avanzato

Argomento: tecnologia


DEFINIZIONE

I bitcoin non si trovano all'interno di un wallet, ma sono degli importi non spesi registrati nella blockchain chiamati UTXO.

Questi UTXO contengono una informazione chiamata ScriptPubKey, conosciuta anche come locking script, che stabilisce quali sono le regole per poter spendere o trasferire l'importo indicato nell'UTXO. Lo ScriptPubKey è lo script nell'UTXO che imposta le condizioni per spendere (trasferire) i bitcoin dell'UTXO.

Uno ScriptPubKey viene spesso chiamato locking script perché blocca (lock) i bitcoin finché qualcuno non può fornire una risposta (o soluzione dello script) per sbloccarli e quindi trasferirli attraverso uno ScriptSig o unlocking script.

Ci sono diversi tipi di ScriptPubKey.

  • P2PK: il primo, il più semplice, ma ormai obsoleto, è P2PK, Pay-to-Public-Key, paga alla chiave pubblica che è inserita in chiaro nello script. Per spendere i bitcoin bloccati con P2PK, si deve produrre una firma con la chiave privata corrispondente alla chiave pubblica inserita nello script.
  • P2PKH: il primo script P2PK è stato presto sostituito da P2PKH, Pay-to-Public-Key-Hash, che sostituisce la chiave pubblica in chiaro con l'hash della chiave pubblica, aggiungendo sicurezza e privacy.

A questi primi tipi di script se ne sono aggiunti altri nel tempo:

Questa risposta che consente di sbloccare i bitcoin, avviene tramite lo script di sblocco, unlocking script, chiamato ScriptSig nelle transazioni legacy e Script Witness nelle transazioni SegWit, e viene fornito quando questo bitcoin viene speso tramite una transazione.


aggiornato il 2021-12-17