$OP 2021 · 31 min

Optimism तकनीकी दस्तावेज़ीकरण

Analysis and Comparison between Optimism and StarkNet

द्वारा Optimism Collective

Optimism का कोई पारंपरिक whitepaper नहीं है। एक Ethereum Layer 2 optimistic rollup के रूप में, इसका design और specifications एक single formal academic paper की बजाय तकनीकी दस्तावेज़ीकरण, OP Stack specification, और research posts के माध्यम से documented हैं।

सारांश

यह पेपर एक नोड को चलाने के लिए लेनदेन थ्रूपुट और हार्डवेयर आवश्यकताओं के बीच व्यापार-बंद का विश्लेषण करके विकेंद्रीकृत blockchains में स्केलेबिलिटी की समस्या को संबोधित करता है। रोलअप, यानी ऑफ-चेन निष्पादित ब्लॉकों के ऑन-चेन सत्यापन के लिए प्रौद्योगिकियों को गलती या वैधता प्रमाण के रूप में प्रस्तुत किया जाता है। हम निकासी समय, लेनदेन लागत, अनुकूलन तकनीकों और Ethereum पारिस्थितिकी तंत्र के साथ संगतता के संबंध में आशावादी रोलअप और वैधता रोलअप की तुलना करते हैं। हमारे विश्लेषण से पता चलता है कि Optimism बेडरॉक की वर्तमान में गैस संपीड़न दर लगभग 20:1 है, जबकि StarkNet लगभग 24:1 की भंडारण लेखन लागत संपीड़न दर प्राप्त करता है। हम इन दरों को और अधिक अनुकूलित करने की तकनीकों पर भी चर्चा करते हैं, जैसे कैश अनुबंध और ब्लूम फ़िल्टर का उपयोग। अंततः, हमारे निष्कर्ष आशावादी और वैधता रोलअप के बीच चयन में जटिलता और चपलता के बीच व्यापार-बंद को उजागर करते हैं। कीवर्ड ब्लॉकचेन, स्केलेबिलिटी, रोलअप 1. परिचय ब्लॉकचेन तकनीक ने विभिन्न उद्योगों में क्रांति लाने की अपनी क्षमता के कारण महत्वपूर्ण ध्यान आकर्षित किया है। हालाँकि, स्केलेबिलिटी एक बड़ी चुनौती बनी हुई है, क्योंकि अधिकांश blockchain को स्केलेबिलिटी, विकेंद्रीकरण और सुरक्षा के बीच व्यापार-बंद का सामना करना पड़ता है, जिसे आमतौर पर स्केलेबिलिटी ट्राइलेमा [1, 2] कहा जाता है। blockchain के थ्रूपुट को बढ़ाने के लिए, इसके ब्लॉक आकार को बढ़ाना एक मामूली समाधान है। Ethereum के संदर्भ में, इसका मतलब है कि एक ब्लॉक में गैस की अधिकतम मात्रा को बढ़ाना। चूंकि प्रत्येक पूर्ण नोड को प्रत्येक ब्लॉक के प्रत्येक लेनदेन को मान्य करना होगा, जैसे-जैसे थ्रूपुट बढ़ता है, हार्डवेयर आवश्यकताएं भी बढ़ती हैं, जिससे नेटवर्क का अधिक केंद्रीकरण होता है। कुछ blockchain, जैसे Bitcoin और Ethereum, अपने वास्तुशिल्प विकेंद्रीकरण को अधिकतम करने के लिए अपने डिज़ाइन को अनुकूलित करते हैं, जबकि अन्य, जैसे कि बिनेंस स्मार्ट चेन और सोलाना, यथासंभव तेज़ और सस्ते होने के लिए डिज़ाइन किए गए हैं। विकेंद्रीकृत नेटवर्क नेटवर्क में भाग लेने के लिए हार्डवेयर आवश्यकताओं को कम करने के लिए blockchain के थ्रूपुट को कृत्रिम रूप से सीमित करते हैं। वर्षों से, त्रिलम्मा का समाधान खोजने का प्रयास किया गया है, जैसे राज्य चैनल [3] और प्लाज़्मा [4, 5]। इन समाधानों में कुछ गतिविधि को ऑफ-चेन स्थानांतरित करने, smart contracts का उपयोग करके ऑन-चेन गतिविधि को ऑफ-चेन गतिविधि से जोड़ने और DLT 2023 को सत्यापित करने की विशेषता है: 5वीं वितरित लेजर प्रौद्योगिकी कार्यशाला, 25-26 मई, 2023, बोलोग्ना, इटली $ [email protected] (एल. डोनो) https://lucadonnoh.github.io/ (एल. डोनो) 0000-0001-9221-3529 (एल. डोनो) © 2023 इस पेपर का कॉपीराइट इसके लेखकों द्वारा। क्रिएटिव कॉमन्स लाइसेंस एट्रिब्यूशन 4.0 इंटरनेशनल (सीसी बाय 4.0) के तहत उपयोग की अनुमति है। CEUR कार्यशाला कार्यवाही http://ceur-ws.org ISSN 1613-0073 CEUR कार्यशाला कार्यवाही (CEUR-WS.org) ऑन-चेन क्या हो रहा है ऑफ-चेन। हालाँकि, प्लाज़्मा और राज्य चैनल दोनों सामान्य smart contracts के समर्थन में सीमित हैं। रोलअप blockchains (जिन्हें Layer 2 या L2 कहा जाता है) हैं जो अपने ब्लॉक को दूसरे PH_0001 (Layer 1 या L1) पर प्रकाशित करते हैं और इसलिए इसकी सर्वसम्मति, डेटा उपलब्धता और सुरक्षा गुण प्राप्त होते हैं। वे, अन्य समाधानों के विपरीत, मनमानी गणना का समर्थन करते हैं। रोलअप में तीन मुख्य घटक होते हैं: • सीक्वेंसर: नोड्स जो उपयोगकर्ताओं से रोलअप लेनदेन प्राप्त करते हैं और उन्हें एक ब्लॉक में संयोजित करते हैं जिसे Layer 1 पर भेजा जाता है। ब्लॉक में कम से कम राज्य रूट (उदाहरण के लिए एक मर्कल रूट) और राज्य के पुनर्निर्माण और सत्यापन के लिए आवश्यक डेटा शामिल होता है। Layer 1 परिभाषित करता है...

