396 / 736LUKE

Luke Dashjr

luke-jr नाम से जाने जाने वाले डेवलपर

नया ब्लॉक खोजने से पहले माइनर को पता होना चाहिए कि उसे कैसे तैयार करना है और उसमें क्या बदला जा सकता है। Luke Dashjr ने प्रोग्रामों के बीच इस तालमेल को स्पष्ट करने में योगदान दिया। उनका काम Bitcoin Knots और Bitcoin में सुधार के प्रस्ताव प्रकाशित करने की प्रक्रिया से भी जुड़ा है।

luke-jr नाम से भी जाने जाने वाले Luke Dashjr, Bitcoin डेवलपर हैं। उनका काम माइनिंग इंटरफ़ेस, Bitcoin Knots और BIP में मिलता है। BIP सार्वजनिक रूप से लिखे गए प्रस्ताव और मानक हैं। उनके योगदान से समझ आता है कि कोई व्यक्ति पूरे नेटवर्क की ओर से निर्णय लिए बिना भी विकास को बहुत प्रभावित कर सकता है।

GitHub पर Luke Dashjr का नाम luke-jr है। GitHub में स्रोत कोड, बदलाव के प्रस्ताव और उनका इतिहास रखा जाता है। उनके प्रोफ़ाइल से Bitcoin Knots और माइनिंग प्रोग्राम BFGMiner जैसे प्रोजेक्ट जुड़े हैं। लेकिन प्रोफ़ाइल सभी योगदानकर्ताओं की पूरी जीवनी या किसी एक व्यक्ति के अकेले किए कामों की सूची नहीं है। खास बदलाव और तकनीकी विनिर्देशों के लेखक अधिक सटीक प्रमाण देते हैं। आगे के उदाहरण व्यावहारिक सवाल समझाते हैं: माइनर को काम कैसे दिया जाए, गलती जल्दी कैसे पकड़ी जाए और कैसे पता चले कि कोई प्रस्ताव सच में इस्तेमाल हो रहा है। [1]

माइनिंग में तैयार ब्लॉक पर गणना बार-बार की जाती है, जब तक परिणाम तय कठिनाई की शर्त पूरी न कर दे। लेकिन पहले ब्लॉक की सामग्री तैयार करनी होती है। Dashjr का BIP 22, getblocktemplate नाम का इंटरफ़ेस बताता है। इससे प्रोग्राम को लेनदेन सहित प्रस्तावित ब्लॉक की संरचना मिलती है। उसे केवल हैश गणना के लिए छोटा हेडर ही नहीं मिलता; वह ब्लॉक बना सकता है और अनुमत सीमा में बदलाव कर सकता है। यह किसी एक अलग काम के बजाय पूरे काम की सामग्री मिलने जैसा है। अंतिम ब्लॉक को फिर भी वैधता के नियम पूरे करने होंगे। [2]

मान लीजिए एक लेनदेन उसी प्रस्तावित ब्लॉक के दूसरे लेनदेन से बने आउटपुट को खर्च करता है। वह पिछला लेनदेन भी ब्लॉक में मौजूद होना चाहिए। BIP 22 का depends फ़ील्ड ऐसी निर्भरताएँ दर्ज करता है। फ़ील्ड गायब हो तो निर्भरताएँ अज्ञात हैं; प्रोग्राम यह नहीं मान सकता कि कोई निर्भरता नहीं है। यही बात गायब शुल्क या sigops पर लागू होती है। sigops हस्ताक्षर जाँचने वाली उन क्रियाओं की गिनती है जिन्हें ब्लॉक की सीमाओं में गिना जाता है। जानकारी न होना, मान शून्य होने के समान नहीं है। यह छोटी-सी बात गलत समझी गई जानकारी के कारण अवैध ब्लॉक बनने से बचाती है। [2]

Dashjr का BIP 23 इस इंटरफ़ेस को माइनिंग पूलों के लिए बढ़ाता है। पूल कई माइनरों का काम एक साथ जोड़ते हैं। इसका वैकल्पिक proposal मोड तैयार ब्लॉक को सर्वर पर जाँच के लिए भेजने देता है, लेकिन इसमें Proof of Work की जाँच शामिल नहीं होती। यहाँ Proof of Work वह गणना परिणाम है जो निर्धारित कठिनाई पूरी करता है। इस तरह उस परिणाम को खोजने में बहुत संसाधन लगाने से पहले सामग्री की गलती पकड़ी जा सकती है। सकारात्मक जवाब केवल यह बताता है कि प्रस्ताव उस सर्वर के नियमों पर खरा उतरा। ज़रूरी Proof of Work और दूसरे नोडों का आकलन अभी बाकी हैं। शुरुआती जाँच पास होने का अर्थ नया ब्लॉक माइन हो जाना नहीं है। [3]

