حمله‌ دوبار خرج کردن (Double spending attack)

حمله‌ دوبار خرج کردن (Double spending attack)

حمله دو بار خرج کردن مسئله ای منحصر به فرد برای ارزهای دیجیتال است که در آن یک کاربر می تواند بیش از یک بار یک دارایی دیجیتال را خرج کند. این امکان پذیر است زیرا کاربران نهایی می توانند اطلاعات دیجیتالی را به راحتی تکثیر کنند. بیت کوین با مشکل مقابله با هزینه دو برابر روبرو بوده است، اما همه ارزهای رمزنگاری شده از همان الگوریتم اجماع استفاده نمی کنند. بنابراین، فقط به دلیل اینکه بیت کوین کاربران را در برابر حملات مضاعف حفظ کرده است، این بدان معنا نیست که تمام معاملات شما ایمن باشد. در اینجا همه شما باید درباره هزینه های مضاعف بدانید و اینکه چگونه یک حمله دو بار خرج کردن می تواند روی رمزنگاری تأثیر بگذارد. در این مقاله در مورد این مساله توضیح میدهیم پس برای آگاهی از چگونگی آن و راه های مقابله با آن با ما همراه باشید.

حمله دو بار خرج کردن چیست؟

حمله دو بار خرج کردن بدیهی است که در مورد پول فیات امکا پذیر نیست. برای مثال، وقتی 5 دلار برای تهیه یک قهوه خرج می کنید، پول فیزیکی خرج میکنید و بار دیگر نمی توانید از آن استفاده کنید. هنگام استفاده از کارتهای اعتباری، شخص ثالث – بانک – تضمین می کند که پول حاصل از حساب شما به حساب فروشنده منتقل می شود. به این ترتیب، دیگر به آن وجوه دسترسی ندارید و نمی توانید برای بار دوم از آنها استفاده کنید. با این حال، همه چیز اینگونه نیست. رمز ارز یک پرونده دیجیتالی است که کپی کردن آن بسیار آسان است. از آنجا که هیچ مرجع متمرکز برای کنترل معاملات وجود ندارد، کاربران می توانند فایلهای دیجیتال را راحت تر تکرار کرده و از آنها برای خرید استفاده کنند. دارنده یک کپی از سکه دیجیتال را تهیه کرده و از آن برای انجام معامله دیگر هنگام نگه داشتن اصل در یک کیف پول استفاده می کند.

چگونه بیت کوین مانع از هزینه های مضاعف می شود؟

بلاک چین بیت کوین پروتکلی را برای مقابله با حملات مضاعف با الهام از سیستم نقدی سنتی پیاده سازی کرده است. باید بگوییم که یک دارنده قصد دارد از یک بیت کوین برای خریدهای متعدد برای سایر بازرگانان استفاده کند. همه معاملات به استخر منتقل میشوند که باید منتظر تأیید باشند. اولین معامله معتبر است و در بلاک چین منتشر می شود. با اضافه شدن هر بلاک جدید به دفترچه، این عملیات تأییدهای بیشتری دریافت می کند. معامله دوم با استفاده از همان ورودی تأیید نمی شود زیرا ماینرها می توانند حمله دو برابر را براساس سوابق قبلی شناسایی کنند. بنابراین اگر دو مورد از این معاملات به طور همزمان از استخر کشیده شوند چه اتفاقی می افتد؟ ماینرها تنها با تعداد بیشتر تأیید اعتبار یکی را تأیید می کنند و این تنها معامله ای است که در بلاک چین ثبت شده است.

چه باید کرد؟

