---
title: "بيكترا ⁦7702⁩"
metaTitle: Pectra EIP-7702 guidelines
description: "تعرف على المزيد حول ⁦7702⁩ في إصدار بيكترا"
lang: ar
---

## الملخص
يحدد <span dir="ltr">EIP-7702</span> آلية لإضافة كود إلى حساب مملوك خارجياً (<span dir="ltr">EOA</span>). يتيح هذا المقترح للحسابات المملوكة خارجياً (<span dir="ltr">EOAs</span>)، وهي حسابات إيثيريوم القديمة، تلقي تحسينات وظيفية قصيرة الأجل، مما يزيد من قابلية استخدام التطبيقات. يتم ذلك عن طريق تعيين مؤشر إلى كود تم نشره بالفعل باستخدام نوع معاملة جديد: 4.

يقدم نوع المعاملة الجديد هذا قائمة تفويض. يتم تعريف كل مجموعة تفويض (<span dir="ltr">tuple</span>) في القائمة على النحو التالي:

```
[ chain_id, address, nonce, y_parity, r, s ]
```

**<span dir="ltr">address</span>** هو التفويض (رمز البايت المنشور بالفعل والذي سيتم استخدامه بواسطة الحساب المملوك خارجياً)
**<span dir="ltr">chain_id</span>** يقفل التفويض بسلسلة معينة (أو 0 لجميع السلاسل)
**<span dir="ltr">nonce</span>** يقفل التفويض برقم فريد لحساب معين
(**<span dir="ltr">y_parity, r, s</span>**) هو توقيع مجموعة التفويض، ويُعرّف كـ `keccak(0x05 || rlp ([chain_id ,address, nonce]))` بواسطة المفتاح الخاص للحساب المملوك خارجياً الذي ينطبق عليه التفويض (يُسمى أيضاً السلطة)

يمكن إعادة تعيين التفويض عن طريق التفويض إلى العنوان الفارغ (<span dir="ltr">null address</span>).

يحتفظ المفتاح الخاص للحساب المملوك خارجياً بالسيطرة الكاملة على الحساب بعد التفويض. على سبيل المثال، التفويض إلى <span dir="ltr">Safe</span> لا يجعل الحساب متعدد التوقيعات لأنه لا يزال هناك مفتاح واحد يمكنه تجاوز أي سياسة توقيع. للمضي قدماً، يجب على المطورين التصميم بافتراض أن أي مشارك في النظام يمكن أن يكون عقداً ذكياً. بالنسبة لمطوري العقود الذكية، لم يعد من الآمن افتراض أن `tx.origin` يشير إلى حساب مملوك خارجياً.
## أفضل الممارسات
**تجريد الحساب**: يجب أن يتوافق عقد التفويض مع معايير تجريد الحساب (<span dir="ltr">AA</span>) الأوسع في إيثيريوم لزيادة التوافق إلى أقصى حد. على وجه الخصوص، يجب أن يكون متوافقاً بشكل مثالي مع <span dir="ltr">ERC-4337</span>.

