اولین بلاک چینی که امکان ایجاد و اجرای نرمافزارهای غیرمتمرکز را فراهم کرد، اتریوم بود. ازاینرو، نرمافزارهای گوناگونی بر روی اتریوم ساخته شدند. شرکت «دپر لبز» (Dapper Labs) نیز نرمافزار غیرمتمرکز و بازی بلاک چینی «کریپتوکیتیز» (CryptoKitties) را بر روی اتریوم ایجاد کرد. این بازی بهسرعت توانست علاقهمندان به داراییهای کلکسیونی را جذب کند و هجوم هواداران به این بازی، ترافیک اتریوم را بالا برد و این شبکه را با مشکلات مقیاسپذیری شدیدی مواجه کرد. به همین خاطر، دپر لبز تصمیم گرفت تا بلاک چین جدیدی را با نام فلو (Flow) پایهگذاری کند تا نهتنها کریپتوکیتیز، بلکه سایر نرمافزارها نیز از محیطی مقیاسپذیر و کارآمد بهرهمند شوند.
از طرفی، ویژگیهای شبکه فلو، بسیاری از سرمایهگذاران را به خرید ارز دیجیتال FLOW که توکن بومی این شبکه است، علاقهمند کردهاند. بااینحال، سرمایهگذاری بر روی فلو و هر رمز ارز دیگری به تحقیق و تفحص نیاز دارد. به همین منظور، در این مقاله از اکسبیتو، بهسراغ وایت پیپر فلو (Flow Whitepaper) رفتهایم تا شما را با این پروژه کریپتو بیشتر آشنا کنیم. پس همراه ما باشید تا به بررسی دقیق بلاک چین و ارز دیجیتال فلو با زبانی ساده بپردازیم.
آشنایی با ارز دیجیتال فلو FLOW
فلو (Flow) یک شبکه بلاک چین غیرمتمرکز و کارآمد است که با هدف ایجاد تجربه تعاملی بین بازیها، نرمافزارها و داراییهای دیجیتالی ساخته شد. این شبکه با تمرکز بر کارایی و مقیاسپذیری، بستر مناسبی را برای تولید نرمافزارها فراهم کرده است. همچنین، انواع توکنهای غیرقابل تعویض (NFTs) را میتوان بر روی فلو ساخت و به مدیریت آنها پرداخت.
علاوهبر آن، فلو پروژه اختصاصی خود را نیز بر روی این شبکه با نام «انبیای تاپ شات» (NBA Top Shot) راهاندازی کرده است. این پروژه که با همکاری لیگ بسکتبال انبیای ساخته شده، NFTهایی را شامل تصاویر و لحظات منحصربهفرد مربوط به این مسابقات ورزشی، در بر میگیرد.
ویژگیهای جالب فلو باعث شدهاند تا بسیاری از کلکسیونرها و هنرمندان به این شبکه روی بیاورند. همچنین، سرمایهگذاران نیز توکن FLOW را در سبد سرمایه خود گنجاندهاند. درصورتیکه شما نیز به خرید فلو علاقه دارید، بهراحتی میتوانید این کار را از طریق صرافی ارز دیجیتال اکسبیتو انجام دهید. اکسبیتو امکان خرید فلو را با پایینترین قیمت و در کمترین زمان ممکن برای شما فراهم کرده است.
خلاصه وایت پیپر فلو (FLOW)
امروزه همگان از محدودیتهای بلاک چینهای موجود اطلاع دارند و همین مسئله یکی از اصلیترین دلایل عدم پذیرش عمومی این فناوری است. یکی از روشهای مطلوب برای رفع این محدودیتها، جداسازی فرایند اجماع از محاسبات محسوب میشود که امنیت را نیز به خطر نمیاندازد. به همین خاطر، در شبکه فلو (Flow)، گرههای اجماع (Consensus Nodes) فقط دستورات تراکنشها را تعریف کرده و آنها را اجرا نمیکنند. در عوض، محاسبه نتیجه بلوک به «گرههای اجرایی محاسباتی بهینهشده» (Compute-optimized Execution Nodes) واگذار شده است. گرههای تأیید (Verification Nodes) نیز وظیفه بررسی نتیجه محاسبات را بر عهده دارند.
در طول عملیات عادی، گرههای اجماع محاسبات را بررسی نمیکنند و فقط بر این امر نظارت دارند که گرههای شرکتکننده وظایف خود را با دقت لازم انجام دهند. اگرچه این معماری بهطور قابل توجهی کارآمد است، اما همچنان گرههای تأیید مجبور هستند که محاسبات را بهطور کامل کپی کنند.
به همین خاطر، در آخرین نسخه وایت پیپر فلو، معماری شبکه بهگونهای اصلاح شده که گرههای تأیید توزیع شوند و بهصورت موازی به فعالیت بپردازند. بهاینترتیب، کارایی شبکه مجدداً افزایش یافته و گرههای اجرایی کار محاسبات را انجام میدهند و گرههای تأیید صرفاً به بررسی نهایی خواهند پرداخت. علاوهبر آن، در تمام طول این فرایندها، امنیت شبکه در بالاترین سطح خود حفظ میشود.
معماری فلو (Flow Architecture)
در بلاک چینهای سنتی، هر گرهی باید تمام وظایف کامل مربوط به اجماع را بر عهده بگیرد. این فرایند شبیه «ریزپردازندههای تکچرخه» (Single-cycle Microprocessors) است که در هر دور، یک دستور اجرا میشود. در عوض، در CPUهای جدید از «خط لوله» (Pipelining) برای افزایش توان عملیاتی استفاده شده است.
در شبکه فلو (Flow) نیز بهجای اینکه یک گره تمام وظایف را انجام دهد، نقشهای متفاوتی برای آنها در نظر گرفته میشوند. نقشهای گرههای تخصصی در فلو شامل جمعآوری (Collection)، اجماع (Consensus)، اجرا (Execution)، تأیید (Verification) و مشاهده (Observation) هستند. این روش معماری سطح بالایی از مشارکت در اجماع را فراهم کرده و باعث خواهد شد تا این شبکه برای ایجاد و اجرای نرمافزارهایی در ابعاد سازمانی مناسب باشد.
بهگفته وایت پیپر فلو، پروتکل Flow باید فرایندهای زیر را در بر بگیرد تا در کنار کارایی، امنیت بالایی را نیز فراهم کند:
- تأییدکنندگان باید بتوانند در صورت تشخیص نقض پروتکل، درخواست تجدیدنظر را به گرههای اجماع بفرستند.
- گرههای اجماع نیز لازم است که ابزاری را برای بررسی و تشخیص رفتار مخرب در اختیار داشته باشند.
- ازاینرو، در ادامه این بخش از وایت پیپر فلو، جنبههای دیگر معماری این شبکه را مورد بررسی قرار میدهیم.
اصول اصلی معماری فلو (Core Architecture Principles)
با توجه به اطلاعات ارائهشده در وایت پیپر فلو، معماری این شبکه دارای اصول زیر است:
- قابل تشخیص: یک شرکتکننده صادق و منفرد باید بتواند خطاهای موجود در سیستم را تشخیص دهد. سپس، او یک خطا را با سایر گرهها در میان میگذارد و از آنها میخواهد تا بخشِ معیوب فرایند جاری را اصلاح کنند.
- نسبت دادن: تمام فرایندهای موجود در فلو را میتوان با یک «تابع تصادفی قابل تأیید» (VRF) به یکی از گرهها اختصاص داد. بنابراین، اگر خطایی رخ دهد، امکان ردیابی و نسبت دادن خطا به یک گره وجود خواهد داشت.
- مجازات: طبیعتاً هر مشارکتکنندهای مقداری ارز فلو را در شبکه سهامگذاری کرده است. در نتیجه، درصورتیکه رفتار مخربی از او مشاهده شود، میتوان با کاهش درصدی از سهام، او را مجازات کرد.
- قابل بازیابی: در شبکه فلو میتوان فرایندهای از دست رفته را مورد بازیابی قرار داد. بهاینترتیب، تمام تراکنشها بهصورت دقیق و بدون نقص نهایی خواهند شد.
فرضیات (Assumptions)
وایت پیپر فلو برای بیان معماری این شبکه، مفروضاتی را در نظر گرفته که همیشه صادق خواهند بود:
- فلو فقط بر اساس مکانیزم اثبات سهام کار میکند. در این مکانیزم، شرکتکنندگان حتماً باید مقداری ارز فلو را در شبکه سهامگذاری کرده و همیشه خود آنها نیز بهوسیله امضای دیجیتالی قابل شناسایی باشند.
- گرهها حتماً در یک دوره مشخص در شبکه حضور دارند و نمیتوانند تا پایان این دوره از فرایند اعتبارسنجی خارج شوند.
- امکان مشارکت مجدد توسط گرههای صادق وجود خواهد داشت.
- در اختیار داشتن منبع تصادفی برای انتخاب گرهها ضروری است.
- فرایندهای تشویق و مجازات برای اطمینان از انجام رفتار صادقانه الزامی هستند.
نقشها (Roles)
همانطور که در بخشهای قبلی وایت پیپر فلو (Flow) گفتیم، این شبکه از نقشهای گردآورنده (Collector)، اجماع (Consensus)، اجرا (Execution)، تأیید (Verification) و ناظر (Observer) تشکیل شده است. ازاینرو، در این قسمت از وایت پیپر فلو قصد داریم تا این نقشها را توضیح دهیم:
- گرههای گردآورنده: وظیفه اصلی این گرهها دریافت تراکنشهای ارسالی از مشتریان خارجی و معرفی آنها به شبکه است. پس از دریافت تراکنش، گره گردآورنده بررسی خواهد کرد که تراکنش مورد نظر بهدرستی شکل گرفته یا خیر. سپس، این گره تراکنش را امضا میکند. ازاینطریق، اطمینان حاصل میشود که تا زمان نهایی شدن، یک تراکنش مُهروموم باقی میماند.
- گرههای اجماع: وظیفه اصلی گرههای اجماع ساخت بلوکها است؛ بنابراین، آنها بلاک چین فلو را امتداد داده و از آن نگهداری میکنند.
- گرههای اجرایی: این گرهها خروجی تمام بلوکهای نهاییشده را مورد محاسبه قرار میدهند. سپس، تقاضای دریافت تراکنشهای امضاشده را به گرههای گردآورنده ارائه میدهند. در گام بعدی، این تراکنشها به قطعات کوچکتری تقسیم شده و توسط گرههای اجرایی به اجرا درمیآیند. در نهایت، این گرهها رسید اجرای تراکنشها را برای بررسی توسط گرههای ناظر منتشر خواهند کرد.
- گره تأیید: این گرهها محاسبات گرههای اجرایی را بررسی میکنند. اگرچه گرههای اجرایی فقط روی بریدهای از تراکنشها فعالیت دارند، اما گرههای تأیید تمام قطعات تراکنشها را بررسی خواهند کرد. درصورتیکه هر گره تأیید با نتیجه محاسبه موافق باشد، یکی تأییدیه را برای آن منتشر میکند. این رسید بههمراه رسید اجرا برای مهروموم بلوک به کار گرفته میشود.
- گره ناظر: در نهایت، گرههای ناظر نتیجه اعتبارسنجی را به بیرون از زنجیره میفرستند.
اثبات تخصصی دانش محرمانه (SPoCK)
اثبات تخصصی دانش محرمانه (Specialized Proof of Confidential Knowledge) یا SPoCK به هر تعدادی از مشارکتکنندگان اجازه میدهد تا ثابت کنند که از دانش محرمانه یکسانی برخوردار هستند. این روش رمزنگاری بههیچوجه اجازه درز کردن اطلاعات را نخواهد داد.
روش SPoCK یکی از بهترین و ارزانترین راهها برای نشان دادن نهایی شدن تراکنشها است و حتی پس از اتمام فرایند اعتبارسنجی نیز میتوان از آن برای اطمینان از ذخیرهسازی دادهها استفاده کرد.
ویژگیهای فلو (Flow Features)
بهعقیده وایت پیپر فلو، این شبکه دارای ویژگیهای منحصربهفردی است که آن را نسبت به سایر شبکههای بلاک چینی متمایز میکنند. این ویژگیها عبارتاند از:
- معماری چندنقشی (Multi-role Architecture): ازآنجاییکه فلو فرایند اعتبارسنجی را بین نقشها و گرههای مختلف توزیع کرده است، این شبکه میتواند به میلیاردها کاربر خدمات ارائه کند.
- برنامهنویسی منبعگرا (Resource-oriented Programming): فلو از یک زبان برنامهنویسی منحصربهفرد به نام «کادنس» (Cadence) بهره میبرد. این زبان بهطور اختصاصی برای ارزهای دیجیتال و قراردادهای هوشمند طراحی شده است.
- دِوِلوپر ارگونومیکس (Developer Ergonomics): این ابزار برای توسعهدهندگان ارائه شده تا آنها بتوانند نرمافزارها و پروتکلهای امن، سریع و موثر را ایجاد کنند.
- آنبوردینگ کاربرپسند (User-friendly Onboarding): فلو تنها بلاک چینی است که قابلیت استفاده از پروتکل را بهصورت عمودی گسترش داده تا همه کاربران بتوانند از مزایای این شبکه بهرهمند شوند.
- پایگاه کاربری داخلی (Built-in User Base): توسعهدهندگان و شرکتهای بزرگ دنیا از شبکه فلو برای ارائه خدمات به کاربران خود استفاده کردهاند.
سخن پایانی
با مطالعه وایت پیپر فلو (Flow)، متوجه شدیم که این شبکه و ارز دیجیتال آن با هدف بهبود کارایی پروژههای مبتنی بر بلاک چین راهاندازی شدهاند. به همین منظور، فلو از معماری چندنقشی و تقسیم تراکنشها استفاده میکند تا مقیاسپذیری خود را تا حد بسیار زیادی افزایش دهد. ازاینطریق، بستری مناسب برای ایجاد بازیها، نرمافزارها و پروتکلهای مختلف بر روی شبکه Flow فراهم میشود.