تاجران پذیرش پرداخت در بیت کوین باید قبل از انتشار کالا یا خدمات منتظر تأیید باشند تا از کلاهبرداری خودداری کنند. از این طریق فروشندگان این ضمانت را دارند که تراکنش غیرقابل برگشت است.اگر یک نسخه دیجیتالی از بیت کوین خود تهیه کرده اید و سعی کرده اید از آن استفاده کنید، نمی توانید در آینده بودجه پس انداز شده در کیف پول خود را خرج کنید. ماینرها از ریاضیات پیچیده و قدرت زیادی برای تجزیه و تحلیل سوابق قبلی و جلوگیری از هزینه های مضاعف استفاده می کنند. با کپی که قبلاً به عنوان بلاک چین خرج شده است، ثبت شده است، استفاده از سکه دیجیتالی بار دوم غیرممکن است.

انواع حمله دو بار خرج کردن

در حالی که همه ارزهای رمزنگاری از مکانیزم تأیید و اجماع اثبات کار استفاده نمی کنند، بسیاری از آنها می توانند با هزینه های مضاعف مقابله کنند. با این وجود، هنوز هم از نظر تئوریکی امکان حمله دو بار خرج کردن وجود دارد.

Race Attack

هنگامی امکان پذیر می شود که تجار قبل از دریافت تأییدیه بلاک در معامله، پرداخت بپردازند. کاربر نهایی تقریباً دو معامله را ارسال می کند، یکی به بازرگان و دیگری برگشت به کیف پول دیگر. در این حالت، ماینرها می توانند عملیات را به سمت کیف پول تأیید کنند، این بدان معنی است که تاجر وجوه را دریافت نمی کند.

Finney Attack

حمله فینی همچنین اتفاق می افتد که تاجر منتظر تأیید معامله نباشد. در این حالت، یک ماینر وجهی را از یک کیف پول به دیگری منتقل می کند اما بلافاصله این اعتبار را تأیید نمی کند. سپس او از کیف پول منبع برای خرید استفاده می کند. پس از تنظیم معامله دوم، ماینر بلاک قبلی را که مین گذاری شده است، پخش می کند، که شامل اولین معامله نیز می شود.

حمله 51%

حمله 51٪ در این شرایط حمله اکثریت خوانده می شود زیرا به مهاجمین نیاز دارد تا بیش از نیمی از میزان هش شبکه را کنترل کند. این ممکن است در صورتی امکان پذیر باشد که یک ماینر یا گروهی از ماینران بتوانند سریعتر از سایر کاربران دیگر در یک شبکه، بلاک ایجاد کنند. کلیه الگوریتم های اجماع برای از بین بردن خطرات حمله 51٪ ساخته شده اند.

The takeaway

حمله دوبار خرج کردن برای کاربران رمزنگاری خطرناک است. بازرگانان و سایر کاربران کلاهبرداری و از جیب خارج می شوند و اعتبار شبکه آسیب می بیند. رمزنگاری که نمی تواند با دو برابر کردن مقابله کند، باید ابتدا با تورم و سپس با عدم اعتماد مقابله کند. این به ناچار به یک شبکه بی ارزش منتهی می شود.

برخورد با این نوع حملات

تصور کنید که 1 BTC دارید و سعی می کنید دو بار در دو تراکنش جداگانه هزینه کنید. می توانید با ارسال همان BTC به دو آدرس کیف پول بیت کوین جداگانه، این کار را انجام دهید. هر دو این معاملات سپس به حوالی معاملات تأیید نشده وارد می شوند. اولین معامله از طریق مکانیسم تأیید تأیید می شود و سپس در بلاک بعدی تأیید می شود. با این حال، معامله دوم توسط فرآیند تأیید به عنوان نامعتبر شناخته می شود و تأیید نمی شود. اگر هر دو تراکنش برای تأیید همزمان از استخر کشیده شوند، معامله با بیشترین تعداد تأیید در بلاک چین درج خواهد شد، در حالی که مورد دیگر رد خواهد شد. در حالی که این مسئله به طور مؤثر با مسئله هزینه های مضاعف سروکار دارد، بدون مشکلات آن نیست.

انواع آسیب پذیری ها

آسیب پذیری های دیگری نیز در این سیستم وجود دارد که می تواند به حملات مضاعف بپردازد. به عنوان مثال، اگر یک مهاجم به گونه ای قادر به کنترل حداقل 51٪ از قدرت شبکه باشد، می تواند هزینه های مضاعف را مرتکب شود. اگر یک مهاجمان به نوعی قادر به کنترل این قدرت محاسباتی بسیار قدرتمند باشد، می توانست معاملات را معکوس کند و یک blockchain جداگانه و خصوصی ایجاد کند. با این حال، رشد سریع بیت کوین تقریباً تضمین کرده است که این نوع حمله غیرممکن است.

کار و استخراج

حالا بیایید کمی فنی تر شویم. روشی که کاربران می توانند دستکاری هایی نظیر تلاش برای دو بار خرج کردن در تمرین را تشخیص دهند، از طریق هش ها، تعداد رشته های طولانی است که به عنوان اثبات کار (PoW) است. مجموعه داده معینی را از طریق یک تابع هش قرار دهید (بیت کوین از SHA-256 استفاده می کند) و این تنها یک هش ایجاد می کند. با توجه به “اثر بهمن”، با این حال، حتی تغییر جزئی در هر بخشی از داده های اصلی منجر به یک هش کاملاً غیرقابل تشخیص خواهد شد. اندازه مجموعه داده های اصلی هر اندازه که باشد، هش حاصل از یک عملکرد خاص به همان طول خواهد بود. هش یک کارکرد یک طرفه است: برای بدست آوردن داده های اصلی نمی توان از آن استفاده کرد فقط برای بررسی اینکه داده های ایجاد شده هش با داده های اصلی مطابقت دارد.

ایجاد هش

ایجاد هر هشی برای مجموعه ای از معاملات بیت کوین برای یک کامپیوتر مدرن بی اهمیت خواهد بود، بنابراین برای تبدیل این فرآیند به “کار”، شبکه بیت کوین سطح خاصی از “مشکل” را تعیین می کند. این به گونه ای تنظیم شده است که با ایجاد یک هش معتبر – تقریباً هر 10 دقیقه یک بلاک جدید “استخراج” شود – به بلاک چین اضافه شود. تنظیم مشکل با تعیین “هدف” برای هش انجام می شود: هرچه هدف پایین تر باشد، مجموعه هش های معتبر کوچکتر است و تولید یکی از آنها دشوارتر است.
از آنجا که مجموعه معینی از داده ها فقط می توانند یک هش ایجاد کنند، چگونه ماینرها مطمئن می شوند که یک هش زیر هدف تولید می کنند؟
آنها ورودی را با اضافه کردن یک عدد صحیح، به نام nonce (یک بار استفاده شده) تغییر می دهند. پس از یافتن یک هش معتبر، به شبکه پخش می شود و بلاک به بلاک چین اضافه می شود. استخراج کردن یک فرآیند رقابتی است، اما بیشتر از یک مسابقه شبیه له قرعه کشی است. بطور متوسط ، هر 10 دقیقه یکبار اثبات قابل قبول کار تولید می کند. ماینران برای افزایش شانس بلاک های ماینر در کنار هم جمع می شوند که این امر باعث ایجاد هزینه معاملات و در مدت زمان محدود پاداش بیت کوین های تازه ایجاد شده میشود.

آخرین مطالب وبلاگ
دریافت ماینر یک ساعته رایگان
دریافت ماینر یک ساعته رایگان

آموزش ثبت نام در سامانه آی ماینر و دریافت ماینر یک ساعته رایگان ماینر یک...

خرید ماینر بیت کوین از آی ماینر
خرید ماینر بیت کوین از آی ماینر

ماینر بیت کوین چیست؟ از کجا ماینر بخریم؟ خرید ماینر بیت کوین: اکنون دیگر با...

آموزش استخراج بیت کوین با آی ماینر
آموزش استخراج بیت کوین با آی ماینر

چگونه از سامانه آی‌ماینر بیت کوین استخراج کنیم؟ در ادامه با کلیپ‌ آموزش استفاده از...

Change Language

English پارسی Türk русский العربية
آی ماینر