Пређи на садржај

Аутентификовано шифровање

С Википедије, слободне енциклопедије
(преусмерено са Autentikacija)
ATM корисник који се аутентификује

Аутентификовано шифровање (АЕ) и аутентификовано шифровање са придруженим подацима (AEAD) су облици шифровања који истовремено обезбеђују поверљивост и аутентичност података.

Аутентификација је чин доказивања тврдње, као што је идентитет корисника рачунарског система. За разлику од идентификације, чина навођења идентитета особе или ствари, аутентификација је процес верификације тог идентитета.[1] То може укључивати потврђивање личних докумената, верификацију аутентичности веб-сајта са дигиталним сертификатом,[2] одређивање старости артефакта помоћу угљениковог датирања или осигурање да производ или документ нису фалсификовани. Садржај

Поред заштите интегритета и поверљивости поруке, аутентификовано шифровање може да обезбеди заштиту од напада са изабраним шифратом (енгл. CCA). Нападач очекује отворене текстове за пажљиво одабране шифрате. Схема за аутентификовано шифровање може да препозна неправилно изграђене шифрате и да одбије да их дешифрује. Овим се спречава да нападач захтева дешифровање шифрата које алгоритам за шифровање није добро изгенерисао. Исправно имплементирано аутентификовано шифровање чини немогућим напад са дешифровањем произвољних шифрата.

Развијено је више специјализованих поступака аутентификованих шифровања предвиђених за примену са симетричним блоковским шифрама. Опште, генеричко решење аутентификованог шифровања може се конструисати комбиновањем алгоритма за шифровањa и аутентикационог кода поруке (енгл. MAC), под условом да:[3]

Програмски интерфејс

[уреди | уреди извор]

Класични програмски интерфејс за реализацију АЕ обезбеђује следеће:

  • Шифровање
    • Улаз: отворени текст, кључ и опционо заглавље отвореног текста које, иако се не шифрује, бива заштићено у погледу аутентичности
    • Излаз: шифрат и аутентикациони блок (аутентикациони код поруке)
  • Дешифровање
    • Улаз: шифрат, кључ, аутентикациони блок и опционо заглавље, ако се користи током шифровања
    • Излаз: отворени текст или грешка, ако аутентикациони блок не одговара шифрату или заглављу

Историја

[уреди | уреди извор]

Потреба за аутентификованим шифровањем проистекла је из запажања да би безбедно комбиновање засебних режима рада блоковских шифара намењене обезбеђењу[4][5], поверљивости и аутентикације, могло бити компликовано и подложно грешкама.

То су потврдили бројни практични напади изазвани неисправном имплементацијом или недостатком аутентификације у протоколима и апликацијама (SSL/TLS).[6]

У оквиру стандарда ISO/IEC 19772:2009 [7] предвиђено је шест различитих аутентификационих начина шифровања (OCB 2.0, Key Wrap, CCM, EAX, Encrypt-then-MAC (EtM), и GCM) су стандардизовани . Још неколико аутентификационих метода шифровања развијено је као одговор на конкурс NIST[8]. Сунђер функције могу се користити у дуплекс режиму за обезбеђивање аутентификованог шифровања.[9]

Беларe и Нампремпре су 2000. године анализирали три начина комбиновања шифровања и MAC примитива и показали да шифровање поруке, а затим примена MAC на шифрат (приступ Encrypt-then-MAC) обезбеђује сигурност против адаптивног напада са изабраним шифратом. Кац и Јунг истраживали су појам под називом „шифровање отпорно на фалсификат“, за који су доказали да имплицира отпорност од напада са изабраним шифратом.

Године 2013. објављен је конкурс за дизајн режима аутентификованог шифровања.[10]

Аутентификовано шифровање са придруженим подацима (AEAD)

[уреди | уреди извор]

АЕ не пружа могућност додавања отвореног текста у ситуацијама када је то потребно, нпр. код додавања IP адресе поруци. Често су нешифровани подаци потребни за преношење заглавља, адреса, портова, верзије протокола и других података потребних да би се одлучило како шифровани текст треба обрадити или послати. Потребно је ове податке проверити иако остају отворени, како би уређаји за обраду могли правилно поступати са подацима. АЕ схема може се модификовати додавањем MAC за аутентификацију отворених података.

Тако настаје AEAD, варијанта AE, која омогућава примаоцу да провери интегритет и шифрованe и нешифрованe информацијe у поруци. АЕ схема, као и АЕAD схема, користе nonce, произвољни број који се може користити само једном у криптографској комуникацији. Ово је неопходно да би се онемогућило да нападач поново успостави везу између делова шифрованих порука под истим кључем приликом поновне употребе схеме, као и да би се заштитио од напада са понављањем, у којем нападач,представљајући се као легитимни корисник, поруку поново шаље. AEAD повезује придружене податке (AD) са шифратом и контекстом у коме се ти подаци појављују, тако да се покушаји, који подразумевају да се валидни шифрат прекопира у други контекст, открију и одбаце. Користи се, на пример, код мрежних пакета.

