Ein Public Key ist die eine Hälfte des kryptografischen Schlüsselpaars, das die Selbstverwahrung digitaler Vermögenswerte ermöglicht. Er wird aus einem zufällig gewählten Private Key mithilfe elliptischer Kurvenmathematik erzeugt, meist über die secp256k1-Kurve, auf die sich sowohl Bitcoin als auch Ethereum stützen. Die beiden Schlüssel bilden ein zusammengehöriges Paar: Alles, was der Private Key signiert, kann der Public Key verifizieren, doch der Private Key selbst lässt sich nicht aus dem Public Key zurückrechnen.
In der Praxis bekommt kaum jemand einen rohen Public Key zu Gesicht. Die meisten Blockchains hashen ihn (Bitcoin nutzt SHA-256 gefolgt von RIPEMD-160, Ethereum verwendet Keccak-256) und kodieren das Ergebnis zu der kürzeren, kompakteren Zeichenfolge, die als Adresse bekannt ist und die tatsächlich auf Belegen und in Block-Explorern erscheint. Der vollständige Public Key wird erst on-chain sichtbar, sobald eine Transaktion signiert wird, da Nodes ihn benötigen, um die zugehörige digitale Signatur zu bestätigen, bevor die Übertragung akzeptiert wird.
Dieses Design erlaubt es einer Wallet, ihren Public Key oder ihre Adresse frei weiterzugeben, ganz wie eine Bankkontonummer, während der Private Key verborgen bleibt und die Autorisierung übernimmt. Jeder kann Guthaben und Transaktionshistorie zu einem Public Key einsehen, doch nur der Inhaber des passenden Private Keys kann die Mittel bewegen. Der Verlust des Private Keys beeinträchtigt die Gültigkeit des Public Keys nicht, sperrt aber die zugehörigen Vermögenswerte dauerhaft, da keine zentrale Instanz existiert, die den Zugang neu vergeben könnte.