एक और क्षेत्र नियमों में बदलाव लागू करना है। Shaolin Fry और Luke Dashjr का BIP 8, ब्लॉक की ऊँचाई यानी श्रृंखला में उसकी स्थिति के आधार पर चरण तय करता है। lockinontimeout सेटिंग तय करती है कि निर्धारित परिस्थितियों में आखिरी अवधि के दौरान माइनरों का संकेत देना अनिवार्य होगा या नहीं, ताकि भविष्य का सक्रियण पक्का हो। LOCKED_IN और ACTIVE अलग हैं: पहला इस व्यवस्था में आगे का बदलाव सुनिश्चित करता है, जबकि नया नियम दूसरे में लागू होता है। यह लागू होने का समय तय करने और उस समय के आ जाने के बीच का अंतर है। केवल प्रस्ताव लिखने से पूरा नेटवर्क नहीं बदल जाता। [4]

Bitcoin Knots अपना नोड चलाने का सॉफ़्टवेयर है। नोड ऐसा कंप्यूटर है जो ब्लॉक और लेनदेन डाउनलोड करके उनकी पूरी जाँच करता है। दस्तावेज़ बताते हैं कि इसमें Bitcoin Core के विकास को शामिल किया जाता है और अतिरिक्त बदलाव भी लिए जा सकते हैं। इसमें वॉलेट और ग्राफ़िकल इंटरफ़ेस भी हो सकते हैं। इस समीक्षा के समय आधिकारिक वेबसाइट Dashjr को मुख्य रखरखावकर्ता बताती है। किसी सॉफ़्टवेयर की ज़िम्मेदारी होने से पूरे नेटवर्क पर नए नियम थोपने की शक्ति नहीं मिलती। इसलिए प्रोग्राम चुनते समय प्रत्येक रिलीज़ की सुविधाएँ और सेटिंग पढ़ें; यह न मानें कि दोनों हमेशा एक जैसे चलेंगे। [5] [6]

Bitcoin Knots डाउनलोड करते समय जाँचना होता है कि फ़ाइल इच्छित प्रकाशक से ही आई है। वेबसाइट OpenPGP हस्ताक्षर जाँचने और स्वतंत्र स्रोतों से सार्वजनिक कुंजियाँ मिलाने की सलाह देती है। सार्वजनिक कुंजी डिजिटल हस्ताक्षर जाँचती है, लेकिन पहले जानना ज़रूरी है कि कुंजी किसकी है। सही तरह सत्यापित कुंजी के साथ वैध हस्ताक्षर फ़ाइल का स्रोत और हस्ताक्षरित डेटा में बदलाव न होने की पुष्टि करता है। वह सॉफ़्टवेयर में कोई त्रुटि न होने की गारंटी नहीं है। स्रोत जाँचना, कोड की समीक्षा और सेटिंग चुनना अलग-अलग काम हैं। [6]

Dashjr ने प्रस्ताव तैयार करने और प्रकाशित करने की प्रक्रिया पर BIP 2 भी लिखा था। अब उसकी जगह Murch का BIP 3 है। वह स्पष्ट करता है कि प्रकाशित BIP अपने आप में Bitcoin समुदाय की सहमति या उसे लागू करने की सामान्य सिफ़ारिश नहीं है। कोई प्रस्ताव कागज़ पर रह सकता है, किसी विशेष प्रोग्राम में अपनाया जा सकता है या आगे चलकर मिलकर लागू किए जाने वाले नियम बदल सकता है। नंबर देने से कुछ सक्रिय नहीं होता। नए BIP की खबर पढ़ते समय यह भी पूछें कि उसे किसने लागू किया है और क्या वह वास्तव में उपयोग में है। [7] [8]

पूरी तस्वीर के लिए इस प्रविष्टि के साथ यह भी पढ़ें Matt Corallo, Peter Todd, Satoshi Nakamoto. इस प्रविष्टि का उल्लेख यहाँ भी है Matt Corallo, Peter Todd.

DOC · 001GitHub — Luke Dashjrदस्तावेज़ DOC · 002BIP 22 — getblocktemplate fundamentalsदस्तावेज़ DOC · 003BIP 23 — pooled miningदस्तावेज़ DOC · 004BIP 8 — lock-in by heightदस्तावेज़ DOC · 005Bitcoin Knots — project documentationदस्तावेज़ DOC · 006Bitcoin Knots — official websiteदस्तावेज़ DOC · 007BIP 2 — revised processदस्तावेज़ DOC · 008BIP 3 — updated processदस्तावेज़
समीक्षा की गई: स्रोत पहले · यह निवेश सलाह नहीं है