मुख्य आशयावर जा

डँकशार्डिंग

डँकशार्डिंग मुळे इथेरियम खऱ्या अर्थाने एक स्केलेबल ब्लॉकचेन बनते, परंतु तिथपर्यंत पोहोचण्यासाठी अनेक प्रोटोकॉल अपग्रेड्स आवश्यक आहेत. प्रोटो-डँकशार्डिंग ही या मार्गावरील एक मध्यवर्ती पायरी आहे. या दोन्हींचे उद्दिष्ट स्तर २ (L2) वरील व्यवहार वापरकर्त्यांसाठी शक्य तितके स्वस्त करणे हे आहे आणि यामुळे इथेरियम प्रति सेकंद >100,000 व्यवहारांपर्यंत स्केल झाले पाहिजे.

प्रोटो-डँकशार्डिंग म्हणजे काय?

प्रोटो-डँकशार्डिंग, ज्याला EIP-4844 (opens in a new tab) म्हणूनही ओळखले जाते, हा रोलअप्स साठी ब्लॉक्समध्ये स्वस्त डेटा जोडण्याचा एक मार्ग आहे. हे नाव ही कल्पना मांडणाऱ्या दोन संशोधकांवरून आले आहे: Protolambda आणि Dankrad Feist. ऐतिहासिकदृष्ट्या, रोलअप्स वापरकर्त्यांचे व्यवहार किती स्वस्त करू शकतात यावर मर्यादा होत्या कारण ते त्यांचे व्यवहार CALLDATA मध्ये पोस्ट करतात.

हे महाग आहे कारण त्यावर सर्व इथेरियम नोड्सद्वारे प्रक्रिया केली जाते आणि ते कायमस्वरूपी ऑनचेन राहते, जरी रोलअप्सना तो डेटा फक्त थोड्या काळासाठी आवश्यक असतो. प्रोटो-डँकशार्डिंग डेटा ब्लॉब्स सादर करते जे पाठवले जाऊ शकतात आणि ब्लॉक्सना जोडले जाऊ शकतात. या ब्लॉब्समधील डेटा EVM ला ॲक्सेस करता येत नाही आणि एका ठराविक कालावधीनंतर (लेखनाच्या वेळी 4096 इपॉक्स किंवा सुमारे 18 दिवस सेट केलेले) तो आपोआप हटवला जातो. याचा अर्थ रोलअप्स त्यांचा डेटा खूप स्वस्तात पाठवू शकतात आणि स्वस्त व्यवहारांच्या स्वरूपात ही बचत अंतिम वापरकर्त्यांना देऊ शकतात.

रोलअप्स हा साखळीबाह्य (offchain) व्यवहारांचे बॅचिंग करून आणि नंतर त्याचे परिणाम इथेरियमवर पोस्ट करून इथेरियम स्केल करण्याचा एक मार्ग आहे. रोलअप मूलत: दोन भागांनी बनलेला असतो: डेटा आणि एक्झिक्यूशन चेक. डेटा हा व्यवहारांचा संपूर्ण क्रम असतो ज्यावर रोलअपद्वारे प्रक्रिया केली जाते जेणेकरून इथेरियमवर पोस्ट केला जाणारा स्थिती बदल तयार होईल. एक्झिक्यूशन चेक म्हणजे प्रस्तावित स्थिती बदल योग्य आहे याची खात्री करण्यासाठी एखाद्या प्रामाणिक घटकाद्वारे ("सिद्धकर्ता") त्या व्यवहारांची पुन्हा अंमलबजावणी करणे. एक्झिक्यूशन चेक करण्यासाठी, व्यवहार डेटा कोणालाही डाउनलोड करण्यासाठी आणि तपासण्यासाठी पुरेशा काळासाठी उपलब्ध असणे आवश्यक आहे. याचा अर्थ रोलअप सिक्वेन्सरच्या कोणत्याही अप्रामाणिक वर्तनाला सिद्धकर्त्याद्वारे ओळखले जाऊ शकते आणि आव्हान दिले जाऊ शकते. तथापि, तो कायमस्वरूपी उपलब्ध असण्याची आवश्यकता नाही.

