Docsity
Docsity

Przygotuj się do egzaminów
Przygotuj się do egzaminów

Studiuj dzięki licznym zasobom udostępnionym na Docsity


Otrzymaj punkty, aby pobrać
Otrzymaj punkty, aby pobrać

Zdobywaj punkty, pomagając innym studentom lub wykup je w ramach planu Premium


Informacje i wskazówki
Informacje i wskazówki

Algebraiczne aspekty kryptografii, Streszczenia z Matematyka obliczeniowa

Opracowanie z zakresu tematu

Typologia: Streszczenia

2019/2020

Załadowany 16.07.2020

Henryka
Henryka 🇵🇱

4.5

(155)

405 dokumenty

1 / 2

Toggle sidebar

Pobierz cały dokument

poprzez zakup abonamentu Premium

i zdobądź brakujące punkty w ciągu 48 godzin

bg1
ALGEBRAICZNE ASPEKTY KRYPTOGRAFII
LISTA 1:Kryptografia. Funkcje skr´otu. Podpis cyfrowy. Wymiana kluczy.
Kryptosystem RSA. Nadawca A przesy la wiadomo´c do Adresata B.
Dla du˙zych liczb pierwszych piqniech n=p·q. Niech eidspe lniaj¸a owno´sci
(e, φ(n)) = 1 i d·e= 1(modφ(n)), gdzie φjest funkcj¸a Eulera 1iejest ”rz¸edu liczby”
n. Para (n, e) tworzy klucz publiczny adresata B. Szyfrowanie wiadomo´sci x(podanej
w postaci liczby min(p, q)) odbywa si¸e przez wyliczenie reszty swxe/n. Wtedy B
oblicza xjako reszt¸e x0u lamka sd/n.
System bazuje na nast¸epuj¸acej owno´sci w pier´scieniu ilorazowym Z/nZ:
x0=sd=xd·e=x(n)+1 =x·(xφ(n))t=x,
gdzie owno´c xφ(n)= 1(modn) wynika z twierdzenia Eulera.
Zadanie 1.0. Niech redzie minimaln¸a liczb¸a naturaln¸a >0 tak¸a, ˙ze sr=
1(modn).
(a) Poda´c szybki algorytm znalezienia wiadomo´sci x, je´sli n, e, s ira znane. Zas-
tosowa´c do przypadku n= 2047 = 23 ·89, e= 179 znajduj¸ac odpowiednie rid.
(b) Poda´c szybki probabilistyczny algorytm znalezienia rozk ladu n=pq, je´sli n, e, s
ira znane i rjest parzysta.
Zadanie 1.0+.(a) Pokaza´c, jak mo˙zna roz lo˙zy´c n=pq na czynniki pierwsze,
gdy a znane x, y (Z/nZ), kt´ore maa ten sam kwadrat w Z/nZ.
(b) “Metoda Fermata rozk ladu n=pq”. Szukamy pierwsz¸a liczb¸e t > n, ˙zeby
t2nby la pe lnym kwadratem, np. v2. Wtedy p=tv,q=t+v. Dlaczego metoda
ta jest efektywna dla p, q z ma a znic¸a qp?
Rozlo˙zy´c n= 23360947609.
Funkcja skr´otu H: (Z/lZ)γ(Z/lZ)δcharakteryzuje si¸e praktyczn¸a niemo˙zliwo´sci¸a
(i) znalezienia x6=x0takich, ˙ze H(x) = H(x0) i (ii) wyliczenia xw ownaniu H(x) = a
dla losowo wybranego a.
Po wys laniu wiadomo´sci xnadawca A wysy la kod warto´sci H(x) z tym, ˙zeby
adresat B og l sprawdzi´c, czy otrzymana wiadomo´c x0spe lnia H(x) = H(x0) (czy
jest autentyczna). Kodowanie warto´sci H=H(x) powinno odbywa´c sie przy pomocy
innej funkcji 1-kierunkowej. Odpowiedni kryptogram nazywa si¸e podpisem cyfrowym
nadawcy A.
System podpisu cyfrowego na bazie RSA. Dla du˙zych liczb pierwszych pB
iqBniech nB=pBqB. Niech eBidBspe lniaj¸a owno´sci (eB, φ(nB)) = 1 i dBeB=
1(modφ(nB)), gdzie φjest funkcj¸a Eulera i eBjest rz¸edu liczby nB. Para (nB, eB)
tworzy klucz publiczny adresata B. Szyfrowanie wiadomo´sci x(podanej w postaci
1φ(n) := ”ilo´c liczb kwzgl¸ednie pierwszych z ni takich, ˙ze 1 k < n
1
pf2

Podgląd częściowego tekstu

Pobierz Algebraiczne aspekty kryptografii i więcej Streszczenia w PDF z Matematyka obliczeniowa tylko na Docsity!

ALGEBRAICZNE ASPEKTY KRYPTOGRAFII

LISTA 1: Kryptografia. Funkcje skr´otu. Podpis cyfrowy. Wymiana kluczy.

Kryptosystem RSA. Nadawca A przesy la wiadomo´s´c do Adresata B. Dla du˙zych liczb pierwszych p i q niech n = p · q. Niech e i d spe lniaj¸a r´owno´sci (e, φ(n)) = 1 i d · e = 1(modφ(n)), gdzie φ jest funkcj¸a Eulera 1 i e jest ”rz¸edu liczby” n. Para (n, e) tworzy klucz publiczny adresata B. Szyfrowanie wiadomo´sci x (podanej w postaci liczby ≤ min(p, q)) odbywa si¸e przez wyliczenie reszty s w xe/n. Wtedy B oblicza x jako reszt¸e x′^ u lamka sd/n. System bazuje na nast¸epuj¸acej r´owno´sci w pier´scieniu ilorazowym Z/nZ:

x′^ = sd^ = xd·e^ = xtφ(n)+1^ = x · (xφ(n))t^ = x,

gdzie r´owno´s´c xφ(n)^ = 1(modn) wynika z twierdzenia Eulera.

Zadanie 1.0. Niech r b¸edzie minimaln¸a liczb¸a naturaln¸a > 0 tak¸a, ˙ze sr^ = 1(modn). (a) Poda´c szybki algorytm znalezienia wiadomo´sci x, je´sli n, e, s i r s¸a znane. Zas- tosowa´c do przypadku n = 2047 = 23 · 89, e = 179 znajduj¸ac odpowiednie r i d. (b) Poda´c szybki probabilistyczny algorytm znalezienia rozk ladu n = pq, je´sli n, e, s i r s¸a znane i r jest parzysta.

Zadanie 1.0+. (a) Pokaza´c, jak mo˙zna roz lo˙zy´c n = pq na czynniki pierwsze, gdy s¸a znane x, y ∈ (Z/nZ)∗, kt´ore maj¸a ten sam kwadrat w Z/nZ. (b) “Metoda Fermata rozk ladu n = pq”. Szukamy pierwsz¸a liczb¸e t >

n, ˙zeby t^2 − n by la pe lnym kwadratem, np. v^2. Wtedy p = t − v, q = t + v. Dlaczego metoda ta jest efektywna dla p, q z ma l¸a r´o˙znic¸a q − p? Rozlo˙zy´c n = 23360947609.

Funkcja skr´otu H : (Z/lZ)γ^ → (Z/lZ)δ^ charakteryzuje si¸e praktyczn¸a niemo˙zliwo´sci¸a (i) znalezienia x 6 = x′^ takich, ˙ze H(x) = H(x′) i (ii) wyliczenia x w r´ownaniu H(x) = a dla losowo wybranego a. Po wys laniu wiadomo´sci x nadawca A wysy la kod warto´sci H(x) z tym, ˙zeby adresat B m´og l sprawdzi´c, czy otrzymana wiadomo´s´c x′^ spe lnia H(x) = H(x′) (czy jest autentyczna). Kodowanie warto´sci H = H(x) powinno odbywa´c sie przy pomocy innej funkcji 1-kierunkowej. Odpowiedni kryptogram nazywa si¸e podpisem cyfrowym nadawcy A. System podpisu cyfrowego na bazie RSA. Dla du˙zych liczb pierwszych pB i qB niech nB = pB qB. Niech eB i dB spe lniaj¸a r´owno´sci (eB , φ(nB )) = 1 i dB eB = 1(modφ(nB )), gdzie φ jest funkcj¸a Eulera i eB jest rz¸edu liczby nB. Para (nB , eB ) tworzy klucz publiczny adresata B. Szyfrowanie wiadomo´sci x (podanej w postaci

(^1) φ(n) := ”ilo´s´c liczb k wzgl¸ednie pierwszych z n i takich, ˙ze 1 ≤ k < n”

liczby ≤ min(pB , qB )) odbywa si¸e przez wyliczenie reszty s w xeB^ /nB. Wtedy B oblicza x jako reszt¸e x′^ u lamka sdB^ /nB. Nadawca A ustala du˙ze liczby pierwsze pA,qA. Niech nA = pAqA i niech eA i dA spe lniaj¸a r´owno´sci (eA, φ(nA)) = 1 i dAeA = 1(modφ(nA)), gdzie eA jest rz¸edu liczby nA. Para (nA, eA) tworzy klucz publiczny nadawcy A. Warto´s´c skr´otu H = H(x) nadawca najpierw koduje jako H′^ = HdA^ (modnA) i potem wysy la w postaci reszty: (H′)eB^ (modnB ). Adresat B deszyfruje H′^ jak wy˙zej. Obliczaj¸ac reszt¸e (H′)eA^ /nA otrzymuje H i sprawdza czy H = H(x). W taki spos´ob B jest pewien, ˙ze wiadomo´s´c x zosta la wys lana przez A i nie zosta la uszkodzona przy transmisji. Zadanie 1.1. (a) Niech pA = 5, qA = 7 i eA = 11. Obliczy´c dA i kod H′^ liczby 3, kt´ora jest warto´sci¸a skr´otu wiadomo´sci x. (b) Niech pB = 7, qB = 11 i eB = 13. Obliczy´c dB i szyfr liczby H′^ (patrz (a)) wzgl¸edem klucza (nB , eB ). Przeprowadzi´c odpowiednie deszyfrowanie (w razie potrzeby u˙zy´c komputera).

System DSA. Niech q < p b¸ed¸a du˙zymi liczbami pierwszymi i g b¸edzie elementem multyplikatywnej grupy cia la Fp rz¸edu q. Nadawca A wybiera klucz prywatny x < q i wylicza klucz publiczny y = gx(modp). Aby podpisa´c wiadomo´s´c m nadawca A wybiera losowo k < q i wylicza gk(modp). Niech r := gk(modp)modq 6 = 0 i s := k−^1 (H(m)+xr)modq, gdzie H(m) jest skr´otem wiadomo´sci (< q). W przypadku gdy s 6 = 0, podpisem wiadomo´sci m jest para (r, s). Zeby sprawdzi´˙ c podpis, odbiorca B wylicza H(m), w = s−^1 (modq), u 1 = H(m) · w(modq) i u 2 = r · w(modq). Zadanie 1.2. Pokaza´c, ˙ze podpis ma by´c zaakceptowany wtedy i tylko wtedy gdy (gu^1 yu^2 modp = r)(modq).

Wymiana kluczy (Diffie-Hellman). Niech G b¸edzie grup¸a abelow¸a (np. multy- plikatywna grupa F∗ p) i g ∈ G b¸edzie publicznie znanym elementem. Nadawca A i odbiorca B wybieraj¸a sekretne liczby kA i kB i wysy laj¸a do siebie nawzajem punkty gkA^ i gkB^. Wtedy ka˙zdy z nich posiada wsp´olny klucz g′^ = gkAkB^. Z drugiej strony wyznaczenie g′^ przez publicznie znane g, gkA^ i gkB^ wymaga rozwi¸azania pewnej postaci problemu logarytmu dyskretnego.