يان تشابك مهندس تشيكي أسّس Braiins مع بافيل مورافيتس. لا يكفي لتعدين Bitcoin شراء جهاز قوي؛ فالبرمجيات يجب أن تزوّده بالعمل وتتحكم في تشغيله. هذا هو الجانب الذي يعمل عليه تشابك. شارك في تطوير Braiins OS، البرنامج الذي يعمل داخل أجهزة التعدين، وصمّم Stratum V2 مع مورافيتس ومات كورالو. يحدد هذا البروتوكول كيف تتواصل الأجهزة وخدمات التعدين الأخرى. وتوضح مسيرته كيف يمكن للبرمجيات أن تغيّر ما يستطيع مالك الجهاز التحكم فيه فعلياً.
أسّس تشابك وبافيل مورافيتس شركة Braiins لتطوير البرمجيات المضمّنة، أي البرامج التي تعمل داخل الأجهزة. وفي مسار آخر، كان Marek Palatinus، المعروف باسم Slush، قد أنشأ Bitcoin.cz Mining Pool في 2010. يتيح المجمّع للمعدّنين جمع عملهم وتقاسم الإيرادات وفق قواعده، بدلاً من انتظار كل منهم العثور على كتلة بمفرده. التقى المساران لاحقاً: تشابك شريك في تأسيس الشركة التي استحوذت على المجمّع، بينما يظل بالاتينوس مؤسس المجمّع الأصلي. [1]
في 2013، اشترت Braiins حصة الأغلبية وتولّت التشغيل بالكامل، مما أتاح لبالاتينوس التركيز على Trezor. واشترت الشركة الحصة المتبقية في الأول من سبتمبر 2020. يحمل الإعلان على الموقع تاريخ نشر 29 ديسمبر 2021، لكن نصه يحدد تاريخ الصفقة الأسبق. هذا فرق مهم لفهم التسلسل الزمني: نشر المقال لاحقاً لا يعني أن الشركة بدأت التشغيل حينها فقط. كان تولّي التشغيل وإتمام تغيير الملكية خطوتين منفصلتين. [1]
تخيّل جهاز Antminer S9. تُجري شرائحه الحسابات مراراً، لكن برنامجاً يجب أن يُعدّ العمل ويتحكم في تشغيلها. تُسمّى هذه البرمجيات الداخلية firmware. يروي تاريخ الشركة كيف تحقّق فريق بقيادة تشابك من دعم AsicBoost، وهي طريقة للاستفادة بكفاءة أكبر من حسابات التعدين، وطوّر Braiins OS المفتوح المصدر الذي صدر في 2018. يتيح الكود المفتوح للمطوّرين فحص ما يفعله البرنامج. المساهمة الموثّقة لتشابك هنا تتعلق بالبرمجيات، لا بتصميم الشريحة نفسها. [1] [2]
في مقابلة نُشرت في 2020، يشرح تشابك autotuning: البحث تلقائياً عن تردد وجهد مناسبين لكل شريحة عند مستوى استهلاك كهربائي مختار. يرتبط التردد بوتيرة العمل والجهد بالتشغيل الكهربائي؛ والهدف استخدام الطاقة المتاحة بفاعلية أكبر. لذلك يهتم المعدّن بتكلفة التشغيل إلى جانب رقم الأداء. كان تشابك يدرس حينها إضافة مكوّن مدفوع مغلق المصدر فوق الأساس المفتوح لـ Braiins OS. تشرح المقابلة فكرة العمل في ذلك الوقت، ولا تثبت ترخيص كل إصدار حالي أو سعره. [2]
إلى جانب البرنامج داخل الجهاز، نحتاج لغة مشتركة لإرسال العمل والنتائج. يوفر بروتوكول التعدين قواعد متفقاً عليها للرسائل يفهمها الطرفان. عمل يان تشابك وبافيل مورافيتس وMatt Corallo معاً على تصميم Stratum V2. وينسب موقعه الرسمي الصيانة إلى مجتمع مستقل مفتوح المصدر. لذلك تتجاوز مساهمة تشابك منتجات Braiins نفسها. إنه معيار مشترك يستطيع مطوّرون مختلفون بناء برامج متوافقة وفقه، وليس بروتوكولاً تملكه شركة واحدة. [3]
عندما يرسل المعدّن النتائج عبر الإنترنت، لا يريد أن يقرأها أحد أو يغيّرها في الطريق. يستخدم Stratum V2 تشفيراً يتحقق أيضاً من سلامة الرسائل، مع التحقق من هوية الخادم. تشترط المواصفة إنشاء الاتصال بأمان عند الوصول عن بُعد إلى الخدمات الأعلى، لكنها تسمح باستثناء لهذا الإجراء في الشبكة المحلية، مثل الاتصال بين الجهاز ووسيط محلي. هذه حماية لمسار الرسالة. وهي لا تدقق حسابات المجمّع ولا تضمن دفع المكافأة لاحقاً؛ فأمان النقل والثقة بالمشغّل مسألتان مختلفتان. [4]
هناك سؤال آخر: من يجهّز مقترح الكتلة التالية بما فيها من معاملات؟ يُسمّى هذا المقترح قالب الكتلة. يتيح Job Declaration للعميل، أي البرنامج لدى المعدّن، تنسيق عمله الخاص مع مجمّع يدعم ذلك. يوفّر Template Distribution القوالب، بينما ينقل Mining Protocol عمل التعدين ونتائجه. هذه أسماء أجزاء في إعداد يجب أن تعمل معاً. لذلك لا يكفي ظهور اسم Stratum V2 على firmware لإثبات أن المعدّن يختار المعاملات فعلاً. الحاسم هو المكوّنات المدعومة والمفعّلة. [5]
تتناول المواصفة الرفض أيضاً: يشير DeclareMiningJob.Error إلى رفض إعلان مهمة تعدين. على العميل حينها الانتقال إلى مجمّع آخر يملك JDS، أي Job Declarator Server، أو إلى solo mining كحل أخير. في التعدين الفردي لا تعود الإيرادات مشتركة بالطريقة نفسها التي يتبعها المجمّع. ويحتاج الانتقال أيضاً إلى إعداد بديل يعمل؛ اسم البروتوكول لا يضمن استمرار التشغيل دون انقطاع. يهدف التصميم إلى تمكين المعدّن من المغادرة مع الاستمرار في استخدام القالب الذي اختاره. أما تحقق ذلك عملياً فيعتمد على الإعداد كله. [5]
للحصول على صورة أوضح، اقرأ هذا المدخل مع Braiins, Stratum V2, Mining Firmware. تشير إلى هذا المدخل أيضًا Stratum V2.