रोलअप्स त्यांच्या व्यवहार डेटासाठी ऑनचेन बांधिलकी पोस्ट करतात आणि प्रत्यक्ष डेटा डेटा ब्लॉब्समध्ये उपलब्ध करून देतात. याचा अर्थ सिद्धकर्ता बांधिलकी वैध असल्याची तपासणी करू शकतात किंवा त्यांना चुकीचा वाटणाऱ्या डेटाला आव्हान देऊ शकतात. नोड-स्तरावर, डेटाचे ब्लॉब्स सहमती क्लायंटमध्ये ठेवले जातात. सहमती क्लायंट प्रमाणित करतात की त्यांनी डेटा पाहिला आहे आणि तो नेटवर्कवर प्रसारित केला गेला आहे. जर डेटा कायमस्वरूपी ठेवला गेला, तर हे क्लायंट्स फुगतील आणि नोड्स चालवण्यासाठी मोठ्या हार्डवेअरची आवश्यकता निर्माण होईल. त्याऐवजी, दर 18 दिवसांनी नोडमधून डेटा आपोआप काढून टाकला जातो. सहमती क्लायंटची प्रमाणपत्रे हे दर्शवतात की सिद्धकर्त्यांना डेटा सत्यापित करण्यासाठी पुरेशी संधी होती. प्रत्यक्ष डेटा रोलअप ऑपरेटर, वापरकर्ते किंवा इतरांद्वारे साखळीबाह्य संग्रहित केला जाऊ शकतो.

ब्लॉब डेटा कसा सत्यापित केला जातो?

रोलअप्स ते कार्यान्वित करत असलेले व्यवहार डेटा ब्लॉब्समध्ये पोस्ट करतात. ते डेटासाठी "बांधिलकी" देखील पोस्ट करतात. ते डेटावर एक बहुपदीय (polynomial) फंक्शन बसवून असे करतात. या फंक्शनचे नंतर विविध बिंदूंवर मूल्यांकन केले जाऊ शकते. उदाहरणार्थ, जर आपण f(x) = 2x-1 हे अत्यंत सोपे फंक्शन परिभाषित केले, तर आपण या फंक्शनचे x = 1, x = 2, x = 3 साठी मूल्यांकन करू शकतो, ज्यामुळे 1, 3, 5 हे परिणाम मिळतात. सिद्धकर्ता डेटावर तेच फंक्शन लागू करतो आणि त्याच बिंदूंवर त्याचे मूल्यांकन करतो. जर मूळ डेटा बदलला असेल, तर फंक्शन समान असणार नाही आणि त्यामुळे प्रत्येक बिंदूवर मूल्यांकन केलेली मूल्येही समान नसतील. वास्तवात, बांधिलकी आणि पुरावा अधिक गुंतागुंतीचे असतात कारण ते क्रिप्टोग्राफिक फंक्शन्समध्ये गुंडाळलेले असतात.

KZG म्हणजे काय?

