المعاملات — ETH.BUILD
عرض توضيحي لكيفية عمل معاملات إيثيريوم باستخدام الأداة التعليمية ETH.BUILD. تعرف على كيفية إنشاء المعاملات وتوقيعها وإرسالها على شبكة إيثيريوم.
Date published: 14 يناير 2021
برنامج تعليمي بواسطة أوستن غريفيث يوضح كيفية عمل معاملات إيثيريوم باستخدام أداة البرمجة المرئية ETH.BUILD — يغطي هيكل المعاملة، وأسعار الغاز، والتوقيع، والبث، ومجمع المعاملات.
هذا النص هو نسخة يسهل الوصول إليها من النص الأصلي للفيديو (opens in a new tab) الذي نشره أوستن غريفيث. تم تعديله قليلاً لتسهيل القراءة.
رسوم المعاملات وحوافز المُعَدِّن (0:00)
في ETH.BUILD اليوم سنتحدث عن المعاملات. حتى الآن، لدينا نوعًا ما هذه المعاملات التي يتم تعدينها في كتل، وتعبئتها في كتل، وتعدينها في سلسلة. نريد التحدث عما يحفز المُعَدِّن — بخلاف مكافأة الكتلة — لسحب معاملتنا من المجمع ووضعها في كتلة وتعدينها على السلسلة، مقارنة بالأشخاص الآخرين في المجمع. قد يكون هناك الآلاف من الأشخاص في المجمع الذين يقدمون عطاءات نوعًا ما، وهذا العطاء يكون بهذه الرسوم.
يمكن أن يكون لدي رسوم في معاملتي تقول "أنا أليس وأرسل خمسة إلى بوب، والرقم الفريد الخاص بي هو واحد للحماية من إعادة التشغيل." أيضًا، يمكن لمن يُعَدِّن هذا أن يأخذ الرسوم لنفسه. في الأساس، ترسل أليس خمسة إلى بوب ولكنها تدفع أيضًا للمُعَدِّن نيكلًا لوضعها في السلسلة.
تشريح معاملة إيثيريوم (1:10)
كيف تبدو المعاملة على إيثيريوم؟ لن يكون لدينا "بوب" و"أليس" بعد الآن — سيكون لدينا عناوين. ستكون القيمة بوحدة Wei، وليس بوحدة ETH. وستكون الرسوم أيضًا بوحدة Wei.
دعونا نتعمق ونلقي نظرة على هذه المعاملة. لدي حساب تم إدخال عبارة استرداد فيه، وأنا متصل بشبكة إيثيريوم الرئيسية. أقوم أيضًا بتشغيل وحدة للحصول على بيانات الأسعار من CoinMarketCap، حتى أتمكن من رؤية أن جزءًا من عشرة من ETH يترجم إلى حوالي ثلاثة وعشرين دولارًا.
إعداد المعاملة (2:25)
ما سأفعله هو إنشاء معاملة وتحفيز المُعَدِّن لالتقاطها ووضعها على السلسلة. لدي شخصيتان — أليس وبوب. ستقوم أليس بإرسال بعض القيمة إلى بوب باستخدام مفتاحها الخاص. لا يوجد حقل عنوان "من" (from) هنا لأننا — تذكر — نقوم بالتوقيع والاسترداد باستخدام زوج المفاتيح الخاص بنا. يتم تعبئة المعاملة، وتوقيعها، ثم إرسالها عبر الشبكة. لا يمكن لأحد العبث بها، وعلى الجانب الآخر يمكن لشخص ما استردادها واكتشاف أننا بالفعل من قمنا بتوقيعها. يتم اشتقاق عنوان "من".
استراتيجية سعر الغاز (4:20)
تم تعيين سعر الغاز على حوالي 4.1 Gwei افتراضيًا — أي 4.1 مليار Wei. لكننا نريد أن نكون أكثر استراتيجية حيال ذلك ونرى ما يحدث على السلسلة الآن. يمكننا أن نرى أن الكتلة الأخيرة احتوت على 78 معاملة، وتراوح سعر الغاز من حوالي 5 نزولاً إلى حد أدنى معين. في الأساس، سنحتاج إلى أن نكون أعلى من 5 ليتم تعديننا في تلك الكتلة. لذا دعونا نحدد سعر الغاز عند 5.001 — أكثر بقليل فقط.
التحويل إلى Wei (5:20)
نحتاج إلى إجراء تحويل إلى Wei. على إيثيريوم، تتعامل بشكل أساسي مع فئتين: ETH، وهي الفئة التي يتحدث عنها الناس عادةً، ثم Wei، وهي بمثابة جزء صغير جدًا من ETH. أما Gwei — وهو ما نستخدمه لأسعار الغاز — فهو يقع بينهما. السبب في ذلك يشبه سبب عدم تجولنا ونتحدث بأجزاء من البنسات.
تمتلك أليس 0.18 ETH، وسنرسل 0.05 ETH إلى بوب. نضع سعر الغاز عند 5 Gwei.
التوقيع والبث (7:02)
عندما تختار أليس توقيع المعاملة، تنطلق كمعاملة موقعة يمكن أن تنتقل عبر الشبكة. لا يمكن لأحد العبث بها — على الجانب الآخر، يمكن لشخص ما أن يستنتج أن أليس هي من وقعتها، وتحتوي على جميع المعلومات حول من نريد الإرسال إليه والغاز الذي يذهب إلى المُعَدِّن.
نأخذ تلك المعاملة الموقعة ونقوم بتوصيلها بوظيفة الإرسال الخاصة بوحدة سلسلة الكتل. عندما أنقر على إرسال، فإنها تعطينا تجزئة — تجزئة المعاملة. في الأساس، أرسلتها إلى الشبكة الموزعة وأعطوني تجزئة المعاملة في المقابل. تخرج على الشبكة، ثم يكون هناك مجمع المعاملات هذا — حيث يقدم الجميع عطاءات لتمرير معاملاتهم.
التحقق من الكتلة (8:41)
يمكننا الاستعلام من سلسلة الكتل عن معاملتنا. وبالتأكيد، تم تعدينها بالفعل. يمكننا إلقاء نظرة على الكتلة، والفرز حسب سعر الغاز، والعثور على أنفسنا. ها هي معاملتنا بسعر غاز 5.001 — أليس ترسل إلى بوب، بدون بيانات إضافية. نحن هناك، على بعد حوالي أربعة أو خمسة مراكز من الأسفل.
إرسال البيانات مع معاملة (9:54)
نحن قادرون على إرسال القيمة وتقديم عطاءات ليتم التعرف على معاملتنا على السلسلة. لكن دعونا نلقي نظرة على شيء آخر — حقل البيانات. يمكننا إرسال أشياء مع معاملتنا. ستكون بالنظام السداسي العشري. سترسل أليس ستة دولارات أخرى إلى بوب، وسنرفق رسالة: "مرحبًا بوب". يمكننا رؤية "مرحبًا بوب" محولة إلى النظام السداسي العشري.
نقوم بتوقيع تلك المعاملة، ونرسلها إلى مُعَدِّن، وتذهب إلى الشبكة، ونحصل على تجزئة في المقابل. نراقبها حتى يتم تعدينها، ويحدث ذلك بالفعل. عندما نتحقق من تلك الكتلة، يمكننا رؤية معاملتنا مع البيانات المرفقة.
مجمع المعاملات وزيادة الغاز (12:43)
كعرض توضيحي أخير، وضعت معاملة في المجمع بسعر غاز منخفض جدًا — حوالي 1.001 Gwei. إنها تقبع هناك دون تعدين لأننا لا نحفز المُعَدِّنين بما يكفي. يمكننا أن نرى أن المعاملة معلقة في مجمع المعاملات. يحتوي المجمع على ما بين مائة وثلاثمائة معاملة، لكن أحدث الكتل التي يتم تعدينها تظهر أن أصغر سعر للغاز هو حوالي 5.
لذا نحتاج إلى إعادة إرسال هذه المعاملة — دعونا نرفعها إلى 10. هذا أكثر بكثير مما يجب أن يكون، لكننا سنعيد إرسال نفس المعاملة بنفس الرقم الفريد ولكن بسعر غاز أعلى. تقول الشبكة "نفس الشخص، نفس المعاملة، على استعداد لدفع المزيد." يتم التقاطها وتعدينها في الكتلة التالية.
ملخص (14:52)
أرسلنا معاملة، ودفعنا بعض الغاز لتحفيز المُعَدِّن لوضعها في سلسلة الكتل. أرسلنا أيضًا بيانات مع المعاملة — هناك كل أنواع الأشياء الرائعة حقًا التي يمكننا القيام بها الآن بعد أن أصبح لدينا بيانات الاستدعاء هذه، وسندخل في العقود الذكية والكثير من الأشياء الممتعة لاحقًا.