چکشخواری تراکنشهای بیتکوین، نوعی حمله انکار خدمات (DoS) است که به مهاجم اجازه میدهد تا هش را که تراکنش را در بلاک چین شناسایی میکند، تغییر داده یا تغییر دهد.
در نگاه اول، ممکن است به خودی خود مشکلی به نظر نرسد، زیرا اصلاح هش تراکنش به هیچ وجه بر آن تأثیر نمی گذارد و تراکنش نیز به همین صورت اجرا می شود.
با این حال، مشکل زمانی ایجاد می شود که گیرنده تراکنش ادعا می کند که تراکنش را در حساب خود منعکس نمی کند.
بنابراین شما به کاربری که عملیات را انجام داده و به طور کلی به سیستم مشکوک هستید.
به همین دلیل است که چکشخواری یک تراکنش یک مشکل جدی برای سیستمهای پرداخت ارزهای دیجیتال است.
مشکلی که بسیاری از ارزهای دیجیتال با آن مواجه هستند و به طرق مختلف آن را حل می کنند.
این حمله چگونه رخ می دهد؟
تراکنش های منابع انسانی در بیت کوین از یک یا چند ورودی و یک یا چند خروجی تشکیل شده اند.
ورودیها از یک سری مراجع تشکیل شدهاند که به خروجیهای تراکنش قبلی اشاره میکنند و به عنوان خروجیهای خرج نشده (UTXO) شناخته میشوند.
به نوبه خود، خروجی ها حاوی آدرسی است که تراکنش به آن انجام شده است و مقدار وجوهی که منتقل شده است.
هر تراکنش انجام شده در بلاک چین بیت کوین حاوی هش خاص خود است.
این هش منحصر به فرد و غیرقابل تکرار است و برای شناسایی یا مکان یابی یک تراکنش خاص در بلاک چین استفاده می شود.
به این ترتیب، ماینرها می توانند از طریق هش، ردیابی و تأیید کنند که یک تراکنش در یک بلوک اضافه شده است.
و بنابراین، تأیید کنید که بخشی از بلاک چین است.
حال، تا زمان تایید و تایید آن تراکنش، مهاجم این امکان را دارد که بدون تغییر امضای دیجیتال، هش شناسه تراکنش را تغییر داده و تغییر دهد.
با این اقدام، مهاجم موفق می شود تراکنش را مخفی کند و به این ترتیب صادر کننده را وادار می کند که عملیات انجام نشده باشد.
بنابراین چند ساعت بعد با ادعای دریافت نکردن وجه، از ناشر مطالبه می کند تا بتواند دوباره انتقال را انجام دهد.
در این نقطه جایی است که حمله یا کلاهبرداری اجرا می شود.
از آنجایی که مهاجم وجوه منتقل شده را دریافت کرده است، فقط آنها با هش (txid) که در سرویس ثبت شده است منعکس نمی شوند.
امکان اجرای این حمله
هدف اصلی حملات چکشخواری تراکنشها، صرافیهای ارزهای دیجیتال یا خانهها هستند.
با توجه به حجم بالای عملیات و تراکنش هایی که به صورت روزانه انجام می دهند، مهاجم می تواند از موقعیت استفاده کند.
در مورد کاربری که روزانه تراکنش های زیادی انجام نمی دهد، بعید است که قربانی این نوع حملات شود.
از آنجایی که هنگام بررسی موجودی حساب خود، بدهی تراکنش منعکس شده را خواهید دید.
بنابراین، میتوانید ببینید که اگر تراکنش انجام شده باشد، و بررسی کنید که آیا آدرس مقصد وجه منتقل شده است.
Mt Gox و مشکل شکل پذیری تراکنش
زیان های متعددی که ارز رمزنگاری معروف و ناموفق Mt Gox متحمل شده است، همانطور که توسط تیم فنی و مدیرعامل آن، Mark Karpelès گزارش شده است، به دلیل مشکل چکش خواری تراکنش ها ایجاد شده است.
این که آنها به هکرها و مهاجمان مختلف اجازه میدادند تا ادعای تراکنشهای ناموفق را مطرح کنند.
که در مجموع حدود ۸۵۰۰۰۰ بیت کوین دزدیده شده بود.
اتفاق ناگواری که منجر به ورشکستگی صرافی در سال ۲۰۱۴ شد و هزاران کاربر را عصبانی و متحیر کرد.
به گفته Karpelès، این به دلیل انعطاف پذیری معاملات بود.
کارپلز استدلال کرد که کاربران میتوانند چندین برداشت از وجوه خود انجام دهند، و ادعا میکرد که این برداشتها انجام نشده است، در حالی که در واقع انجام شده است.
با این حال، چندین بررسی انجام شده مشخص کرد که ورشکستگی این صرافی نه تنها به دلیل یک عمل هک، بلکه به دلیل دستکاری داده ها توسط تیم مسئول Mt Gox بوده است.
در گزارش منتشر شده توسط ArXiv، از دست دادن بیت کوین به دلیل چکشخواری تراکنشها بیش از ۴۰۰ واحد محاسبه شده است.




