ما هو Blockchain؟ كيفية إنشاء شبكة وكود وهندسة معمارية

نشرت: 2020-02-06

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

في هذا المنشور ، سنتحدث عن كل ما تحتاج لمعرفته حول هندسة Blockchain و Blockchain. أولاً ، لنبدأ بالأساسيات.

تعلم برامج عبر الإنترنت من أفضل الجامعات في العالم. اربح برامج PG التنفيذية أو برامج الشهادات المتقدمة أو برامج الماجستير لتتبع حياتك المهنية بشكل سريع.

جدول المحتويات

ما هو Blockchain؟

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

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

كما يوحي الاسم ، تتكون Blockchain من كتل تحتوي على معلومات محددة يتم مشاركتها بواسطة جميع الأجهزة المتصلة داخل شبكة نظير إلى نظير (P2P). هذه الكتل عبارة عن هياكل بيانات تجمع مجموعات من المعاملات وتوزعها على جميع العقد في شبكة P2P. يتم تأمين كل كتلة من خلال مفتاح تشفير عالي التخصص. علاوة على ذلك ، تحتوي كل كتلة على رأس كتلة - البيانات الوصفية - التي تتحقق من صحة الكتلة. تتكون البيانات الوصفية للكتلة من المكونات الستة التالية:

  • الإصدار - الإصدار الحالي من بنية الكتلة.
  • تجزئة رأس الكتلة السابقة - الإشارة إلى الكتلة الأصلية لهذه الكتلة .
  • تجزئة جذر Merkle - هي تجزئة تشفير لجميع المعاملات المسجلة في الكتلة.
  • الطابع الزمني - وقت إنشاء الكتلة.
  • nBits - الشكل المشفر لعتبة الهدف في رأس الكتلة.
  • Nonce (الرقم المستخدم مرة واحدة) - قيمة عشوائية يمكن لمنشئ الكتلة التعامل معها بالطريقة التي يريدها.

مصدر الصورة

بينما تشكل هذه المكونات الستة رأس الكتلة ، فإن الجزء المتبقي من الكتلة يحتوي على المعاملات التي تم تضمينها بواسطة المُعدِّن أثناء إنشاء الكتلة. يقوم المستخدمون في الشبكة بإنشاء مثل هذه المعاملات وإرسالها إلى الشبكة ليتم تضمينها في كتلة. مع استمرار نمو هذه المعاملات ، يستمر حجم Blockchain أيضًا في التوسع.

تجعل الميزات اللامركزية والموزعة لـ Blockchain شفافة وخاضعة للمساءلة (كل مستخدم في الشبكة مسؤول عن أي تعديلات في السلسلة). وحقيقة أن كل شيء مسجل في Blockchain مؤمن من خلال التشفير يجعله آمنًا وموثوقًا به. جعلت ميزات Blockchain هذه جذابة للمتحمسين في جميع الصناعات الذين يستثمرون بسهولة في بنية Blockchain لتطوير التطبيقات المستندة إلى Blockchain.

هندسة Blockchain

الآن ، بعد أن قمنا بمسح أساسيات بنية Blockchain ، سوف نتعمق فيها. تتكون بنية Blockchain من بنيتين أساسيتين للبيانات:

  • المؤشرات - هذه هي المتغيرات التي تسجل معلومات حول موقع متغير آخر. بمعنى آخر ، يشيرون إلى موضع متغير آخر.
  • القوائم المرتبطة - هذه عبارة عن سلسلة من الكتل حيث تحتوي كل كتلة على بيانات فريدة وترتبط بالكتلة التي تليها عبر مؤشر.

مصدر الصورة

وفقًا لهذا المنطق ، فإن الكتلة الأولى ، المعروفة أيضًا باسم Genesis Block ، في السلسلة لا تحتوي على مؤشر (إنها كتلة البداية). وبالمثل ، سيكون للكتلة النهائية في السلسلة مؤشر فارغ (ليس له قيمة).

خصائص هندسة Blockchain

تتميز بنية Blockchain ببعض الخصائص الفريدة ، بما في ذلك:

  • التشفير - يتم تأمين كل معاملة مسجلة في Blockchain من خلال حسابات تشفير معقدة تم التحقق من صحتها من قبل جميع أصحاب المصلحة المعنيين.
  • اللامركزية - يتمتع كل عضو في شبكة Blockchain بإمكانية الوصول إلى قاعدة البيانات الكاملة.
  • المصدر - يمكن تتبع أصل كل معاملة واردة في دفتر الأستاذ Blockchain ومراقبتها.
  • الثبات - بمجرد تسجيل المعاملة في Blockchain ، لا يمكن حذفها. لا يمكن تغيير السجل إلا بموافقة جميع الأطراف.
  • إخفاء الهوية - لكل مستخدم في الشبكة عنوان تم إنشاؤه عبر النظام نفسه - ليس لديهم هوية. بهذه الطريقة ، يمكن للمستخدمين الحفاظ على إخفاء هويتهم (مطلوب بشكل خاص في بنية blockchain العامة).
  • الشفافية - نظرًا لأن كل عضو في Blockchain يمكنه الوصول إلى النظام ومراقبة العمليات ، فهناك شفافية كاملة في العملية. قد يعني تغيير كتلة واحدة أنه يجب تغيير السلسلة بأكملها ، ومن غير المرجح أن يحدث هذا (يتطلب الأمر قدرة حوسبة هائلة لاستبدال شبكة blockchain).

