₿itcoinItaliaNetwork 

OP_RETURN

Difficoltà: avanzato

Argomento: tecnologia


DEFINIZIONE

OP_RETURN è un opcode nel sistema di scripting di bitcoin che consente l'inclusione di una piccola quantità di dati arbitrari in una transazione.
Questo codice operativo contrassegna immediatamente l'output della transazione come non spendibile, garantendo che l'output non possa essere utilizzato come input in una transazione successiva.

In programmazione, l'operatore return è un'istruzione che termina l'esecuzione di una funzione e restituisce il controllo alla funzione chiamante. Può anche restituire un valore alla funzione chiamante.

Nel caso di Bitcoin, questa caratteristica viene utilizzata principalmente per incorporare dati arbitrari nella blockchain.

Qualsiasi output di transazione con questo opcode non è spendibile, ma i dati dopo OP_RETURN rimangono permanentemente sulla blockchain. Questo è diventato un modo per dichiarare che l'output non può essere speso ed è qui solo per i dati.

Gli output script che iniziano con OP_RETURN, chiamati data carrier output, possono avere un importo pari a zero. L'opcode OP_RETURN fa sì che lo script fallisca immediatamente, indipendentemente da ciò che segue, quindi questi output non possono mai essere spesi. Ciò significa che i full node non hanno bisogno di tenerne traccia, una caratteristica di Bitcoin Core che consente agli utenti di memorizzare piccole quantità di dati arbitrari nella blockchain senza aumentare le dimensioni dell'UTXO set. Poiché gli output non sono spendibili, non sono anti-economici: qualsiasi satoshi assegnato a essi diventa permanentemente non spendibile, quindi consentire che l'importo sia zero garantisce che i satoshi non vengano distrutti.

Su Bitcoin Core, il parametro datacarriersize imposta la dimensione massima del datacarrier, ovvero dei dati che possono essere inseriti con OP_RETURN, o meglio la lunghezza totale dello script, argomento al centro di diversi dibattiti all'interno della comunità.


aggiornato il 2023-12-05