236 / 691BOOST

ASICBoost

हेडर उम्मीदवारों के बीच गणना के हिस्से का पुनः उपयोग

ASICBoost माइनिंग गणना में दोहराया गया काम बचाता है। यह लक्ष्य हैश या वैधता के नियमों को नहीं टालता; लाभ चिप डिज़ाइन, जॉब तैयारी और वास्तव में अनुमत हेडर बदलावों पर निर्भर है।

ASICBoost उपयुक्त रूप से तैयार ब्लॉक हेडर उम्मीदवारों के बीच SHA-256 संदेश शेड्यूल की गणना साझा करता है। उम्मीदवारों में संदेश का साझा हिस्सा और अलग मध्यवर्ती अवस्थाएँ होती हैं; यह दो एक जैसे अंतिम Bitcoin हैश खोजने की प्रक्रिया नहीं है।

Timo Hanke ने 2016 के शोधपत्र में ASICBoost का वर्णन किया और Sergio Demian Lerner के सहयोग का उल्लेख किया। डिज़ाइन ASIC के बाहर काम की तैयारी को चिप के अंदर गणना के संगठन से जोड़ता है। यह SHA-256 या अंतिम दोहरे हेडर हैश के माइनिंग लक्ष्य पूरा करने की शर्त नहीं बदलता; कुछ दोहराई गई क्रियाएँ बचाता है। [Timo Hanke — AsicBoost, 2016]

Bitcoin हेडर 80 बाइट का होता है। पहला SHA-256 उसे 64 बाइट और शेष 16 बाइट में बाँटता है, जिनमें padding जोड़ी जाती है। Merkle root दोनों हिस्सों में फैला है: अंतिम 4 बाइट दूसरे हिस्से में समय, bits और nonce के साथ हैं। इसलिए बदले गए डेटा की सटीक स्थिति महत्त्वपूर्ण है। [Timo Hanke — AsicBoost, 2016]

Hanke उपयुक्त जॉब को colliding work items कहते हैं: समान Message और पहले हिस्से से अलग midstate। चुने गए nonce के लिए पहले SHA-256 के दूसरे हिस्से का message schedule इन अवस्थाओं में दोबारा इस्तेमाल हो सकता है। यह पूरे SHA-256 की टक्कर या हेडर के पहले हिस्सों की समानता नहीं है; वे अलग होते हैं। [Timo Hanke — AsicBoost, 2016]

Lerner nVersion बदलने वाले overt और समान अंतिम 4 बाइट लेकिन अलग पहले हिस्से वाले Merkle root खोजने वाले covert में अंतर करते हैं। Covert लेनदेन या उनका क्रम बदल सकता है, लेकिन कमिटमेंट और निर्भरताओं की वैधता बनी रहनी चाहिए। केवल बदलता nVersion किसी खास बचत या संचालक की पहचान सिद्ध नहीं करता। [Sergio Demian Lerner — Overt and covert AsicBoost, 2017]

BIP310 में mining.configure और version-rolling.mask इस्तेमाल होते हैं; उत्तर सर्वर और माइनर की क्षमताओं का साझा भाग होता है। सबमिशन को version_bits & ~last_mask == 0 पूरा करना चाहिए। mining.set_version_mask तुरंत लागू होता है, अगली जॉब से नहीं। Version rolling समर्थन मनमाने बिट बदलने या नया मास्क अनदेखा करने की अनुमति नहीं देता। [BIP310 — Stratum protocol extensions]

समीक्षा की तारीख पर BIP320 की स्थिति Draft है और वह 16 सामान्य nVersion बिट बताता है; BIP323 भी Draft है और 24 बिट से प्रतिस्थापन प्रस्तावित करता है। इन दस्तावेज़ों को किसी कनेक्शन पर वास्तव में उपयोग किए गए मास्क और सॉफ़्टवेयर से अलग समझें। BIP संख्या सभी उपकरणों का समर्थन या मनमाना सहमति परिवर्तन सिद्ध नहीं करती। [BIP320 — General-purpose nVersion bits] [BIP323 — 24 general-purpose nVersion bits]

Hanke का मॉडल x × (n − 1) / n बचत देता है, जहाँ x साझा विस्तार कार्य का प्रतिशत और n उपयुक्त जॉब की संख्या है। x = 25% और n = 4 पर 18.75% मिलता है। यह उस मान्यता के तहत गणना का मॉडल है, हर माइनर में अपने आप उतनी ही वॉट या कीमत की बचत अथवा हैशरेट वृद्धि नहीं। [Timo Hanke — AsicBoost, 2016]

किसी उपकरण के लिए चिप और फ़र्मवेयर समर्थन, तय मास्क, स्वीकृत काम तथा तुलनीय संचालन में बिजली खपत दर्ज करें। पूरे उपकरण के J/TH की जगह केवल फ़ीचर का नाम या सैद्धांतिक प्रतिशत नहीं ले सकता। ASICBoost ओवरक्लॉकिंग का पर्याय नहीं है और ब्लॉक मिलने या लाभ की गारंटी नहीं देता। [Timo Hanke — AsicBoost, 2016] [BIP310 — Stratum protocol extensions]

पूरी तस्वीर के लिए इस प्रविष्टि के साथ यह भी पढ़ें ASIC Miner, बिटकॉइन माइनिंग, Block header, Proof of Work. इस प्रविष्टि का उल्लेख यहाँ भी है Mining Firmware.

DOC · 001Timo Hanke — AsicBoost, 2016प्राथमिक स्रोत ↗DOC · 002Sergio Demian Lerner — Overt and covert AsicBoost, 2017प्राथमिक स्रोत ↗DOC · 003BIP310 — Stratum protocol extensionsविनिर्देश ↗DOC · 004BIP320 — General-purpose nVersion bitsविनिर्देश ↗DOC · 005BIP323 — 24 general-purpose nVersion bitsविनिर्देश ↗
स्रोत पहले · यह निवेश सलाह नहीं है