ECIES

ECIES (eng. Elliptic Curve Integrated Encryption Scheme ) er et offentligt nøglekrypteringsskema baseret på elliptiske kurver. Denne ordning blev foreslået af Victor Shoup i 2001. ECIES bruges i forskellige standarder såsom ANSI X9.63, IEEE 1363a, ISO 18033-2 og SECG SEC 1.

Historisk baggrund

I 1997 opfandt forskerne Mihir Bellare og Phillip Rogaway DLAES-ordningen ( Discrete Logarithm Augmented Encryption Scheme ), som efterfølgende blev omdøbt til DHAES ( Diffie-Hellman Augmented Encryption Scheme ) i 1998 og senere for at undgå forveksling med forkortelsen AES , omdøbt til DHIES ( Diffie-Hellman Integrated Encryption Scheme ). DHIES er et avanceret ElGamal- skema , der bruger elliptiske kurver, forskellige simuleringsindsættelsesalgoritmer og hash-funktioner. [en]

DHIES blev evalueret af ANSI, og med nogle ændringer blev ordningen inkluderet i ANSI X9.63-standarden i 2001. Også uafhængigt, med nogle ændringer, blev ordningen inkluderet i IEEE 1363-standarden i 2000. I 2004, da ANSI X9.63-standarden blev offentlig, reviderede IEEE ordningen for at tage hensyn til fordelene ved de to tidligere ANSI X9.63- og IEEE 1363-standarder og inkluderede den nye ordning i IEEE 1363a-standarden i 2004.

Alle ovenstående skemaer kaldes samlet ECIES (Elliptic Curve Integrated Encryption Scheme ).

I 2009 blev en af ​​ECIES-versionerne inkluderet i ISO/IEC 18033-2-standarden og i 2009 i SECG SEC 1-standarden. [1]

Beskrivelse af algoritmen

ECIES (Elliptic Curve Integrated Encryption Scheme) inkluderer flere funktioner:

  1. Key Agreement (KA) er en funktion til at generere en fælles hemmelighed. For eksempel Diffie-Hellman-protokollen eller dens modifikationer.
  2. Key Derivation Function (KDF) er en funktion til generering af fælles nøgler fra nogle sæt data og parametre.
  3. Encryption (ENC) er en krypteringsalgoritme, der bruges af begge parter.
  4. Method Authentication Code (MAC) - en funktion til generering af godkendelsesdata (imitationsindsættelse).
  5. Hash (HASH) er en hashing-funktion (bruges i MAC og KDF).

Algoritme input parametre

Første side - Alice : [2]

Anden side - Bob: [2]

Kryptering

Antag at Alice vil sende en besked til Bob. Alice har Bobs offentlige nøgle , Bob har den tilsvarende private nøgle , og Alice genererer et midlertidigt par af sine offentlige og private nøgler. De private nøgler er elementerne i det endelige felt (feltet, hvorpå den elliptiske kurve er angivet), og de offentlige nøgler er de punkter, der hører til den elliptiske kurve og beregnes som produktet af den private nøgle og generatoren g af den elliptiske kurve. [3]

For at sende en besked gør Alice følgende: [3]

Dekryptering

Med hensyn til dekrypteringsprocessen er de trin, som Bob skal følge, som følger: [4]

Sammenligning med andre algoritmer

Sikkerheden af ​​ECIES er afhængig af beregningskompleksiteten af ​​Elliptic Curve Group Discrete Logaritm Problem ( ECDLP ). Kryptografiske algoritmer kan også stole på den beregningsmæssige kompleksitet af faktoriseringsproblemer (algoritmeeksempel: RSA ) og diskret logaritme ( ElGamal-skema ). ECDLP anses dog for at være den sværeste [5] af disse tre opgaver, hvilket fører til en vigtig fordel ved ECIES: nøglestørrelse.

Sammenligning af ECIES og RSA nøglelængder [6]
Sikkerhedsniveau (bit) RSA nøglelængde (bits) ECIES nøglelængde (bits)
80 1024 160-223
112 2048 224-255
128 3072 256-283
192 7680 384-511
256 15360 512-571

Fordelen i nøglestørrelsen giver dig mulighed for at stille mindre krav til hardwaren (for eksempel til størrelsen af ​​bufferen, RAM og fysisk hukommelse; til kanalbåndbredden ved overførsel af nøgler over netværket).

En vigtig ulempe ved ECIES sammenlignet med andre kryptografiske algoritmer er eksistensen af ​​flere versioner af ECIES beskrevet af forskellige standarder ( ANSI X9.63, IEEE 1363a, ISO/IEC 18033-2 og SECG SEC 1). Forskellene mellem disse standarder er valget af specifikke funktioner og parametre til implementering af ECIES-komponenterne (KA, KDF, ENC, MAC, HASH). Ulempen er, at det ikke er muligt at implementere en version af ECIES, der opfylder alle standarder [6] .

Bemærkelsesværdige angreb på ECIES

"Blød sårbarhed"

Victor Shope beviste [7] , at hvis den offentlige nøgle U ikke er inkluderet i KDF-inputtet, og hvis kun x-koordinaten for den delte hemmelighed bruges i KDF, så er ECIES modtagelig for Adaptive Chosen Ciphertext-angreb (CCA2) )). Sårbarheden kaldes "blød", fordi intet angreb var i stand til at opnå meningsfuld information ved hjælp af denne sårbarhed.

En mulig løsning foreslået af Shoup er at tilføje den offentlige nøgle U til input fra KDF.

Sårbarhed ved brug af XOR-funktionen

Shoup beviste også [8] , at ECIES-skemaet kan være sårbart, når XOR-funktionen bruges til kryptering af meddelelser med variabel længde. Dette kan især føre til en sårbarhed over for Adaptive Chosen Ciphertext Attacks (CCA2)-angreb . Mulige løsninger:

Lille undergruppeangreb (eng. ''Små undergruppeangreb'')

Denne type angreb er mulig, når en modstander specifikt giver en forkert offentlig nøgle. Hvis afsenderen ikke autentificerer den anden parts offentlige nøgle, så vil modstanderen kunne erstatte den offentlige nøgle med en mindre nøgle for at få en delt hemmelighed eller få information om afsenderens private nøgle. Mulige løsninger:

Mulige ECIES-konfigurationer

Et eksempel [12] på en effektiv og sikker implementering af ECIES i overensstemmelse med IEEE 1363a og ISO/IEC 18033-2:

Noter

  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 , p. 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 , p. ti.
  5. N. Koblitz , s. 3-4.
  6. 1 2 V. Gayoso Martínez, L. Hernández Encinas, C. Sánchez Ávila , p. 2.
  7. V. Shoup , s. 13.
  8. 1 2 V. Shoup , s. 38.
  9. J. Stern , s. 20-21.
  10. Quisquater, J., Koeune, F. , s. tyve.
  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

Artikler