1 Utangulizi
Ubadilishaji nasibu ni zana muhimu katika kubuni mifumo iliyogawanyika. Msingi wa sarafu ya kawaida, unaowazuia wanachama wa mfumo kukubaliana kuhusu nambari isiyotabirika ya nasibu, umeonekana kuwa muhimu sana kwa itifaki kama vile Makubaliano ya Byzantine, Uundaji wa Ufunguo Ulio Gawanyika, na Uchaguzi wa Kiongozi. Hata hivyo, kutekeleza itifaki halisi ya sarafu ya kawaida ya nasibu katika mifumo isiyo na muda na yenye dosari haiwezekani kutokana na matokeo yasiyowezekana ya FLP.
Makala hii inaleta matumizi mawabainifu ya sarafu kamili ya kawaida: (1) sarafu ya kawaida ya takriban inayozalisha nambari za nasibu zilizo karibu kwa kila mmoja, na (2) sarafu ya kawaida ya Monte Carlo inayozalisha nambari ya kawaida ya nasibu yenye uwezekano mdogo wa kushindwa, lakini sio sifuri. Itifaki zetu hujengwa juu ya msingi wa makubaliano ya takriban na huvumilia hadi theluthi moja ya michakato ya Byzantine bila usanidi unaoaminika au miundombinu ya ufunguo wa umma.
2 Usuli na Kazi Inayohusiana
2.1 Misingi ya Sarafu ya Kawaida
Itifaki kamili ya sarafu ya kawaida lazima ikidhi sifa tatu:
- Kumalizika: Kila mchakato sahihi hatimaye hutoa thamani fulani
- Makubaliano: Hakuna michakato miwili sahihi inayotoa maadili tofauti
- Ubadilishaji Nasibu: Thamani inayotokana lazima iwe imesambazwa kwa usawa katika kikoa D, |D| ≥ 2
Utekelezaji uliopita ama huchukulia mifumo inayofanana kwa wakati au sehemu-fanana kwa wakati na usanidi unaoaminika. Kazi yetu inalenga mifumo isiyo na muda bila dhana hizo.
2.2 Makubaliano ya Takriban
Makubaliano ya takriban huruhusu michakato kuamua juu ya maadili ambayo yako karibu kwa kila mmoja ndani ya uvumilivu uliowekwa awali ε. Kazi ya muunganiko inaweza kuonyeshwa kama:
$v_i^{r+1} = \frac{\sum_{j \in S} v_j^r}{|S|}$ ambapo $S$ ni seti ya maadili yaliyopokelewa ndani ya anuwai inayokubalika
Msingi huu huunda msingi wa utekelezaji wetu wa sarafu ya kawaida ya takriban.
3 Ubunifu wa Itifaki
3.1 Sarafu ya Kawaida ya Takriban
Itifaki yetu ya sarafu ya kawaida ya takriban inahakikisha kuwa michakato yote sahihi hutoa maadili ndani ya umbali ε wa kila mmoja baada ya duru k. Itifaki inaunganika kwa kasi ya kielelezo na idadi ya duru:
$\epsilon_k \leq \epsilon_0 \cdot \alpha^k$ ambapo $\alpha < 1$ ni kiwango cha muunganiko
Algorithm inaendelea katika duru zisizo na wakati sawa, na kila mchakato kinatangaza makadirio yake ya sasa na kutumia kazi ya makubaliano ya takriban kwa maadili yaliyopokelewa.
3.2 Sarafu ya Kawaida ya Monte Carlo
Sarafu ya kawaida ya Monte Carlo inahakikisha makubaliano na uwezekano 1-δ kwa δ > 0 ndogo kiholela. Uwezekano wa kushindwa hupungua kwa kasi ya kielelezo na idadi ya duru:
$P[\text{kushindwa}] \leq e^{-\beta k}$ kwa baadhi ya $\beta > 0$ mara kwa mara
Itifaki hii inachanganya makubaliano ya takriban na mbinu za kriptografia ili kufikia sifa zinazohitajika bila usanidi unaoaminika.
4 Uchambuzi wa Kiufundi
4.1 Msingi wa Kihisabati
Usalama wa itifaki zetu hutegemea sifa za muunganiko za makubaliano ya takriban kuwepo kwa makosa ya Byzantine. Kwa mfumo wenye michakato n na f < n/3 ya kushindwa kwa Byzantine, tunathibitisha:
$\lim_{k \to \infty} \max_{i,j \in \text{sahihi}} |v_i^k - v_j^k| = 0$
Kiwango cha muunganiko hutegemea muundo wa mtandao na kazi maalum ya makubaliano inayotumika.
4.2 Uchambuzi wa Usalama
Itifaki zetu ni thabiti dhidi ya maadui wa Byzantine wanaobadilika wanaodhibiti hadi f < n/3 ya michakato. Uthibitisho wa usalama hufuata mfano wa uigizaji, kuonyesha kuwa hakuna mazingira yanaweza kutofautisha kati ya itifaki halisi na utendaji bora.
5 Matokeo ya Majaribio
Tulitathmini itifaki zetu katika mitandao ya kuigwa isiyo na muda na idadi tofauti ya michakato (n = 10 hadi 100) na viwango vya kushindwa vya Byzantine (f < n/3). Matokeo yanaonyesha:
- Muunganiko wa kielelezo kwa makubaliano ndani ya duru 5-10 kwa vigezo vya kawaida
- Utata wa mawasiliano wa O(n³log n) kwa makubaliano ya binary Byzantine
- Uboreshaji mkubwa zaidi ya suluhisho za awali za O(n⁴)
Msimbo ufuatao wa uwongo unaonyesha duru ya msingi ya makubaliano ya takriban:
function ApproximateAgreementRound(value, round):
broadcast("PROPOSE", value, round)
received = wait_for_messages(n - f, round)
valid_values = filter_within_range(received, value - ε, value + ε)
new_value = median(valid_values) // or average for continuous domains
return new_value
6 Maelezo ya Utekelezaji
Utekelezaji wetu hutumia misingi ya kawaida ya kriptografia ikiwemo kazi za hash na saini za kidijitali. Muundo wa msingi wa algorithm:
class MonteCarloCommonCoin:
def __init__(self, n, f, delta):
self.n = n # jumla ya michakato
self.f = f # kushindwa kwa kiwango cha juu cha Byzantine
self.delta = delta # uwezekano wa kushindwa
self.round = 0
def generate_coin(self):
while True:
self.round += 1
estimate = self.approximate_agreement_round()
if self.consensus_achieved(estimate):
return self.finalize_output(estimate)
if self.round > self.required_rounds():
return self.fallback_output()
7 Matumizi na Mwelekeo wa Baadaye
Matumizi ya Sasa:
- Makubaliano ya Byzantine na utata wa mawasiliano wa O(n³log n)
- Tatizo la Vipindi Vya Nasibu Vinavyokatika kwa kutumia sarafu ya kawaida ya takriban na msimbo wa Gray
- Uchaguzi wa kiongozi katika mifumo ya blockchain isiyo na ruhusa
Mwelekeo wa Utafiti wa Baadaye:
- Kubadilisha itifaki kwa kriptografia isiyoathiriwa na kompyuta za quanta
- Kupanua kwa mipangilio ya uanachishi inayobadilika
- Kuboresha kwa hali halisi za mtandao zenye mshikamano wa sehemu
- Unganisho na usanifu wa blockchain uliogawanyika
8 Marejeo
- Fischer, M. J., Lynch, N. A., & Paterson, M. S. (1985). Impossibility of distributed consensus with one faulty process. Journal of the ACM.
- Rabin, M. O. (1983). Randomized Byzantine generals. Symposium on Foundations of Computer Science.
- Cachin, C., Kursawe, K., & Shoup, V. (2000). Random oracles in Constantinople: Practical asynchronous Byzantine agreement using cryptography. PODC.
- Miller, A., Xia, Y., Croman, K., Shi, E., & Song, D. (2016). The honey badger of BFT protocols. CCS.
- Abraham, I., Malkhi, D., & Spiegelman, A. (2019). Asymptotically optimal validated asynchronous Byzantine agreement. PODC.
Uchambuzi wa Asili
Utafiti huu unachangia kwa kiasi kikubwa katika uwanja wa uzalishaji wa mabadiliko nasibu yaliyogawanyika kwa kushughulikia vikwazo vya msingi vya mifumo isiyo na wakati sawa. Kuanzishwa kwa sarafu za kawaida za takriban na za Monte Carlo inawakilisha mbinu ya vitendo ya kuepuka kutowezekana kwa FLP, sawa na jinsi mifumo ya vitendo ya blockchain kama Bitcoin imebadilisha dhana za kinadharia za makubaliano kuwa utekelezaji unaofanya kazi.
Mafanikio ya waandishi ya utata wa mawasiliano wa O(n³log n) kwa makubaliano ya binary Byzantine inawakilisha uboreshaji mkubwa zaidi ya suluhisho za awali za O(n⁴). Maendeleo haya yanafanana na mienendo katika utafiti wa mifumo iliyogawanyika inayoweza kupanuka, ambapo kupunguza mzigo wa mawasiliano ni muhimu kwa utumiaji wa vitendo. Wasiwasi sawa wa ufanisi umesababisha maendeleo katika nyanja zingine, kama vile uboreshaji wa mitandao ya kupambana na kizazi katika masomo ya mashine, ambapo CycleGAN ilionyesha jinsi dhana za kinadharia zinaweza kufanywa kuwa za vitendo kupitia ubunifu wa kina wa algorithm.
Mchanganyiko wa makubaliano ya takriban na msimbo wa Gray kwa kutatua tatizo la Vipindi Vya Nasibu Vinavyokatika ni wa ubunifu zaidi. Mbinu hii inaonyesha jinsi dhana za sayansi ya kompyuta za kitamaduni zinaweza kutumiwa tena kwa changamoto za kisasa za mifumo iliyogawanyika. Mbinu hiyo inafanana na matumizi ya nadharia ya usimbuaji katika mifumo ya hifadhi iliyogawanyika, ambapo usambazaji na upokeaji wa data kwa ufanisi hutegemea miundo ya kihisabati na sifa maalum za makutano.
Kutoka kwa mtazamo wa usalama, uthabiti dhidi ya maadui wa Byzantine wanaobadilika bila usanidi unaoaminika au PKI ni wa kukumbukwa. Hii inafanana na mienendo ya sasa katika mifumo isiyo na kituo cha udhibiti ambayo inapendelea kupunguza imani. Mbinu hiyo inashiriki ufanano wa kifalsafa na mifumo ya uthibitisho usio na ujuzi, ambapo mbinu za kriptografia huruhusu uthibitisho bila kufichua data ya msingi au kutegemea mamlaka zinazoaminika.
Kiwango cha muunganiko wa kielelezo kilichoonyeshwa katika itifaki kinapendekeza matumizi ya baadaye zaidi ya matumizi ya haraka yaliyojadiliwa. Sifa sawa za muunganiko zimeonekana kuwa na thamani katika algorithm za uboreshaji na masomo ya mashine, ambapo muunganiko wa haraka kwa makubaliano huruhusu hesabu iliyogawanyika kwa ufanisi. Kama ilivyoonyeshwa katika utafiti kutoka kwa taasisi kama Kituo cha Sayansi ya Kompyuta na Ujasusi Bandia cha MIT, sifa kama hizi ni muhimu sana katika mazingira ya kompyuta ya makali yenye vikwazo vya rasilimali.
Kazi ya baadaye inaweza kuchunguza miunganisho kwa usimbuaji wa homomorphic na hesabu ya vyama vingi vilivyo salama, ambapo uzalishaji wa mabadiliko nasibu yaliyogawanyika unacheza jukumu muhimu. Mbinu zilizotengenezwa katika makala hii zinaweza pia kupata matumizi katika mifumo ya kujifunza kwa shirikisho, ambapo uratibu wa mabadiliko nasibu kwenye nodi zilizogawanyika bila mamlaka ya kati inawasilisha changamoto sawa na zile zilizotatuliwa katika utafiti huu.