الانتقال إلى المحتوى

واجهة RPC للمعاملات الخاصة

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

آخر تحديث

لأغراض تعليمية فقط؛ لا يشكل ذلك نصيحة استثمارية أو توصية استثمارية. قد تؤدي الاستثمارات إلى خسائر.

الإجابة المباشرة

ترسل واجهة RPC للمعاملات الخاصة معاملة موقعة أو حزمة مرتبة عبر مسار خدمة محدود قبل نشرها في مجمع المعاملات العام. وقد يضم المسار مقدم واجهة RPC ومرحلا ومنشئي كتل مختارين، وكذلك باحثين إذا أُفصحت لهم تلميحات. لذلك تصف كلمة «خاصة» نطاق التوزيع الأولي، ولا تعني التشفير أو إخفاء الهوية أو حجب المعاملة عن الوسطاء.

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

لا تتعامل مع جميع الطرق الخاصة كما لو كانت متبادلة. فقد تختلف المعاملة المنفردة eth_sendPrivateTransaction والحزمة القديمة eth_sendBundle والحزمة mev_sendBundle في الكتل المستهدفة، وترتيب عناصر الحزمة، والسماح بالتراجع، والاستبدال أو الإلغاء، واختيار منشئي الكتل، وتلميحات الخصوصية، وقواعد الاسترداد. وتتحكم السلسلة ونقطة النهاية وإصدار API والحمولة الموقعة المحددة في النتيجة.

آلية العمل

تنشئ المحفظة أولا معاملة عادية خاصة بالسلسلة وتوقعها، وتتضمن معرف السلسلة والرقم التسلسلي للمعاملة والوجهة والقيمة وبيانات الاستدعاء وحد الغاز وحدود رسوم EIP-1559. يغير التوجيه الخاص الجهة التي تُرسل إليها تلك البايتات الموقعة؛ ولا يتجاوز ترتيب الأرقام التسلسلية، أو فحوص الرصيد والسماح، أو تنفيذ العقد، أو قواعد الرسم الأساسي، أو التحقق بالإجماع. وتحتفظ إعادة نشر البايتات الموقعة نفسها بتجزئة المعاملة، بينما تكون للاستبدال ذي الرقم التسلسلي نفسه، مع تغيير الرسوم أو بيانات الاستدعاء، تجزئة مختلفة.

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

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

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

اتبع سير العمل الآتي:

  1. ثبّت معرف السلسلة ومقدم الخدمة وإصدار API؛ واختر طريقة معاملة خاصة منفردة أو طريقة حزمة، ووثق سياسات التسجيل والتوزيع على منشئي الكتل أو الباحثين وتلميحات الخصوصية والتراجع والاسترداد والمسار الاحتياطي العام.
  2. فك ترميز النية غير الموقعة والحمولة الموقعة بدقة: المرسل والرقم التسلسلي والوجهة والقيمة وبيانات الاستدعاء والسماح وحد الغاز وحدود الرسوم والموعد النهائي والحد الأدنى للمخرجات ونطاق الكتل المستهدفة وكل عنصر مرتب في الحزمة.
  3. حاك التنفيذ على كتلة وحالة محددتين؛ واختبر مساري النجاح والتراجع وانحراف الحالة والانزلاق وتغير الأرصدة والإخفاقات المسموح بها وإجمالي الغاز وأسوأ نتيجة صحيحة اقتصاديا.
  4. أرسل عبر نقطة النهاية المقصودة واحتفظ بتجزئة المعاملة أو الحزمة ومعرف الطلب وهوية المصادقة والطابع الزمني والكتلة المستهدفة أو القصوى ومنشئي الكتل والتلميحات والحمولة الأصلية.
  5. راقب إقرار مقدم الخدمة والمحاكاة والتوزيع على منشئي الكتل والرقم التسلسلي الخاص والانتهاء بمعزل عن الإيصال المعتمد؛ وحدّث افتراضات الكتلة المستهدفة والرسوم قبل إعادة الإرسال.
  6. عند الموعد النهائي، اختر صراحة الانتظار أو الإلغاء أو الاستبدال بالرقم التسلسلي نفسه أو الإفصاح عبر مسار احتياطي عام؛ ولا تفترض أن الإلغاء يسترجع النسخ، ولا ترسل نسخا متعارضة من دون تتبع السباق.
  7. طابق على السلسلة الصحيحة حالة الإيصال status والسجلات والأرصدة والمخرجات وسعر الغاز الفعلي والاسترداد، ثم انتظر حالة safe أو finalized المطلوبة، وتحقق من إعادة التنظيم أو التسرب أو فروق التنفيذ غير المفسرة.

