Kryptografia krzywych eliptycznych
Z Wikipedii
Elliptic Curve Cryptography (ECC) - jedna z technik kryptografii asymetrycznej, wykorzystująca jako podstawową technikę matematyczną krzywe eliptyczne.
Bezpieczeństwo ECC jest oparte o złożoność obliczeniową dyskretnych logarytmów na krzywych eliptycznych - Elliptic Curve Discrete Logarithm Problem (ECDLP) .
ECC oferuje bezpieczeństwo porównywalne do RSA przy znacznie krótszych kluczach. Ocenia się, że bezpieczeństwo klucza RSA o długości 1024 bitów jest równoważne bezpieczeństwu klucza ECC o długości zaledwie 160 bitów. Z tego powodu ECC jest bardzo atrakcyjnym algorytmem w zastosowaniach, które wymagają bardzo wysokiej wydajności szyfrowania asymetrycznego (algorytm RSA jest stosunkowo wolny) lub oferują bardzo ograniczone środowisko obliczeniowe.
Algorytm podpisu elektronicznego przy użyciu ECC to ECDSA.
Spis treści |
[edytuj] Wykorzystanie ECC w praktyce
Wygaśnięcie patentu na algorytm RSA w 2000 roku spowodowało chętne i masowe jego wykorzystywanie jako znajdującego się od tej pory w domenie publicznej, podczas gdy algorytmy oparte o ECC są objęte licznymi patentami. Właścicielem większości z nich jest kanadyjska firma Certicom, posiadająca ponad 130 patentów związanych z ECC.
Część z patentów jest publicznie podważana przez wiele firm (m.in. Sun) i niezależnych kryptologów, twierdzących, iż analogiczne techniki były znane i prezentowane przez innych autorów przed ich opatentowaniem. Budzi to nieufność dużych producentów oprogramowania, unikających technologii o niejasnym stanie prawnym. Poza tym implementacja algorytmów na krzywych eliptycznych jest bardziej pracochłonna i wymaga szerszej wiedzy niż w przypadku np. RSA.
[edytuj] Dostępność ECC
Stosowanie kryptografii opartej o krzywe eliptyczne jest nadal możliwe bez zgody Certicomu, ponieważ patenty obejmują tylko pewne techniki związane z implementacją algorytmów a nie algorytmy ECC jako takie. Istnieją darmowe i ogólnodostępne implementacje ECC nie objęte patentami (m.in. OpenSSL oraz Mozilla NSS).
Algorytm ECC jest także podstawowym algorytmem podpisu elektronicznego w tzw. Suite B, czyli zestawie algorytmów kryptograficznych rekomendowanym przez amerykańską agencję NSA do zastosowań w biznesie.
[edytuj] Zobacz też
- OpenSSL - biblioteka zawierająca otwartą implementację ECC
[edytuj] Linki zewnętrzne
- NSA "Suite B" zestaw algorytmów kryptograficznych rekomendowanych przez NSA dla biznesu, w tym także ECC
- An Introduction to Elliptic Curve Cryptography
- D.J.Bernstein, Fighting patents