یکی از تهدیدات مرسوم در حوزه ارز دیجیتال، کلاهبرداری دوبار خرج کردن یا دابل اسپندینگ است.
بررسی اصالت پرداخت در شبکه های مالی غیر متمرکز یک چالش مهم است و به قدر کافی نودها در این مورد تقویت شده اند، اما همچنان مشکل فریب دابل اسپندینگ در صرافی های ارز دیجیتال به قوت خود باقی است.
برای تمایز کلاهبرداری دابل اسپندینگ در نود ها با صرافی ارز دیجیتال آن را با نام جعل تراکنش معرفی میکنم چرا که در دابل اسپندینگ نودها هدف قرار می گیرند اما در جعل تراکنش هدف فریب دادن صرافی در ثبت تراکنش تکراری است.
تراکنش جعلی در واقع یک رونوشت از تراکنش درستی است که انجام شده است و کلاهبردار تلاش می کند این رونوشت تکراری را به نام تراکنش واقعی در صرافی ثبت کند حال ممکن است تراکنش واقعی توسط کلاهبردار انجام شده باشد یا اینکه توسط شخص دیگری صورت گرفته باشد.
شرایط این کلاهبرداری زمانی فراهم می شود که صرافی ارز دیجیتال از ولت های یونیک برای هر مشتری استفاده نکند در این حالت یک بار سنگین به خاطر بررسی تراکنش ها و هویت ارجاع دهنده بر روی صرافی تحمیل می شود.
بررسی TxId (Transaction Id) عملیاتی وقت گیر برای تیم پشتیبانی مالی است با این حال الگوریتمی که بتواند فرایند مقایسه و کنترل را در زمان کوتاه انجام دهد نیز یک چالش مهم است. بیاید پرسش را بهتر مطرح کنیم!
الگوریتم مقایسه TxId چگونه باشد تا در کمترین زمان بیشترین تعداد تراکنش را بررسی کنیم؟
بهترین و سریع ترین روشی که می توانم آن را معرفی کنم بهره گیری از فاصله لون اشتاین است.
این فرایند در واقع ترانهش موازی کاراکترها بر اساس تعمیم فاصله همینگ است که به شکلی کارآمد می تواند بازه وجه تشابه TxId ها را مشخص کرده و از پردازش های غیر ضروری جلوگیری کند.
به عبارت ساده تر با کمک فاصله لون اشتاین می توان الگوریتمی پیاده سازی کرد که بر اساس میزان تشابه تراکنش ارجاع شده با سوابق آرشیو شده عملیات بررسی را پیش ببرد یعنی فرایند بررسی بر اساس تمام طول رشته صورت نمیگیرد بلکه تا عمقی نفوذ می کند که وجه تشابه وجود دارد.
در نمونه توسعه یافته کلاهبرداری، تنها بخشی نامعین از TxId جعل می شود که کار بررسی را دشوارتر می کند. برای حل این چالش نیز کافی است به صورت رندم مطابق آنالیز عددی در متد نیوتن-رافسون بازه های حدس را مشخص کرد تا تعداد پردازش به حداقل برسد.