أمثلة

  • حماية المخرجات ليست أفضل تنفيذ. يعطي طلب مبادلة مدخلا قدره 100,000 USDC وحدا أدنى للمخرجات قدره 98,800 USDC. ويعيد التنفيذ العام 98,950 USDC، أي نقصا عن القيمة الاسمية قدره 1,050 USDC أو 1.05%، لكنه يزيد على الحد الأدنى بمقدار 150 USDC فقط. قد يقلل التوجيه الخاص المراقبة، لكنه لا يضمن مخرجات أفضل من سوق عام آخر أو طلب سعر RFQ.
  • حد الإدراج وفق EIP-1559. تستخدم المعاملة 180,000 gas، ويبلغ الرسم الأساسي 30 gwei، والحد الأقصى للأولوية 2 gwei، والحد الأقصى للرسم 40 gwei. يكون السعر الفعلي min(40, 30 + 2) = 32 gwei، ومن ثم تبلغ الرسوم 180,000 x 32 = 5,760,000 gwei = 0.005760 ETH. وإذا بلغ الرسم الأساسي لكتلة مرشحة 42 gwei، فلا يغطيه الحد الأقصى 40 gwei ولا يستطيع التوجيه الخاص جعل المعاملة قابلة للإدراج فيها.
  • سباق المسار الاحتياطي ذي الرقم نفسه. تستخدم الحمولة الخاصة A والحمولة الاحتياطية العامة B الرقم التسلسلي 42. يوجد طلبان، لكن السلسلة المعتمدة لا تستطيع استهلاك الرقم 42 إلا مرة واحدة. فإذا أُدرجت A في الكتلة N + 2 أصبحت B قديمة؛ وإذا أُدرجت B أولا أصبحت A قديمة. إقرار الإلغاء ليس تراجعا، ويجب تتبع كل نسخة لا تزال حية.
  • السماح بالتراجع ليس تراجعا ذريّا. في حزمة مرتبة، يستهلك منح السماح 45,000 gas ثم تتراجع المبادلة بعد 120,000 gas عند سعر فعلي 25 gwei. من دون قاعدة تسمح بالتراجع، تُستبعد الحزمة وفقا للسياسة المذكورة. وإذا سُمح للمبادلة بالتراجع وأُدرجت الحزمة، فقد يظل السماح قائما، وتكون حالة المبادلة status = 0، وتبلغ تكلفة الغاز (45,000 + 120,000) x 25 gwei = 0.004125 ETH.

المخاطر

  • تستخدم المحفظة سلسلة أو مقدم خدمة أو نقطة نهاية أو إصدار API غير صحيح.
  • تتعرض DNS أو TLS أو مفتاح API أو واجهة RPC للتصيد أو الاختراق.
  • يربط مقدم الخدمة عنوان IP والحساب والتوقيت وبيانات الحمولة الموقعة.
  • يسجل المرحل المعاملة الكاملة أو يسربها أو ينسخها أو يعيد نشرها.
  • تكشف تلميحات الخصوصية تجزئة أو محدد دالة أو عقدا أو بيانات استدعاء أو سجلات.
  • يوسع الوضع السريع أو التوزيع الواسع على منشئي الكتل مجموعة الثقة والإفصاح.
  • يحجب منشئ كتلة أو باحث تدفق الأوامر الخاص أو ينسخه أو يستغله.
  • تستخدم المحاكاة كتلة خاطئة أو تصبح قديمة قبل بناء الكتلة.
  • تتغير حالة العقد أو الأرصدة أو الأسعار أو الترتيب فتتراجع المعاملة.
  • يجعل الرسم الأساسي أو الحد الأقصى للرسم أو رسم الأولوية الحمولة غير جذابة أو غير صحيحة.
  • تمنع فجوة في الرقم التسلسلي أو معاملة خاصة معلقة غير ظاهرة معاملات الأرقام التالية.
  • يخسر الإلغاء أو الاستبدال ذي الرقم نفسه سباق التوقيت.
  • يعيد المسار الاحتياطي العام الصامت التعرض لـ MEV في مجمع المعاملات العام.
  • يُساء فهم الكتلة المستهدفة أو القصوى أو الطابع الزمني أو مدة الخدمة.
  • يترك ترتيب الحزمة أو السماح بالتراجع تغييرا غير مقصود في الحالة.
  • تمنع تغطية منشئ الكتلة أو المرحل أو المقترح، أو الرقابة، الإدراج.
  • يفوت انقطاع مقدم الخدمة أو تحديد المعدل أو التأخر نافذة الصلاحية.
  • يُخلط بين التوجيه الخاص وحماية الانزلاق أو أفضل تنفيذ.
  • تُطابق حالة الإيصال أو السجلات أو الأرصدة أو الرسوم أو الاستردادات بصورة خاطئة.
  • يغير إعادة التنظيم أو افتراض النهائية المبكر أو حدود منسق L2 الاستنتاج.

مفاهيم خاطئة شائعة

  • تعني كلمة خاصة أن المعاملة مشفرة ومجهولة وغير مرئية. قد يرى مقدم الخدمة والأطراف المختارة اللاحقة الحمولة كاملة أو التلميحات المفصح عنها.
  • تضمن واجهة RPC خاصة انعدام MEV وأفضل سعر. هي تغير التوزيع؛ وتظل الحدود التعاقدية ومقارنة الأسواق وجودة التنفيذ مهمة.
  • يعني نجاح RPC أو ظهور تجزئة المعاملة أنها أُدرجت ونجحت وأصبحت نهائية. الإقرار والإيصال وحالة EVM والنهائية حالات مختلفة.
  • الإلغاء أو الاستبدال ذي الرقم التسلسلي نفسه مضمون. تتسابق النسخ والإصدارات المتنافسة حتى يُدرج أحدها أو تنتهي جميعها.
  • المعاملة الخاصة حزمة ذرية تلقائيا. للمعاملات المنفردة وتنسيقات الحزم المتعددة قواعد مختلفة للترتيب والتراجع.

موضوعات ذات صلة

المصادر

التنقل

ابحث في الويكي...