KZG म्हणजे Kate-Zaverucha-Goldberg - एका योजनेच्या तीन मूळ लेखकांची (opens in a new tab) नावे, जी डेटाच्या ब्लॉबला एका लहान क्रिप्टोग्राफिक "बांधिलकी" (opens in a new tab) मध्ये कमी करते. रोलअप गैरवर्तन करत नाही याची खात्री करण्यासाठी रोलअपने सबमिट केलेल्या डेटाच्या ब्लॉबची पडताळणी करणे आवश्यक आहे. यामध्ये बांधिलकी वैध होती हे तपासण्यासाठी सिद्धकर्त्याद्वारे ब्लॉबमधील व्यवहारांची पुन्हा अंमलबजावणी करणे समाविष्ट आहे. हे संकल्पनात्मकदृष्ट्या त्याच पद्धतीसारखे आहे ज्याद्वारे एक्झिक्यूशन क्लायंट्स मर्कल प्रूव्स वापरून स्तर १ (L1) वरील इथेरियम व्यवहारांची वैधता तपासतात. KZG हा एक पर्यायी पुरावा आहे जो डेटावर बहुपदीय समीकरण बसवतो. बांधिलकी काही गुप्त डेटा बिंदूंवर बहुपदीचे मूल्यांकन करते. सिद्धकर्ता डेटावर तीच बहुपदी बसवेल आणि त्याच मूल्यांवर तिचे मूल्यांकन करेल, आणि परिणाम समान आहे की नाही हे तपासेल. हा डेटा सत्यापित करण्याचा एक मार्ग आहे जो काही रोलअप्स आणि अखेरीस इथेरियम प्रोटोकॉलच्या इतर भागांद्वारे वापरल्या जाणाऱ्या झिरो-नॉलेज तंत्रांशी सुसंगत आहे.

KZG सोहळा (Ceremony) काय होता?

KZG सोहळा हा इथेरियम समुदायातील अनेक लोकांसाठी एकत्रितपणे संख्यांची एक गुप्त यादृच्छिक स्ट्रिंग तयार करण्याचा एक मार्ग होता, ज्याचा वापर काही डेटा सत्यापित करण्यासाठी केला जाऊ शकतो. हे खूप महत्त्वाचे आहे की ही संख्यांची स्ट्रिंग कोणालाही माहीत नसावी आणि ती कोणालाही पुन्हा तयार करता येऊ नये. याची खात्री करण्यासाठी, सोहळ्यात सहभागी झालेल्या प्रत्येक व्यक्तीला मागील सहभागीकडून एक स्ट्रिंग मिळाली. त्यानंतर त्यांनी काही नवीन यादृच्छिक मूल्ये तयार केली (उदा., त्यांच्या ब्राउझरला त्यांच्या माउसच्या हालचाली मोजण्याची परवानगी देऊन) आणि ती मागील मूल्यामध्ये मिसळली. त्यानंतर त्यांनी ते मूल्य पुढील सहभागीला पाठवले आणि त्यांच्या स्थानिक मशीनवरून ते नष्ट केले. जोपर्यंत सोहळ्यातील एका व्यक्तीने हे प्रामाणिकपणे केले, तोपर्यंत अंतिम मूल्य हल्लेखोराला कळू शकणार नाही.

EIP-4844 KZG सोहळा लोकांसाठी खुला होता आणि हजारो लोकांनी त्यांची स्वतःची एंट्रॉपी (यादृच्छिकता) जोडण्यासाठी यात भाग घेतला. एकूण 140,000 पेक्षा जास्त योगदान होते, ज्यामुळे हा जगातील अशा प्रकारचा सर्वात मोठा सोहळा बनला. हा सोहळा कमकुवत करण्यासाठी, त्यातील 100% सहभागींना सक्रियपणे अप्रामाणिक असावे लागेल. सहभागींच्या दृष्टिकोनातून, जर त्यांना माहीत असेल की ते प्रामाणिक होते, तर त्यांना इतर कोणावरही विश्वास ठेवण्याची गरज नाही कारण त्यांना माहीत आहे की त्यांनी सोहळा सुरक्षित केला आहे (त्यांनी वैयक्तिकरित्या N पैकी 1 प्रामाणिक सहभागीची अट पूर्ण केली).

जेव्हा एखादा रोलअप ब्लॉबमध्ये डेटा पोस्ट करतो, तेव्हा ते एक "बांधिलकी" प्रदान करतात जी ते ऑनचेन पोस्ट करतात. ही बांधिलकी ठराविक बिंदूंवर डेटावर बसवलेल्या बहुपदीचे मूल्यांकन केल्याचा परिणाम असते. हे बिंदू KZG सोहळ्यात तयार केलेल्या यादृच्छिक संख्यांद्वारे परिभाषित केले जातात. सिद्धकर्ता नंतर डेटा सत्यापित करण्यासाठी त्याच बिंदूंवर बहुपदीचे मूल्यांकन करू शकतात - जर ते समान मूल्यांवर पोहोचले तर डेटा योग्य आहे.

