Dwie części pary kluczy mają odmienne zadania
Klucz prywatny jest bardzo dużą tajną liczbą utworzoną przez bezpieczne źródło losowości. Oprogramowanie matematycznie wyprowadza z niego klucz publiczny. Obliczenie w tę stronę jest praktyczne, lecz za pomocą znanych metod nie da się w praktyce odzyskać klucza prywatnego z publicznego.
Klucz publiczny może służyć do weryfikacji podpisu, a klucz prywatny ten podpis tworzy. Nie należy mylić ich z nazwą użytkownika i hasłem. Sieć nie ma centralnej listy osób ani przycisku zmiany zapomnianego klucza; sprawdza jedynie, czy przedstawione dane spełniają reguły konkretnego wyjścia.
Adres nie jest rachunkiem ani kluczem prywatnym
Adres Bitcoin jest zakodowaną informacją, która pomaga portfelowi płatnika utworzyć właściwy warunek wyjścia. W zależności od typu może opierać się na haszu klucza publicznego, skryptu albo kluczu publicznym Taproot. Suma kontrolna pomaga wykryć niektóre literówki, ale nie dowodzi, że adres należy do zamierzonego odbiorcy.
Na adres można przyjmować płatności, a bezpieczniejsze portfele tworzą nowy adres dla każdej kolejnej wpłaty. Wielokrotne używanie jednego adresu ułatwia publiczne łączenie płatności i osłabia prywatność. Samo ujawnienie adresu odbiorczego nie daje jednak nikomu prawa do wydania powiązanych wyjść.
- klucz prywatny pozostaje tajny i pozwala utworzyć podpis
- klucz publiczny pozwala zweryfikować podpis
- adres pomaga utworzyć warunek płatności i można przekazać go płatnikowi
Podpis zatwierdza konkretne dane
Podczas wydawania portfel nie rozgłasza klucza prywatnego. Używa go do stworzenia podpisu cyfrowego nad dokładnie określonymi danymi transakcji. Węzeł może za pomocą klucza publicznego sprawdzić zgodność podpisu oraz to, czy chroniona część transakcji nie została zmieniona.
Bitcoin historycznie wykorzystuje podpisy ECDSA, a dla wyjść Taproot także podpisy Schnorra zdefiniowane w BIP 340. Dla zwykłego użytkownika najważniejsza jest ta sama zasada: prawidłowy podpis dowodzi upoważnienia do określonego polecenia, nie ujawnia tajemnicy i nie daje ogólnej zgody na dowolne przyszłe płatności.
Kryptografia nie zapobiega każdemu ludzkiemu błędowi
Jeśli napastnik zdobędzie klucz prywatny lub słowa odzyskiwania, może stworzyć prawidłowy podpis, a sieć nie rozpozna kradzieży. Jeśli użytkownik podpisze transakcję na błędny adres, matematycznie może być ona w pełni prawidłowa. Dlatego cel i kwotę należy sprawdzać na zaufanym wyświetlaczu.
Portfele zwykle zarządzają wieloma kluczami za pomocą jednej kopii zapasowej. Seed, passphrase, portfele sprzętowe i konfiguracje wielopodpisowe omówimy na późniejszym poziomie bezpieczeństwa. Na razie wystarczy precyzyjna zasada: adres służy do odbioru, klucz publiczny do weryfikacji, a tajnych danych nigdy nie wysyła się obcej osobie ani obsłudze strony internetowej.