180 / 691BIP157/158

Compact Block Filters

वॉलेट संचालन में कॉम्पैक्ट ब्लॉक फ़िल्टर

Compact Block Filters स्थानीय स्क्रिप्ट मिलान से हल्के वॉलेट को डाउनलोड करने वाले ब्लॉक चुनने में मदद करते हैं। मिलान जाँच का संकेत है, भुगतान की पुष्टि या गुमनामी की गारंटी नहीं।

Compact Block Filters हर ब्लॉक के छोटे, निर्धारक तरीके से बने संभाव्य सूचकांक हैं। BIP 158 सामग्री और एन्कोडिंग, BIP 157 वितरण और निरंतरता जाँच तय करते हैं; क्लाइंट अपनी स्क्रिप्ट स्थानीय रूप से मिलाता है।

वॉलेट ब्लॉक और फ़िल्टर हेडर सिंक करता है, फ़िल्टर डाउनलोड कर स्क्रिप्ट स्थानीय जाँचता है। मिलान पर पूरा ब्लॉक लेकर वास्तविक लेनदेन खोजता है। केवल मिलान से बैलेंस नहीं बढ़ना चाहिए: फ़िल्टर राशि, स्वामित्व प्रमाण या पूरा लेनदेन इतिहास नहीं देता। [BIP 157 — Client Side Block Filtering]

BIP 158 basic नए आउटपुट के scriptPubKey शामिल करता है, OP_RETURN से शुरू होने वाले छोड़कर, तथा coinbase के अलावा इनपुट द्वारा खर्च किए पिछले आउटपुट की स्क्रिप्ट। खाली तत्व हटते हैं। पते के पाठ को सही स्क्रिप्ट में बदलना होगा; यह txid, witness डेटा या मनमानी टिप्पणी का सार्वभौमिक सूचकांक नहीं। [BIP 158 — Compact Block Filters for Light Clients] [Bitcoin Core — BasicFilterElements]

Golomb-Rice क्रमबद्ध हैश मानों के अंतर संचित करता है; basic में P=19 और M=784931 हैं। समूह से बाहर की एक क्वेरी लगभग 1/M संभावना से मिल सकती है। अधिक निगरानी स्क्रिप्ट टकराव के अधिक अवसर देती हैं, पूरे वॉलेट की स्थिर त्रुटि दर नहीं। सही फ़िल्टर शामिल तत्व नहीं छोड़ता। [BIP 158 — Compact Block Filters for Light Clients]

फ़िल्टर हेडर वर्तमान फ़िल्टर हैश को पिछले हेडर से जोड़ता है। निरंतरता जाँच स्वीकृत श्रृंखला से अंतर पहचानती है, लेकिन यह कमिटमेंट Bitcoin ब्लॉक हेडर में नहीं है। हमलावर अंदर से सुसंगत झूठे फ़िल्टर दे सकता है; सही गणना वाला हैश अकेले सच्ची सामग्री सुनिश्चित नहीं करता। [BIP 157 — Client Side Block Filtering]

BIP 157 कम-से-कम एक ईमानदार भागीदार वाले पीयरों की तुलना से गलत फ़िल्टर पहचानता है। basic पुनर्निर्माण में खर्च हुए पिछले आउटपुट की स्क्रिप्ट भी चाहिए हो सकती हैं। पुनर्गठन में नई शाखा के फ़िल्टर अपनाकर वॉलेट स्थिति फिर गणना करनी होगी; पुरानी समान ऊँचाई वही ब्लॉक नहीं बताती। [BIP 157 — Client Side Block Filtering] [Bitcoin Core — BasicFilterElements]

BIP 37 के उलट क्लाइंट अपना निजी पता फ़िल्टर सर्वर को नहीं भेजता। फिर भी पीयर IP, समय और माँगे ब्लॉक देख सकता है। अलग पीयरों से डाउनलोड सूचना का केंद्रीकरण सीमित करता है, हर सहसंबंध नहीं; आकस्मिक मिलान अकेले संचार को गुमनाम नहीं बनाते। [BIP 157 — Client Side Block Filtering]

संबंधित सूचकांक सक्रिय होने पर Bitcoin Core RPC getblockfilter ब्लॉक हैश का फ़िल्टर और हेडर देता है। इससे सार्वजनिक P2P सेवा या पीयर द्वारा हर ऐतिहासिक ब्लॉक देने की क्षमता सिद्ध नहीं होती। क्लाइंट को काम करने वाला ब्लॉक स्रोत चाहिए; पूरे हो चुके ब्लॉक के फ़िल्टर Mempool के अपुष्ट लेनदेन नहीं बताते। [BIP 157 — Client Side Block Filtering] [Bitcoin Core 30.0 — getblockfilter]

BIP 152 के Compact Blocks छोटे लेनदेन पहचानकर्ताओं और स्थानीय Mempool से नए ब्लॉक का प्रसारण तेज करते हैं। Compact Block Filters क्लाइंट के लिए प्रासंगिक ब्लॉक चुनते हैं। स्थानीय मिलान या लेनदेन के शामिल होने की जाँच सभी ब्लॉक के स्वतंत्र पूर्ण सहमति सत्यापन का विकल्प नहीं है। [BIP 157 — Client Side Block Filtering] [BIP 152 — Compact Block Relay]

पूरी तस्वीर के लिए इस प्रविष्टि के साथ यह भी पढ़ें Compact Block Filters, Neutrino, Full Node, Bitcoin में गोपनीयता, Compact block relay. इस प्रविष्टि का उल्लेख यहाँ भी है Neutrino.

DOC · 001BIP 157 — Client Side Block Filteringविनिर्देशDOC · 002BIP 158 — Compact Block Filters for Light Clientsविनिर्देशDOC · 003Bitcoin Core — BasicFilterElementsप्राथमिक स्रोतDOC · 004Bitcoin Core 30.0 — getblockfilterदस्तावेज़DOC · 005BIP 152 — Compact Block Relayविनिर्देश
स्रोत पहले · यह निवेश सलाह नहीं है