Приступи аутентификованом шифровању

[уреди | уреди извор]

Encrypt-then-MAC (EtM)

[уреди | уреди извор]

Отворени текст се прво шифрује, а затим се прави MAC на основу добијеног шифрата из резултата. Шифрат и његов MAC се шаљу заједно. Користи се, на пример, у IPsec.[11] Метода је део стандарда ISO/IEC 19772:2009.[7] Ово је једина метода којом се може достићи највећа сигурност у АЕ, али то се може постићи само када је употребљени МAC „јако отпоран на фалсификовање“.[12] У новембру 2014.године ЕтМ проширења TLS и DTLS су објављена. У оквиру SSHv2 предвиђене су различите EtM комбинације шифри. Морају се користити различити кључеви за шифровање и за хеш функцију. У супротном су можда могући неки напади, зависно од методе шифрирања и коришћене хеш функције.

Encrypt-and-MAC (E&M)

[уреди | уреди извор]

MAC се прави на основу отвореног текста, а отворени текст је шифрован без MAC-a. Отворени текст MAC-а и шифрат се шаљу заједно. Користи се, на пример, у SSH.[13] Иако се показало да приступ Е&М сам по себи није јако отпоран на фалсификовање [12], могуће је применити неке мање модификације на SSH и тако га учинити јако отпорним на фалсификовањем.

MAC-then-Encrypt (MtE)

[уреди | уреди извор]

MAC се прави на основу отвореног текста, а затим се отворени текст и MAC заједно шифрују. Шаље се шифрат који садржи шифровани МАC. Користи се, на пример, у оквиру SSL/TLS. [14] Иако није показано да је МтЕ сам по себи јако отпоран на фалсификовање[12], Кравчик (енгл. Krawczyk) је доказао да је SSL/TLS имплементација јако отпорна на фалсификовање и показао да је SSL/TLS у ствари сигуран због коришћења кодирања поред МтЕ механизма.[15] Грешке допуњавања често доводе до напада ораcle допуњавања, као што је Lucky Thirteen.

Референце

[уреди | уреди извор]
  1. ^ „What is Authentication? Definition of Authentication, Authentication Meaning”. The Economic Times. Приступљено 2020-11-15. 
  2. ^ Turner, Dawn M. „Digital Authentication: The Basics”. Cryptomathic. Архивирано из оригинала 14. 8. 2016. г. Приступљено 9. 8. 2016. 
  3. ^ IEEE 802.11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications (PDF). (2007 revision). IEEE-SA. 12. 6. 2007. ISBN 978-0-7381-5656-9. doi:10.1109/IEEESTD.2007.373646. 
  4. ^ M. Bellare; P. Rogaway; D. Wagner. „A Conventional Authenticated-Encryption Mode” (PDF). NIST. Приступљено 12. 3. 2013. „people had been doing rather poorly when they tried to glue together a traditional (privacy-only) encryption scheme and a message authentication code (MAC) 
  5. ^ T. Kohno; J. Viega & D. Whiting. „The CWC Authenticated Encryption (Associated Data) Mode” (PDF). NIST. Приступљено 12. 3. 2013. „it is very easy to accidentally combine secure encryption schemes with secure MACs and still get insecure authenticated encryption schemes 
  6. ^ „Failures of secret-key cryptography” (PDF). Daniel J. Bernstein. Архивирано из оригинала (PDF) 18. 4. 2013. г. Приступљено 12. 3. 2013. 
  7. ^ а б „Information technology -- Security techniques -- Authenticated encryption”. 19772:2009. ISO/IEC. Приступљено 12. 3. 2013. 
  8. ^ „Encryption modes development”. NIST. Приступљено 17. 4. 2013. 
  9. ^ The Keccak Team. „Duplexing The Sponge” (PDF). 
  10. ^ „CAESAR: Competition for Authenticated Encryption: Security, Applicability, and Robustness”. Приступљено 12. 3. 2013. 
  11. ^ „Separate Confidentiality and Integrity Algorithms”. RFC 4303. Internet Engineering Task Force (IETF). Приступљено 12. 9. 2018. 
  12. ^ а б в „Authenticated Encryption: Relations among notions and analysis of the generic composition paradigm”. M. Bellare and C. Namprempre. Архивирано из оригинала 23. 01. 2018. г. Приступљено 13. 4. 2013. 
  13. ^ „Data Integrity”. RFC 4253. Internet Engineering Task Force (IETF). Приступљено 12. 9. 2018. 
  14. ^ „Record Payload Protection”. RFC 5246. Internet Engineering Task Force (IETF). Приступљено 12. 9. 2018. 
  15. ^ „The Order of Encryption and Authentication for Protecting Communications (Or: How Secure is SSL?)” (PDF). H. Krawczyk. Приступљено 13. 4. 2013. 

Литература

[уреди | уреди извор]

Спољашње везе

[уреди | уреди извор]
  1. ^ 11-12-20C8