$XLM 2015 · 59 min

Stellar सर्वसम्मति प्रोटोकॉल

The Stellar Consensus Protocol

द्वारा David Mazières

साइड-बाय-साइड मोड stellar.org
16px

सारांश

अंतर्राष्ट्रीय भुगतान धीमे और महंगे हैं, आंशिक रूप से विषम के माध्यम से मल्टी-हॉप भुगतान रूटिंग के कारण बैंकिंग प्रणाली. Stellar एक नया वैश्विक भुगतान नेटवर्क है जो कहीं भी सीधे डिजिटल मनी ट्रांसफर कर सकता है सेकंड में दुनिया. मुख्य नवाचार एक सुरक्षित लेनदेन है एक नए का उपयोग करते हुए, अविश्वसनीय मध्यस्थों के पार तंत्र बीजान्टिन समझौता प्रोटोकॉल को एससीपी कहा जाता है। एससीपी के साथ, प्रत्येक संस्था अन्य संस्थाओं को निर्दिष्ट करती है जिनके साथ रहना है सहमति में; के वैश्विक अंतर्संबंध के माध्यम से वित्तीय प्रणाली, पूरा नेटवर्क तब परमाणु पर सहमत होता है मध्यस्थ परिसंपत्ति जारीकर्ताओं से कोई शोधनक्षमता या विनिमय-दर जोखिम के बिना, मनमाने संस्थानों तक फैले लेनदेन या बाज़ार निर्माता। हम एससीपी का मॉडल, प्रोटोकॉल और प्रस्तुत करते हैं औपचारिक सत्यापन; Stellar भुगतान नेटवर्क का वर्णन करें; और अंत में बेंचमार्क के माध्यम से अनुभवजन्य रूप से Stellar का मूल्यांकन करें और उत्पादन उपयोग के कई वर्षों का हमारा अनुभव। सीसीएस अवधारणाएँ • सुरक्षा और गोपनीयता →वितरित सिस्टम सुरक्षा; • कंप्यूटर सिस्टम संगठन → पीयर-टू-पीयर आर्किटेक्चर; • सूचना प्रणाली → इलेक्ट्रॉनिक फंड ट्रांसफर. कीवर्ड blockchain, BFT, कोरम, भुगतान एसीएम संदर्भ प्रारूप: मार्टा लोखावा, गिउलिआनो लोसा, डेविड माज़िएरेस, ग्रेडन होरे, निकोलस बैरी, एली गफनी, जोनाथन जोव, राफेल मालिनोव्स्की, जेड मैककलेब। 2019. Stellar के साथ तेज़ और सुरक्षित वैश्विक भुगतान। एसओएसपी में '19: ऑपरेटिंग सिस्टम सिद्धांतों पर संगोष्ठी, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा। एसीएम, न्यूयॉर्क, एनवाई, यूएसए, 17 पृष्ठ। https://doi.org/10.1145/3341301.3359636

परिचय

अंतर्राष्ट्रीय भुगतान बेहद धीमे और महंगे हैं [32]। यू.एस. से $0.50 भेजने की अव्यवहारिकता पर विचार करें *गैलोइस, इंक. †यूसीएलए इस कार्य के संपूर्ण या आंशिक भाग की डिजिटल या हार्ड कॉपी बनाने की अनुमति व्यक्तिगत या कक्षा उपयोग के लिए शुल्क के बिना अनुमति दी जाती है, बशर्ते कि प्रतियां न हों लाभ या व्यावसायिक लाभ के लिए बनाया या वितरित किया गया है और इसकी प्रतियां उपलब्ध हैं यह सूचना और प्रथम पृष्ठ पर पूरा उद्धरण। घटकों के लिए कॉपीराइट एसीएम के अलावा अन्य लोगों के स्वामित्व वाले इस कार्य का सम्मान किया जाना चाहिए। श्रेय के साथ सारांश लिखने की अनुमति है। अन्यथा कॉपी करने के लिए, या पुनः प्रकाशित करने के लिए, सर्वर पर या पोस्ट करने के लिए सूचियों में पुनर्वितरित करने के लिए पूर्व विशिष्ट अनुमति और/या शुल्क की आवश्यकता होती है। निवेदन [email protected] से अनुमतियाँ। एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा © 2019 एसोसिएशन फॉर कंप्यूटिंग मशीनरी। एसीएम आईएसबीएन 978-1-4503-6873-5/19/10...$15.00 https://doi.org/10.1145/3341301.3359636 मेक्सिको, दो पड़ोसी देश। अंतिम उपयोगकर्ता लगभग $9 का भुगतान करते हैं ऐसे औसत हस्तांतरण के लिए [32], और एक द्विपक्षीय समझौता देशों के केंद्रीय बैंकों की मध्यस्थता से ही कमी आ सकती है अंतर्निहित बैंक लागत $0.67 प्रति आइटम [2] है। फीस के ऊपर, अंतर्राष्ट्रीय भुगतान की विलंबता को आम तौर पर गिना जाता है कुछ ही दिनों में, विदेश से जल्दी पैसा प्राप्त करना असंभव हो जाता है आपात स्थिति. उन देशों में जहां बैंकिंग प्रणाली नहीं है काम करते हैं या सभी नागरिकों को सेवा नहीं देते हैं, या जहां शुल्क असहनीय है, लोग बस [38] द्वारा भुगतान भेजने का सहारा लेते हैं नाव [19], और कभी-कभी अब Bitcoin [55], ये सभी जोखिम, विलंबता, या असुविधा उठाएँ। हालाँकि अनुपालन लागतें हमेशा रहेंगी, सबूत बताते हैं कि प्रतिस्पर्धा की कमी के कारण एक महत्वपूर्ण राशि खो जाती है [21], जो अकुशल प्रौद्योगिकी के कारण और भी बदतर हो गया है। जहां लोग नवप्रवर्तन कर सकते हैं, कीमतें और विलंबताएं कम हो जाएंगी। उदाहरण के लिए, 2019 की दूसरी तिमाही में बैंक खातों से प्रेषण पर औसतन लागत आई 6.99%, जबकि मोबाइल मनी का आंकड़ा केवल 4.88% [13] था। एक खुला, वैश्विक भुगतान नेटवर्क जो नवाचार को आकर्षित करता है और गैर-बैंक संस्थाओं से प्रतिस्पर्धा कम हो सकती है अनुपालन [83] सहित सभी स्तरों पर लागत और विलंबता। यह पेपर Stellar, blockchain-आधारित भुगतान प्रस्तुत करता है नेटवर्क विशेष रूप से नवाचार की सुविधा के लिए डिज़ाइन किया गया है अंतर्राष्ट्रीय भुगतान में प्रतिस्पर्धा। Stellar पहला है निम्नलिखित तीनों लक्ष्यों को पूरा करने के लिए प्रणाली (ए के अंतर्गत)। उपन्यास लेकिन अनुभवजन्य रूप से मान्य "इंटरनेट परिकल्पना"): 1. खुली सदस्यता - कोई भी मुद्रा-समर्थित जारी कर सकता है डिजिटल tokens जिनका उपयोगकर्ताओं के बीच आदान-प्रदान किया जा सकता है। 2. जारीकर्ता द्वारा लागू अंतिमता - एक token का जारीकर्ता रोक सकता है token में लेन-देन उलटने या पूर्ववत होने से। 3. क्रॉस-जारीकर्ता परमाणुता - उपयोगकर्ता परमाणु रूप से विनिमय कर सकते हैं और एकाधिक जारीकर्ताओं से token का व्यापार करें। पहले दो को हासिल करना आसान है. कोई भी कंपनी एकतरफा रूप से Paypal, Venmo, WeChat जैसे उत्पाद पेश कर सकती है भुगतान करें, या Alipay करें और भुगतान की अंतिमता सुनिश्चित करें आभासी मुद्राएँ उन्होंने बनाई हैं। दुर्भाग्य से, इन मुद्राओं में परमाणु रूप से लेनदेन करना असंभव है। वास्तव में, बावजूद इसके कि पेपैल ने वेनमो की मूल कंपनी का अधिग्रहण कर लिया है 2013 में, अंतिम उपयोगकर्ताओं के लिए वेनमो भेजना अभी भी असंभव है पेपैल उपयोगकर्ताओं को डॉलर [78]। हाल ही में व्यापारी ऐसा कर सकते हैं यहाँ तक कि दोनों को एक ही एकीकरण के साथ स्वीकार करें। लक्ष्य 2 और 3 को एक बंद प्रणाली में प्राप्त किया जा सकता है। विशेष रूप से, कई देशों में कुशल घरेलू भुगतान है नेटवर्क, आमतौर पर एक सार्वभौमिक रूप से विश्वसनीय नियामक प्राधिकरण द्वारा देखरेख किया जाता है। हालाँकि, सदस्यता एक बंद तक ही सीमित है चार्टर्ड बैंकों का समूह और नेटवर्क यहीं तक सीमित हैं किसी देश के नियामक प्राधिकरण की पहुंच।एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा लोखवा एट अल. लक्ष्य 1 और 3 खनन blockchains में हासिल कर लिए गए हैं, सबसे विशेष रूप से Ethereum [3] पर ERC20 tokens के रूप में। इन blockchains का मुख्य विचार एक नई क्रिप्टोकरेंसी बनाना है जिससे लोगों को व्यवस्थित करने के लिए पुरस्कृत किया जा सके लेन-देन को वापस करना कठिन है। दुर्भाग्य से, इसका मतलब है कि token जारीकर्ता लेन-देन की अंतिमता को नियंत्रित नहीं करते हैं। यदि सॉफ्टवेयर त्रुटियों के कारण लेनदेन इतिहास को पुनर्गठित करना पड़ता है [26, 73], या जब लोगों को धोखा देने की लूट की रकम लागत से अधिक हो जाए इतिहास को पुनर्गठित करना [74, 97], जारीकर्ता tokens के लिए उत्तरदायी हो सकते हैं वे वास्तविक दुनिया का पैसा पहले ही भुना चुके हैं। Stellar blockchain में दो विशिष्ट गुण हैं। सबसे पहले, यह मूल रूप से tokens के बीच कुशल बाज़ारों का समर्थन करता है विभिन्न जारीकर्ताओं से. विशेष रूप से, कोई भी token जारी कर सकता है, blockchain token की किसी भी जोड़ी के बीच व्यापार के लिए एक अंतर्निहित ऑर्डरबुक प्रदान करता है, और उपयोगकर्ता पथ भुगतान जारी कर सकते हैं जबकि परमाणु रूप से कई मुद्रा जोड़ियों में व्यापार होता है शुरू से अंत तक सीमा मूल्य की गारंटी। दूसरा, Stellar एक नया बीजान्टिन समझौता पेश करता है प्रोटोकॉल, एससीपी (Stellar सर्वसम्मति प्रोटोकॉल), जिसके माध्यम से token जारीकर्ता लागू करने के लिए विशिष्ट validator सर्वर निर्दिष्ट करते हैं लेन-देन की अंतिमता. जब तक कोई भी जारीकर्ता के validators (और अंतर्निहित डिजिटल हस्ताक्षर और) से समझौता नहीं करता क्रिप्टोग्राफ़िक hashes सुरक्षित रहते हैं), जारीकर्ता को ठीक से पता होता है कि कौन सा लेनदेन हुआ है और जोखिम से बचता है blockchain इतिहास पुनर्गठन से होने वाली हानि। एससीपी का मुख्य विचार यह है कि अधिकांश परिसंपत्ति जारीकर्ता इससे लाभान्वित होते हैं तरल बाज़ार और परमाणु लेनदेन को सुविधाजनक बनाना चाहते हैं अन्य परिसंपत्तियों के साथ. इसलिए, validator व्यवस्थापक कॉन्फ़िगर करते हैं उनके सर्वर को सटीक रूप से अन्य validator से सहमत होना होगा सभी परिसंपत्तियों पर सभी लेनदेन का इतिहास। एक validator v1 हो सकता है v2 से सहमत होने के लिए कॉन्फ़िगर किया गया है, या v2 को सहमत होने के लिए कॉन्फ़िगर किया जा सकता है v1 के साथ, या दोनों को एक दूसरे से सहमत होने के लिए कॉन्फ़िगर किया जा सकता है; सभी मामलों में, कोई भी तब तक लेनदेन इतिहास के लिए प्रतिबद्ध नहीं होगा यह जानता है कि दूसरा अलग इतिहास के लिए प्रतिबद्ध नहीं हो सकता। परिवर्तनशीलता के अनुसार, यदि v1, v2 से असहमत नहीं हो सकता और v2, v3 से असहमत नहीं हो सकता (या इसके विपरीत), तो v1 इससे असहमत नहीं हो सकता v3, v3 संपत्तियों का प्रतिनिधित्व करता है या नहीं, v1 ने भी सुना है का. इस परिकल्पना के तहत कि ये रिश्ते सहमत हैं पूरे नेटवर्क को परिवर्तनीय रूप से कनेक्ट करें, एससीपी गारंटी देता है वैश्विक समझौता, इसे वैश्विक बीजान्टिन समझौता बनाता है खुली सदस्यता के साथ प्रोटोकॉल. हम इस नई कनेक्टिविटी धारणा को इंटरनेट परिकल्पना कहते हैं, और ध्यान दें कि यह "इंटरनेट" (जिसे हर कोई समझता है) दोनों की पकड़ है मतलब एकल सबसे बड़ा संक्रमणीय रूप से जुड़ा आईपी नेटवर्क) और विरासत अंतर्राष्ट्रीय भुगतान (जो हॉप-दर-हॉप हैं गैर-परमाणु, लेकिन परिवर्तनीय रूप से जुड़े, वैश्विक लाभ उठाएं वित्तीय संस्थानों का नेटवर्क)। Stellar सितंबर, 2015 से उत्पादन उपयोग में है। blockchain लंबाई को प्रबंधनीय बनाए रखने के लिए, सिस्टम चलता है 5-सेकंड के अंतराल पर एससीपी—blockchain मानकों से तेज़, लेकिन बीजान्टिन समझौते के विशिष्ट अनुप्रयोगों की तुलना में बहुत धीमा। हालाँकि प्राथमिक उपयोग भुगतान ही रहा है, Stellar का भी लाभ देने वाले नॉन-मनी फंजिबल tokens के लिए आकर्षक साबित हुआ तत्काल द्वितीयक बाजारों से (धारा 7.1 देखें)। अगला भाग संबंधित कार्य पर चर्चा करता है। धारा 3 प्रस्तुत करता है एस.सी.पी. धारा 4 एससीपी के हमारे औपचारिक सत्यापन का वर्णन करती है। धारा 5 Stellar की भुगतान परत का वर्णन करती है। धारा 6 सम्बंधित है हमारे कुछ परिनियोजन अनुभव और सीखे गए सबक। धारा 7 प्रणाली का मूल्यांकन करती है। धारा 8 समाप्त होती है.

Stellar सर्वसम्मति प्रोटोकॉल

