بلاک چین
زمان مطالعه :
6 دقیقهتاریخ بروز رسانی :
۱۷
مرداد
۱۴۰۳
دگ (DAG) چیست؟ شبکههایی که بلاک چین نیستند!
ویراستار
سینا شمس آور
فهرست
شاید تصور دنیای کریپتوکارنسی بدون بلاک چین کمی سخت باشد؛ اما شبکههای دیگری هم در این دنیا وجود دارند، مثل DAGها. دگ (DAG) یا Directed Acyclic Graph نوعی دیگر از دفترهای توزیعشده (Distributed Ledgers) هستند که برای توسعه رمزارزها بهکار گرفته میشوند.
DAGها بهنوعی جایگزین یا آلترناتیوی برای بلاک چینها بهشمار میروند که بهواسطه مهندسی خاصیشان، مزیتهای نسبت به بلاکچینها دارند.
در این مقاله قصد داریم تا به سوالاتی از قبیل دگ (DAG) چیست؟، DAGها چگونه کار میکنند؟ و سوالات دیگری پاسخ بدهیم. نحوه عملکرد و مهندسی دگها را مورد بررسی قرار خواهیم داد و تفاوتهای این سیستمها با بلاک چین را نشان میدهیم. پس تا انتهای این مقاله با پول نو همراه باشید.
دگ (DAG) چیست؟
هرکسی که اطلاعات حداقلی درباره بلاک چین داشته باشد، میتواند از روی نام آن، مفهومش را هم توضیح دهید. میدانیم که بلاک چین (BlockChain) به معنای زنجیرهای از بلاکها است که به صورت متوالی تایید و ساخته میشوند. بلاکهایی که هرکدام دارای اطلاعاتی از جمله اطلاعات تراکنشهای شبکه هستند.
اما نام DAG چه میتواند به ما بگوید؟ کلمه اختصاری DAG از کنار هم قرار گرفتن حروف ابتدایی کلمات «Directed Acyclic Graph» تشکیل شده است. کلماتی که در زبان فارسی بهصورت «گراف غیرمدور جهتدار» ترجمه میشوند. این سه کلمه را نوبت به نوبت مورد بررسی قرار میدهیم و مفهوم هرکدام را بیان میکنیم. خب، از کلمه آخر شروع میکنیم:
– Graph
گراف یا نمودار؛ تقریبا هر نقشه یا تصویری که از چند گره یا نُد (Node) متصل به هم تشکیل شده باشد، یک گراف محسوب میشود. برای مثال نقشه متروی تهران یک گراف به شمار میرود. این گراف از رئوس (Vertices) و اضلاعی (Edges) تشکیل شده است. رئوس همان ایستگاههای مترو و اضلاع، مسیرهایی هستند که قطارها بین هر ایستگاه طی میکنند.
رئوس و اضلاع موجود در گراف را به خاطر داشته باشید. جلوتر دوباره به آنها خواهیم پرداخت.
– Acyclic
کلمه Acyclic (به معنای غیرمدور) از دو بخش تشکیل شده است. Cyclic و پیشوند a. در واقع Cyclic صفتیست که به هر موصوف تکرارشونده و دارای چرخه و سیکل اطلاق میشود. هنگامی که این کلمه پیشوند a را به خود میگیرد، این صفت به یک صفت سلبی تبدیل میشود. یعنی موصوف آن تکرارشونده نیست و سیکل ندارد. بهنوعی غیرمدور است و جریان اطلاعات به نُد قبلی باز نمیگردد.
– Directed
جهتدار. گرافی که غیرمدور است، یعنی به هیچ وجه به نُد قبلی خود باز نمیگردد. وقتی صفت جهتدار هم به آن نسبت داده میشود، یعنی جهت حرکت آن مشخص است و به هر سویی حرکت نمیکند، بلکه مسیر تعیینشدهای را در پیش میگیرد.
پس با این اوصاف یک گراف غیرمدور جهتدار، نقشه و سیستمیست که دورانی و سیکلگونه رفتار نمیکند. علاوه بر این، جهت مشخص و ثابتی هم دارد. اسمی که روی شبکههای DAGمحور قرار گرفته، درست مثل اسم BlockChainها، قصد دارد تا معماری این سیستمها را نشان بدهد.
تصویر بالا بهخوبی معماری و ساختار یک DAG را نشان میدهد. این یک گراف است که از رئوس (نُودهایی) تشکیل شده که با پیکانهایی (همان اضلاع متصلکننده ندها به هم، که همان نقش «هش»ها را بازی میکنند) به هم مرتبط اند. هیچ پیکانی به سمت ابتدای گراف حرکت نکرده است (از راست به چپ) و جهت گراف هم مشخص است.
DAGها چگونه کار میکنند؟
دگ سیستمیست که مثل یک بلاکچین، وظیفه تایید و انجام تراکنشهای یک شبکه غیرمتمرکز را بر عهده دارد. شاید کاربرد شبکههای بلاک چینی آنقدر گسترده شده است، که باور اینکه ساختارهای دیگری هم به جز بلاک چین وجود دارد، سخت شده باشد. اما گرافهای غیرمدور جهتدار قصد دارند تا عیوب بزرگی از بلاک چینها مثل مقیاسپذیری و سرعت را برطرف کنند.
ساختار و مهندسی DAGها که در بخش قبل به آن اشاره کردیم، قادر است تا تراکنشهای بیشتری را نسبت به بلاکچینها پردازش کند. دگها علاوه بر اینکه تراکنشهای بیشتری را پردازش میکنند، این کار را سریعتر از بلاک چین انجام میدهند. چون در بلاک چین، تراکنشها و در مقیاس بزرگتر، بلاکها، باید بهصورت سری، متوالی و پشت سر هم تایید شوند. یعنی برای اینکه شبکه به سراغ بررسی، تایید و انجام یک تراکنش برود، باید خیالش از بابت تراکنش قبلی راحت شده باشد. اما در یک DAG، بلاکی وجود ندارد و هر تراکنش، به خودی خود یکی از رئوس گراف به شمار میرود. از طرفی امکان پردازش موازی تراکنشها هم در دگها وجود دارد.
برای تایید یک تراکنش در DAG، باید آن را به دوتا (در اکثر موارد) از تراکنشهای قبلی شبکه ارجاع داد (مثل تصویر بالا).
هر تراکنش برای انجام شدن، باید یک یا چند تراکنش قبل از خود را تایید کند؛ در واقع به آنها ارجاع داده شود. البته این فرایند در هر شبکهای که DAGمحور است، متفاوت خواهد بود و تمایزهای خاص خود را خواهد داشت. در ادامه نمونههای بارز DAG را بررسی خواهیم کرد.
DAG چه تفاوتی با بلاک چین دارد؟
مهندسی خاص گرافهای غیرمدور جهتدار باعث شده تا تفاوتهای بنیادینی با بلاک چینها داشته باشد.
طبیعتدوست بودن DAGها
زنجیرهوار بودن یک بلاکچین مهمترین بخش هویت آن است. شبکهای که اطلاعات در آن بهصورت دستهبندیشده و به ترتیب زمان وقوع در بلاک قرار میگیرند و سپس بلاکها به هم متصل میشوند. در DAG اما خبری از بلاک نیست و تراکنشها به صورت انفرادی در شبکه ثبت میشوند و هرکدام یکی از رئوس یک گراف غیرمدور جهتدار را تشکیل میدهند. اینکه در DAG بلاکی وجود ندارد، به این معناست که این شبکهها از ماینر هم استفاده نمیکنند. پس مصرف انرژی پایینتری هم از بلاکچینها (بهخصوص شبکههای PoW، مثل بیت کوین و اتریوم قبل از آپدیت Merge) دارند.
سرعت و مقیاسپذیری
در واقع هدف اصلی DAGها این است که مقیاسپذیری و سرعت پردازش تراکنشها را افزایش بدهند. در بلاکچین چون تراکنش و بلاکها به صورت پشت هم بررسی و تایید شوند، زمان زیادی طول خواهند کشید. در واقع چون هر بلاک تنها یک بلاک والد خواهد داشت، شبکه در آن واحد، تنها میتواند روی یک بلاک تمرکز کند. در مقابل در یک DAG، هر تراکنش (نه بلاک!) میتواند بیش از یک تراکنش مرجوع یا والد داشته باشد. این موضوع به علاوه امکان پردازش موازی تراکنشها، باعث شده تا دگها سرعت بالاتری نسبت به بلاکچینها در پردازش اطلاعات داشته باشند.
امنیت
امنیت DAGها یکی از معضلات این شبکههاست. البته این بدان معنا نیست که گرافهای غیرمدور جهتدار، به خودی خود امن نیستند. به دلیل اینکه این شبکهها خیلی مورد استفاده قرار نمیگیرند و هنوز خیلی فراگیر نشدهاند، نفوذ به آنها نسبت به بلاکچین، کار راحتتریست. بلاکچینها همچنان رایجترین شبکههای پرداخت غیرمتمرکز در دنیا هستند و شلوغیشان، باعث میشود امکان هک آنها هم پایینتر باشد.
تمرکز زدایی
استفاده پایینتر از DAGها باعث میشود تا تمرکززدایی (Decentralization) این شبکهها نیز کمی چالش داشته باشد. وقتی شبکه کاربران و نُدهای کمتری داشته باشد، قدرت و نظارت روی شبکه روی نُدهای خاصی متمرکز خواهد شد. برای مثال شبکه «Hedera» که از یکی از انواع DAG استفاده میکند، تنها ۳۹ ند فعال دارد. این درحالیست که بلاکچین بزرگی مثل اتریوم، بیش از ۵۰۰٬۰۰۰ ند فعال دارد!
مزایا و معیاب DAGها
شبکهای که قصد دارد از لحاظ سرعت و مقیاسپذیری، جایگزین بلاکچین باشد، باید در این زمینه حرفهای زیادی برای گفتن داشته باشد. از طرفی هم مثل هر سیستمی، DAG هم معایب و نقاط ضعفی دارد که باید برطرف شوند.
مزایای DAGها
همانطور که اشاره کردیم، گرافهای غیرمدور جهتدار با پرچم “بهبود سرعت و مقیاسپذیری” وارد رقابت با بلاکچینها شدند. همین موضوع بزرگترین نقطه قوت DAG است. از طرفی چون در DAG بلاک و نتیجتا پروسه ماینینگی هم وجود ندارد، مصرف انرژی و ردپای کربن شبکههای DAGمحور بسیار پایین است.
از دیگر مزایای عدم نیاز DAG به ماینر، این است که هزینههای کمتری صرف خرید تجهیزات مخصوص ماین برای آنها میشود. به علاوه اینکه فی و کارمزدهای شبکه هم کاهش پیدا خواهد کرد. چرا که شبکه دیگر به ماینرهای نداشتهاش پاداش نخواهد داد و این مسئله باعث میشود DAGها شبکههای ارزانتری باشند.
معیاب DAGها
روی کاغذ DAG میتواند از هر لحاظ نسبت به بلاکچین برتری داشته باشد. این برتری تئوری به این معنا نیست که هیچوقت در عمل محقق نخواهد شد؛ بلکه “فعلا” محقق نشده است! DAGها همچنان توسعه چندانی پیدا نکردهاند و به اندازه بلاکچینها فراگیر نشدهاند. این مسئله میتواند خودش یک عیب بزرگ برای DAGها باشد، چون پتانسیل بسیار خوبی در آنها وجود دارد. همین موضوع عواقبی هم دارد که جزء نقاط ضعف دگها به شمار میرود.
استفاده کم از DAGها باعث میشود تا شبکه وسیع و گسترده نباشد. کوچکی یک دفتر توزیع باعث میشود در برابر هک و حملات آسیبپذیر باشد. همین کمبود استفاده و رایج نبودن DAGها باعث میشود تا تمرکززدایی هم در آنها به خوبی صورت نگیرد. دقیقا مثل مسئله تعداد نُودهای فعال که در بخش قبل به آن اشاره کردیم.
مزایا | معایب |
سرعت و مقیاسپذیری بالا | کمتر شناختهشده نسبت به بلاک چین |
مصرف انرژی پایین و دوستدار طبیعت! | امنیت پایین (فعلا) |
بدون نیاز به ماینر و تجهیزات ماینینگ | تمرکززدایی (Decetralization) پایین |
فی و کارمزدهای کم | نمونههای حقیقی آن کم هستند |
نمونههایی از DAG در دنیای واقعی
ساختار و فرم کلی یک DAG کم و بیش همان چیزیست که در این مقاله بررسی کردیم. با این حال پروژههای مختلفی که از یک سیستم DAGمحور برای پردازش استفاده میکنند، ممکن است تفاوتهای کوچکی هم با یکدیگر داشته باشند. سویی (Sui) یکی از شبکههاییست که از یک سیستم دگمحور استفاده میکند. بهخاطر اینکه توضیح نحوه کارکرد شبکه سویی از حوصله بحث خارج و بسیار مفصل است، در این مقاله به آن اشاره نکردیم. اما از طریق لینک زیر میتوانید درباره نحوه کارکرد این شبکه و DAG آن مطالعه کنید.
سویی چیست؟ آشنایی با شبکه سویی و فناوری جدید آن
در ادامه به معرفی و بررسی چند پروژه کریپتویی که یک گراف غیرمدور جهتدار هستند، میپردازیم.
– آیوتا (IOTA)
آیوتا یک بلاکچین در حوزه اینترنت اشیاست؛ نام این پروژه هم از حروف اول کلمات «Internet of Things Applications» برگرفته شده است. آیوتا در حوزه اینترنت اشیا فعال است و قصد دارد تا پرداختهای بین انسانها و اشیائی که به اینترنت متصل هستند را آسانتر کند. این پروژه در سال ۲۰۱۵ و توسط گروهی از همبنیانگذاران نروژی ساخته و توسعه داده شد.
آیوتا DAG خودش را با «Tangle» یا «کلاف» خطاب میکند. سیستمی که در آن هر تراکنش باید برای انجام شدن به دو تراکنش قبل از خودش ارجاع داده شود. در صورتی که این اتفاق بیفتد، دو تراکنش مرجوع، تایید خواهند شد و تراکنش اصلی، انجام میشود. در ساز و کار آیوتا، به تراکنشهای تاییدنشده موجود در شبکه، «Site» یا «پایگاه» گفته میشود. همچنین به تراکنشهای جدید اضافهشده به شبکه که باید دو تراکنش پیش از خود را تایید کنند، «Tip» یا «راس» نامیده میشوند.
پروژه IOTA یک رمزارز بومی هم دارد، MIOTA؛ که پرداختهای درونشبکهای به وسیله آن انجام میشود. در حال حاضر این ارز مارکت کپ حدودا ۴۴۰ میلیون دلاری دارد و از این حیث در سایت «CoinGecko»، در رده ۸۵ام قرار دارد.
– نانو (Nano)
نانو یکی از اولین پروژههای نوآورانهایست که سعی کرد مشکلات مقیاسپذیری بیت کوین را حل کند. ریشههای نانو به سال ۲۰۱۴ برمیگردد. ۵ سال پس از معرفی بیتکوین، «کالین لیمهیو Colin LeMahieu» که یک مهندس نرمافزار بود، پروژه «RaiBlocks» را معرفی کرد. در سال ۲۰۱۸ این پروژه نام خود را به «نانو Nano» و توکن بومی آن که نماد XRB داشت، در سال ۲۰۲۱ به XNO تغیر یافت.
اگر مهندسی دفاتر توزیعشده را یک طیف در نظر بگیریم و بلاکچین و DAG دو سر این طیف باشند، نانو تقریبا در میانه این طیف قرار دارد. چون که از هر سیستم خصوصیاتی را به ارث برده است. نانو از مکانیزم اجماع DPoS مخفف عبارت Delegated Proof of Stake یا «اثبات سهام نمایندگیشده» استفاده میکند.(اثبات سهام و اثبات کار) معماری این شبکه هم «Block-Lattice» یا شبکه بلاکها نام دارد. دلیل این نامگذاری این است که هر والت یا اکانت در شبکه، بلاکچین اختصاصی خودش را دارد که با هر تراکنش یا اقدام، بهصورت خودکار آپدیت میشود. این شبکهها به یکدیگر متصل اند و همین باعث میشود شبکه بهصورت موازی تراکنشهای زیادی را پردازش و تایید کند.
نانو از این حیث شبیه به یک DAG است که میتواند تراکنشها را به صورت موازی تایید کند. در واقع نیازی ندارد تا تمام تراکنشها به ترتیب زمان وقوع تایید شوند، در بلاک قرار بگیرند و سپس بلاک بعدی ساخته و بررسی شود. هر شبکه از بلاکها (که مربوط به یک اکانت است) بهشکل جداگانه آزموده و تایید میشود. ندهایی که به عنوان نماینده برگزیده میشوند، هر کدام به سراغ بررسی تراکنشهای یک شبکه از بلاکها میروند. بنا براین این امکان وجود دارد که تراکنش x از تراکنش y زودتر تایید و در شبکه ثبت شود. حتی اگر تراکنش x پس از تراکنش y صورت گرفته باشد. چون ندها مستقلا، بهصورت موازی و بدون ترتیب زمانی فعالیت میکنند.
سخن آخر
بلاکچین از ابتدا شابلونی برای طراحی طراحی دفاتر توزیعشده (Distributed Ledger) نبوده است. شاید همچنان در عمل بهترین نوعِ این دفاتر باشد، اما همانطور که بررسی کردیم، گرافهای غیرمدور جهتدار این توانایی را دارند که موفقتر عمل کنند. به خصوص در حال حاضر، که مقیاسپذیری و سرعت پردازش از اصلیترین مشکلات دنیای کریپتوکارنسی هستند.
شاید پروژههایی که بررسی کردیم، مثل آیوتا و نانو، خیلی DAGهای موفقی به نظر نرسند. اما پروژههای نوظهوری مثل سویی (Sui) ما را در این زمینه امیداوار میکنند که DAGها امتحان خود را پس خواهند داد.
اما نظر شما چیست؟ آیا DAGها توانستهاند یا خواهند توانست جایگزین سریعتری برای بلاک چینها باشند؟ چه ایراداتی در گرافهای غیرمدور جهتدار وجود دارد که باید برطرف شوند؟
چنانچه به مشاوره رایگان علاقهمندید، پرسشها و نظرات خود را درباره این مقاله یا موضوعات مختلف حوزه بلاکچین و ارزهای دیجیتال مطرح کنید. برای پاسخگویی آمادهایم!
نظر بدهید
0