وقتی به ارز دیجیتال فکر میکنید، احتمالاً اصطلاحات “بلاکچین” یا “فناوری دفتر توزیع شده” به ذهن شما خطور میکند. از زمان راه اندازی بیت کوین، صدها ارز دیجیتال دیگر ایجاد شده است. بیشتر آنها به معماری شبکه مشابه متکی هستند. ساختار دادههای آنها به کاربران امکان انتقال ارزش یا تعامل با برنامههای غیرمتمرکز را میدهد.
در یک بلاکچین، بلاک جدید به طور دورهای به زنجیره بلوک در حال رشد اضافه میشود. هر بلوک با نوعی پیوند رمزنگاری به بلوک قبلی متصل میشود. در هر یک از این بلوکها معاملات اخیر وجود دارد که توسط کاربران پخش شده اند.
اما غالباً یک دوره انتظار بین معامله در حال پخش و درج آن در یک بلوک وجود دارد. فکر کردن به این امر، مانند انتظار برای قطار در یک ایستگاه است. بسته به اندازه واگنها (اندازه بلوک) و تعداد افرادی که منتظر هستند (معاملات معلق)، حتی ممکن است نتوانید با قطار بعدی حرکت کنید. یا حتی قطار بعد از آن. به همین ترتیب، برای تأیید یک معامله ممکن است از چند ثانیه تا چند ساعت منتظر بمانید.
برای بسیاری، این یک معامله مناسب است. از این گذشته، درجه امنیت بسیار بالایی را بدون اتکا به هماهنگ کننده متمرکز فراهم میکند. از نظر برخی، بلاکچین یک تاریخ انقضا دارد. مخالفان معتقدند، در طولانی مدت، مشکلات مقیاس پذیری که فناوری بلاکچین با آن روبرو است، از تصویب گسترده جلوگیری میکند.
برخی بر این باورند که آینده شبکههای پرداخت ارز دیجیتال در یک معماری کاملاً متفاوت – گراف جهت دار غیر مدور (یا DAG) کار میکند.
دگ (DAG) چیست؟
DAG یا Directed Acyclic Graph نوع متفاوتی از ساختار داده است (مانند یک پایگاه داده به آن فکر کنید که اطلاعات مختلفی را به یکدیگر متصل میکند).
از نظر مفهومی، DAG ها چیزی شبیه به تصویر فوق هستند. آنها از رئوس (کرهها) و لبهها (خطوط اتصال دهنده آنها) تشکیل شدهاند. در اصطلاح گراف جهتدار غیر مدور، جهتدار به این معنی است که فقط به یک جهت هدایت میشود (به فلشهای درون تصویر توجه کنید) و غیر مدور به این معنی است که چرخهای در این روند وجود ندارد. در واقع اگر در نقطهای شروع کرده و نمودار را دنبال کنید، هرگز به آن نقطه باز نمیگردید.
از چنین ساختارهای دادهای عموماً برای مدل سازی دادهها استفاده میشود. برای مشاهده رابطه بین متغیرها و تعیین تأثیر آنها بر یکدیگر، ممکن است به یک DAG در زمینههای علمی یا پزشکی اعتماد کنید. به عنوان مثال، از طریق DAG مواردی مانند تغذیه، چرخه خواب و علائم جسمانی مدلسازی میشوند تا پزشکان بتوانند ارتباط بین آنها و تأثیر آنها روی بیماران را مشاهده کنند.
DAG چگونه کار میکند؟
در رمزنگاری مبتنی، هر راس در ساختار نشان دهنده یک تراکنش است. در اینجا هیچ مفهومی از بلوک وجود ندارد و همچنین برای تداوم شبکه، استخراج مورد نیاز نیست. بنابراین به جای تجمع تراکنشها در بلوکها، هر تراکنش روی دیگری ایجاد میشود. البته یک عملیات اثبات کار کوچک در دگ وجود دارد که وقتی یک نود تراکنشی را ارسال میکند، میبایست تراکنش قبلی را تایید کند تا ثبت آن انجام شود. این کار تضمین کننده پایداری شبکه بوده و تراکنشهای قبلی را نیز اعتبار میبخشد.
در Dag، هر تراکنش جدید بعد از تراکنشهای قدیمی قرار میگیرد. فرض کنید که فردی یک تراکنش جدید ایجاد میکند. برای تأیید آن، این تراکنش باید موارد قبلی را ارجاع دهد، کمی شبیه به این که چگونه یک بلوک در بیت کوین به یکی از تراکنشهای قبل از آن مراجعه میکند، اما معاملات متعددی ارجاع میشوند. تراکنشی که فرد ایجاد خواهد کرد تأیید نشده است، اما هنگامی که تراکنش قبلی را تایید کند، تراکنش او جهت تایید شخص دیگری ثبت و پس از تایید، در شبکه نهایی میشود.
در برخی از سیستمهای مبتنی بر Dag، الگوریتم انتخاب میکند که تراکنش جدید باید پس از کدام تراکنش تایید شده قرار بگیرد. احتمالا رشتههایی انتخاب میشوند که طویلتر بوده و تایید بیشتری دارند. با وجود بلاکچین، محافظت در برابر خطر دوبار خرج کردن (Double Spending) بسیار آسان است. وجوه دو بار در یک بلاک نمیتواند هزینه شود. نودها میتوانند هر تلاشی را به راحتی تشخیص دهند و هرگونه بلوک حاوی معاملات متضاد را رد کنند. DAG ها نیز مکانیسمی برای جلوگیری از خطر دوباره خرج کردن دارند، اما بدون استفاده از عملیات استخراج که در بلاک چین مرسوم است. وقتی یک گره تراکنشهای قدیمی را تأیید میکند، آنها کل مسیری را که به اولین تراکنش دگ برمیگردد ارزیابی میکنند، تا مطمئن شوند فرستنده از اعتبار کافی برخوردار است. در شبکه DAG همیشه امکان دارد چندین مسیر وجود داشته باشد، اما فقط باید تصحیح گردند.
شاید بپرسید آیا نمیتوان در شرایطی قرار گرفت که چندین شاخه بدون آگاهی از یکدیگر وجود داشته باشند؟ آیا افراد نمیتوانند یک بودجه را در مسیرهای مختلف خرج کنند؟
این مشکل دگ با یک “الگوریتم انتخاب” حل میشود. این الگوریتم، شاخههای دارای تایید بیشتر را پیشنهاد میکند. این بدان معناست که با گذشت زمان، شاخهای خواهیم داشت که بسیار قویتر از بقیه است. ضعیفترها رها میشوند و این شبکه به ساخت رشته اصلی خود ادامه خواهد داد.
هنگامی که هر تراکنش در دگ اعتبارسنجی میشود، باید به یک تراکنش موجود و نسبتا جدید در شبکه DAG مرتبط گردد. این در حالی است که اگر هر بار به تراکنشهای قبلی پیوند داشته باشد، شبکه برای تأیید تراکنشهای جدید بسیار گسترده میشود. در نتیجه، شبکه DAG تراکنش بعدی را برای اتصال به هنگام وقوع یک تراکنش جدید انتخاب میکند. هدف این است که عرض شبکه در یک محدوده خاص نگه داشته شود تا بتوان از اعتبار سنجی سریع تراکنشها پشتیبانی کرد.
برای بلاکچین، قطعیتی وجود ندارد و شما هرگز نمیتوانید 100 درصد مطمئن باشید که تراکنشهای ثبت شده در شبکه معکوس نخواهد شد. بسیار بعید به نظر میرسد، اما از لحاظ تئوری میتوانید شبکه بیت کوین یا اتریوم را خنثیسازی و تمام تراکنشها را معکوس کنید. هرچه تعداد بلوکهای بیشتری بعد از تراکنش شما اضافه شود، اعتماد بیشتری برای عدم تقلب میتوانید داشته باشید. برای DAG نیز این چنین است و به همین دلیل توصیه میشود قبل از هزینه بودجه، تا شش تأیید صبر کنید.
در دگ هایی مانند Tangle IOTA، ایده اطمینان در مورد تأیید وجود دارد. الگوریتم انتخاب 100 بار اجرا میشود و شما میتوانید چند بار تراکنش خود را به طور مستقیم یا غیر مستقیم در نقاط انتخاب شده بررسی کنید. هرچه درصد بالاتر باشد، اطمینان بیشتری خواهید داشت که تراکنش شما بدون مشکل در شبکه DAG تایید شده است.
ممکن است به نظر برسد که این مسئله منجر به سوء استفاده کاربر میشود، اما این طور نیست. اگر آلیس برای باب 10 مجیک دگ توکن (MagicDAGToken) ارسال کند، دیگر نیازی به نگرانی در مورد انتخاب رشته مناسب گراف نیست. در شبکه، آلیس میبایست موارد زیر را رعایت کند:
- رشتههای سنگین دگ را انتخاب کند (به یاد داشته باشید، این مواردی هستند که بیشترین تأیید را دارند).
- مسیر برگشت را از طریق تراکنشهای قبلی دنبال کند تا اطمینان حاصل شود که رشته تعادل کافی برای هزینه دارد.
- پس از اطمینان تراکنش خود را به DAG اضافه کرده و تراکنشهایی را كه در آن ساخته شده تأیید کند.
به نظر آلیس، این دقیقاً شبیه به گردش منظم کریپتوکارنسی خواهد بود. او آدرس باب و مبلغی را که میخواهد هزینه کند وارد میکند، سپس ارسال را فشار میدهد. لیست بالا نوعی اثبات کار است که هر شرکت کننده هنگام ایجاد یک تراکنش در شبکه مبتنی بر دگ اجرا میکند.
جوانب مثبت و منفی گراف جهت دار غیر مدور
سرعت
بدون محدودیت در زمان بلوک، هر کسی میتواند معاملات خود را در هر زمان پردازش کند. هیچ محدودیتی در تعداد تراکنشهایی که کاربران انجام میدهند وجود ندارد، مشروط بر اینکه آنها انجام تراکنشهای قدیمیتر را تایید کنند.
عدم نیاز به استخراج
DAG ها از الگوریتمهای اجماع PoW به روشی که ما به آن عادت کردهایم، استفاده نمیکنند. بنابراین آنها مانند بسیاری از ارزهای رمزپایه که برای تأمین امنیت شبکه بلاک چین خود به استخراج تکیه میکنند، نیستند.
بدون کارمزد تراکنش
از آنجا که هیچ استخراج کنندهای وجود ندارد، کاربران برای انجام معاملات خود نیازی به پرداخت هزینه ندارند. با این اوصاف، برخی مستلزم پرداخت هزینه ناچیزی به انواع خاص گرهها هستند.
مقیاس پذیری بالا
بدون محدودیت در زمان بلوک، دگ ها میتوانند تراکنشهای بیشتری را در هر ثانیه نسبت به شبکههای سنتی بلاک چین پردازش کنند. بسیاری از طرفداران معتقدند که این امر باعث میشود آنها در اینترنت اشیاء (IoT) و همچنین در مواردی که باید انواع ماشینها با یکدیگر تعامل داشته باشند، استفاده شوند.
عدم تمرکززدایی کامل DAG
پروتکلهایی که به DAG متکیاند دارای عناصر متمرکز مختلفی به عنوان مثال نودها، هستند. برای برخی، ظاهرا یک راهحل کوتاه مدت برای راه اندازی شبکه وجود دارد، اما هنوز مشخص نیست که آیا DAG ها بدون دخالت شخص ثالث میتوانند پیشرفت کنند یا خیر.
عدم آزمایش DAG در مقیاس بزرگ
گرچه رمز ارزهای دارای پشتوانه DAG چند سالی است که وجود دارند، اما آنها قبل از مشخص شدن کاربردهای گسترده، مسیری طولانی را میبایست طی کنند. به این ترتیب، پیش بینی اینکه کاربران ممکن است چه مشکلاتی در بهره برداری از سیستم DAG در آینده داشته باشند، دشوار است.
موارد استفاده DAG
DAGها برای پردازش تراکنشها بدون محدودیت زمان انتظار بلوکها استفاده میشوند. کاربران میتوانند هر تعداد تراکنش را که دوست دارند ارسال کنند، اما قبل از رفتن به بلوکهای جدید، باید بلوکهای قدیمی را تأیید کنند.
DAGها در مصرف انرژی صرفه جویی می کنند زیرا از ماینرها مانند اجماع PoW استفاده نمیکنند. ارزهای دیجیتالی که از DAGها استفاده می کنند، کسری از انرژی مصرف شده توسط ارزهای رمزنگاری شده که به استخراج متکی هستند، استفاده میکنند.
DAGها برای پردازش پرداختهای خرد مهم هستند. از آنجایی که آنها به روشی که فناوری بلاکچین استفاده میکند از ماینرها استفاده نمیکنند، برای تأیید تراکنشها به هیچ هزینه پردازشی نیاز نیست. فقط یک هزینه کوچک گره دریافت میشود و این هزینه با ازدحام شبکه افزایش نمییابد.
DAG vs. Blockchain
همانطور که در مورد ارز دیجیتال اعمال میشود، یک بلاکچین و یک DAG هر دو دادهها را در یک دفتر کل توزیع شده ذخیره میکنند، اما این کار را با استفاده از روشهای بسیار متفاوت انجام میدهند. بیایید به برخی از تفاوتهای کلیدی بین این دو فناوری نگاه کنیم.
1. زنجیره بلوکی یک رشته تغییر ناپذیر از بلوکهای تایید شده داده است و آنهایی که هنوز در انتظار تایید هستند. بلوکهای تأیید شده به صورت زمانی به لیست بلوکهای تأیید شده قبلی اضافه میشوند. از سوی دیگر، یک DAG شامل زنجیرهای از تراکنشهای تایید شده جداگانه است که منشعب از بسیاری از تراکنشهای قبلی هستند. DAG را میتوان به عنوان یک درخت با ساقه، شاخه و برگ نگاه کرد. هر برگ را میتوان تا ریشههای درخت ردیابی کرد، اما برگ بدون ساقهاش وجود نخواهد داشت و شاخههای کوچکتر از شاخههای بزرگتر جوانه میزنند.
2. اجماع بر روی یک بلاکچین با اعتبارسنجی تراکنشها در بلوکها حاصل میشود. یکی از روشهای دستیابی به این توافق، اثبات کار است، که ماینرها را ملزم میکند تا یک سؤال پیچیده ریاضی را با سریعترین کاربر که بلاک را تأیید میکند و پاداش دریافت میکند، حل کنند.
با DAG، کاربران هم به عنوان ماینر و هم به عنوان اعتبار سنجی عمل میکنند. هر کاربر باید دو تراکنش دیگر را جدا از تراکنش خود قبل از اینکه بتواند توسط کاربر دیگری برای اعتبارسنجی در نظر گرفته شود، تأیید کند. بنابراین نیاز به کارمزد ریشه کن میشود.
DAG در Crypto
IOTA
IOTA، مخفف “برنامه اینترنت اشیاء”، در سال 2016 راه اندازی شد و جزو اولین پروژههایی است که از فناوری DAG استفاده میکند. از گرهها و درهمرفتگیها (ترکیبی از بسیاری از گرهها) برای اعتبارسنجی تراکنشها استفاده میکند. همه کاربران در IOTA باید دو تراکنش را قبل از تأیید تراکنشهای خود تأیید کنند. هر کاربر براساس آرای خود و سهمی از کل قدرت، در مکانیزم اجماع درگیر است، که منجر به شبکهای غیرمتمرکز و مقیاسپذیر میشود. علاوه بر این، آیوتا تراکنشهای سریع را با هزینهای ارزان برای کاربران خود فراهم میکند، بنابراین هم برای پرداختهای خرد و هم برای پرداختهای متعدد ایده آل است.
Nano
نانو Nano فناوریهای DAG و بلاکچین را برای راهاندازی سیستم خود ترکیب کرده است. دادهها از طریق گرهها ارسال و دریافت میشوند. هر کاربر در پروژه نانو با یک کیف پول مجزا به بلاکچینی دسترسی دارد که در انحصار آنهاست. هنگامی که تراکنش بر روی بلاکچین انجام میشود، فرستنده و گیرنده هر دو بر روی بلاکچین عمل میکنند تا آن را تایید کنند. نانو به دلیل سرعت بالای تراکنش و کارمزد تراکنش صفر شناخته شده است.
نظرات کاربران