تبدیل ارزهای دیجیتال به یکدیگر بدون نیاز به واسطههای متمرکز؛ این یک تعریف خلاصه از اتمیک سواپ یا «مبادله اتمی» است. شاید اغراق نباشد اگر بگوییم مبادلات اتمی همان حلقه مفقودهای است که دنیای ارزهای دیجیتال به آن نیاز دارد. بهبیان ساده، کاربران ارزهای دیجیتال میتوانند با کمک مبادلات اتمی بهصورت مستقیم و بینیاز از هرگونه واسطه (مانند حسابهای امانی یا صرافیها) تنها از طریق کیف پولهای خود به خرید و فروش ارزهای دیجیتال گوناگون بپردازند. در این راهنما قصد داریم درباره چگونگی عملکرد اتمیک سواپ و همچنین مزیتهای این روش برای اکوسیستم کریپتو صحبت کنیم. با ارزدیجیتال همراه باشید.
در ژوییه ۲۰۱۲، برنامهنویسی بهنام سرجیو دیمین لرنر (Sergio Demian Lerner) برای اولین بار پیشنویس «پروتکل معاملات بیواسطه و بدون نیاز به اعتماد» را منتشر کرد. ایده کلی درخشان بود، اما این طرح در بیان جزئیات ناکام بود.
اولین جهش بزرگ در زمینه مبادلات اتمی، در حوالی ماه مه ۲۰۱۳ رخ داد، زمانی که تیر نولان (Tier Nolan) برای اولین بار طرح کاملی را از فرایند مبادلات اتمی ارائه کرد. در حال حاضر نولان بهعنوان مخترع اصلی اتمیک سواپ شناخته میشود.
پیش از صحبت درباره مبادلات اتمی، اجازه دهید درباره ریشهها و دلایل پیدایش این فناوری صحبت کنیم؛ درباره اینکه با وجود صدها صرافی بزرگ ارزهای دیجیتال، دیگر چه نیازی به انجام مبادلات اتمی در داخل کیف پولها داریم؟
صرافیهای ارز دیجیتال و مشکل قدیمی واسطههای متمرکز
تصور کنید بهزاد مقداری بیت کوین در اختیار دارد و میخواهد در ازای دریافت لایت کوین، آنها را بفروشد. از سوی دیگر مجید هم مقداری لایت کوین دارد که میخواهد آنها را با بیت کوین معاوضه کند. غالباً روال کار اینگونه است که هر دو ارزهای دیجیتال خود را به یک صرافی منتقل کرده و با فروش آن، ارز دیجیتال موردنظر خود را خریداری میکنند. اما سادهترین راهحل همیشه بهترین راهحل نیست! مشکلات بسیاری در رابطه با صرافیهای ارز دیجیتال وجود دارد که در اینجا بهصورت مختصر برخی از آنها را مرور میکنیم.
آسیبپذیری و هک
اگر خوشبینی معمول را کنار بگذاریم و حقیقتها را ببینیم، صرافیهای متمرکز همیشه در معرض خطر هک قرار دارند. شاید معروفترین نمونه در میان صرافیهایی که حملات هک را تجربه کردهاند، صرافی ژاپنی کوین چک (Coincheck) باشد. این حمله هک در ژانویه ۲۰۱۸ اتفاق افتاد و در نتیجه آن، معادل ۵۵۰ میلیون دلار از کوینهای NEM به سرقت رفت. بخش غمانگیز ماجرا آنجاست که پس از این حمله، علاقه عمومی ژاپنیها به ارزهای دیجیتال بهطرز چشمگیری کاهش یافت و این درحالی بود که پیشتر این کشور به پذیرش گسترده ارزهای دیجیتال شهرت داشت. تمام صرافیهای بزرگ دیگر از جمله بایننس و بیتفینکس هم تاکنون یک یا چند مورد هک را تجربه کردهاند.
سوءمدیریت
ورشکستگی صرافی Mt. Gox که در آن بیت کوینهایی به ارزش ۵۰۰ میلیون دلار (در سال ۲۰۱۴) به سرقت رفت، دقیقاً بهدلیل سوءمدیریتهای مکس کارپلز (Max Karpeles)، مدیرعامل این صرافی، به وقوع پیوست. هنوز در سال ۲۰۲۰ عده زیادی از کاربران این صرافی پول خود را پس نگرفتهاند.
در یک صرافی متمرکز مشخص نیست که با پول شما چه میکنند و در چه اهدافی از آن استفاده میشود.
تغییرات تقاضا
صرافیهای ارز دیجیتال قادر نیستند خود را با تغییرات تقاضا از سوی کاربران وفق دهند؛ مخصوصاً زمانی که تقاضا بهطور ناگهانی افزایش مییابد. در چنین مواقعی غالباً بخشی از معاملات بهدلیل کافینبودن نقدینگی صرافی (لیکوییدیتی) به طول خواهد انجامید و صرافی برای مدتی از دسترس خارج خواهد شد. اگر در یک صرافی کوچک معامله انجام داده باشید، احتمالاً طعم تلخ وجودنداشتن خریدار یا فروشنده برای یک ارز دیجیتال را چشیدهاید.
تحریم و مشکلات قانونی
از آنجا که صرافیهای متمرکز غالباً در کشور مشخصی به ثبت رسیدهاند، همواره در معرض قانونگذاریهای دولتی و اعمال نفوذ قدرتها هستند. بهعنوان نمونه، اغلب صرافیهای مطرح جهان، کاربران خود را ملزم به احراز هویت کرده و بر اساس تحریمهای بینالمللی، از ارائه سرویس به کاربران ایرانی خودداری میکنند. بنابراین مسلم است که صرافیهای متمرکز، راهحل ایدهآلی برای پذیرش عمومی ارزهای دیجیتال نیستند.
با وجود تمامی این موارد، تا زمانی که صحبت از خرید و فروش ارزهای دیجیتال با استفاده از ارزهای فیات در میان باشد، چارهای جز استفاده از صرافیهای متمرکز به همان شکل فعلی نداریم، اما برای تبادل ارزهای دیجیتال یا معامله ارزهای دیجیتال با یکدیگر، میتوان از راهکارهای جایگزینی استفاده کرد که مشکلات صرافیهای متمرکز را نداشته و در عین حال امن باشد، اینجاست که مبادلات اتمی وارد بازی میشوند.
مبادلات اتمی (Atomic Swaps) چه هستند؟
اتمیک سواپ یا مبادله اتمی، روشی برای مبادله مستقیم ارزهای دیجیتال بهصورت شخص به شخص است؛ بهگونهای که دیگر نیازی به نهادهای واسطه مانند صرافیها وجود نداشته باشد. در هنگام انجام مبادلات اتمی، کنترل کلیدهای خصوصی کاملاً در اختیار خود کاربران خواهد بود.
واژه «اتمیک»، صفتی است که خود از واژه «اتم» بهمعنای «تقسیمناپذیر» برگرفتهشده است. اولین بار دانشمندان یونانی برای اشاره به کوچکترین جزء ماده از واژه اتم استفاده کردند؛ امروزه نیز در علوم برنامهنویسی و پایگاه داده، از واژه اتمیک برای اشاره به مجموعه عملیات تجزیهناپذیر استفاده میشود؛ یک مجموعه اتمیک، شامل توابع و عملیاتی است که یا همه با هم اتفاق میافتند، یا هیچکدام. بهعنوان مثال تصور کنید میخواهیم بیت کوین را با لایت کوین مبادله کنیم؛ این عملیات شامل دو تراکنش است: یکی برای انتقال بیت کوین و دیگری برای انتقال لایت کوین. اما چنین عملیاتی هرگز نباید نصفه و نیمه انجام شود. ما میخواهیم هر دو تراکنش بهطور همزمان انجام شوند، یا اینکه اصلاً هیچکدام انجام نشود. در واقع ما میخواهیم سواپ (مبادله) موردنظر، اتمیک (اتمی) باشد.
در تاریخ ۲۰ سپتامبر سال ۲۰۱۷، اولین پیادهسازی موفقیتآمیز اتمیک سواپ میان دیکرد (Decred) و لایت کوین (Litecoin) انجام شد.
اتمیک سواپ بهصورت مستقیم میان بلاک چینهای جداگانه (با کوینهای متفاوت) قابلاجرا است. این ویژگی نسبت به صرافیهای غیرمتمرکز یک مزیت مهم محسوب میشود، چون در اغلب صرافیهای غیرمتمرکز افراد فقط میتوانند توکنهای مبتنی بر یک بلاک چین خاص را با یکدیگر مبادله کنند. مثلاً در پلتفرم یونیسواپ (Uniswap) که بزرگترین صرافی غیرمتمرکز است، اکنون فقط امکان مبادله توکنهای مبتنی بر اتریوم وجود دارد و مثلاً نمیتوانید بهصورت مستقیم بیت کوین را به اتریوم تبدیل کنید. اما با اتمیک سواپ میتوان میان بلاک چینهای مختلف پلی برای تبادل ایجاد کرد. برای همین مبادلات اتمی همچنین با عنوان معاملات میانزنجیرهای (Cross-chain trading) نیز شناخته میشوند.
درباره نحوه کار مبادلات اتمی در ادامه بهطور مفصل میخوانید اما بهزبان ساده، در این مبادلات از فناوری مشابه قرارداد هوشمند (مانند قرارداد معمولی اما دارای ضمانت اجرایی) استفاده میشود. در مثال زیر با فرایند کلی اتمیک سواپ آشنا میشوید:
- فرد A میخواهد بیت کوین را به اتریوم تبدیل کند.
- فرد B میخواهد اتریوم را به بیت کوین تبدیل کند.
- A بیت کوین را به یک آدرس منتقل میکند و بیت کوین قفل میشود.
- B اتریوم را به یک آدرس منتقل میکند، بیت کوین برای او آزاد میشود و برای فرد B هم اتریوم آزاد میشود.
در حال حاضر شرکتهای زیادی سعی میکنند کیف پول و پلتفرمهای مبتنی بر اتمیک سواپ بسازند. اما بهدلیل محدودیتهایی که در پایان این مقاله درباره آنها میخوانید، هنوز محصول قابلتوجهی عرضه نشده است.
مبادلات اتمی چگونه کار میکنند؟
با یک توضیح ساده شروع میکنیم؛ زمانی که دو شخص قصد دارند در یک اتمیک سواپ شرکت کنند، از یک کلید خصوصی مشترک استفاده میکنند. تنها در صورتی که کلید ارائهشده از سوی هر دو نفر با یکدیگر مطابقت داشته باشد، مبادله ارزهای دیجیتال مورد نظر انجام خواهد شد. با این مکانیزم اگر شخص دیگری به این مبادله نفوذ کند، قادر نیست کوینهای مورد معامله را تصاحب کند؛ زیرا از کلید خصوصی مشترک میان دو طرف معامله بیاطلاع است.
تا به اینجا مفهوم کلی را فراگرفتهاید؛ حال ببینیم این فرایند در عمل چگونه انجام میشود. برای اجرای تمامی این فرایند، از چیزی تحت عنوان قراردادهای زماندار هششده (Hashed Timelock Contracts) یا به اختصار «HTLC» استفاده میشود. اگر با شبکه لایتنینگ بیت کوین آشنایی داشته باشید، احتمالاً میدانید که HTLC چگونه کار میکند. در ادامه توضیحات مختصری در رابطه با قراردادهای زماندار رمزنگاری شده ارائه خواهیم داد.
قراردادهای زماندار رمزنگاری شده چه هستند؟
قراردادهای زماندار رمزنگاری (هش) شده نوع خاصی از کانالهای پرداخت هستند. کانالهای پرداخت، اساساً کانالهای وضعیت خارج از زنجیره (off-chain state channels) هستند که بهمنظور تسویه پرداختها راهاندازی میشوند.
کانالهای وضعیت، نوعی کانال ارتباطی دوطرفه هستند که افراد را قادر میسازند تا عملیاتی که به صورت عادی روی بلاک چین اتفاق میافتد را به خارج از بلاک چین انتقال دهند. بنابراین میتوان گفت کانالهای وضعیت، زمان مورد نیاز برای انجام تراکنشها را بهطور نمایی کاهش میدهند؛ چراکه در صورت استفاده از کانالهای آفچین (برون زنجیرهای)، دیگر نیازی به افراد واسطه (مانند ماینرها) برای اعتبارسنجی و تأیید تراکنشها وجود ندارد.
این فرایند، درست مشابه چیزی است که در کانالهای پرداختی شبکه لایتنینگ بیت کوین رخ میدهد. همانطور که میدانید، یکی از چالشهای بیت کوین برای تبدیلشدن به ابزار پرداخت، سرعت پایین ثبت تراکنشها بر روی بلاک چین است که اصطلاحاً آن را مشکل مقیاسپذیری میخوانند. ابتکار شبکه لایتنینگ برای حل این مشکل، این گونه است. که افراد برای پرداختهای روزمره خود (مثلاً خرید روزانه یک فنجان قهوه) یک کانال پرداخت دوطرفه میان خود راهاندازی میکنند تا پرداختها بهصورت خارج از زنجیره بر روی این کانال انجام شود.
با انجام هر پرداخت، موجودی جدید دو طرف معامله در کانال وضعیت بهروزرسانی شده و در نهایت زمانی که دو کاربر بخواهند به مبادلات بین خودشان خاتمه دهند، با بستن کانال، تراکنشی را به بلاک چین ارسال کرده و آخرین وضعیت موجودی هر یک در بلاک چین ثبت میشود.
بعد از این یادآوری مختصر، اجازه دهید به بحث اصلی خود بازگردیم؛ حال ملزومات راهاندازی یک کانال آفچین چیست؟
- بخشی از وضعیت بلاک چین از طریق تراکنشهای چندامضایی یا نوعی قرارداد هوشمند (که مورد توافق شرکتکنندگان است) قفل میشود.
- شرکتکنندگان با امضای تراکنشها در میان خود و بدون ارسال تراکنشها برای ماینرهای شبکه، با یکدیگر تعامل دارند.
- در نهایت مجموعه معاملات صورت گرفته در قالب یک تراکنش به شبکه ارسال شده و به بلاک چین افزوده میشود.
کانالهای وضعیت میتوانند در زمان خاصی که از پیش افراد شرکتکننده در معامله تعیین کردهاند، بسته شوند. زمان بسته شدن کانال را میتوان به یکی از دو روش زیر تعیین کرد:
- تعیین محدودیت زمانی؛ بهعنوان مثال شرکتکنندگان میتوانند با توافق یکدیگر کانالی ایجاد کنند که بعد از دو ساعت بسته شود.
- تعیین محدودیت انتقال؛ به این معنی که زمان بستهشدن کانال با تعیین سقف ارزش کل تراکنشها تعیین شود. بهعنوان مثال شرکتکنندگان توافق میکنند که هرگاه ارزش مجموع تراکنشها به ۱۰۰ دلار رسید، کانال بسته شود.
قراردادهای زماندار رمزنگاری شده یا HTLCها، یکی از رایجترین کاربردهای کانالهای پرداخت هستند. اما HTLC دقیقاً چیست؟
HTLCها کانالهای پرداختی هستند که از «قفلهای زمانی» و «قفلهای رمزنگاری» استفاده میکنند. HTLC قراردادی است که به کاربران اجازه میدهد کانال پرداختی ایجاد کنند که تا پیش از بستهشدن آن، قادرند داراییهای خود را در آن انتقال دهند. این پرداختها از طریق ارائه اثباتهای رمزنگارانه (cryptographic proofs) تأیید و نهایی میشوند.
برای سادهسازی مفهوم HTLC، آن را مانند یک حساب امانی (Escrow) در نظر میگیریم. در تعریف سنتی، حساب امانی نوعی حساب واسطه میان دو طرف معامله است که پول را از خریدار دریافت کرده و به فروشنده اطلاع میدهد که کالا را برای خریدار ارسال کند. در صورتی که کالا به دست خریدار برسد و خریدار صحت کالا را تأیید کند، حساب امانی، پول را به فروشنده انتقال خواهد داد. همچنین در صورت تأخیر در ارسال کالا، یا رعایت نکردن شرایط معامله، کالای موردنظر به فروشنده بازگشت داده شده و پول هم به خریدار بازمیگردد.