tradingview

NSA

NSA (ang. National Security Agency), czyli Narodowa Agencja Bezpieczeństwa, to amerykańska agencja wywiadu sygnałowego (SIGINT) i kryptografii, działająca w strukturach Departamentu Obrony USA. Ma dwie role: przechwytuje i analizuje komunikację zagraniczną oraz zabezpiecza systemy łączności rządu USA. Dla rynku kryptowalut NSA jest ważna z jednego powodu – to ona zaprojektowała rodzinę funkcji skrótu SHA-2, do której należy SHA-256, fundament Bitcoina.

NSA i SHA-256

SHA-256 opublikował amerykański instytut normalizacyjny NIST w 2001 r. jako część standardu SHA-2, ale projekt algorytmu pochodzi z NSA. Bitcoin używa SHA-256 w kopaniu bloków (proof of work), w budowie drzewa Merkle i – razem z RIPEMD-160 – przy tworzeniu adresów.

Pytanie, które naturalnie się pojawia: czy agencja wywiadowcza mogła zostawić w algorytmie tylne drzwi? Po ponad dwóch dekadach publicznej kryptoanalizy nikt nie wykazał praktycznego ataku na SHA-256. Algorytm jest otwarty, jego konstrukcja opisana, a badacze na całym świecie mają silną motywację, żeby znaleźć słabość. Brak takiego odkrycia nie jest dowodem absolutnym, ale jest mocnym argumentem.

Afera Snowdena i Dual_EC_DRBG

Nieufność wobec NSA nie jest wymysłem. W 2013 r. Edward Snowden ujawnił dokumenty o programach masowej inwigilacji, m.in. PRISM, w ramach którego agencja pozyskiwała dane od dużych firm internetowych. Z tych samych dokumentów wynikało, że NSA wpływała na standardy kryptograficzne.

Najgłośniejszy przypadek to Dual_EC_DRBG – generator liczb losowych oparty na krzywych eliptycznych, zatwierdzony przez NIST w 2006 r. Już wcześniej kryptografowie wskazywali, że stałe użyte w algorytmie mogą kryć tylne drzwi. Po ujawnieniach Snowdena NIST wycofał rekomendację, a media opisały, że firma RSA Security otrzymała od NSA pieniądze za ustawienie tego generatora jako domyślnego w swojej bibliotece.

Element Rola NSA Ocena dziś
SHA-256 (SHA-2) zaprojektowała algorytm brak znanych praktycznych ataków
Dual_EC_DRBG promowała standard uznany za skompromitowany, wycofany
Krzywe NIST (np. P-256) dostarczyła parametry brak dowodu słabości, ale krytyka nieprzejrzystego wyboru stałych
secp256k1 (Bitcoin) nie ma bezpośredniego związku parametry przewidywalne, mniej miejsca na ukryte manipulacje

Krzywe eliptyczne i Bitcoin

Satoshi Nakamoto wybrał do podpisów krzywą secp256k1, a nie popularniejszą P-256 rekomendowaną przez NIST. Parametry secp256k1 są wyznaczone w przewidywalny sposób, więc trudno w nich coś ukryć. Nie wiadomo, czy wybór był świadomym unikaniem krzywych NIST, ale po 2013 r. zaczęto go tak odczytywać. Nowsze rozwiązania, jak podpisy Schnorra z aktualizacji Taproot, nadal korzystają z secp256k1.

Przykład: jak trudno złamać SHA-256

SHA-256 daje 2256 możliwych wyników, czyli ok. 1,16 × 1077. Znalezienie dwóch dowolnych danych z tym samym skrótem (kolizji) wymaga metodą siłową ok. 2128 prób. Załóżmy, że do tego celu użyjesz mocy obliczeniowej całej sieci Bitcoin, przyjmując umownie 600 EH/s, czyli 6 × 1020 skrótów na sekundę. Potrzebowałbyś ok. 18 mld lat – więcej niż wiek Wszechświata. Realnym zagrożeniem byłaby więc tylko słabość matematyczna w samym algorytmie, a nie brutalna siła.

Najczęstsze błędy

  • Twierdzenie, że „NSA stworzyła Bitcoina”, bo zaprojektowała SHA-256 – autor algorytmu nie jest autorem systemu, który go używa.
  • Mylenie SHA-256 z krzywymi NIST – to osobne elementy, a Bitcoin nie korzysta z krzywej P-256.
  • Traktowanie komputerów kwantowych i tylnych drzwi jako tego samego ryzyka – bardziej zagrożone są podpisy na krzywych eliptycznych niż sam SHA-256.
  • Uznawanie każdego standardu z udziałem NSA za skompromitowany – ocenia się algorytm, nie jego pochodzenie.

Perspektywa tradera

Doniesienia o „złamaniu” SHA-256 lub kryptografii Bitcoina pojawiają się co jakiś czas i potrafią wywołać nerwowe ruchy ceny. Zanim zareagujesz, sprawdź, czy chodzi o recenzowaną publikację, czy o nagłówek bez podstaw. Realne zagrożenie kryptograficzne zostałoby szybko potwierdzone przez niezależnych badaczy i deweloperów. Większym ryzykiem dla Twoich środków niż teoretyczna słabość algorytmu są błędy praktyczne: słaba losowość przy generowaniu kluczy, zainfekowany komputer, phishing.

Najczęstsze pytania

Czy NSA może złamać Bitcoina?

Nie ma żadnych dowodów, że NSA zna praktyczny atak na SHA-256 lub secp256k1. Oba algorytmy są publicznie analizowane od lat.

Kto stworzył SHA-256?

Algorytm zaprojektowała NSA, a jako standard opublikował go NIST w 2001 r. w ramach rodziny SHA-2.

Co ujawnił Edward Snowden?

Programy masowej inwigilacji NSA, m.in. PRISM, oraz działania wpływające na standardy kryptograficzne, w tym sprawę Dual_EC_DRBG.

Dlaczego Bitcoin używa secp256k1, a nie P-256?

Satoshi nie wyjaśnił tego wyboru. Parametry secp256k1 są przewidywalne, co ogranicza podejrzenia o ukryte manipulacje, a krzywa pozwala na wydajne obliczenia.

Czy komputery kwantowe zagrażają SHA-256?

W mniejszym stopniu niż podpisom cyfrowym. Algorytmy kwantowe osłabiają funkcje skrótu, ale nie łamią ich wprost, natomiast podpisy na krzywych eliptycznych są bardziej narażone.

Tekst ma charakter edukacyjny i nie stanowi rekomendacji inwestycyjnej.

Zaktualizowano: