Corda - blockchain مفتوح المصدر للأعمال

حبل هو دفتر أستاذ موزع لتخزين وإدارة ومزامنة الالتزامات المالية بين المؤسسات المالية المختلفة.
Corda - blockchain مفتوح المصدر للأعمال
لدى Corda وثائق جيدة جدًا مع محاضرات فيديو يمكن العثور عليها هنا. سأحاول أن أصف بإيجاز كيفية عمل كوردا في الداخل.

دعونا نلقي نظرة على السمات الرئيسية لـ Corda وتفردها بين سلاسل الكتل الأخرى:

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

دفتر الحسابات

مفهوم دفتر الأستاذ في كوردا هو ذاتي. لا يوجد مستودع بيانات مركزي واحد. وبدلاً من ذلك، تحتفظ كل عقدة بقاعدة بيانات منفصلة للحقائق المعروفة لها.

على سبيل المثال، تخيل شبكة مكونة من 5 عقد، حيث تكون الدائرة حقيقة معروفة للعقدة.

Corda - blockchain مفتوح المصدر للأعمال

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

الدول

الدولة هي غير قابل للتغيير كائن يمثل حقيقة معروفة لواحدة أو أكثر من عقد الشبكة في وقت معين.

يمكن للدول تخزين بيانات عشوائية، مثل الأسهم والسندات والقروض ومعلومات الهوية.

على سبيل المثال، تمثل الحالة التالية سندات دين - وهي اتفاقية تدين بها أليس لبوب بمبلغ X:

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

Corda - blockchain مفتوح المصدر للأعمال

المعاملات

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

ستتم إضافة المعاملة إلى دفتر الأستاذ إذا:

  • صالحة تعاقديا
  • موقعة من قبل جميع المشاركين المطلوبين
  • لا يحتوي على إنفاق مزدوج

تستخدم Corda نموذج UTXO (مخرجات المعاملات غير المنفقة)، حيث تكون كل حالة من حالات دفتر الأستاذ غير قابلة للتغيير.

عند إنشاء معاملة، يتم نقل حالة الإخراج للمعاملة السابقة (بواسطة التجزئة والفهرس) إلى الإدخال.

Corda - blockchain مفتوح المصدر للأعمال
دورة حياة الصفقة:

  • الإنشاء (في الوقت الحالي، تعد المعاملة مجرد اقتراح لتحديث دفتر الأستاذ)
  • جمع التوقيعات (يشترط موافقة أطراف المعاملة على مقترح التحديث عن طريق إضافة توقيع إلى المعاملة)
  • الالتزام بالمعاملة في دفتر الأستاذ

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

Corda - blockchain مفتوح المصدر للأعمال
بالإضافة إلى حالات الإدخال والإخراج، قد تحتوي المعاملة على:

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

Corda - blockchain مفتوح المصدر للأعمال

عقود

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

تتم كتابة العقود في Corda بأي لغة JVM (على سبيل المثال، Java، Kotlin).

class CommercialPaper : Contract {
    override fun verify(tx: LedgerTransaction) {
        TODO()
    }
}

من الضروري أن ترث من الفصل نوع العقد وتجاوز الطريقة تحقق من. إذا كانت المعاملة غير صالحة، سيتم طرح استثناء.

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

في Corda، يتم تنفيذ العقود في ما يسمى بـ Sandbox - وهو JVM معدل قليلاً يضمن التنفيذ الحتمي للعقود.

تيارات

لأتمتة الاتصال بين عقد الشبكة، تمت إضافة المواضيع.

التدفق عبارة عن سلسلة من الخطوات التي تخبر العقدة بكيفية إجراء تحديث محدد لدفتر الأستاذ وعند أي نقطة يجب توقيع المعاملة والتحقق من صحتها.

Corda - blockchain مفتوح المصدر للأعمال

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

إجماع

للدخول إلى دفتر الأستاذ، يجب أن تصل المعاملة إلى إجماعين: الصلاحية والتفرد.

يتم اتخاذ القرار بشأن صحة المعاملة فقط من قبل الأطراف المشاركة بشكل مباشر فيها.

تقوم عقد كاتب العدل بفحص المعاملة للتأكد من تفردها ومنع الإنفاق المزدوج.

لنتخيل أن بوب لديه 100 دولار ويريد تحويل 80 دولارًا إلى تشارلي و70 دولارًا إلى دان باستخدام نفس حالة الإدخال.

Corda - blockchain مفتوح المصدر للأعمال

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

اختتام

إن منصة Corda، التي طورها اتحاد R3 blockchain، ليست حالة استخدام خالصة لتقنية blockchain. Corda هي أداة متخصصة للغاية للمؤسسات المالية.

المصدر: www.habr.com

إضافة تعليق