Private Key Tools

Private Key Tools β€” 22 focused calculators

Every function of the classic private-key calculator, split into its own page. Each one takes a single input with a real sample value, shows the live result, and then explains the underlying cryptography in full β€” in both English and Chinese.

Private key & representations

A private key is an integer that can be written in several equally valid ways. These pages convert between them and explain what each notation actually means.

Private key derivation

The one-way chain that turns a secret number into the things you actually publish: public keys, WIF exports and the five address types.

Private key β†’ compressed public key
P = kΒ·G on secp256k1, serialized as 33 bytes with a 02/03 parity prefix. The single most important step in the whole chain.
tools/priv-pub_c.php
Private key β†’ uncompressed public key
The legacy 65-byte form 04β€–Xβ€–Y, still required to reproduce old β€œ1…” addresses and old WIFs.
tools/priv-pub_u.php
Private key β†’ compressed WIF
Base58Check(0x80 β€– key β€– 0x01) β€” the modern K…/L… export format that implies a compressed address.
tools/priv-wif_c.php
Private key β†’ uncompressed WIF
Base58Check(0x80 β€– key) β€” the original 5… format from the Satoshi era.
tools/priv-wif_u.php
Private key β†’ P2PKH address (compressed)
The classic β€œ1…” address built from hash160(compressed pubkey) β€” what every modern single-key wallet shows.
tools/priv-addr_c.php
Private key β†’ P2PKH address (uncompressed)
The same address type computed from the 65-byte public key β€” a different address for the very same private key.
tools/priv-addr_u.php
Private key β†’ P2SH-P2WPKH address
A β€œ3…” nested-SegWit address: hash160(0x0014β€–hash160(pubkey)) wrapped in a P2SH Base58Check address.
tools/priv-addr_s.php
Private key β†’ P2WPKH address (bech32)
The native SegWit β€œbc1q…” address β€” bech32, witness v0, smallest and cheapest to spend from.
tools/priv-addr_w.php
Private key β†’ P2TR address (Taproot)
BIP86 key-path Taproot: tweak the internal key by TapTweak, then bech32m-encode the output key’s x coordinate.
tools/priv-addr_t.php

Public keys & encoding

The public, math-facing half: curve arithmetic, byte serialization, and the two encodings β€” Base58Check and Bech32 β€” that wrap everything into text.

Address analysis

Go the other direction: start from an address you already have, work out exactly what it is, and read what the blockchain says about it.

Wallets & mnemonics

Where private keys actually come from: BIP39 mnemonics, BIP32 derivation paths, and the cautionary tale of brainwallets.

How these tools fit together

Every page in this section is a single step of the same derivation, extracted into its own page so the step can be explained properly. Read them in order and you have walked the entire path from a random 256-bit number to a spendable address.

entropy / mnemonic→ private key k→ P = k·G→ compressed pubkey→ hash160→ Base58Check / Bech32→ address
StageWhat happensReversible?
Entropy β†’ mnemonic128–256 random bits + a 4–8 bit checksum, mapped to BIP39 wordsYes
Mnemonic β†’ seedPBKDF2-HMAC-SHA512, 2048 iterations, salt "mnemonic"+passphraseNo (one-way)
Seed β†’ private keyBIP32 HMAC-SHA512 chain along a derivation pathNo
Private key β†’ public keyElliptic-curve point multiplication kΒ·GNo (ECDLP)
Public key β†’ hash160RIPEMD160(SHA256(pubkey))No
hash160 β†’ addressBase58Check or Bech32 encoding with a version/witness tagYes (decode only)
Every page shows live results, not screenshots

Each tool has an input box that shows a real sample value as its placeholder, a Convert button, and a long technical write-up underneath. Nothing is submitted anywhere except this server, and no input is logged.