شرح مبدأ التنقيب عن البتكوين




التنقيب عن البتكوين هو المصدر الأساسي للربح و تجميع البتكوين ، المشكلة أن أغلب المستخدمين و العاملين في البتكوين يستخدمون التنقيب دون أن يكون لديهم أدنى فكرة عن مبدأ التنقيب و كيف يعمل ، فكل ما يقومون به هو اتباع بعض الخطوات التي تشرح كيفية التنقيب دون أن توضح مفهوم التنقيب ، في هذا المقال سنستعرض بالتفصيل كيفية آلية عمل التنقيب ، وسنزيح الستار عن الغموض الذي يرافق كلمة تنقيب ، سأحول تبسيط الموضوع قدر الإمكان ، علماً أنه ليس بالموضوع المعقد و لكن قررت كتابة هذا المقال بسبب الأسئلة التي وصلتني بعد طرح مقالة عن مبدأ عمل البتكوين ، جميع هذه الأسئلة حول آلية التنقيب ، لذلك سأتعرض في هذا المقال لآلية التنقيب بأسلوب بسيط قدر الإمكان ، أتمنى لك قراءة ممتعة .


من أين أتى مصطلح التنقيب :


لنتكلم بداية عن العملات التقليدية ، في العملات التقليدية عندما ترغب دولة بطباعة المزيد من الأوراق المالية تقوم بإيداع كمية من الذهب و يتم طباعة أوراق مالية بقيمة كمية الذهب التي تم إيداعها (هذا الكلام قديم نوعاُ ما حيث ألغي الارتباط بين الذهب و الأوراق النقدية منذ أكثر من 40 سنة و الآن يتم توليد النقود بطريقة أخرى و لكن تكلمنا عن الطريقة القديمة فقط لتوضيح أصل كلمة تنقيب) ، إذاً كان هم الدول هو التنقيب عن الذهب و استبداله بنقود ، من هنا أتى مصطلح التنقيب عن النقود ، و لكن ماذا عن البتكوين ؟ كيف يتم التنقيب عنها ؟


مفهوم البلوك Block :


قبل البدء في شرح مفهوم التنقيب سأشرح لك أربع مصلحات أساسية ، هذه المصطلحات لابد أنك قد تعاملت معها إذا كنت من العاملين في مجال البتكوين ، المصطلح الأول هو البلوك ، لأوضح لك المفهوم سأقارنه بالعملات التقليدية ، في التعاملات التجارية على اختلاف أنواعها سواء كانت صغيرة على مستوى محل تجاري أو كبيرة على مستوى التعاملات البنكية و موازنات الدول ، كل عمليات البيع و الشراء و تحويل النقود من حساب إلى حساب آخر يتم توثيقها و تسجيلها في دفاتر خاصة أو بشكل مؤتمت ، في عالم البتكوين كافة العمليات يتم تسجيلها و توثيقها أيضاُ ، عملية التسجيل هذه تتم بالبلوك ، إذا البلوك يمثل عمليات بيع أو شراء أو تحويل للبتكوين ، من خلال البلوك إذا يمكنك الإطلاع و مراجعة كافة العمليات التجارية التي تتم على البتكوين .
في المعاملات التجارية ينتقل المال من الشخص الأول إلى الشخص الثاني ، ثم يعود لينتقل من الشخص الثاني إلى الشخص الثالث ، وبالتالي حركة المال هي عبارة عن سلسلة مترابطة ، و كذلك البلوكات فهي مترابطة مع بعضها بسلسلة تسمى سلسلة البلوكات Block Chain .
خلاصة القول أن سلسلة البلوكات هي سجل لكافة المعاملات التجارية التي تمت على البتكوين في الانترنت ، هي بمثابة دفتر حسابات تفتحه لتدقق في كون كافة العمليات التجارية صحيحة و لم يتم التلاعب بها .


مفهوم الهاش Hash :


