P2PKH

acronimo di: Pay-to-Public-Key-Hash

Difficoltà: avanzato

Argomento: tecnologia


DEFINIZIONE

P2PKH Pay-to-Public-Key-Hash, paga all'hash della chiave pubblica, è un tipo di ScriptPubKey che consente di spendere i bitcoin tramite l'hash di una chiave pubblica.

L'indirizzo P2PKH o Legacy è la prima versione di un indirizzo Bitcoin che inizia con il numero "1" e ha da 26 a 36 caratteri, ad esempio: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa

Prima versione, perché P2PKH viene introdotto dopo P2PK che utilizzava direttamente la chiave pubblica.

Gli indirizzi P2PKH erano i più utilizzati, ma hanno perso popolarità con l'avvento di SegWit; rimangono comunque un ottimo caso per capire Bitcoin, e soprattutto per capire gli script Bitcoin. Le fee medie per l'invio da un indirizzo P2PKH sono solitamente più alte di quelle per l'invio da un indirizzo Segwit, perché le transazioni con indirizzi obsoleti sono di dimensioni maggiori.

Una transazione P2PKH è quella in cui gli input sono stati bloccati utilizzando lo ScriptPubKey P2PKH. L'hash di una chiave pubblica viene anche indicato come indirizzo, e P2PKH è attualmente uno dei tipi di script più comuni.

P2PKH è simile alle transazioni P2PK, tranne per il fatto che il bitcoin è bloccato sull'hash della chiave pubblica anziché sulla chiave pubblica stessa.

Se Alice vuole inviare 1 BTC a Bob in una transazione P2PKH, Bob fornisce ad Alice un indirizzo dal suo wallet. L'indirizzo di Bob è incluso nella transazione. Quando Bob prova a spendere il bitcoin che ha ricevuto, deve firmare la transazione con la chiave privata corrispondente alla chiave pubblica il cui hash corrisponde all'hash fornito nella transazione di Alice.

Lo script di blocco P2PKH contiene l'hash della chiave pubblica, nell'esempio di seguito rappresentata da 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa, circondata da questi opcode:

OP_DUP OP_HASH160 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa OP_EQUALVERIFY OP_CHECKSIG

Per risolvere questo script, il proprietario della chiave pubblica con hash di cui sopra deve fornire la chiave pubblica originale, insieme a una corrispondente firma valida.


aggiornato il 2021-11-17