secp256k1 to krzywa eliptyczna opisana w standardzie SEC 2, na której opiera się kryptografia kluczy w Bitcoinie, Ethereum i wielu innych sieciach, m.in. Litecoinie, Dogecoinie, BNB Chain czy Tronie. To z niej portfel wyprowadza klucz publiczny z klucza prywatnego i to na niej działają podpisy ECDSA oraz podpisy Schnorra używane w Taproot.
Temat wraca dziś z dwóch powodów. Po pierwsze, każdy, kto trzyma krypto na własnym portfelu, w praktyce powierza swoje środki matematyce tej jednej krzywej. Po drugie, w 2026 roku dyskusja o komputerach kwantowych przeszła w Bitcoinie od teorii do konkretnych propozycji zmian protokołu. Poniżej opisuję, czym jest secp256k1, dlaczego Satoshi wybrał akurat ją i co realnie oznacza zagrożenie kwantowe dla Twoich monet.
Co to jest secp256k1 w prostych słowach
Wyobraź sobie zegar, na którym zamiast 12 godzin jest liczba mająca 78 cyfr. Na tym zegarze zaczynasz w ustalonym punkcie startowym i robisz określoną liczbę „kroków” według ściśle opisanych reguł. Jeśli znasz liczbę kroków, w ułamku sekundy dojdziesz do punktu końcowego. Jeśli jednak ktoś pokaże Ci tylko punkt końcowy, nie da się w praktyce odgadnąć, ile kroków wykonano. Liczba kroków to klucz prywatny, punkt końcowy to klucz publiczny.
Krzywa secp256k1 jest właśnie takim „zegarem”: zbiorem punktów z jasno zdefiniowanym sposobem ich dodawania. Działanie w jedną stronę jest łatwe, a w drugą, przy dzisiejszych komputerach, wymagałoby pracy liczonej w miliardach lat. Na tej asymetrii stoi bezpieczeństwo Twojego portfela.
Parametry krzywej bez matematycznego żargonu
Nazwę czyta się tak: „sec” to Standards for Efficient Cryptography, „p” oznacza, że krzywa jest określona nad ciałem skończonym o liczbie pierwszej p, „256” to rozmiar w bitach, „k” oznacza krzywą typu Koblitza, a „1” to pierwszy (i jedyny) wariant tego typu w standardzie. Dokument SEC 2 opublikowała firma Certicom w 2000 roku w ramach grupy SECG.
- Równanie. y² = x³ + 7. Wszystkie obliczenia wykonuje się „modulo p”, czyli na liczbach całkowitych, które po przekroczeniu p zawijają się od zera, jak wskazówki zegara. p to liczba pierwsza nieco mniejsza niż 2^256.
- Punkt bazowy G. Ustalony, publicznie znany punkt startowy na krzywej. Każdy portfel na świecie używa tego samego G.
- Rząd n. Liczba różnych punktów, do których można dojść, dodając G do siebie. Też jest liczbą pierwszą bliską 2^256. Klucz prywatny musi być liczbą od 1 do n − 1.
- Kofaktor równy 1. Wszystkie punkty krzywej tworzą jedną grupę, co upraszcza implementację i usuwa część pułapek znanych z innych krzywych.
Klucz prywatny to po prostu losowa liczba 256-bitowa, oznaczana zwykle k. Klucz publiczny to punkt Q = k·G, czyli G „dodany do siebie” k razy (w praktyce sprytnymi skrótami, nie krok po kroku). Odwrócenie tej operacji nazywa się problemem logarytmu dyskretnego na krzywej eliptycznej i dla secp256k1 najlepsze znane klasyczne ataki wymagają około 2^128 operacji. Stąd mówi się, że krzywa daje ok. 128 bitów bezpieczeństwa.
Dlaczego Satoshi wybrał secp256k1
W 2009 roku secp256k1 była mało popularna. Standardem w przemyśle była krzywa NIST P-256 (w nomenklaturze SEC 2: secp256r1). Satoshi nigdy szczegółowo nie uzasadnił wyboru, ale z perspektywy czasu widać kilka mocnych argumentów.
- Brak „ukrytych stałych”. Parametry P-256 wygenerowano z losowo wyglądającego ziarna, którego pochodzenia nigdy w pełni nie wyjaśniono. W secp256k1 współczynniki są minimalne (a = 0, b = 7), więc trudno podejrzewać, że ktoś dobrał je pod tylne drzwi. Po aferze z generatorem Dual_EC_DRBG w 2013 roku ten argument zyskał na wadze.
- Wydajność. Specjalna postać liczby p pozwala szybko liczyć redukcję modulo, a prosty kształt równania przyspiesza dodawanie punktów.
- Endomorfizm. Krzywe Koblitza mają dodatkową strukturę (tzw. endomorfizm GLV), która pozwala rozbić mnożenie przez dużą liczbę na dwa mniejsze i przyspieszyć weryfikację podpisów o kilkadziesiąt procent. W Bitcoin Core włączono tę optymalizację domyślnie dopiero po wygaśnięciu związanego z nią patentu, około 2020 roku.
libsecp256k1, czyli kod, który pilnuje Twoich kluczy
Teoria krzywej to jedno, a implementacja to drugie. Większość wpadek w kryptografii nie wynika ze złamania matematyki, tylko z błędów w kodzie. Dlatego deweloperzy Bitcoina zbudowali własną bibliotekę libsecp256k1, napisaną w C i zoptymalizowaną wyłącznie pod tę jedną krzywą. Bitcoin Core używa jej od połowy poprzedniej dekady zamiast OpenSSL. Biblioteka działa w stałym czasie (nie zdradza kluczy przez różnice w czasie obliczeń), jest intensywnie testowana i audytowana, a z jej kodu korzystają też liczne portfele i węzły innych sieci, w tym klienci Ethereum.
secp256k1 a komputery kwantowe
Krzywa jest bezpieczna wobec klasycznych komputerów, ale nie wobec wystarczająco dużego komputera kwantowego. Algorytm Shora pozwoliłby z klucza publicznego wyliczyć klucz prywatny. Dziś taka maszyna nie istnieje i nikt nie wie na pewno, kiedy powstanie. Kluczowe jest jednak, że zagrożenie dotyczy tylko adresów, których klucz publiczny jest już widoczny w sieci.
- Klucz ukryty za hashem. Adresy typu P2PKH (zaczynające się od 1) i P2WPKH (bc1q) pokazują tylko skrót klucza publicznego. Sam klucz pojawia się w łańcuchu dopiero przy wydaniu środków.
- Klucz ujawniony. Najstarsze wyjścia P2PK (m.in. monety z czasów Satoshiego), adresy używane wielokrotnie po pierwszym wydaniu oraz wyjścia Taproot (bc1p), które z założenia zawierają klucz publiczny wprost. W Ethereum klucz publiczny każdego konta, które wysłało choć jedną transakcję, jest odtwarzalny z podpisu.
Stan prac w Bitcoinie na październik 2026 roku: w lutym 2026 roku do oficjalnego repozytorium propozycji trafił BIP-360. W pierwszej wersji nazywał się P2QRH (Pay to Quantum Resistant Hash), obecnie Pay to Merkle Root (P2MR). Wprowadza nowy typ wyjścia podobny do Taproot, ale bez ścieżki wydania kluczem, więc klucz publiczny nie leży w łańcuchu na widoku. Sam w sobie nie dodaje jeszcze podpisów postkwantowych, ma być fundamentem pod nie. W kwietniu 2026 roku Jameson Lopp z grupą współautorów opublikował BIP-361, który proponuje kilkuletnie, etapowe wygaszanie podpisów opartych na secp256k1 i w końcowej fazie zamrożenie niezmigrowanych monet. Ta propozycja wywołała ostrą krytykę. Według dostępnych informacji żadna z nich nie ma ani ścieżki aktywacji, ani implementacji w Bitcoin Core, obie mają status projektu.
Ethereum idzie inną drogą. W marcu 2026 roku Fundacja Ethereum uruchomiła serwis poświęcony bezpieczeństwu postkwantowemu i przedstawiła plan stopniowej wymiany kryptografii, z celem wdrożenia kluczowych zmian w warstwie bazowej około 2029 roku. Dla portfeli użytkowników kluczowa ma być abstrakcja kont, dzięki której konto może przejść na nowy typ podpisu (np. ML-DSA albo podpisy oparte na funkcjach skrótu) bez jednego „dnia przełączenia” dla całej sieci. To nadal plany, a nie wdrożone rozwiązania.
Co to oznacza dla Ciebie
Z mojej perspektywy zagrożenie kwantowe to temat na lata, a nie na najbliższą sesję. Dużo bardziej realne ryzyko dla Twoich środków to dziś zły generator kluczy, wyciek seeda albo phishing. Kilka zasad, które stosuję sam:
- Seed tylko offline. Fraza odzyskiwania to zapis Twojego klucza prywatnego. Nie fotografuj jej, nie trzymaj w chmurze, nie wpisuj na żadnej stronie.
- Hardware wallet do większych kwot. Klucz prywatny nie opuszcza urządzenia, a podpisy powstają w jego środku.
- Żadnych podejrzanych generatorów kluczy. Strony „wygeneruj adres BTC”, generatory „vanity” od nieznanych autorów i portfele z niejasnym źródłem losowości to prosta droga do utraty środków. Klucz jest tak bezpieczny, jak losowość, z której powstał.
- Nie używaj wielokrotnie tego samego adresu. Nowy adres przy każdym odbiorze to lepsza prywatność, a w kontekście kwantów mniej odsłoniętych kluczy publicznych.
- Śledź propozycje, nie nagłówki. Gdy pojawi się realna ścieżka migracji, portfele ją wdrożą. Do tego czasu nie daj się namówić na „kwantowo bezpieczne” tokeny czy usługi przenoszenia monet.
Ryzyka związane z secp256k1
- Komputer kwantowy. Teoretycznie pozwoliłby odzyskać klucz prywatny z publicznego. Najbardziej narażone są adresy z ujawnionym kluczem.
- Słaba losowość. Zbyt przewidywalny klucz prywatny da się odgadnąć bez łamania krzywej.
- Błędy implementacji. Własne, niesprawdzone biblioteki mogą zdradzać klucze przez kanały boczne albo źle walidować punkty.
- Ryzyko migracji. Przejście na nowe podpisy będzie wymagało ruchu od samych użytkowników. Kto przegapi okno migracji, może mieć kłopot, jeśli przejdą propozycje typu BIP-361.
- Oszustwa „na kwanty”. Strach przed komputerami kwantowymi to wygodny pretekst dla scamów obiecujących zabezpieczenie Twoich monet.
Najczęstsze pytania o secp256k1
Czy secp256k1 można dziś złamać?
Nie ma znanej metody, która pozwalałaby na klasycznych komputerach odzyskać klucz prywatny z publicznego w rozsądnym czasie. Realne straty wynikają z błędów w generowaniu kluczy i z kradzieży seedów, a nie z łamania krzywej.
Czym secp256k1 różni się od secp256r1 (P-256)?
Obie mają 256 bitów i podobny poziom bezpieczeństwa. secp256k1 ma proste, przejrzyste parametry i strukturę Koblitza, a P-256 ma parametry wygenerowane z niewyjaśnionego ziarna i jest standardem w przeglądarkach, kartach i kluczach sprzętowych. Nie są ze sobą kompatybilne.
Jakie kryptowaluty używają secp256k1?
Bitcoin i jego forki, Ethereum oraz sieci zgodne z EVM, a także m.in. Litecoin, Dogecoin i Tron. Solana, Cardano czy Polkadot korzystają z innych krzywych.
Czy mój adres jest zagrożony przez komputery kwantowe?
Dziś nie, bo odpowiedniej maszyny nie ma. W przyszłości bardziej narażone będą adresy z ujawnionym kluczem publicznym: używane wielokrotnie, najstarsze wyjścia P2PK i Taproot. Adres, z którego nic nie wysłałeś, ukrywa klucz za skrótem.
Podsumowanie
secp256k1 to krzywa eliptyczna, na której opiera się własność w Bitcoinie, Ethereum i wielu innych sieciach: klucz prywatny to losowa liczba, a klucz publiczny to punkt Q = k·G. Satoshi wybrał ją ze względu na przejrzyste parametry i wydajność, a biblioteka libsecp256k1 stała się wzorcową implementacją. Krzywa daje około 128 bitów bezpieczeństwa wobec klasycznych komputerów, ale nie przetrwa dużego komputera kwantowego, dlatego Bitcoin dyskutuje BIP-360 i BIP-361, a Ethereum planuje stopniową migrację. Dla Ciebie najważniejsze pozostają podstawy: dobra losowość, bezpieczny seed i unikanie wielokrotnego używania adresów.


