126 / 736WU

Block Weight

ब्लॉक का भार

सभी इंतज़ार कर रहे भुगतान एक ब्लॉक में क्यों नहीं समाते, और भरे हुए ब्लॉकों का बाइट आकार अलग क्यों हो सकता है? ब्लॉक का भार तय करता है कि नेटवर्क एक ब्लॉक में कितना डेटा स्वीकार करेगा।

Block Weight वह तरीका है जिससे Bitcoin किसी ब्लॉक में इस्तेमाल हुई क्षमता मापता है। ब्लॉक साझा इतिहास में जोड़ा जाने वाला लेनदेन का समूह है। डेटा के अलग हिस्से अलग भार से गिने जाते हैं। भार की ऊपरी सीमा तय है, लेकिन उससे भुगतान की संख्या या भेजे गए बिटकॉइन का मूल्य तय नहीं होता।

Transaction Fees: आकार और फीसलेनदेन के वर्चुअल आकार, अपनी दर पर फीस और चुनी मुद्रा में उसके अनुमानित मूल्य की गणना करें।

अन्ना Bitcoin भेजती है, लेकिन अगले ब्लॉक में उसका भुगतान शामिल नहीं होता। केवल इससे यह नहीं कहा जा सकता कि पैसा खो गया। बिना पुष्टि वाला लेनदेन Mempool में इंतज़ार कर सकता है, जो किसी एक नोड की स्थानीय कतार है। नोड ऐसा प्रोग्राम है जो लेनदेन और ब्लॉक की जाँच करता है और नेटवर्क के दूसरे सहभागियों से संपर्क रखता है। माइनर सीमित क्षमता वाले ब्लॉक के लिए लेनदेन चुनता है और छोटा ब्लॉक भी बना सकता है। शुल्क प्रोत्साहन है, किसी खास भुगतान को शामिल करने का आदेश नहीं। Block Weight इस चुनाव की एक सीमा समझाता है, देरी के सभी कारण नहीं। [1] [7]

ऊपरी सीमा 4 000 000 WU है, और ठीक उतना भार भी स्वीकार्य है। WU का अर्थ भार की इकाई है। Full Node, जो Bitcoin के नियम खुद जाँचता है, इससे अधिक भार वाला ब्लॉक अस्वीकार करेगा। ऊँची फीस या सही Proof of Work भी उसे नहीं बचा सकता; यह ब्लॉक माइन करने के लिए आवश्यक गणनात्मक काम का प्रमाण है। प्रमाण खोजना और नियमों के मुताबिक ब्लॉक बनाना, दोनों ज़रूरी हैं। इसलिए क्षमता केवल माइनर की इच्छा पर निर्भर नहीं है। [1] [3] [4]

बाइट डेटा की मात्रा मापने की एक सामान्य इकाई है। SegWit ने खर्च करने के अधिकार को साबित करने वाले कुछ डेटा, जैसे हस्ताक्षर, अलग किए। इन्हें witness कहते हैं। मूल डेटा का एक बाइट 4 WU जोड़ता है, जबकि पूरे witness वाले रूप में जुड़ा अतिरिक्त बाइट 1 WU जोड़ता है। उस रूप के सहायक फ़ील्ड marker और flag भी दूसरी श्रेणी में आते हैं। इससे मूल लेनदेन संरचना बनी रहती है और जाँच के डेटा के लिए जगह मिलती है, बिना हर बाइट को समान भार देने के। [1] [2]

हस्ताक्षर साबित करता है कि भेजने वाले को खास सिक्के खर्च करने का अधिकार है। खर्च की शर्तें स्क्रिप्ट नाम का छोटा प्रोग्राम बताता है। witness का कम भार जाँच करने वाले नोड को संबंधित हस्ताक्षर या स्क्रिप्ट की शर्तें अनदेखी करने की अनुमति नहीं देता। पूरा डेटा अपने पूर्ण रूप में बना रहता है। यह क्षमता गिनने का नियम है, यह दावा नहीं कि प्रोसेसर का काम, नेटवर्क पर डेटा या स्टोरेज की ज़रूरत उसी अनुपात में घट जाती है। [1] [4]

सीरियलाइज़ेशन का मतलब ब्लॉक को बाइट के उस सटीक क्रम में लिखना है जिसे कंप्यूटर आपस में भेजते हैं। witness के बिना आकार को B और पूरे आकार को T कहें। BIP 141 का सूत्र W = 3 × B + T है। मूल डेटा T में भी शामिल है, इसलिए कुल मिलाकर चार बार गिना जाता है। witness रूप से जुड़ा डेटा एक बार गिना जाता है। सूत्र पूरे ब्लॉक पर लागू होता है, केवल सामान्य भुगतानों पर नहीं। [1] [8]