أنواع معمارية Blockchain

هناك ثلاثة أنواع أساسية من هندسة Blockchain:

  • هندسة Blockchain العامة

في بنية blockchain العامة ، يكون الوصول إلى كل من البيانات والنظام متاحًا لأي فرد يرغب في المشاركة في شبكة Blockchain. تعد Bitcoin و Ethereum و Litecoin بعض الأمثلة الممتازة لأنظمة blockchain العامة.

  • هندسة Blockchain الخاصة

على عكس بنية blockchain العامة ، لا يمكن التحكم في بنية blockchain الخاصة إلا من قبل مجموعة من المستخدمين المصرح لهم الذين ينتمون إلى مؤسسة معينة أو أولئك الذين لديهم دعوة للمشاركة في الشبكة.

  • كونسورتيوم بلوكشين العمارة

تتكون بنية اتحاد blockchain من مجموعة من المؤسسات ويتم تعيين إجراءات النظام والتحكم فيها من قبل مجموعة محددة من المستخدمين المعينين.

Blockchain العامة هي Blockchain اللامركزية البحتة لأنها مفتوحة ويمكن الوصول إليها من قبل أي شخص يرغب في المشاركة في اتفاقية أو النظام. جميع السجلات مرئية لكل مستخدم مشارك في الشبكة. على العكس من ذلك ، تصور Blockchain الخاصة سلوك نظام أكثر مركزية حيث يتم إدارته والتحكم فيه من قبل مجموعة مختارة من المستخدمين الذين يتمتعون بخصوصية أكبر.

المكونات الأساسية لهندسة Blockchain

ستة مكونات أساسية تشكل بنية Blockchain. هم انهم:

  • العقدة - تشير إلى مستخدم / كمبيوتر في بنية blockchain. تحتوي كل عقدة على نسخة مستقلة من دفتر الأستاذ blockchain بأكمله.
  • المعاملة - تشير إلى أصغر كتلة بناء لنظام blockchain ، أي السجلات والمعلومات المخزنة في الكتلة.
  • الكتلة - هي بنية بيانات تخزن / تسجل مجموعة من المعاملات التي يتم مشاركتها (توزيعها) بين جميع العقد في الشبكة.
  • سلسلة - هي مصطلح يشير إلى سلسلة من الكتل مرتبة بترتيب معين.
  • عمال المناجم - هذا مصطلح يستخدم للعقد المحددة التي تتحقق من الكتل قبل إضافتها إلى بنية blockchain.
  • خوارزمية الإجماع - هي عبارة عن مجموعة من القواعد والإجراءات التي يجب الالتزام بها بشكل صارم لأداء عمليات blockchain.

يوضح الرسم التخطيطي لهندسة blockchain الوارد أدناه كيفية عمل النظام كمحفظة رقمية موزعة:

مصدر الصورة

في وقت سابق ، ناقشنا مكونات كتلة البيانات الوصفية. الآن ، سوف نلقي نظرة على عناصر الكتلة في Blockchain. تتكون كل كتلة من:

  • البيانات - تعتمد بيانات الكتلة إلى حد كبير على نوع بنية blockchain التي تندرج تحتها. على سبيل المثال ، بالنسبة إلى Bitcoin أو Litecoin ، ستحتوي البيانات الموجودة في الكتل على معلومات عن المرسل والمستقبل وعدد العملات المعدنية.
  • تجزئة الكتلة - التجزئة هي مفتاح فريد يشبه بصمة الإصبع تقريبًا. إنه مزيج معقد من الأرقام والحروف. يتم إنشاء كل تجزئة كتلة باستخدام خوارزمية تجزئة تشفير معينة - SHA256. يتم إنشاء كتلة على الفور ، يتم إنشاء مفتاح تجزئة. أي تغييرات يتم إجراؤها على الكتلة ستعمل تلقائيًا على تغيير التجزئة الخاصة بها أيضًا. بمعنى آخر ، تساعد تجزئة الكتلة على اكتشاف أي تعديلات يتم إجراؤها على الكتلة.
  • التجزئة من الكتلة السابقة - بصرف النظر عن احتوائها على مفتاح التجزئة الفريد الخاص بها ، يجب أن تحتوي الكتلة أيضًا على تجزئة الكتلة قبلها مباشرة. هذه الميزة هي التي تساعد في إنشاء سلسلة متصلة في بنية blockchain وهي العنصر الرئيسي وراء أمانها.

