Pruned Node एक Full Node है जो Bitcoin के नियमों की जाँच खुद करता है, पर सभी पुराने ब्लॉक हमेशा नहीं रखता। इससे डिस्क की जगह बचती है, जबकि पुराने रिकॉर्ड तक पहुँच सीमित हो जाती है। यह आपके बिटकॉइन कम नहीं करता और वॉलेट के बैकअप की जगह नहीं लेता।
आना Bitcoin का उपयोग करते समय भुगतान सही है या नहीं, यह तय करने के लिए किसी दूसरे के सर्वर पर निर्भर नहीं रहना चाहती। लेकिन उसके घर के कंप्यूटर में सभी ब्लॉक रखने की जगह नहीं है। ब्लॉक, पुष्टि हो चुके लेनदेन के समूह होते हैं। Pruned Node उसके काम आ सकता है। सामान्य Initial Block Download (नोड का शुरुआती सिंक्रनाइज़ेशन) में नोड पुराने रिकॉर्ड क्रम से डाउनलोड करके जाँचता है और फिर जाँची जा चुकी पुरानी फाइलें हटाता है। पूरा इतिहास एक साथ डिस्क पर रखना ज़रूरी नहीं, लेकिन इस सिंक्रोनाइज़ेशन में उसे पूरा पढ़ना और जाँचना पड़ता है। [2] [5]
Pruning का मतलब तय शर्तों के अनुसार पुराना डेटा हटाना है। Bitcoin Core ऐसे ब्लॉक की फाइलें और उनसे जुड़े undo डेटा हटाता है जिन्हें हटाने की अनुमति हो। undo डेटा किसी ब्लॉक के किए बदलाव वापस लेने में काम आता है। इसे ऐसे समझें: पुराने कामकाजी कागज़ों का नतीजा अद्यतन रिकॉर्ड में लिख देने के बाद उन कागज़ों को हटा देना। स्थानीय प्रतियाँ चली जाती हैं, लेकिन वैध भुगतान का असर बना रहता है। दूसरे नोड वही ब्लॉक अब भी रख सकते हैं। [3] [7]
सबसे अहम UTXO set है: लेनदेन के वे आउटपुट जिन्हें अभी खर्च नहीं किया गया है। हर आउटपुट एक रकम और उसे खर्च करने की शर्तें बताता है। नोड इस समूह को अद्यतन करता रहता है, जिससे वह पहले खर्च हो चुके आउटपुट को दोबारा खर्च करने की कोशिश पकड़ सकता है। वह ब्लॉक का इंडेक्स और उनके हेडर भी रखता है। हेडर छोटे रिकॉर्ड हैं जो ब्लॉक को आपस में जोड़ते हैं। UTXO set न तो खातों की सूची है, न हर पुराने भुगतान का पूरा ब्यौरा। [2] [6]
नेटवर्क कुछ समय के लिए दो वैध शाखाओं पर चल सकता है और फिर अधिक संचित कार्य वाली दूसरी शाखा को आगे बढ़ा सकता है। इसे पुनर्गठन कहते हैं। संचित कार्य वैध ब्लॉक खोजने की कठिनाई को दर्शाता है। इसका आधार ब्लॉक का Proof of Work, यानी गणनात्मक काम का प्रमाण है। नोड को कुछ ब्लॉक के प्रभाव वापस लेने पड़ते हैं, इसलिए वह हाल के कुछ ब्लॉक और उनसे जुड़ा undo डेटा बचाकर रखता है। अगर वापस लौटना इस सहेजे गए इतिहास से भी पीछे तक हो, तो डेटा दोबारा लाना या स्थिति फिर बनाना पड़ सकता है। डिस्क की सीमा पुराने भुगतान को पूरी तरह अपरिवर्तनीय नहीं बनाती। [5] [7]
Bitcoin Core में स्वचालित pruning का लक्ष्य केवल ब्लॉक और undo फाइलों के लिए होता है, नोड के पूरे डेटा फोल्डर के लिए नहीं। डेटाबेस, वॉलेट और दूसरी फाइलें अतिरिक्त जगह लेती हैं। फाइलें पूरी की पूरी हटाई जाती हैं और ज़रूरी हालिया डेटा भी बचाना पड़ता है, इसलिए लक्ष्य एक कठोर अधिकतम सीमा नहीं है। डिस्क चुनते समय इस अतिरिक्त जगह का ध्यान रखें: इतिहास की सीमा और पूरे नोड का आकार अलग बातें हैं। [1] [4] [7]
Full Node में Full का अर्थ नियमों की स्वतंत्र जाँच है, हर ब्लॉक को हमेशा रखने की बाध्यता नहीं। समान जाँच सेटिंग वाले पूरे इतिहास के नोड और pruning वाले नोड उन्हीं अमान्य ब्लॉकों को अस्वीकार करते हैं। Pruning खुद कोई जाँच बंद नहीं करता। डिजिटल हस्ताक्षर निजी कुंजी, यानी एक गुप्त संख्यात्मक मान, से भुगतान की अनुमति का प्रमाण बनाता है, लेकिन उस कुंजी को उजागर नहीं करता। उदाहरण के लिए, assumevalid कुछ शर्तों पर पुराने हस्ताक्षरों की जाँच का एक हिस्सा छोड़ सकता है, लेकिन वह अलग सेटिंग है। वह दोनों तरह के नोड पर लागू हो सकती है और छोटी डिस्क का परिणाम नहीं है। [5] [6]
आना का नोड नए लेनदेन और उपलब्ध ब्लॉक प्राप्त करना, जाँचना और आगे भेजना जारी रख सकता है। लेकिन जिस पुराने ब्लॉक की फाइल हट चुकी है, उसे भेज नहीं सकता। इसलिए नए शुरू हुए नोड के लिए पूरा इतिहास रखने वाले नोड भी अहम हैं। Pruned Node नेटवर्क से कटा हुआ नहीं है, न ही केवल दूसरों की जाँच पर निर्भर हल्का वॉलेट है। बस पुराने डेटा देने की उसकी क्षमता सीमित है। [10]
बाद में आना कई साल पहले इस्तेमाल किया गया वॉलेट बहाल करती है। वॉलेट बिटकॉइन पाने और भेजने वाला ऐप या उपकरण है। उसके लेनदेन फिर खोजने के लिए सॉफ्टवेयर संबंधित ब्लॉक पढ़ता है; इसे rescan कहते हैं। अगर वे ब्लॉक स्थानीय रूप से मौजूद नहीं हैं, तो कुंजी या descriptor आयात करने से वे वापस नहीं आते। descriptor बताता है कि पते और खर्च की शर्तें कैसे बनती हैं। बहाली के लिए इतिहास दोबारा प्राप्त करना पड़ सकता है। इसलिए स्क्रीन पर पुराना भुगतान न दिखना अपने आप में बिटकॉइन खो जाने का प्रमाण नहीं है। [8] [9]
नोड से जुड़े ऐप भी महत्त्वपूर्ण हैं। पूरे इतिहास को खोजने वाले एक्सप्लोरर और नए भुगतान देखने वाले वॉलेट की ज़रूरतें अलग होती हैं। उदाहरण के लिए, Bitcoin Core v29.0 pruning के साथ txindex की अनुमति नहीं देता। txindex सहेजे गए ब्लॉक में लेनदेन खोजने का सहायक इंडेक्स है। इसका अर्थ सभी इंडेक्स पर रोक नहीं है। मोड चुनने से पहले अपने प्रोग्राम की ज़रूरतें जाँचें; बाद में सीमा बढ़ाने से हटाई गई फाइलें फिर नहीं बनतीं। [1]
अगर आप Bitcoin की जाँच खुद करना चाहते हैं और हर समय पूरा पुराना इतिहास खोजने की ज़रूरत नहीं है, तो Pruned Node उपयोगी है। लेकिन सामान्य शुरुआती इतिहास डाउनलोड फिर भी करना पड़ता है। AssumeUTXO अलग तरीके से नोड को पहले उपयोग के योग्य बनाता है। सबसे ज़रूरी बात: ब्लॉक और UTXO set उन निजी कुंजियों का बैकअप नहीं हैं जो खर्च की अनुमति देती हैं। इतिहास कितना भी रखें, वॉलेट का बैकअप और आज़माया हुआ बहाली का तरीका ज़रूरी रहता है। [2] [9]
पूरी तस्वीर के लिए इस प्रविष्टि के साथ यह भी पढ़ें Initial Block Download, AssumeUTXO, Block Propagation, vByte, Bitcoin, Bitcoin Core. इस प्रविष्टि का उल्लेख यहाँ भी है Initial Block Download, AssumeUTXO, Utreexo, Compact Block Filters.