Stellar सर्वसम्मति प्रोटोकॉल (SCP) कोरम-आधारित है खुली सदस्यता के साथ बीजान्टिन समझौता प्रोटोकॉल। कोरम व्यक्तिगत नोड्स के संयुक्त स्थानीय कॉन्फ़िगरेशन निर्णयों से उभरते हैं। हालाँकि, नोड्स केवल पहचानते हैं कोरम जिसमें वे स्वयं शामिल होते हैं, और उसके बाद ही अन्य सभी कोरम सदस्यों के स्थानीय विन्यास को सीखना। इस दृष्टिकोण का एक लाभ यह है कि एस.सी.पी. स्वाभाविक रूप से कौन से नोड्स मौजूद हैं, इसके विषम विचारों को सहन करता है। इसलिए, नोड्स बिना किसी आवश्यकता के एकतरफा जुड़ सकते हैं और निकल सकते हैं सदस्यता के समन्वय के लिए "परिवर्तन देखें" प्रोटोकॉल। 3.1 संघीय बीजान्टिन समझौता पारंपरिक बीजान्टिन समझौते की समस्या में शामिल हैं: एन नोड्स की बंद प्रणाली, जिनमें से कुछ दोषपूर्ण हैं और हो सकती हैं मनमाना व्यवहार करते हैं. नोड्स इनपुट मान प्राप्त करते हैं और विनिमय करते हैं इनपुट के बीच आउटपुट मान तय करने के लिए संदेश। एक बीजान्टिन समझौता प्रोटोकॉल तब सुरक्षित होता है जब कोई भी दो अच्छे व्यवहार वाले नोड अलग-अलग निर्णय और अद्वितीय आउटपुट नहीं देते हैं निर्णय एक वैध इनपुट था (मान्य सहमति की कुछ परिभाषा के लिए)।एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा लोखवा एट अल. पहले से) एक प्रोटोकॉल तब सक्रिय होता है जब वह इसकी गारंटी देता है प्रत्येक ईमानदार नोड अंततः एक निर्णय देता है। आमतौर पर, प्रोटोकॉल कुछ पूर्णांक के लिए N = 3f + 1 मानते हैं f > 0, तो सुरक्षा और कुछ प्रकार की जीवंतता की गारंटी दें जब तक कि अधिकांश एफ नोड्स दोषपूर्ण हैं। इनमें किसी स्तर पर प्रोटोकॉल, नोड्स प्रस्तावित मूल्यों और एक प्रस्ताव पर वोट करते हैं 2f + 1 वोट प्राप्त करना, जिसे वोटों का कोरम कहा जाता है, बन जाता है निर्णय. N = 3f + 1 नोड्स के साथ, कोई भी दो कोरम आकार 2f + 1 कम से कम f + 1 नोड्स में ओवरलैप; भले ही इनमें से एफ ओवरलैपिंग नोड्स दोषपूर्ण हैं, कम से कम दो कोरम साझा करते हैं एक गैर-दोषपूर्ण नोड, विरोधाभासी निर्णयों को रोकता है। हालाँकि, यह दृष्टिकोण तभी काम करता है जब सभी नोड्स इस पर सहमत हों कोरम का गठन क्या होता है, जो एससीपी में असंभव है दो नोड्स को एक-दूसरे के अस्तित्व के बारे में पता भी नहीं चल सकता है। एससीपी के साथ, प्रत्येक नोड v एकतरफा नोड्स के सेट की घोषणा करता है, इसे कोरम स्लाइस कहा जाता है, जैसे कि (ए) वी का मानना ​​है कि यदि सभी तब, एक स्लाइस के सदस्य सिस्टम की स्थिति के बारे में सहमत होते हैं वे सही हैं, और (बी) वी का मानना है कि कम से कम इसका एक टुकड़ा के बारे में समय पर जानकारी उपलब्ध कराने के लिए उपलब्ध रहेगा सिस्टम की स्थिति. हम परिणामी प्रणाली को सम्मिलित कहते हैं नोड्स और उनके स्लाइस का, एक संघीय बीजान्टिन समझौता (एफबीए) प्रणाली। जैसा कि हम आगे देखेंगे, एक कोरम प्रणाली उभरती है नोड्स के स्लाइस से. अनौपचारिक रूप से, एक FBA नोड के स्लाइस व्यक्त करते हैं कि किसके साथ नोड को सहमति की आवश्यकता है. उदाहरण के लिए, एक नोड को 4 विशिष्ट संगठनों के साथ समझौते की आवश्यकता हो सकती है, प्रत्येक 3 नोड चला रहा है; को डाउनटाइम को समायोजित करें, यह अपने स्लाइस को सभी सेट पर सेट कर सकता है प्रत्येक संगठन से 2 नोड्स शामिल हैं। यदि इसकी आवश्यकता है समझौते के साथ" संबंध सकर्मक रूप से किन्हीं दो नोड्स से संबंधित है, हमें वैश्विक सहमति मिलती है। अन्यथा, हम विचलन प्राप्त कर सकते हैं, लेकिन केवल उन संगठनों के बीच जिनमें से किसी की भी आवश्यकता नहीं है दूसरे के साथ समझौता. आज की टोपोलॉजी को देखते हुए वित्तीय प्रणाली, हम परिकल्पना करते हैं कि व्यापक अभिसरण एक एकल बहीखाता इतिहास का निर्माण करता रहेगा जिसे लोग कहते हैं "Stellar नेटवर्क," जैसा कि हम इंटरनेट के बारे में बात करते हैं। कोरम निम्न प्रकार से स्लाइस से उत्पन्न होते हैं। प्रत्येक नोड निर्दिष्ट करता है इसके द्वारा भेजे गए प्रत्येक संदेश में इसका कोरम पूरा हो जाता है। मान लीजिए S है नोड्स का सेट जिससे संदेशों का एक सेट उत्पन्न हुआ। ए नोड संदेशों के सेट को कोरम तक पहुंचने वाला मानता है सीमा जब S के प्रत्येक सदस्य का S में एक टुकड़ा शामिल होता है। निर्माण के अनुसार, ऐसा सेट S, यदि सर्वसम्मत हो, को संतुष्ट करता है इसके प्रत्येक सदस्य की अनुबंध आवश्यकताएँ। एक दोषपूर्ण सहकर्मी क्या बदलने के लिए तैयार किए गए स्लाइस का विज्ञापन कर सकता है अच्छे व्यवहार वाले नोड्स कोरम पर विचार करते हैं। प्रोटोकॉल विश्लेषण के लिए, हम एफबीए में कोरम को गैर-रिक्त के रूप में परिभाषित करते हैं कम से कम एक कोरम स्लाइस को शामिल करने वाले नोड्स का एस सेट करें प्रत्येक गैर-दोषपूर्ण सदस्य। किसी भी सेट की तरह, यह अमूर्तता ध्वनि है सर्वसम्मत कोरम का प्रतिनिधित्व करने वाले संदेशों का वास्तव में करता है (भले ही इसमें दोषपूर्ण नोड्स से संदेश शामिल हों), और यह तब सटीक होता है जब S में केवल अच्छे व्यवहार वाले नोड्स होते हैं। में इस अनुभाग में, हम यह भी मानते हैं कि नोड्स के स्लाइस नहीं बदलते हैं। फिर भी, हमारे परिणाम बदलते-स्लाइस मामले में स्थानांतरित हो जाते हैं क्योंकि जिस प्रणाली में स्लाइस बदलती है वह किसी प्रणाली से कम सुरक्षित नहीं है एक निश्चित-स्लाइस प्रणाली जिसमें एक नोड के स्लाइस में सभी शामिल होते हैं स्लाइस यह कभी भी चेंजिंग-स्लाइस मामले में उपयोग करता है (प्रमेय देखें)। 13 [68] में)। जैसा कि धारा 4 में बताया गया है, सजीवता निर्भर करती है अच्छे व्यवहार वाले नोड्स अंततः अविश्वसनीय नोड्स को हटा देते हैं उनके टुकड़ों से. क्योंकि अलग-अलग नोड्स की अलग-अलग अनुबंध आवश्यकताएँ होती हैं, FBA सुरक्षा की वैश्विक परिभाषा को रोकता है। हम कहते हैं गैर-दोषपूर्ण नोड्स v1 और v2 आपस में जुड़े हुए हैं जब प्रत्येक v1 का कोरम, v2 के प्रत्येक कोरम को कम से कम एक में काटता है गैर-दोषपूर्ण नोड. एक एफबीए प्रोटोकॉल समझौते को सुनिश्चित कर सकता है केवल आपस में गुंथे हुए नोड्स के बीच; चूंकि एससीपी ऐसा करता है, यह उसकी गलती है सुरक्षा के प्रति सहनशीलता इष्टतम है। इंटरनेट परिकल्पना, अंतर्निहित Stellar का डिज़ाइन बताता है कि लोग नोड्स की देखभाल करते हैं के बारे में आपस में जुड़ जाएगा. हम कहते हैं कि नोड्स I का एक सेट बरकरार है यदि I एक समान रूप से गैर-दोषपूर्ण कोरम है, जैसे कि I के प्रत्येक दो सदस्य आपस में जुड़े हुए हैं, भले ही I के बाहर का प्रत्येक नोड दोषपूर्ण हो। सहजता से, तो फिर, मुझे गैर-अक्षुण्ण के कार्यों के प्रति अभेद्य रहना चाहिए नोड्स. एससीपी गैर-अवरुद्ध जीवंतता [93] और दोनों की गारंटी देता है अक्षुण्ण सेटों की सुरक्षा, हालाँकि नोड्स को स्वयं इसकी आवश्यकता नहीं है यह जानने के लिए (और जानने में सक्षम नहीं हो सकते) कि कौन से सेट बरकरार हैं। इसके अलावा, दो अक्षुण्ण समुच्चयों का मिलन जो प्रतिच्छेद करते हैं एक अक्षुण्ण सेट. इसलिए, अक्षुण्ण सेट एक विभाजन को परिभाषित करते हैं अच्छे व्यवहार वाले नोड्स, जहां प्रत्येक विभाजन सुरक्षित और जीवित है (कुछ शर्तों के तहत), लेकिन विभिन्न विभाजन आउटपुट दे सकते हैं भिन्न निर्णय. 3.1.1 एफबीए में सुरक्षा बनाम जीवंतता संबंधी विचार सीमित अपवादों [64] के साथ, अधिकांश बंद बीजान्टिन अनुबंध प्रोटोकॉल उस संतुलन बिंदु पर ट्यून किए जाते हैं जिस पर सुरक्षा और जीवंतता में दोष सहनशीलता समान है। एफबीए में, इसका मतलब है कि कॉन्फ़िगरेशन जिसमें विफलताओं की परवाह किए बिना, सभी आपस में गुंथे हुए सेट भी बरकरार हैं। यह देखते हुए कि एफबीए निर्धारित करता है विकेंद्रीकृत तरीके से कोरम, यह संभावना नहीं है कि व्यक्तिगत स्लाइस विकल्प इस संतुलन को जन्म देंगे। इसके अलावा, पर कम से कम Stellar में, संतुलन वांछनीय नहीं है: परिणाम एक सुरक्षा विफलता (अर्थात् दोहरा-खर्च किया गया डिजिटल पैसा) हैं जीवंतता विफलता (अर्थात् देरी) से कहीं अधिक बदतर भुगतान में वैसे भी Stellar से पहले कई दिन लगते थे)। लोग इसलिए बड़े कोरम स्लाइस का चयन करना चाहिए और करना चाहिए उनके नोड्स बरकरार रहने की बजाय आपस में जुड़े रहने की अधिक संभावना है। तराजू को और ऊपर उठाने से इससे उबरना आसान हो जाता है पारंपरिक बंद प्रणाली की तुलना में एफबीए प्रणाली में विशिष्ट जीवंतता विफलताएं। बंद सिस्टम में, सभी संदेश अवश्य होने चाहिए कोरम के समान सेट के संबंध में व्याख्या की गई। इसलिए, विफलता से उबरने के लिए नोड्स जोड़ना और हटाना आवश्यक है एक पुनर्विन्यास घटना पर आम सहमति तक पहुंचना, जो एक बार आम सहमति के न रह जाने पर मुश्किल हो जाता है। इसके विपरीत, एफबीए के साथ, कोई भी नोड किसी भी समय अपने कोरम स्लाइस को एकतरफा समायोजित कर सकता है समय. व्यवस्थित रूप से महत्वपूर्ण किसी आउटेज के जवाब में संगठन, नोड प्रशासक अपने स्लाइस को समायोजित कर सकते हैं समस्या के इर्द-गिर्द काम करें, कुछ-कुछ प्रतिक्रियाओं के समन्वय की तरह बीजीपी आपदाओं के लिए [63] (यद्यपि बिना किसी बाधा के भौतिक नेटवर्क लिंक पर रूटिंग)।