لنعود لدفتر الحسابات التقليدي ، عادة دفتر الحساب يكون لدى المحاسب و هو المسؤول عنه ، و بالتالي لا يمكن لأحد التلاعب به ، و لكن مع البتكوين دفتر الحسابات هذا (سلسلة البلوكات) منتشر على الإنترنت و في متناول الجميع ، كيف نضمن عدم التلاعب به ؟ كيف نضمن عدم التزوير ؟
حسناً ، الأمر بسيط ، كل ما نحتاجه إلى برنامج (خوارزمية) ، هذا البرنامج يأخذ كل بلوك على حدى ، يجري بعض العمليات الحسابية ، يولد قيمة فريدة خاصة بهذا البلوك و فقط بهذا البلوك ، هذه القيمة تسمى الهاش .
في كل مرة يصلك بلوك معين ، يصلك هذا البلوك مع الهاش الخاص به ، تدخل البلوك إلى البرنامج فيعطيك هاش ، تقارن الهاش الذي ولده البرنامج مع الهاش الذي أتى مع البلوك ، فإذا حصل تطابق فالبلوك سليم و غير معدل .
أي تلاعب في البلوك سيعطي هاش جديد مهما كان هذا التلاعب بسيطاً ، وسيتم اكتشافه بسهولة ، هذا الكاش يتم توليده بالاعتماد على ثلاثة أمور :
– محتويات البلوك حتى نضمن أن أي تعديل في البلوك سيكتشف لأنه لن يتطابق مع الهاش .
– الهاش الخاص بالبلوك السابق : تذكر أن دفتر الحسابات عبارة عن سلسلة ، البلوكات هي سلسلة من البلوكات ، كل هاش تعتمد قيمته أيضاُ على قيمة الهاش الخاص بالبلوك السابق ، الهدف من هذه العملية هي أن أي تزوير في البلوك سيجعل الهاش الخاص به غير صحيح ، و بالتالي الهاش الخاص بالبلوك التالي غير صحيح (نظراً لأن الهاش الخاص بالبلوك التالي يتم توليده بالاعتماد على الهاش الخاص بالبلوك الحالي) ، و بالتالي الهاش الثالث غير صحيح و هكذا ، إذا أي تزوير أو تلاعب بالبلوك سيكتشف عند فحص أي هاش سواء هاش البلوك الذي تم التلاعب به أو هاشات البلوكات التالية للبلوك المزور .
– النقطة الثالثة هي nonce وهي ما سأتكلم عنه في الفقرة التالية .


مفهوم الـ nonce :


حتى الآن عرفنا أن سلسلة البلوك هي سجل يمثل المعاملات التجارية ، هذا السجل محمي من التزوير بواسطة الهاش ، هذا الهاش يتم توليده بالاعتماد على ثلاثة أمور (البلوك – هاش البلوك السابق – nonce) ولكن ما هو هذا الـ nonce و ما الفائدة من استخدامه في توليد الهاش ؟
في الحقيقة هناك أمر لم أذكره في الفقرات السابقة حول الهاش ، فوفقاً لقوانين البتكوين هذا الهاش يجب أن يكون له صيغة معينة ،على سبيل المثال كل هاش يجب أن يبدأ ب 00000110 . هذا قانون ولا يمكن قبول أي هاش خارج عن هذا القانون .
ولكن انتظر قليلاً ، أنت تقول لي أن الهاش له صيغة معينة و إلا فهو غير مقبول ، ولكن ماذا أستطيع أن أفعل إذا قامت الخوارزمية بتوليد هاش غير مطابق ، فالخوارزمية لايمكن تغييرها ، و البلوك لا يمكن تغييره لأنه سيعتبر تزوير ، و الهاش السابق لا يمكن تغييره ، كيف تريدني أن أولد لك هاش بصيغة معينة و أنا لا أستطيع تغيير شيء ؟؟؟؟
حسناً ، هذا هو الهدف الأساسي من الـ nonce ، في كل مرة تقوم بها بتوليد الهاش تقوم بتغيير ال nonce حتى تحصل على هاش متوافق مع قوانين البتكوين ، وبذلك تصبح العملية مكتملة :

البلوك الحالي + هاش البلوك السابق + nonce = هاش البلوك الحالي .


مفهوم التنقيب :


حسناً ، بعد كل هذا الكلام و بعد اكتمال عملية توليد الهاش ، أين التنقيب في ذلك ؟ لتعرف الجواب اسأل نفسك السؤال التالي : من الذي سيقوم بتوليد الهاش ؟ أنهم المنقبون ياصديقي ، أهلا بك في عالم التنقيب عن البتكوين 🙂 ، التنقيب عن البتكوين هو عملية توليد الهاش المناسب لكل بلوك ، عملية التوليد هذه تتم عن طريق استخدام حاسوبك و برنامج التنقيب ، تخيل الأمر عبارة عن أحجية ، كل ما لديك هو ( البلوك – هاش البلوك السابق – عدد كبير جداً من ال nonce ) و عليك التنقيب عن ال nonce الذي يعطيك هاش يتطابق مع قوانين البتكوين ، فإذا وجدته مبروك عليك ، ستربح 25 بتكوين كجائزة لك .
تخيل الأمر عبارة عن أحجية ، هذه الأحجية تنقصها قطعة واحدة (nonce) حتى تكتمل ، و لديك ملايين القطع التي يجب عليك التنقيب بينها ، بمجرد أن تنجح بإيجادها فستربح جائزة مرضية من البتكوين .

pp
أتمنى أن أكون قد وفقت في شرح مفهوم البتكوين و إيصال الفكرة الأساسية منه و إزالة الغموض الذي يكتنفه ، حاولت تبسيط الفكرة قدر المستطاع و تعمدت الابتعاد عن التفاصيل فالفكرة أعقد من ذلك و لكن المعلومات التي قدمتها لك تعتبر كافية إذا كنت ترغب في الخوض في غمار البتكوين .