परिचय

  1. परिचय ब्लॉकचेन प्रौद्योगिकी ने क्रांति लाने की अपनी क्षमता के कारण महत्वपूर्ण ध्यान आकर्षित किया है विभिन्न उद्योग. हालाँकि, स्केलेबिलिटी एक बड़ी चुनौती बनी हुई है, क्योंकि अधिकांश blockchain को इसका सामना करना पड़ता है स्केलेबिलिटी, विकेंद्रीकरण और सुरक्षा के बीच एक व्यापार-बंद, जिसे आमतौर पर कहा जाता है स्केलेबिलिटी त्रिलम्मा [1, 2]। blockchain के थ्रूपुट को बढ़ाने के लिए, एक तुच्छ समाधान है इसके ब्लॉक आकार को बढ़ाने के लिए. Ethereum के संदर्भ में, इसका मतलब अधिकतम बढ़ाना है एक ब्लॉक में कितनी गैस समा सकती है। चूँकि प्रत्येक पूर्ण नोड को प्रत्येक लेन-देन को मान्य करना होगा ब्लॉक, जैसे-जैसे थ्रूपुट बढ़ता है, हार्डवेयर आवश्यकताएं भी बढ़ती हैं, जिससे अधिक वृद्धि होती है नेटवर्क का केंद्रीकरण. कुछ blockchain, जैसे Bitcoin और Ethereum, अपना अनुकूलन करते हैं उनके वास्तुशिल्प विकेंद्रीकरण को अधिकतम करने के लिए डिज़ाइन, जबकि अन्य, जैसे कि बिनेंस स्मार्ट चेन और सोलाना को यथासंभव तेज़ और सस्ता बनाने के लिए डिज़ाइन किया गया है। विकेंद्रीकृत नेटवर्क हार्डवेयर आवश्यकताओं को कम करने के लिए blockchain के थ्रूपुट को कृत्रिम रूप से सीमित करें नेटवर्क में भाग लें. वर्षों से, राज्य जैसे त्रिलम्मा का समाधान खोजने का प्रयास किया गया है चैनल [3] और प्लाज्मा [4, 5]। इन समाधानों में कुछ गतिविधियों को आगे बढ़ाने की विशेषता होती है ऑफ-चेन, smart contracts का उपयोग करके ऑन-चेन गतिविधि को ऑफ-चेन गतिविधि से जोड़ना, और सत्यापन करना डीएलटी 2023: 5वीं वितरित लेजर प्रौद्योगिकी कार्यशाला, 25-26 मई, 2023, बोलोग्ना, इटली $ [email protected] (एल. डोनो) https://lucadonnoh.github.io/ (एल. डोनो) 0000-0001-9221-3529 (एल. डोनो) © 2023 इस पेपर का कॉपीराइट इसके लेखकों द्वारा। क्रिएटिव कॉमन्स लाइसेंस एट्रिब्यूशन 4.0 इंटरनेशनल (सीसी बाय 4.0) के तहत उपयोग की अनुमति है। CEUR कार्यशाला कार्यवाही http://ceur-ws.org आईएसएसएन 1613-0073 CEUR कार्यशाला कार्यवाही (CEUR-WS.org)ऑन-चेन क्या हो रहा है ऑफ-चेन। हालाँकि, प्लाज्मा और राज्य चैनल दोनों सीमित हैं सामान्य smart contracts का उनका समर्थन। रोलअप blockchain हैं (जिन्हें Layer 2 या L2 कहा जाता है) जो अपने ब्लॉक को दूसरे blockchain पर प्रकाशित करते हैं (Layer 1 या L1) और इसलिए इसकी सर्वसम्मति, डेटा उपलब्धता और सुरक्षा गुण विरासत में मिले हैं। वे, अन्य समाधानों के विपरीत, मनमानी गणना का समर्थन करें। रोलअप के तीन मुख्य घटक हैं: • सीक्वेंसर: नोड्स जो उपयोगकर्ताओं से रोलअप लेनदेन प्राप्त करते हैं और उन्हें एक में जोड़ते हैं ब्लॉक जो Layer 1 पर भेजा जाता है। ब्लॉक में कम से कम राज्य रूट (उदाहरण के लिए एक मर्कल) होता है रूट) और राज्य के पुनर्निर्माण और सत्यापन के लिए आवश्यक डेटा। Layer 1 परिभाषित करता है प्रकाशित डेटा के क्रम को स्थापित करके L2 का विहित blockchain। • रोलअप पूर्ण नोड्स: नोड्स जो परत से रोलअप ब्लॉक प्राप्त करते हैं, संसाधित करते हैं और मान्य करते हैं 1 यह सत्यापित करके कि रूट सही है। यदि किसी ब्लॉक में अमान्य लेनदेन है तो यह है खारिज कर दिया गया, जो सीक्वेंसर्स को वैध ब्लॉक बनाने से रोकता है जिनमें अमान्य शामिल हैं लेन-देन. • रोलअप लाइट नोड्स: नोड्स जो Layer 1 से रोलअप ब्लॉक प्राप्त करते हैं लेकिन गणना नहीं करते हैं नया राज्य स्वयं। वे तकनीकों का उपयोग करके सत्यापित करते हैं कि नया राज्य रूट वैध है जैसे दोष या वैधता प्रमाण। रोलअप संख्या के रूप में लेनदेन की परिशोधित लागत को कम करके स्केलेबिलिटी प्राप्त करते हैं उपयोगकर्ताओं की संख्या बढ़ जाती है. ऐसा इसलिए है क्योंकि blockchain वैधता सुनिश्चित करने की लागत उप-रेखीय रूप से बढ़ती है लेनदेन को व्यक्तिगत रूप से सत्यापित करने की लागत के संबंध में। रोलअप के अनुसार अलग-अलग होते हैं वह तंत्र जिसके द्वारा वे प्रकाश नोड्स पर लेनदेन निष्पादन की वैधता सुनिश्चित करते हैं: में आशावादी रोलअप यह एक आर्थिक मॉडल द्वारा और वैधता में रहते हुए दोष प्रमाण द्वारा सुनिश्चित किया जाता है रोलअप को वैधता प्रमाणों का उपयोग करके क्रिप्टोग्राफ़िक रूप से सुनिश्चित किया जाता है। लाइट नोड्स को Layer 1 पर smart contracts के रूप में कार्यान्वित किया जा सकता है। की जड़ को वे स्वीकार करते हैं नई स्थिति और वैधता या दोष प्रमाण सत्यापित करें: इसलिए इन रोलअप को स्मार्ट अनुबंध कहा जाता है रोलअप. यदि प्रकाश नोड स्वतंत्र हैं, तो उन्हें सॉवरेन रोलअप [6] कहा जाता है। का फायदा स्मार्ट कॉन्ट्रैक्ट रोलअप का उपयोग करके दोनों के बीच विश्वास-न्यूनतम पुल बनाने में सक्षम होना है blockchains: चूंकि L2 स्थिति की वैधता L1 तक सिद्ध है, इसलिए लेनदेन की एक प्रणाली L2 से L1 लागू किया जा सकता है, जिससे निकासी की अनुमति मिलती है। नुकसान यह है कि की लागत लेन-देन L1 पर स्थिति को सत्यापित करने की लागत पर निर्भर करता है: यदि आधार परत संतृप्त है अन्य गतिविधियों में, रोलअप पर लेनदेन की लागत भी बढ़ जाती है। डेटा और सर्वसम्मति परतें ही सिस्टम की सुरक्षा निर्धारित करती हैं वे लेन-देन के क्रम को परिभाषित करते हैं, हमलों को रोकते हैं और स्थिति को साबित करने के लिए डेटा उपलब्ध कराते हैं वैधता. कागजी योगदान इस पेपर में, हम दो नवीन आशावादी और वैधता रोलअप का अध्ययन करते हैं Optimism बेडरॉक और StarkNet जैसे उल्लेखनीय कार्यान्वयन पर ध्यान देने के साथ स्केलेबिलिटी ट्राइलेम्मा का समाधान। हमारे योगदान में इनकी व्यापक तुलना शामिल है समाधान, वापसी के समय का विश्लेषण, और Optimism पर संभावित हमले की चर्चा आधारशिला। इसके अतिरिक्त, हम उनके गैस संपीड़न अनुपात की गणना करते हैं, एप्लिकेशन-विशिष्ट अनुकूलन प्रदान करते हैं, और Ethereum से दूर जाने के फायदे और नुकसान प्रस्तुत करते हैं। वर्चुअल मशीन (EVM).

कागज की संरचना पेपर को इस प्रकार व्यवस्थित किया गया है। धारा 2 में आशावादी रोलअप हैं Optimism बेडरॉक का विश्लेषण करके पेश किया गया। धारा 3 में वैधता रोलअप प्रस्तुत किए गए हैं StarkNet का विश्लेषण। धारा 4 में हम दोनों समाधानों की तुलना करते हैं। अंत में, अनुभाग 5 में हम चित्र बनाते हैं कुछ निष्कर्ष.

