Dowody interakcyjne

Transkrypt

Dowody interakcyjne
Grzegorz Stachowiak
Dowody z wiedza˛ zerowa˛
. – p.1
Dowody interakcyjne
Peggy (Prover) chce przekonać Vica (Verifier), że umie
otworzyć drzwi nie pokazujac
˛ jak sie˛ to robi. W n próbach
prawdopodobieństwo oszukania Vica (1/2)n
Vic
drzwi Peggy
. – p.2
Izomorfizm grafów
Peggy (Prover) chce przekonać Vica (Verifier), że G1 ' G2 .
1. Peggy wysyła do Vica losowy G0 izomorficzny do G1 .
2. Vic odsyła Peggy losowe i ∈ {1, 2}.
3. Peggy odsyła izomorfizm φ pomiedzy
˛
G0 i Gi .
4. Vic sprawdza, że to naprawde˛ izomorfizm.
Prawdopodobieństwo, że Peggy uda sie˛ odesłać
prawidłowy izomorfizm, gdy G1 6' G2 wynosi (co najwyżej)
1/2.
Jeśli przeprowadzimy n rund to wyniesie ono (1/2)n .
. – p.3
Dowody interakcyjne
Peggy (Prover) przekonuje Vica (Verifier) o prawdziwości
jakiegoś stwierdzenia.
Dwie podstawowe własności
completeness (zupełność): Peggy zawsze przekona
Vica do stwierdzenia prawdziwego;
soundness (rzetelność): Peggy jest w stanie przekonać
Vica do stwierdzenia fałszywego z
prawdopodobieństwem bliskim zeru.
. – p.4
Dowody z wiedza˛ zerowa˛
Nie znany jest szybki algorytm sprawdzajacy
˛ czy G1 ' G2 .
Czy Vic jest w stanie szybko skonstruować własne
rozumowanie prowadzace
˛ do wniosku, że G1 ' G2 na
podstawie komunikacji z Peggy w dowodzie interaktywnym?
Okazuje sie,
˛ że nie i dlatego dowód ten nazywamy
dowodem z wiedza˛ zerowa.
˛
Vic może sporzadzić
˛
raport z komunikacji z Peggy.
Raport ten składa sie˛ z trójek (G0 , i, φ).
Pokażemy, że informacje zawarte w raporcie nic Vicowi nie
daja.
˛
. – p.5
Rzekome raporty
Sporzadzanie
˛
rzekomych raportów:
Powtarzaj:
1. Wybierz losowe i ∈ {1, 2}.
2. Wylosuj G0 izomorficzny z Gi wraz z izomorfizmem φ.
3. Dodaj do raportu (G0 , i, φ).
Skoro Vic sam może sobie produkować raporty bez
komunikacji z Peggy, to oryginalne raporty nie nic mu nie
daja.
˛
. – p.6
Rzekome raporty
Ale to nie koniec. Vic może w trakcie właściwego protokołu
˛
a˛
znajac
˛ G0 wybierać takie i, które daje mu najwieksz
korzyść. Czy można podrobić raport z takie komunikacji?
Odpowiedź jest twierdzaca.
˛
Najpierw produkujemy rzekomy raport używajac
˛ metody
która˛ już przedstawiliśmy. Potem usuwamy z niego
wszystkie trójki (G0 , i, φ) w których i nie zostałoby wybrane
dla G0 .
Ponieważ prawdopodobieństwo wybrania G0 jest to samo
niezależnie od wcześniej wylosowanego i,
prawdopodobieństwo usuniecia
˛
każdej trójki z pierwotnego
raportu wynosi 1/2.
. – p.7
Protokoły Identyfikacji
Klucze Peggy
publiczny: G1 , G2 – grafy izomorficzne
prywatny: ψ – izomorfizm
Obliczenia Peggy w protokole moga˛ być przeprowadzone w
czasie wielomianowym.
Każdy, kto chciałby sie˛ podszyć pod Peggy musi być w
stanie znajdować w każdej rundzie izomorfizm φ dla i = 1, 2.
Aby to zrobić z prawdopodobieństwem 1, trzeba znać
izomorfizm miedzy
˛
G1 a G2 .
. – p.8
Reszty kwadratowe
Niech n = pq z nieznanym rozkładem i v ⊥ n. Peggy chce
przekonać Vica, że v jest równe u2 mod n dla pewnego u.
1. Peggy losuje x i przesyła y = x2 mod n.
2. Vic wysyła Peggy losowe i ∈ {0, 1}.
3. Peggy odsyła z = ui x mod n.
4. Vic sprawdza czy z 2 = v i y mod n.
. – p.9
Reszty kwadratowe
Rzekome raporty:
1. Wylosuj i ∈ {0, 1}.
2. wylosuj z .
3. Dodaj y = z 2 v −i mod n, i, z do raportu.
Ten i nastepny
˛
dowód z wiedza˛ zerowa˛ też może być użyty
jako protokół identyfikacji.
. – p.10
Przynależność do podgrupy
Niech p jest liczba˛ pierwsza˛ i α, β ∈ Zp . Peggy chce
przekonać Vica, że αk = β mod p dla pewnego k .
1. Peggy losuje x i wysyła γ = αx mod p.
2. Vic posyła Peggy losowe i ∈ {0, 1}.
3. Peggy odsyła y = x + ki.
4. Vic sprawdza, czy αy = γβ i mod p.
. – p.11
Obliczeniowa wiedza zerowa
Jest to nieco słabsze pojecie
˛
wiedzy zerowej.
Powiedzmy, że dysponujemy losowym raportem z działania
˛
protokołu Tp . Dysponujemy też algorytmem podrabiajacym
raporty i Tf jest jego wynikiem.
Niech A bedzie
˛
szybkim (wielomianowym) algorytmem
który na wejściu pobiera raport T i wyprowadza
A(T ) ∈ {0, 1}.
advA = Pr(A(Tp ) = 1) − Pr(A(Tf ) = 1)
Dowód jest obliczeniowo z wiedza˛ zerowa˛ gdy Tp nie może
być odróżniony od Tf przez żaden wielomianowy algorytm
A z prawdopodobieństwem powyżej : > 0 tzn.
advA < . – p.12
Zobowiazania
˛
bitowe
1. Peggy pomyślała sobie b ∈ {0, 1}.
2. Peggy losuje ciag
˛ r i wysyła do Vica h(b, r) (h – funkcja
haszujaca).
˛
3. Vic nie ma pojecia
˛
jakie jest b
4. Gdy Peggy musi ujawnić b wysyła do Vica wartości b, r.
Peggy nie może zmienić wartości b bo jest zwiazana
˛
wartościa˛ funkcji haszujacej.
˛
. – p.13
Zobowiazania
˛
bitowe
Inny schemat zobowiaza
˛ ń bitowych:
1. Dane jest n = pq i m 6= s2 mod n dla wszystkich s ∈ Z∗n .
2. Peggy pomyślała sobie b ∈ {0, 1}.
3. Peggy losuje x i przekazuje x2 mb mod n do Vica.
4. Peggy ujawnia b przesyłajac
˛ x do Vica.
. – p.14
Grafy 3-kolorowalne
Niech G bedzie
˛
grafem. Peggy chce wykazać, że G jest
3-kolorowalny.
Peggy zna 3-kolorowanie f : V → {1, 2, 3}.
1. Peggy losuje permutacje˛ π elementów {1, 2, 3}.
2. Peggy wylicza zobowiazania
˛
bitowe dla wszystkich
π(f (v)) i przekazuje je do Vica.
3. Vic wysyła Peggy losowa˛ krawedź
˛ {u, v}.
4. Peggy ujawnia π(f (u)), π(f (v)).
5. Vic sprawdza, czy π(f (u)) 6= π(f (v)).
. – p.15

Podobne dokumenty