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