आशावादी रोलअप

  1. आशावादी रोलअप ब्लॉकों के निष्पादन को सत्यापित किए बिना उनके आउटपुट को आशावादी रूप से स्वीकार करने का विचार है प्रकाश नोड्स पर चर्चा करते हुए Bitcoin श्वेतपत्र [7] में पहले से ही मौजूद है। ये नोड्स केवल अनुसरण करते हैं सर्वसम्मति नियम को सत्यापित करके हेडर श्रृंखला, उन्हें ब्लॉक स्वीकार करने के लिए असुरक्षित बनाती है 51% हमले की स्थिति में अमान्य लेनदेन शामिल हैं। नाकामोतो ने इसे हल करने का प्रस्ताव रखा है प्रकाश नोड्स को चेतावनी देने के लिए "अलर्ट" प्रणाली का उपयोग करके समस्या को हल करें कि किसी ब्लॉक में अमान्य लेनदेन हैं। यह तंत्र सबसे पहले अल-बासम, सोनिनो और ब्यूटिरिन [8] द्वारा कार्यान्वित किया गया है जिसमें एक दोष है त्रुटि सुधार कोड [9] पर आधारित प्रूफ प्रणाली का उपयोग किया जाता है। के निर्माण को सक्षम करने के लिए दोष प्रमाण के लिए, यह आवश्यक है कि अमान्य ब्लॉकों सहित सभी ब्लॉकों का डेटा उपलब्ध हो नेटवर्क: यह डेटा उपलब्धता समस्या है, जिसे संभाव्य डेटा का उपयोग करके हल किया जाता है नमूना तंत्र. पहला आशावादी रोलअप डिज़ाइन जॉन एडलर द्वारा प्रस्तुत किया गया था 2019 [10] में मिकेरा क्विंटाइन-कोलिन्स, जिसमें ब्लॉक दूसरे blockchain पर प्रकाशित होते हैं यह ऑर्डर देने पर उनकी सहमति को परिभाषित करता है। 2.1. Optimism आधारशिला बेडरॉक [11] एक स्मार्ट कॉन्ट्रैक्ट रोलअप Optimism का नवीनतम संस्करण है। पिछला संस्करण, ऑप्टिमिस्टिक वर्चुअल मशीन (ओवीएम) को सॉलिडिटी को संकलित करने के लिए एक तदर्थ कंपाइलर की आवश्यकता होती है स्वयं का बाइटकोड: इसके विपरीत, बेडरॉक उस निष्पादन इंजन में पूरी तरह से EVM के बराबर है Ethereum येलो पेपर विनिर्देश [12] का अनुसरण करता है। 2.1.1. जमा उपयोगकर्ता डिपॉजिटट्रांसेक्शन फ़ंक्शन को कॉल करके Ethereum, Optimism पोर्टल पर एक अनुबंध के माध्यम से लेनदेन जमा कर सकते हैं। जब कोई लेन-देन निष्पादित होता है, a TransactionDeposited ईवेंट उत्सर्जित होता है, जिसे रोलअप में प्रत्येक नोड संसाधित करने के लिए सुनता है जमा. जमा लेनदेन एक L2 लेनदेन है जो L1 से प्राप्त होता है। यदि कॉल करने वाला फ़ंक्शन एक अनुबंध है, इसमें एक स्थिर मान जोड़कर पता बदल दिया जाता है: यह रोकता है ऐसे हमले जिनमें L1 पर एक अनुबंध का पता L2 पर एक अनुबंध के समान होता है लेकिन एक अलग कोड होता है। जमा किए गए लेन-देन के एल2 पर समावेशन एक क्रम के भीतर विनिर्देश द्वारा सुनिश्चित किया जाता है खिड़की. जमा किए गए लेनदेन एक नया EIP-2718 संगत लेनदेन प्रकार [13] हैं जिसमें उपसर्ग 0x7E है, जहां आरएलपी-एन्कोडेड फ़ील्ड हैं: • बाइट्स32 सोर्सहैश: hash जो विशिष्ट रूप से लेनदेन के स्रोत की पहचान करता है। • पता: प्रेषक का पता. • पता: प्राप्तकर्ता का पता, या यदि जमा किया गया लेनदेन है तो शून्य पता अनुबंध निर्माण.• uint256 टकसाल: L2 पर बनाया जाने वाला मान। • uint256 मान: प्राप्तकर्ता को भेजा जाने वाला मान। • बाइट्स डेटा: इनपुट डेटा. • बाइट्स गैसलिमिट: लेनदेन की गैस सीमा। सोर्सहैश की गणना L1 ब्लॉक hash और L1 लॉग के keccak256 hash के रूप में की जाती है सूचकांक, किसी ब्लॉक में किसी घटना की विशिष्ट रूप से पहचान करना। चूंकि जमा किए गए लेनदेन L1 पर शुरू किए जाते हैं लेकिन L2 पर निष्पादित होते हैं, इसलिए सिस्टम को इसकी आवश्यकता होती है L2 पर खर्च की गई गैस के लिए L1 पर भुगतान करने की व्यवस्था। एक समाधान पोर्टल के माध्यम से ईटीएच भेजना है, लेकिन इसका तात्पर्य यह है कि प्रत्येक कॉल करने वाले (यहां तक कि अप्रत्यक्ष कॉल करने वाले) को देय के रूप में चिह्नित किया जाना चाहिए, और यह है कई मौजूदा परियोजनाओं के लिए संभव नहीं है। विकल्प यह है कि संबंधित गैस को L1 पर जलाया जाए। जमा लेनदेन के लिए आवंटित गैस को गारंटीशुदा गैस कहा जाता है। L2 गैस की कीमत चालू L1 स्वचालित रूप से सिंक्रनाइज़ नहीं होता है लेकिन EIP-1559 के समान एक तंत्र का उपयोग करके अनुमान लगाया जाता है [14]. लक्ष्य के साथ प्रति Ethereum ब्लॉक में गारंटीकृत गैस की अधिकतम मात्रा 8 मिलियन है 2 मिलियन का. L2 पर गैस के भुगतान के लिए आवश्यक ETH की मात्रा 𝑐= 𝑔𝑏L2 है जहां 𝑏L2 है L2 पर बेसफ़ी। L1 पर अनुबंध 𝑐/𝑏L2 के बराबर गैस जलाता है। कॉल करने में गैस खर्च हो गई जमा लेनदेन की प्रतिपूर्ति L2 पर की जाती है: यदि यह राशि गारंटीशुदा गैस से अधिक है, कोई गैस नहीं जलती. rollup ब्लॉक का पहला लेनदेन एक L1 विशेषता जमा लेनदेन है, जिसका उपयोग पंजीकरण के लिए किया जाता है L2 पर Ethereum ब्लॉक की विशेषताओं को पूर्व-तैनाती करें। वे विशेषताएँ जो पूर्व-तैनाती देता है पहुंच ब्लॉक नंबर, टाइमस्टैम्प, बेसफ़ीस, ब्लॉक hash और अनुक्रम है संख्या, जो संबद्ध L1 ब्लॉक (जिसे युग भी कहा जाता है) के सापेक्ष L2 की ब्लॉक संख्या है; नया युग शुरू होने पर यह संख्या रीसेट हो जाती है। 2.1.2. अनुक्रमण रोलअप नोड्स Optimism श्रृंखला को पूरी तरह से Ethereum से प्राप्त करते हैं। यह शृंखला विस्तारित है हर बार नए लेन-देन L1 पर प्रकाशित होते हैं, और इसके ब्लॉक हर बार पुनर्गठित होते हैं Ethereum ब्लॉकों को पुनर्गठित किया गया है। रोलअप blockchain को युगों में विभाजित किया गया है। प्रत्येक 𝑛 के लिए Ethereum की ब्लॉक संख्या, एक संगत 𝑛युग है। प्रत्येक युग में कम से कम एक होता है ब्लॉक, और एक युग में प्रत्येक ब्लॉक में एक L1 विशेषताएँ जमा लेनदेन होता है। पहला ब्लॉक एक युग में पोर्टल के माध्यम से जमा किए गए सभी लेनदेन शामिल हैं। Layer 2 ब्लॉक भी हो सकते हैं इसमें अनुक्रमित लेन-देन शामिल हैं, यानी सीधे सीक्वेंसर को भेजे गए लेन-देन। सीक्वेंसर उपयोगकर्ताओं से लेनदेन स्वीकार करता है और ब्लॉक बनाता है। प्रत्येक ब्लॉक के लिए, यह निर्माण करता है Ethereum पर प्रकाशित होने वाला एक बैच। कई बैचों को संपीड़ित तरीके से प्रकाशित किया जा सकता है, चैनल का नाम ले रहे हैं. यदि एक चैनल बहुत बड़ा है, तो उसे कई फ़्रेमों में विभाजित किया जा सकता है एक एकल लेनदेन. एक चैनल को आरएलपी-एन्कोडेड के ZLIB [15] के साथ संपीड़न के रूप में परिभाषित किया गया है बैच. एक बैच के फ़ील्ड युग संख्या, युग hash, मूल hash, हैं टाइमस्टैम्प और लेनदेन सूची। एक अनुक्रमण विंडो, जिसे एक युग द्वारा पहचाना जाता है, में लगातार L1 की एक निश्चित संख्या होती है वे ब्लॉक जिन्हें एक व्युत्पत्ति चरण L2 ब्लॉकों की एक चर संख्या के निर्माण के लिए इनपुट के रूप में लेता है। के लिए युग 𝑛, अनुक्रमण विंडो 𝑛 में ब्लॉक शामिल हैं [𝑛, 𝑛+𝑤)। इसका तात्पर्य यह है कि आदेश देना अनुक्रमण विंडो के भीतर L2 लेनदेन और ब्लॉकों की संख्या विंडो समाप्त होने तक ठीक नहीं होती है। rollup लेनदेन को सुरक्षित कहा जाता है यदि इसमें शामिल बैच की पुष्टि L1 पर की गई हो। फ्रेम्सबैचों के पुनर्निर्माण के लिए L1 ब्लॉक से पढ़ा जाता है। वर्तमान कार्यान्वयन इसकी अनुमति नहीं देता है एक चैनल का डीकंप्रेसन तब तक शुरू होना चाहिए जब तक कि सभी संबंधित फ़्रेम प्राप्त न हो जाएं। अमान्य बैचों को नजरअंदाज कर दिया जाता है. व्यक्तिगत ब्लॉक लेनदेन बैचों से प्राप्त किए जाते हैं, जो हैं राज्य परिवर्तन लागू करने और रोलअप स्थिति प्राप्त करने के लिए निष्पादन इंजन द्वारा उपयोग किया जाता है। 2.1.3. निकासी निकासी की प्रक्रिया के लिए, एक L2-टू-L1 मैसेजिंग सिस्टम लागू किया गया है। Ethereum निकासी स्वीकार करने के लिए एल2 की स्थिति जानने की आवश्यकता है, और यह प्रकाशन द्वारा किया जाता है L2 आउटपुट Oracle smart contract पर L1 पर प्रत्येक L2 ब्लॉक का स्टेट रूट। ये जड़ें यदि इस दौरान कोई गलती साबित नहीं की जाती है तो उन्हें आशावादी रूप से वैध (या अंतिम रूप दिया गया) स्वीकार किया जाता है विवाद अवधि. केवल प्रस्तावक के रूप में निर्दिष्ट पते ही आउटपुट रूट प्रकाशित कर सकते हैं। वैधता आउटपुट रूट्स को प्रस्तावकों द्वारा हिस्सेदारी जमा करने के द्वारा प्रोत्साहित किया जाता है, यदि ऐसा होता है तो उसे घटा दिया जाता है एक अमान्य रूट का प्रस्ताव दिखाया गया है। फ़ंक्शन को कॉल करके लेनदेन शुरू किया जाता है L2 पर पूर्व-तैनाती पर निकासी शुरू करें और फिर फ़ंक्शन को कॉल करके L1 पर अंतिम रूप दें पहले बताए गए Optimism पोर्टल पर निकासी लेनदेन को अंतिम रूप दें। L2 ब्लॉक के अनुरूप आउटपुट रूट L2 आउटपुट Oracle से प्राप्त किया जाता है; यह है सत्यापित किया गया कि इसे अंतिम रूप दे दिया गया है, अर्थात विवाद की अवधि बीत चुकी है; यह सत्यापित है कि आउटपुट रूट प्रूफ ओरेकल प्रूफ से मेल खाता है; यह सत्यापित है कि निकासी का hash शामिल है इसमें निकासी प्रमाण का उपयोग करना; कि वापसी को पहले ही अंतिम रूप नहीं दिया गया है; और फिर लक्ष्य पते पर कॉल निर्दिष्ट गैस सीमा, ईथर की मात्रा और डेटा के साथ निष्पादित की जाती है। 2.1.4. तोप: दोषरोधी प्रणाली यदि एक रोलअप पूर्ण नोड, स्थानीय रूप से बैचों और जमा लेनदेन को निष्पादित करके, इसका पता लगाता है Layer 2 स्थिति प्रस्तावक द्वारा ऑन-चेन प्रकाशित राज्य रूट से मेल नहीं खाती है, यह निष्पादित कर सकता है यह साबित करने के लिए कि ब्लॉक संक्रमण का परिणाम गलत है, L1 पर एक दोष प्रमाण। के कारण ओवरहेड, L1 पर संपूर्ण रोलअप ब्लॉक को संसाधित करना बहुत महंगा है। समाधान लागू किया गया बेडरॉक द्वारा मिनीगेथ की असहमति के केवल पहले निर्देश को ऑन-चेन निष्पादित करना है, इसे MIPS आर्किटेक्चर में संकलित करना जिसे ऑन-चेन दुभाषिया पर निष्पादित किया जाता है और प्रकाशित किया जाता है L1 पर. मिनीगेथ, गेथ 1 का एक सरलीकृत संस्करण है जिसमें सर्वसम्मति, आरपीसी और डेटाबेस शामिल हैं हटा दिए गए हैं. असहमति के पहले निर्देश को खोजने के लिए, बीच में एक इंटरैक्टिव बाइनरी खोज आयोजित की जाती है वह जिसने दोष निवारण आरंभ किया और वह जिसने आउटपुट रूट प्रकाशित किया। जब प्रमाण प्रारंभ होता है, दोनों पक्ष निष्पादन के आधे रास्ते में MIPS मेमोरी स्थिति की जड़ प्रकाशित करते हैं चुनौती अनुबंध पर अवरोध: यदि hash मेल खाता है तो इसका मतलब है कि दोनों पक्ष इस पर सहमत हैं निष्पादन का पहला भाग इस प्रकार दूसरे भाग के आधे की जड़ को प्रकाशित करता है, अन्यथा आधा पहली छमाही प्रकाशित हो चुकी है इत्यादि। ऐसा करने से असहमति का पहला निर्देश प्राप्त होता है मूल निष्पादन की तुलना में चरणों की लघुगणकीय संख्या में। अगर दोनों में से एक रुक जाए बातचीत करते हुए, विवाद अवधि के अंत में दूसरा प्रतिभागी स्वतः ही जीत जाता है। निर्देश को संसाधित करने के लिए, MIPS दुभाषिया को इसकी मेमोरी तक पहुंच की आवश्यकता होती है: चूंकि रूट है उपलब्ध होने पर आवश्यक मेमोरी सेलों को उनके समावेश को सिद्ध करके प्रकाशित किया जा सकता है। पहुँचना EVM की स्थिति, प्रीइमेज ओरेकल का उपयोग किया जाता है: ब्लॉक के hash को देखते हुए यह वापस आता है 1https://geth.ethereum.org/docs

