लाइट क्लाइंट्स
पूर्ण नोड चलाना इथेरियम के साथ इंटरैक्ट करने का सबसे विश्वासहीन, निजी, विकेंद्रीकृत और सेंसरशिप प्रतिरोधी तरीका है। पूर्ण नोड के साथ आप ब्लॉकचेन की अपनी कॉपी रखते हैं जिसे आप तुरंत क्वेरी कर सकते हैं और आपको इथेरियम के पीयर-टू-पीयर नेटवर्क तक सीधी पहुंच मिलती है। हालाँकि, पूर्ण नोड चलाने के लिए काफी मात्रा में मेमोरी, स्टोरेज और CPU की आवश्यकता होती है। इसका मतलब है कि हर किसी के लिए अपना नोड चलाना संभव नहीं है। इथेरियम रोडमैप पर इसके कई समाधान हैं, जिनमें अवस्थाहीनता शामिल है, लेकिन उन्हें लागू होने में अभी कई साल बाकी हैं। निकट भविष्य में इसका उत्तर पूर्ण नोड चलाने के कुछ लाभों के बदले बड़े प्रदर्शन सुधारों को अपनाना है जो नोड्स को बहुत कम हार्डवेयर आवश्यकताओं के साथ चलाने की अनुमति देते हैं। जो नोड यह समझौता करते हैं उन्हें लाइट नोड के रूप में जाना जाता है।
लाइट क्लाइंट क्या है
लाइट नोड एक ऐसा नोड है जो लाइट क्लाइंट सॉफ़्टवेयर चलाता है। ब्लॉकचेन डेटा की स्थानीय प्रतियां रखने और सभी परिवर्तनों को स्वतंत्र रूप से सत्यापित करने के बजाय, वे किसी प्रदाता से आवश्यक डेटा का अनुरोध करते हैं। प्रदाता पूर्ण नोड से सीधा कनेक्शन हो सकता है या किसी केंद्रीकृत RPC सर्वर के माध्यम से हो सकता है। फिर डेटा को लाइट नोड द्वारा सत्यापित किया जाता है, जिससे यह चेन के शीर्ष के साथ अद्यतित रह सकता है। लाइट नोड केवल ब्लॉक हेडर को प्रोसेस करता है, और केवल कभी-कभार ही वास्तविक ब्लॉक सामग्री को डाउनलोड करता है। नोड्स अपने हल्केपन में भिन्न हो सकते हैं, जो इस बात पर निर्भर करता है कि वे लाइट और पूर्ण क्लाइंट सॉफ़्टवेयर के किस संयोजन को चलाते हैं। उदाहरण के लिए, सबसे हल्का कॉन्फ़िगरेशन एक लाइट निष्पादन क्लाइंट और एक लाइट सर्वसम्मति क्लाइंट चलाना होगा। यह भी संभव है कि कई नोड्स पूर्ण निष्पादन क्लाइंट्स के साथ लाइट सर्वसम्मति क्लाइंट्स चलाना चुनेंगे, या इसके विपरीत।
लाइट क्लाइंट्स कैसे काम करते हैं?
जब इथेरियम ने प्रूफ-ऑफ़-स्टेक (PoS) आधारित सर्वसम्मति तंत्र का उपयोग करना शुरू किया, तो विशेष रूप से लाइट क्लाइंट्स का समर्थन करने के लिए नया बुनियादी ढांचा पेश किया गया था। यह इस तरह काम करता है कि हर 1.1 दिनों में 512 वैलिडेटर्स के एक सबसेट को यादृच्छिक रूप से सिंक समिति के रूप में कार्य करने के लिए चुना जाता है। सिंक समिति हाल के ब्लॉक्स के हेडर पर हस्ताक्षर करती है। प्रत्येक ब्लॉक हेडर में सिंक समिति में वैलिडेटर्स का एकत्रित हस्ताक्षर और एक "बिटफ़ील्ड" होता है जो यह दर्शाता है कि किन वैलिडेटर्स ने हस्ताक्षर किए और किन लोगों ने नहीं किए। प्रत्येक हेडर में उन वैलिडेटर्स की सूची भी शामिल होती है जिनसे अगले ब्लॉक पर हस्ताक्षर करने में भाग लेने की अपेक्षा की जाती है। इसका मतलब है कि एक लाइट क्लाइंट जल्दी से देख सकता है कि सिंक समिति ने उनके द्वारा प्राप्त डेटा पर हस्ताक्षर किए हैं, और वे यह भी जांच सकते हैं कि सिंक समिति वास्तविक है या नहीं, इसकी तुलना उस समिति से करके कर सकते हैं जिसकी उन्हें पिछले ब्लॉक में अपेक्षा करने के लिए कहा गया था। इस तरह, लाइट क्लाइंट वास्तव में ब्लॉक को डाउनलोड किए बिना नवीनतम इथेरियम ब्लॉक के अपने ज्ञान को अपडेट रख सकता है, केवल हेडर को डाउनलोड करके जिसमें सारांश जानकारी होती है।
निष्पादन परत पर लाइट निष्पादन क्लाइंट के लिए कोई एक विशिष्टता नहीं है। एक लाइट निष्पादन क्लाइंट का दायरा पूर्ण निष्पादन क्लाइंट के "लाइट मोड" से भिन्न हो सकता है, जिसमें पूर्ण नोड की सभी EVM और नेटवर्किंग कार्यक्षमता होती है, लेकिन यह संबंधित डेटा को डाउनलोड किए बिना केवल ब्लॉक हेडर को सत्यापित करता है, या यह एक अधिक सुव्यवस्थित क्लाइंट हो सकता है जो इथेरियम के साथ इंटरैक्ट करने के लिए RPC प्रदाता को अनुरोध अग्रेषित करने पर बहुत अधिक निर्भर करता है।
लाइट क्लाइंट्स महत्वपूर्ण क्यों हैं?
लाइट क्लाइंट्स मायने रखते हैं क्योंकि वे उपयोगकर्ताओं को यह आँख बंद करके विश्वास करने के बजाय कि उनका डेटा प्रदाता सही और ईमानदार है, आने वाले डेटा को सत्यापित करने की अनुमति देते हैं, जबकि पूर्ण नोड के कम्प्यूटेशनल संसाधनों के केवल एक छोटे से हिस्से का उपयोग करते हैं। लाइट क्लाइंट्स को प्राप्त होने वाले डेटा की जांच उन ब्लॉक हेडर्स के विरुद्ध की जा सकती है जिनके बारे में वे जानते हैं कि उन पर 512 इथेरियम वैलिडेटर्स के यादृच्छिक सेट के कम से कम 2/3 द्वारा हस्ताक्षर किए गए हैं। यह बहुत मजबूत प्रमाण है कि डेटा सही है।
लाइट क्लाइंट केवल थोड़ी मात्रा में कंप्यूटिंग शक्ति, मेमोरी और स्टोरेज का उपयोग करता है ताकि इसे मोबाइल फोन पर चलाया जा सके, किसी ऐप में एम्बेड किया जा सके या ब्राउज़र के हिस्से के रूप में उपयोग किया जा सके। लाइट क्लाइंट्स इथेरियम तक न्यूनतम-विश्वास पहुंच को उतना ही घर्षण रहित बनाने का एक तरीका है जितना कि किसी तीसरे पक्ष के प्रदाता पर भरोसा करना।
आइए एक सरल उदाहरण लें। कल्पना करें कि आप अपने खाते का बैलेंस जांचना चाहते हैं। ऐसा करने के लिए आपको एक इथेरियम नोड से अनुरोध करना होगा। वह नोड आपके बैलेंस के लिए इथेरियम स्थिति की अपनी स्थानीय कॉपी की जांच करेगा और इसे आपको वापस कर देगा। यदि आपके पास किसी नोड तक सीधी पहुंच नहीं है, तो ऐसे केंद्रीकृत ऑपरेटर हैं जो इस डेटा को एक सेवा के रूप में प्रदान करते हैं। आप उन्हें एक अनुरोध भेज सकते हैं, वे अपने नोड की जांच करते हैं, और परिणाम आपको वापस भेजते हैं। इसके साथ समस्या यह है कि तब आपको यह विश्वास करना होगा कि प्रदाता आपको सही जानकारी दे रहा है। यदि आप स्वयं इसे सत्यापित नहीं कर सकते हैं तो आप वास्तव में कभी नहीं जान सकते कि जानकारी सही है।
एक लाइट क्लाइंट इस समस्या का समाधान करता है। आप अभी भी किसी बाहरी प्रदाता से डेटा का अनुरोध करते हैं, लेकिन जब आप डेटा वापस प्राप्त करते हैं तो यह एक प्रमाण के साथ आता है जिसे आपका लाइट नोड ब्लॉक हेडर में प्राप्त जानकारी के विरुद्ध जांच सकता है। इसका मतलब है कि कोई विश्वसनीय ऑपरेटर के बजाय इथेरियम आपके डेटा की शुद्धता की पुष्टि कर रहा है।
लाइट क्लाइंट्स किन नवाचारों को सक्षम करते हैं?
लाइट क्लाइंट्स का प्राथमिक लाभ अधिक लोगों को नगण्य हार्डवेयर आवश्यकताओं और तीसरे पक्ष पर न्यूनतम निर्भरता के साथ स्वतंत्र रूप से इथेरियम तक पहुंचने में सक्षम बनाना है। यह उपयोगकर्ताओं के लिए अच्छा है क्योंकि वे अपने स्वयं के डेटा को सत्यापित कर सकते हैं और यह नेटवर्क के लिए अच्छा है क्योंकि यह चेन को सत्यापित करने वाले नोड्स की संख्या और विविधता को बढ़ाता है।
बहुत कम स्टोरेज, मेमोरी और प्रोसेसिंग पावर वाले उपकरणों पर इथेरियम नोड्स चलाने की क्षमता लाइट क्लाइंट्स द्वारा खोले गए नवाचार के प्रमुख क्षेत्रों में से एक है। जबकि आज इथेरियम नोड्स को बहुत सारे कंप्यूटिंग संसाधनों की आवश्यकता होती है, लाइट क्लाइंट्स को ब्राउज़र में एम्बेड किया जा सकता है, मोबाइल फोन पर चलाया जा सकता है और शायद स्मार्ट घड़ियों जैसे छोटे उपकरणों पर भी चलाया जा सकता है। इसका मतलब है कि एम्बेडेड क्लाइंट्स वाले इथेरियम वॉलेट्स मोबाइल फोन पर चल सकते हैं। इसका मतलब है कि मोबाइल वॉलेट्स बहुत अधिक विकेंद्रीकृत हो सकते हैं क्योंकि उन्हें अपने डेटा के लिए केंद्रीकृत डेटा प्रदाताओं पर भरोसा नहीं करना पड़ेगा।
इसका एक विस्तार इंटरनेट ऑफ थिंग्स (IoT) उपकरणों को सक्षम करना है। सिंक समितियों द्वारा प्रदान की गई सभी सुरक्षा गारंटियों के साथ, किसी टोकन बैलेंस या NFT के स्वामित्व को जल्दी से साबित करने के लिए एक लाइट क्लाइंट का उपयोग किया जा सकता है, जो IoT नेटवर्क पर कुछ कार्रवाई को ट्रिगर करता है। एक साइकिल रेंटल सेवा (opens in a new tab) की कल्पना करें जो एम्बेडेड लाइट क्लाइंट वाले ऐप का उपयोग करके जल्दी से यह सत्यापित करती है कि आपके पास रेंटल सेवा का NFT है और यदि ऐसा है, तो आपके लिए सवारी करने के लिए एक साइकिल अनलॉक कर देती है!
इथेरियम रोलअप्स को भी लाइट क्लाइंट्स से लाभ होगा। रोलअप्स के लिए एक बड़ी समस्या उन सेतुओं को लक्षित करने वाले हैक्स रहे हैं जो इथेरियम मेननेट से रोलअप में फंड ट्रांसफर करने की अनुमति देते हैं। एक भेद्यता वे ऑरेकल हैं जिनका उपयोग रोलअप्स यह पता लगाने के लिए करते हैं कि किसी उपयोगकर्ता ने सेतु में जमा किया है। यदि कोई ऑरेकल खराब डेटा फीड करता है, तो वे रोलअप को यह सोचने के लिए धोखा दे सकते हैं कि सेतु में जमा किया गया था और गलत तरीके से फंड जारी कर सकते हैं। रोलअप में एम्बेडेड एक लाइट क्लाइंट का उपयोग दूषित ऑरेकल से बचाने के लिए किया जा सकता है क्योंकि सेतु में जमा एक प्रमाण के साथ आ सकता है जिसे कोई भी टोकन जारी करने से पहले रोलअप द्वारा सत्यापित किया जा सकता है। यही अवधारणा अन्य इंटरचेन सेतुओं पर भी लागू की जा सकती है।
लाइट क्लाइंट्स का उपयोग इथेरियम वॉलेट्स को अपग्रेड करने के लिए भी किया जा सकता है। किसी RPC प्रदाता द्वारा प्रदान किए गए डेटा पर भरोसा करने के बजाय, आपका वॉलेट एम्बेडेड लाइट क्लाइंट का उपयोग करके आपको प्रस्तुत किए जा रहे डेटा को सीधे सत्यापित कर सकता है। यह आपके वॉलेट में सुरक्षा जोड़ देगा। यदि आपका RPC प्रदाता बेईमान था और उसने आपको गलत डेटा प्रदान किया, तो एम्बेडेड लाइट क्लाइंट आपको बता सकता है!
लाइट क्लाइंट विकास की वर्तमान स्थिति क्या है?
विकास में कई लाइट क्लाइंट्स हैं, जिनमें निष्पादन, सर्वसम्मति और संयुक्त निष्पादन/सर्वसम्मति लाइट क्लाइंट्स शामिल हैं। इस पृष्ठ को लिखते समय हम जिन लाइट क्लाइंट कार्यान्वयनों के बारे में जानते हैं, वे इस प्रकार हैं:
- लोडस्टार (Lodestar) (opens in a new tab): TypeScript में सर्वसम्मति लाइट क्लाइंट
- Helios (opens in a new tab): Rust में संयुक्त निष्पादन और सर्वसम्मति लाइट क्लाइंट
- गो इथेरियम (geth) (opens in a new tab): Go में निष्पादन क्लाइंट के लिए लाइट मोड (विकास में)
- निम्बस (Nimbus) (opens in a new tab): Nim में सर्वसम्मति लाइट क्लाइंट
हमारी जानकारी के अनुसार इनमें से किसी को भी अभी तक उत्पादन के लिए तैयार नहीं माना गया है।
लाइट क्लाइंट्स द्वारा इथेरियम डेटा तक पहुंचने के तरीकों को बेहतर बनाने के लिए भी बहुत काम किया जा रहा है। वर्तमान में, लाइट क्लाइंट्स क्लाइंट/सर्वर मॉडल का उपयोग करके पूर्ण नोड्स के लिए RPC अनुरोधों पर निर्भर करते हैं, लेकिन भविष्य में पोर्टल नेटवर्क (opens in a new tab) जैसे समर्पित नेटवर्क का उपयोग करके अधिक विकेंद्रीकृत तरीके से डेटा का अनुरोध किया जा सकता है जो पीयर-टू-पीयर गॉसिप प्रोटोकॉल का उपयोग करके लाइट क्लाइंट्स को डेटा प्रदान कर सकता है।
अन्य रोडमैप आइटम जैसे वर्कल ट्रीज़ और अवस्थाहीनता अंततः लाइट क्लाइंट्स की सुरक्षा गारंटियों को पूर्ण क्लाइंट्स के बराबर लाएंगे।