Estymacja kosztów łamania systemu kryptograficznego
Transkrypt
Estymacja kosztów łamania systemu kryptograficznego
Estymacja kosztów łamania systemu kryptograficznego Andrzej Chmielowiec [email protected] Centrum Modelowania Matematycznego Sigma Estymacja kosztów łamania systemu kryptograficznego – p. 1/?? Plan prezentacji Wprowadzenie Długość kluczy, a bezpieczeństwo Koszt ataku Warunki na nieopłacalność ataku Podsumowanie Estymacja kosztów łamania systemu kryptograficznego – p. 2/?? Komu może przydać sie˛ ta analiza? Tym którzy przetważaja˛ duże ilości informacji. Tym którzy przetważaja˛ cenne inforamcje. Tym którzy chca˛ chronić informacje przez długi czas. Tym którzy projektuja˛ system. Estymacja kosztów łamania systemu kryptograficznego – p. 3/?? Równoważne długości kluczy Algorytm Funkcja RSA/ symetryczny skrótu DSA/DH 80 112 128 192 256 160 224 256 384 512 1024 2048 3072 7680 15360 ECC 160 224 256 384 512 Estymacja kosztów łamania systemu kryptograficznego – p. 4/?? Złożoność obliczniowa ataków (1) Przez złożoność ataku na algorytm kryptograficzny rozumiemy liczbe˛ operacji elementarnych niezbednych ˛ do znaleziania klucza. Algorytm symetryczny ΦSY M (B) = eln(2)B . Funkcja skrótu ΦHASH (B) = e ln(2)B 2 . Estymacja kosztów łamania systemu kryptograficznego – p. 5/?? Złożoność obliczniowa ataków (2) Klasyczne algorytmy asymetryczne (RSA, DSA, DH) ΦCLAS (B) = e β(ln 2B )1/3 (ln ln 2B )2/3 . Algorytmy asymetryczne bazujace ˛ na krzywych eliptycznych (ECDSA, ECDH) ΦECC (B) = e ln(2)B 2 . Estymacja kosztów łamania systemu kryptograficznego – p. 6/?? Założenia modelu Szybkość z jaka˛ spada jednostka mocy obliczeniowej jest znana i dana funkcja˛ e−αt (dla prawa Moore’a α = 32 ln(2)). Funkcja premii P (t) za odszyfrowanie wiadomości po czasie t jest nierosnaca ˛ i znana jest jej wartość P0 dla t = 0. Znany jest czas T eksploatacji systemu. Znany jest koszt Q budowy maszyny łamiacej ˛ klucze. Estymacja kosztów łamania systemu kryptograficznego – p. 7/?? Funkcja kosztu Poniższa formuła przedstawia funkcje˛ kosztu łamania systemu kryptograficznego. Qe−αt1 T − t1 C(t1 , t2 ) = − P (t2 − t1 ) . t2 − t1 t2 − t1 Jeżeli funkcja dla pewnych wartości t1 , t2 ∈ [0, T ) przyjmuje wartości ujemne, to łamanie systemu jest opłacalne. Estymacja kosztów łamania systemu kryptograficznego – p. 8/?? Funkcja pomocnicza Funkcja pomocnicza Qe−αt1 q(t1 ) = T − t1 przyjmuje w przedziale [0, T ) najmniejsza˛ wartość w punkcie t1 = T − α1 . Estymacja kosztów łamania systemu kryptograficznego – p. 9/?? Nieopłacalność ataku na kryptosystem (1) Z faktu, że funkcja premii P jest nierosnaca ˛ i P (0) = P0 wynika zwiazek ˛ Qe−αt1 T − t1 C(t1 , t2 ) = − P (t2 − t1 ) t2 − t1 t2 − t1 Qe−αt1 T − t1 − P0 . ≥ t2 − t1 t2 − t1 Qe−αt1 t2 −t1 1 − P0 tT2−t Jeśli zatem −t1 > 0, to atak na kryptosystem jest nieopłacalny. Estymacja kosztów łamania systemu kryptograficznego – p. 10/?? Nieopłacalność ataku na kryptosystem (2) Z poprzedniego zwiazku ˛ otrzymujemy Qe−αt1 P0 < = q(t1 ) ≤ αQe−αT +1. T − t1 Ostatecznie warunek na nieopłacalność łamania systemu kryptograficznego przyjmuje postać P0 eαT −1 Q> . α Estymacja kosztów łamania systemu kryptograficznego – p. 11/?? Niezależność od strategii atakujacego ˛ P0 eαT −1 α Spełnienie warunku Q > powoduje, że atak jest niopłacalny niezależnie od tego jaka˛ strategie˛ stosuje atakujacy. ˛ CT = Z δ(t1 , t2 )C(t1 , t2 ) ≥ 0. 0≤t1 ,t2 <T Estymacja kosztów łamania systemu kryptograficznego – p. 12/?? Nieopłacalność ataku warunek ogólny (1) Niech Φ(B) bedzie ˛ złożonościa˛ obliczeniowa˛ ataku na system kryptograficzny o kluczach długości B bitów. Załóżmy ponadto, że Q0 oznacza koszt maszyny, która łamie taki system z kluczami długości B0 bitów w chwili T0 . Wtedy Q(t, B) = Q0 e −α(t−T0 ) Φ(B) Φ(B0 ) określa koszt maszyny łamiacej ˛ system z kluczami długości B bitów w chwili t. Estymacja kosztów łamania systemu kryptograficznego – p. 13/?? Nieopłacalność ataku warunek ogólny (2) Jeżeli system ktyptograficzny spełnia warunek P0 eα(T2−T1 )−1 Q(T1 , B) > α α(T2 −T1 )−1 Φ(B) P e 0 −α(T1 −T0 ) Q0 e > Φ(B0 ) α P0 eα(T2 −T0)−1 Φ(B) > Φ(B0 ) αQ0 to atak na niego jest nieopłacalny do chwili T2 . Estymacja kosztów łamania systemu kryptograficznego – p. 14/?? Nieopłacalność ataku szyfry symetryczne (1) Dla szyfrów symetrycznych przyjmujemy, że maszyna˛ łamiac ˛ a˛ klucze jest COPACOBANA, dla której mamy Q0 = 740 PLN, B0 = 56, T0 = 2006, α = 32 ln(2), Φ(B) = eln(2)B . Estymacja kosztów łamania systemu kryptograficznego – p. 15/?? Nieopłacalność ataku szyfry symetryczne (2) Jeśli liczba bitów klucza szyfru symetrycznego spełnia nierówność BSY M 1 P0 > B0 + α(T2 − T0 ) − 1 + ln ln(2) αQ0 ! to atak na taki szyfr jest nieopłacalny. Estymacja kosztów łamania systemu kryptograficznego – p. 16/?? Nieopłacalność ataku funkcje skrótu (1) Dla funkcji skrótu przyjmujemy, że maszyna˛ łamiac ˛ a˛ klucze jest COPACOBANA, dla której mamy Q0 = 740 PLN, B0 = 112, T0 = 2006, α = 32 ln(2), Φ(B) = e ln(2)B 2 . Estymacja kosztów łamania systemu kryptograficznego – p. 17/?? Nieopłacalność ataku funkcje skrótu (2) Jeśli długość skrótu spełnia nierówność BHASH 2 P0 > B0 + α(T2 − T0 ) − 1 + ln ln(2) αQ0 ! to atak na taka˛ funkcje˛ jest nieopłacalny. Estymacja kosztów łamania systemu kryptograficznego – p. 18/?? Nieopłacalność ataku RSA i DSA (1) Dla kryptosystemów RSA i DSA przyjmujemy, że maszyna˛ łamiac ˛ a˛ klucze jest TWIRL, dla której mamy Q0 = 3.000.000 PLN, B0 = 1024, T0 = 2004, α = 32 ln(2), Φ(B) = e 1.9(ln 2B )1/3 (ln ln 2B )2/3 . Estymacja kosztów łamania systemu kryptograficznego – p. 19/?? Nieopłacalność ataku RSA i DSA (2) Jeśli długość kluczy spełnia nierówność P0 eα(T2 −T0)−1 Φ(B) > Φ(B0 ) αQ0 to atak jest nieopłacalny. Estymacja kosztów łamania systemu kryptograficznego – p. 20/?? Nieopłacalność ataku krzywe eliptyczne (1) Dla kryptosystemów opartych na krzywych eliptycznych przyjmujemy, że maszyna˛ łamiac ˛ a˛ klucze jest COPACOBANA, dla której mamy Q0 = 2.200.000 PLN, B0 = 112, T0 = 2006, α = 32 ln(2), Φ(B) = e ln(2)B 2 . Estymacja kosztów łamania systemu kryptograficznego – p. 21/?? Nieopłacalność ataku krzywe eliptyczne (2) Jeśli długość kluczy spełnia nierówność BECC 2 P0 > B0 + α(T2 − T0 ) − 1 + ln ln(2) αQ0 ! to atak jest nieopłacalny. Estymacja kosztów łamania systemu kryptograficznego – p. 22/?? Podsumowanie Korzystajac ˛ ze wzorów należy pamietać, ˛ że T2 oznacza czas zakończenia ochrony kryptograficznej, a nie czas po którym dany algorytm nie bedzie ˛ już stosowany, P0 powinno raczej wyrażać maksymalna, ˛ a nie średnia˛ wartość informacji przetwarzanej przez system. Estymacja kosztów łamania systemu kryptograficznego – p. 23/??