Stellar के साथ तेज़ और सुरक्षित वैश्विक भुगतान एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा 3.1.2 कैस्केड प्रमेय एससीपी मूल गोल मॉडल [42] के टेम्पलेट का अनुसरण करता है; प्रत्येक नोड क्रमांकित मतपत्रों की एक श्रृंखला के माध्यम से आगे बढ़ता है तीन कार्यों का प्रयास करना: (1) एक "सुरक्षित" मूल्य की पहचान करना जो पिछले मतपत्र में किसी भी निर्णय से खंडित न हो (अक्सर इसे कहा जाता है) मतपत्र तैयार करना), (2) सुरक्षित मूल्य पर सहमत होना, और (3) पता लगाना कि समझौता सफल रहा। हालाँकि, FBA खुला है सदस्यता कई सामान्य तकनीकों को बाधित करती है, जिससे यह बनता है पारंपरिक बंद प्रोटोकॉल को एफबीए में "पोर्ट" करना असंभव है केवल कोरम की परिभाषा को बदलकर मॉडल बनाएं। कई प्रोटोकॉल द्वारा नियोजित एक तकनीक घूर्णन है टाइमआउट के बाद राउंड-रॉबिन फैशन में लीडर नोड्स के माध्यम से। एक बंद प्रणाली में, राउंड-रॉबिन नेता चयन सुनिश्चित होता है अंततः एक अद्वितीय ईमानदार नेता एक ही मूल्य पर समझौते का समन्वय करता है। दुर्भाग्य से, राउंड-रॉबिन अज्ञात सदस्यता वाले FBA सिस्टम में काम नहीं कर सकता. एक और सामान्य तकनीक जो एफबीए के साथ विफल हो जाती है वह यह मान लेना है कि एक विशेष कोरम सभी नोड्स को मना सकता है। उदाहरण के लिए, यदि हर कोई किसी 2f + 1 नोड को कोरम के रूप में पहचानता है, तो 2f + 1 हस्ताक्षर सभी नोड्स के लिए प्रोटोकॉल स्थिति साबित करने के लिए पर्याप्त है। इसी प्रकार, यदि कोई नोड समान संदेशों का कोरम प्राप्त करता है विश्वसनीय प्रसारण [24] के माध्यम से, नोड मान सकता है कि सभी गैर-दोषपूर्ण नोड्स भी एक कोरम देखेंगे। इसके विपरीत, एफबीए में, ए कोरम का कोरम से बाहर के नोड्स से कोई मतलब नहीं है। अंत में, गैर-संघीय प्रणालियाँ अक्सर "पिछड़े" को नियोजित करती हैं सुरक्षा के बारे में तर्क: यदि एफ + 1 नोड दोषपूर्ण हैं, तो सभी सुरक्षा गारंटी खो जाती है. इसलिए, यदि नोड v सभी f + 1 नोड्स को सुनता है कुछ तथ्य बताएं एफ, वी यह मान सकता है कि कम से कम एक तो बता रहा है सत्य (और इसलिए कि F सत्य है) बिना किसी सुरक्षा हानि के। ऐसे एफबीए में तर्क विफल हो जाता है क्योंकि सुरक्षा जोड़ियों की संपत्ति है नोड्स की, इसलिए एक नोड जो कुछ साथियों के लिए सुरक्षा खो चुका है बुरे तथ्यों को मानकर हमेशा अधिक नोड्स की सुरक्षा खो देते हैं। हालाँकि, एफबीए जीवंतता के बारे में पीछे की ओर तर्क कर सकता है। वी-ब्लॉकिंग सेट को नोड्स के एक सेट के रूप में परिभाषित करें जो प्रत्येक को प्रतिच्छेद करता है वी का टुकड़ा। यदि वी-ब्लॉकिंग सेट बी सर्वसम्मति से दोषपूर्ण है, तो बी नोड को कोरम से वंचित कर सकता है और इसकी जीवंतता को नष्ट कर सकता है। इसलिए, यदि बी सर्वसम्मति से तथ्य एफ बताता है, तो वी जानता है कि या तो एफ है सत्य या v अक्षुण्ण नहीं है. हालाँकि, वी को अभी भी पूरा देखने की जरूरत है यह जानने के लिए कोरम कि आपस में जुड़े हुए नोड्स एफ का खंडन नहीं करेंगे, जो एससीपी में संचार के अंतिम दौर की ओर ले जाता है अन्य FBA प्रोटोकॉल [47] जिनकी अनुरूपता में आवश्यकता नहीं है बंद-सदस्यता प्रोटोकॉल। परिणाम यह है कि हमारे पास है संभावित तथ्यों में विश्वास के तीन संभावित स्तर: अनिश्चित, अक्षुण्ण नोड्स के बीच मानने के लिए सुरक्षित (जो हम करेंगे)। शब्द स्वीकृत तथ्य), और आपस में गुंथे हुए तथ्यों पर विश्वास करना सुरक्षित है नोड्स (जिन्हें हम पुष्ट तथ्य कहेंगे)। नोड v कुशलतापूर्वक यह निर्धारित कर सकता है कि क्या सेट बी अपने सभी स्लाइसों को काटता है या नहीं, इसकी जांच करके वीब्लॉकिंग कर रहा है या नहीं। दिलचस्प बात यह है कि यदि नोड्स हमेशा बयानों की घोषणा करते हैं तो वे स्वीकार करें और एक पूर्ण कोरम एक बयान को स्वीकार करता है, यह एक व्यापक प्रक्रिया शुरू करता है जिसके द्वारा बयान पूरे देश में प्रसारित होते हैं अक्षुण्ण सेट. हम इस प्रचार में अंतर्निहित मुख्य तथ्य को कहते हैं कैस्केड प्रमेय, जो निम्नलिखित को बताता है: यदि मैं एक हूं अक्षुण्ण समुच्चय, Q I के किसी भी सदस्य का कोरम है, और S किसी भी सदस्य का कोरम है Q का सुपरसेट, तो या तो S ⊇I या कोई सदस्य v ∈I है ऐसा कि v < S और I ∩S, v-अवरुद्ध है। सहज रूप से, ये थे ऐसा नहीं है, S के पूरक में कोरम होगा जो I को प्रतिच्छेद करता है लेकिन Q को नहीं, कोरम प्रतिच्छेदन का उल्लंघन करता है। ध्यान दें कि यदि हम S = Q से प्रारंभ करते हैं और बार-बार S का विस्तार करते हैं इसमें ब्लॉक किए गए सभी नोड्स शामिल हैं, हम तब तक एक व्यापक प्रभाव प्राप्त करते हैं, अंततः, S सभी I को समाहित कर लेता है। 3.2 प्रोटोकॉल विवरण एससीपी एक आंशिक रूप से तुल्यकालिक सर्वसम्मति प्रोटोकॉल [42] है जिसमें आम सहमति तक पहुंचने के प्रयासों की एक श्रृंखला शामिल है जिसे कहा जाता है मतपत्र. मतपत्र बढ़ती अवधि के टाइमआउट का उपयोग करते हैं। ए बैलट-सिंक्रनाइज़ेशन प्रोटोकॉल सुनिश्चित करता है कि नोड्स चालू रहें मतपत्र तक समय की बढ़ती अवधि के लिए एक ही मतपत्र प्रभावी रूप से तुल्यकालिक हैं. समाप्ति की गारंटी नहीं है जब तक मतपत्र समकालिक न हो जाएं, लेकिन दो समकालिक मतपत्र जिसमें अच्छे व्यवहार वाले नोड्स के स्लाइस के दोषपूर्ण सदस्य होते हैं हस्तक्षेप न करना एससीपी को समाप्त करने के लिए पर्याप्त है। एक मतदान प्रोटोकॉल प्रत्येक के दौरान की गई कार्रवाइयों को निर्दिष्ट करता है मतपत्र. एक मतपत्र एक तैयार चरण से शुरू होता है, जिसमें नोड्स प्रस्तावित करने के लिए एक ऐसा मूल्य निर्धारित करने का प्रयास करें जो विरोधाभासी न हो कोई पिछला निर्णय. फिर, एक प्रतिबद्ध चरण में, नोड्स प्रयास करते हैं तैयार मूल्य पर निर्णय लेने के लिए. मतदान में एक समझौते के उप-प्रोटोकॉल को नियोजित किया जाता है जिसे फ़ेडरेटेड वोटिंग कहा जाता है, in कौन से नोड अमूर्त कथनों पर वोट करते हैं अंततः इसकी पुष्टि हो सकती है या अटक सकती है। कुछ बयानों को विरोधाभासी, और सुरक्षा नामित किया जा सकता है संघीय मतदान की गारंटी यह है कि इसमें दो सदस्य नहीं होंगे आपस में गुंथे हुए सेट विरोधाभासी बयानों की पुष्टि करते हैं। अक्षुण्ण को छोड़कर किसी कथन की पुष्टि की गारंटी नहीं है निर्धारित करें कि किसके सभी सदस्य एक ही तरह से मतदान करते हैं। हालाँकि, यदि ए एक अक्षुण्ण सेट का सदस्य एक बयान की पुष्टि करता है, फ़ेडरेटेड मतदान यह गारंटी देता है कि अक्षुण्ण सेट के सभी सदस्य अंततः उस कथन की पुष्टि करते हैं। इसलिए, अपरिवर्तनीय कदम उठा रहे हैं पुष्टि करने वाले बयानों के जवाब में जीवंतता बरकरार रहती है अक्षुण्ण नोड्स. नोड्स प्रारंभ में नामांकन से प्राप्त मूल्यों का प्रस्ताव करते हैं प्रोटोकॉल जो एक अक्षुण्ण के सभी सदस्यों की संभावना को बढ़ाता है समान मान प्रस्तावित करते हुए सेट करें, और वह अंततः एकत्रित हो जाता है (हालांकि यह निर्धारित करने का कोई तरीका नहीं है कि अभिसरण पूर्ण है)। नामांकन नेता चयन के साथ संघीय मतदान को जोड़ता है। क्योंकि एफबीए में राउंड-रॉबिन असंभव है, नामांकन का उपयोग होता है एक संभाव्य नेता-चयन योजना। कैस्केड प्रमेय मतपत्र दोनों में महत्वपूर्ण भूमिका निभाता है सिंक्रनाइज़ेशन और अवरुद्ध स्थितियों से बचने में समाप्ति अब संभव नहीं है. 3.2.1 मतदान एससीपी नोड्स क्रमांकित मतपत्रों की एक श्रृंखला के माध्यम से आगे बढ़ते हैं, जिसके बारे में बयानों पर सहमत होने के लिए फ़ेडरेटेड वोटिंग को नियोजित करते हैं मूल्य किस मतपत्र में तय होते हैं या नहीं होते हैं। यदि अतुल्यकालिक या दोषपूर्ण व्यवहार मतपत्र में किसी निर्णय तक पहुंचने से रोकता है, नोड्स का समय समाप्त हो गया है और मतपत्र n + 1 में पुनः प्रयास करें।

एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा लोखवा एट अल. याद रखें फ़ेडरेटेड वोटिंग समाप्त नहीं हो सकती है। इसलिए, कुछ मतपत्रों के बारे में बयान स्थायी रूप से फंस सकते हैं अनिश्चित स्थिति जहां नोड्स कभी भी यह निर्धारित नहीं कर सकते हैं कि वे हैं या नहीं अभी भी प्रगति पर हैं या अटके हुए हैं। क्योंकि नोड्स को खारिज नहीं किया जा सकता अनिश्चित कथनों के बाद में सत्य साबित होने की संभावना, उन्हें कभी भी नए बयानों पर संघीय मतदान का प्रयास नहीं करना चाहिए अनिश्चित लोगों का खंडन करना। प्रत्येक मतपत्र में, नोड दो प्रकार पर फ़ेडरेटेड वोटिंग का उपयोग करते हैं कथन का: • ⟨n,x⟩– तैयार करें, जिसमें कहा गया है कि x के अलावा कोई अन्य मूल्य नहीं है किसी भी मतपत्र में निर्णय लिया गया था या कभी किया जाएगा ≤n. • प्रतिबद्ध ⟨n,x⟩- राज्यों x का निर्णय मतपत्र n में किया जाता है। महत्वपूर्ण रूप से, ध्यान दें कि ⟨n,x⟩विरोधाभास प्रतिबद्ध तैयार करें ⟨n′,x ′⟩जब n ≥n′ और x , x ′। एक नोड ए पर फ़ेडरेटेड वोटिंग का प्रयास करके मतपत्र एन शुरू करता है कथन तैयार करें ⟨n,x⟩. यदि कोई पिछला विवरण तैयार करें फ़ेडरेटेड वोटिंग के माध्यम से सफलतापूर्वक पुष्टि की गई नोड उच्चतम मतपत्र की पुष्टि की गई तैयारी से x चुनता है। अन्यथा, नोड x को आउटपुट पर सेट करता है नामांकन प्रोटोकॉल अगले उपधारा में वर्णित है। यदि और केवल यदि कोई नोड सफलतापूर्वक पुष्टि करता है तो ⟨n,x⟩ तैयार करें मतपत्र n में, यह प्रतिबद्ध ⟨n,x⟩ पर संघीय मतदान का प्रयास करता है। यदि जो सफल होता है, इसका मतलब है कि एससीपी ने निर्णय ले लिया है, इसलिए नोड आउटपुट देता है पुष्टिकृत प्रतिबद्ध कथन से मूल्य। एक अंतर्गुंथित समुच्चय S पर विचार करें। चूंकि अधिकतम एक मान किसी दिए गए मतपत्र में एस के सदस्यों द्वारा तैयार की गई पुष्टि की जा सकती है, किसी भी दो अलग-अलग मूल्यों की पुष्टि नहीं की जा सकती है किसी दिए गए मतपत्र में एस के सदस्य। इसके अलावा, यदि प्रतिबद्ध ⟨n,x⟩ पुष्टि हो गई है, तो तैयार करें ⟨n,x⟩की भी पुष्टि हो गई; तब से तैयार करें ⟨n,x⟩फ़ेडरेटेड वोटिंग की समझौते की गारंटी द्वारा, एक अलग मूल्य के लिए किसी भी पहले की प्रतिबद्धता का खंडन करता है हम पाते हैं कि पहले कोई भिन्न मूल्य तय नहीं किया जा सकता है एस के सदस्यों द्वारा मतपत्र। मतपत्र संख्या पर प्रेरण द्वारा, हम इसलिए जान लें कि एससीपी सुरक्षित है। सजीवता के लिए, एक अक्षुण्ण सेट I और पर्याप्त लंबे पर विचार करें समकालिक मतपत्र एन. यदि स्लाइस में दोषपूर्ण नोड्स दिखाई दे रहे हैं अच्छे व्यवहार वाले नोड्स एन में हस्तक्षेप नहीं करते हैं, फिर मतपत्र द्वारा n + 1 I के सभी सदस्यों ने तैयार कथनों के समान सेट P की पुष्टि की है। यदि P = ∅और मतपत्र n पर्याप्त लंबा था, तो नामांकन प्रोटोकॉल कुछ मान x पर एकत्रित हो गया होगा। अन्यथा, पी में उच्चतम मतपत्र के साथ तैयारी से एक्स का मूल्य होने दें। किसी भी तरह से, मैं समान रूप से संघीय प्रयास करूंगा अगले मतपत्र में तैयारी ⟨n + 1,x⟩ पर मतदान। इसलिए, यदि n + 1 भी समकालिक है, x के लिए निर्णय अनिवार्य रूप से अनुसरण करता है। 3.2.2 नामांकन नामांकन में बयानों पर संघीय मतदान शामिल है: • x को नामांकित करें - बताता है कि x एक वैध निर्णय उम्मीदवार है। नोड्स एकाधिक मानों को नामांकित करने के लिए मतदान कर सकते हैं—अलग-अलग नामांकित कथन विरोधाभासी नहीं हैं. हालाँकि, एक बार एक नोड किसी भी नामांकित बयान की पुष्टि करता है, यह मतदान करना बंद कर देता है नए मान नामांकित करें. फ़ेडरेटेड वोटिंग अभी भी एक नोड को अनुमति देती है नए नामांकित बयानों की पुष्टि करें जिसके लिए उसने वोट नहीं दिया वोट दें या स्वीकार करें ए कोरम से स्वीकार करें ए कोरम से ए वैध है से स्वीकार करें ब्लॉकिंग सेट अप्रतिबद्ध एक वोट दिया स्वीकार किया गया ए पुष्टि की गई ए वोट दिया ¬a चित्र 1. संघीय मतदान के चरण एक अक्षुण्ण सेट के सदस्यों को एक दूसरे की पुष्टि करने की अनुमति देता है नए वोटों को रोकते हुए भी नामांकित मान। नामांकन का (विकसित) परिणाम पुष्टि किए गए नामांकित बयानों में सभी मूल्यों का एक नियतात्मक संयोजन है। यदि x लेनदेन के एक सेट का प्रतिनिधित्व करता है, नोड्स यूनियन ले सकते हैं सेट का, सबसे बड़ा सेट, या उच्चतम hash वाला सेट, इसलिए जब तक सभी नोड्स ऐसा ही करते हैं। क्योंकि नोड्स नए को रोकते हैं एक नामांकित बयान की पुष्टि के बाद वोट, का सेट पुष्टि किए गए कथनों में केवल सीमित संख्या में मान हो सकते हैं। तथ्य यह है कि पुष्ट बयान विश्वसनीय रूप से फैलते हैं अक्षुण्ण सेट का मतलब है कि अक्षुण्ण नोड्स अंततः एकाग्र हो जाते हैं नामांकित मूल्यों का समान सेट और इसलिए नामांकन परिणाम, यद्यपि किसी अज्ञात बिंदु पर प्रोटोकॉल में मनमाने ढंग से देर हो चुकी है। नोड्स को कम करने के लिए फ़ेडरेटेड लीडर चयन का उपयोग करते हैं नामांकित कथनों में विभिन्न मानों की संख्या। केवल एक नेता जिसने पहले से ही नामांकित बयान के लिए मतदान नहीं किया है वह एक नया एक्स पेश कर सकता है। अन्य नोड्स सुनने की प्रतीक्षा करते हैं नेता और बस अपने नेताओं के (वैध) नामांकित वोटों की नकल करें। विफलता को समायोजित करने के लिए, नेताओं का समूह बढ़ता रहता है टाइमआउट होते हैं, हालाँकि व्यवहार में केवल कुछ नोड ही x के नए मान प्रस्तुत करते हैं। 3.2.3 संघीय मतदान फ़ेडरेटेड वोटिंग में दिखाए गए तीन-चरण प्रोटोकॉल को नियोजित किया गया है चित्र 1. नोड्स पहले अमूर्त कथनों पर सहमत होने का प्रयास करते हैं मतदान करना, फिर स्वीकार करना और अंत में बयानों की पुष्टि करना। एक नोड v किसी भी वैध कथन के लिए वोट कर सकता है जो कि नहीं है इसके दूसरे का खंडन करेंबकाया वोट और स्वीकृत बयान। यह एक हस्ताक्षरित वोट संदेश प्रसारित करके ऐसा करता है। v तब a को स्वीकार करता है यदि a अन्य स्वीकृत कथनों के अनुरूप है और या तो (केस 1)v उस कोरम का सदस्य है जिसमें प्रत्येक नोड या तो a के लिए वोट करता है या a स्वीकार करता है, या (केस 2) भले ही v हो a के लिए वोट नहीं किया, एक वी-ब्लॉकिंग सेट a स्वीकार करता है। मामले 2 में, वी मई पहले ए के विपरीत वोट डाले थे, जो अब दिए हैं खारिज कर दिया गया. v को अस्वीकृत वोटों के बारे में भूलने की अनुमति है और दिखावा करें कि उसने उन्हें कभी नहीं डाला क्योंकि यदि वह बरकरार है, तो वह जानता है खारिज किए गए वोट केस 1 के माध्यम से कोरम पूरा नहीं कर सकते। v प्रसारित करता है कि वह a स्वीकार करता है, फिर a की पुष्टि करता है जब वह अंदर होता है एक कोरम जो सर्वसम्मति से स्वीकार करता है। चित्र 2 दिखाता है वी-ब्लॉकिंग सेट और कैस्केड प्रमेय का प्रभाव संघीय मतदान. दो परस्पर जुड़े हुए नोड विरोधाभासी बयानों की पुष्टि नहीं कर सकते, क्योंकि दो आवश्यक कोरम को साझा करना होगाStellar के साथ तेज़ और सुरक्षित वैश्विक भुगतान एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा 3 4 2 1 5 7

