مشکل دوبار خرج کردن در بلاک چین

مشکل دوبار خرج کردن یکی از مسائل مهم امنیتی در طراحی سیستمهای پولی و مالی دیجیتال است. بهطور کلی هر جا که قرار است مقدار زیادی پول ذخیره یا جابهجا شود، همیشه باید خطر حمله به شبکه را در نظر بگیریم. هکرها همیشه به دنبال یافتن راهی برای نفوذ و بهسرقتبردن داراییها هستند و چه جایی بهتر از یک سیستم دیجیتال که دیگر نیازی به جابهجایی پول نقد هم نیست.
دوبار خرج کردن یک نوع مشکل محاسباتی در شبکه است که اگر فردی قبل از سازنده شبکه بتواند آن را پیدا کند، میتواند اعتبار یک شبکه را زیر سوال ببرد. در این مقاله تصمیم داریم در مورد مشکل دوبار خرج کردن در سیستمهای مالی و بلاک چین صحبت کنیم و با راههای جلوگیری از آن آشنا شویم.
مفهوم دوبار خرج کردن
در سیستمهای پولی دیجیتال، «دوبار خرج کردن» (Double Spending) زمانی به وجود میآید که یک مقدار ثابت از داراییها را بهطور همزمان برای دو گیرنده ارسال کنیم و شبکه نتواند تشخیص دهد که این دو مبلغ ارسالشده در حقیقت یکی هستند و هر کدام را به عنوان یک تراکنش معتبر بشناسد. در چنین حالتی کاربران هم مجبورند پولی که دریافت کردهاند را تایید کنند، درحالیکه واقعیت این است که دقیقا آن پول در جای دیگری هم خرج شده است.
در طراحی سیستمهای پولی دیجیتال باید این اطمینان وجود داشته باشد که هیچ کدام از اعضای شبکه تحت هیچ شرایطی نتوانند واحدهای پولی خود را کپی کنند. اگر یک کاربر بتواند موجودی خود را با چند بار کپی کردن سکههایش، مثلا از ۱۰ سکه به ۱۰۰ سکه برساند، تمام شبکه به خطر خواهد افتاد. به طور مشابه، هیچکس هم نباید بتواند تمام موجودیاش را که مثلا ۱۰ سکه است، یکبار برای گیرنده اول و بار دیگر برای گیرنده دوم ارسال کند. پس تمام سیستمهای پولی دیجیتال باید مکانیزمی داشته باشند که از بروز چنین مسائلی جلوگیری کند.