जर कोणाला बांधिलकीसाठी वापरलेली यादृच्छिक स्थाने माहीत असतील, तर त्यांच्यासाठी त्या विशिष्ट बिंदूंवर बसणारी नवीन बहुपदी तयार करणे सोपे आहे (म्हणजेच, एक "टक्कर"). याचा अर्थ ते ब्लॉबमधून डेटा जोडू किंवा काढू शकतात आणि तरीही वैध पुरावा देऊ शकतात. हे टाळण्यासाठी, सिद्धकर्त्यांना प्रत्यक्ष गुप्त स्थाने देण्याऐवजी, त्यांना इलिप्टिक कर्व्हज वापरून क्रिप्टोग्राफिक "ब्लॅक बॉक्स" मध्ये गुंडाळलेली स्थाने मिळतात. हे प्रभावीपणे मूल्यांची अशा प्रकारे सरमिसळ करतात की मूळ मूल्यांचे रिव्हर्स-इंजिनिअरिंग करता येत नाही, परंतु काही हुशार बीजगणिताच्या मदतीने सिद्धकर्ता आणि पडताळणीकर्ते तरीही ते प्रतिनिधित्व करत असलेल्या बिंदूंवर बहुपदींचे मूल्यांकन करू शकतात.
डँकशार्डिंग किंवा प्रोटो-डँकशार्डिंग यापैकी कोणतेही पारंपारिक "शार्डिंग" मॉडेलचे अनुसरण करत नाही ज्याचे उद्दिष्ट ब्लॉकचेनला अनेक भागांमध्ये विभाजित करणे हे आहे. शार्ड चेन्स आता रोडमॅपचा भाग नाहीत. त्याऐवजी, डँकशार्डिंग इथेरियम स्केल करण्यासाठी ब्लॉब्सवर वितरित डेटा सॅम्पलिंग वापरते. हे लागू करणे खूप सोपे आहे. या मॉडेलला काहीवेळा "डेटा-शार्डिंग" असे म्हटले जाते.

डँकशार्डिंग म्हणजे काय?

डँकशार्डिंग हे प्रोटो-डँकशार्डिंगपासून सुरू झालेल्या रोलअप स्केलिंगचे पूर्ण स्वरूप आहे. डँकशार्डिंग रोलअप्सना त्यांचा संकुचित व्यवहार डेटा टाकण्यासाठी इथेरियमवर मोठ्या प्रमाणात जागा आणेल. याचा अर्थ इथेरियम शेकडो वैयक्तिक रोलअप्सना सहजतेने समर्थन देऊ शकेल आणि प्रति सेकंद लाखो व्यवहार वास्तवात आणू शकेल.

हे ज्या प्रकारे कार्य करते ते म्हणजे प्रोटो-डँकशार्डिंगमधील ब्लॉक्सना जोडलेल्या ब्लॉब्सची संख्या सहा (6) वरून पूर्ण डँकशार्डिंगमध्ये 64 पर्यंत वाढवणे. आवश्यक असलेले बाकीचे बदल हे सर्व सहमती क्लायंट्स ज्या प्रकारे कार्य करतात त्यातील अपडेट्स आहेत जेणेकरून ते नवीन मोठे ब्लॉब्स हाताळू शकतील. यापैकी अनेक बदल डँकशार्डिंगपासून स्वतंत्र इतर उद्देशांसाठी आधीच रोडमॅपवर आहेत. उदाहरणार्थ, डँकशार्डिंगसाठी प्रस्तावक-निर्माता विभाजन (PBS) लागू करणे आवश्यक आहे. हे एक अपग्रेड आहे जे ब्लॉक्स तयार करण्याचे आणि ब्लॉक्स प्रस्तावित करण्याचे कार्य वेगवेगळ्या प्रमाणकांमध्ये विभागते. त्याचप्रमाणे, डँकशार्डिंगसाठी डेटा अव्हेलेबिलिटी सॅम्पलिंग (DAS) आवश्यक आहे, परंतु ते अतिशय हलक्या क्लायंट्सच्या विकासासाठी देखील आवश्यक आहे जे जास्त ऐतिहासिक डेटा संग्रहित करत नाहीत ("स्टेटलेस क्लायंट्स").

