هک فینی (Finney Attack) اولین حمله شناخته شده در بلاک چین بیت کوین است و توسط اولین فردی که بیت کوین دریافت کرده، کشف شده است. این نوع حمله، یک نوع خاص از حملات دوبار خرج است که تأثیری بر بیت کوین و ارزهای دیجیتالی مشتق شده از آن دارد.در این مقاله، با یادگیری درباره حمله Finney، نحوه عملکرد آن و تأثیر آن بر رمزنگاری و پیشگیری از آن آشنا خواهید شد.
آنچه قرار است بخوانید
هک فینی (Finney Attack) چیست؟
اصطلاح Finney Attack یک نوع حمله در بیت کوین است که در آن تراکنش توسط تاجر تایید نمی شود، اما به نظر می رسد که تایید شده است.در این نوع حمله، یک ماینر اقدام به ارسال بلافاصله تراکنش از یک کیف پول به کیف پول دیگر می کند، اما بلوک را تایید نمی کند.
Hal Finney یک توسعه دهنده نرم افزار بود که اولین تراکنش بیت کوین را دریافت کرد و همچنین اولین کسی بود که در مورد راه اندازی اولیه بیت کوین عمومی صحبت کرد.به عنوان یک توسعه دهنده نرم افزار، او نیز طرح دوبار خرج کردن( double spending) را روی بیت کوین کشف کرد و این طرح سپس به نام او بیت کوین هک یا حمله Finney نامگذاری شد.
حمله Finney یا حمله دوگانه، حمله ای است که وقتی شخصی تراکنش تایید نشده ای را در شبکه قبول می کند، اتفاق می افتد. در این حمله، ماینری می تواند یک بلوک ایجاد کند که در آن تراکنشی از یک آدرس به آدرس دیگری ایجاد شده است، در حالی که هر دو آدرس متعلق به همان ماینر است.
سپس، پرداخت دیگری را با همان ارز انجام می دهد و آن را از آدرس اول به آدرسی که متعلق به کاربر دیگری است، ارسال می کند. اگر کاربر مذکور تراکنش را بدون تایید شبکه قبول کند، مهاجم می تواند بلوکی را که تراکنش اولیه در آن قرار داده شده است، آزاد کند. این اقدام تراکنش با تاجر را باطل می کند و به مهاجم این امکان را می دهد تا دو برابر هزینه کند.
حمله فینی چگونه اجرا می شود؟
حمله سایبری به راحتی میتواند مجرمان سایبری را به خود جذب کند، زیرا به نظر میرسد راهی آسان برای ثروتمند شدن بدون تلاش زیاد و ناشناس ماندن باشد. با این حال، انجام این کار آسان نیست و هر کسی نمیتواند آن را به راحتی انجام دهد.
برای اجرای این حمله، مهاجم باید به عنوان یک ماینر عمل کند و بلوکی را استخراج کند تا تراکنش او در آن اعتبارسنجی شود. علاوه بر این، برای پذیرش تراکنش با تایید از شبکه، به یک تاجر نیاز دارید. داشتن این دو شرط بسیار سخت است. با این حال، در تئوری، ممکن است حتی زمانی که شما کمتر از 51 درصد از قدرت هش شبکه را دارید، این حمله را انجام دهید.
اول: مهاجم تراکنشی را انجام میدهد که در آن سکههای خود را به آدرسی تحت کنترل خود ارسال میکند. سپس استخراج یک بلوک معتبر که تراکنش مذکور در آن گنجانده شده است، آغاز میشود.
دوم: هنگامی که مهاجم موفق میشود بلوک را استخراج کند و تراکنش را شامل شود، این را به شبکه منتقل نمیکند. در عوض، با همان مقدار کوینی که در اولین تراکنش استفاده کرده است، خرید می کند و به دنبال پرداخت برخی کالاها یا خدمات با همان مقدار پول است.
سوم: پس از انجام تراکنش بدون تایید و پذیرش آن توسط تاجر، مهاجم بلوک استخراج شده را به شبکه منتقل میکند. این عمل باعث میشود که شبکه بلوک را معتبر بپذیرد و در عین حال تراکنش انجام شده به تاجر را بیاعتبار میکند.
حمله فینی نیاز به زمانبندی دقیق و صبر زیادی دارد. اگرچه باید منتظر بمانید تا یک بلوک پیدا شود، که ممکن است زمان زیادی طول بکشد، اما مهاجم باید بتواند در چند دقیقه برخی از کالاها را بخرد یا هزینه یک سرویس را از طریق یک تاجر پرداخت کند.
چه کسانی در معرض حمله فینی (Finney Attack) هستند؟
اشخاصی که تاجر هستند یا کسانی که تراکنش های تاییده نشده را می پذیرند، در معرض این نوع حمله قرار میگیرند.به عنوان مثال، فروشگاه های آنلاینی که با ارزدیجیتال سروکار دارند و محصولات دانلودی ارائه میدهند، ممکن است مورد این حمله قرار گیرند اگر تراکنش های تایید نشده را پذیرفته باشند.
چگونه از حملات فینی (Finney Attack) جلوگیری کنیم؟
یکی از توصیه های مهم در معاملات با بیت کوین این است که منتظر حداقل ۶ تایید در شبکه باشید و صبر کنید تا تراکنش شما امن و قابل برگشت باشد. این تعداد تاییدات را می توان با توجه به مقداری که می خواهید معامله کنید، تنظیم کرد.
به عبارت دیگر، اگر مقداری که می خواهید معامله کنید بیشتر است، می توانید تعداد تاییدات بیشتری را تنظیم کنید تا معامله شما به صورت امن انجام شود. در صورت ایجاد بلوک های جدید در تراکنش های بیت کوین، تراکنش های قبلی غیرقابل برگشت خواهند بود.
در صورتی که هکری سعی داشته باشد به دارایی های شما دسترسی پیدا کند، تطبیق دادن دارایی با یک بلوک کار سختی است. حتی اگر هکر موفق شود این مرحله را پشت سر بگذارد، ممکن است تاجر منتظر تاییدیه ها بماند.
احتمال انجام هک فینی (Finney Attack) در بلاک چین
با توجه به یک شرط ضروری در حمله ای هستیم که به قدرت هش ماینر اختصاص دارد. هر چه قدرت هش ماینر در شبکه کمتر باشد، احتمال موفقیت حمله در شبکه بلاکچین کاهش مییابد. همچنین زمانبندی درست نیز در انجام حمله فینتسی بسیار مهم است، زیرا اگر در زمانی که یک بلاک پیشاستخراج شده است و عدم ارسال آن در شبکه، یک بلاک دیگر تکمیل شود، حمله ناکام میماند.
با توجه به توضیحات فوق، یافتن یک ماینر قادر به استخراج یک بلاک پیش استخراج شده، پذیرش تراکنش بدون تائید شبکه توسط شخص ثالث، و جلوگیری از تکمیل یک بلاک جدید در شبکه میان عمل مهاجم، بسیار دشوار و پیچیده است. بنابراین، حمله فینی در حال حاضر به عنوان یک تهدید واقعی برای شبکههای بلاکچینی محسوب نمیشود و هر فردی که از این تهدید سایبری استفاده میکند، باید زمان و تلاش زیادی را صرف آن کند. در غیر این صورت، او با شکست مواجه خواهد شد.
حملات سایبری فینی اتک (Finney Attack) را بشناسیم و مقابله کنیم
اگرچه حمله فینی به عنوان یک حمله سایبری کمتر شناخته شده مطرح است، اما اجرای آن بسیار دشوارتر است. تکنولوژی بلاکچین در طول زمان به توسعه خود ادامه میدهد و نگرانیهای مختلف از گذشته تا آینده را برطرف میکند. نباید نگران این نوع حملات باشیم زیرا داراییهای رمزنگاری ما را به خطر میاندازد، اما با انجام تراکنشهای مناسب و ایمن روی بلاکچین، میتوانیم مطمئن باشیم که ارزهای دیجیتال سرمایهگذاری ارزشمندی هستند.
در حمله فینی، هکر هدف خود را در انتظار کاربری قرار میدهد تا در زمانی که هنوز تاییدیه دریافت نکرده، تراکنشها را انجام دهد. هال فینی، اولین دریافت کننده بیتکوین، برای اولین بار ایده حمله فینی را به ارمغان آورد و این حمله با نام او شناخته میشود.
برای حمله فینی، هکر ها تراکنش های بین آدرس های خود را در بلاک های جدیدی که خود ایجاد میکنند، انجام میدهند و کوینها دوباره خرج میشوند. سپس بلاکهای جدید وارد شبکه میشوند و تراکنشی که توسط کاربر انجام شده بطور نامعتبر تلقی میشود و هکر امکان خرج مجدد پولی که هک کرده را دارا میباشد.