ECIES (англ. Elliptic Curve Integrated Encryption Scheme) — це схема шифрування на відкритих ключах, що ґрунтується на еліптичних кривих. Цю схему запропонував 2001. ECIES використовується в різних стандартах, наприклад ANSI X9.63, IEEE 1363a, ISO 18033-2 і SEC 1.
Історична довідка
1997 року вчені Михир Беллар і Філ Рогевей винайшли схему DLAES (Discrete Logarithm Augmented Encryption Scheme), яка згодом перейменована на DHAES (Diffie-Hellman Augmented Encryption Scheme) 1998, а пізніше, щоб уникнути плутанини з абревіатурою AES, перейменована на DHIES (Diffie-Hellman Integrated Encryption Scheme). DHIES є вдосконаленою схемою Ель-Гамаля, в якій використовуються еліптичні криві, різні алгоритми імітовставки й хеш-функції.
DHIES була оцінена ANSI й, з деякими модифікаціями, схема включена до стандарту ANSI X9.63 2001. Так само, незалежно з деякими поправками, схема включена до стандарту IEEE 1363 2000. 2004, коли стандарт ANSI X9.63 став загальнодоступним, IEEE переглянула схему з урахуванням переваг двох попередніх стандартів ANSI X9.63 й IEEE 1363, і включила нову схему стандарт IEEE 1363a 2004.
Всі перераховані вище схеми отримали загальну назву ECIES (Elliptic Curve Integrated Encryption Scheme).
2009 одна з версій ECIES ввійшла в стандарт ISO/IEC 18033-2, а 2009 до стандарту SECG SEC 1.
Опис алгоритму
ECIES (Elliptic Curve Integrated Encryption Scheme) має в собі декілька функцій:
- Key Agreement (KA) — функція для генерації загального секрету. Наприклад, протокол Діффі — Геллмана або його модифікації.
- Key Derivation Function (KDF) — функція для генерації загальних ключів з деякого набору даних і параметрів.
- Encriptyon (ENC) — алгоритм шифрування, що використовується обома сторонами.
- Method Authentication Code (MAC) — функція для генерації автентифікаційних даних (імітовставка).
- Hash (HASH) — функція хешування (використовується в MAC і KDF).
Вхідні параметри алгоритму
Перша сторона — Аліса:
- — відкритий ключ Боба
- — власний закритий ключ
- Ε — група точок еліптичної кривої над
- G — циклічна підгрупа групи точок E еліптичної кривої
- g — генератор підгрупи G
Друга сторона — Боб:
- — відкритий ключ
- — власний закритий ключ
- Ε — група точок еліптичної кривої над
- G — підгрупа групи точок E еліптичної кривої
- g — генератор підгрупи G
Шифрування
Припустимо, Аліса хоче послати повідомлення Бобу. Аліси має відкритий ключ Боба у Боба — відповідний закритий ключ , також Аліса генерує тимчасову пару своїх відкритого і закритого ключів. Закриті ключі — елементи кінцевого поля (поля, на якому задана еліптична крива), а відкриті ключі — точки, що належать еліптичній кривій і обчислені як добуток закритого ключа і генератора g еліптичної кривої.
Для відправки повідомлення Аліса виконує наступні дії:
- За допомогою методу генерації загального секрету KA Аліса обчислює загальний секрет = × (за протоколом Діффі — Геллмана).
- Використовуючи отриманий загальний секрет і метод отримання ключів з ключовою і додатковою інформацією KDF, Аліса отримує ключ шифрування , а також ключ для обчислення імітовставки .
- За допомогою симетричного алгоритму шифрування Аліса шифрує відкрите повідомлення ключем і отримує шифротекст .
- Взявши ключ , зашифроване повідомлення та інші, заздалегідь обговорені сторонами параметри, Аліса обчислює тег повідомлення за допомогою функції MAC.
- Аліса відправляє Бобу {, , }.
Розшифрування
Щодо процесу розшифрування кроки, які повинен виконати Боб, є наступними:
- З допомогою отриманого відкритого ключа Аліси й свого закритого ключа отримати загальний секрет = × ключі шифрування і імітовставки .
- За допомогою ключів шифрування й імітовставки обчислити тег повідомлення і порівняти його з отриманим тегом. Якщо вони не збігаються, Боб повинен відхилити повідомлення через невдачу у процедурі перевірки MAC.
- Якщо теги виявляться однаковими, то Боб може продовжити процес, розшифровуючи зашифроване повідомлення , використовуючи симетричний алгоритм Encryption і .
Порівняння з іншими алгоритмами
Безпека ECIES ґрунтується на обчислювальній складності задачі дискретного логарифмування в групі точок еліптичної кривої (ECDLP). Криптографічні алгоритми також можуть ґрунтуватися на обчислювальній складності завдань факторизації (приклад алгоритму: RSA) і дискретного логарифмування (схема Ель-Гамаля). Однак ECDLP вважається найскладнішою з цих трьох задач, що призводить до важливої переваги ECIES: розмір ключа.
Рівень безпеки (біт) | Довжина ключа RSA (біт) | Довжина ключа ECIES (біт) |
---|---|---|
80 | 1024 | 160—223 |
112 | 2048 | 224—255 |
128 | 3072 | 256—283 |
192 | 7680 | 384—511 |
256 | 15360 | 512—571 |
Перевага в розмірі ключа дозволяє ставити менші вимоги до апаратного забезпечення (наприклад, до розмірів буфера, оперативної та фізичної пам'яті; до пропускної здатності каналу у разі передачі ключів мережею).
Важливим недоліком ECIES порівняно з іншими криптографічними алгоритмами є існування декількох версій ECIES, описуваних різними стандартами (ANSI X9.63, IEEE 1363a, ISO/IEC 18033-2 і SECG SEC 1). Відмінності між даними стандартами — вибір конкретних функцій і параметрів для реалізації складових ECIES (KA, KDF, ENC, MAC, HASH). Недолік полягає в тому, що неможливо реалізувати версію ECIES, що задовольняє всім стандартам.
Відомі атаки на ECIES
«М'яка вразливість»
Віктор Шоуп (англ. Victor Shoup) довів, що якщо публічний ключ U не включений у вхідні дані функції KDF і якщо в KDF використовується тільки x-координата розділеного секрету, то ECIES вразливий до атак на основі адаптивного шифротексту (англ. Adaptive Chosen Ciphertext Attacks (CCA2)). Уразливість названа «м'якою», оскільки жодна атака не змогла отримати значущу інформацію з використанням цієї уразливості.
Одне з можливих рішень, запропонованих Шоупом — додати публічний ключ U у вхідні дані функції KDF.
Уразливість при використанні функції XOR
Шоуп також довів, що схема ECIES може бути вразлива, коли функція XOR використовується при шифруванні повідомлень змінної довжини. Зокрема, це може привести до вразливості до атак на основі адаптивного шифротексту (англ. Adaptive Chosen Ciphertext Attacks (CCA2)). Можливі рішення:
- Зафіксувати довжину відкритого тексту.
- Інтерпретувати вихідні дані функції KDF як ||.
- Заборонити використання потокових фільтрів в ECIES (дозволити тільки блочні шифри).
Атака малими підгрупами (англ. Small subgroup attack)
Даний тип атак можливий, коли супротивник спеціально надає невірний публічний ключ. Якщо відправник не перевіряє справжність публічного ключа іншого боку, то супротивник зможе підмінити публічний ключ на ключ меншого розміру з метою отримання розділеного секрету або отримання інформації про закриті ключі відправника. Можливі рішення:
- Перевіряти правильність публічного ключа, наданого приймаючою стороною.
- Замінити розділений секрет на його хеш у вхідних даних функції KDF.
Можливі конфігурації ECIES
Приклад ефективної й безпечної реалізації ECIES, сумісний зі стандартами IEEE 1363a і ISO/IEC 18033-2:
- KA: протокол Діффі — Геллмана
- Hash: SHA-512 (SHA-256 для пристроїв з обмеженими ресурсами).
- KDF: KDF2.
- ENC: AES-128 в режимі зчеплення блоків CBC mode.
- MAC: HMAC-SHA-512 (HMAC-SHA-256 для пристроїв з обмеженими ресурсами).
- Розділення секрету: Використовувати тільки першу координату (без хешування).
- Інтерпретація вихідних даних KDF: ||.
- Схема генерації еліптичної кривої: Brainpool (RFC 5639).
Примітки
- V. Gayoso Martínez, F. Hernandez Alvarez, L. Hernandez Encinas, с. 1—2.
- V. Gayoso Martínez, L. Hernández Encinas, C. Sánchez Ávila, с. 9.
- V. Gayoso Martínez, L. Hernández Encinas, C. Sánchez Ávila, с. 9—10.
- V. Gayoso Martínez, L. Hernández Encinas, C. Sánchez Ávila, с. 10.
- N. Koblitz, с. 3—4.
- V. Gayoso Martínez, L. Hernández Encinas, C. Sánchez Ávila, с. 2.
- V. Shoup, с. 13.
- V. Shoup, с. 38.
- J. Stern, с. 20—21.
- Quisquater, J., Koeune, F., с. 20.
- V. Gayoso Martínez, L. Hernández Encinas, A. Queiruga Dios, с. 7—8.
- V. Gayoso Martínez, L. Hernández Encinas, A. Queiruga Dios, с. 17—18.
Література
Статті
- Víctor Gayoso Martínez, L. Hernández Encinas, Carmen Sánchez Ávila. A Survey of the Elliptic Curve Integrated Encryption Scheme.
- Victor Shoup. A Proposal for an ISO Standard for Public Key Encryption (version 2.1).
- Neha Gupta, Harsh Kumar Singh, Anurag Jain. An Efficient Implementation For Key Management Technique Using Smart Card And ECIES Cryptography.
- V. Gayoso Martínez, F. Hernandez Alvarez, L. Hernandez Encinas. Information Processing and Coding.
- N. Koblitz. Elliptic curve cryptosystems // Mathematics of Computation.
- J. Stern. Evaluation report on the ECIES cryptosystem cryptosystems.
- J. Quisquater, F. Koeune,. ECIES — Security evaluation of the encryption scheme and primitives.
- V. Gayoso Martínez, L. Hernández Encinas, A. Queiruga Dios. ECIES — Security evaluation of the encryption scheme and primitives.
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
ECIES angl Elliptic Curve Integrated Encryption Scheme ce shema shifruvannya na vidkritih klyuchah sho gruntuyetsya na eliptichnih krivih Cyu shemu zaproponuvav 2001 ECIES vikoristovuyetsya v riznih standartah napriklad ANSI X9 63 IEEE 1363a ISO 18033 2 i SEC 1 Istorichna dovidka1997 roku vcheni Mihir Bellar i Fil Rogevej vinajshli shemu DLAES Discrete Logarithm Augmented Encryption Scheme yaka zgodom perejmenovana na DHAES Diffie Hellman Augmented Encryption Scheme 1998 a piznishe shob uniknuti plutanini z abreviaturoyu AES perejmenovana na DHIES Diffie Hellman Integrated Encryption Scheme DHIES ye vdoskonalenoyu shemoyu El Gamalya v yakij vikoristovuyutsya eliptichni krivi rizni algoritmi imitovstavki j hesh funkciyi DHIES bula ocinena ANSI j z deyakimi modifikaciyami shema vklyuchena do standartu ANSI X9 63 2001 Tak samo nezalezhno z deyakimi popravkami shema vklyuchena do standartu IEEE 1363 2000 2004 koli standart ANSI X9 63 stav zagalnodostupnim IEEE pereglyanula shemu z urahuvannyam perevag dvoh poperednih standartiv ANSI X9 63 j IEEE 1363 i vklyuchila novu shemu standart IEEE 1363a 2004 Vsi pererahovani vishe shemi otrimali zagalnu nazvu ECIES Elliptic Curve Integrated Encryption Scheme 2009 odna z versij ECIES vvijshla v standart ISO IEC 18033 2 a 2009 do standartu SECG SEC 1 Opis algoritmuECIES Elliptic Curve Integrated Encryption Scheme maye v sobi dekilka funkcij Key Agreement KA funkciya dlya generaciyi zagalnogo sekretu Napriklad protokol Diffi Gellmana abo jogo modifikaciyi Key Derivation Function KDF funkciya dlya generaciyi zagalnih klyuchiv z deyakogo naboru danih i parametriv Encriptyon ENC algoritm shifruvannya sho vikoristovuyetsya oboma storonami Method Authentication Code MAC funkciya dlya generaciyi avtentifikacijnih danih imitovstavka Hash HASH funkciya heshuvannya vikoristovuyetsya v MAC i KDF Vhidni parametri algoritmu Persha storona Alisa P B displaystyle P B vidkritij klyuch Boba p a displaystyle p a vlasnij zakritij klyuch E grupa tochok eliptichnoyi krivoyi nad G ciklichna pidgrupa grupi tochok E eliptichnoyi krivoyi g generator pidgrupi G Druga storona Bob P A displaystyle P A vidkritij klyuch p b displaystyle p b vlasnij zakritij klyuch E grupa tochok eliptichnoyi krivoyi nad G pidgrupa grupi tochok E eliptichnoyi krivoyi g generator pidgrupi G Shifruvannya Pripustimo Alisa hoche poslati povidomlennya Bobu Alisi maye vidkritij klyuch Boba P B displaystyle P B u Boba vidpovidnij zakritij klyuch p b displaystyle p b takozh Alisa generuye timchasovu paru svoyih vidkritogo P A displaystyle P A i zakritogo p a displaystyle p a klyuchiv Zakriti klyuchi elementi kincevogo polya polya na yakomu zadana eliptichna kriva a vidkriti klyuchi tochki sho nalezhat eliptichnij krivij i obchisleni yak dobutok zakritogo klyucha i generatora g eliptichnoyi krivoyi Dlya vidpravki povidomlennya Alisa vikonuye nastupni diyi Za dopomogoyu metodu generaciyi zagalnogo sekretu KA Alisa obchislyuye zagalnij sekret s displaystyle s p a displaystyle p a P B displaystyle P B za protokolom Diffi Gellmana Vikoristovuyuchi otrimanij zagalnij sekret s displaystyle s i metod otrimannya klyuchiv z klyuchovoyu i dodatkovoyu informaciyeyu KDF Alisa otrimuye klyuch shifruvannya k E N C displaystyle k ENC a takozh klyuch dlya obchislennya imitovstavki k M A C displaystyle k MAC Za dopomogoyu simetrichnogo algoritmu shifruvannya Alisa shifruye vidkrite povidomlennya m displaystyle m klyuchem k E N C displaystyle k ENC i otrimuye shifrotekst c displaystyle c Vzyavshi klyuch k M A C displaystyle k MAC zashifrovane povidomlennya c displaystyle c ta inshi zazdalegid obgovoreni storonami parametri Alisa obchislyuye teg povidomlennya za dopomogoyu funkciyi MAC Alisa vidpravlyaye Bobu P A displaystyle P A t a g displaystyle tag c displaystyle c Rozshifruvannya Shodo procesu rozshifruvannya kroki yaki povinen vikonati Bob ye nastupnimi Z dopomogoyu otrimanogo vidkritogo klyucha Alisi j svogo zakritogo klyucha otrimati zagalnij sekret s displaystyle s p b displaystyle p b P A displaystyle P A klyuchi shifruvannya k E N C displaystyle k ENC i imitovstavki k M A C displaystyle k MAC Za dopomogoyu klyuchiv shifruvannya k E N C displaystyle k ENC j imitovstavki k M A C displaystyle k MAC obchisliti teg povidomlennya i porivnyati jogo z otrimanim tegom Yaksho voni ne zbigayutsya Bob povinen vidhiliti povidomlennya cherez nevdachu u proceduri perevirki MAC Yaksho tegi viyavlyatsya odnakovimi to Bob mozhe prodovzhiti proces rozshifrovuyuchi zashifrovane povidomlennya c displaystyle c vikoristovuyuchi simetrichnij algoritm Encryption i k E N C displaystyle k ENC Porivnyannya z inshimi algoritmamiBezpeka ECIES gruntuyetsya na obchislyuvalnij skladnosti zadachi diskretnogo logarifmuvannya v grupi tochok eliptichnoyi krivoyi ECDLP Kriptografichni algoritmi takozh mozhut gruntuvatisya na obchislyuvalnij skladnosti zavdan faktorizaciyi priklad algoritmu RSA i diskretnogo logarifmuvannya shema El Gamalya Odnak ECDLP vvazhayetsya najskladnishoyu z cih troh zadach sho prizvodit do vazhlivoyi perevagi ECIES rozmir klyucha Porivnyannya dovzhin klyuchiv ECIES i RSA Riven bezpeki bit Dovzhina klyucha RSA bit Dovzhina klyucha ECIES bit 80 1024 160 223 112 2048 224 255 128 3072 256 283 192 7680 384 511 256 15360 512 571 Perevaga v rozmiri klyucha dozvolyaye staviti menshi vimogi do aparatnogo zabezpechennya napriklad do rozmiriv bufera operativnoyi ta fizichnoyi pam yati do propusknoyi zdatnosti kanalu u razi peredachi klyuchiv merezheyu Vazhlivim nedolikom ECIES porivnyano z inshimi kriptografichnimi algoritmami ye isnuvannya dekilkoh versij ECIES opisuvanih riznimi standartami ANSI X9 63 IEEE 1363a ISO IEC 18033 2 i SECG SEC 1 Vidminnosti mizh danimi standartami vibir konkretnih funkcij i parametriv dlya realizaciyi skladovih ECIES KA KDF ENC MAC HASH Nedolik polyagaye v tomu sho nemozhlivo realizuvati versiyu ECIES sho zadovolnyaye vsim standartam Vidomi ataki na ECIES M yaka vrazlivist Viktor Shoup angl Victor Shoup doviv sho yaksho publichnij klyuch U ne vklyuchenij u vhidni dani funkciyi KDF i yaksho v KDF vikoristovuyetsya tilki x koordinata rozdilenogo sekretu to ECIES vrazlivij do atak na osnovi adaptivnogo shifrotekstu angl Adaptive Chosen Ciphertext Attacks CCA2 Urazlivist nazvana m yakoyu oskilki zhodna ataka ne zmogla otrimati znachushu informaciyu z vikoristannyam ciyeyi urazlivosti Odne z mozhlivih rishen zaproponovanih Shoupom dodati publichnij klyuch U u vhidni dani funkciyi KDF Urazlivist pri vikoristanni funkciyi XOR Shoup takozh doviv sho shema ECIES mozhe buti vrazliva koli funkciya XOR vikoristovuyetsya pri shifruvanni povidomlen zminnoyi dovzhini Zokrema ce mozhe privesti do vrazlivosti do atak na osnovi adaptivnogo shifrotekstu angl Adaptive Chosen Ciphertext Attacks CCA2 Mozhlivi rishennya Zafiksuvati dovzhinu vidkritogo tekstu Interpretuvati vihidni dani funkciyi KDF yak k M A C displaystyle k MAC k E N C displaystyle k ENC Zaboroniti vikoristannya potokovih filtriv v ECIES dozvoliti tilki blochni shifri Ataka malimi pidgrupami angl Small subgroup attack Danij tip atak mozhlivij koli suprotivnik specialno nadaye nevirnij publichnij klyuch Yaksho vidpravnik ne pereviryaye spravzhnist publichnogo klyucha inshogo boku to suprotivnik zmozhe pidminiti publichnij klyuch na klyuch menshogo rozmiru z metoyu otrimannya rozdilenogo sekretu abo otrimannya informaciyi pro zakriti klyuchi vidpravnika Mozhlivi rishennya Pereviryati pravilnist publichnogo klyucha nadanogo prijmayuchoyu storonoyu Zaminiti rozdilenij sekret na jogo hesh u vhidnih danih funkciyi KDF Mozhlivi konfiguraciyi ECIESPriklad efektivnoyi j bezpechnoyi realizaciyi ECIES sumisnij zi standartami IEEE 1363a i ISO IEC 18033 2 KA protokol Diffi Gellmana Hash SHA 512 SHA 256 dlya pristroyiv z obmezhenimi resursami KDF KDF2 ENC AES 128 v rezhimi zcheplennya blokiv CBC mode MAC HMAC SHA 512 HMAC SHA 256 dlya pristroyiv z obmezhenimi resursami Rozdilennya sekretu Vikoristovuvati tilki pershu koordinatu bez heshuvannya Interpretaciya vihidnih danih KDF k M A C displaystyle k MAC k E N C displaystyle k ENC Shema generaciyi eliptichnoyi krivoyi Brainpool RFC 5639 PrimitkiV Gayoso Martinez F Hernandez Alvarez L Hernandez Encinas s 1 2 V Gayoso Martinez L Hernandez Encinas C Sanchez Avila s 9 V Gayoso Martinez L Hernandez Encinas C Sanchez Avila s 9 10 V Gayoso Martinez L Hernandez Encinas C Sanchez Avila s 10 N Koblitz s 3 4 V Gayoso Martinez L Hernandez Encinas C Sanchez Avila s 2 V Shoup s 13 V Shoup s 38 J Stern s 20 21 Quisquater J Koeune F s 20 V Gayoso Martinez L Hernandez Encinas A Queiruga Dios s 7 8 V Gayoso Martinez L Hernandez Encinas A Queiruga Dios s 17 18 LiteraturaStatti Victor Gayoso Martinez L Hernandez Encinas Carmen Sanchez Avila A Survey of the Elliptic Curve Integrated Encryption Scheme Victor Shoup A Proposal for an ISO Standard for Public Key Encryption version 2 1 Neha Gupta Harsh Kumar Singh Anurag Jain An Efficient Implementation For Key Management Technique Using Smart Card And ECIES Cryptography V Gayoso Martinez F Hernandez Alvarez L Hernandez Encinas Information Processing and Coding N Koblitz Elliptic curve cryptosystems Mathematics of Computation J Stern Evaluation report on the ECIES cryptosystem cryptosystems J Quisquater F Koeune ECIES Security evaluation of the encryption scheme and primitives V Gayoso Martinez L Hernandez Encinas A Queiruga Dios ECIES Security evaluation of the encryption scheme and primitives