TeachMeBitcoin

P2PK Overview

From TeachMeBitcoin, the free encyclopedia Reading time: 2 min

P2PK: Pay-to-Public-Key (The Original Script)

Before Bitcoin had addresses, it had P2PK (Pay-to-Public-Key). This was the first script type used by Satoshi Nakamoto to send the very first bitcoins. While rarely used today, understanding P2PK is essential for understanding how Bitcoin's scripting language evolved.

1. Locking to the Key, Not the Hash

In modern Bitcoin, we send money to a hash of a public key (an address). In P2PK, the coins are locked directly to the raw public key bytes.

2. No Human-Readable Addresses

P2PK does not have a standard "address" format like 1BvBM... or bc1q....

3. Why it was Phased Out

P2PK was quickly replaced by P2PKH (Pay-to-Public-Key-Hash) for two main reasons:

  1. Size: A public key is 33 or 65 bytes. A hash is only 20 bytes. P2PKH saves significant block space.

  2. Quantum Security: In P2PK, your public key is visible on the blockchain the moment you receive money. In P2PKH, your public key is hidden behind a double-hash until the moment you spend the coins.

4. The Genesis of the Chain

The first 50 BTC ever created (the Genesis Block reward) and thousands of early mining rewards are locked in P2PK scripts. Because these coins have never been moved, their public keys remain exposed on the ledger today.

Feature P2PK (Legacy) P2PKH (Standard)
Locked To Raw Public Key Public Key Hash
Address Format None Base58 (Starts with 1)
Space Usage High (65 bytes) Low (20 bytes)
Primary Use Early Mining / Coinbase Daily Transactions

In the next section, we will analyze the ScriptPubKey Structure of P2PK.

☕ Help support TeachMeBitcoin

TeachMeBitcoin is an ad-free, open-source educational repository curated by a passionate team of Bitcoin researchers and educators for public benefit. If you found our articles helpful, please consider supporting our hosting and ongoing content updates with a clean donation:

Ethereum: 0x578417C51783663D8A6A811B3544E1f779D39A85
Bitcoin: bc1q77k9e95rn669kpzyjr8ke9w95zhk7pa5s63qzz
Solana: 4ycT2ayqeMucixj3wS8Ay8Tq9NRDYRPKYbj3UGESyQ4J
Address copied to clipboard!