टपरोट पर निर्माण: भुगतान पूल बिटकॉइन का अगला लेयर टू प्रोटोकॉल हो सकता है
यह लेख प्रस्तावित टैप्रोट प्रोटोकॉल अपग्रेड के आधार पर एक तकनीकी अवधारणा के बारे में है। यदि आप अभी तक टपरोट के कार्यों के मूल से परिचित नहीं हैं, तो यह अनुशंसा की जाती है कि आप पहले इस व्याख्याकार को पढ़ें.
टैपरोट, बिटकॉइन प्रोटोकॉल का एक संभावित उन्नयन जो पहले बिटकॉइन कोर योगदानकर्ता ग्रेगरी मैक्सवेल द्वारा प्रस्तावित किया गया था, विकास के अपने अंतिम चरण में है। तकनीक में क्रिप्टो-ट्रिक्स का एक चतुर संयोजन होता है जो उपयोगकर्ताओं को नियमित रूप से दिखने वाले लेनदेन के अंदर जटिल स्मार्ट अनुबंधों को छिपाने देगा – जटिलता केवल तभी प्रकट होती है यदि किसी अनुबंध के पक्षकार असहयोगी होते हैं.
इस विचार का लाभ उठाते हुए, बिटकॉइन कोर योगदानकर्ताओं सहित (लेकिन सीमित नहीं) जेरेमी रुबिन, एंटोनी रिअर्ड, ग्लीब नॉमेंको और ग्रेगरी मैक्सवेल खुद को एक सामान्य अवधारणा के रूप में संदर्भित कर रहे हैं। भुगतान पूल, शामिल होने के लिए या सिक्के. ये पूल – हम उन्हें अभी के लिए भुगतान पूल कह सकते हैं – उपयोगकर्ताओं के समूहों को बिटकॉइन ब्लॉकचेन पर दर्ज किए गए समान सिक्कों (तकनीकी रूप से: UTXOs) के स्वामित्व को साझा करने देंगे, जबकि इनमें से किसी भी उपयोगकर्ता को भुगतान (या प्राप्त) भुगतान करने की अनुमति होगी। उनके साथ। समूह और उसके व्यक्तिगत सदस्यों के रूप में एक टापरॉट संरचना में “छिपाना”, उनमें से सभी अधिक गोपनीयता, स्मार्ट अनुबंध लचीलेपन और अन्य लाभों का आनंद लेते हैं … और वे संभावित रूप से इन लाभों का भी आनंद लेते हैं ऑफ-चेन, पेमेंट पूल को एक नया लेयर टू सॉल्यूशन बनाते हैं।.
हालाँकि डिज़ाइन की बारीकियाँ एक भुगतान पूल प्रस्ताव से अगले में थोड़ी भिन्न होती हैं, सामान्य अवधारणा समान होती है। यहाँ मूल विचार है …
एक सिक्का साझा करना
सबसे पहले, एक भुगतान पूल बनाने के लिए, उपयोगकर्ता उनके बीच साझा किए गए एक टैपरोट पते में उन्हें एकत्रित करके (सिक्कों के अंश) जोड़ते हैं। तो, मान लें कि एलिस के पास तीन सिक्के हैं, बॉब के पास दो सिक्के हैं और कैरल के पास कुल छह में से एक सिक्का है। साथ में, वे एक लेनदेन बनाते हैं जो इन सिक्कों को साझा पते पर भेजते हैं, जिससे यह छह सिक्कों के साथ एक भुगतान पूल बन जाता है.
ब्लॉकचेन पर, पेमेंट पूल का पता एक नियमित बिटकॉइन पते की तरह दिखता है, जिसमें अब छह सिक्के हैं। लेकिन सतह के नीचे, ऐलिस, बॉब और कैरल ने बड़ी चतुराई से टैप्रोट का इस्तेमाल यह सुनिश्चित करने के लिए किया कि उनमें से प्रत्येक भुगतान पूल में सिक्कों के अपने हिस्से के नियंत्रण में रहे। ऐलिस किसी भी बिंदु पर पते से तीन सिक्कों का दावा कर सकता है, बॉब किसी भी बिंदु पर दो और कैरल एक का दावा कर सकता है.
इसका कारण यह है कि पते से सिक्के खर्च करने के लिए केवल दो मुख्य विकल्प हैं.
पहला विकल्प टैपरोट कुंजी-पथ, तकनीकी शब्दों में सीधे पते से खर्च करना है। इसके लिए तीनों प्रतिभागियों से सहयोग (यानी: क्रिप्टोग्राफिक हस्ताक्षर) की आवश्यकता होती है। यदि ऐलिस, बॉब और कैरोल सभी सहमत हैं, तो छह सिक्कों को खर्च किया जा सकता है, लेकिन वे बिटकॉइन नेटवर्क पर किसी अन्य नियमित लेनदेन की तरह दिखेंगे। उदाहरण के लिए तीनों अपने संबंधित शेष को व्यक्तिगत पते पर भेजने का फैसला कर सकते हैं: ऐलिस के लिए तीन, बॉब के लिए दो और कैरोल के लिए एक। लेकिन अगर वे ऐसा चुनते हैं तो वे सभी छह सिक्कों को जूलियन को दान करने के लिए भी सहयोग कर सकते हैं, या किसी अन्य तरीके से खर्च कर सकते हैं जिस पर वे सहमत हो सकते हैं। महत्वपूर्ण बात यह है कि इन तीनों को भाग लेने की आवश्यकता है, इसलिए किसी के शेष को उसके स्वयं के सहयोग के बिना खर्च नहीं किया जा रहा है.
दूसरे मुख्य विकल्प में वास्तव में कई उप-विकल्प होते हैं। भुगतान पूल में अपने सिक्के भेजने से पहले, ऐलिस, बॉब और कैरोल ने टैप्रोट पते के पीछे क्रिप्टोग्राफिक ट्री में कुछ छिपाया: उन्होंने भुगतान पूल से धन भेजने के वैकल्पिक तरीके शामिल किए। (वर्तमान में, इन तीनों प्रतिभागियों को इन रास्तों से पूर्व-हस्ताक्षर लेनदेन करके यह महसूस किया जा सकता है, जिसके लिए सभी विकल्पों को सेट करने के लिए कुछ जटिलता की आवश्यकता होगी और यह बहुत अच्छा नहीं है; प्रस्तावित प्रोटोकॉल उन्नयन संभवतः भविष्य में इसे आसान बना सकता है; ।)
यदि प्रतिभागियों में से कोई एक वैकल्पिक टैप्रोट पथ के माध्यम से भुगतान पूल में सिक्कों को खर्च करना चुनता है, तो वे आम तौर पर उस प्रतिभागी के संतुलन के अनुरूप एक राशि भेजते हैं, जो कि उनके चयन के पते पर एक व्यक्तिगत पते की तरह होती है जिसे वे नियंत्रित करते हैं। (ऐलिस के मामले में, बॉब के मामले में उसके पते पर और कैरोल के मामले में उसके खुद के पते पर तीन सिक्के।)
इस वैकल्पिक मार्ग का उपयोग करते हुए, शेष सिक्कों को भी स्वचालित रूप से खर्च किया जाता है। यह भुगतान पूल के डिजाइन के आधार पर जटिलता और स्केलेबिलिटी के संबंध में विभिन्न ट्रेडऑफ की पेशकश के आधार पर कई तरीकों से किया जा सकता है.
सबसे सरल उपाय यह है कि हर दूसरे प्रतिभागी को अपने सिक्कों के साथ-साथ उनके चयन का पता भी भेजें। दूसरे शब्दों में: यदि कोई उपयोगकर्ता पूल से बाहर निकलता है, तो हर कोई पूल से बाहर निकलता है.
एक दूसरा समाधान, जिसे रियार्ड और नौमेन्को द्वारा पसंद किया गया है, शेष सभी सिक्कों को एक नए भुगतान पूल में भेजना है, जो बिल्कुल पहले भुगतान पूल की तरह दिखता है, बस उस चीज से छीन लिया गया है जिसमें अब बाहर निकलने वाला उपयोगकर्ता शामिल था। यह डिजाइन सबसे अच्छा उपयोगकर्ता अनुभव प्रदान करता है, लेकिन सबसे महत्वपूर्ण सबसे महत्वपूर्ण है, क्योंकि सभी संभावित निकास परिदृश्यों के लिए तैयार करना आवश्यक है, जिसमें सभी संभावित नए पूलों के लिए सभी संभावित निकास परिदृश्य शामिल हैं। हालाँकि, स्केल को अभी तक एक संभावित संभावित बिटकॉइन प्रोटोकॉल अपग्रेड के साथ हासिल किया जा सकता है ताकि यह सुनिश्चित किया जा सके कि पिछले भुगतान पूल के नियमों को किसी भी नए भुगतान पूल में ले जाया जाए।.
रुबिन का मानना है कि यह दूसरा समाधान अव्यावहारिक है, और पहले और दूसरे समाधान के बीच में कुछ के लिए जाना पसंद करता है: कुछ प्रतिभागियों को तुरंत अपने सिक्कों को उनके चयन के पते पर प्राप्त होता है, अन्य प्रतिभागियों को उनके सिक्के एक नए भुगतान पूल में भेज दिए जाते हैं। यह डिज़ाइन एक कम आदर्श उपयोगकर्ता अनुभव प्रदान करता है, लेकिन बेहतर पैमाने पर होगा, और संभावित OP_CHECKTEMPLATEVERIFIFY प्रोटोकॉल अपग्रेड डिज़ाइन को सरल बनाने और स्केल को और अधिक बढ़ाने में मदद करेगा। (निकास ट्री पेमेंट्स के माध्यम से होगा; इस प्रकार के भुगतान इस लेख में आगे किए गए हैं।)
(दूसरे और तीसरे समाधान के बीच अधिक ट्रेडऑफ़ हैं, लेकिन सभी पेशेवरों और विपक्षों का विवरण इस के दायरे से बाहर है;) बिटकॉइन-डे मेलिंग सूची चर्चा बारीकियों के लिए।)
यह देखने के लिए कि शेष सिक्कों को नए भुगतान पूल में भेजे जाने का क्या अर्थ है, यह बताएं कि ऐलिस, बॉब और कैरल दूसरा विकल्प चुनते हैं, जहाँ शेष सभी सिक्के नए भुगतान पूल में भेजे जाते हैं। यदि इस डिजाइन में ऐलिस पहले भुगतान पूल से बाहर निकलता है, तो उसके चयन के एक पते पर तीन सिक्के भेजे जाते हैं, जबकि अन्य तीन सिक्के बॉब और कैरोल के बीच एक नए भुगतान पूल में भेजे जाते हैं। उस बिंदु पर ऐलिस का अपने सिक्कों पर फिर से नियंत्रण है, जबकि बॉब और कैरोल के लिए इतना कुछ नहीं बदला है। दो अभी भी तीन शेष सिक्कों को खर्च करने के लिए सहयोग कर सकते हैं, लेकिन वे चाहें, या उनमें से कोई भी एकतरफा बाहर निकल सकता है, जैसा कि ऐलिस ने पहले किया था.
यदि बॉब दूसरे भुगतान पूल से एकतरफा बाहर निकलता है, तो वह अपने चयन के पते पर दो सिक्के भेजता है, और एक सिक्का केवल नए भुगतान पूल (तीसरा एक) के साथ केवल कैरोल छोड़ दिया है। (बेशक, इस सरलीकृत उदाहरण में, एक डिज़ाइन जहां इस अंतिम भुगतान पूल को कैरोल के चुनने के पते से बदल दिया जाता है, वास्तविकता में और अधिक समझ में आता है, लेकिन यह एक कार्यान्वयन विवरण है।)
महत्वपूर्ण बात यह है कि पेमेंट पूल में भाग लेने वाले लोग अपने इच्छित पूल से किसी भी प्रकार का भुगतान करने के लिए सहयोग कर सकते हैं, जबकि उनमें से कोई भी अपने स्वयं के सिक्कों के साथ किसी भी बिंदु पर बाहर निकल सकता है, अन्य प्रतिभागियों को उनके नियंत्रण में छोड़ देता है।.
भुगतान पूल में भुगतान करना
इसलिए हमने स्थापित किया है कि सभी प्रतिभागी व्यक्तिगत रूप से भुगतान पूल से अपना शेष निकाल सकते हैं, या – यदि वे सभी सहमत हैं – पूल से खर्च करते हैं। यह दूसरा विकल्प है जो वास्तव में कुछ चालाक बनाता है: भुगतान पूल गतिशील हो सकता है। जब तक सभी प्रतिभागी सहमत हो जाते हैं, तब तक वे न केवल स्वयं अपने धन का भुगतान कर सकते हैं, न ही दूसरों (जैसे जूलियन) को भुगतान कर सकते हैं, लेकिन वे कुछ और भी अधिक रोचक कर सकते हैं। वे अलग-अलग डिज़ाइनों के साथ अपने फंड को पेमेंट पूल के नए संस्करणों में स्थानांतरित कर सकते हैं.
उदाहरण के लिए यह उनमें से किसी को भी पूल से खर्च करने देता है.
बता दें कि एलिस एक नई कार खरीद रही है, और एक बिटकॉइन के साथ इसके लिए भुगतान करना चाहती है। ऐलिस, बॉब और कैरोल तब भुगतान पूल से एक लेन-देन बना सकते थे जो कार डीलरशिप को एक सिक्का भेजता है, और शेष पांच सिक्कों को एक नए भुगतान पूल में भेजता है जो पहले एक जैसा दिखता है, इस समय को छोड़कर एलिस केवल बाहर निकल सकता है एकतरफा रूप से दो सिक्कों के साथ, एक पहले से कम.
इस बीच, लेन-देन किसी अन्य नियमित बिटकॉइन लेनदेन की तरह देखा गया। कार डीलरशिप (या ब्लॉकचेन जासूस) यह निष्कर्ष निकाल सकती है कि ऐलिस सभी छह सिक्कों के मालिक थे और बस कार खरीदने के लिए एक का इस्तेमाल किया, और अन्य पांच को बदलाव के रूप में रखा। उन्हें इस बात का अंदाजा नहीं था कि कुछ सिक्के बॉब और कैरोल के हैं, या वे लेन-देन में शामिल थे.
अगली बार, जब बॉब भुगतान करता है और ऐलिस और कैरोल सहयोग करते हैं, तो यह उसी भुगतान पूल से बना होता है, जो एक बार फिर बाहरी दुनिया के लिए एक साधारण बिटकॉइन लेनदेन की तरह दिखता है। भुगतान पूल के परिणामस्वरूप पुनरावृत्ति में, बॉब दो के बजाय एक सिक्के से बाहर निकल सकता है। इस बीच, वही ब्लॉकचेन जासूसों ने सोचा कि ऐलिस फिर से भुगतान कर सकता है, उन्हें और भ्रमित कर सकता है। (और भले ही ब्लॉकचेन जासूस किसी तरह यह पता लगाएंगे कि पता वास्तव में ऐलिस, बॉब और कैरोल के बीच एक भुगतान पूल है, वे अभी भी यह नहीं बता पाएंगे कि तीनों में से कौन सा नवीनतम भुगतान किया है।)
हर बार ऐलिस, बॉब या कैरोल सिक्के खर्च करते हैं, लेन-देन उनमें से किसी एक से हो सकता है, और भुगतान पूल के बाहर कोई भी अंतर नहीं बता सकता है.
भुगतान पूल केवल खर्च करने की अनुमति नहीं देते हैं। यदि ऐलिस भुगतान पूल में अपना “संतुलन” बनाना चाहती है, तो वह ऐसा कर सकती है। इस मामले में ऐलिस, बॉब और कैरोल एक नए टैपरोट पते पर वर्तमान पांच सिक्कों को स्थानांतरित करने के लिए सहयोग करेंगे, जिसमें ऐलिस एक ही लेनदेन में अपने स्वयं के (व्यक्तिगत) पते में से एक अतिरिक्त सिक्का भेजेगा। नए टैप्रोट पते में एक बार फिर छह सिक्के होंगे, जिनमें से तीन ऐलिस के हैं, जैसा कि उसके एकतरफा निकास विकल्प में परिलक्षित होता है.
इसी तरह, भुगतान पूल में नए उपयोगकर्ता भी शामिल हो सकते हैं। अगर ऐलिस, बॉब और कैरोल डेव को भाग लेने देने के लिए सहमत होते हैं, तो वे तीनों डेव के साथ एक लेन-देन बनाने के लिए सहयोग करते हैं जो डेव के नए सिक्कों के साथ भुगतान पूल फंड को एक नए भुगतान पूल में भेजते हैं, जिसे डेव को भाग लेने के लिए डिज़ाइन किया गया है – और बाहर निकलें अगर वह ऐसा चुनता.
इसके अलावा, एक दूसरे को भुगतान करने के लिए भुगतान पूल के भीतर प्रतिभागियों के लिए विकल्प है। यदि एलिस उदाहरण के लिए बॉब को एक सिक्का का भुगतान करेगा, तो तीनों एक नए भुगतान पूल में धन भेजने में सहयोग कर सकते हैं, जहां एलिस के पास उसके संतुलन से घटाया गया सिक्का है और बॉब के पास एक सिक्का है। ब्लॉकचेन पर, फिर से, यह एक नियमित भुगतान की तरह दिखेगा, और ब्लॉकचेन जासूसों को पता नहीं होगा कि किसने भुगतान किया है, या कितना। (यह इंगित करने योग्य है कि डेव पूल में एक समान तरीके से प्रवेश कर सकता है, मौजूदा प्रतिभागियों में से एक आंतरिक भुगतान प्राप्त करके।)
थोड़ी सी अतिरिक्त जटिलता के साथ (और आदर्श रूप से कम से कम एक अतिरिक्त बिटकॉइन प्रोटोकॉल अपग्रेड जैसे नॉनप्यूट के साथ), स्थानान्तरण को ऑफ-चेन भी पूरा किया जा सकता है। जब ऐलिस बॉब को भुगतान करता है, तो इस मामले में सभी प्रतिभागी एक नए भुगतान पूल में एक ही तरह से खर्च करने वाले लेनदेन का निर्माण करेंगे, लेकिन यह लेनदेन केवल उनके बीच साझा किया जाएगा – नेटवर्क पर प्रसारित नहीं (जब तक कि कोई कभी धोखा देने का प्रयास न करे)। इस तरह, ऐलिस, बॉब और कैरल अपने संतुलन को “आंतरिक रूप से” अपडेट कर सकते हैं और यहां तक कि डेव को किसी बिंदु पर पूल में जाने भी दे सकते हैं। जब वे सभी पूल को बंद करने के लिए सहमत होते हैं, तो वे एक अंतिम लेनदेन बना सकते हैं जो मूल भुगतान पूल से खर्च करता है, प्रत्येक को अपने शेष राशि का पुरस्कार देता है.
चैनल फैक्ट्रियों के रूप में ज्ञात एक पुराने विचार के समान, इस प्रकार के भुगतान पूल अंततः स्वयं को लाइटनिंग चैनल, वाल्ट या अन्य लेयर टू प्रोटोकॉल की मेजबानी के लिए भी इस्तेमाल किया जा सकता है। यह इस तरह के पूल में किसी भी प्रकार की अतिरिक्त प्रोटोकॉल परत को “लपेटने” की क्षमता प्रदान कर सकता है, इस प्रकार समान और नियमित रूप से दिखने वाले लेनदेन में अपनी सारी जटिलता छिपाता है.