**تصميم غير مقيد بإذن ومقاوم للرقابة**: تقدر إيثيريوم المشاركة غير المقيدة بإذن. يجب ألا يقوم عقد التفويض ببرمجة ثابتة (<span dir="ltr">hard-code</span>) أو الاعتماد على أي مُرحّل (<span dir="ltr">relayer</span>) أو خدمة "موثوقة" واحدة. سيؤدي هذا إلى تعطيل الحساب إذا أصبح المُرحّل غير متصل بالإنترنت. يمكن استخدام ميزات مثل التجميع في دفعات (على سبيل المثال، <span dir="ltr">approve+transferFrom</span>) بواسطة الحساب المملوك خارجياً نفسه بدون مُرحّل. بالنسبة لمطوري التطبيقات الذين يرغبون في استخدام الميزات المتقدمة التي يتيحها <span dir="ltr">EIP-7702</span> (تجريد الغاز، عمليات السحب التي تحافظ على الخصوصية)، ستحتاج إلى مُرحّل. في حين أن هناك بنيات مختلفة للمُرحّلين، فإن توصيتنا هي استخدام [مُجمِّعات <span dir="ltr">ERC-4337</span>](https://www.erc4337.io/bundlers) التي تشير على الأقل إلى [نقطة الإدخال <span dir="ltr">0.8</span>](https://github.com/eth-infinitism/account-abstraction/releases/tag/v0.8.0) للأسباب التالية:

- توفر واجهات موحدة للترحيل
- تتضمن أنظمة مدير الدفع مدمجة
- تضمن التوافق المستقبلي
- يمكن أن تدعم مقاومة الرقابة من خلال [مجمع ذاكرة عام](https://notes.ethereum.org/@yoav/unified-erc-4337-mempool)
- يمكن أن تشترط استدعاء دالة التهيئة (`init`) فقط من [<span dir="ltr">EntryPoint</span>](https://github.com/eth-infinitism/account-abstraction/releases/tag/v0.8.0)

بمعنى آخر، يجب أن يكون أي شخص قادراً على العمل كراعٍ/مُرحّل للمعاملة طالما أنه يوفر التوقيع الصالح المطلوب أو عملية المستخدم من الحساب. يضمن هذا مقاومة الرقابة: إذا لم تكن هناك بنية تحتية مخصصة مطلوبة، فلا يمكن حظر معاملات المستخدم بشكل تعسفي بواسطة مُرحّل يتحكم في الوصول. على سبيل المثال، تعمل [مجموعة أدوات التفويض الخاصة بـ ميتاماسك](https://github.com/MetaMask/delegation-framework/releases/tag/v1.3.0) بشكل صريح مع أي مُجمِّع <span dir="ltr">ERC-4337</span> أو مدير الدفع على أي سلسلة، بدلاً من اشتراط خادم خاص بـ ميتاماسك.

**تكامل التطبيقات اللامركزية (<span dir="ltr">dapps</span>) عبر واجهات المحفظة**:

نظراً لأن المحافظ ستضع عقود تفويض محددة في القائمة البيضاء لـ <span dir="ltr">EIP-7702</span>، يجب ألا تتوقع التطبيقات اللامركزية (<span dir="ltr">dapps</span>) طلب تفويضات <span dir="ltr">EIP-7702</span> بشكل مباشر. بدلاً من ذلك، يجب أن يتم التكامل من خلال واجهات المحفظة الموحدة:

- **<span dir="ltr">ERC-5792</span> (`wallet_sendCalls`)**: يُمكّن التطبيقات اللامركزية (<span dir="ltr">dapps</span>) من طلب المحافظ لتنفيذ استدعاءات مجمعة، مما يسهل وظائف مثل التجميع في دفعات للمعاملات وتجريد الغاز.

- **<span dir="ltr">ERC-6900</span>**: يسمح للتطبيقات اللامركزية (<span dir="ltr">dapps</span>) بالاستفادة من قدرات الحساب الذكي المعيارية، مثل مفاتيح الجلسة واسترداد الحساب، من خلال وحدات تديرها المحفظة.

من خلال استخدام هذه الواجهات، يمكن للتطبيقات اللامركزية (<span dir="ltr">dapps</span>) الوصول إلى وظائف الحساب الذكي التي يوفرها <span dir="ltr">EIP-7702</span> دون إدارة التفويضات بشكل مباشر، مما يضمن التوافق والأمان عبر تطبيقات المحفظة المختلفة.

> ملاحظة: لا توجد طريقة موحدة للتطبيقات اللامركزية (<span dir="ltr">dapps</span>) لطلب توقيعات تفويض <span dir="ltr">EIP-7702</span> بشكل مباشر. يجب أن تعتمد التطبيقات اللامركزية (<span dir="ltr">dapps</span>) على واجهات محفظة محددة مثل <span dir="ltr">ERC-6900</span> للاستفادة من ميزات <span dir="ltr">EIP-7702</span>.

لمزيد من المعلومات:

- [مواصفات <span dir="ltr">ERC-5792</span>](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-5792.md)
- [مواصفات <span dir="ltr">ERC-6900</span>](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-6900.md)

**تجنب التقيد بمورد معين (<span dir="ltr">Vendor Lock-In</span>)**: تماشياً مع ما سبق، فإن التنفيذ الجيد يكون محايداً للموردين وقابلاً للتشغيل البيني. غالباً ما يعني هذا الالتزام بالمعايير الناشئة للحسابات الذكية. على سبيل المثال، يستخدم [الحساب المعياري الخاص بـ Alchemy](https://github.com/alchemyplatform/modular-account) معيار <span dir="ltr">ERC-6900</span> للحسابات الذكية المعيارية وهو مصمم مع وضع "الاستخدام القابل للتشغيل البيني غير المقيد بإذن" في الاعتبار.

**الحفاظ على الخصوصية**: في حين أن الخصوصية على السلسلة محدودة، يجب أن يسعى عقد التفويض إلى تقليل كشف البيانات وقابلية الربط. يمكن تحقيق ذلك من خلال دعم ميزات مثل مدفوعات الغاز برموز <span dir="ltr">ERC-20</span> (بحيث لا يحتاج المستخدمون إلى الاحتفاظ برصيد <span dir="ltr">ETH</span> عام، مما يحسن الخصوصية وتجربة المستخدم) ومفاتيح الجلسة لمرة واحدة (والتي تقلل الاعتماد على مفتاح واحد طويل الأجل). على سبيل المثال، يتيح <span dir="ltr">EIP-7702</span> دفع الغاز بالرموز عبر المعاملات المدعومة، وسيجعل التنفيذ الجيد من السهل دمج مديري الدفع هؤلاء دون تسريب معلومات أكثر من اللازم. بالإضافة إلى ذلك، فإن التفويض خارج السلسلة لبعض الموافقات (باستخدام التوقيعات التي يتم التحقق منها على السلسلة) يعني معاملات أقل على السلسلة باستخدام المفتاح الأساسي للمستخدم، مما يساعد في الخصوصية. الحسابات التي تتطلب استخدام مُرحّل تجبر المستخدمين على الكشف عن عناوين <span dir="ltr">IP</span> الخاصة بهم. تعمل مجمعات الذاكرة العامة (<span dir="ltr">PublicMempools</span>) على تحسين ذلك، فعندما تنتشر معاملة/عملية المستخدم عبر مجمع الذاكرة، لا يمكنك معرفة ما إذا كانت قد نشأت من عنوان <span dir="ltr">IP</span> الذي أرسلها، أو تم ترحيلها من خلاله عبر بروتوكول الند للند (<span dir="ltr">p2p</span>).

**قابلية التوسعة والأمان المعياري**: يجب أن تكون تطبيقات الحساب قابلة للتوسعة بحيث يمكن أن تتطور مع الميزات الجديدة والتحسينات الأمنية. قابلية الترقية ممكنة بطبيعتها مع <span dir="ltr">EIP-7702</span> (نظراً لأن الحساب المملوك خارجياً يمكنه دائماً التفويض إلى عقد جديد في المستقبل لترقية منطقه). إلى جانب قابلية الترقية، يسمح التصميم الجيد بالنمطية (<span dir="ltr">modularity</span>) - على سبيل المثال، وحدات إضافية لمخططات التوقيع المختلفة أو سياسات الإنفاق - دون الحاجة إلى إعادة النشر بالكامل. تعد مجموعة أدوات الحساب (<span dir="ltr">Account Kit</span>) الخاصة بـ Alchemy مثالاً رئيسياً، حيث تسمح للمطورين بتثبيت وحدات التحقق (لأنواع التوقيع المختلفة مثل <span dir="ltr">ECDSA</span> و <span dir="ltr">BLS</span> وما إلى ذلك) ووحدات التنفيذ للمنطق المخصص. لتحقيق قدر أكبر من المرونة والأمان في الحسابات التي تدعم <span dir="ltr">EIP-7702</span>، يُشجع المطورون على التفويض إلى عقد وكيل بدلاً من التفويض المباشر إلى تنفيذ محدد. يسمح هذا النهج بإجراء ترقيات سلسة ونمطية دون الحاجة إلى تفويضات <span dir="ltr">EIP-7702</span> إضافية لكل تغيير.

فوائد نمط الوكيل (<span dir="ltr">Proxy Pattern</span>):

- **قابلية الترقية**: تحديث منطق العقد عن طريق توجيه الوكيل إلى عقد تنفيذ جديد.

- **منطق تهيئة مخصص**: دمج دوال التهيئة داخل الوكيل لإعداد متغيرات الحالة الضرورية بشكل آمن.

على سبيل المثال، يوضح [<span dir="ltr">SafeEIP7702Proxy</span>](https://docs.safe.global/advanced/eip-7702/7702-safe) كيف يمكن استخدام وكيل لتهيئة وإدارة التفويضات بشكل آمن في الحسابات المتوافقة مع <span dir="ltr">EIP-7702</span>.

سلبيات نمط الوكيل:

- **الاعتماد على جهات خارجية**: يجب عليك الاعتماد على فريق خارجي لعدم الترقية إلى عقد غير آمن.
## اعتبارات أمنية {#security-considerations}

**واقي إعادة الدخول**: مع إدخال تفويض <span dir="ltr">EIP-7702</span>، يمكن لحساب المستخدم التبديل ديناميكياً بين حساب مملوك خارجياً (EOA) وعقد ذكي (SC). تتيح هذه المرونة للحساب بدء المعاملات وأن يكون هدفاً للاستدعاءات. نتيجة لذلك، فإن السيناريوهات التي يستدعي فيها الحساب نفسه ويقوم باستدعاءات خارجية سيكون فيها `msg.sender` مساوياً لـ `tx.origin`، مما يقوض بعض الافتراضات الأمنية التي كانت تعتمد سابقاً على أن `tx.origin` هو دائماً حساب مملوك خارجياً.

بالنسبة لمطوري العقود الذكية، لم يعد من الآمن افتراض أن `tx.origin` يشير إلى حساب مملوك خارجياً. وبالمثل، فإن استخدام `msg.sender == tx.origin` كإجراء وقائي ضد هجمات إعادة الدخول لم يعد استراتيجية موثوقة.

للمضي قدماً، يجب على المطورين التصميم بافتراض أن أي مشارك في النظام يمكن أن يكون عقداً ذكياً. بدلاً من ذلك، يمكنهم تنفيذ حماية صريحة من إعادة الدخول باستخدام واقي إعادة الدخول مع أنماط المُعدِّل (modifier) `nonReentrant`. نوصي باتباع مُعدِّل تم تدقيقه مثل [واقي إعادة الدخول من <span dir="ltr">Open Zeppelin</span>](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/utils/ReentrancyGuard.sol). يمكنهم أيضاً استخدام [متغير تخزين مؤقت (transient storage variable)](https://docs.soliditylang.org/en/latest/internals/layout_in_storage.html).

**اعتبارات أمان التهيئة**

يؤدي تنفيذ عقود تفويض <span dir="ltr">EIP-7702</span> إلى إدخال تحديات أمنية محددة، لا سيما فيما يتعلق بعملية التهيئة. تنشأ ثغرة أمنية حرجة عندما تقترن دالة التهيئة (`init`) ذرياً (atomically) بعملية التفويض. في مثل هذه الحالات، يمكن للمهاجم الاستباقي (frontrunner) اعتراض توقيع التفويض وتنفيذ دالة `init` بمعلمات معدلة، مما قد يؤدي إلى السيطرة على الحساب.

هذا الخطر وثيق الصلة بشكل خاص عند محاولة استخدام تطبيقات حساب العقد الذكي (SCA) الحالية مع <span dir="ltr">EIP-7702</span> دون تعديل آليات التهيئة الخاصة بها.

**حلول للتخفيف من ثغرات التهيئة**

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

- استخدام <span dir="ltr">EntryPoint</span> الخاص بـ <span dir="ltr">ERC-4337</span>  
  اشتراط استدعاء دالة التهيئة حصرياً من عقد <span dir="ltr">EntryPoint</span> الخاص بـ <span dir="ltr">ERC-4337</span>. تستفيد هذه الطريقة من إطار عمل التحقق والتنفيذ الموحد الذي يوفره <span dir="ltr">ERC-4337</span>، مما يضيف طبقة إضافية من الأمان إلى عملية التهيئة.  
  _(انظر: [مستندات <span dir="ltr">Safe</span>](https://docs.safe.global/advanced/eip-7702/7702-safe))_

من خلال اعتماد هذه الحلول، يمكن للمطورين تعزيز أمان عقود تفويض <span dir="ltr">EIP-7702</span>، والحماية من هجمات الاستباق (frontrunning) المحتملة أثناء مرحلة التهيئة.

**تعارضات التخزين**: لا يؤدي تفويض الكود إلى مسح التخزين الحالي. عند الترحيل من عقد تفويض إلى آخر، تظل البيانات المتبقية من العقد السابق. إذا كان العقد الجديد يستخدم نفس خانات التخزين ولكنه يفسرها بشكل مختلف، فقد يتسبب ذلك في سلوك غير مقصود. على سبيل المثال، إذا كان التفويض الأولي لعقد تمثل فيه خانة التخزين `bool`، والتفويض اللاحق لعقد تمثل فيه نفس الخانة `uint`، فإن عدم التطابق يمكن أن يؤدي إلى نتائج غير متوقعة.

**مخاطر التصيد الاحتيالي**: مع تنفيذ تفويض <span dir="ltr">EIP-7702</span>، قد يتم التحكم في الأصول الموجودة في حساب المستخدم بالكامل بواسطة العقود الذكية. إذا قام المستخدم بتفويض حسابه دون علمه إلى عقد ضار، فيمكن للمهاجم بسهولة السيطرة وسرقة الأموال. عند استخدام `chain_id=0` يتم تطبيق التفويض على جميع معرفات السلاسل. قم بالتفويض فقط إلى عقد غير قابل للتغيير (لا تفوض أبداً إلى وكيل)، وفقط للعقود التي تم نشرها باستخدام <span dir="ltr">CREATE2</span> (مع كود التهيئة القياسي - لا توجد عقود متحولة) حتى لا يتمكن الناشر من نشر شيء مختلف على نفس العنوان في مكان آخر. خلاف ذلك، فإن تفويضك يعرض حسابك للخطر على جميع سلاسل <span dir="ltr">EVM</span> الأخرى.

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

**الحد الأدنى من السطح الموثوق والأمان**: مع توفير المرونة، يجب أن يحافظ عقد التفويض على منطقه الأساسي في حده الأدنى وقابلاً للتدقيق. العقد هو في الواقع امتداد للحساب المملوك خارجياً للمستخدم، لذا فإن أي خلل يمكن أن يكون كارثياً. يجب أن تتبع التطبيقات أفضل الممارسات من مجتمع أمان العقود الذكية. على سبيل المثال، يجب تأمين دوال المُنشئ (constructor) أو المُهيئ (initializer) بعناية - كما أبرزت Alchemy، إذا تم استخدام نمط وكيل ضمن <span dir="ltr">7702</span>، فإن المُهيئ غير المحمي يمكن أن يسمح للمهاجم بالاستيلاء على الحساب. يجب أن تهدف الفرق إلى إبقاء الكود على السلسلة بسيطاً: عقد <span dir="ltr">7702</span> الخاص بـ <span dir="ltr">Ambire</span> يتكون من حوالي <span dir="ltr">200</span> سطر فقط من Solidity، مما يقلل من التعقيد عمداً لتقليل الأخطاء. يجب إيجاد توازن بين المنطق الغني بالميزات والبساطة التي تسهل التدقيق.

### تطبيقات معروفة
نظراً لطبيعة <span dir="ltr">EIP-7702</span>، يُوصى بأن تتوخى المحافظ الحذر عند مساعدة المستخدمين في التفويض إلى عقد تابع لجهة خارجية. فيما يلي مجموعة من التطبيقات المعروفة التي تم تدقيقها:

| عنوان العقد | المصدر | عمليات التدقيق |
| ------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <span dir="ltr">0x000000009B1D0aF20D8C6d0A44e162d11F9b8f00</span> | [<span dir="ltr">Uniswap/calibur</span>](https://github.com/Uniswap/calibur)                                                                                      | [عمليات التدقيق](https://github.com/Uniswap/calibur/tree/main/audits)                                                                                                 |
| <span dir="ltr">0x69007702764179f14F51cdce752f4f775d74E139</span> | [<span dir="ltr">alchemyplatform/modular-account</span>](https://github.com/alchemyplatform/modular-account)                                                      | [عمليات التدقيق](https://github.com/alchemyplatform/modular-account/tree/develop/audits)                                                                              |
| <span dir="ltr">0x5A7FC11397E9a8AD41BF10bf13F22B0a63f96f6d</span> | [<span dir="ltr">AmbireTech/ambire-common</span>](https://github.com/AmbireTech/ambire-common/blob/feature/eip-7702/contracts/AmbireAccount7702.sol)              | [عمليات التدقيق](https://github.com/AmbireTech/ambire-common/tree/feature/eip-7702/audits)                                                                            |
| <span dir="ltr">0x63c0c19a282a1b52b07dd5a65b58948a07dae32b</span> | [<span dir="ltr">MetaMask/delegation-framework</span>](https://github.com/MetaMask/delegation-framework)                                                          | [عمليات التدقيق](https://github.com/MetaMask/delegation-framework/tree/main/audits)                                                                                   |
| <span dir="ltr">0x4Cd241E8d1510e30b2076397afc7508Ae59C66c9</span> | [فريق تجريد الحساب (<span dir="ltr">AA</span>) في مؤسسة إيثيريوم](https://github.com/eth-infinitism/account-abstraction/blob/develop/contracts/accounts/Simple7702Account.sol) | [عمليات التدقيق](https://github.com/eth-infinitism/account-abstraction/blob/develop/audits/SpearBit%20Account%20Abstraction%20Security%20Review%20-%20Mar%202025.pdf) |
| <span dir="ltr">0x17c11FDdADac2b341F2455aFe988fec4c3ba26e3</span> | [<span dir="ltr">Luganodes/Pectra-Batch-Contract</span>](https://github.com/Luganodes/Pectra-Batch-Contract)                                                      | [عمليات التدقيق](https://certificate.quantstamp.com/full/luganodes-pectra-batch-contract/23f0765f-969a-4798-9edd-188d276c4a2b/index.html)                             |
## إرشادات المحفظة العتادية {#hardware-wallet-guidelines}

يجب ألا تعرض المحافظ العتادية تفويضاً تعسفياً. الإجماع في مجال المحفظة العتادية هو استخدام قائمة بعقود المفوضين الموثوقة. نقترح السماح بالتطبيقات المعروفة المذكورة أعلاه والنظر في التطبيقات الأخرى على أساس كل حالة على حدة. نظراً لأن تفويض الحساب المملوك خارجياً الخاص بك إلى عقد يمنح السيطرة على جميع الأصول، يجب أن تكون المحافظ العتادية حذرة في الطريقة التي تنفذ بها <span dir="ltr">7702</span>.

### سيناريوهات التكامل للتطبيقات المرافقة {#integration-scenarios-for-companion-apps}

#### الكسول (Lazy) {#lazy}

نظراً لأن الحساب المملوك خارجياً لا يزال يعمل كالمعتاد، فلا يوجد شيء للقيام به.

ملاحظة: يمكن رفض بعض الأصول تلقائياً بواسطة كود التفويض، مثل رموز <span dir="ltr">ERC-1155</span> غير القابلة للاستبدال (NFTs)، ويجب أن يكون الدعم على دراية بذلك.

#### المدرك (Aware) {#aware}

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

#### التفويض الشائع
يضع مزود الأجهزة عقود التفويض المعروفة في القائمة البيضاء وينفذ دعمها في البرنامج المرافق. يُوصى باختيار عقد يدعم <span dir="ltr">ERC-4337</span> بالكامل.

سيتم التعامل مع الحسابات المملوكة خارجياً (<span dir="ltr">EOAs</span>) المفوضة إلى عقد مختلف كحسابات مملوكة خارجياً قياسية.
#### التفويض المخصص
ينفذ مزود الأجهزة عقد التفويض الخاص به ويضيفه إلى القوائم وينفذ دعمه في البرنامج المرافق. يُوصى ببناء عقد يدعم <span dir="ltr">ERC-4337</span> بالكامل.

سيتم التعامل مع الحسابات المملوكة خارجياً (<span dir="ltr">EOAs</span>) المفوضة إلى عقد مختلف كحسابات مملوكة خارجياً قياسية.
