600 likes | 775 Views
Krzysztof Gaj Electrical and Computer Engineering George Mason University. Mijający rok w kryptografii i kryptoanalizie przegląd wydarzeń, nowości i tendencji. eSTREAM. Funkcje skrótu. eBATS & CACE. Nowe Normy. Nowe Ataki. eSTREAM. Funkcje skrótu. eBATS & CACE. Nowe Normy.
E N D
Krzysztof Gaj Electrical and Computer Engineering George Mason University • Mijający rok w kryptografii i kryptoanalizie • przegląd wydarzeń, nowości • i tendencji
eSTREAM Funkcje skrótu eBATS & CACE Nowe Normy Nowe Ataki
eSTREAM Funkcje skrótu eBATS & CACE Nowe Normy Nowe Ataki
NESSIE: Zwycięzcy konkursu - 2002 Szyfry Strumieniowe Wszystkie analizowane algorytmy odrzucone ze względu na wykryte słabości
eSTREAM – konkurs na szyfr strumieniowy (1) PROFIL 1 • Szyfr strumieniowy dostosowany do implementacji • programowych o dużej szybkości • Długość klucza - 128 bitów • Wektor inicjalizacyjny – 64 bity i 128 bitów PROFIL 2 • Szyfr strumieniowy dostosowany do implementacji • sprzętowych z ograniczona pojemnością pamięci, • liczbą bramek lub poborem mocy • Długość klucza - 80 bitów • Wektor inicjalizacyjny – 32 bity i 64 bitów
Konkurs na szyfr strumieniowy (3) Planowany harmonogram XI.2004 Wezwanie do zgłaszania algorytmów 29.IV.2005 Termin nadsyłania zgłoszeń 26-28.V.2005 Warsztaty w Aarchus, Dania III.2006 Koniec Fazy I VII.2006 Początek Fazy II 31.I.-01.II.2007 Warsztaty SASC w Bochum, Niemcy III. 2007 Publikacja raportu z Fazy II IV. 2007 Rozpoczęcie Fazy III 13-14.II.2008 Warsztaty SASC w Lozannie, Szwajcaria 15.V.2008 Publikacja końcowego raportu czas
eSTREAM: Faza 1 IV. 2005-III. 2006 34 szyfry Software Software & Hardware Hardware 9 13 12 ABC CryptMT/Fubuki DICING DRAGON Frogbit A HC-256 Mir-1 Py SOSEMANUK F-FCSR Hermes8 LEX MAG NLS A Phelix A Polar Bear POMARANCH Rabbit SSS A TRBDK3 YAEA Yamb Salsa20 Achterbahn DECIM Edon-80 Grain MICKEY MOSQUITO SFINKS A Trivium TSC-3 VEST A WG Zk-Crypt
eSTREAM: Faza 2 IV. 2006-III. 2007 34 szyfry Software Hardware 17 pozostałych 13 21 Achterbahn-128/80 DECIM v2 Edon-80 F-FCSR-H (-16) Hermes8 LEX MICKEY v2 MOUSTIQUE NLS v2 A Polar Bear v2 POMARANCH v3 Rabbit Salsa20 TSC-4 VEST (P2) A WG (P2) Zk-Crypt (P2) A DRAGON HC-128 (-256) LEX Py Salsa20 SOSEMANUK ABC v3 CryptMT v3 DICING (P2) NLS v2 A Phelix A Polar Bear v2 Rabbit 6 czołowych (“focus”) 4 czołowych (“focus”) Grain v1 MICKEY-128 v2 Phelix A Trivium 7 pozostałych
eSTREAM: Faza 3 IV. 2007-III. 2008 16 szyfrów Software Hardware 8 8 CryptMT (CryptMT Version 3) Dragon HC (HC-128 and HC-256) LEX (LEX-128, LEX-192 and LEX-256) NLS (NLSv2, encryption-only) Rabbit Salsa20 SOSEMANUK DECIM (DECIM v2 and DECIM-128) Edon80 F-FCSR (F-FCSR-H v2 and F-FCSR-16) Grain (Grain v1 and Grain-128) MICKEY (MICKEY 2.0 and MICKEY-128 2.0) Moustique Pomaranch (Pomaranch Version 3) Trivium
eSTREAM: Kryteria oceny kandydatów w Fazie 3 • Bezpieczeństwo • Wyniki implementacji w porównaniu do szyfru AES i innych kandydatów • Elastyczność • Łatwość implementacji
Porównanie kandydatów w profilu programowym Daniel Bernstein, The University of Illinois at Chicago Marzec 2008 Metodologia • Pomiary dla: • 10 różnych mikroprocesorow • 6 różnych scenariuszy aplikacji • “long”: Szyfrowanie jednego długiego strumienia danych • “agility”: Szyfrowanie wielu równoległych strumieni danych • z różnymi kluczami w 256 bajtowych blokach • “1500”: Zmiana IV i szyfrowanie 1500-bajtowego pakietu • “576”: ZmianaIV i szyfrowanie 576-bajtowego pakietu • “40”: ZmianaIV i szyfrowanie 40-bajtowego pakietu • “40k”: Zmiana klucza, zmiana IV i szyfrowanie 40-bajtowego pakietu
Przykładowy arkusz wyników D. Bernstein, III.2008
Wyniki Implementacji ProgramowychIntel Pentium M 1700 MHz Salsa20/8 Salsa20/12
Porównanie kandydatów w profilu sprzętowym George Mason University Metodologia • implementacja i analiza wszystkich kandydatów • w profilu sprzętowym zakwalifikowanych do Fazy 3, • (łącznie 15 implementacji 8 szyfrów i ich wersji) • szyfry zaimplementowane początkowo przez studentów • w ramach regularnego przedmiotu, a następnie • optymalizowane przez członków grupy badawczej • układy FPGA serii Spartan 3 o małej powierzchni i niskim koszcie • pewne optymalizacje specyficzne dla układów FPGA • firmy Xilinx
Porównanie kandydatów w profilu sprzętowym FPGA: Xilinx Spartan 3
Porównanie kandydatów w profilu sprzętowym T. Good and M. Benaissa, University of Sheffield, UK Metodologia • implementacja i analiza wszystkich kandydatów • w profilu sprzętowym zakwalifikowanych do Fazy 3, • (łącznie 27 implementacji 8 szyfrów i ich wersji) • implementacje w technologii ASIC zoptymalizowane dla następujących warunków/aplikacji: • - maksymalna częstotliwość zegara - lokalna sieć bezprzewodowa (WLAN, 10 Mbit/s) • - bezprzewodowe sieci sensorowe i układy RFID (100 kHz) • podstawowe zbiorcze kryterium • iloczyn: moc*powierzchnia*czas • dwa dodatkowe kryteria: elastyczność i łatwość implementacji
Porównanie kandydatów w profilu sprzętowym ASICs: 0.13 m
eSTREAM: Ranking kandydatów przez uczestników warsztatów SASC 2008 Software Hardware 8 8
Komisja • Ranking brany pod uwagę, ale ostateczna decyzja podjęta przez Komisję
eSTREAM Portfolio (zwycięzcy konkursu, IV. 2008) 8 szyfrów Software Hardware 4 4 HC-128 Rabbit Salsa20/12 SOSEMANUK F-FCSR-H v2 Grain v1 MICKEY v2 Trivium 80 bitów klucza 128 bitów klucza
eSTREAM Portfolio PROFIL 1 - Oprogramowanie HC-128 - Hongjun Wu COSIC, KU LeuvenBelgia Rabbit - Martin Boesgaard, Mette Vesterager, Thomas Christensen and Erik ZennerCRYPTICO A/SDania Salsa20/12 - Daniel Bernstein University of Illinois at ChicagoUSA SOSEMANUK - Come Berbain, Olivier Billet, Anne Canteaut, Nicolas Courtois, Henri Gilbert, Louis Goubin, Aline Gouget, Louis Granboulan, Cédric Lauradoux, Marine Minier, Thomas Pornin, Hervé Sibert Francja
eSTREAM Portfolio PROFIL 2 - Sprzęt F-FCSR-H v2 - Thierry Berger, François Arnault and Cédric Lauradoux XLIM, Universite de Limoges, INRIA Francja Grain v1 - Martin Hell1, Thomas Johansson1 and Willi Meier2 Lund University,Szwecja & FH Aargau,Szwajcaria MICKEY v2 - Steve Babbage1 and Matthew Dodd2 1Vodafone Group R&D,2niezalezny konsultantWlk. Brytania Trivium - Christophe De Cannière and Bart Preneel COSIC, KU Leuven Belgia
Grain: Keystream Generator zi keystream
LFSR = Linear Feedback Shift Register przykład 5-stopniowego liniowego rejestru przesuwającego ze sprzężeniem zwrotnym si si+1 si+2 si+3 si+4 si+5 si+5 = si + si+1 + si+3 + oznacza XOR
NFSR = Nonlinear Feedback Shift Register przyklad 5-stopniowego nieliniowego rejestru przesuwającego ze sprzężeniem zwrotnym bi bi+1 bi+2 bi+3 bi+4 bi+5 bi+5 = bibi+1 + bi+3 + oznacza XOR bmbn oznacza bm AND bn
Trivium – Schemat Blokowy s69 s286s287 t3 t1 t2 s91s92 s264 s171 s175s176
Optymalizacja szybkości szyfrów opartych na rejestrach przesuwających si+81 si+80 si+80 si si+79 si si+1 si+79 d=1 d=2 Si+80=si+62 + si+52 + si+38 + si+23 + si+13 + si Si+81=si+63 + si+53 + si+39 + si+24 + si+14 + si+1
Implementacja szyfrów eSTREAM w sprzęcie FPGA: Xilinx Spartan 3 Przepustowość [Mbit/s] Legenda: T64 12000 G – Grain M – Mickey T – Trivium 10000 8000 T32 6000 4000 T16 G16 G8 2000 T8 G4 G2 G1 M T1-4 0 Powierzchnia [CLB slices] 0 50 100 150 200 250 300 350 400
Różnice pomiędzy konkursami eSTREAM i AES AES eSTREAM Opracowanie normy w dziedzinie szyfrów blokowych Stymulacja badań w dziedzinie szyfrów strumieniowych Cel Szyfr efektywny w oprogramowaniu i w sprzęcie Osobne kategorie dla szyfrów efektywnych w oprogramowaniu i w sprzęcie Wymagania Portfolio 4 szyfrów w każdej z dwóch kategorii Rezultat 1 zwycięzca Tylko drobne poprawki akceptowane w trakcie konkursu Nowe wersje szyfrów akceptowane w trakcie konkursu Poprawki
eSTREAM: Wnioski • Trudności w konstrukcji bezpiecznego szyfru samosynchronizującego. • Wszystkie szyfry zakwalifikowane do portfolio to szyfry • synchroniczne. • Trudności z dodaniem funkcji uwierzytelniania do szyfru • strumieniowego. • Trudności w ocenie bezpieczeństwa kandydatów: • - Ograniczona ilość czasu na badania. • - Brak zgodności odnośnie znaczenia określonych ataków. Część kandydatów (np. TPy) wyeliminowana w oparciu • o rzekome ataki naruszające założenia sformułowane przez • autorów szyfru.
eSTREAM: Wnioski • Istnieją szyfry, które albo w ogóle nie startowały w konkursie (jak np. SNOW 2.0) lub też zostały wyeliminowane w trakcie konkursu, takie jak • TPy, Phelix – wyeliminowane w oparciu o rzekome ataki • Lex – szyfr oparty o AES • Moustique – szyfr samosynchronizujący się, które w dalszym ciągu warte są dalszych badań i powinny być rozważane jako poważni kandydaci do przyszłych norm.
eSTREAM Funkcje skrótu eBATS & CACE Nowe Normy Nowe Ataki
Stan funkcji skrótu złamana; Wang, Feng, Lai, Yu, Crypto 2004 (ręcznie, bez pomocy komputera) MD4 złamana; Wang, Feng, Lai, Yu, Crypto 2004 (ręcznie, bez pomocy komputera) atak z 240 operacjiCrypto 2004 MD5 RIPEMD SHA-0 złamana; Wang, Feng, Lai, Yu Crypto 2004 (1 godz. na PC) atak z 263 operacji Wang, Yin, Yu, sierpień 2005 SHA-1 RIPEMD-160 SHA-256, SHA-384, SHA-512
Konkurs na nową funkcję skrótu Kalendarium (1) • 2007 • Sprecyzowanie: • minimalnych kryteriów akceptacji nowej funkcji skrótu • wymagań na zgłoszenia • kryteriów ewaluacji • 29.X. 2007 - Wezwanie do zgłaszania kandydatów na konkurs • 2008 • 31.X.2008 – termin nadsyłania zgłoszeń • 2009 • 2 kwartał – pierwsza konferencja poświęcona prezentacji funkcji • nadesłanych na konkurs
Konkurs na nowa funkcje skrótu Kalendarium (2) 2010 2 kwartał – druga konferencja, poświęcona wynikom analizy funkcji nadesłanych na konkurs 3 kwartał - wybór finalistów i publikacja raportu z pierwszej rundy 4 kwartał - autorzy wybranych funkcji mają możliwość wprowadzenia drobnych poprawek do ich algorytmów 2012 1 kwartał – ostatnia konferencja konkursu dyskusja nad komentarzami nadesłanymi na temat finałowych algorytmów 2 kwartał – wybór zwycięzcy konkursu i publikacja końcowego raportu 3 kwartał – publikacja roboczej wersji normy 4 kwartał – publikacja finalnej wersji normy
Podstawowe wymagania na nową funkcję skrótu • Musi zapewniać skróty o długości 224, 256, 384 i 512 bitów • Dostępna na całym świecie bez opłat licencyjnych • Zdolna do ochrony wrażliwych informacji przez dziesiątki lat • Odpowiednia do użycia w ramach - podpisów cyfrowych FIPS 186-2 - kodów uwierzytelniających wiadomość, HMAC, FIPS 198 - schematów uzgadniania kluczy, SP 800-56A - generatorów liczb losowych, SP 800-90 • Bezpieczeństwo co najmniej takie samo jak algorytmów rodziny SHA-2, przy znacznie poprawionej efektywności
Pożądane własności nowej funkcji skrótu • Możliwość zrównoleglenia obliczeń • Atak na SHA-2 nie powinien prowadzić do ataku na SHA-3 • Elastyczny dla dużego zakresu aplikacji i typów implementacji • Preferowana jedna rodzina dla wszystkich długości skrótu • Wybieralny parametr bezpieczeństwa, taki jak liczba rund, z zaleceniami odnośnie właściwej wartości • Złożoność ataku znajdującego • Kolizje: 2n/2 • Przeciwobrazy: 2n • Drugie przeciwobrazy: 2n-k, dla wiadomości o długości mniejszej niż 2k
Międzynarodowe WarsztatyQuo vadis cryptology 2008Hash Functions and Stream Ciphers piątek, 30 maja, hotel LORD • Zaproszeni wykładowcy: • Prof. Vincent Rijmen, KU Leuven and Graz University of Technology • Prof. Bart Preneel, KU Leuven • Prof. Josef Pieprzyk, Macquarie University, Sydney, Australia • Dr Krystian Matusiewicz, Technical University of Denmark • Moderatorzy: • DrKrzysztof Gaj, George Mason University, USA Dr Arkadiusz Orlowski, Instytut Fizyki PAN & Katedra Informatyki SGGW • Dr Krystian Matusiewicz, Technical University of Denmark
eSTREAM Funkcje skrótu eBATS & CACE Nowe Normy Nowe Ataki
eBATS eCRYPT Benchmarking of AsymmeTric Systems ( BAT = nietoperz ) Nowy projekt w ramach eCRYPT, którego celem jest zmierzenie różnic pomiędzy szybkością różnych systemów asymetrycznych (publicznego klucza)
eBATS Pomysłodawcy: Daniel Bernstein - University of Illinois at Chicago, USA Tanja Lange - Technische Universiteit Eindhoven, Holandia Początek: końcówka roku 2006 Strona www: http://ebats.cr.yp.to
eBATS Cel: • Pomiar • czasu i ilości pamięci • wymaganej przez • asymetryczne systemy • podpisów cyfrowych • szyfrowania / wymiany kluczy • dzielenia sekretu
eBATS oparty jest o publiczne nadsyłanie BATs - Benchmarkable Asymmetric Tools BAT to implementacja kryptosystemu publicznego klucza przy użyciu kilku funkcji ze standardowym interfejsem Na przykład: keypair() - do generacji kluczy ciphertext() - do szyfrowania plaintext() - do deszyfrowania
BATMAN Benchmarking of Asymmetric Tools on Multiple Architectures, Non-Interactively Pomiary czasu i zajętości pamięci wykonywane są automatycznie na wielu komputerach przy użyciu środowiska programowego o nazwie BATMAN BATMAN jest dostępny pod adresem www.ecrypt.eu.org/ebats
BATMAN Rezultaty pokazują, • który kryptosystem jest szybszy na danym komputerze • która implementacja określonego kryptosystemu jest szybsza na danym komputerze • który komputer jest szybszy dla danej implementacji określonego kryptosystemu BATMAN • sam wybiera najlepszy kompilator • najlepsze opcje kompilatora
eBATS eBATS umożliwia zgłaszanie i testowanie - nowego kryptosystemu - nowej implementacji znanego kryptosystemu - nowego komputera do pomiarów wszystkich dotychczas zgłoszonych implementacji Implementacje mogą być zoptymalizowane - dla określonego typu procesora, komputera, i systemu operacyjnego - dla określonego rozmiaru klucza Wszystkie implementacje korzystają z tych samych - funkcji skrótu - generatora liczb pseudolosowych
eBATS Wybrane zgłoszenia Schematy podpisów: donald 1024 – 1024-bitowy DSA ecdonald - ECDSA z różnymi krzywymi NIST ronald k - k-bitowy RSA, k=1024, 2048, 4096 Sflashv2 - podpis SFLASHv2 Rainbow - podpis Rainbow bls - krótkie podpisy BLS itd., itp. w sumie 110 przypadków
Warsztaty SPEEDSoftware Performance Enhancement for Encryption and Decryption 11-12 czerwca 2007, Amsterdam, Holandia Zaproszeni wykładowcy: Daniel J. Bernstein (University of Illinois at Chicago, USA) Torbjörn Granlund (SWOX, Sweden) Dag Arne Osvik (EPFL, Switzerland) Daniel Page (University of Bristol, UK) Matt Robshaw (France Telecom R+D, France)
Projekt eBATS Końcowy raport oczekiwany w maju 2008 roku Planowane rozszerzenia do pomiarów: - funkcji skrótu - kryptosystemow opartych na tożsamości (identity based cryptosystems), itp.