Building Bitcoin in Rust كتاب تعليمي قائم على المشاريع، نشرته Braiins. يشرح أفكار Bitcoin ولغة Rust عبر تنفيذ مبسّط، وليس دليلًا لحفظ بيتكوين حقيقي بأمان.
لا يلزمك معرفة كيفية تواصل البرامج لكي ترسل دفعة من محفظة. لكن إذا أردت فهم ما يجري في الداخل، يقترح Lukáš Hozda تجاوز قراءة التعريفات إلى بناء أجزاء من النظام بنفسك. نشرت Braiins الكتاب عام 2024، وتذكر Daniela Brozzoni وLuukas Pörtfors ضمن المساهمين. ويتوجه أساسًا إلى الطلاب والعاملين في تقنية المعلومات الذين يرغبون في فهم Bitcoin أثناء كتابة الشيفرة. [1]
تصف الجهة الناشرة مسارًا يبدأ من Whitepaper، أي الشرح الأصلي لتصميم Bitcoin، ثم أساسيات Rust وصولًا إلى مكتبة برمجية وبرنامج تعدين وعقدة ومحفظة تُدار بأوامر نصية. توفر المكتبة مكونات مشتركة، ويبحث برنامج التعدين عن كتلة مناسبة، وتشارك العقدة في التحقق من البيانات وتمريرها. أما المحفظة فتتعامل مع المفاتيح وتجهّز الدفعات. يستخدم برنامج التعدين CPU معالج الحاسوب؛ وهو هنا وسيلة للتعلّم، لا وعدًا بدخل من التعدين. [3]
يصف المستودع المصاحب، وهو مجموعة شيفرة مصدرية متاحة للعامة، المشروع بأنه تنفيذ تعليمي مبسّط. يتيح النموذج تتبّع العلاقات التي قد تضيع بين تفاصيل برنامج كبير. لكن عنوان الكتاب لا يعني أن النتيجة بديل عن Bitcoin Core. وقدرة النموذج على تبادل معاملاته الخاصة لا تثبت توافقه مع شبكة Bitcoin الحقيقية، ولا ملاءمته لحفظ الأموال. [4]
يحتاج البرنامج إلى ذاكرة لحفظ البيانات. وقد يسبب استخدامها بعد تحرير تلك الذاكرة أخطاء. تساعد Rust على تجنب ذلك بقواعد ownership، التي تحدد أي جزء من البرنامج يملك قيمةً ومتى يمكن استخدامها. يفحص المترجم، الذي يحوّل الشيفرة المصدرية إلى برنامج قابل للتنفيذ، هذه القواعد قبل التشغيل. لكنه لا يعرف تلقائيًا إن كانت قواعد الدفع قد كُتبت على نحو صحيح. لذلك لا يثبت نجاح الترجمة صحة النظام كله. [5]
تخيّل تمرينًا من إعدادك: تجهّز دفعة وتوقّعها، ثم تغيّر المبلغ الذي شمله التوقيع. يفترض أن يربط التوقيع الرقمي الموافقة ببيانات محددة؛ لذا ينبغي أن يفشل التحقق من التوقيع الأصلي باستخدام البيانات المعدّلة. لا يكفي إذن ظهور الدفعة على الشاشة، بل يجب اختبار رفض المدخلات غير الصحيحة أيضًا. هذا مثال نطرحه لتوضيح التفكير في الاختبارات، وليس وصفًا لسلوك تحققنا منه في شيفرة الكتاب. [4] [5] [6]
يفصل المستودع بين المكتبة وبرنامج التعدين والعقدة والمحفظة. ويعرض ملف التعريف README طريقة بناء البرامج وتشغيلها، مما يساعد على تتبّع أدوارها المختلفة. نُشرت الشيفرة تحت ترخيص ISC، الذي يتيح الاستخدام والتعديل مع الالتزام بشروطه. ويستثني الملف نفسه نص الكتاب صراحةً من هذا الترخيص. لذلك لا تعني إتاحة الشيفرة للعامة أن نسخ الكتاب بأكمله مسموح تلقائيًا. [4]
إذا لم تكتب برنامجًا من قبل، فابدأ بفهم المعاملة والمفتاح والعقدة والتعدين، وتعلّم أساسيات البرمجة بالتوازي. ثم تقدم بخطوات صغيرة: ماذا يجب أن تفعل هذه الخطوة، وكيف تنفذها الشيفرة، وكيف تكتشف الخطأ؟ هذه طريقتنا المقترحة للدراسة. تكمن قيمة الكتاب في وصل الفكرة بتجربة ملموسة، لا في الحصول السريع على محفظة جاهزة. لا تستخدم مدخرات حقيقية أو مفاتيحها في هذه التمارين. [1] [3]
يذكر فهرس Braiins عددًا قدره 432 صفحة، بينما يذكر المتجر 429. لم نقارن نسخة ورقية، ولذلك لا ندّعي حسم الاختلاف. يستند العرض إلى معلومات الناشر وتقديم المشروع وملف README ووثائق Rust حول ownership. وهو ليس مراجعة للكتاب كاملًا ولا تدقيقًا أمنيًا لشيفرته؛ كذلك لم نتحقق من نجاح بناء الأمثلة أو تشغيلها. توضح المصادر توجّه المشروع وحدوده، لكنها لا تقدم ضمانًا لتشغيله. [1] [2] [3] [4] [5] [6]
للحصول على صورة أوضح، اقرأ هذا المدخل مع Bitcoin Core, التعدين, Bitcoin, Braiins.
01هل أحتاج إلى معرفة سابقة بالبرمجة؟+
يستهدف الكتاب أساسًا الطلاب والعاملين في تقنية المعلومات، ويقدم Rust أيضًا. ننصح المبتدئ تمامًا بتعلّم أساسيات البرمجة ومعاني المعاملة والمفتاح والعقدة أولًا، كي لا يبني دراسته على مفاهيم لا يعرفها.
02هل أستطيع استخدام المحفظة الناتجة لبيتكويني؟+
لا يقدم هذا العرض أساسًا لذلك. يصف المستودع نموذجًا تعليميًا، وليس أداة متحققًا منها لأموال حقيقية. لا تضع فيه مفاتيح مدخراتك؛ لم نختبر توافقه مع الشبكة أو أمانه.