सी-लाइटिंग में प्लग इन करना: लाइटनिंग प्लगिन्स का भविष्य उज्ज्वल है
विभिन्न लाइटनिंग कार्यान्वयन को नेविगेट करने की कोशिश करना एक चुनौती हो सकती है। हालाँकि शुरू में तीन कार्यान्वयन हुए थे: सी-लाइटनिंग, एक्लेयर और लेंड, हर समय वुडवर्क से बाहर आने के लिए जारी रहे, जिसमें परमटाइंग, जंग-बिजली और इलेक्ट्रम सबसे हाल ही में प्रवेश करने के लिए.
अक्सर, ऐसा लगता है कि डेवलपर्स और आकांक्षी डेवलपर्स उस भाषा के आधार पर किसी विशेष कार्यान्वयन के लिए उपयोग या योगदान करने के लिए चुनते हैं, जो उस भाषा में लिखा गया है? एक्लेयर चुनें। जंग की क्षमता से उत्साहित? जंग-बिजली चुनें। हालांकि, अन्य महत्वपूर्ण विचार हैं जैसे कि उद्देश्य, डिजाइन दर्शन, उपयोग के मामले और विभिन्न कार्यान्वयन के व्यापार बंद। इसके अलावा, सिर्फ इसलिए कि एक कार्यान्वयन एक निश्चित भाषा में लिखा गया है, इसका मतलब यह नहीं है कि उस कार्यान्वयन के आसपास के पारिस्थितिकी तंत्र में योगदान करने के लिए आपको उस भाषा में कोड करना आवश्यक है.
ब्रेकिंग बिटकॉइन 2019 के पैनल और इस बिटकॉइन मैगज़ीन के लेख में, लंड और रस्ट-लाइटनिंग कार्यान्वयन के बीच उभरते हुए विरोधाभासों का पता लगाया गया। जब भी lnd डेवलपर्स से लोड लेना और बॉक्स से बाहर परम कार्यक्षमता प्रदान करना चाहता है, तो जंगलों की बिजली अपने स्वयं के घटकों को लाने और उन्हें स्लॉट करने के लिए प्रोत्साहित करने वाले डेवलपर्स के साथ अंतिम लचीलापन प्रदान करता है।.
इसके विपरीत, सी-लाइटनिंग एक तीसरा तरीका प्रदान करता है। यह एक मजबूत और सुरक्षित कोर को बनाए रखता है जिसे डेवलपर द्वारा बदल या बदल नहीं दिया जाना चाहिए। लचीलेपन और अतिरिक्त कार्यक्षमता प्लगइन्स के उपयोग के माध्यम से उपलब्ध है जिसे डेवलपर द्वारा विभिन्न भाषाओं जैसे पायथन या गो में लिखा जा सकता है। उद्देश्य सी-लाइटिंग इकोसिस्टम के लिए नई कटिंग एज फीचर्स के साथ प्रयोग करने के लिए एक परीक्षण के रूप में उभरने के लिए है, पहले अन्य कार्यान्वयन जैसे कि lnd और eclair का इलाका, प्रदर्शन और बलिष्ठता के त्याग के बिना।.
प्लगइन्स सबप्रोसेस हैं जो मुख्य बिजली के डेमॉन द्वारा शुरू किए गए हैं। वे बिजली से काम करते हैं। कोई भी प्लगइन्स जो आवश्यकताओं के लिए अधिशेष हैं उन्हें चलाने की आवश्यकता नहीं है। कुछ प्लगइन्स को लाइटनिंगड में पेश करने के लिए कुछ हुक की आवश्यकता होती है जो आंतरिक घटनाओं के बारे में प्लगइन्स को सूचित करेगा और / या लाइटवेट के व्यवहार को बदल देगा।.
पहला C- लाइटनिंग प्लगइन्स
ब्लॉकस्ट्रीम में ए श्रृंखला सी-लाइटनिंग टीम द्वारा लिखे गए कुछ पहले प्लगइन्स को दिखाने के लिए मध्यम ब्लॉग पोस्ट। इनमें “सारांश” प्लगइन शामिल है जो सैटोशिस ऑनचेन सहित नोड की स्थिति का सारांश प्रदान करता है, जो कि फ़ाइट शब्दों में मात्रा, साथियों की संख्या, चैनलों की संख्या, वे कितने संतुलित हैं, आदि।.
“जांच” प्लगइन निर्धारित करता है कि नेटवर्क में एक निश्चित नोड के लिए भुगतान करने के लिए कोई मार्ग है, आवश्यक शुल्क स्तर लौटाता है और इंगित करता है कि कौन सा चैनल सफल भुगतान रोक रहा है। इसका उपयोग भविष्य के भुगतान के लिए या नेटवर्क की टोपोलॉजी का पता लगाने के लिए ग्राउंडवर्क तैयार करने के लिए किया जा सकता है.
“प्रोमेथियस” प्लगइन विज़ुअलाइज़ेशन और अलर्ट प्रदान करने के लिए आपके नोड के प्रदर्शन पर डेटा एकत्र करता है। इन सभी प्लगइन्स के साथ आप एक फीचर जोड़कर या स्क्रैच से अपना निर्माण करके प्लगइन में योगदान करना चुन सकते हैं.
सामुदायिक प्लगइन्स
कुल मिलाकर लेखन के समय सी-लाइटिंग के लिए 16 “सामुदायिक क्यूरेट” प्लगइन्स उपलब्ध हैं। इनमें ए ऑटोपायलट प्लगइन Rene Pickhardt द्वारा निर्मित पुस्तकालय से लिया गया है। ऑटोपिलॉट्स तय करते हैं कि उपयोगकर्ता की ओर से कौन से चैनल खोलना है। उपयोगकर्ता को ऑटोपायलट को अपने नियंत्रण के तहत धन का प्रतिशत बताने की जरूरत है, खोले जाने वाले चैनलों की संख्या और न्यूनतम चैनल आकार। जब चैनल खोले जाते हैं और दूरदराज के दलों द्वारा बंद किए जाते हैं, तो ऑटोपायलट को बिजली द्वारा अधिसूचित करने की आवश्यकता होती है। एक प्रभावी ऑटोपायलट का निर्माण उपयोगकर्ता की प्राथमिकताओं के रूप में चुनौतीपूर्ण है, जैसे एक सफल भुगतान की संभावना को अधिकतम करना, नेटवर्क स्वास्थ्य के साथ संघर्ष कर सकता है, जैसे कि विकेंद्रीकरण का स्तर.
वहाँ भी है एक असंतुलन प्लगइन, यह सुनिश्चित करने के लिए उपयोगकर्ता के चैनलों के बीच तरलता चलती है कि पर्याप्त आवक और जावक तरलता है; और एक चालान रहित भुगतान प्लगइन, जो उपयोगकर्ता को पहले चालान प्राप्त किए बिना भुगतान करने की अनुमति देता है। सी-लाइटिंग चलाते समय आप इन प्लगइन्स के किसी भी संयोजन को चालू या बंद करना चुन सकते हैं.
लिसा नीगुत के रूप में (@ निफ्टी) ने उसे कहा चहकने की क्रिया या भाव, c- लाइटनिंग “लैंस जैसे थर्ड-पार्टी ऐप डेवलपर्स के लिए” न तो बॉक्स से बाहर एक मानकीकृत HTTP सुलभ इंटरफ़ेस और न ही एक प्रमाणीकरण योजना प्रदान करता है। लेकिन समुदाय-निर्मित प्लगइन्स सी-लाइटनिंग के लिए समकक्ष बनाने का अवसर प्रदान करते हैं जो अन्य कार्यान्वयन में मौजूद हैं.
कृताप्स कौपे GitHub शुरू किया है रेपो कुछ lnd कमांड का अनुकरण करने वाले प्लगइन्स के लिए। हाइलाइटिंग के लायक अन्य प्लगइन लेखक हैं रिचर्ड बोंडी, जिसने गो में प्लगइन्स का संग्रह लिखा है, जिसमें साथियों पर प्रतिबंध लगाने के लिए एक प्लगइन शामिल है; Fiatjaf, जो एक प्लगइन कार्यान्वयन लिखा है एलएन यूआरएल दाता के साथ बातचीत करने में मदद करने के लिए; तथा कोनोर स्कॉट, जिसने पायथन में कई प्लगइन्स लिखे हैं, जिसमें टॉप क्षमता नोड्स वाले चैनल बनाने के लिए एक प्लगइन भी शामिल है। आखिरकार, जस्टिन मून हार्डवेयर वॉलेट के साथ लाइटनिंग चैनलों को फंड करने के लिए एक प्रूफ-ऑफ-कॉन्सेप्ट प्लगइन बनाया गया है.
प्लगइन्स की चुनौतियां
यद्यपि यह प्लगइन वास्तुकला दोनों दुनिया के सर्वश्रेष्ठ की पेशकश करने के लिए लगता है, यह कुछ चुनौतियों और संभावित चढ़ाव को प्रस्तुत करता है। इस स्तर पर यह स्पष्ट नहीं है कि जंग-बिजली के अंतिम लचीलेपन का मतलब यह होगा कि यह मौजूदा Bitcoin वॉलेट के लिए बेहतर है जो लाइटनिंग को अपने मौजूदा कोडबेस में एकीकृत करने की कोशिश कर रहा है.
इसके अलावा, जैसे-जैसे सामुदायिक प्लगइन्स की संख्या कई गुना बढ़ती जाती है और इन प्लगइन्स पर निर्भर बिटकॉइन का मूल्य बढ़ता जाता है, सुरक्षा और क्यूरेशन गंभीर होते चले जाते हैं। अनिवार्य रूप से प्लगइन्स के बीच दोहराव और ओवरलैप होगा.
क्यूरेशन चुनौतीपूर्ण है क्योंकि यह प्रभावी रूप से सिफारिश करता है (अनौपचारिक रूप से, कैएट एम्प्टर) जिसमें प्लगइन्स का उपयोग किया जाना चाहिए और जो नहीं होना चाहिए। क्यूरेशन के बिना, सभी प्रतिस्पर्धी प्लगइन्स की जांच किए बिना उपयोगकर्ताओं और डेवलपर्स को जल्दी से आरंभ करना असंभव हो जाता है। एक तर्क है कि कुछ भाषाएँ (और कुछ डेवलपर्स!) सुरक्षा-महत्वपूर्ण सॉफ़्टवेयर लिखने के लिए बेहतर हैं। हालांकि, विशेष रूप से खतरनाक JSON-RPC विधियों को केवल डेवलपर विकल्प के साथ स्थापित किया जा सकता है और केवल सी-लाइटनिंग टीम की सहायता से परीक्षण और डीबगिंग के लिए अभिप्रेत है। वहाँ भी खतरों पर उपलब्ध मार्गदर्शन एक प्लगइन डेवलपर एक विशेष हुक का लाभ उठा सकता है, जो c- बिजली के डिफ़ॉल्ट व्यवहार को बदल सकता है.
ऐसा नहीं है कि यह दृष्टिकोण डेवलपर्स के लिए पूरी तरह से अनुमति रहित वातावरण बनाता है, क्योंकि कुछ भविष्य के प्लगइन्स को अभी भी सी-लाइटनिंग टीम द्वारा सी-लाइटिंग कोडबेस में विलय करने के लिए अतिरिक्त हुक की आवश्यकता होगी। उदाहरण के लिए, एक वॉचटॉवर प्लगइन की सुविधा के लिए एक हुक अंदर है विचार-विमर्श लेखन के समय। यह संभव है कि कुछ हुक सुरक्षा चिंताओं या कार्यान्वयन विवरण के कारण विलय नहीं किए गए हों.
यह देखा जाना बाकी है कि क्या सी-लाइटिंग नोड्स के अलग-अलग सेटों को चलाने वाले इंस्ट्रूमेंट्स सी-लाइटनिंग नोड्स या अन्य कार्यान्वयन के बीच संगतता मुद्दों का कारण बनते हैं। विभिन्न कार्यान्वयनों के बीच संगतता सुनिश्चित करना पहले से ही चुनौतीपूर्ण है, सी-लाइटिंग नोड्स सभी एक ही रिलीज चल रहे हैं। एक्सपेरिमेंट करना महत्वपूर्ण है, हालांकि, और इस प्रयोग से सबक लाइट प्रोटोकॉल के लिए BOLT विनिर्देशों को अंतिम रूप देते समय अमूल्य साबित होगा।.
लंदन बिटकॉइन देवता
विभिन्न भाषाओं के विस्तृत चयन में नए प्लगइन्स के साथ निर्माण और खेलने का अवसर डेवलपर्स को सी-लाइटिंग के शीर्ष पर बना रहा है। एंटोनी पाइनसोट (@ मित्र) लंदन में पेश करने के लिए आया था लंदन बिटकॉइन देवता मार्च 2020 में मीटअप प्लगइन प्रबंधक रेकलेस कहा जाता है जो उपयोगकर्ता को प्लगइन्स के चयन की पेशकश करेगा और चुने हुए प्लगइन्स को गतिशील रूप से शुरू करेगा। उन्होंने एक आरपीसी कमांड हुक भी बनाया है जो प्लगइन को किसी भी आरपीसी कमांड को लेने और उसे बदलने की अनुमति देता है। यह संभावित रूप से लापरवाह और प्रायोगिक है क्योंकि आरपीसी कमांड यह है कि उपयोगकर्ता बिजली से कैसे बातचीत करते हैं। यदि RPC आदेशों को स्वीकार किया जा सकता है, तो इसे अस्वीकार या बदल दिया जाएगा बक्सों का इस्तेमाल करें लेकिन उपयोगकर्ताओं को अपने फंडों को खोने की भी संभावना है.
इस RPC कमांड हुक ने ऑनलाइन पर रस्टी रसेल की सबसे हालिया प्रस्तुति का आधार बनाया बोलथॉन 2. अभी भी प्लगइन्स का एक पूरा स्वैथ है जो इससे बनाया जा सकता है trampoline मार्ग सेवा मेरे HODL चालान, और ईसाई डेकर उम्मीद “वहाँ पहले से ही एक प्लगइन है जो ऐसा करता है” मेम बनने के लिए। उस स्थिति में, डेकर और सी-लाइटनिंग समुदाय के पास प्लगइन्स के इस उभरते हुए जंगल को क्यूरेट करने का काम हो सकता है.
इस लेख में उनके योगदान के लिए एंटोनी पिकासोट और क्रिश्चियन डेकर को धन्यवाद.