Elliptisten käyrien salausmenetelmät
Elliptisten käyrien salausmenetelmät (engl. Elliptic curve cryptography, ECC) ovat elliptisiin käyriin liittyviin laskutoimituksiin perustuvia julkisen avaimen salausmenetelmiä.[1] Konseptin esittelivät 1980-luvun puolivälissä toisistaan riippumatta Neal Koblitz ja Victor S. Miller.[2][3]
Etuna yleisempään RSA:han verrattuna on avainten pieni koko, jonka ansiosta salaukseen liittyvät toiminnot ovat nopeita.[4][5] ECC sopii erityisesti tarkoituksiin, joissa muisti ja laskentakyky on rajoitettu, kuten sirukorteissa ja muissa sulautetuissa järjestelmissä.[6] Toisaalta se on monimutkaisempi toteuttaa, sillä sopivien käyrien valinta edellyttää matemaattista erityisosaamista.[5][7] Turvallisuus perustuu yksisuuntaisen laskutoimituksen käänteisoperaation, tässä tapauksessa diskreetin logaritmin vaikeuteen.[7] Nyrkkisääntönä on myös sellaisen julkisen toteutuksen käyttö, josta ammattilaisetkaan eivät ole löytäneet virheitä.[4] Näitä ovat esimerkiksi niin sanotun sivukanavahyökkäyksen mahdollistavat tietovuotolähteet, joista saatuja ajallisia ja sisällöllisiä tietoja käyttämällä itse algoritmi voidaan murtaa.[8][9][10] Toteutuksiin liittyy myös muita yksityiskohtia, jotka voivat vaarantaa salauksen toimivuuden. Esimerkiksi tarkistetaanko sijoittuvatko pisteet todella käyrälle.[11][12]
Käyttö[muokkaa | muokkaa wikitekstiä]
Käyttö on yleistynyt sitä mukaa kun luottamus RSA-salauksen kestävyyteen on heikentynyt. Sen avaimen pituuteen liittyvät ongelmat korostuvat siirryttäessä vahvempaan salaukseen. Kun RSA:n ja Diffie–Hellmanin murtaminen tavanomaisin menetelmin on arvioitu olevan kenties vain viiden vuoden päässä, on ECC-siirtymä nähty jopa ainoana käyttökelpoisena vaihtoehtona.[13] Pitemmällä tähtäimellä kvanttitietokoneiden kehityksen edistyminen ja sen myötä Shorin algoritmi uhkaa.[14] Proosin ja Zalkan mukaan 2048-bitin RSA:n murtamiseen tarvitaan 4096 kubitin laskentateho, mutta vastaavaan 224-bitin ECC:hen vain 1300–1600.[15] Muun muassa NSA ja EU ovat alkaneet kehittämään kvanttilaskennan kestäviä salausmenetelmiä.[16][17]
Teoria[muokkaa | muokkaa wikitekstiä]
Elliptisen käyrän laskutoimitukset:
- <math>y^2 = x^3 + ax + b \, </math>
Julkisia toteutuksia[muokkaa | muokkaa wikitekstiä]
- Diffie–Hellman avaimenvaihtojärjestelmään perustuva elliptisten käyrien salausmenetelmä (engl. Elliptic Curve Diffie–Hellman, ECDH)
- Elliptisten käyrien allekirjoitusalgoritmi (engl. Elliptic Curve Digital Signature Algorithm, ECDSA)
- Edwardsin käyrien allekirjoitusalgoritmi (engl. Edwards-curve Digital Signature Algorithm, EdDSA)
ECDHE (engl. Elliptic Curve Diffie–Hellman Ephemeral) viittaa lyhytikäisiin parametreihin perustuvaan, jopa kertakäyttöiseen avaimenvaihtoon. Tällöin tieto pysyy salassa, vaikka pääsalausavaimet joskus myöhemmin vaarantuisivat (engl. forward secrecy).[24]
Dual_EC_DRBG (engl. Dual Elliptic Curve Deterministic Random Bit Generator) on pahamaineinen satunnaislukugeneraattori, johon RSA-yhtiön on arvioitu jättäneen NSA:n pyynnöstä niin sanotun takaoven, jonka paljastumisen reaktiot ovat olleet näyttäviä.[25][26] Sitä ei suositella käytettäväksi.[27][28] Muiden julkisen avaimen salausmenetelmien tavoin ECC edellyttää, ettei hyökkääjä voi ennustaa satunnaislukujen luomista.[29]
Edward Snowdenin paljastusten valossa on herännyt epäilyksiä, voiko NIST:n viranomaiskäyttöön suosittelemiin käyriin luottaa ilman pelkoa takaovista.[30]
Lähteet[muokkaa | muokkaa wikitekstiä]
- Hankerson, Vanstone, Menezes: Guide to Elliptic Curve Cryptography. Springer Professional Computing, 2004. ISBN 978-0-387-95273-4.
- Järvinen, Kimmo: Elliptisten käyrien salausmenetelmät ja niiden laskenta ohjelmoitavalla logiikalla. Tietojenkäsittelytiede, heinäkuu 2011, nro 32, s. 34–47. Artikkelin verkkoversio (pdf) Viitattu 6.4.2016.
- Teeriaho, Jouko: Osa4: Julkisen avaimen salaukset: RSA ja Elliptisten käyrien salaus (pdf) (kurssimateriaali) Lapin amk. Arkistoitu 18.4.2016. Viitattu 6.4.2016.
- Nyberg, Antti: Elliptisten käyrien soveltuvuus salausjärjestelmiin (pdf) 27.4.2007. Helsingin yliopisto. Viitattu 6.4.2016.
Viitteet[muokkaa | muokkaa wikitekstiä]
- ↑ Nicolas, Jean-Louis: Tiedonsiirron turvallisuus: Salaus ja sen purkaminen (käännös Paula Kuusalo) Matematiikkalehti Solmu. 14.9.2004. Viitattu 6.4.2016.
- ↑ Koblitz, Neal: Elliptic curve cryptosystems. Mathematics of Computation, 1987, nro 48, s. 203–209. American Mathematical Association. Artikkelin verkkoversio Viitattu 4.5.2016. (englanniksi)
- ↑ Miller, Victor S.: Use of elliptic curves in cryptography. Advances in cryptology – CRYPTO Springer Lecture Notes in Computer Science, 1985, nro 218. Artikkelin verkkoversio (pdf) Viitattu 6.4.2016. (englanniksi)
- ↑ 4,0 4,1 Nuutinen, Markku: Tietoturvan menetelmät: Elliptiset käyrät (pdf) (Tietoturvan perusteet -kurssimateriaali) 5.10.2005. Evtek. Viitattu 6.4.2016.
- ↑ 5,0 5,1 Pietiläinen, Henna: Elliptic curve cryptography on smart cards (pdf) (diplomityö) 30.10.2000. Teknillinen korkeakoulu. Viitattu 6.4.2016. (englanniksi)
- ↑ Düll, Haase, Hinterwälder et al.: High-speed Curve25519 on 8-bit 16-bit and 32-bit microcontrollers (pdf) eprint.iacr.org. 17.4.2015. Iacr.org. Viitattu 11.4.2016. (englanniksi)
- ↑ 7,0 7,1 Linna, Juho: Elliptisiin käyriin perustuvat kryptosysteemit (pdf) (diplomityö) math.tut.fi. 22.2.2005. Tampereen teknillinen yliopisto. Arkistoitu 1.8.2007. Viitattu 11.4.2016.
- ↑ Brumley, Billy Bob & Tuveri, Nicola: Remote Timing Attacks are Still Practical (pdf) 8.6.2011. Iacr.org: Aalto-yliopisto. Viitattu 11.4.2016. (englanniksi)
- ↑ Wong, David: Timing and Lattice Attacks on a Remote ECDSA OpenSSL Server: How Practical Are They Really? (pdf) syyskuu 2015. Iacr.org: University of Bordeaux. Viitattu 11.4.2016. (englanniksi)
- ↑ Allan, Thomas, Brumley, Billy Bob, Falkner, Katrina et al.: Amplifying Side Channels Through Performance Degradation (pdf) eprint.iacr.org. 25.11.2015. Iacr.org. Viitattu 11.4.2016. (englanniksi)
- ↑ Antipa, Adrian & Brown, Daniel et al.: Validation of Elliptic Curve Public Keys 2003. IACR. Viitattu 20.5.2017. (englanniksi)
- ↑ Aumasson, Jean-Philippe: Should Curve25519 keys be validated? Kudelski Security. 25.4.2017. Viitattu 20.5.2017. (englanniksi)
- ↑ Simonite, Tom: Math Advances Raise the Prospect of an Internet Security Crisis (Alex Stamosin lausunto) MIT Technology Review. 2.8.2013. Viitattu 3.5.2016. (englanniksi)
- ↑ Hämäläinen, Pertti: Miten kvanttitietokone murtaisi salauksen? Tietoviikko. 27.7.2016. Viitattu 20.5.2017.
- ↑ Proos, John & Zalka, Christof: Shor's discrete logarithm quantum algorithm for elliptic curves (pdf) (s. 26) University of Waterloo. 22.1.2004. Viitattu 3.5.2016. (englanniksi)
- ↑ NSA acknowledges need for quantum-safe crypto idquantique.com. 14.8.2015. ID Quantique. Arkistoitu 1.7.2016. Viitattu 3.5.2016. (englanniksi)
- ↑ Augot, Batina, Bernstein et al.: Initial recommendations of long-term secure post-quantum systems (pdf) (Post-Quantum Cryptography for Long-Term Security) 7.9.2015. pqcrypto.eu.org: Technische Universiteit Eindhoven. Viitattu 3.5.2016. (englanniksi)
- ↑ RFC 7748 – Elliptic Curves for Security IETF: Internet Research Task Force. Viitattu 17.5.2017. (englanniksi)
- ↑ Things that use Curve25519 ianix.com. Ianix. Viitattu 17.5.2017. (englanniksi)
- ↑ RFC 6605 – Elliptic Curve Digital Signature Algorithm (DSA) for DNSSEC IETF: Internet Engineering Task Force. Viitattu 17.5.2017. (englanniksi)
- ↑ Bos, Halderman, Heninger et al.: Elliptic Curve Cryptography in Practice (pdf) (yleisimmin käytettyjä) marraskuu 2013. Cryptome.org. Viitattu 4.5.2016. (englanniksi)
- ↑ RFC 8032 – Edwards-Curve Digital Signature Algorithm (EdDSA) IETF: Internet Research Task Force. Viitattu 17.5.2017. (englanniksi)
- ↑ Things that use Ed25519 ianix.com. Ianix. Viitattu 17.5.2017. (englanniksi)
- ↑ Miele, Andrea & Lenstra, Arjen K.: Efficient ephemeral elliptic curve cryptographic keys (pdf) EPFL. Viitattu 11.4.2016. (englanniksi)
- ↑ Laitila, Teemu: Tietoturvafirma RSA:ta syytetään takaoven jättämisestä NSA:lle: "Kaikki tiesivät sen vialliseksi" Tivi. 23.12.2013. Viitattu 6.4.2016.
- ↑ Kolehmainen, Aleksi: Viron it-pomo ei halua enää käyttää amerikkalaisten salausmenetelmää Tivi. 23.1.2014. Viitattu 6.4.2016.
- ↑ Green, Matthew: RSA warns developers not to use RSA products A Few Thoughts on Cryptographic Engineering. 20.9.2013. Viitattu 11.4.2016. (englanniksi)
- ↑ Schneier, Bruce: The Strange Story of Dual_EC_DRBG Schneier on Security. 15.11.2007. Viitattu 11.4.2016. (englanniksi)
- ↑ Graham-Cumming, John: Why secure systems require random numbers CloudFlare. 13.9.2013. Viitattu 4.5.2016. (englanniksi)
- ↑ Should we trust the NIST-recommended ECC parameters? crypto.stackexchange.com. 10.9.2013. Stack Exchange. Viitattu 3.5.2016. (englanniksi)
Aiheesta muualla[muokkaa | muokkaa wikitekstiä]
- ECC Tutorial
- A (relatively easy to understand) primer on elliptic curve cryptography
- How to design an elliptic-curve signature system
- SafeCurves: choosing safe curves for elliptic-curve cryptography
- On the Impending Crypto Monoculture
|