نظرًا لأن جميع الكتل التي تم التحقق من صحتها في Blockchain مشتقة من Genesis Block ، فإن أي محاولة لإفساد أو انتهاك كتلة واحدة ستؤدي إلى تفاعل تسلسلي ، مما يعزز تغيير جميع الكتل. إذا حدث هذا ، فإن جميع الكتل ستنقل المعلومات غير الصحيحة إلى الأمام ، مما يجعل Blockchain بالكامل غير صالح. ومع ذلك ، يمكن إجراء تغييرات على بنية Blockchain عبر خوارزمية التوافق.

ما هي خوارزمية التوافق؟

تشير خوارزمية الإجماع إلى الآلية أو البروتوكول الذي يضمن أن تكون النسخة المحلية من دفتر الأستاذ Blockchain التي يمتلكها الأفراد متسقة مع بعضها البعض ويتم تحديثها إلى أحدث إصدار. يساعد هذا في ضمان التوحيد والتزامن داخل بنية blockchain. فيما يلي خوارزميات الإجماع الثلاثة الأكثر استخدامًا:

إثبات العمل (POW)

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

إثبات الحصة (POS)

يعتبر بروتوكول POS جميع العقد الموجودة في النظام بمثابة مصدقين يمكنهم التحقق من صحة المعاملات لكسب رسوم المعاملات. يختار POS هذه العقد بشكل عشوائي للتحقق من صحة الكتل - يعتمد الاحتمال وراء الاختيار العشوائي للعقدة على مقدار الحصة التي تمتلكها العقدة.

التسامح البيزنطي المبسط للخطأ (SBFT)

في هذا النهج ، توجد عقدة واحدة (مدقق) تجمع المعاملات المقترحة لإنشاء كتلة جديدة في Blockchain. يُطلق على المدقق اسم الطرف. هنا ، عندما يصحح الحد الأدنى لعدد العقد الأخرى في الشبكة الكتلة المنشأة حديثًا ، يتم التوصل إلى توافق في الآراء.

كيف تصنع معمارية Blockchain؟

لبناء بنية Blockchain ، أولاً ، يجب أن تهتم بأمرين:

  • شبكة Blockchain - تتعلق بالبنية التحتية لتطبيق Blockchain الموضوعة داخل بيئة معينة إما في مؤسسة واحدة أو عدة مؤسسات.
  • كود Blockchain - يشير إلى المهام والأهداف التي يهدف تطبيق Blockchain إلى أدائها.

اليوم ، أصبح تطوير بنية Blockchain أسهل ، بفضل التوافر الواسع لحلول مفتوحة المصدر. Hyperledger من Linux Foundation هو النظام الأساسي الأكثر شيوعًا المستخدم لبناء بنية blockchain خاصة. بصرف النظر عن Hyperledger ، تعد Ethereum و Corda أيضًا أدوات ممتازة لتطوير هندسة Blockchain.

مصدر الصورة

كيفية إنشاء شبكة Blockchain؟

تتشكل شبكة Blockchain عندما تقرر منظمة أو مجموعة من المنظمات الاستثمار في حل Blockchain. يمكن اعتبار هذه الشبكة إما منظمات فردية مع موظفيها أو ككل من وجهة نظر البنية التحتية التقنية لجميع المنظمات مجتمعة.

عادة ، تشارك أطراف متعددة في شبكة Blockchain. الهدف من تطبيقات / حلول Blockchain هو تنظيم هذه الأطراف من خلال تشكيل نظام نظير إلى نظير شفاف حيث يمكن لكل عضو تتبع ومراقبة جميع الأنشطة في الوقت الفعلي. تساعد هذه الميزة في القضاء على جميع المخاطر المرتبطة بالمعاملة أو العمل.

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

كيف يتم إنشاء كود Blockchain؟

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

فوائد هندسة Blockchain

من خلال إعداد بنية Blockchain في مكانها الصحيح ، يمكن للمؤسسات جني الفوائد التالية:

  • تقليل التكاليف

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

  • زيادة الشفافية

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

  • أمن البيانات

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

إذن ، هذا هو Blockchain Architecture باختصار!

نأمل أن يساعدك هذا في فهم هذه التقنية الناشئة بشكل أفضل قليلاً.

هناك ارتفاع في الوظائف في تقنية blockchain وقد غيرت blockchain بشكل كبير وجه صناعة التكنولوجيا إلى الأبد. إذا كنت مهتمًا بأن تصبح مطور blockchain وأن تنشئ عقودًا ذكية ورموز سلسلة ، فراجع برنامج الشهادة المتقدم IIIT-B & upGrad في تقنية blockchain.

ما هي بعض تحديات استخدام بنية blockchain؟

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

ماذا يحدث عندما تكون blockchain كبيرة جدًا لدعم البنية التحتية للشبكة؟

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

ما هي تداعيات تقنية blockchain على الثقة؟

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