ब्लॉक हेडर, जिससे कोई पिछले ब्लॉक का hash प्राप्त कर सकता है और वापस जा सकता है श्रृंखला, या राज्य और लॉग का hash प्राप्त करें जिससे कोई भी पूर्व-छवि प्राप्त कर सकता है। oracle मिनीगेथ द्वारा कार्यान्वित किया जाता है और डेटाबेस को प्रतिस्थापित करता है। अन्य नोड्स से प्रश्न पूछे जाते हैं पूर्वछवियाँ प्राप्त करें.

वैधता रोलअप

  1. वैधता रोलअप वैधता रोलअप का लक्ष्य राज्य परिवर्तन की वैधता को क्रिप्टोग्राफ़िक रूप से साबित करना है एक संक्षिप्त प्रमाण के साथ लेन-देन का क्रम दिया गया है जिसे उप-रेखीय रूप से तुलना करके सत्यापित किया जा सकता है मूल गणना के समय तक। इस प्रकार के प्रमाणपत्रों को कम्प्यूटेशनल अखंडता प्रमाण कहा जाता है और व्यावहारिक रूप से SNARKs (ज्ञान का संक्षिप्त गैर-इंटरैक्टिव तर्क) के साथ कार्यान्वित किया जाता है, जो अंकगणित का उपयोग करते हैं सर्किट उनके कम्प्यूटेशनल मॉडल के रूप में। अलग-अलग SNARK कार्यान्वयन समय साबित करने में भिन्न होते हैं, सत्यापन समय, एक विश्वसनीय सेटअप और क्वांटम प्रतिरोध की आवश्यकता [16, 17]। स्टार्क्स (स्केलेबल ज्ञान का पारदर्शी तर्क) [18] एक प्रकार के SNARK हैं जिन्हें विश्वसनीय की आवश्यकता नहीं होती है सेटअप और क्वांटम प्रतिरोधी हैं, जबकि साबित करने और सत्यापन पर कुछ दक्षता छोड़ देते हैं अन्य समाधानों की तुलना में. 3.1. StarkNet StarkNet स्टार्कवेयर द्वारा विकसित एक स्मार्ट कॉन्ट्रैक्ट वैलिडिटी रोलअप है जो STARK का उपयोग करता है प्रूफ सिस्टम अपनी स्थिति को Ethereum तक सत्यापित करने के लिए। वैधता प्रमाणों के निर्माण को सुविधाजनक बनाने के लिए, a EVM से भिन्न वर्चुअल मशीन का उपयोग किया जाता है, जिसकी उच्च स्तरीय भाषा काहिरा है। 3.1.1. जमा उपयोगकर्ता sentMessageToL2 पर कॉल करके Ethereum पर एक अनुबंध के माध्यम से लेनदेन जमा कर सकते हैं समारोह. संदेश को उसके hash की गणना करके और एक काउंटर बढ़ाकर रिकॉर्ड किया जाता है। अनुक्रमक LogMessageToL2 इवेंट को सुनें और जानकारी को StarkNet लेनदेन में एन्कोड करें यह एक अनुबंध के फ़ंक्शन को कॉल करता है जिसमें l1_handler डेकोरेटर होता है। निष्पादन के अंत में, जब राज्य परिवर्तन का प्रमाण प्रस्तुत किया जाता है, तो संदेश की खपत इसके साथ जुड़ी होती है और इसके काउंटर को कम करके इसे हटा दिया जाता है। जमा किए गए लेनदेन को शामिल करने की आवश्यकता StarkNet विनिर्देश के अनुसार नहीं है, इसलिए एक गैस सीक्वेंसर्स को L2 पर प्रकाशित करने के लिए प्रोत्साहित करने के लिए बाज़ार की आवश्यकता है। वर्तमान संस्करण में, क्योंकि सीक्वेंसर जमा लेनदेन की लागत को स्टार्कवेयर द्वारा केंद्रीकृत और प्रबंधित किया जाता है केवल जमा निष्पादित करने की लागत से निर्धारित होता है। इस लागत का भुगतान ETH भेजकर किया जाता है संदेश भेजेंToL2. ये ईथर L1 पर लॉक रहते हैं और सीक्वेंसर पर स्थानांतरित हो जाते हैं एल1, जब जमा लेनदेन को राज्य संक्रमण में शामिल किया जाता है। भेजे गए ईटीएच की मात्रा, यदि जमा किए गए लेन-देन को शामिल किया गया है, पूरी तरह से खर्च किया गया है, भले ही गैस की खपत की मात्रा कुछ भी हो L2 पर. StarkNet में ऐसा सिस्टम नहीं है जो L1 ब्लॉक विशेषताओं को स्वचालित रूप से उपलब्ध कराता हो। वैकल्पिक रूप से, फॉसिल ऑयलर नेटवर्क 2 द्वारा विकसित एक प्रोटोकॉल है जो hash दिए जाने की अनुमति देता है ब्लॉक, प्रीइमेज प्रकाशित करके Ethereum से प्राप्त की जाने वाली कोई भी जानकारी। 2https://www.oiler.network/3.1.2. अनुक्रमण StarkNet की वर्तमान स्थिति पूरी तरह से Ethereum से प्राप्त की जा सकती है। कोई भी राज्य अंतर ट्रांज़िशन के बीच को L1 पर कॉलडेटा के रूप में प्रकाशित किया जाता है। प्रत्येक अनुबंध के लिए अंतर प्रकाशित किए जाते हैं और निम्नलिखित एन्कोडिंग के साथ uint256[] के रूप में सहेजे जाते हैं: • अनुबंध तैनाती से संबंधित क्षेत्र की संख्या. • प्रत्येक प्रकाशित अनुबंध के लिए:
  2. प्रकाशित अनुबंध का पता.
  3. प्रकाशित अनुबंध का hash।
  4. अनुबंध निर्माता के तर्कों की संख्या।
  5. कंस्ट्रक्टर तर्कों की सूची • अनुबंध की संख्या जिसका भंडारण संशोधित किया गया है। • संशोधित किए गए प्रत्येक अनुबंध के लिए:
  6. संशोधित अनुबंध का पता.
  7. भंडारण अद्यतन की संख्या.
  8. नए मूल्यों के साथ भंडारण पते के कुंजी-मूल्य जोड़े। अवस्था भेदों को क्रम से प्रकाशित किया जाता है, अत: उन्हें क्रमानुसार पढ़ना ही पर्याप्त है राज्य का पुनर्निर्माण करें. 3.1.3. निकासी L2 से L1 तक संदेश भेजने के लिए syscall sent_message_to_L1 का उपयोग किया जाता है। संदेश है सबूत के साथ इसके hash काउंटर को बढ़ाकर L1 पर प्रकाशित किया गया और कॉल करके इसे अंतिम रूप दिया गया L1 पर StarkGate smart contract पर कंज्यूममैसेजफ्रॉमL2 फ़ंक्शन, जो घटता है काउंटर. कोई भी किसी भी निकासी को अंतिम रूप दे सकता है। 3.1.4. वैधता प्रमाण काहिरा वर्चुअल मशीन [19] को STARK प्रूफ़ के निर्माण की सुविधा के लिए डिज़ाइन किया गया है। काहिरा भाषा उच्च-स्तरीय प्रोग्रामिंग के साथ गणना का वर्णन करने की अनुमति देती है भाषा, और सीधे तौर पर एक सर्किट के रूप में नहीं। यह बहुपद समीकरणों की एक प्रणाली द्वारा पूरा किया जाता है 3 एकल गणना का प्रतिनिधित्व करता है: वॉन न्यूमैन वास्तुकला का एफडीई चक्र। संख्या इस प्रकार बाधाओं का निर्धारण निश्चित है और गणना के प्रकार से स्वतंत्र है, केवल एक के लिए अनुमति देता है प्रत्येक प्रोग्राम के लिए सत्यापनकर्ता प्रोग्राम जिसकी गणना को सिद्ध करने की आवश्यकता है। StarkNet एक साझा प्रोवर का उपयोग करके कई लेनदेन को एक एकल STARK प्रूफ में एकत्रित करता है शार्प नाम दिया गया। सबूत smart contract को Ethereum पर भेजे जाते हैं, जो उनकी वैधता की पुष्टि करता है और नए राज्य के अनुरूप मर्कल रूट को अद्यतन करता है। सत्यापित करने की उप-रैखिक लागत वैधता प्रमाण इसकी लागत को कई लेनदेन पर परिशोधित करने की अनुमति देता है। 3जिसे बीजीय मध्यवर्ती निरूपण (AIR) कहा जाता है