वैयक्तिक प्रमाणकांना 32MB ब्लॉब डेटासाठी महागडी बांधिलकी आणि पुरावे तयार करण्यापासून रोखण्यासाठी प्रस्तावक-निर्माता विभाजन (PBS) आवश्यक आहे. यामुळे होम स्टेकर्सवर खूप ताण येईल आणि त्यांना अधिक शक्तिशाली हार्डवेअरमध्ये गुंतवणूक करावी लागेल, ज्यामुळे विकेंद्रीकरणाला हानी पोहोचते. त्याऐवजी, विशेष ब्लॉक निर्माते या महागड्या संगणकीय कामाची जबाबदारी घेतात. त्यानंतर, ते त्यांचे ब्लॉक्स ब्लॉक प्रस्तावकांना प्रसारित करण्यासाठी उपलब्ध करून देतात. ब्लॉक प्रस्तावक फक्त तो ब्लॉक निवडतो जो सर्वात फायदेशीर असतो. कोणीही ब्लॉब्स स्वस्तात आणि पटकन सत्यापित करू शकतो, याचा अर्थ कोणताही सामान्य प्रमाणक ब्लॉक निर्माते प्रामाणिकपणे वागत आहेत की नाही हे तपासू शकतो. यामुळे विकेंद्रीकरणाचा त्याग न करता मोठ्या ब्लॉब्सवर प्रक्रिया करणे शक्य होते. गैरवर्तन करणाऱ्या ब्लॉक निर्मात्यांना नेटवर्कमधून सहजपणे बाहेर काढले जाऊ शकते आणि स्लॅशिंग केले जाऊ शकते - इतर त्यांच्या जागी येतील कारण ब्लॉक तयार करणे ही एक फायदेशीर क्रिया आहे.

प्रमाणकांना ब्लॉब डेटा जलद आणि कार्यक्षमतेने सत्यापित करण्यासाठी डेटा अव्हेलेबिलिटी सॅम्पलिंग (DAS) आवश्यक आहे. डेटा अव्हेलेबिलिटी सॅम्पलिंग वापरून, प्रमाणक खात्री बाळगू शकतात की ब्लॉब डेटा उपलब्ध होता आणि योग्यरित्या कमिट केला गेला होता. प्रत्येक प्रमाणक यादृच्छिकपणे फक्त काही डेटा बिंदूंचे नमुने घेऊ शकतो आणि पुरावा तयार करू शकतो, याचा अर्थ कोणत्याही प्रमाणकाला संपूर्ण ब्लॉब तपासण्याची आवश्यकता नाही. जर कोणताही डेटा गहाळ असेल, तर तो पटकन ओळखला जाईल आणि ब्लॉब नाकारला जाईल.

सद्य प्रगती

पूर्ण डँकशार्डिंगला अजून काही वर्षे बाकी आहेत. यादरम्यान, 140,000 पेक्षा जास्त योगदानांसह KZG सोहळा संपन्न झाला आहे, आणि प्रोटो-डँकशार्डिंगसाठी EIP (opens in a new tab) परिपक्व झाला आहे. हा प्रस्ताव सर्व टेस्टनेट्समध्ये पूर्णपणे लागू केला गेला आहे, आणि मार्च 2024 मध्ये Cancun-Deneb ("डेन्कन्") नेटवर्क अपग्रेडसह मुख्यनेटवर लाइव्ह झाला आहे.

पुढील वाचन