Kryptografia krzywych eliptycznych (ECC) wykorzystuje matematyczne właściwości krzywych eliptycznych do tworzenia systemów kryptograficznych z kluczem publicznym. Jak każda kryptografia klucza publicznego, ECC opiera się na funkcjach matematycznych, które są łatwe do obliczenia w jednym kierunku, ale bardzo trudne do odwrócenia. W przypadku ECC trudność ta polega na niewykonalności obliczenia logarytmu dyskretnego losowego elementu krzywej eliptycznej w odniesieniu do powszechnie znanego punktu bazowego lub w „problemie logarytmu dyskretnego krzywej eliptycznej” (ECDLP)1, Algorytm podpisu cyfrowego krzywej eliptycznej (ECDSA) jest szeroko stosowanym algorytmem podpisywania dla kryptografii klucza publicznego, który wykorzystuje ECC.
Wydajność
Dla większości użytkowników ważną kwestią do zapamiętania jest to, że w porównaniu z bardziej dojrzałym i szeroko stosowanym algorytmem RSA, ECDSA oferuje równoważną siłę kryptograficzną przy znacznie mniejszych rozmiarach kluczy. Chociaż szyfrowanie symetryczne jest obecnie najbardziej wydajnym schematem, pewna forma szyfrowania asymetrycznego jest konieczna dla bezpiecznego SSL /TLS uścisk ręki. Algorytmy ECC oferują najbliższy asymetryczny odpowiednik szyfrowania symetrycznego pod względem wydajności. Jak pokazano w poniższej tabeli, rozmiary kluczy ECDSA zwiększają się liniowo wraz z symetrycznymi kluczami szyfrującymi o równoważnej sile (jako 2 × rozmiar klucza symetrycznego), podczas gdy klucze RSA szybko stają się znacznie większe:
Równoważny rozmiar klucza (bity) | ||
---|---|---|
Symetryczny | ECDSA | RSA |
80 | 160 | 1024 |
112 | 224 | 2048 |
128 | 256 | 3072 |
192 | 384 | 7680 |
256 | 512 | 15360 |
Mniejsze rozmiary kluczy ECDSA oznaczają, że silniejsze szyfrowanie można osiągnąć przy mniejszej mocy obliczeniowej i przepustowości sieci niż RSA; jest to szczególnie korzystne w przypadku urządzeń mobilnych i Internetu rzeczy (IoT) o niskiej mocy, które stają się coraz bardziej wszechobecne.
ECDSA został zatwierdzony przez amerykański Narodowy Instytut Standardów i Technologii (NIST) i jest obecnie zatwierdzony przez amerykańską Narodową Agencję Bezpieczeństwa (NSA) do ochrony ściśle tajnych informacji o kluczowym rozmiarze 384 bitów (co odpowiada 7680- bitowy klucz RSA).