OdpornoÅÄ na bÅÄdy bizantyjskie w systemach peer-to-peer - Instytut ...
OdpornoÅÄ na bÅÄdy bizantyjskie w systemach peer-to-peer - Instytut ...
OdpornoÅÄ na bÅÄdy bizantyjskie w systemach peer-to-peer - Instytut ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
50 Rozdział 3. Bezpieczne <strong>bizantyjskie</strong> uzgadnianie<br />
Ogólnie kryp<strong>to</strong>system progowy k z n oz<strong>na</strong>czony (k, n), jest <strong>to</strong> taki schemat<br />
kryp<strong>to</strong>graficzny, w którym do prawidłowego przeprowadzenia operacji wymagane<br />
jest t ≥ k uczestników.<br />
Istnieją różne typy kryp<strong>to</strong>systemów progowych, np. takie które uwzględniają<br />
wagę uczestników, schematy te <strong>na</strong>zywają się ważonymi kryp<strong>to</strong>systemami<br />
progowymi. Algorytm SC-ABC używa trzech schematów progowych: współdzielonego<br />
sekretu, progowego podrzucania monetą (ang. treshold common coin<br />
<strong>to</strong>ssing) oraz progowych podpisów cyfrowych (ang. treshold sig<strong>na</strong>tures).<br />
Współdzielone podrzucanie monetą. Odwzorowanie „podrzucania monetą”<br />
oz<strong>na</strong>czamy przez F : {0, 1} ∗ −→ {0, 1}. Jest <strong>to</strong> takie przekształcenie, które<br />
dowolny ciąg bi<strong>to</strong>wy odwzorowuje <strong>na</strong> 0 lub 1. Progowe podrzucanie monetą<br />
(n, k) polega <strong>na</strong> tym, że przy<strong>na</strong>jmniej k uczestników musi kooperować w celu<br />
określenia zwracanej war<strong>to</strong>ści przez odwzorowanie F . Wejściowy ciąg z<strong>na</strong>ków<br />
jest ciągiem decyzji, który może być losowy, dlatego wynik działania F nie jest<br />
deterministyczny.<br />
Progowe podpisy cyfrowe. Algorytmy szyfrowania z kluczem publicznym zakładają<br />
istnienie pary kluczy: klucza prywatnego oraz klucza publicznego posiadanego<br />
przez każdego z uczestników komunikacji [RSA77, MVO96]. Klucz<br />
prywatny służy do odszyfrowywania wiadomości wcześniej zaszyfrowanej kluczem<br />
publicznym. Klucz publiczny jest jawny. Podpis wykonuje się kluczem<br />
prywatnym, <strong>na</strong><strong>to</strong>miast jego weryfikacja odbywa się za pomocą klucza publicznego<br />
(tzw. klucza weryfikującego). W schemacie (n, k, t) podpisu progowego,<br />
klucz publiczny jest jeden <strong>na</strong><strong>to</strong>miast klucz prywatny rozdzielony jest <strong>na</strong> n udziałów.<br />
Do wygenerowania poprawnego podpisu wiadomości m, potrzeba t ≥ k<br />
uczestników podpisujących tę samą wiadomość m, tak by podpis był weryfikowalny.<br />
Kryp<strong>to</strong>systemy progowe świetnie <strong>na</strong>dają się do zas<strong>to</strong>sowania przy głosowaniach,<br />
gdyż u podstawy ich konstrukcji zakłada się istnienie większości, koniecznej<br />
do poprawnego działania. Główny problem, który pojawia się podczas<br />
s<strong>to</strong>sowania kryp<strong>to</strong>grafii progowej ujawnia się, gdy grupa uczestnicząca w określonym<br />
pro<strong>to</strong>kole zmienia skład.<br />
3.4.2 S<strong>to</strong>s pro<strong>to</strong>kołów SC-ABC<br />
Opis algorytmu zaczniemy od <strong>na</strong>jniższej warstwy dotyczących funkcji rozgłaszania.<br />
Częs<strong>to</strong> wykorzystywanym mechanizmem komunikacji między współpracującymi<br />
procesami jest niezawodne rozgłaszanie (ang. Reliable Broadcast).<br />
Gwarantuje ono, że komunikat zostanie dostarczony do wszystkich uczestników