मान लें B = 500000 और T = 2500000 बाइट हैं। तब W = 4000000 WU मिलेगा। दूसरी बनावट में B = 750000 और T = 1750000 बाइट हो सकते हैं, फिर भी W = 4000000 WU मिलेगा। ये गणना के उदाहरण हैं, वास्तविक ब्लॉकों के माप नहीं। दोनों का भार बराबर है, लेकिन दूसरे में कम बाइट भेजने पड़ते हैं। इसलिए भरा ब्लॉक हमेशा 4 MB का होता है, यह कहना गलत है। उसमें लेनदेन की संख्या भी तय नहीं है। [1]

ब्लॉक केवल उपयोगकर्ताओं के भुगतान जोड़ देने से नहीं बनता। उसका 80 बाइट का हेडर होता है, जिसमें पिछले ब्लॉक का संदर्भ और लेनदेन का सार जैसी बातें होती हैं। फिर लेनदेन की संख्या आती है, जिसे CompactSize से लिखा जाता है; यह पूर्णांक लिखने का बदलती लंबाई वाला तरीका है। पहला लेनदेन Coinbase Transaction है, माइनर के इनाम के लिए खास लेनदेन; यहाँ नाम किसी एक्सचेंज का नहीं है। ये सभी हिस्से गणना में शामिल हैं। बाकी लेनदेन के भार जोड़ना अभी पूरे ब्लॉक का भार नहीं है। [5] [7] [8]

वॉलेट बिटकॉइन पाने और भेजने वाला ऐप या उपकरण है। यह आमतौर पर लेनदेन का वर्चुअल आकार vByte में इस्तेमाल करता है। यह पूरे लेनदेन का भार 4 से भाग देकर, परिणाम से कम न होने वाले निकटतम पूर्णांक तक पूर्णांकित करने पर मिलता है। इससे इस्तेमाल हुई क्षमता के हिसाब से शुल्क की तुलना होती है। इस तरह पूर्णांकित किए गए आकार जोड़ने से ब्लॉक का सटीक भार नहीं मिलता: इकाई अलग है, हर लेनदेन का आकार अलग से पूर्णांकित हुआ है और ब्लॉक की अपनी संरचना छूटी हुई है। बड़ी रकम भेजने का मतलब ज़रूरी नहीं कि बहुत डेटा भेजना पड़े। [1] [8]

भार नोड के सारे काम का वर्णन नहीं करता। संबंधित नियमों में हस्ताक्षर सत्यापन ऑपरेशनों की भारित लागत की 80 000 इकाइयों की सीमा भी है। यह ब्लॉक के सभी हस्ताक्षरों की सीधी गिनती नहीं है। Taproot के साथ आई स्क्रिप्ट भाषा Tapscript हर इनपुट के लिए अलग बजट इस्तेमाल करती है। इनपुट लेनदेन का वह हिस्सा है जो पहले मिले सिक्के खर्च करता है; उसके हस्ताक्षर ऑपरेशन उस पुरानी ब्लॉक-स्तरीय सीमा में नहीं गिने जाते। BIP 342 इस अलग प्रतिबंध को बताता है। इसलिए भार की सीमा मान लेने से मनमानी जटिल जाँच की अनुमति नहीं मिल जाती। [1] [3] [9]

ब्लॉक एक्सप्लोरर किसी खास नेटवर्क के लेनदेन और ब्लॉक खोजने वाला ऐप है। Bitcoin Core v29.0 में getblock अन्य फ़ील्ड के साथ size, strippedsize और weight देता है: पूरा बाइट आकार, witness के बिना आकार और भार। साथ में chainwork भी दिख सकता है। वह चेन में जमा गणनात्मक काम बताता है, डेटा का भार नहीं। आम उपयोगकर्ता के लिए क्षमता और कीमत अलग समझना ज़रूरी है: Block Weight ब्लॉक की जगह सीमित करता है, जबकि असली भुगतान शुल्क लेनदेन के आकार और चुनी दर पर निर्भर है। इनमें से कोई संख्या अकेले पुष्टि का समय तय नहीं करती। [6]

पूरी तस्वीर के लिए इस प्रविष्टि के साथ यह भी पढ़ें vByte, Witness Data, SegWit, ब्लॉक आकार युद्ध, Bitcoin, Full Node. इस प्रविष्टि का उल्लेख यहाँ भी है Signet, vByte, Witness Data, Ordinals Inscriptions.

DOC · 001BIP 141 — Segregated Witnessविनिर्देश DOC · 002BIP 144 — SegWit peer servicesविनिर्देश DOC · 003Bitcoin Core v29.0 — consensus limitsदस्तावेज़ DOC · 004Bitcoin Core v29.0 — validationदस्तावेज़ DOC · 005Bitcoin Developer Reference — Block chainदस्तावेज़ DOC · 006Bitcoin Core — getblock RPCदस्तावेज़ DOC · 007Bitcoin Core v29.0 — Block assemblyदस्तावेज़ DOC · 008Bitcoin Core v29.0 — Block and transaction weightदस्तावेज़ DOC · 009BIP 342 — Validation of Taproot Scriptsविनिर्देश
समीक्षा की गई: स्रोत पहले · यह निवेश सलाह नहीं है