Teoria informacji/TI Ćwiczenia 6: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Stromy (dyskusja | edycje)
Nie podano opisu zmian
Dorota (dyskusja | edycje)
Nie podano opisu zmian
Linia 7: Linia 7:




Problem ten można rozwiązać przy użyciu protokołu Shamira. Dla uproszczenia dowodów załóżmy że  
Problem ten można rozwiązać przy użyciu protokołu Shamira. Dla uproszczenia dowodów załóżmy, że  
<math>S</math> jest jednostajnym rozkładem na <math>\{0, \ldots, p-1\}</math>, gdzie  
<math>S</math> jest jednostajnym rozkładem na <math>\{0, \ldots, p-1\}</math>, gdzie  
<math>p</math> jest liczbą pierwszą (a więc <math>H(S)=\log p</math>). Protokół wygląda następująco:
<math>p</math> jest liczbą pierwszą (a więc <math>H(S)=\log p</math>). Protokół wygląda następująco:
Linia 20: Linia 20:


{{cwiczenie|1 [Poprawność]|Ćwiczenie 1|
{{cwiczenie|1 [Poprawność]|Ćwiczenie 1|
Udowodnij że dowolne <math>t</math> fragmentów pozwala odtworzyć sekret <math>s</math>.}}
Udowodnij, że dowolne <math>t</math> fragmentów pozwala odtworzyć sekret <math>s</math>.}}


