Jan Čapek चेक इंजीनियर हैं। उन्होंने Pavel Moravec के साथ Braiins की स्थापना की। Bitcoin माइनिंग के लिए केवल शक्तिशाली मशीन खरीदना पर्याप्त नहीं है: सॉफ़्टवेयर को उसे काम देना और उसका संचालन नियंत्रित करना होता है। Čapek इसी हिस्से पर काम करते हैं। उन्होंने माइनिंग मशीनों के अंदर चलने वाले Braiins OS में योगदान दिया और Moravec तथा Matt Corallo के साथ Stratum V2 डिज़ाइन किया। यह प्रोटोकॉल तय करता है कि उपकरण और दूसरी माइनिंग सेवाएँ कैसे संवाद करें। उनकी कहानी बताती है कि मशीन का मालिक वास्तव में क्या नियंत्रित कर सकता है, यह सॉफ़्टवेयर से भी बदलता है।
Čapek और Pavel Moravec ने उपकरणों के भीतर चलने वाले प्रोग्राम, यानी एम्बेडेड सॉफ़्टवेयर, बनाने के लिए Braiins शुरू की। दूसरी ओर Bitcoin.cz Mining Pool पहले से था। इसे Slush के नाम से जाने जाने वाले Marek Palatinus ने 2010 में बनाया था। पूल माइनरों को काम जोड़ने और उसके नियमों के अनुसार आय बाँटने देता है; हर व्यक्ति को अकेले अपना ब्लॉक मिलने का इंतज़ार नहीं करना पड़ता। बाद में दोनों कहानियाँ जुड़ीं। Čapek उस कंपनी के सह-संस्थापक हैं जिसने पूल लिया, जबकि मूल पूल के संस्थापक Palatinus हैं। [1]
2013 में Braiins ने बहुमत हिस्सेदारी खरीदी और पूरे पूल का संचालन सँभाला। इससे Palatinus को Trezor पर ध्यान देने का समय मिला। शेष हिस्सेदारी कंपनी ने सितंबर 2020 के पहले दिन खरीदी। वेबसाइट की घोषणा पर प्रकाशन की तारीख 29 दिसंबर 2021 है, लेकिन उसके पाठ में सौदे की पहले की तारीख दी गई है। इतिहास समझने में यह फ़र्क ज़रूरी है: बाद में छपे लेख का अर्थ यह नहीं कि संचालन भी तभी शुरू हुआ। संचालन सँभालना और स्वामित्व परिवर्तन पूरा होना अलग चरण थे। [1]
Antminer S9 की कल्पना करें। उसके चिप बार-बार गणना करते हैं, लेकिन प्रोग्राम को उनका काम तैयार करना और संचालन नियंत्रित करना होता है। उपकरण के भीतर के इस सॉफ़्टवेयर को फ़र्मवेयर कहते हैं। कंपनी का इतिहास बताता है कि Čapek के नेतृत्व वाली टीम ने AsicBoost का समर्थन जाँचा—यह माइनिंग गणनाओं का अधिक कुशल उपयोग करने का तरीका है—और खुला Braiins OS विकसित किया, जो 2018 में जारी हुआ। खुला कोड डेवलपरों को देखने देता है कि प्रोग्राम करता क्या है। यहाँ Čapek का प्रमाणित योगदान सॉफ़्टवेयर है, स्वयं चिप का डिज़ाइन नहीं। [1] [2]
2020 में प्रकाशित साक्षात्कार में Čapek autotuning समझाते हैं: चुने हुए बिजली-खपत स्तर पर हर चिप के लिए उपयुक्त आवृत्ति और वोल्टेज अपने आप खोजना। आवृत्ति काम की गति से और वोल्टेज विद्युत संचालन से जुड़ा है; लक्ष्य उपलब्ध ऊर्जा का बेहतर उपयोग है। इसलिए माइनर केवल बड़ा प्रदर्शन आँकड़ा नहीं, संचालन का खर्च भी देखता है। Čapek तब Braiins OS के खुले आधार पर भुगतान वाली मालिकाना सुविधा देने पर विचार कर रहे थे। साक्षात्कार उस समय का कारोबारी विचार बताता है, हर मौजूदा संस्करण का लाइसेंस या मूल्य नहीं। [2]
मशीन के भीतर के प्रोग्राम के अलावा काम और परिणाम भेजने की साझा भाषा भी चाहिए। माइनिंग प्रोटोकॉल यही देता है: संदेशों के तय नियम, जिन्हें दोनों पक्ष समझते हैं। Jan Čapek, Pavel Moravec और Matt Corallo ने Stratum V2 मिलकर डिज़ाइन किया। उसकी आधिकारिक वेबसाइट रखरखाव का श्रेय स्वतंत्र ओपन-सोर्स समुदाय को देती है। इस तरह Čapek का योगदान Braiins के उत्पादों से आगे जाता है। यह साझा मानक है जिससे अलग डेवलपर साथ काम करने वाले प्रोग्राम बना सकते हैं, किसी एक कंपनी का स्वामित्व वाला प्रोटोकॉल नहीं। [3]
इंटरनेट पर परिणाम भेजते समय माइनर नहीं चाहता कि कोई रास्ते में उन्हें पढ़े या बदले। Stratum V2 ऐसे एन्क्रिप्शन का उपयोग करता है जो संदेश में छेड़छाड़ की जाँच भी करता है और सर्वर की पहचान सत्यापित करता है। विनिर्देश दूर की ऊपरी सेवाओं से सुरक्षित कनेक्शन स्थापित करना आवश्यक बनाता है। स्थानीय नेटवर्क में, जैसे मशीन और पास के मध्यस्थ प्रोग्राम के बीच, इस स्थापना प्रक्रिया का अपवाद स्वीकार्य है। इससे संदेश का रास्ता सुरक्षित होता है। यह पूल के खातों का ऑडिट या भविष्य के भुगतान की गारंटी नहीं है; सुरक्षित भेजना और भरोसेमंद संचालक अलग सवाल हैं। [4]
अगला सवाल है कि आने वाले ब्लॉक का प्रस्ताव, उसके लेनदेन सहित, कौन बनाता है। इसे ब्लॉक टेम्पलेट कहते हैं। Job Declaration माइनर की ओर चलने वाले प्रोग्राम, यानी क्लाइंट, को अपने चुने काम का तालमेल समर्थक पूल से करने देता है। Template Distribution टेम्पलेट देता है और Mining Protocol माइनिंग का काम तथा परिणाम पहुँचाता है। ये एक व्यवस्था के हिस्से हैं जिन्हें साथ चलना चाहिए। फ़र्मवेयर पर Stratum V2 लिखा होने से यह सिद्ध नहीं होता कि माइनर सच में लेनदेन चुन रहा है। समर्थित और चालू घटक निर्णायक हैं। [5]
विनिर्देश अस्वीकृति को भी संभालता है: DeclareMiningJob.Error का अर्थ है कि माइनिंग कार्य की घोषणा अस्वीकार हुई। तब क्लाइंट को JDS, यानी Job Declarator Server, वाले दूसरे पूल पर जाना चाहिए या अंतिम उपाय के रूप में solo mining करनी चाहिए। अकेले माइनिंग करने पर आय पूल जैसी नहीं बाँटी जाती। बदलने के लिए काम करने वाली वैकल्पिक व्यवस्था भी चाहिए; प्रोटोकॉल का नाम संचालन रुकने से नहीं बचाता। उद्देश्य है कि माइनर पूल छोड़कर भी अपना चुना टेम्पलेट इस्तेमाल कर सके। वास्तविक सफलता पूरी व्यवस्था पर निर्भर करती है। [5]
पूरी तस्वीर के लिए इस प्रविष्टि के साथ यह भी पढ़ें Braiins, Stratum V2, Mining Firmware. इस प्रविष्टि का उल्लेख यहाँ भी है Stratum V2.