NESSIE ( New European Schemes for Signatures , Integrity, and Encryptions , New European Algorithms for Electronic Signature, Integrity and Encryption) je evropský výzkumný projekt, jehož cílem je definovat bezpečné šifrovací algoritmy.
Projekt byl srovnatelný s NIST AES a japonským projektem CRYPTREC , i když od obou obsahoval značné rozdíly. Zejména dochází k překrývání a neshodám mezi volbami a doporučeními od NESSIE a CRYPTREC. Mezi účastníky projektů NESSIE a CRYPTREC byli přední kryptografové z celého světa. NESSIE byl navržen pro měření a hodnocení kvality šifrovacích projektů v několika kategoriích. V březnu 2000 byla vyhlášena veřejná soutěž, do které bylo podáno 42 přihlášek. V únoru 2003 bylo vybráno dvanáct algoritmů. Kromě toho bylo také vybráno pět algoritmů , které jsou již široce známé, ale nebyly představeny projektu. Projekt NESSIE veřejně oznámil, že „ve vybraných algoritmech nebyly nalezeny žádné slabiny“ [1] .
Kryptanalytici z více než deseti různých zemí se snažili všemi možnými způsoby napadnout poskytnutých 42 šifrovacích algoritmů, aby odhalili jejich slabiny a zranitelnosti. Kromě toho byla hodnocena také výkonnost algoritmů (jak jsou rychlé). A do roku 2001 přežilo pouze 24 ze 42 šifrovacích algoritmů . Po druhé fázi výběru, která skončila v únoru 2003, bylo vybráno 12 algoritmů . Projekt NESSIE navíc doporučil 5 algoritmů z široce známých a volně dostupných algoritmů, pro které nebyla podána žádost o účast v projektu.
Na počátku 20. století se konala soutěž NESSIE, do které bylo zasláno 42 přihlášek. Hlavním úkolem projektu bylo určit nejsilnější kryptografické algoritmy. Jak název algoritmu napovídá, cíle soutěže NESSIE byly mnohem širší než cíle soutěže AES. [2] Stejně jako v soutěži AES byly algoritmy účastnící se soutěže zaslány téměř z celého světa. Japonsko se navíc ukázalo být absolutním lídrem v počtu algoritmů zvažovaných v soutěži - z 39 účastníků soutěže bylo v Japonsku vyvinuto 8. [2] Hlavními kritérii, podle kterých byly algoritmy v soutěži NESSIE hodnoceny, byla důvěrnost, integrita dat a autentizace. [3]
V rámci soutěže NESSIE byly uvažovány algoritmy kategorií: blokové symetrické šifrování (do soutěže bylo přijato 17 algoritmů), streamingové šifrování (6 algoritmů), výpočet autentizačních kódů zpráv (Message Authentication Code - MAC, 2 algoritmy) , hashování (1 algoritmus), asymetrické šifrování (5 algoritmů), elektronický digitální podpis (7 algoritmů), identifikace (1 algoritmus). Do druhého kola prošlo pouze 17 algoritmů, které neměly žádné zjevné nedostatky (CS-Cipher, Hierocrypt-L1, Hierocrypt-3, IDEA, Khazad, Anubis, MISTY1, Nimbus, NUSH, SAFER++, Grand Cru, Noekeon, Q, RC6, SC2000, Camellia, SHACAL). [2] Cílem projektu bylo široké šíření výsledků soutěže a dosažení konsenzu na základě těchto výsledků prostřednictvím vhodných fór (projektová průmyslová rada, 5. rámcový program [4] a různé normalizační orgány). Konečným cílem bylo udržet silnou pozici evropského výzkumu a zároveň posílit pozici evropského průmyslu v kryptografii. [3]
Tato část popisuje obecná kritéria výběru, typ požadovaných algoritmů a bezpečnostní požadavky pro každý typ šifrovacího algoritmu, které byly zveřejněny na webu NESSIE, když byly algoritmy přijaty ke zvážení.
Hlavním kritériem výběru je, že algoritmy musí být dlouhodobě bezpečné, musí splňovat požadavky trhu, být vysoce výkonné a flexibilní.
Bezpečnost je nejdůležitějším kritériem. Proces hodnocení bezpečnosti také zohlednil dopad událostí mimo projekt NESSIE (např. nové útoky nebo metody analýzy).
Druhé kritérium souvisí s požadavky trhu. Požadavky trhu souvisí s potřebou algoritmu, jeho pohodlím a snadností použití a možností mezinárodního použití.
Třetím kritériem je výkon šifrovacího algoritmu na určitém hardwaru. U softwaru jsme uvažovali o 8bitových procesorech (jako u levných platebních karet s integrovaným mikroprocesorem), 32bitových procesorech (například stará rodina Pentium) a moderních 64bitových procesorech.
Čtvrtým kritériem je flexibilita algoritmu. Je zřejmé, že je žádoucí použít algoritmus na jiném hardwaru.
Pro symetrické šifry existují dvě hlavní úrovně zabezpečení – normální a vysoká. Minimální požadavky na symetrickou šifru k dosažení úrovně zabezpečení jsou uvedeny níže.
Blokové šifrya) Vysoká bezpečnost . Délka klíče je minimálně 256 bitů. Velikost bloku alespoň 128 bitů
b) Normální zabezpečení. Délka klíče je minimálně 128 bitů. Velikost bloku je alespoň 128 bitů.
c) Normální v době výzkumu. Klíč je minimálně 128 bitů. Velikost bloku 64 bitů
Synchronní proudové šifryvýška. Délka klíče je minimálně 256 bitů. Vnitřní paměť alespoň 256 bitů.
b) Normální. Délka klíče je minimálně 128 bitů. Vnitřní paměť alespoň 128 bitů.
Samosynchronizující proudové šifryvýška. Délka klíče je minimálně 256 bitů. Vnitřní paměť alespoň 256 bitů.
b) Normální. Délka klíče je minimálně 128 bitů. Vnitřní paměť alespoň 128 bitů.
Ověřovací kódy zprávAlgoritmus musí podporovat výstupní zprávy libovolné délky až do délky klíče včetně.
výška. Délka klíče je minimálně 256 bitů.
b) Normální. Délka klíče je minimálně 128 bitů.
Hašovací funkce odolné proti kolizivýška. Výstupní délka je minimálně 512 bitů.
b) Normální. Výstupní délka je minimálně 256 bitů.
Jednosměrné hašovací funkcevýška. Výstupní délka je minimálně 256 bitů.
b) Normální. Výstupní délka je minimálně 128 bitů.
Bezpečnostní parametry by měly být zvoleny tak, aby nejúčinnější útok na šifru vyžadoval výpočetní úsilí v řádu 280 3-DES šifrování.
Asymetrické šifrovací algoritmy (deterministické nebo randomizované).Minimální výpočetní úsilí pro útok by mělo být řádově 2 80 3-DES šifrování
Asymetrické digitální podpisyMinimální výpočetní úsilí pro útok by mělo být řádově 280 3-DES šifrování.
Asymetrická identifikační schémataMinimální výpočetní úsilí pro útok by mělo být řádově 280 3-DES šifrování. Pravděpodobnost chyby musí být menší než 2 −32 .
Šifrovací algoritmy jsou ekvivalentem zámků, pečetí a identifikačních dokumentů na internetu. Používají se k ochraně osobních údajů, online bankovních transakcí, kreditních karet, elektronického obchodování a ovládání internetu. Proto je projekt NESSIE tak důležitý. Co jsou šifrovací algoritmy? Šifrovací algoritmy jsou matematické vzorce a operace, které se používají k zabezpečení elektronických informací. Šifrovací algoritmy jsou nezbytné k ochraně citlivých informací, jako jsou lékařské údaje, finanční informace a osobní identifikační čísla (Personal Identification Numbers, PIN) před zvědavýma očima. Projekt NESSIE identifikuje tři různé typy šifrovacích algoritmů: blokové šifry, proudové šifry a šifrovací algoritmy s veřejným klíčem. Algoritmy digitálního podpisu (v kombinaci s hashovacími funkcemi) nahrazují ruční podpisy v elektronických transakcích. Podobnou roli mohou plnit i MAC algoritmy. Identifikační protokoly umožňují spolehlivě ověřit identitu účastníka na druhém konci linky.
Normy hrají důležitou roli při výběru šifrovacího algoritmu. Ale projekt NESSIE není standardizovaný projekt (normy NESSIE nejsou psány). NESSIE je mostem mezi výzkumnou, vývojovou a uživatelskou komunitou, která testuje a porovnává algoritmy před jejich standardizací. Jak je uvedeno výše, projekt NESSIE vybral 12 algoritmů ze 42 navržených vývojáři: kromě toho bylo k vybraným 12 přidáno 5 známých standardizovaných algoritmů (označeno *):