{{rozwiazanie|||  
{{rozwiazanie|||  
Linia 33: Linia 33:
{{cwiczenie|2 [Tajność]|Ćwiczenie 2|
{{cwiczenie|2 [Tajność]|Ćwiczenie 2|
Niech <math>S_i</math> będą zmiennymi losowymi określającymi rozkłady prawdopodobieństwa fragmentów  
Niech <math>S_i</math> będą zmiennymi losowymi określającymi rozkłady prawdopodobieństwa fragmentów  
<math>s_i</math>. Udowodnij że dowolne t-1 fragmentów nie daje żadnych informacji o s, czyli
<math>s_i</math>. Udowodnij, że dowolne t-1 fragmentów nie daje żadnych informacji o s, czyli
<math>I(S;(S_{i_1}, \ldots, S_{i_t-1}))=0</math>}}
<math>I(S;(S_{i_1}, \ldots, S_{i_t-1}))=0</math>}}


Linia 42: Linia 42:
<center><math>I(S;(S_{i_1}, \ldots, S_{i_t-1}))=H(S)-H(S|S_{i_1}, \ldots, S_{i_t-1})</math></center>
<center><math>I(S;(S_{i_1}, \ldots, S_{i_t-1}))=H(S)-H(S|S_{i_1}, \ldots, S_{i_t-1})</math></center>


Znając <math>t-1</math> wartości wielomianu, możemy dla dowolnego <math>x \in \{0, \ldots, p-1\}</math> założyć
Znając <math>t-1</math> wartości wielomianu, możemy dla dowolnego <math>x \in \{0, \ldots, p-1\}</math> założyć,
że <math>P(0)=x</math> i przeprowadzić interpolację, uzyskując wielomian stopnia <math>t-1</math>. Tym samym
że <math>P(0)=x</math> i przeprowadzić interpolację, uzyskując wielomian stopnia <math>t-1</math>. Tym samym
żadna wartość sekretu nie jest wykluczona ani preferowana, i entropia warunkowa sekretu wynosi <math>\log p </math>.  
żadna wartość sekretu nie jest wykluczona ani preferowana, entropia warunkowa sekretu wynosi zaś <math>\log p </math>.  
<center><math>H(S)-H(S|S_{i_1}, \ldots, S_{i_t-1})=\log p - \log p = 0</math></center>
<center><math>H(S)-H(S|S_{i_1}, \ldots, S_{i_t-1})=\log p - \log p = 0</math></center>
</div>
</div>
Linia 51: Linia 51:


{{cwiczenie|3 [Optymalność]|Ćwiczenie 3|
{{cwiczenie|3 [Optymalność]|Ćwiczenie 3|
W protokole Shamira <math>H(S_i)=\log p</math>. Udowodnij że jest to wartość optymalna, tzn. dla każdego protokołu podziału sekretu <math>\forall_i H(S_i)\ge H(S)</math>.}}
W protokole Shamira <math>H(S_i)=\log p</math>. Udowodnij, że jest to wartość optymalna, tzn. dla każdego protokołu podziału sekretu <math>\forall_i H(S_i)\ge H(S)</math>.}}


{{rozwiazanie|||  
{{rozwiazanie|||  
<div class="mw-collapsible mw-made=collapsible mw-collapsed">  
<div class="mw-collapsible mw-made=collapsible mw-collapsed">  
<div class="mw-collapsible-content" style="display:none">
<div class="mw-collapsible-content" style="display:none">
Z poprzednich dwóch ćwiczeń wiemy że dla dowolnego zestawu <math>i_1, \ldots, i_t \in \{1, \ldots, n\}</math>
Z poprzednich dwóch ćwiczeń wiemy, że dla dowolnego zestawu <math>i_1, \ldots, i_t \in \{1, \ldots, n\}</math>
<center><math>H(S|S_{i_1}, \ldots, S_{i_t-1})=H(S)</math></center>
<center><math>H(S|S_{i_1}, \ldots, S_{i_t-1})=H(S)</math></center>


Linia 62: Linia 62:
<center><math>H(S|S_{i_1}, \ldots, S_{i_t})=0</math></center>
<center><math>H(S|S_{i_1}, \ldots, S_{i_t})=0</math></center>


Odejmując stronami po lewej stronie dostaniemy dokładnie  
Odejmując stronami po lewej stronie, dostaniemy dokładnie  
[[Teoria informacji/TI Wykład 5#inf_warunkowa|informację wzajemną]] <math>S</math> i <math>S_{i_t}</math> warunkowaną przez
[[Teoria informacji/TI Wykład 5#inf_warunkowa|informację wzajemną]] <math>S</math> i <math>S_{i_t}</math> warunkowaną przez
<math>S_{i_1}, \ldots, S_{i_t-1}</math>:
<math>S_{i_1}, \ldots, S_{i_t-1}</math>:
Linia 79: Linia 79:


{{cwiczenie|4 [Dodawanie sekretów]|Ćwiczenie 4|
{{cwiczenie|4 [Dodawanie sekretów]|Ćwiczenie 4|
Załóżmy że gracz A przeprowadził podział sekretu dla wiadomości <math>X</math>, a gracz B podział sekretu dla wiadomości <math>Y</math>. Pokaż jak posiadacze fragmentów mogą uzyskać podział sumarycznej wiadomości <math>X+Y</math>, nie odtwarzając w tym celu i nie ujawniając nikomu żadnego z sekretów.}}
Załóżmy, że gracz A przeprowadził podział sekretu dla wiadomości <math>X</math>, a gracz B podział sekretu dla wiadomości <math>Y</math>. Pokaż jak posiadacze fragmentów mogą uzyskać podział sumarycznej wiadomości <math>X+Y</math>, nie odtwarzając w tym celu i nie ujawniając nikomu żadnego z sekretów.}}


{{rozwiazanie|||  
{{rozwiazanie|||  

Wersja z 12:39, 19 wrz 2006

Protokół Shamira podziału sekretu

Problem podziału sekretu jest zdefiniowany następująco: pewną wiadomość s (sekret) pochodzącą z rozkładu S należy zaszyfrować w postaci n „fragmentów” w taki sposób, że przy użyciu dowolnych t z nich da się odtworzyć s, a dowolne t1 z nich nie daje żadnych informacji o s. Taki podział nazywa się (t,n)-progowy.


Problem ten można rozwiązać przy użyciu protokołu Shamira. Dla uproszczenia dowodów załóżmy, że S jest jednostajnym rozkładem na {0,,p1}, gdzie p jest liczbą pierwszą (a więc H(S)=logp). Protokół wygląda następująco:

Protokół podziału sekretu
1. Losujemy t1 liczb naturalnych x1,,xt1{0,,p1} (z rozkładu jednostajnego).
2. Wyliczamy wielomian P stopnia t1 w ciele Zp o wartościach:
P(0)=s, P(i)=xi dla i=1,,t1.
3. Przekazujemy uczestnikom fragmenty sekretu. Dla i{1,,n}. 
i-tym fragmentem sekretu jest si=P(i).


Ćwiczenie 1 [Poprawność]

Udowodnij, że dowolne t fragmentów pozwala odtworzyć sekret s.

Rozwiązanie

{{{3}}}


Ćwiczenie 2 [Tajność]

Niech Si będą zmiennymi losowymi określającymi rozkłady prawdopodobieństwa fragmentów si. Udowodnij, że dowolne t-1 fragmentów nie daje żadnych informacji o s, czyli

I(S;(Si1,,Sit1))=0

Rozwiązanie

{{{3}}}


Ćwiczenie 3 [Optymalność]

W protokole Shamira H(Si)=logp. Udowodnij, że jest to wartość optymalna, tzn. dla każdego protokołu podziału sekretu iH(Si)H(S).

Rozwiązanie

{{{3}}}


Ćwiczenie 4 [Dodawanie sekretów]

Załóżmy, że gracz A przeprowadził podział sekretu dla wiadomości X, a gracz B podział sekretu dla wiadomości Y. Pokaż jak posiadacze fragmentów mogą uzyskać podział sumarycznej wiadomości X+Y, nie odtwarzając w tym celu i nie ujawniając nikomu żadnego z sekretów.

Rozwiązanie

{{{3}}}