حمله های شناخته شده در سیستم های مالی تحت بلاکچین (بخش اول)

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

old vs new - حمله های شناخته شده در سیستم های مالی تحت بلاکچین (بخش اول)

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

Unauthorized spending  یا خرج کردن بی اجازه

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

access - حمله های شناخته شده در سیستم های مالی تحت بلاکچین (بخش اول)

Double Spending یا دوبار خرج کردن

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

این اصطلاح به صورت کلی به شرایطی اطلاق می شود که در آن فرد دارنده پول دیجیتال از مقداری مشخص از دارایی خود دوبار استفاده نماید و آن را خرج کند. شیوه های مختلفی وجود دارد که در نهایت به بروز چنین حالتی می انجامد فلذا عبارت Double Spending اطلاقی است کلی به بروز این دست از اتفاقات.

double - حمله های شناخته شده در سیستم های مالی تحت بلاکچین (بخش اول)

دوبار خرج کردن به شیوه Race Attack

در این شیوه از کلاهبرداری، فرد الف مبلغی را برای سرویس دهنده ب ارسال کرده و همزمان با آن تراکنشی دیگر را در وجه فرد ج انجام می دهد با توجه به همزمانی این دو تراکنش امکان رد شدن تراکنش اول در شبکه وجود دارد و اگر سرویس دهنده ب بدون دیدن تاییدیه های مربوط به تراکنش مذکور، سرویس را ارائه دهد ممکن است هرگز به مبلغ مورد انتظارش دست پیدا نکند. به این نوع تراکنش ۰/unconfirmed یا تایید نشده گفته می شود.

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

race - حمله های شناخته شده در سیستم های مالی تحت بلاکچین (بخش اول)

مجتبی عنایتی