वोट एक्स

वोट Y (ए) 3 4 2 1 5 7 6 वोट करें एक्स वोट करें एक्स वोट करें एक्स वोट करें वाई वोट करें एक्स वोट करें वाई वोट करें वाई (बी) 3 4 2 1 5 7 6 स्वीकार करो एक्स वोट करें एक्स स्वीकार करो एक्स वोट करें वाई स्वीकार करो एक्स वोट करें वाई वोट करें वाई (सी) 3 4 2 1 5 7 6 स्वीकार करो एक्स स्वीकार करो एक्स स्वीकार करो एक्स वोट करें वाई स्वीकार करो एक्स स्वीकार करो एक्स वोट करें वाई (डी) 3 4 2 1 5 7 6 स्वीकार करो एक्स वोट करें एक्स स्वीकार करो एक्स स्वीकार करो एक्स स्वीकार करो एक्स स्वीकार करो एक्स स्वीकार करो एक्स (ई) चित्र 2. फ़ेडरेटेड वोटिंग में कैस्केड प्रभाव। प्रत्येक नोड में एक कोरम स्लाइस होता है जो स्लाइस के सदस्यों को तीरों द्वारा दर्शाया जाता है। (ए) विरोधाभासी कथन एक्स और वाई पेश किए गए हैं। (बी) नोड्स वैध बयानों के लिए वोट करते हैं। (सी) नोड 1 अपने कोरम के बाद एक्स को स्वीकार करता है {1, 2, 3, 4} सर्वसम्मति से एक्स के लिए वोट करते हैं। (डी) नोड्स 1, 2, 3, और 4 सभी एक्स को स्वीकार करते हैं; सेट {1} 5-अवरुद्ध है, इसलिए नोड 5, ओवररुलिंग, एक्स को स्वीकार करता है Y के लिए इसका पिछला वोट। (ई) सेट {5} 6- और 7-अवरुद्ध है, इसलिए 6 और 7 दोनों एक्स को स्वीकार करते हैं। गैर-दोषपूर्ण नोड जो विरोधाभासी कथनों को स्वीकार नहीं कर सका। किसी कथन की पुष्टि की गारंटी नहीं है: में मत विभाजन की स्थिति में, दोनों कथन स्थायी रूप से मान्य हो सकते हैं मतदान चरण में कोरम पूरा होने के इंतजार में अटके रहे। हालाँकि, यदि एक अक्षुण्ण सेट में एक नोड I एक कथन की पुष्टि करता है, कैस्केड प्रमेय और स्वीकार केस 2 यह सुनिश्चित करता है कि मैं अंततः सब कुछ करूंगा उस कथन की पुष्टि करें. 3.2.4 मतपत्र तुल्यकालन यदि नोड्स किसी प्रतिबद्ध कथन की पुष्टि करने में असमर्थ हैं वर्तमान मतपत्र, वे समय समाप्ति के बाद छोड़ देते हैं। टाइमआउट हो जाता है प्रत्येक मतपत्र के साथ अधिक समय तक, ताकि मनमानी सीमा में समायोजित किया जा सके नेटवर्क विलंब पर. हालाँकि, अकेले टाइमआउट उन नोड्स के मतपत्रों को सिंक्रनाइज़ करने के लिए पर्याप्त नहीं हैं जो एक ही समय में शुरू नहीं हुए थे अन्य कारणों से डीसिंक्रनाइज़ हो गया। सिंक्रनाइज़ेशन प्राप्त करने के लिए, नोड्स केवल एक बार टाइमर शुरू करते हैं जब वे इसका हिस्सा होते हैं कोरम जो वर्तमान (या बाद के) मतपत्र पर है। यह जल्दी शुरू हुए नोड्स को धीमा कर देता है और सुनिश्चित करता है कि नहीं एक अक्षुण्ण समूह का सदस्य समूह से बहुत आगे रहता है। इसके अलावा, यदि कोई नोड बाद में कभी भी वी-ब्लॉकिंग सेट को नोटिस करता है मतपत्र, यह तुरंत सबसे निचले मतपत्र पर चला जाता है जैसे कि यह किसी भी टाइमर की परवाह किए बिना, अब ऐसा नहीं है। झरना प्रमेय तब यह सुनिश्चित करता है कि सभी भटकने वाले पकड़ में आ जाएँ। नतीजा यह है कि मतपत्र पूरे अक्षुण्ण में मोटे तौर पर समकालिक होते हैं सिस्टम सिंक्रोनस हो जाने पर सेट करें। 3.2.5 संघीय नेता का चयन नेता चयन प्रत्येक नोड को ऐसे नेताओं को चुनने की अनुमति देता है जिस तरह से नोड्स आम तौर पर केवल एक या छोटी संख्या चुनते हैं नेताओं का. नेता की विफलता, नेता चयन को समायोजित करने के लिए चक्रों के माध्यम से आगे बढ़ता है। अगर मौजूदा दौर के नेता ऐसा प्रतीत होता है कि वे अपनी ज़िम्मेदारियाँ पूरी नहीं कर रहे हैं, फिर एक के बाद कुछ टाइमआउट अवधि के नोड्स अगले दौर में आगे बढ़ते हैं उन नेताओं के समूह का विस्तार करें जिनका वे अनुसरण करते हैं। प्रत्येक राउंड दो अद्वितीय क्रिप्टोग्राफ़िक hash फ़ंक्शंस, H0 और H1 को नियोजित करता है, जो कि रेंज [0,hmax) में पूर्णांक आउटपुट करता है। उदाहरण के लिए, Stellar Hi(m) = SHA256(i∥b∥r ∥m) का उपयोग करता है, जहां बी समग्र एससीपी उदाहरण (ब्लॉक या लेज़र नंबर) है, आर है नेता चयन राउंड संख्या, और एचमैक्स = 2256। भीतर एक दौर में, हम नोड v की प्राथमिकता को इस प्रकार परिभाषित करते हैं: प्राथमिकता(v) = H1(v) लीडर के रूप में चुनने के लिए प्रत्येक नोड के लिए एक स्ट्रॉमैन होगा सर्वोच्च प्राथमिकता वाला नोडेव(v)। यह दृष्टिकोण काम करता है लगभग समान कोरम स्लाइस के साथ ठीक है, लेकिन ठीक से नहीं असंतुलित विन्यास में नोड्स के महत्व को पकड़ें। उदाहरण के लिए, यदि यूरोप और चीन प्रत्येक 3 का योगदान करते हैं प्रत्येक कोरम में नोड्स, लेकिन चीन 1,000 नोड्स चलाता है और यूरोप 4, तो चीन के पास सर्वोच्च प्राथमिकता वाला नोड 99.6% होगा समय का. इसलिए हम स्लाइस वजन की एक धारणा पेश करते हैं, जहां वज़न(यू,वी) ∈[0, 1] नोड यू के कोरम स्लाइस का अंश है नोड युक्त वी. जब नोड यू एक नए नेता का चयन कर रहा है, यह केवल पड़ोसियों पर विचार करता है, जिसे इस प्रकार परिभाषित किया गया है: पड़ोसी(यू) = { वी | H0(v) < hmax · वजन(u,v) } एक नोड्यू तब नेताओं के एक खाली सेट के साथ शुरू होता है, और प्रत्येक पर राउंड इसमें उच्चतम के साथ पड़ोसियों (यू) में नोड वी जोड़ता है प्राथमिकता(v). यदि पड़ोसियों का सेट किसी भी दौर में खाली है, तो आप इसके बजाय H0(v)/weight(u,v) के न्यूनतम मान के साथ नोडव जोड़ते हैं।

एससीपी का औपचारिक सत्यापन

डिज़ाइन त्रुटियों को खत्म करने के लिए, हमने औपचारिक रूप से एससीपी की सुरक्षा का सत्यापन किया और जीवंतता गुण (देखें [65])। विशेष रूप से, हमने सत्यापित किया कि आपस में गुंथे हुए नोड्स कभी असहमत नहीं होते हैं और नीचे चर्चा की गई शर्तों के तहत, एक अक्षुण्ण सेट का प्रत्येक सदस्य अंततः निर्णय लेता है। दिलचस्प बात यह है कि सत्यापन से पता चला कि जिन शर्तों के तहत एससीपी जीवंतता की गारंटी देता है वे सूक्ष्म हैं, और शुरू में सोचे गए से अधिक मजबूत [68]: जैसा कि नीचे चर्चा की गई है, दुर्भावनापूर्ण नोड्स जो बिना किसी अन्यथा समय में हेरफेर करते हैं प्रोटोकॉल से विचलन करने पर मैन्युअल रूप से बेदखल करने की आवश्यकता हो सकती है कोरम स्लाइस से.

एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा लोखवा एट अल. यह सुनिश्चित करने के लिए कि संपत्तियाँ हर संभव तरीके से सही साबित हों एफबीए कॉन्फ़िगरेशन और निष्पादन, हम मनमाना मानते हैं मनमाने स्थानीय विन्यास वाले नोड्स की संख्या। यह इसमें असंयुक्त अक्षुण्ण सेटों के साथ-साथ संभावित रूप से असीमित लंबे निष्पादन वाले परिदृश्य शामिल हैं। कमी यह है कि हम पैरामीटरयुक्त सत्यापन की चुनौतीपूर्ण समस्या का सामना करें अनंत-राज्य प्रणाली। सत्यापन को सुगम बनाए रखने के लिए, हमने आइवी [69] और [82] की कार्यप्रणाली का उपयोग करके एससीपी को फर्स्टऑर्डर लॉजिक (FOL) में मॉडल किया। सत्यापन प्रक्रिया में मैन्युअल रूप से आगमनात्मक अनुमान प्रदान करना शामिल होता है जिसे बाद में स्वचालित रूप से जांचा जाता है आइवी लता। एससीपी का एफओएल मॉडल इसके कुछ पहलुओं का सार प्रस्तुत करता है एफबीए सिस्टम जिन्हें एफओएल में संभालना मुश्किल है (उदाहरण के लिए,)। कैस्केड प्रमेय को एक स्वयंसिद्ध के रूप में लिया जाता है), इसलिए हम सत्यापित करते हैं इसाबेल/HOL [75] का उपयोग करके अमूर्तता की सुदृढ़ता। FOL में सत्यापन समस्या व्यक्त करने के बाद, हम एक आगमनात्मक अपरिवर्तनीय प्रदान करके सुरक्षा को सत्यापित करते हैं। आगमनात्मक अपरिवर्तनीय में लगभग एक दर्जन एक-पंक्ति अनुमान शामिल हैं प्रोटोकॉल विशिष्टता की 150 पंक्तियाँ। फिर हम आइवी के लीनियर टेम्पोरल लॉजिक में एससीपी की जीवंतता गुणों को निर्दिष्ट करते हैं और इसका उपयोग करते हैं जीवंतता को कम करने के लिए [80, 81] की सुरक्षा में कमी सत्यापन समस्या से लेकर आगमनात्मक खोजने की समस्या तक अपरिवर्तनीय. जबकि एससीपी की सुरक्षा अपेक्षाकृत सरल है साबित करें, एससीपी का जीवंतता तर्क बहुत अधिक जटिल है इसमें लगभग 150 सिंगल-लाइन इनवेरिएंट शामिल हैं। सजीवता सिद्ध करने के लिए एक सटीक औपचारिकता की आवश्यकता होती है वे धारणाएँ जिनके तहत एससीपी समाप्ति सुनिश्चित करता है। हमने शुरू में एक अक्षुण्ण सेट के बारे में सोचा था जिसे मैं हमेशा समाप्त कर दूंगा सदस्यों ने अपने स्लाइस [68] से दोषपूर्ण नोड्स हटा दिए। हालाँकि, यह अपर्याप्त साबित हुआ: एक अच्छा व्यवहार (लेकिन अक्षुण्ण नहीं) के एक सदस्य के कोरम में नोड, के अंतर्गत कर सकते हैं दोषपूर्ण नोड्स का प्रभाव, पूरा करके समाप्ति को रोकें मतपत्र की समाप्ति से ठीक पहले कोरम, जिससे कारण बनता है I के सदस्यों ने अगले मतपत्र में x के विभिन्न मानों को चुना। इसलिए हमें अतिरिक्त रूप से यह मान लेना चाहिए कि, अनौपचारिक रूप से, I के एक सदस्य के कोरम में प्रत्येक नोड अंततः या तो समय पर हो जाता है या पर्याप्त अवधि तक संदेश ही नहीं भेजता है। व्यवहार में, इसका अर्थ है I might के सदस्य स्थिति ठीक होने तक उनके स्लाइस को समायोजित करने की आवश्यकता है। यह समस्या एफबीए सिस्टम में अंतर्निहित नहीं है: लोसा एट अल। [47] मौजूद एक प्रोटोकॉल जिसकी जीवंतता सख्ती से कमजोर पर निर्भर करती है स्लाइस से दोषपूर्ण नोड्स को हटाने की आवश्यकता के बिना, केवल अंतिम समकालिकता और अंतिम नेता चुनाव की धारणाएँ।

