در حملات back running با استفاده از اطلاعات مربوط به یک تراکنش برای کسب سود استفاده می شود. این حمله در شبکه های مالی غیر متمرکز ایجاد می شود و ازآنجایی که Defi در چند سال اخیر رشد چشمگیری داشته، شاهد رشد این حملات بوده ایم، لذا بهتر است در مورد حملات بک رانینگ بیشتر بدانیم. در این بخش تفاوت فرانت و بک رانینگ و انواع این حملات را برای شما توضیح دادیم. با ما همراه باشید.
آنچه قرار است بخوانید
بک رانینگ چیست؟
Backrunning، یکی از انواع MEV (حداکثر ارزش قابل استخراج) است که میتواند باعث از دست دادن فرصتهای سود بالقوه برای معاملهگران شود. در واقع، آن عملی است که شامل اجرای فوری یک تراکنش استراتژیک پس از یک تراکنش با ارزش بالا است. با انجام این کار، معامله معکوس از فرصتهای آربیتراژ باقیمانده از تأثیر قیمت تراکنش اولیه استفاده میکند.
در حملات Backrunning، از اطلاعات موجود در mempool اتریوم به عنوان یک منبع تاکتیکی استفاده میشود. Mempool منطقهای است که تمام تراکنشهایی که در حال انتظار برای تایید در شبکه اتریوم هستند را در بر میگیرد.با استفاده از این منبع، معاملهگران میتوانند بلافاصله پس از تراکنش با ارزش بالا، معاملهای را انجام بدهند و سود ببرند.
سه نوع از MEV وجود دارد که شامل: فرانت رانینگ, بک رانینگ, حملات ساندویچی می شود.
در واقع، بک رانینگ در حالتی باعث ضرر کاربران می شود که با یک حمله پیشرو ترکیب شود که به بدترین نوع MEV، یعنی حمله ساندویچی، منجر میشود.در یک حمله فرانت رانینگ، شما میدانید که شخصی میخواهد یک ارز دیجیتال را خریداری کند و شما آن را قبل از او خریداری کنید و با قیمت بالاتری به فروش برسانید.
با توجه به اینکه ماینرها تراکنشهایی که مبلغ کارمزد بالاتری دارند را در اولویت قرار میدهند، ارز دیجیتال مورد نظر با بالاترین قیمت پیشنهادی خریداری میشود. تراکنشهایی با قیمت پایینتر یا حتی تراکنشهایی که کارمزد پایینتری داشته باشند ممکن است حذف شوند یا باعث ضرر برای فروشنده شوند. به همین دلیل، تراکنشهای پیشرو در شبکه محدود هستند. در Backrunning، شما تراکنش مورد نظر خود را فوراً پس از خرید ارز دیجیتال دیگری انجام میدهید.
بک رانینگ چگونه کار میکند؟
عاملانی که به طور رایج در بکرانینگ دیده میشوند، رباتهای MEV هستند که به منظور نظارت بر تراکنشهای معلق در شبکه اتریوم برنامهریزی شدهاند.این رباتها معاملات استراتژیک را مستقیماً پس از انجام معاملات موجود در شبکه قرار میدهند تا برای خود آربیتراژ به وجود آورند و از تغییر قیمت داراییها سود ببرند.
برای این فرآیند، از مکانیسمهای سازندگان بازار خودکار (AMM) استفاده میشود. هر بار که یک معامله بزرگ انجام میشود، تعادل در استخرهای نقدینگی AMM برهم میزند و باعث میشود قیمت دارایی فروخته شده کاهش یابد و قیمت دارایی خریداری شده افزایش یابد.این عدم تعادل قیمت، شرایطی را برای آربیتراژی فراهم میکند که رباتهای MEV با انجام معاملاتی درست کنند و در این فرآیند سودآوری را دنبال میکنند.
انواع بک رانینگ
- ثبت سفارش پس از یک تراکنش فروش
- Rebase model
- ثبت سفارش پس از لیکوئید شدن قرارداد
منحنی اتصال چیست و چه ارتباطی با بک رانینگ دارد؟
بک رانینگ در حالی رخ میدهد که یک فرستنده تراکنش تصمیم میگیرد تراکنش خود را بصورت فوری پس از یک “تراکنش هدف” ناکام سفارش دهد.برای مثال، رباتی پیدرپی لیستهای جدیدی از توکنها را اجرا میکند. این ربات برای جفتهای جدیدی که در Uniswap ایجاد میشوند نظارت میکند. در صورتی که یک جفت جدید پیدا شود، ربات فوراً پس از نفوذ اولیه یک تراکنش خرید را انجام میدهد.
ربات بصورت مداوم وارد میشود و تا حد امکان توکنها را خریداری میکند (اما نه همه آنها، زیرا بهاین منظور نیاز به فرصت دیگری برای خرید توکنها وجود دارد). سپس ربات منتظر میماند تا سایر معاملهگران توکن را بهطوری که قیمت آن بالاتر رود، خریداری کنند.در ادامه، ربات تراکنش Uniswap را انجام میدهد و با قیمت بالاتر توکنها را به فروش میرساند. بهطور کلی، استراتژی کلیدی در اینجا این است که باید اولین شخص باشید که توکنها را خریداری میکنید، اما فقط بعد از ارائه توکن.
به منظور افزایش فرصت استخراج بلافاصله پس از هدف، یک بک رانر معمولی تعداد زیادی از تراکنشهای همانند را با قیمت گاز مشابه با تراکنش هدف ارسال میکند. گاهی اوقات از حسابهای مختلف نیز استفاده میکند.
منحنی اتصال (Bonding Curve)، منحنی ریاضی است که رابطه بین قیمت و عرضه یک دارایی خاص را تعریف میکند. در صورتی که تعداد محدودی از دارایی در دسترس باشد و با هر خریداری از آن دارایی، میزان عرضه آن در گردش کاهش مییابد، قیمت آن دارایی به علت وجود تورم افزایش خواهد یافت و فرد بعدی که میخواهد آن دارایی را خریداری کند، باید قیمتی بیشتر از قبلی برای هر واحد دارایی پرداخت کند.
مثالی از منحنی اتصال:
یکی از نمونههای منحنی پیوند در دنیای ارزهای دیجیتال، پروتکل Bancor است. پروتکل بنکور به لطف یک مکانیسم منحنی پیوند خاص، توکن های هوشمندی را که دارای نقدینگی داخلی هستند، امکان پذیر می کند.
منحنی پیوند بانکور به گونه ای طراحی شده است که نقدینگی مستمر برای یک توکن فراهم کند. هنگامی که توکن برای اولین بار ایجاد می شود، ذخیره ای از یک ارز دیجیتال موجود (معمولا اتریوم) در یک قرارداد هوشمند سپرده می شود. ارزش ذخیره قیمت اولیه توکن جدید ایجاد شده را تعیین می کند.
همانطور که مردم توکن را از منحنی پیوند می خرند، قیمت به تدریج بر اساس یک فرمول ریاضی از پیش تعیین شده افزایش می یابد. با خرید توکن های بیشتر، ذخیره کاهش می یابد و به دلیل کاهش عرضه، قیمت را بالا می برد. برعکس، وقتی مردم توکن را دوباره به منحنی می فروشند، عرضه افزایش می یابد و منجر به کاهش قیمت می شود.
این مکانیسم منحنی پیوند تضمین میکند که توکن دارای قیمتی است که دائماً بر اساس عرضه و تقاضای آن تنظیم میشود. این امکان را به کاربران می دهد تا در هر زمان به طور مستقیم از منحنی پیوند، توکن را بخرند یا بفروشند، و نیازی به دفتر سفارش سنتی یا تکیه بر ارائه دهندگان نقدینگی خارجی را از بین می برد.
پروتکل Bancor نمونهای از این است که چگونه یک منحنی پیوند میتواند نقدینگی مستمر برای یک توکن فراهم کند و آن را به گزینهای جذاب برای صرافیهای غیرمتمرکز و سایر برنامهها در فضای ارزهای دیجیتال تبدیل کند.
معایب بک رانینگ (Back Running) چیست؟
حمله بک رانینگ یکی از حملات MEV است که برای معاملهگران پیشرفته ریسکها و مشکلاتی را به دنبال دارد. در این روش، معاملهگرانی که به فرصتهای آربیتراژ علاقهمند هستند، قادر به انجام معاملات خود نیستند و باید پول خود را روی میز بگذارند.
این هزینه فرصت به ویژه بر معاملهگران حرفهای تأثیر میگذارد که در غیر این صورت میتوانند از فرصتهای آربیتراژ بهرهبرداری کنند. اما معاملهگران روزمره معمولاً به حدی پیچیده نیستند که نتوانند معاملات خود را مدیریت کنند، بنابراین انجام حمله بک رانینگ برای آنها نتایجی قابل اندازهگیری بدتر به همراه ندارد.با این حال، MEV Blocker میتواند به تمامی افرادی که در اتریوم معامله میکنند، کمک کند تا بهطور خودکار فرصتهای آربیتراژ را کشف کرده و بهرهبرداری کنند.
حمله بک رانینگ میتواند اثرات منفی بر صنعت بلاکچین داشته باشد. برخی از این اثرات عبارتاند از:
1. ناپایداری و نامتعادل شدن قیمت داراییهای دیجیتال؛ زیرا این حمله تقاضا و عرضه را مصنوعی تغییر میدهد و میتواند به ایجاد حباب و ریزشهای قیمتی منجر شود.
2. از دست دادن اعتماد کاربران به صرافیهای غیرمتمرکز و پلتفرمهای دیفای؛ زیرا این حمله باعث میشود این صرافیها و پلتفرمها قادر به ارائه خدمات عادلانه و شفاف نباشند و تحتتأثیر افرادی که از اطلاعات نامتقارن و تاخیرهای شبکه سوءاستفاده میکنند، قرار بگیرند.
3. افزایش تراکنشهای در انتظار تأیید، ایجاد شلوغی در شبکههای بلاکچین و کاهش سرعت و کارایی آنها؛ همچنین ممکن است باعث افزایش گس فی نیز شود.
چگونه در بک رانینگ شانس موفقیت بیشتری داشته باشیم؟
در حملات بک رانینگ، به منظور افزایش شانس موفقیت، میتوان از روشهای زیر استفاده کرد:
1. ارسال تراکنشهای با کارمزد بالا: ماینرها تمایل دارند تراکنشهایی را با کارمزد بیشتر انجام دهند، بنابراین ارسال تراکنش با کارمزد بالا میتواند باعث ترجیح این تراکنش بر سایر تراکنشها توسط ماینرها شود.
2. تمرکز بر تعداد تراکنشها بهجای مبلغ: به جای انتقال یک مقدار بزرگ، میتوان تعداد زیادی تراکنش با مقادیر کوچکتر ارسال کرد. این کار باعث میشود تراکنشها با هم رقابت کنند و احتمال برنده شدن یکی از آنها افزایش یابد.
3. استفاده از آدرسهای چندگانه: با ایجاد چند آدرس، میتوان چندین تراکنش با نانسهای متفاوت همزمان ارسال کرد. این کار ممکن میشود با ایجاد حسابهای جدید در یک ورژن که نانس آن صفر است و تراکنشها به ترتیب Nonce ارسال میشوند.
4. استفاده از ابزارهای خاص: برخی ابزارها و نرمافزارها میتوانند به شما کمک کنند تا به راحتی تعداد زیادی تراکنش را همزمان ارسال کنید و شانس برنده شدن را افزایش دهید. این ابزارها میتوانند امکان ایجاد تراکنشهای متعدد را در یک تراکنش بگنجانند یا از آدرسهای جعلی استفاده کنند.
اما باید توجه داشت که استفاده از روشهای غیرمجاز و تقلبی در حملات بک رانینگ باعث ضرر و زیان بزرگی برای بستر اتریوم و دیگر کاربران میشود. بنابراین قبل از اقدام به انجام هر نوع حمله، باید به اخلاقیات و قوانین منطقه خود پایبندی کنید.
تفاوت بک رانینگ و فرانت رانینگ
در بازار ارزهای دیجیتال و بلاک چین، دو نوع حمله مالی وجود دارد که از اطلاعات نامتقارن و تاخیرهای شبکه برای کسب سود غیرقانونی استفاده میکنند. این حملات عبارتند از: بک رانینگ و فرانت رانینگ.در حمله بک رانینگ، مهاجم تراکنشی را بعد از تراکنش هدف انجام میدهد. این امر به مهاجم اجازه میدهد تا از اطلاعات مربوط به تراکنش هدف برای کسب سود استفاده کند.
به عنوان مثال، فرض کنید فردی قصد دارد 10 بیت کوین را با قیمت 10000 دلار خریداری کند. مهاجم با استفاده از حمله بک رانینگ، ابتدا تراکنشی را برای خرید 10 بیت کوین با قیمت 9000 دلار ثبت میکند. سپس، منتظر میماند تا تراکنش هدف انجام شود. پس از انجام تراکنش هدف، مهاجم تراکنش خود را با قیمت بالاتر، یعنی 10000 دلار، تکمیل میکند.در این مثال، مهاجم از اطلاعات مربوط به تراکنش هدف برای کسب سود 1000 دلاری استفاده کرده است.اما در حمله فرانت رانینگ، مهاجم تراکنشی را قبل از تراکنش هدف انجام میدهد. این امر به مهاجم اجازه میدهد تا از تغییر قیمت داراییها برای کسب سود استفاده کند.
جمع بندی
بک رانینگ یا “Back Running” یک روش مورد استفاده در راه اندازی یک سیستم عامل است که به ما امکان میدهد بتوانیم همزمان با راه اندازی سیستم، روند اتصال و ارتباط با سایر سیستمها را آغاز کنیم. با استفاده از این روش، میتوانیم برخی از موارد را که قبل از اتمام روند راه اندازی سیستم لازم است انجام دهیم را در همان حین انجام دهیم، بدون اینکه بخواهیم منتظر تکمیل این روند باشیم.
علاوه بر این، بک رانینگ نیز با فرانت رانینگ تفاوت دارد. در فرانت رانینگ، کاربران میتوانند با استفاده از راهنماییهای برنامه کمک به بهبود عملکرد سیستم کنند، در حالی که در بک رانینگ، این امکان وجود ندارد و تنها توسعهدهندگان و توسعهدهندگان سیستم میتوانند به سیستم دسترسی داشته باشند.
انواع مختلف بک رانینگ نیز وجود دارد، که هر یک برای زمینههای خاص استفاده میشوند. بهعنوان مثال، بک رانینگ توزیع شده مناسب برای سیستمهایی است که نیازمند ارتباط با سایر سیستمها در شبکه هستند.
منحنی اتصال یکی از مفاصل اصلی بک رانینگ است. این منحنی نشاندهنده روند اتصال و ارتباط با سیستمهای دیگر است. منحنی اتصال اطلاعاتی ارائه میدهد که ما را در تصمیمگیریهای مربوط به بک رانینگ یاری میکند.
هرچند بک رانینگ دارای مزایا است، اما نیز معایب خود را دارد. بهعنوان مثال، احتمال خطا در این روش بیشتر از فرآیند راه اندازی معمولی است و ممکن است باعث بروز اشکال در سیستم شود.برای داشتن شانس موفقیت بیشتر در استفاده از بک رانینگ، باید به جزئیات مربوط به محیط و سیستم توجه کنیم و آنها را به درستی مدیریت کنیم. همچنین، راهنمایی و کمک به توسعهدهندگان سیستم همچنین میتواند در بهبود عملکرد دستیابی به موفقیت بک رانینگ مؤثر باشد.