RSA so dnevi šteti, ECC je novejši, hitrejši in manj ranljiv.
Večina izdanih certifikatov SSL / TLS uporablja RSA šifriranje javnega ključa. To lahko pripišemo dejstvu, da ljudje še vedno mislijo, da kriptosistemi, ki temeljijo na eliptični krivulji (ECC – Elliptic Curve-based cryptosystems), še vedno niso široko podprti s strani brskalnikov in operacijskih sistemov končnih uporabnikov. To seveda ne drži.
Vsi moderni operacijski sistemi in brskalniki podpirajo ECC
Tukaj je razčlenitev podpore priljubljenih operacijskih sistemov:
Operacijski sistem | Najmanjša zahtevana različica |
Apple OS X | OS X 10.6 |
Microsoft Windows | Windows Vista |
Red Hat Enterprise Linux | 6.5 |
iOS | iOS 7.x |
Android OS | 3.x |
Microsoft Windows Phone | 7.x |
Brskalnik | Najmanjša zahtevana različica |
Apple Safari | 4 |
Google Chrome | 1.0 |
Microsoft Internet Explorer | 7 |
Mozilla Firefox | 2.0 |
Stremite v prihodnost, ne preteklost – prednost dajte varnosti
RSA je v zadnjih vzdihljajih, zaznanih je mnogo ranljivosti. ECC pa ponuja številne ugodnosti:
- ključi ECC so manjši, kar pomeni boljšo učinkovitost z manj obremenitev
- ECC lestvice bolje, RSA postane okoren, ko ključi rastejo
- ECC je manj občutljiv na Quantum Computing.
Poglejmo torej, kako kako ECC deluje
Eliptična krivuljna kriptografija 101 – Elliptic Curve Cryptography 101
Eliptična krivuljna kriptografija je pristop k šifriranju, ki uporablja matematiko za eliptičnimi krivuljami. Ključno je, da se vsaka točka eliptične krivulje, ki jo preslikava, odraža preko osi X – vodoravne črte na grafu – kar daje simetrijo eliptične krivulje.
Na tej krivulji izberemo dve točki – vrednosti (A in B), ki ju pozna lastnik zasebnega ključa.
Sedaj pa skozi ti dve točki A in B potegnemo črto. Ta linija bo prestregla eliptično krivuljo na tretji točki. Odseva se čez os X in postane naslednja točka v zaporedju. Torej, tukaj lahko vidite, da točke A in B načrtujemo, poiščemo, kje se seka tretjič, in načrtujemo inverzno na drugi strani X osi kot točko C.
Zdaj to storite še enkrat, vendar tokrat potegnite črto med točko A in C. Poiščite tretjo točko, ki prestreza eliptično krivuljo in narišite njeno inverzijo na drugi strani osi X kot D.
Število presečnih točk ali pik je znano le imetniku zasebnega ključa, kar onemogoča, da bi ga kdo drug dešifriral. Očitno je to kriptosistem javnega ključa, ki se uporablja za ključno simetrično izmenjavo ključev, podobno kot RSA. Namesto uporabe primarne faktorizacije za generiranje ključev, uporablja eliptične krivulje. Oba dosegata isto, vendar ima ECC nekatere prednosti.
ECC ključ je manjši
RSA ključi so okorni. Standard je 2.048 bitov, nekatere organizacije celo več. Zaradi velikosti ključev in rač. virov, ki so potrebni za šifriranje RSA je vaša spletna stran lahko počasna. Dolžina ključa tudi ni sorazmerna z varnostjo. Kljub temu, da so ECC ključi bistveno manjši, jih je veliko težje razbiti.
V tabeli je prikazano, kako velik ključ je potreben za enako kriptografsko moč:
velikost ECC ključa | velikost RSA ključa |
160-bit | 1024-bit |
224-bit | 2048-bit |
256-bit | 3072-bit |
384-bit | 7680-bit |
521-bit | 15360-bit |
ECC se bolje odziva kot RSA
V porabi sredstev je RSA dražji. In ker se grožnje sodobnemu šifriranju povečujejo, bo to postalo še dražje, saj bo moral biti RSA ključ vedno večji in večji. Večje kot je podjetje, večje breme za omrežje postane dešifriranje. In kot je v zgornji tabeli prikazano, je RSA ključ bolj potraten in večji pritisk za vaše omrežje. ECC to težavo ublaži.
ECC je bolj kvantno odporen
Obstaja oblika kriptografije, ki temelji na eliptični krivulji in je pokazala obljubo: “supersingular elliptic curve isogeny cryptography”. To je praksa, ki je priljubljena pri zagovornikih zasebnosti, kjer tudi če je zasebni ključ prestrežen, ključi seje, ki jih je ustvaril, ne bodo ogroženi. Ampak o tem drugič.
Kako pridobim ECC SSL certifikat?
Potrdilo mora podpirati ECC in to možnost izberete, ko naročate SSL certifikat pri CA. Cena je ista. Ni potrebno čakati na nov ključ, certifikat se lahko tudi obnovi.
VIR slik in vsebine: thesslstore.com/blog/