भुगतान नेटवर्क

यह अनुभाग Stellar के भुगतान नेटवर्क का वर्णन करता है, जिसे SCP के शीर्ष पर एक प्रतिकृति राज्य मशीन [88] के रूप में कार्यान्वित किया गया है। 5.1 लेजर मॉडल Stellar का खाता बही एक खाता अमूर्त (इंच) के आसपास डिज़ाइन किया गया है अधिक सिक्का-केंद्रित अव्ययित लेनदेन आउटपुट के विपरीत या Bitcoin का UTXO मॉडल)। खाता बही की सामग्री में शामिल हैं a चार अलग-अलग प्रकार की खाता बही प्रविष्टियों का सेट: खाते, ट्रस्टलाइन, ऑफ़र, और खाता डेटा। खाते वे प्रिंसिपल होते हैं जो संपत्ति के मालिक होते हैं और जारी करते हैं। प्रत्येक खाते का नाम सार्वजनिक कुंजी द्वारा रखा जाता है. डिफ़ॉल्ट रूप से, संबंधित निजी कुंजी खाते के लिए लेनदेन पर हस्ताक्षर कर सकती है। हालाँकि, अन्य हस्ताक्षरकर्ताओं को जोड़ने और खाते को नाम देने वाली कुंजी को अनधिकृत करने के लिए खातों को पुन: कॉन्फ़िगर किया जा सकता है एकाधिक हस्ताक्षरकर्ताओं की आवश्यकता के लिए "मल्टीसिग" विकल्प। प्रत्येक खाता इसमें यह भी शामिल है: एक अनुक्रम संख्या (लेनदेन में शामिल)। पुनरावृत्ति को रोकने के लिए), कुछ झंडे, और "मूल" में एक संतुलन पूर्व-खनित क्रिप्टोकरेंसी जिसे एक्सएलएम कहा जाता है, को कम करने का इरादा है कुछ सेवा से इनकार हमले और बाजार निर्माण की सुविधा प्रदान करते हैं एक तटस्थ मुद्रा के रूप में. ट्रस्टलाइनें जारी संपत्तियों के स्वामित्व को ट्रैक करती हैं, जो हैं जारीकर्ता खाते और एक संक्षिप्त से मिलकर एक जोड़ी द्वारा नामित किया गया संपत्ति कोड (उदाहरण के लिए, "USD" या "EUR")। प्रत्येक ट्रस्टलाइन निर्दिष्ट करती है एक खाता, एक संपत्ति, उस संपत्ति में खाते का शेष, ए वह सीमा जिसके ऊपर संतुलन नहीं बढ़ सकता, और कुछ झंडे। किसी खाते को किसी संपत्ति को रखने के लिए स्पष्ट रूप से सहमति देनी होगी एक ट्रस्टलाइन बनाना, स्पैमर्स को परेशान होने से रोकना अवांछित संपत्ति वाले खाते. अपने ग्राहक को जानें (केवाईसी) नियमों के तहत कई वित्तीय संस्थानों को यह जानने की आवश्यकता होती है कि उनके पास किसकी जमा राशि है, उदाहरण के लिए फोटो आईडी की जांच करके। अनुपालन के लिए, जारीकर्ता निर्धारित कर सकते हैं उनके खातों पर एक वैकल्पिक auth_reqired ध्वज, उनके द्वारा जारी की गई संपत्तियों के स्वामित्व को अधिकृत खातों तक सीमित कर देता है। ऐसा प्राधिकरण प्रदान करने के लिए, जारीकर्ता एक अधिकृत सेट करता है ग्राहकों की ट्रस्टलाइन पर ध्वजांकित करें। ऑफ़र किसी खाते की व्यापार करने की इच्छा से मेल खाते हैं किसी विशेष परिसंपत्ति की एक निश्चित राशि को किसी अन्य के लिए ऑर्डर बुक पर कीमत; वे स्वचालित रूप से मेल खाते हैं और खरीद/बिक्री की कीमतें पार होने पर भरा जाता है। अंत में, खाता डेटा में खाता, कुंजी, मूल्य त्रिगुण शामिल होते हैं, जो खाताधारकों को अनुमति देते हैं छोटे मेटाडेटा मान प्रकाशित करने के लिए। लेजर स्पैम को रोकने के लिए, न्यूनतम XLM बैलेंस है, रिजर्व कहा जाता है. प्रत्येक के साथ एक खाते का रिज़र्व बढ़ता है संबंधित खाता बही प्रविष्टि और खाता बही प्रविष्टि घट जाती है गायब हो जाता है (उदाहरण के लिए, जब कोई ऑर्डर भरा जाता है या रद्द किया जाता है, या जब कोई ट्रस्टलाइन हटा दी गई है)। वर्तमान में रिज़र्व 0.5 XLM बढ़ता है (∼$0.03) प्रति बही प्रविष्टि। रिज़र्व के बावजूद, यह है किसी खाते को हटाकर उसका संपूर्ण मूल्य पुनः प्राप्त करना संभव है यह एक अकाउंटमर्ज ऑपरेशन के साथ है। चित्र 3 में दिखाया गया एक लेज़र हेडर, वैश्विक विशेषताओं को संग्रहीत करता है: एक बही संख्या, पैरामीटर जैसे आरक्षित शेष प्रति लेज़र प्रविष्टि, पिछले लेज़र हेडर का hash (वास्तव में कई hashes एक स्किपलिस्ट बनाते हैं), एससीपी आउटपुट सहित इस बहीखाते पर लागू नए लेनदेन का hash, का hash उन लेन-देन के परिणाम (उदाहरण के लिए, सफलता या विफलता)। प्रत्येक), और सभी बही प्रविष्टियों का एक स्नैपशॉट hash। क्योंकि स्नैपशॉट hash में सभी बही सामग्री शामिल है, validator को लेनदेन को मान्य करने के लिए इतिहास बनाए रखने की आवश्यकता नहीं है। हालाँकि, करोड़ों प्रत्याशित पैमाने पर खाते, हम प्रत्येक पर सभी लेज़र प्रविष्टि तालिकाओं को पुनःhash नहीं कर सकते खाता बंद करें. इसके अलावा, बहीखाता हस्तांतरित करना व्यावहारिक नहीं हैStellar के साथ तेज़ और सुरक्षित वैश्विक भुगतान एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा बहीखाता #=4 एच(पिछला एचडीआर) एससीपी आउटपुट एच∗(परिणाम) H∗(स्नैपशॉट) ... शीर्षक बहीखाता #=5 एच(पिछला एचडीआर) एससीपी आउटपुट एच∗(परिणाम) H∗(स्नैपशॉट) ... शीर्षक . . . चित्र 3. बही सामग्री। H SHA-256 है, जबकि H∗H के पदानुक्रमित या पुनरावर्ती अनुप्रयोग का प्रतिनिधित्व करता है। SCP आउटपुट पिछले हेडर hash पर भी निर्भर करता है। खाता बनाएं नया खाता बही प्रविष्टि बनाएं और निधि प्रदान करें खाता विलय खाता बही प्रविष्टि हटाएँ विकल्प सेट करें खाता फ़्लैग और हस्ताक्षरकर्ता बदलें भुगतान गंतव्य को परिसंपत्ति की विशिष्ट मात्रा का भुगतान करें। एक्ट. पाथपेमेंट भुगतान की तरह, लेकिन अलग-अलग परिसंपत्ति में भुगतान करें (ऊपर)। सीमित करना); अधिकतम 5 मध्यस्थ संपत्तियां निर्दिष्ट करें ऑफ़र प्रबंधित करें ऑफ़र बही प्रविष्टि बनाएं/हटाएं/बदलें, -निष्क्रिय प्रस्ताव शून्य प्रसार की अनुमति देने के लिए निष्क्रिय संस्करण के साथ डेटा प्रबंधित करें खाता बनाएं/हटाएं/बदलें। डेटा बही प्रविष्टि चेंजट्रस्ट ट्रस्टलाइन बनाएं/हटाएं/बदलें अनुमति दें ट्रस्टलाइन पर अधिकृत ध्वज सेट करें या साफ़ करें बम्प अनुक्रम सीक बढ़ाएँ. खाते पर संख्या चित्र 4. प्रमुख खाता संचालन हर बार एक नोड से डिस्कनेक्ट होने पर उस आकार का बहुत लंबे समय तक नेटवर्क. इसलिए स्नैपशॉट hash है hashing और स्थिति सामंजस्य दोनों को अनुकूलित करने के लिए डिज़ाइन किया गया है। विशेष रूप से, स्नैपशॉट समय के अनुसार बही प्रविष्टियों को स्तरीकृत करता है घातीय आकार के कंटेनरों के एक सेट में अंतिम संशोधन बाल्टी कहा जाता है. बाल्टियों के संग्रह को बाल्टी कहा जाता है सूची, और लॉग-संरचित मर्ज-पेड़ों से कुछ समानता रखती है (एलएसएम-पेड़) [77]। लेन-देन प्रसंस्करण के दौरान बकेट सूची नहीं पढ़ी जाती है (धारा 5.4 देखें)। इसलिए, निश्चित डिज़ाइन एलएसएम-पेड़ों के पहलुओं में ढील दी जा सकती है। विशेष रूप से, यादृच्छिक कुंजी द्वारा पहुंच की आवश्यकता नहीं है, और बकेट केवल कभी-कभी पढ़े जाते हैं क्रमिक रूप से विलय स्तरों के भाग के रूप में। बाल्टी को हिलाना सूची hash द्वारा बनाई जाती है क्योंकि प्रत्येक बाल्टी को मर्ज किया जाता है और बाल्टी hashes (एक छोटा,) के एक नए संचयी hash की गणना की जाती है प्रत्येक खाता बंद होने पर संदर्भ का निश्चित सूचकांक hashes)। वियोग के बाद बकेट सूची का मिलान करने के लिए डाउनलोड करना आवश्यक है केवल बाल्टियाँ भिन्न होती हैं। 5.2 लेन-देन मॉडल एक लेन-देन में एक स्रोत खाता, वैधता मानदंड, शामिल होते हैं मेमो, और एक या अधिक परिचालनों की सूची। चित्र 4 उपलब्ध परिचालनों को सूचीबद्ध करता है। प्रत्येक ऑपरेशन का एक स्रोत खाता होता है, जो समग्र लेन-देन में चूक। एक लेन-देन अवश्य होना चाहिए प्रत्येक स्रोत खाते से संबंधित कुंजियों द्वारा हस्ताक्षरित होना चाहिए एक ऑपरेशन. मल्टीसिग खातों के लिए अधिक हस्ताक्षर की आवश्यकता हो सकती है कुछ ऑपरेशनों के लिए वजन (जैसे सेटऑप्शंस) और कम दूसरों के लिए (जैसे कि अलाऊट्रस्ट)। लेन-देन परमाणु हैं - यदि कोई ऑपरेशन विफल होता है, तो कोई भी नहीं उन्हें निष्पादित करें. यह मल्टी-वे सौदों को सरल बनाता है। मान लीजिए एक जारीकर्ता भूमि कार्यों का प्रतिनिधित्व करने के लिए एक संपत्ति बनाता है, और उपयोगकर्ता ए एक छोटे भूमि पार्सल के बदले $10,000 का आदान-प्रदान करना चाहता है बी के स्वामित्व वाला बड़ा भूमि पार्सल। दोनों उपयोगकर्ता दोनों हस्ताक्षर कर सकते हैं एक एकल लेन-देन जिसमें तीन ऑपरेशन होते हैं: दो भूमि भुगतान और एक डॉलर का भुगतान। लेन-देन की मुख्य वैधता मानदंड उसकी अनुक्रम संख्या है, जो लेन-देन की अनुक्रम संख्या से एक अधिक होनी चाहिए स्रोत खाता बही प्रविष्टि. वैध लेनदेन निष्पादित करना (सफलतापूर्वक या नहीं) अनुक्रम संख्या में वृद्धि करता है, जिससे पुनरावृत्ति को रोका जा सकता है। आरंभिक अनुक्रम संख्याओं में बही-खाता होता है हटाने के बाद भी दोबारा चलाने से रोकने के लिए उच्च बिट्स में संख्या और एक खाता पुनः बनाना। अन्य वैधता मानदंड कब पर एक वैकल्पिक सीमा है एक लेन-देन निष्पादित हो सकता है। भूमि और डॉलर पर लौटना ऊपर स्वैप करें, यदि A, B से पहले लेनदेन पर हस्ताक्षर करता है, तो A ऐसा नहीं कर सकता है चाहते हैं कि बी जमा करने से पहले एक वर्ष के लिए लेनदेन पर बैठे यह, और इसलिए लेनदेन को अमान्य करने के लिए एक समय सीमा लगा सकता है कुछ दिनों के बाद. मल्टीसिग खातों को भी कॉन्फ़िगर किया जा सकता है hash पूर्व-छवि के रहस्योद्घाटन को हस्ताक्षरित महत्व देने के लिए, जो, समय सीमा के साथ मिलकर, परमाणु क्रॉसचेन ट्रेडिंग [1] की अनुमति देता है। लेन-देन का स्रोत खाता XLM में एक मामूली शुल्क का भुगतान करता है, 10−5 XLM जब तक भीड़ न हो। भीड़भाड़ के तहत, संचालन की लागत डच नीलामी द्वारा निर्धारित की जाती है। सत्यापनकर्ता हैं शुल्क द्वारा मुआवजा नहीं दिया गया क्योंकि validators अनुरूप हैं Bitcoin पूर्ण नोड्स के लिए, खनिक नहीं। XLM को नष्ट करने के बजाय, फीस का पुनर्चक्रण किया जाता है और वोट द्वारा आनुपातिक रूप से वितरित किया जाता है मौजूदा XLM धारक, जो पूर्वव्यापी में हो सकते हैं या हो सकते हैं जटिलता के लायक नहीं रहा. 5.3 सर्वसम्मत मूल्य प्रत्येक बहीखाता के लिए, Stellar डेटा संरचना पर सहमत होने के लिए SCP का उपयोग करता है तीन फ़ील्ड के साथ: एक लेनदेन सेट hash (hash सहित) पिछले लेज़र हेडर का), एक समापन समय, एकडी उन्नयन. जब एकाधिक मानों की पुष्टि की जाती है, तो नामांकित किया जाता है, Stellar लेता है लेन-देन सबसे अधिक संचालन (संबंध तोड़ना) के साथ सेट किया गया है कुल शुल्क से, फिर लेनदेन सेट hash), सभी का मिलन उन्नयन, और उच्चतम समापन समय। एक करीबी समय ही है वैध है यदि यह अंतिम बही के बंद होने के समय और के बीच है मौजूद है, इसलिए नोड्स अमान्य समय नामांकित नहीं करते हैं। अपग्रेड वैश्विक मापदंडों जैसे आरक्षित शेष, न्यूनतम संचालन शुल्क और प्रोटोकॉल संस्करण को समायोजित करते हैं। कब नामांकन के दौरान संयुक्त रूप से, उच्च शुल्क और प्रोटोकॉल संस्करण संख्याएं कम शुल्कों का स्थान ले लेती हैं। अपग्रेड फ़ेडरेटेड-वोटिंग टसल स्पेस [34] के माध्यम से शासन को प्रभावित करते हैं, न ही समतावादी और न ही केंद्रीकृत। प्रत्येक validator को इस प्रकार कॉन्फ़िगर किया गया है या तो शासी या गैर-शासकीय (डिफ़ॉल्ट), अनुसार क्या इसका संचालक शासन में भाग लेना चाहता है। शासी validators तीन प्रकार के उन्नयन पर विचार करते हैं: वांछित, वैध और अमान्य (कुछ भी validator नहीं करता है

एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा लोखवा एट अल. validator कोर क्षितिज एफएस डीबी डीबी सबमिट करें ग्राहक ग्राहक अन्य validators चित्र 5. Stellar validator वास्तुकला जानते हैं कि इसे कैसे क्रियान्वित करना है)। वांछित उन्नयन को कॉन्फ़िगर किया गया है एक विशिष्ट समय पर ट्रिगर, जिसका उद्देश्य आपस में समन्वय स्थापित करना है संचालक. गवर्निंग नोड्स हमेशा वांछित को नामांकित करने के लिए मतदान करते हैं अपग्रेड करें, स्वीकार करें लेकिन वैध अपग्रेड को नामांकित करने के लिए वोट न करें (अर्थात, अवरोधक कोरम के साथ चलें), और कभी भी वोट न दें या अमान्य अपग्रेड स्वीकार करें. गैर-शासी validator की प्रतिध्वनि वैध उन्नयन के लिए वे जो भी वोट देखते हैं, अनिवार्य रूप से प्रत्यायोजित करते हैं विकल्प चुनने वालों के लिए क्या उन्नयन वांछित है, इस पर निर्णय एक शासन भूमिका के लिए. 5.4 क्रियान्वयन चित्र 5 Stellar की validator वास्तुकला को दर्शाता है। एक दानव स्टेलर-कोर कहा जाता है (C++ की ∼92k लाइनें, तीसरे पक्ष के पुस्तकालयों की गिनती नहीं) एससीपी प्रोटोकॉल और प्रतिकृति राज्य मशीन को लागू करता है। एससीपी के लिए मूल्यों का उत्पादन करने के लिए बड़ी संख्या में बही प्रविष्टियों को छोटी क्रिप्टोग्राफ़िक में कम करने की आवश्यकता होती है hashes. इसके विपरीत, लेनदेन सत्यापन और निष्पादन खाता स्थिति और ऑर्डर मिलान देखने की आवश्यकता है सबसे अच्छी कीमत. दोनों कार्यों को कुशलतापूर्वक पूरा करने के लिए, तारकीय-कोर बहीखाता के दो प्रतिनिधित्व रखता है: एक बाहरी प्रतिनिधित्व जिसमें बकेट सूची होती है, जिसे बाइनरी फ़ाइलों के रूप में संग्रहीत किया जाता है कुशलतापूर्वक अद्यतन किया जा सकता है और क्रमिक रूप से rehashed किया जा सकता है, और SQL डेटाबेस में एक आंतरिक प्रतिनिधित्व (PostgreSQL उत्पादन नोड्स के लिए)। Stellar-कोर एक केवल-लेखन इतिहास संग्रह बनाता है प्रत्येक लेन-देन सेट जिसकी पुष्टि की गई थी और उसके स्नैपशॉट बाल्टियाँ। संग्रह नए नोड्स को स्वयं बूटस्ट्रैप करने देता है नेटवर्क से जुड़ते समय. यह बहीखाता का रिकॉर्ड भी प्रदान करता है इतिहास—कोई ऐसी जगह होनी चाहिए जहां कोई देख सके दो साल पहले का लेन-देन. चूँकि इतिहास केवल परिशिष्ट है और कभी-कभार ही उपयोग किया जाता है, इसे सस्ते स्थानों पर रखा जा सकता है जैसे अमेज़ॅन ग्लेशियर या कोई भी सेवा जो किसी को स्टोर करने की अनुमति देती है और फ़्लैट फ़ाइलें पुनः प्राप्त करें। सत्यापनकर्ता होस्ट आमतौर पर होस्ट नहीं करते हैं सत्यापन पर किसी भी प्रभाव से बचने के लिए उनके अपने अभिलेख इतिहास परोसने से प्रदर्शन. स्टेलर-कोर को सरल बनाए रखने के लिए, इसका उपयोग करने का इरादा नहीं है सीधे अनुप्रयोगों द्वारा और नए लेनदेन प्रस्तुत करने के लिए केवल एक बहुत ही संकीर्ण इंटरफ़ेस को उजागर करता है। समर्थन करना ग्राहक, अधिकांश validators क्षितिज (∼18k) नामक एक डेमॉन चलाते हैं गो की पंक्तियाँ) जो सबमिट करने के लिए एक HTTP इंटरफ़ेस प्रदान करती है और लेन-देन सीखना। क्षितिज के पास केवल पढ़ने के लिए पहुंच है स्टेलर-कोर का SQL डेटाबेस, क्षितिज के जोखिम को कम करता है तारकीय-कोर को अस्थिर करना। भुगतान पथ खोज जैसी सुविधाएँ पूरी तरह से क्षितिज में लागू की जाती हैं और इन्हें उन्नत किया जा सकता है अन्य validator के साथ समन्वय किए बिना एकतरफा। कई वैकल्पिक उच्च-परत डेमॉन क्षितिज के ग्राहक हैं, जो पारिस्थितिकी तंत्र को पूरा करते हैं। एक ब्रिज सर्वर सुविधा प्रदान करता है मौजूदा सिस्टम के साथ Stellar का एकीकरण, उदाहरण के लिए, किसी विशिष्ट खाते द्वारा प्राप्त सभी भुगतानों की सूचनाएं पोस्ट करना। ए अनुपालन सर्वर वित्तीय संस्थानों को हुक प्रदान करता है प्रेषक और लाभार्थी की जानकारी का आदान-प्रदान और अनुमोदन करना भुगतान पर, प्रतिबंध सूचियों के अनुपालन के लिए। अंततः, एक फ़ेडरेशन सर्वर मानव-पठनीय नामकरण लागू करता है खातों के लिए प्रणाली. 6 तैनाती का अनुभव Stellar कई वर्षों तक एक मध्यम राज्य के रूप में विकसित हुआ यथोचित-विश्वसनीय पूर्ण नोड ऑपरेटरों की संख्या। हालाँकि, नोड्स का विन्यास ऐसा था कि जीवंतता (हालांकि नहीं सुरक्षा) हम पर निर्भर थी, Stellar डेवलपमेंट फाउंडेशन (एसडीएफ); क्या एसडीएफ अचानक गायब हो गया, अन्य नोड ऑपरेटर हस्तक्षेप करने और हमें मैन्युअल रूप से हटाने की आवश्यकता होगी नेटवर्क को जारी रखने के लिए कोरम स्लाइस से। जबकि हम और कई अन्य लोग एसडीएफ के प्रणालीगत महत्व को कम करना चाहते हैं, इसके बाद इस लक्ष्य को अधिक प्राथमिकता मिली शोधकर्ताओं [58] ने सुरक्षा के जोखिमों में अंतर किए बिना नेटवर्क के केंद्रीकरण की मात्रा निर्धारित की और प्रचारित किया सजीवता. कई ऑपरेटरों ने सक्रिय कॉन्फ़िगरेशन समायोजन के साथ प्रतिक्रिया व्यक्त की, मुख्य रूप से उनके आकार में वृद्धि हुई एसडीएफ के महत्व को कम करने के प्रयास में कोरम में कटौती; विडम्बना यह है कि इससे जीवित रहने का खतरा बढ़ गया। दो समस्याओं ने स्थिति को विकट कर दिया। सबसे पहले, एक लोकप्रिय तृतीय-पक्ष Stellar निगरानी उपकरण [5] व्यवस्थित रूप से था वास्तव में सत्यापन न करके validator अपटाइम का अधिक अनुमान लगाना वह तारकीय-कोर चल रहा था; यह लोगों को शामिल करने के लिए प्रेरित करता है उनके कोरम स्लाइस में अविश्वसनीय नोड्स। दूसरा, एक बग है स्टेलर-कोर का मतलब है कि एक बार validator अगले लेज़र में चला गया, इससे शेष नोड्स को प्रीवी को पूरा करने में पर्याप्त मदद नहीं मिलीसंदेशों के खो जाने की स्थिति में हमारा खाता बही। परिणामस्वरूप, नेटवर्क को 67 मिनट का डाउनटाइम अनुभव हुआ और इसकी आवश्यकता पड़ी पुनः प्रारंभ करने के लिए validator व्यवस्थापकों द्वारा मैन्युअल समन्वय। इससे भी बुरी बात यह है कि नेटवर्क को पुनः आरंभ करने का प्रयास करते समय, एक साथ कई नोड्स पर पुन: कॉन्फ़िगरेशन का परिणाम हुआ एक सामूहिक ग़लतफ़हमी में जिसने कुछ नोड्स को अनुमति दी विचलन, उन नोड्स के मैन्युअल शटडाउन की आवश्यकता होती है और विचलन के दौरान स्वीकार किए गए लेनदेन को पुनः प्रस्तुत करना। सौभाग्य से, इस विचलन को पकड़ लिया गया और ठीक कर दिया गया शीघ्रता से और इसमें कोई परस्पर विरोधी लेन-देन नहीं था, लेकिन कोरम इंटरसेक्शन का आनंद लेने में नेटवर्क के विफल होने का जोखिम- संभावित रूप से विरोधाभासी स्वीकार करना जारी रखते हुए विभाजन करना लेन-देन, केवल ग़लत कॉन्फ़िगरेशन के कारण किया गया था यह घटना बहुत ठोस है. इन अनुभवों की समीक्षा से दो प्रमुख निष्कर्ष निकले और तदनुरूप सुधारात्मक कार्रवाइयां।Stellar के साथ तेज़ और सुरक्षित वैश्विक भुगतान एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा गंभीर, 100% 51% 51% उच्च, 67% 51% मध्यम, 67% 51% कम, 67% 51% 51% ... ... ... 51% ... 51% चित्र 6. सत्यापनकर्ता गुणवत्ता पदानुक्रम। उच्चतम गुणवत्ता वाले नोड्स 100% की उच्चतम सीमा की आवश्यकता होती है, जबकि निम्न गुणवत्ता को 67% सीमा पर कॉन्फ़िगर किया जाता है। एक के भीतर नोड्स संगठन को साधारण 51% बहुमत की आवश्यकता है। 6.1 कॉन्फ़िगरेशन जटिलता और नाजुकता Stellar कोरम स्लाइस को नेस्टेड कोरम सेट के रूप में व्यक्त करता है जिसमें n प्रविष्टियाँ और एक सीमा k होती है जहाँ k प्रविष्टियों का कोई भी सेट होता है कोरम स्लाइस का गठन होता है। तब प्रत्येक n प्रविष्टियाँ या तो होती हैं एक validator सार्वजनिक कुंजी या, पुनरावर्ती रूप से, कोई अन्य कोरम सेट। लचीले और सघन होते हुए भी, हमें नेस्टेड कोरम का एहसास हुआ सेट ने एक साथ नोड ऑपरेटरों को बहुत अधिक लचीलापन और बहुत कम मार्गदर्शन प्रदान किया: असुरक्षित (या) लिखना आसान था यहां तक कि निरर्थक) कॉन्फ़िगरेशन भी। समूहीकरण के मानदंड उपसमुच्चय को पदानुक्रम में व्यवस्थित करने के लिए, सेट में नोड्स, और सभी सीमाएं चुनने के लिए अपर्याप्त रूप से स्पष्ट थे और परिचालन विफलताओं में योगदान दिया। यह स्पष्ट नहीं था कि करना है या नहीं नेस्टेड-सेट पदानुक्रम में एक "स्तर" को विश्वास के स्तर के रूप में मानें, या एक संगठन, या दोनों; क्षेत्र में कई विन्यास खतरनाक निर्दिष्ट करने के अलावा, इन अवधारणाओं को मिश्रित किया या अर्थहीन सीमाएँ। इसलिए हमने एक सरल कॉन्फ़िगरेशन तंत्र जोड़ा है जो नेस्टेड कोरम सेट के दो पहलुओं को अलग करता है: समूहीकरण संगठन द्वारा एक साथ नोड्स, और प्रत्येक संगठन को एक साधारण ट्रस्ट वर्गीकरण (निम्न, मध्यम, उच्च, या) के साथ लेबल करना गंभीर)। उच्च स्तर और उससे ऊपर के संगठनों को इसकी आवश्यकता होती है इतिहास पुरालेख प्रकाशित करें. नई प्रणाली नेस्टेडक्वोरम सेट को संश्लेषित करती है जिसमें प्रत्येक संगठन को एक के रूप में दर्शाया जाता है 51% सीमा निर्धारित की गई है, और संगठनों को सेट में समूहीकृत किया गया है 67% या 100% सीमा के साथ (समूह गुणवत्ता के आधार पर)। प्रत्येक समूह अगले (उच्च गुणवत्ता वाले) समूह में एक एकल प्रविष्टि है, जैसा कि चित्र 6 में दिखाया गया है। यह सरलीकृत मॉडल कम करता है संरचना के संदर्भ में गलत कॉन्फ़िगरेशन की संभावना संश्लेषित नेस्टेड सेट और उनके लिए चुनी गई सीमाएँ प्रत्येक सेट. 6.2 गलत कॉन्फ़िगरेशन का सक्रिय पता लगाना दूसरा, हमने महसूस किया कि सामूहिक गलत कॉन्फ़िगरेशन का पता लगाने के लिए इसके नकारात्मक प्रभावों का इंतजार करने में बहुत देर हो चुकी है। विशेष रूप से गलत कॉन्फ़िगरेशन के संबंध में जो भिन्न हो सकते हैं—ए रोकने की तुलना में अधिक गंभीर विफलता मोड-नेटवर्क की आवश्यकता है गलत कॉन्फ़िगरेशन का तुरंत पता लगाने में सक्षम होना ताकि ऑपरेटर वास्तव में कोई विचलन होने से पहले इसे वापस कर सकें। इस आवश्यकता को संबोधित करने के लिए, हमने validator सॉफ़्टवेयर में एक तंत्र बनाया है जो लगातार नोड के ट्रांजिटिव क्लोजर में सभी साथियों की सामूहिक कॉन्फ़िगरेशन स्थिति को इकट्ठा करता है और विचलन की संभावना का पता लगाता है - यानी, असंबद्ध कोरम-उस सामूहिक विन्यास के भीतर। 6.2.1 कोरम चौराहे की जाँच करना जबकि कोरम स्लाइस इकट्ठा करना आसान है, उनके बीच असंयुक्त कोरम ढूंढना सह-एनपी-हार्ड [62] है। हालाँकि, हमने अपनाया एल्गोरिथम अनुमान और केस-उन्मूलन नियमों का एक सेट लैचोव्स्की द्वारा प्रस्तावित [62] जो विशिष्ट उदाहरणों की जाँच करता है समस्या की तुलना में तीव्रता के कई क्रम तेज़ हैं सबसे खराब स्थिति लागत. व्यावहारिक रूप से कहें तो, वर्तमान नेटवर्क कोरम स्लाइस ट्रांजिटिव क्लोजर 20-30 के क्रम पर हैं नोड्स और, लाचोव्स्की के अनुकूलन के साथ, आम तौर पर जांच करते हैं एक ही सीपीयू पर कुछ ही सेकंड में। क्या जरूरत आनी चाहिए प्रदर्शन को बढ़ाने के लिए, हम खोज को समानांतर कर सकते हैं। 6.2.2 जोखिम भरे कॉन्फ़िगरेशन की जाँच करना यह पता लगाना कि नेटवर्क असंयुक्त कोरम को स्वीकार करता है, एक कदम है सही दिशा में है, लेकिन असुविधाजनक रूप से देर से खतरे का पता चलता है ऐसे गंभीर मुद्दे के लिए. आदर्श रूप से, हम चाहते हैं कि नेटवर्क के सामूहिक कॉन्फ़िगरेशन के दौरान नोड ऑपरेटरों को चेतावनियाँ प्राप्त हों बस एक जोखिम भरी स्थिति के करीब पहुंच रहा है। इसलिए हमने कोरम-इंटरसेक्शन चेकर का विस्तार किया किसी स्थिति का पता लगाने के लिए हम क्रिटिकलिटी कहते हैं: जब करंट सामूहिक विन्यास एक गलत विन्यास से दूर है एक राज्य जो असंयुक्त कोरम को स्वीकार करता है। गंभीरता का पता लगाने के लिए, फिर, चेकर बार-बार प्रत्येक संगठन के कॉन्फ़िगरेशन को एक सिम्युलेटेड सबसे खराब स्थिति वाले गलत कॉन्फ़िगरेशन से बदल देता है परिणाम पर आंतरिक कोरम प्रतिच्छेदन चेकर को फिर से चलाता है। यदि ऐसी कोई गंभीर ग़लतफ़हमी मौजूद है तो एक कदम दूर रहें वर्तमान स्थिति से, सॉफ़्टवेयर एक चेतावनी जारी करता है और रिपोर्ट करता है कि संगठन गलत कॉन्फ़िगरेशन का जोखिम पैदा कर रहा है। ये परिवर्तन ऑपरेटरों के समुदाय को दो परतें देते हैं सबसे खराब रूपों से बचाव के लिए नोटिस और मार्गदर्शन सामूहिक ग़लतफ़हमी का.

