Przejdź do treści
Słownikportfelebezpieczenstwopodstawy

Klucz publiczny

Para kryptograficzna do klucza prywatnego, którą można bezpiecznie udostępniać. Umożliwia weryfikację podpisów i jest podstawą do wyprowadzenia adresu blockchain.

Relacja klucz prywatny → klucz publiczny → adres

Klucz publiczny jest obliczany z klucza prywatnego przez mnożenie punktu na krzywej eliptycznej secp256k1 (Ethereum, Bitcoin) lub Curve25519 (Solana). Operacja jest jednostronna: łatwa w jednym kierunku, obliczeniowo niemożliwa do odwrócenia.

Na Ethereum adres to ostatnie 20 bajtów skrótu Keccak-256 z klucza publicznego. Udostępniasz adres, nie klucz publiczny — klucz jest ujawniany dopiero gdy wysyłasz pierwszą transakcję (podpis zawiera informacje pozwalające go odtworzyć).

Na Solanie adres jest bezpośrednio kluczem publicznym zakodowanym w base58. Struktura jest prostsza, ale zasada bezpieczeństwa ta sama: klucz publiczny można znać, klucz prywatny musi pozostać tajny.

Klucz prywatny vs klucz publiczny

Kto zna
Prywatny: tylko ty. Publiczny: każdy może znać.
Do czego służy
Prywatny: podpisywanie. Publiczny: weryfikacja podpisu.
Jak chronić
Prywatny: nigdy nie ujawniać. Publiczny: bezpieczny do udostępnienia.
Relacja z adresem
Prywatny → klucz publiczny → adres (sekwencja jednostronna).

Adres blockchain jest pochodną klucza publicznego, nie samym kluczem publicznym. Udostępnianie adresu nie ujawnia klucza publicznego — ten pojawia się on-chain dopiero przy pierwszej wychodzącej transakcji.

Najczęstsze błędne założenia

  • Klucz publiczny to nie to samo co adres. Adres to skrót kryptograficzny z klucza publicznego.
  • Ujawnienie klucza publicznego nie kompromituje środków przy obecnej kryptografii klasycznej. Ryzyko pojawia się przy komputerach kwantowych.
  • Klucz publiczny nie jest potrzebny do odbioru płatności — wystarczy adres.

Najczęstsze pytania

Tak. Klucz publiczny jest zaprojektowany do udostępniania. W praktyce zazwyczaj podajesz adres, który jest skrótem klucza publicznego.

Na Ethereum adres to 20 bajtów z Keccak-256 klucza publicznego — krótszy i nieodwracalny. Na Solanie adres jest wprost kluczem publicznym w innym kodowaniu.

Źródła i dalsza lektura