مقايضة ذرية باختصار

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


شعار


المقايضة الذرية: ما هو وماذا يأكل؟


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


  • دعم العقود الذكية (مولد هذه الصفقة "الأولية" للغاية) ؛
  • استخدام نفس cryptomagy (وظيفة التجزئة).

عقود ذكية؟ لا ، لم يسمع

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


هاش وأصدقائه

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


عندما يسير كل شيء بسلاسة


النظر في التبادل بين أليس (نعم ، نعم ، أليس لم تعد هي نفسها) وبوب. أليس لديه بيتكوين (BTC) ، وبوب لديه الأثير (eth). كل من الشخصيات لها عناوين على كلا blockchains. على سبيل المثال: ترمز علامات العملة الكبيرة إلى قيود الكتل.



تنشئ Alice مفتاحًا (رقمًا كبيرًا) ولا تخبر أي شخص بشكل متواضع:



بناءً على المفتاح ، تعتبر التجزئة:



ينشئ عقدًا بمعرّف فريد يساوي التجزئة:



يرسل المال إلى العقد. الآن لا يمكنها قضاء بعض الوقت (timelock):


انتهى الوقت ، أو timelock

Timelock - الوقت الذي سيتمكن منشئ العقد بعده من إعادة الأموال إذا أرسل معاملة من نوع معين (دعنا نسميها "استرداد"). ليس هناك حاجة إلى مفتاح سري لهذه الصفقة. يمكن لمستخدم آخر سحب الأموال لعنوان المستلم المحدد في العقد (مهم: ليس ملكًا له) إذا أرسل معاملة من نوع مختلف (دعنا نسميها استرداد) مع المفتاح السري.


بشكل عام ، تكون آلية معالجة معاملات العقود كما يلي:


if (transaction_type == "refund" and sender == contract_creater and timelock < now()) { send_to(creator_address); } else if (transaction_type == "redeem" and hash(secret_key) == contract_id) { send_to(receiver_address); } 


أليس تقارير التجزئة لبوب. يستطيع الآن مراجعة (التحقق) من جميع حقول العقد: تأكد من صحة العناوين ، ومقدار الإرسال ، ووقت تخزين الأموال في العقد (الفترة التي لن تتمكن Alice خلالها من سحبها):



إذا كان كل شيء جيدًا ، يقوم Bob بإنشاء عقد على blockchain الثاني يشبه Alisinom (بنفس المعرف). يتغير المستلم ، وربما ، المبلغ (إذا لم يكن السعر من 1 إلى 1).



أليس تقوم بمراجعة العقد:



إذا كانت تتضاعف كل شيء ، فإنها تنشئ معاملة على Ethereum تنفق الأموال على عقد Bob. الطريقة الوحيدة للقيام بذلك هي توفير مفتاح. الآن هو معروف:



أليس يحصل على إيث:



ينظر بوب إلى المفتاح ويقوم بإنشاء معاملة تنفق الأموال على عقد أليس باستخدام مفتاحها:



النجاح! الذئاب ممتلئة ، الأغنام آمنة!


عندما يكون العالم غير مثالي


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


لنفترض أن أليس كفتاة كريمة أرسلت أموالًا مقابل عقد ، ولكن بعد التدقيق ، غيّر بوب رأيه بشأن الفراق:



Alice تنتظر انتهاء صلاحية timelock المحدد في العقد (على سبيل المثال ، 48 ساعة) وإرجاع صراصير الدم:



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



ينتظر بوب لبعض الوقت لحظر الأموال (عادة ما يكون أقل من Alice ، حتى Alice لا تسحب أموال Bob في اللحظة الأخيرة ، ثم لا تعيدها ؛ قل 24 ساعة). إرجاع أليس أموالها بعد timelock لها.



استنتاج


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


بإيجاز ، في التبادل بين A و C على العقدين B1 و B2 ، يمكن تمييز الخطوات التالية:


  1. تهيئة العقد على B1 بواسطة المشارك أ ؛
  2. الاستماع إلى عقد على B1 بواسطة الجزء C ؛
  3. تهيئة العقد على B2 بواسطة المشارك C ؛
  4. الاستماع إلى عقد B2 بواسطة A ؛
  5. توفير المفتاح وسحب الأموال إلى B2 بواسطة المشارك أ ؛
  6. الحصول على مفتاح على B2 بواسطة المشارك C ؛
  7. سحب الأموال من B1 من طرف S.

هذه التكنولوجيا جديدة ، لكن يتم تقديمها بالفعل بشكل نشط. ربما في المستقبل القريب ، ستكون قادرة على استبدال الغريبة الأيديولوجية المركزية لتبادل القوالب.

Source: https://habr.com/ru/post/ar458646/


All Articles