ECIES

ECIES (eng. Elliptic Curve Integrated Encryption Scheme ) är ett krypteringsschema med publik nyckel baserat på elliptiska kurvor. Detta system föreslogs av Victor Shoup 2001. ECIES används i olika standarder som ANSI X9.63, IEEE 1363a, ISO 18033-2 och SECG SEC 1.

Historisk bakgrund

År 1997 uppfann forskarna Mihir Bellare och Phillip Rogaway DLAES-schemat ( Discrete Logaritm Augmented Encryption Scheme ), som därefter döptes om till DHAES ( Diffie-Hellman Augmented Encryption Scheme ) 1998, och senare, för att undvika förväxling med förkortningen AES , omdöpt till DHIES ( Diffie-Hellman Integrated Encryption Scheme ). DHIES är ett avancerat ElGamal- schema som använder elliptiska kurvor, olika simuleringsinsättningsalgoritmer och hashfunktioner. [ett]

DHIES utvärderades av ANSI och, med vissa modifieringar, ingick schemat i ANSI X9.63-standarden 2001. Också oberoende, med vissa ändringar, inkluderades systemet i IEEE 1363-standarden år 2000. 2004, när ANSI X9.63-standarden blev offentlig, reviderade IEEE schemat för att ta hänsyn till fördelarna med de två tidigare ANSI X9.63- och IEEE 1363-standarderna, och inkluderade det nya schemat i IEEE 1363a-standarden 2004.

Alla ovanstående scheman kallas gemensamt ECIES (Elliptic Curve Integrated Encryption Scheme ).

2009 inkluderades en av ECIES-versionerna i standarden ISO/IEC 18033-2 och 2009 i standarden SECG SEC 1. [1]

Beskrivning av algoritmen

ECIES (Elliptic Curve Integrated Encryption Scheme) innehåller flera funktioner:

  1. Nyckelavtal (KA) är en funktion för att generera en delad hemlighet. Till exempel Diffie-Hellman-protokollet eller dess modifieringar.
  2. Key Derivation Function (KDF) är en funktion för att generera vanliga nycklar från en uppsättning data och parametrar.
  3. Encryption (ENC) är en krypteringsalgoritm som används av båda parter.
  4. Method Authentication Code (MAC) - en funktion för att generera autentiseringsdata (imitationsinsättning).
  5. Hash (HASH) är en hashfunktion (används i MAC och KDF).

Algoritmindataparametrar

Första sidan - Alice : [2]

Andra sidan - Bob: [2]

Kryptering

Anta att Alice vill skicka ett meddelande till Bob. Alice har Bobs publika nyckel , Bob har motsvarande privata nyckel och Alice genererar ett tillfälligt par av sina offentliga och privata nycklar. De privata nycklarna är elementen i det slutliga fältet (fältet på vilket den elliptiska kurvan anges), och de publika nycklarna är de punkter som hör till den elliptiska kurvan och beräknas som produkten av den privata nyckeln och generatorn g av den elliptiska kurvan. [3]

För att skicka ett meddelande gör Alice följande: [3]

Dekryptering

När det gäller dekrypteringsprocessen är stegen som Bob måste följa följande: [4]

Jämförelse med andra algoritmer

Säkerheten för ECIES förlitar sig på beräkningskomplexiteten hos Elliptic Curve Group Discrete Logaritm Problem ( ECDLP ). Kryptografiska algoritmer kan också förlita sig på beräkningskomplexiteten hos faktoriseringsproblem (algoritmexempel: RSA ) och diskret logaritm ( ElGamal-schema ). ECDLP anses dock vara den svåraste [5] av dessa tre uppgifter, vilket leder till en viktig fördel med ECIES: nyckelstorlek.

Jämförelse av ECIES- och RSA-nyckellängder [6]
Säkerhetsnivå (bit) RSA-nyckellängd (bitar) ECIES-nyckellängd (bitar)
80 1024 160-223
112 2048 224-255
128 3072 256-283
192 7680 384-511
256 15360 512-571

Fördelen i nyckelstorleken gör att du kan ställa mindre krav på hårdvaran (till exempel på storleken på bufferten, RAM och fysiskt minne; på kanalbandbredden vid överföring av nycklar över nätverket).

En viktig nackdel med ECIES jämfört med andra kryptografiska algoritmer är att det finns flera versioner av ECIES som beskrivs av olika standarder ( ANSI X9.63, IEEE 1363a, ISO/IEC 18033-2 och SECG SEC 1). Skillnaderna mellan dessa standarder är valet av specifika funktioner och parametrar för implementeringen av ECIES-komponenterna (KA, KDF, ENC, MAC, HASH). Nackdelen är att det inte går att implementera en version av ECIES som uppfyller alla standarder [6] .

Anmärkningsvärda attacker mot ECIES

"Mjuk sårbarhet"

Victor Shope bevisade [7] att om den publika nyckeln U inte ingår i KDF-inmatningen och om endast x-koordinaten för den delade hemligheten används i KDF, så är ECIES mottaglig för Adaptive Chosen Ciphertext Attacks (CCA2) )). Sårbarheten kallas "mjuk" eftersom ingen attack kunde få meningsfull information med denna sårbarhet.

En möjlig lösning som föreslås av Shoup är att lägga till den publika nyckeln U till inmatningen av KDF.

Sårbarhet vid användning av XOR-funktionen

Shoup bevisade också [8] att ECIES-schemat kan vara sårbart när XOR-funktionen används vid kryptering av meddelanden med variabel längd. I synnerhet kan detta leda till en sårbarhet för Adaptive Chosen Ciphertext Attacks (CCA2)-attacker . Möjliga lösningar:

Liten undergruppsattack (eng. ''Små undergruppsattack'')

Denna typ av attack är möjlig när en motståndare specifikt tillhandahåller en felaktig offentlig nyckel. Om avsändaren inte autentiserar den andra partens publika nyckel, kommer motståndaren att kunna ersätta den publika nyckeln med en mindre nyckel för att få en delad hemlighet eller få information om avsändarens privata nyckel. Möjliga lösningar:

Möjliga ECIES-konfigurationer

Ett exempel [12] på en effektiv och säker implementering av ECIES i enlighet med IEEE 1363a och ISO/IEC 18033-2:

Anteckningar

  1. 1 2 V. Gayoso Mart´ınez, F. Hernandez Alvarez, L. Hernandez Encinas , pp. 1-2.
  2. 1 2 V. Gayoso Martínez, L. Hernández Encinas, C. Sánchez Ávila , sid. 9.
  3. 1 2 V. Gayoso Martínez, L. Hernández Encinas, C. Sánchez Ávila , pp. 9-10.
  4. V. Gayoso Martínez, L. Hernández Encinas, C. Sánchez Ávila , sid. tio.
  5. N. Koblitz , sid. 3-4.
  6. 1 2 V. Gayoso Martínez, L. Hernández Encinas, C. Sánchez Ávila , sid. 2.
  7. V. Shoup , sid. 13.
  8. 1 2 V. Shoup , sid. 38.
  9. J. Stern , sid. 20-21.
  10. Quisquater, J., Koeune, F. , sid. tjugo.
  11. 1 2 V. Gayoso Martínez, L. Hernández Encinas, A. Queiruga Dios , pp. 7-8.
  12. V. Gayoso Martínez, L. Hernández Encinas, A. Queiruga Dios , pp. 17-18.

Litteratur

Artiklar