मूल्यांकन

Stellar network quorum slice map showing validator nodes and their bidirectional dependencies

वैश्विक भुगतान के रूप में Stellar की उपयुक्तता को समझने के लिए ट्रेडिंग नेटवर्क, हमने सार्वजनिक नेटवर्क की स्थिति का मूल्यांकन किया और एक निजी प्रयोगात्मक पर नियंत्रित प्रयोग चलाए नेटवर्क. हमने निम्नलिखित प्रश्नों पर ध्यान केंद्रित किया: • प्रोडक्शन नेटवर्क टोपोलॉजी कैसी दिखती है? औसतन कितने संदेश प्रसारित होते हैं, और एससीपी को टाइमआउट का अनुभव कैसे होता है? • क्या सर्वसम्मति और खाता बही अद्यतन विलंबता खातों की संख्या से स्वतंत्र रहती है?एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा लोखवा एट अल. • (ए) प्रति सेकंड लेनदेन (और, परिणामस्वरूप, प्रति सेकंड लेनदेन) बढ़ने से विलंबताएं कैसे प्रभावित होती हैं लेजर), और (बी) validator नोड्स की संख्या? • सीपीयू के संदर्भ में एक नोड को चलाने की लागत क्या है, मेमोरी, और नेटवर्क बैंडविड्थ? भुगतान नेटवर्क की तुलना में लेनदेन दरें कम हैं अन्य प्रकार की वितरित प्रणाली के लिए। अग्रणी blockchains, Bitcoin और Ethereum, 15 लेनदेन/सेकंड तक की पुष्टि करें, Stellar से कम. इसके अलावा, इन प्रणालियों में कुछ मिनट लगते हैं लेन-देन की सुरक्षित रूप से पुष्टि करने के लिए एक घंटा, क्योंकि काम के प्रमाण के लिए कई ब्लॉकों के खनन की प्रतीक्षा करनी पड़ती है। द गैर-blockchain स्विफ्ट नेटवर्क ने अपने चरम दिन [14] पर प्रति सेकंड औसतन केवल 420 लेनदेन किए। इसलिए हमने चुना 5-सेकंड के लक्ष्य के विरुद्ध हमारे मापों की तुलना करने के लिए बहीखाता अंतराल, एक अधिक आक्रामक लक्ष्य। हमारे परिणाम दिखाते हैं विलंबताएँ आराम से इस सीमा से नीचे भी हैं कई अप्रयुक्त अनुकूलन अभी भी पाइपलाइन में हैं। 7.1 एंकर मात्रा के हिसाब से शीर्ष कारोबार वाली परिसंपत्तियों में मुद्रा (उदाहरण के लिए, 3 USD) शामिल है एंकर, 2 CNY), एक Bitcoin एंकर, एक रियल-एस्टेट-समर्थित सुरक्षा token [92], और एक इन-ऐप मुद्रा [8]। अलग-अलग एंकरों की अलग-अलग नीतियां होती हैं। उदाहरण के लिए, एक USD एंकर, गढ़, auth_reqired सेट करता है और प्रत्येक खाते के लिए अपने ग्राहक को जानें (KYC) प्रक्रिया की आवश्यकता होती है। संपत्ति. दूसरा, एंकरयूएसडी, आइए किसी को भी प्राप्त करें और व्यापार करें उनका USD (मेक्सिको को $0.50 भेजना वस्तुतः संभव बनाता है)। $0.000001 के शुल्क के साथ 5 सेकंड में)। हालाँकि, AnchorUSD अपने यूएसडी को खरीदने या भुनाने के लिए केवाईसी और शुल्क की आवश्यकता होती है पारंपरिक वायर ट्रांसफ़र के साथ। फिलीपींस में, कहाँ आने वाले भुगतानों के लिए बैंक नियम ढीले हैं, coin.ph किसी भी एटीएम मशीन [36] पर PHP से कैश निकालने का समर्थन करता है। उपर्युक्त सुरक्षा token और इन-ऐप मुद्रा के अलावा, गैर-मुद्रा token की एक श्रृंखला है वाणिज्यिक बांड [22] और कार्बन क्रेडिट [85, 96] से भी अधिक गूढ़ संपत्तियां जैसे token प्रोत्साहन देने वाली सहयोगी कार कब्ज़ा [35]। 7.2 सार्वजनिक नेटवर्क इस लेखन के समय, 126 सक्रिय पूर्ण नोड हैं, जिनमें से 66 हैं वोट संदेशों पर हस्ताक्षर करके सर्वसम्मति में भाग लें। चित्र 7 ([5] द्वारा उत्पन्न) बीच में एक रेखा के साथ नेटवर्क की कल्पना करता है दो नोड्स यदि एक दूसरे के कोरम स्लाइस में दिखाई देता है और ए द्वि-दिशात्मक निर्भरता दिखाने के लिए गहरी नीली रेखा। पर केंद्र वास्तव में 17 "टियर-वन validators" का एक समूह है SDF, SatoshiPay, LOBSTR, COINQVEST, और Keybase। चार महीने पहले, धारा 6 की घटनाओं से पहले, वहाँ 15 व्यवस्थित रूप से महत्वपूर्ण नोड थे: 3 प्रतीत होता है टियर-वन संगठन और कई यादृच्छिक एकल। द ग्राफ़ भी बहुत कम नियमित दिख रहा था। इसलिए, नया कॉन्फ़िगरेशन तंत्र और/या बेहतर ऑपरेटर निर्णय प्रतीत होते हैं एक स्वस्थ नेटवर्क टोपोलॉजी में योगदान देना। बिना महान वित्तीय संसाधन (और संबंधित शेयरधारक चित्र 7. कोरम स्लाइस मानचित्र दायित्वों), 5 स्तर एक की भर्ती करना मुश्किल होता हालाँकि, शुरू से ही संगठन। यह कोरम का सुझाव देता है स्लाइस नेटवर्क बूटस्ट्रैपिंग में उपयोगी भूमिका निभाते हैं: कोई भी कर सकता है एक महत्वपूर्ण खिलाड़ी बनने के लक्ष्य के साथ जुड़ें क्योंकि जोड़ीवार समझौते के लिए कोई द्वारपाल नहीं हैं। वर्तमान में खाता बही में 3.3M से अधिक खाते हैं। खत्म हाल की 24 घंटे की अवधि में, Stellar ने औसतन 4.5 लेनदेन किए 15.7 ऑपरेशन प्रति सेकंड. हाल के बही-खातों की समीक्षा करना, अधिकांश ऐसा प्रतीत होता है कि लेन-देन में एक ही ऑपरेशन होता है, जबकि हर कुछ में बही-खाते में हम लेन-देन देखते हैं जिसमें कई ऑपरेशन होते हैं ऐसा प्रतीत होता है कि ऑफ़र प्रबंधित करने वाले बाज़ार निर्माता आ रहे हैं। द सर्वसम्मति प्राप्त करने और खाता बही को अद्यतन करने का औसत समय था क्रमशः 1061 एमएस और 46 एमएस। 99वें प्रतिशतक थे 2252 एमएस और 142 एमएस (पहला 1-सेकंड टाइमआउट दर्शाता है नामांकन नेता चयन में)। नोट एससीपी का प्रदर्शन है एससीपी के बाद से ज्यादातर प्रति सेकंड लेनदेन से स्वतंत्र है मनमाने ढंग से कई लेनदेन के hash पर सहमत है। उम्मीदवार के प्रचार-प्रसार से बाधाएं उत्पन्न होने की अधिक संभावना है नामांकन, निष्पादन और सत्यापन के दौरान लेनदेन लेन-देन, और विलय बकेट। हमें अभी तक जरूरत नहीं पड़ी है कई सीपीयू कोर या डिस्क ड्राइव पर स्टेलर-कोर के लेनदेन प्रसंस्करण को समानांतर करने के लिए। हमने प्रसारित एससीपी संदेशों की संख्या का भी मूल्यांकन किया उत्पादन नेटवर्क पर. सामान्य स्थिति में एकल के साथ एक मूल्य नामांकित करने के लिए चुने गए नेता, हम सात तार्किक उम्मीद करते हैं प्रसारित किए जाने वाले संदेश: वोट देने और स्वीकार करने के लिए दो संदेश एक नामीनैट कथन, स्वीकार करने और पुष्टि करने के लिए दो संदेश एक तैयार वक्तव्य, स्वीकार करने और पुष्टि करने के लिए दो संदेश एक प्रतिबद्ध कथन, और अंत में, एक बाहरी संदेश (स्ट्रेगलर्स की मदद के लिए डिस्क पर एक नया खाता बनाने के बाद भेजा गया पकड़ो)। कार्यान्वयन पुष्टि प्रतिबद्धता को जोड़ता है और संदेशों को एक अनुकूलन के रूप में बाह्यीकृत करें, क्योंकि यह है किसी मान के प्रतिबद्ध होने के बाद उसका बाह्यीकरण करना सुरक्षित है। फिर हम उत्पादन Stellar validator पर एकत्रित मेट्रिक्स का विश्लेषण करते हैं। खत्म 68 घंटों के दौरान 1.3 संदेश/सेकंड उत्सर्जित हुए, प्रति खाता औसतन 6-7 संदेश। हम ध्यान दें कि कुल

