Uncompressed Public Keys (The Legacy)
Uncompressed Public Keys (The Legacy)
In the earliest versions of Bitcoin, public keys were stored in their full, "Uncompressed" form. While simple to understand, this format is highly inefficient and is rarely used in modern Bitcoin transactions.
1. The 65-Byte Structure
An uncompressed public key consists of three parts joined together:
-
Prefix (1 byte): Always
0x04. This signals "Uncompressed." -
X-Coordinate (32 bytes): The horizontal position.
-
Y-Coordinate (32 bytes): The vertical position.
Total Size: 65 Bytes.
2. Why was it used?
When Satoshi Nakamoto first released Bitcoin, he used the OpenSSL library, which defaulted to uncompressed keys. At the time, the blockchain was small, and saving 32 bytes per transaction wasn't a major priority.
- Simplicity: To verify a signature, you need both X and Y. Storing them both means the computer doesn't have to do any extra math to find them.
3. The "Double Address" Problem
One of the strangest quirks of legacy Bitcoin is that the same private key can generate two different addresses:
-
One address from the Uncompressed public key (starting with
1). -
One address from the Compressed public key (also starting with
1). This led to confusion in early wallets, where users might see a zero balance because their wallet was looking for the "Wrong" version of their key.
4. Why we moved away
In a blockchain, Space is Money.
-
Every transaction in a block costs fees based on its size in bytes.
-
By storing the Y-coordinate, we are effectively wasting 32 bytes of space, because the Y-coordinate can be mathematically calculated from the X-coordinate.
| Format | Prefix | Size | Status |
|---|---|---|---|
| Uncompressed | 04 |
65 Bytes | Legacy / Deprecated |
In the next section, we will explore the Compressed format that saved the network Gigabytes of data.
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: