P2PK

acronimo di: Pay-to-Public-Key

Difficoltà: avanzato

Argomento: tecnologia


DEFINIZIONE

P2PK, Pay-to-Public-Key in italiano Paga alla Chiave pubblica, è il primo e più semplice tipo di ScriptPubKey, o locking script, che vincola la spesa dei bitcoin ad una chiave pubblica.

Ciò significa che questi bitcoin possono essere spesi solo dal proprietario della chiave privata corrispondente alla chiave pubblica fornita nello script.

È stato sviluppato direttamente da Satoshi Nakamoto nella sua prima versione di Bitcoin. È diventato però presto obsoleto, deprecato a favore degli script P2PKH Pay-to-Public-Key-Hash che sostituiscono la chiave pubblica in chiaro con l'hash della chiave pubblica, aggiungendo sicurezza e privacy.

Una transazione P2PK è una transazione i cui input hanno utilizzato una ScriptPubKey P2PK. Ad esempio, se Alice invia 1 BTC a Bob in una transazione P2PK, include la chiave pubblica di Bob nella transazione. Quando Bob vuole spendere i bitcoin che ha ricevuto da Alice, deve firmare la sua transazione con la chiave privata corrispondente alla chiave pubblica inclusa da Alice nella sua transazione.

Tecnicamente, P2PK è semplicemente il nome di un particolare script con i requisiti di cui sopra. Ogni output di Bitcoin ha uno script chiamato ScriptPubKey che determina come può essere speso l'output e P2PK è uno di questi script.

Lo script P2PK ha la seguente forma:

<Chiave pubblica da inviare> OP_CHECKSIG

Ciò significa che per sbloccare detti bitcoin e poterli utilizzare dovremmo fornire una firma digitale valida per la chiave pubblica che abbiamo fornito, come possiamo vedere nello scriptSig che avrebbe la seguente forma:

<SIGNATURE> (Firma digitale valida)

Un esempio dell'uso di P2PK è nella prima transazione Bitcoin, fatta il 12 gennaio 2009 da Satoshi a Hal Finney, presente nel blocco 170.


aggiornato il 2021-11-17