Stellar के साथ तेज़ और सुरक्षित वैश्विक भुगतान एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा शतमक टाइमआउट की संख्या नामांकन मतदान 75% 0 0 99% 1 0 अधिकतम 4 1 चित्र 8. 68 घंटों से अधिक प्रति खाता समयबाह्य validators द्वारा प्रसारित संदेशों की संख्या अधिक है, क्योंकि फ़ेडरेटेड वोटिंग संदेशों के अलावा, नोड्स भी प्रसारित होते हैं वे किसी भी लेन-देन के बारे में सीखते हैं। चित्र 8 किसी उत्पादन द्वारा अनुभव किए गए टाइमआउट को दर्शाता है 68 घंटों की अवधि में validator। नामांकन का समय समाप्त हो गया है नेता चुनाव समारोह की (अ)प्रभावीता का एक माप, जबकि मतपत्र का समय बहुत हद तक नेटवर्क पर निर्भर करता है और संभावित संदेश विलंब। टाइमआउट सुसंगत हैं उत्सर्जित संदेशों की संख्या के साथ: छह संदेश सर्वोत्तम स्थिति में, और यदि अतिरिक्त नामांकन दौर की आवश्यकता हो तो कम से कम सात संदेश। 7.3 नियंत्रित प्रयोग हमने कंटेनरों में पैक करके नियंत्रित प्रयोग चलाए 72 GiB RAM के साथ Amazon EC2 c5d.9xबड़े इंस्टेंसेस, 900 जीबी एनवीएमई एसएसडी, और 36 वीसीपीयू। प्रत्येक उदाहरण में था वही EC2 क्षेत्र और 10 Gbps की निश्चित बैंडविड्थ थी। हमने स्टोर के रूप में SQLite का उपयोग किया। (Stellar PostgreSQL का भी समर्थन करता है, लेकिन इसमें अतुल्यकालिक कार्य हैं जो माप में शोर उत्पन्न करते हैं।) Stellar एक अंतर्निहित रनटाइम क्वेरी, जेनरेटलोड, प्रदान करता है जो एक विशिष्ट लक्ष्य पर सिंथेटिक लोड उत्पन्न करने की अनुमति देता है लेन-देन/दूसरी दर। हालाँकि Stellar विभिन्न का समर्थन करता है ट्रेडिंग सुविधाएँ, जैसे ऑर्डर बुक और क्रॉस-एसेट पथ भुगतान, हमने सरल भुगतान पर ध्यान केंद्रित किया। लेन-देन की पुष्टि करने में कई चरण होते हैं, इसलिए हम निम्नलिखित में से प्रत्येक के लिए माप रिकॉर्ड किया गया: • नामांकन: नामांकन से लेकर पहली तैयारी तक का समय • मतदान: पहली तैयारी से लेकर पुष्टि करने तक का समय मतदान प्रतिबद्ध • बही अद्यतन: सर्वसम्मति मूल्य लागू करने का समय • लेन-देन गणना: प्रति बहीखाता पुष्टिकृत लेन-देन हमारे प्रत्येक प्रयोग को तीन मापदंडों द्वारा परिभाषित किया गया था: खाता बही में खाता प्रविष्टियों की संख्या, राशि लोड (XLM भुगतान के रूप में) प्रति सेकंड सबमिट किया गया, और validators की संख्या। हमने प्रत्येक validator को कॉन्फ़िगर किया हर दूसरे validator (सबसे खराब स्थिति) के बारे में जानने के लिए एससीपी के लिए), कोरम स्लाइस के साथ किसी भी साधारण बहुमत पर सेट किया गया नोड्स (ताकि विभिन्न कोरम की संख्या अधिकतम हो सके)। आधार रेखा हमारे आधारभूत प्रयोग ने Stellar मापा 100,000 खाते, चार validators, और लोड जनरेशन 100 लेनदेन/सेकंड की दर। हमने प्रति खाता बही में औसतन 49 के मानक विचलन के साथ 507 लेनदेन देखे (9.7%). ध्यान दें कि कोई लेन-देन नहीं छोड़ा गया; मामूली 105 106 107 0 500 1,000 1,500 2,000 लेखा विलंबता [एमएस] खाता बही अद्यतन मतदान नामांकन चित्र 9. खातों की संख्या बढ़ने पर विलंबता भिन्नता लोड जनरेटर की शेड्यूलिंग सीमाओं के कारण है। हमने देखा कि प्रति खाता बही में लेनदेन की संख्या हमारे लोड जनरेशन दर के अनुरूप था, बहीखाता दिया गया हर 5 सेकंड में बंद होना। नामांकन, मतदान और बहीखाता अपडेट में 82.53 एमएस, 95.96 एमएस और की औसत विलंबता दिखाई गई क्रमशः 174.08 एमएस। हमने उस नामांकन विलंबता का अवलोकन किया 99वाँ प्रतिशतक लगातार 61 एमएस से कम है, कभी-कभार पहले चरण के अनुरूप, लगभग 1 सेकंड की स्पाइक्स नेता चयन के टाइमआउट समारोह में। आधारभूत प्रदर्शन को देखते हुए, हमने प्रभावों पर ध्यान दिया प्रत्येक परीक्षण सेटअप पैरामीटर को अलग-अलग करना। लेखा चित्र 9 का डेटा बताता है कि Stellar स्केल साथ ही खातों की संख्या भी बढ़ती है। परीक्षण का सृजन बकेट निर्माण और जैसे-जैसे खाते एक लंबी प्रक्रिया बन गए विलय ने हमें केवल डेटाबेस को पॉप्युलेट करने से रोका सीधे SQL के माध्यम से खातों के साथ। इसलिए, हमने अपना संचालन किया 50,000,000 खातों तक के प्रयोग। जबकि वहाँ है सर्वसम्मति और खाता बही अद्यतन विलंबता पर न्यूनतम प्रभाव, हम ध्यान देते हैं कि खाते बढ़ाने से अतिरिक्त लागत पैदा होती है बाल्टियों को मिलाना, जो बड़ी हो जाती हैं। लेन-देन दर लेन-देन की दर राशि को प्रभावित करती है validators के बीच ट्रैफ़िक मल्टीकास्ट, प्रत्येक बहीखाता में शामिल लेनदेन की संख्या, और शीर्ष स्तर का आकार बाल्टियाँ। बढ़ते लेन-देन के प्रभावों को समझना लोड करें, हमने 100,000 खातों और 4 validators के साथ एक प्रयोग चलाया। चित्र 10 सर्वसम्मति विलंबता में धीमी वृद्धि दर्शाता है, जबकि अधिकांश समय बही-खाता अपडेट करने में व्यतीत हुआ। आश्चर्य की बात नहीं है, जैसे-जैसे लेन-देन सेट का आकार बढ़ता है, यह इसे डेटाबेस में प्रतिबद्ध करने में अधिक समय लगता है। हम यह भी नोट करते हैं खाता बही अद्यतन विलंबता काफी हद तक कार्यान्वयन पर निर्भर है, और डेटाबेस की पसंद से प्रभावित होता है। सत्यापनकर्ता नोड्स यह देखने के लिए कि टायरोन validators की संख्या कैसे बढ़ रही हैप्रदर्शन पर प्रभाव पड़ता है, हमने प्रयोग चलाए 100,000 खाते, 100 लेनदेन/सेकंड, और 4 से 43 तक validator की भिन्न संख्या के साथ। सभी validator दिखाई दिए सभी validators के कोरम स्लाइस में; छोटे कोरम स्लाइस होंगे प्रदर्शन पर कम प्रभाव पड़ता है.एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा लोखवा एट अल. 100 150 200 250 300 350 0 500 1,000 1,500 2,000 लोड करें [लेनदेन/सेकंड] विलंबता [एमएस] खाता बही अद्यतन मतदान नामांकन चित्र 10. लेनदेन भार बढ़ने पर विलंबता 10 20 30 40 0 500 1,000 1,500 2,000 सत्यापनकर्ता विलंबता [एमएस] खाता बही अद्यतन मतदान नामांकन चित्र 11. नोड्स की संख्या बढ़ने पर विलंबता नेटवर्क पर मान्य नोड्स की संख्या बदलना साथ ही आदान-प्रदान किए गए एससीपी संदेशों की संख्या को भी प्रभावित करता है नामांकन के दौरान संभावित मूल्यों की संख्या. चित्र 11 यह दर्शाता है कि नामांकन का समय अपेक्षाकृत कम दर से बढ़ रहा है। जबकि आंकड़ों से पता चलता है कि मतदान एक बाधा है, हम विश्वास है कि कई स्केलिंग मुद्दों को सुधार करके संबोधित किया जा सकता है नेटवर्क ट्रैफ़िक को अनुकूलित करने के लिए Stellar का ओवरले नेटवर्क। जैसे अपेक्षित, खाता बही अद्यतन विलंबता से स्वतंत्र रहा नोड्स की संख्या. दर बंद करें अंत में, हम Stellar के अंत-से-अंत प्रदर्शन को मापना चाहते थे, यह मापकर कि लेजर की कितनी बार पुष्टि की जाती है और क्या Stellar बिना इसके 5-सेकंड के लक्ष्य को पूरा करता है किसी भी लेन-देन को छोड़ना। हमने औसत खाता-बही को करीब से देखा जैसे-जैसे हमने खाता बढ़ाया, 5.03 सेकेंड, 5.10 सेकेंड और 5.15 सेकेंड का समय क्रमशः प्रविष्टियाँ, लेनदेन दर और नोड्स की संख्या। नतीजे बताते हैं कि Stellar लगातार बही-खाते बंद कर सकता है उच्च भार के तहत. 7.4 validator चलाना Stellar की एक महत्वपूर्ण विशेषता इसकी कम लागत है validator चलाना, क्योंकि एंकर को चलना चाहिए (या इसके साथ अनुबंध करना चाहिए) अंतिमता लागू करने के लिए validators। SDF 3 उत्पादन validators चलाता है, सभी c5.large AWS इंस्टेंसेस पर, जिनमें दो कोर होते हैं, 4 GiB RAM और Intel(R) Xeon(R) प्लैटिनम 8124M CPU @3.00GHz प्रोसेसर। एक पर संसाधन उपयोग का निरीक्षण करना इन मशीनों में, हमने Stellar प्रक्रिया का उपयोग करते हुए देखा लगभग 7% CPU और 300 MiB मेमोरी। नेटवर्क ट्रैफ़िक के संदर्भ में, साथियों से 28 कनेक्शन और कोरम आकार के साथ 34 में से, इनकमिंग और आउटगोइंग दरें 2.78 Mbit/s थीं क्रमशः 2.56 Mbit/s. ऐसे चलाने के लिए हार्डवेयर की आवश्यकता होती है प्रक्रिया सस्ती है. हमारे मामले में, लागत $0.054/घंटा है या लगभग $40/माह। 7.5 भविष्य का कार्य इन प्रयोगों से पता चलता है कि Stellar आसानी से 1-2 ऑर्डर स्केल कर सकता है आज के नेटवर्क उपयोग से कहीं अधिक परिमाण का। क्योंकि प्रदर्शन की माँगें आज तक बहुत मामूली रही हैं, Stellar कई सीधे-आगे अनुकूलन के उपयोग के लिए जगह छोड़ता है सुप्रसिद्ध तकनीकें. उदाहरण के लिए, लेनदेन और एससीपी संदेशों को भोले बाढ़ का उपयोग करके validators द्वारा प्रसारित किया जाता है प्रोटोकॉल, लेकिन आदर्श रूप से अधिक कुशल, संरचित का उपयोग करना चाहिए पीयर-टू-पीयर मल्टीकास्ट [30]. इसके अतिरिक्त, डेटाबेस-भारी मानक बैचिंग और प्रीफ़ेचिंग तकनीकों के माध्यम से खाता बही अद्यतन समय में सुधार किया जा सकता है।

निष्कर्ष

अंतर्राष्ट्रीय भुगतान महंगे हैं और इसमें कई दिन लगते हैं। फंड अभिरक्षा संवाददाता बैंकों और धन हस्तांतरण सेवाओं सहित कई वित्तीय संस्थानों से होकर गुजरती है। क्योंकि प्रत्येक हॉप पर पूरी तरह से भरोसा किया जाना चाहिए, नए के लिए यह मुश्किल है बाजार हिस्सेदारी हासिल करने और प्रतिस्पर्धा करने के लिए प्रवेशकर्ता। Stellar दिखाता है सेकंडों में दुनिया भर में सस्ते में पैसे कैसे भेजें। द मुख्य नवाचार एक नया ओपन-सदस्यता बीजान्टिन समझौता प्रोटोकॉल, एससीपी है, जो पीयर-टू-पीयर संरचना का लाभ उठाता है के तहत वैश्विक सहमति प्राप्त करने के लिए वित्तीय नेटवर्क का नवीन इंटरनेट परिकल्पना. एससीपी Stellar को परमाणु रूप से प्रतिबद्ध होने देता है मनमाने प्रतिभागियों के बीच अपरिवर्तनीय लेनदेन जो एक दूसरे के बारे में नहीं जानते या भरोसा नहीं करते। बदले में यह नए प्रवेशकों को स्थापित बाजारों तक पहुंच की गारंटी देता है खिलाड़ियों को सर्वोत्तम उपलब्ध एक्सचेंज प्राप्त करना सुरक्षित बनाता है अविश्वसनीय बाजार निर्माताओं से भी दरें, और नाटकीय रूप से भुगतान विलंबता को कम करता है। आभार Stellar शुरुआती के बिना वहां नहीं होता जहां वह आज है जॉयस किम का नेतृत्व या जबरदस्त योगदान निर्माण में स्कॉट फ्लेकेंस्टीन और बार्टेक नोवोटार्स्की और क्षितिज, Stellar SDK, और अन्य प्रमुख भागों को बनाए रखना Stellar पारिस्थितिकी तंत्र का। हम कोल्टेन बर्गेरॉन को भी धन्यवाद देते हैं, हेनरी कोरिगन-गिब्स, कैंडेस केली, कपिल के. जैन, बोरिस रेज़निकोव, जेरेमी रुबिन, क्रिश्चियन रूडर, एरिक सॉन्डर्स, टॉर्स्टन स्टुबर, तोमर वेलर, गुमनाम समीक्षक, और हमारे चरवाहे जस्टिन शेरी को उनकी उपयोगी टिप्पणियों के लिए धन्यवाद पहले के ड्राफ्ट. अस्वीकरण इस प्रकाशन में प्रोफ़ेसर माज़िएरेस का योगदान एक वेतनभोगी सलाहकार के रूप में था, और यह उनका हिस्सा नहीं था स्टैनफोर्ड विश्वविद्यालय के कर्तव्य या जिम्मेदारियाँ।

Stellar के साथ तेज़ और सुरक्षित वैश्विक भुगतान एसओएसपी '19, अक्टूबर 27-30, 2019, हंट्सविले, ओएन, कनाडा

अक्सर पूछे जाने वाले सवाल

Stellar का whitepaper क्या है?
Stellar Consensus Protocol (SCP) का whitepaper, जिसे David Mazières ने 2015 में लिखा, एक federated Byzantine agreement प्रणाली का वर्णन करता है जो validators के बंद सेट या proof-of-work mining की आवश्यकता के बिना विकेंद्रीकृत सहमति को सक्षम बनाती है।
Stellar का whitepaper किसने और कब लिखा?
SCP का whitepaper David Mazières ने लिखा, जो Stanford के प्रोफेसर और Stellar Development Foundation के मुख्य वैज्ञानिक हैं। यह 2015 में एक औपचारिक शैक्षणिक पेपर के रूप में प्रकाशित हुआ था।
Stellar की मूल तकनीकी नवीनता क्या है?
Stellar की मूल नवीनता Federated Byzantine Agreement (FBA) है — एक सहमति मॉडल जहां प्रत्येक नोड अपना स्वयं का trust set (quorum slice) चुनता है। प्रणाली पूर्वनिर्धारित validator सूची के बिना, व्यक्तिगत trust निर्णयों के intersection से वैश्विक सहमति प्राप्त करती है।
Stellar का सहमति तंत्र कैसे काम करता है?
SCP में, प्रत्येक नोड trusted peers का एक quorum slice चुनता है। सहमति एक nomination phase (values प्रस्तावित करना) और एक ballot phase (एकल value पर सहमत होना) के माध्यम से पहुंची जाती है। Quorum intersection बिना किसी वैश्विक authority के भी safety सुनिश्चित करता है।
Stellar XRP से कैसे अलग है?
Stellar के सह-संस्थापक Jed McCaleb हैं (जिन्होंने Ripple की भी सह-स्थापना की) लेकिन यह मूलभूत रूप से अलग सहमति मॉडल का उपयोग करता है। Stellar का FBA सहमति में खुली भागीदारी की अनुमति देता है, जबकि XRP के लिए validators को एक पूर्व-सहमत Unique Node List पर होना आवश्यक है।
Stellar का आपूर्ति मॉडल क्या है?
Stellar की 50 अरब XLM की निश्चित आपूर्ति है (55 अरब burn करने के लिए community vote के बाद 100 अरब से कम किया गया)। कोई मुद्रास्फीति तंत्र नहीं है। छोटे base fees (0.00001 XLM) एक fee pool में एकत्रित किए जाते हैं, burn नहीं किए जाते।
Stellar के प्राथमिक उपयोग के मामले क्या हैं?
Stellar cross-border payments, asset tokenization और financial inclusion पर ध्यान केंद्रित करता है। यह remittance corridors को शक्ति देता है, नेटिव रूप से USDC होस्ट करता है, और stablecoins, securities और CBDCs (central bank digital currencies) के issuance को सक्षम बनाता है।
Stellar किस समस्या का समाधान करता है?
Stellar अंतर्राष्ट्रीय remittances की लागत और गति बाधाओं को हल करता है, विशेष रूप से unbanked आबादी के लिए। इसका नेटवर्क एक cent के अंश के शुल्क के साथ 3-5 सेकंड के settlements को सक्षम बनाता है, जिससे micro-payments आर्थिक रूप से व्यवहार्य बनते हैं।
Stellar का सुरक्षा मॉडल कैसे काम करता है?
Stellar की सुरक्षा quorum intersection पर निर्भर करती है — नेटवर्क में trust sets का overlap। जब तक quorum slices के बीच पर्याप्त overlap मौजूद है, नेटवर्क safety बनाए रखता है। व्यक्तिगत नोड्स अपने trusted peers की विफलता को सहन कर सकते हैं।
Stellar इकोसिस्टम की वर्तमान स्थिति क्या है?
Stellar के इकोसिस्टम में MoneyGram integration, USDC native support, Soroban (एक smart contract प्लेटफॉर्म), और उभरते बाजारों में वित्तीय संस्थाओं के साथ partnerships शामिल हैं। Stellar Development Foundation payments और asset tokenization में अपनाने को बढ़ावा देना जारी रखती है।