तुलना

  1. तुलना 4.1. निकासी का समय सबसे महत्वपूर्ण पहलू जो आशावादी रोलअप को वैधता रोलअप से अलग करता है वह समय जो किसी निकासी की शुरुआत और उसके अंतिम रूप देने के बीच बीतता है। दोनों ही मामलों में, निकासी L2 पर प्रारंभ की जाती है और L1 पर अंतिम रूप दी जाती है। StarkNet पर, अंतिम रूप देना संभव है जैसे ही नए राज्य रूट की वैधता प्रमाण Ethereum पर स्वीकार किया जाता है: सैद्धांतिक रूप से, यह है आरंभीकरण के बाद एल1 के पहले ब्लॉक में धनराशि निकालना संभव है। व्यवहार में, Ethereum पर वैधता प्रमाण भेजने की आवृत्ति ब्लॉक की गति के बीच एक समझौता है अंतिम रूप देना और प्रमाण एकत्रीकरण। वर्तमान में StarkNet सत्यापन के लिए वैधता प्रमाण प्रदान करता है हर 10 घंटे में 4, लेकिन लेन-देन गतिविधि बढ़ने पर इसे कम करने का इरादा है। Optimism बेडरॉक पर विवाद के अंत में ही वापसी को अंतिम रूप देना संभव है अवधि (वर्तमान में 7 दिन), जिसके बाद एक रूट स्वचालित रूप से वैध माना जाता है। की लम्बाई यह अवधि मुख्य रूप से इस तथ्य से निर्धारित होती है कि दोष प्रमाण को Ethereum पर तब तक सेंसर किया जा सकता है जब तक इसका अंत. समय बढ़ने के साथ इस प्रकार के हमले की सफलता की संभावना तेजी से कम हो जाती है: ई[घटाया गया मान] = 𝑉𝑝𝑛 जहां 𝑛एक अंतराल में ब्लॉकों की संख्या है, 𝑉निधि की वह राशि है जिसे घटाया जा सकता है एक अमान्य रूट प्रकाशित करके, और 𝑝सफलतापूर्वक सेंसरशिप निष्पादित करने की संभावना है एक ही ब्लॉक में हमला. मान लीजिए कि यह संभावना 99% है, कि मान रोलअप में लॉक हो गया है एक मिलियन ईथर है, और एक अंतराल में ब्लॉक 1800 हैं (12 के साथ 6 घंटे के ब्लॉक) सेकंड अंतराल): अपेक्षित मान लगभग 0.01391 ईथर है। सिस्टम को सुरक्षित बनाया गया है प्रस्तावकों से अपेक्षित मूल्य से कहीं अधिक मात्रा में ईथर दांव पर लगाने के लिए कहा जा रहा है। विन्ज़र एट अल. दिखाया गया कि एक सरल smart contract का उपयोग करके सेंसरशिप हमला कैसे किया जाता है यह सुनिश्चित करता है कि राज्य में मेमोरी के कुछ क्षेत्र [20] नहीं बदलते हैं। हमले की मॉडलिंग मार्कोव गेम के रूप में, पेपर दिखाता है कि तर्कसंगत के लिए सेंसरिंग प्रमुख रणनीति है निर्माता को ब्लॉक करें यदि उन्हें परिवर्तन वाले लेनदेन को शामिल करने से अधिक मुआवजा मिलता है स्मृति. ऊपर चर्चा किए गए 𝑝मान को तर्कसंगत ब्लॉक के प्रतिशत के रूप में देखा जा सकता है नेटवर्क में निर्माता, जहां "तर्कसंगत" संभवतः दंड को ध्यान में नहीं रखता है बाह्यताएँ, जैसे blockchain पर कम भरोसा जिससे इसकी क्रिप्टोकरेंसी का मूल्य कम हो जाता है। निम्नलिखित कोड एक smart contract प्रस्तुत करता है जिसका उपयोग सेंसरशिप हमला करने के लिए किया जा सकता है बेडरॉक पर. यह हमला ब्लॉक उत्पादकों को रिश्वत की पेशकश करके उनके प्रोत्साहन का शोषण करता है उन लेन-देन को सेंसर करना जो राज्य के विशिष्ट भागों को संशोधित करेगा। अनुबंध का मुख्य फ़ंक्शन, दावा रिश्वत, ब्लॉक उत्पादकों को रिश्वत का दावा करने की अनुमति देता है यदि वे सफलतापूर्वक सेंसर करते हैं यह जाँच कर लक्षित लेनदेन कि अमान्य आउटपुट रूट को छुआ नहीं गया है। फ़ंक्शन दावा रिश्वत (बाइट्स मेमोरी स्टोरेजप्रूफ) बाहरी { require(!दावा किया गया[block.number], "रिश्वत का दावा पहले ही किया जा चुका है"); आउटपुटप्रोपोज़ल मेमोरी करंट = स्टोरेजऑरेकल.गेटस्टोरेज(L2_ORACLE, ब्लॉक.नंबर, SLOT, स्टोरेजप्रूफ); require(invalidOutputRoot == current.outputRoot, "हमला विफल"); दावा किया गया[ब्लॉक.संख्या] = सत्य; (बूल भेजा गया, ) = ब्लॉक.कॉइनबेस.कॉल{मूल्य: रिश्वत राशि}(""); 4https://etherscan.io/address/0xc662c410c0ecf747543f5ba90660f6abebd9c8c4आवश्यकता(भेजा गया, "ईथर भेजने में विफल"); } सूची 1: एक अनुबंध का उदाहरण जो बेडरॉक पर सेंसरशिप हमले को प्रोत्साहित करता है। विवाद की अवधि की अवधि में इस तथ्य को भी ध्यान में रखा जाना चाहिए कि दोष सिद्ध है एक इंटरैक्टिव प्रमाण और इसलिए प्रतिभागियों को बातचीत करने के लिए पर्याप्त समय प्रदान किया जाना चाहिए और किसी भी बातचीत को सेंसर किया जा सकता है। यदि अंतिम चाल बहुत निकट के समय में होती है विवाद की अवधि समाप्त होने पर, सेंसरिंग की लागत काफी कम हो जाती है। हालाँकि सेंसरिंग है प्रभावी रणनीति, सफलता की संभावना कम है क्योंकि सेंसरिंग नोड्स असुरक्षित हैं सेवा हमलों से इनकार: एक हमलावर बहुत जटिल लेनदेन उत्पन्न कर सकता है जो इसके साथ समाप्त होता है बिना किसी शुल्क के त्रुटि प्रमाण का प्रकाशन, क्योंकि कोई शुल्क नहीं देना होगा। चरम मामलों में, एक लंबी विवाद अवधि सफल होने की स्थिति में समन्वय की अनुमति देती है एक कांटा व्यवस्थित करने और हमलावर ब्लॉक उत्पादकों को बाहर करने के लिए सेंसरशिप हमला। दूसरा संभावित हमले में विवादकर्ताओं की तुलना में अधिक राज्य रूट प्रस्तावों को प्रकाशित करना शामिल है, जिसे आवृत्ति सीमा का उपयोग करके टाला जा सकता है। 4.1.1. तेजी से आशावादी निकासी चूँकि आशावादी रोलअप की वैधता किसी भी समय किसी भी पूर्ण नोड द्वारा सत्यापित की जा सकती है, a विश्वसनीय oracle का उपयोग L1 पर यह जानने के लिए किया जा सकता है कि निकासी को सुरक्षित रूप से अंतिम रूप दिया जा सकता है या नहीं। यह तंत्र सबसे पहले निर्माता [21] द्वारा प्रस्तावित किया गया था: एक oracle निकासी की पुष्टि करता है, प्रकाशित करता है एल1 पर परिणाम जिस पर उपयोगकर्ता को ब्याज वाला ऋण सौंपा जाता है, जो स्वचालित रूप से होता है 7 दिनों के अंत में बंद कर दिया जाता है, यानी जब निकासी को वास्तव में अंतिम रूप दिया जा सकता है। यह समाधान एक विश्वास धारणा प्रस्तुत करता है, लेकिन मेकर के मामले में इसे oracle ऑपरेटर के बाद से न्यूनतम कर दिया गया है इसका प्रबंधन उसी संगठन द्वारा किया जाता है जो ऋण प्रदान करके जोखिम उठाता है। 4.2. लेन-देन लागत L2 लेनदेन की लागत अधिकतर L1 के साथ बातचीत से निर्धारित होती है। दोनों समाधानों में लेन-देन की कम्प्यूटेशनल लागत बहुत सस्ती है क्योंकि इसे पूरी तरह से ऑफ-चेन निष्पादित किया जाता है। Optimism L2 लेनदेन कॉलडेटा को कॉलडेटा के रूप में प्रकाशित करता है और शायद ही कभी (या कभी नहीं) गलती निष्पादित करता है सबूत, इसलिए कॉलडेटा सबसे महंगा संसाधन है। 12 जनवरी, 2022 को एक बेडरॉक नेटवर्क Ethereum के गोएर्ली टेस्टनेट पर लॉन्च किया गया है। गैस संपीड़न दर की गणना की जा सकती है एक निश्चित अवधि में बेडरॉक पर उपयोग की गई गैस की मात्रा को ट्रैक करके और इसकी तुलना करके संबंधित ब्लॉकों के लिए L1 पर खर्च की गई गैस की मात्रा। इस विधि का उपयोग करके गैस संपीड़न किया जाता है ∼20:1 की दर पाई गई है, लेकिन यह आंकड़ा मेननेट पर वास्तविक गतिविधि से भिन्न हो सकता है। StarkNet L2 स्थिति में प्रत्येक परिवर्तन को कॉलडेटा के रूप में Ethereum पर प्रकाशित करता है, इसलिए भंडारण है सबसे महंगा संसाधन. चूंकि नेटवर्क EVM का उपयोग नहीं करता है, इसलिए लेनदेन लागत संपीड़न का मामूली अनुमान नहीं लगाया जा सकता। निष्पादन और कॉलडेटा की लागत मानकर नगण्य हो, इसकी तुलना में भंडारण लेखन के संपीड़न अनुपात की गणना करना संभव है एल1. यह मानते हुए कि कोई अनुबंध तैनात नहीं किया गया है और StarkNet पर पहले से एक्सेस नहीं किए गए 10 सेल हैं संशोधित, ∼24 :1 की भंडारण लेखन लागत संपीड़न दर पाई जाती है। यदि कोई सेल अधिलेखित है 𝑛डेटा प्रकाशनों के बीच, प्रत्येक लेखन की लागत लागत की तुलना में 1/𝑛 होगी एक ही लेख का, चूँकि केवल अंतिम ही प्रकाशित हुआ है। लागत को और भी कम किया जा सकता हैअक्सर उपयोग किए जाने वाले मानों को संपीड़ित करना। वैधता प्रमाण सत्यापन की लागत को विभाजित किया गया है यह जिन लेन-देन को संदर्भित करता है: उदाहरण के लिए, StarkNet ब्लॉक 4779 में 200 लेन-देन हैं और इसके वैधता प्रमाण में प्रत्येक लेनदेन के लिए 267830 यूनिट गैस या 1339.15 गैस की खपत होती है। 4.2.1. कॉलडेटा का अनुकूलन: कैश अनुबंध नीचे प्रस्तुत है एक smart contract जो बार-बार उपयोग किए जाने वाले एड्रेस कैश को लागू करता है इस तथ्य का लाभ उठाकर पता लगाया जाता है कि भंडारण और निष्पादन बहुत कम खर्चीला है संसाधन, एक मित्र अनुबंध के साथ जो इसके उपयोग को प्रदर्शित करता है। उत्तरार्द्ध का ट्रैक रखता है किसी पते के "मित्र" जिसे ऐडफ्रेंड फ़ंक्शन पर कॉल करके पंजीकृत किया जा सकता है। यदि कोई पता पहले से ही कम से कम एक बार उपयोग किया जा चुका है, इसे addFriendWithCache पर कॉल करके जोड़ा जा सकता है फ़ंक्शन: कैश इंडेक्स 4-बाइट पूर्णांक हैं जबकि पते 20 बाइट्स द्वारा दर्शाए जाते हैं, इसलिए फ़ंक्शन तर्क पर 5:1 की बचत है। उसी तर्क का उपयोग अन्य डेटा के लिए किया जा सकता है पूर्णांक या अधिक सामान्यतः बाइट्स जैसे प्रकार। अनुबंध पता कैश { मैपिंग(पता => uint32) सार्वजनिक पता2कुंजी; पता[] सार्वजनिक कुंजी2पता; फ़ंक्शन कैशराइट(पता _पता) आंतरिक रिटर्न (uint32) { require(key2address.length < type(uint32).max, "AddressCache: कैश भरा हुआ है"); require(address2key[_address] == 0, "AddressCache: पता पहले से ही कैश्ड"); // कुंजियाँ 1 से प्रारंभ होनी चाहिए क्योंकि 0 का अर्थ है "नहीं मिला" uint32 कुंजी = uint32(key2address.length + 1); पता2कुंजी[_पता] = कुंजी; key2address.push(_address); वापसी कुंजी; } फ़ंक्शन कैश रीड (uint32 _key) सार्वजनिक दृश्य रिटर्न (पता) { require(_key <= key2address.length && _key > 0, "AddressCache: कुंजी नहीं मिली"); वापसी कुंजी2पता[_कुंजी - 1]; } } सूची 2: पता कैश अनुबंध। अनुबंध मित्र एड्रेस कैश है { मैपिंग(पता => पता[]) सार्वजनिक मित्र; फ़ंक्शन addFriend(पता _friend) सार्वजनिक { मित्र[msg.sender].push(_friend); कैशराइट(_मित्र); } फ़ंक्शन addFriendWithCache(uint32 _friendKey) सार्वजनिक { मित्र[msg.sender].push(cacheRead(_friendKey)); } फ़ंक्शन getFriends() सार्वजनिक दृश्य रिटर्न (पता[] मेमोरी) { मित्रों को लौटाएँ[msg.sender];} } सूची 3: एक अनुबंध का उदाहरण जो पता कैश को प्राप्त करता है। अनुबंध कैश में लगभग 4 बिलियन (232) पतों का समर्थन करता है, और एक बाइट जोड़ने पर लाभ मिलता है लगभग 1 ट्रिलियन (240)। 4.2.2. भंडारण का अनुकूलन: ब्लूम के फिल्टर StarkNet पर भंडारण उपयोग को कम करने के लिए कई तकनीकें हैं। यदि यह आवश्यक नहीं है मूल डेटा की उपलब्धता की गारंटी दें तो यह ऑन-चेन को बचाने के लिए पर्याप्त है hash: यह ERC-721 (NFT) [22] के लिए डेटा सहेजने के लिए उपयोग किया जाने वाला तंत्र है, यानी, एक IPFS लिंक जो समाधान करता है यदि उपलब्ध हो तो डेटा का hash। कई बार संग्रहीत डेटा के लिए, लुक-अप का उपयोग करना संभव है तालिका Optimism के लिए शुरू की गई कैशिंग प्रणाली के समान है, जिसमें सभी मानों को सहेजने की आवश्यकता होती है कम से कम एक बार. कुछ अनुप्रयोगों के लिए, ब्लूम फ़िल्टर का उपयोग करके सभी मानों को सहेजने से बचा जा सकता है [23, 24, 25], यानी, एक संभाव्य डेटा संरचना जो किसी को निश्चितता के साथ जानने की अनुमति देती है कि क्या एक तत्व किसी समुच्चय से संबंधित नहीं है लेकिन असत्य की एक छोटी लेकिन गैर-नगण्य संभावना को स्वीकार करता है सकारात्मकता ब्लूम फ़िल्टर को शून्य पर 𝑚बिट्स की एक सरणी के रूप में प्रारंभ किया जाता है। एक तत्व जोड़ने के लिए, 𝑘hash कार्य करता है एक समान यादृच्छिक वितरण का उपयोग किया जाता है, प्रत्येक सेट किए गए सरणी के एक बिट के लिए मैपिंग करता है से 1. यह जांचने के लिए कि कोई तत्व सेट से संबंधित है या नहीं, हम 𝑘hash फ़ंक्शन चलाते हैं और सत्यापित करते हैं कि 𝑘बिट्स 1 पर सेट हैं। एक साधारण ब्लूम के फ़िल्टर में यह अंतर करने का कोई तरीका नहीं है कि कोई तत्व वास्तव में सेट से संबंधित है या एक गलत सकारात्मक है, एक संभावना जो संख्या के रूप में बढ़ती है प्रविष्टियों की संख्या बढ़ जाती है। 𝑛तत्व डालने के बाद: पी[झूठा सकारात्मक] = (︃ 1 − [︂ 1 −1 𝑚 ]︂𝑘𝑛)︃𝑘 ≈ (︁ 1 −𝑒−𝑘𝑛/𝑚)︁𝑘 प्रत्येक बिट सेट की संभावना की स्वतंत्रता मानते हुए। यदि 𝑛तत्व (मनमाने आकार के!) हैं शामिल होने की उम्मीद है और गलत सकारात्मक सहन की संभावना 𝑝 है, सरणी का आकार इसकी गणना इस प्रकार की जा सकती है: 𝑚= −𝑛ln 𝑝 (एलएन 2)2 जबकि hash फ़ंक्शंस की इष्टतम संख्या है: 𝑘= 𝑚 𝑛एलएन 2 यदि हम 1% की सहनशीलता के साथ 1000 तत्वों को सम्मिलित करने का अनुमान लगाते हैं, तो सरणी का आकार 9585 बिट्स है 𝑘= 6 के साथ, जबकि 0.1% की सहनशीलता के लिए यह 𝑘= 9 के साथ 14377 बिट हो जाता है। यदि एक मिलियन तत्व डाले जाने की उम्मीद है, सरणी का आकार 1% के लिए लगभग 1170 kB और 1775 kB हो जाता है 0.1%, 𝑘 के समान मान के साथ, क्योंकि यह केवल 𝑝[26] पर निर्भर करता है। ऐसे खेल में जहां खिलाड़ियों को किसी ऐसे प्रतिद्वंद्वी को नहीं सौंपा जाना चाहिए जिसे वे पहले ही चुनौती दे चुके हों, प्रत्येक खिलाड़ी के लिए भंडारण में पिछले विरोधियों की सूची सहेजने के बजाय कोई ब्लूम का उपयोग कर सकता है फ़िल्टर. कुछ खिलाड़ियों को चुनौती न देने का जोखिम अक्सर स्वीकार्य होता है, और फ़िल्टर को रीसेट किया जा सकता है समय-समय पर.4.3. Ethereum अनुकूलता EVM और Ethereum के साथ संगत होने का मुख्य लाभ सभी उपलब्ध का पुन: उपयोग है उपकरण. Ethereum smart contracts को Optimism पर बिना किसी संशोधन के प्रकाशित किया जा सकता है और न ही नए ऑडिट. वॉलेट संगत, विकास और स्थैतिक विश्लेषण उपकरण, सामान्य विश्लेषण बने रहते हैं उपकरण, अनुक्रमण उपकरण और oracles। Ethereum और सॉलिडिटी का अच्छी तरह से अध्ययन करने का एक लंबा इतिहास है कमजोरियाँ, जैसे पुनर्प्रवेश हमले, अतिप्रवाह और अल्पप्रवाह, त्वरित ऋण, और oracle हेराफेरी. इस वजह से, Optimism कम समय में बड़ी मात्रा में मूल्य प्राप्त करने में सक्षम था समय. एक अलग वर्चुअल मशीन को अपनाने का मतलब है पूरे पारिस्थितिकी तंत्र का पुनर्निर्माण करना, अधिक कार्यान्वयन स्वतंत्रता के लाभ के साथ। StarkNet मूल रूप से खाता लागू करता है अमूर्तन, जो एक तंत्र है जिसके तहत प्रत्येक खाता एक smart contract है जो कार्यान्वित कर सकता है मनमाना तर्क जब तक यह एक इंटरफ़ेस (इसलिए अमूर्त शब्द) का अनुपालन करता है: यह अनुमति देता है विभिन्न डिजिटल हस्ताक्षर योजनाओं का उपयोग, निजी कुंजी को बदलने की क्षमता एक ही पता, या मल्टीसिग का उपयोग करें। Ethereum समुदाय ने इसकी शुरूआत का प्रस्ताव रखा 2020 में EIP-2938 के साथ तंत्र, लेकिन प्रस्ताव एक वर्ष से अधिक समय से पुराना पड़ा हुआ है अन्य अद्यतनों को अधिक प्राथमिकता दी गई है [27]। अनुकूलता से प्राप्त एक अन्य महत्वपूर्ण लाभ मौजूदा ग्राहकों का पुन: उपयोग है: Optimism अपने स्वयं के नोड के लिए केवल ∼800 लाइनों के अंतर के साथ geth के एक संस्करण का उपयोग करता है, जो कि रहा है 2014 से विकसित, परीक्षण और रखरखाव किया गया। एक मजबूत ग्राहक होना महत्वपूर्ण है क्योंकि यह परिभाषित करता है नेटवर्क में क्या मान्य है या क्या नहीं। दोष-निवारण के कार्यान्वयन में एक बग सिस्टम गलत प्रमाण को सही या अमान्य के लिए सही प्रमाण के रूप में स्वीकार करने का कारण बन सकता है सिस्टम से समझौता करते हुए ब्लॉक को गलत माना जाएगा। इस प्रकार की सम्भावना है व्यापक ग्राहक विविधता के साथ हमले को सीमित किया जा सकता है: Optimism को प्राप्त करने के अलावा पुन: उपयोग किया जा सकता है अन्य Ethereum क्लाइंट पहले से ही बनाए हुए हैं, और एक अन्य एरिगॉन-आधारित क्लाइंट का विकास किया जा रहा है पहले से ही चल रहा है. 2016 में geth के मेमोरी प्रबंधन में एक समस्या का फायदा उठाया गया था DoS हमले और रक्षा की पहली पंक्ति को पैरिटी के उपयोग की सिफारिश करनी थी, जो कि दूसरी सबसे बड़ी बात है उस समय प्रयुक्त क्लाइंट 5. StarkNet को वैधता प्रमाण के साथ समान समस्या का सामना करना पड़ता है, लेकिन क्लाइंट स्क्रैच से लिखना पड़ता है और प्रमाण प्रणाली बहुत अधिक जटिल होती है, और परिणामस्वरूप शुद्धता सुनिश्चित करना और भी अधिक जटिल है।

निष्कर्ष

  1. निष्कर्ष स्केलेबिलिटी समस्या को हल करने के लिए रोलअप आज उपलब्ध सबसे आशाजनक समाधान है विकेन्द्रीकृत blockchains, इसके विपरीत मॉड्यूलर blockchains के युग का मार्ग प्रशस्त करता है अखंड blockchains। आशावादी रोलअप या वैधता रोलअप विकसित करने का विकल्प मुख्य रूप से दिखाया गया है जटिलता और चपलता के बीच एक व्यापार-बंद के रूप में। StarkNet के कई फायदे हैं जैसे तेज़ निकासी, अमान्य स्थिति परिवर्तन की संरचनात्मक अक्षमता, कम लेनदेन लागत लंबी विकास अवधि का खर्च और EVM के साथ असंगति, जबकि Optimism के पास है बाज़ार का एक बड़ा हिस्सा तुरंत हासिल करने के लिए नेटवर्क अर्थव्यवस्था का लाभ उठाया। Optimism हालाँकि, बेडरॉक में एक मॉड्यूलर डिज़ाइन है जो इसे एक वैधता बनने की अनुमति देता है 5https://blog.ethereum.org/2016/09/22/ethereum-network-currently-undergoing-dos-attack

भविष्य में रोलअप: कैनन वर्तमान में अपने दोष प्रमाण के लिए MIPS पर संकलित मिनीगेथ का उपयोग करता है सिस्टम, लेकिन उसी आर्किटेक्चर का उपयोग सर्किट प्राप्त करने और वैधता प्रमाण तैयार करने के लिए किया जा सकता है। माइक्रोआर्किटेक्चर के लिए EVM जैसी जटिल मशीन को संकलित करने से परिणाम सरल हो जाता है सर्किट जिसे अपग्रेड के मामले में संशोधित और पुन: सत्यापित करने की आवश्यकता नहीं है। आरआईएससी जीरो एक है RISC-V पर आधारित STARK प्रमाणों के साथ सत्यापन योग्य माइक्रोआर्किटेक्चर पहले से ही विकास में है इस उद्देश्य के लिए MIPS [28] के विकल्प के रूप में उपयोग किया जा सकता है। एक पहलू जिसे कम करके नहीं आंका जाना चाहिए वह यह समझने में जटिलता है कि कैसे प्रौद्योगिकी काम करती है. पारंपरिक blockchains की ताकत की स्थिति को सत्यापित करने में सक्षम होना है किसी तीसरे पक्ष की इकाई पर भरोसा किए बिना blockchain। हालाँकि, StarkNet के मामले में, यह है जब विभिन्न घटकों को सत्यापित करना संभव न हो तो कार्यान्वयन पर भरोसा करना आवश्यक है क्रिप्टोग्राफी और उन्नत गणित पर आधारित। इससे शुरुआत में घर्षण पैदा हो सकता है प्रौद्योगिकी को अपनाना, लेकिन जैसे-जैसे उपकरण और अखंडता प्रमाण का उपयोग आगे बढ़ता है blockchain फ़ील्ड के बाहर यह समस्या उम्मीद से हल हो जाएगी।

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

Optimism का तकनीकी दस्तावेज़ीकरण क्या है?
Optimism का कोई पारंपरिक whitepaper नहीं है। इसका design OP Stack specification और research posts के माध्यम से documented है। Optimism एक Ethereum Layer 2 optimistic rollup है जो Ethereum की security विरासत में लेते हुए scalable, low-cost transactions प्रदान करता है।
Optimism किसने और कब बनाया?
Optimism को Optimism Collective ने बनाया था, जिसकी स्थापना Jinglan Wang, Karl Floersch, और Kevin Ho ने की थी। Mainnet 2021 में पहले Ethereum optimistic rollups में से एक के रूप में लॉन्च हुआ। Development OP Labs द्वारा नेतृत्व किया जाता है।
Optimism का मूल तकनीकी नवाचार क्या है?
Optimism का मूल नवाचार OP Stack है — L2 rollups बनाने के लिए एक modular, open-source framework। यह 'Superchain' vision कई OP chains को security, bridge infrastructure, और communication protocols साझा करने में सक्षम बनाता है।
Optimism का rollup mechanism कैसे काम करता है?
Optimism का sequencer off-chain transactions batch करता है और उन्हें Ethereum L1 पर post करता है। State commitments publish किए जाते हैं, और एक 7-day challenge window किसी को भी fault proof submit करने की अनुमति देती है यदि state root गलत है।
Optimism, Arbitrum से कैसे अलग है?
Optimism का मुख्य differentiator OP Stack है — एक modular rollup framework जिसे Coinbase (Base), Worldcoin, और अन्य ने adopt किया है। दोनों optimistic rollups हैं, लेकिन Optimism interoperable OP chains के Superchain ecosystem पर ज़ोर देता है।
OP का supply model क्या है?
OP की initial supply लगभग 4.3 billion tokens है जिसमें 2% वार्षिक inflation है। Distribution में Retroactive Public Goods Funding (RetroPGF) program शामिल है, जो ecosystem को लाभ पहुँचाने वाले projects को एक महत्वपूर्ण हिस्सा allocate करता है।
Optimism के प्राथमिक उपयोग क्या हैं?
Optimism DeFi protocols, NFT platforms, और social apps को host करता है। प्रमुख OP Stack chains में Base (Coinbase), Worldcoin, Zora, और Mode शामिल हैं। Superchain इन chains के बीच shared liquidity और interoperability सक्षम करता है।
Optimism किस समस्या का समाधान करता है?
Optimism Ethereum की scalability को off-chain execution को स्थानांतरित करके हल करता है जबकि Ethereum की security guarantees बनाए रखता है। OP Stack interoperable chains के लिए एक unified framework प्रदान करके rollups के fragmentation को भी संबोधित करता है।
Optimism का security model कैसे काम करता है?
Optimism की सुरक्षा Ethereum L1 से विरासत में मिलती है। Transaction data Ethereum पर post किया जाता है, और fault proofs challenge window के दौरान incorrect state transitions को challenge कर सकते हैं। आगामी Stage 2 rollup status permissionless fault proofs जोड़ेगा।
Optimism ecosystem की वर्तमान स्थिति क्या है?
Optimism Superchain में Base, Worldcoin, Zora, Mode, और OP Stack पर बनी अन्य chains शामिल हैं। Retroactive Public Goods Funding (RetroPGF) ने ecosystem contributors को सैकड़ों मिलियन OP वितरित किए हैं। Fault proofs अब mainnet पर active हैं।