من نه متخصصم، نه مترجم. متن زیر، برداشتهای من از این مقاله و برخی مطالب پراکنده دیگر است. این متن یک ترجمهٔ خالص نیست. پیشنهاد من این است که به جای خواندن این مطلب، به مقالهٔ اصلی رجوع کنید، که نویسندهاش در این زمینه تجربه و تخصص دارد و قلمش هم به مراتب بهتر است.
دوتای قبلی چی بودند که سومیش چی باشد؟
اصطلاح «وب۳»، عبارتی است که به روشنی تعریف نشده، به همین خاطر به راحتی نمیشود دقیق ارزیابیاش کرد و آیندهٔ آن را پیشبینی کرد.
از این نظر، اصطلاح «وب۱» و «وب۲» هم تفاوتی ندارند. این عبارات را از قبل تعریف نکردند که مثلا بگویند بیایید وب۱ را با این ویژگیبسازیم و آن ویژگیهای دیگر را بگذاریم برای وب۲. اینها اصطلاحاتی است که بعدا، به برهههایی از حیات اینترنت نسبت دادند. مثل کاری که تاریخ یا جامعه شناسی و دیگر علوم انسانی انجام میدهند. مرز بین دوران رنسانس و قرون وسطی، یک خط مشخص نیست. اینها عناوینی است که بعدا برای
این که شناخت و صحبت کردن در مورد گذشته را راحتتر کنند ساخته میشوند.
چیزی که به طور کلی و خلاصه میتوان گفت، این است که وب۱ در ابتدا توزیع شده بود، در وب۲ اینترنت حول پلتفرمها مجتمع شد و مرکزیت پیدا کرد، و حالا در وب۳ قرار است اینترنتی داشته باشیم با قابلیتهای وب۲، اما بدون وجود مرکزیت.
اصلا چرا وب۲ شکل گرفت؟ مگر اینترنتِ توزیع شده و بدون مرکزیت، اشکالش چه بود؟
وب۱ زمانی بود که تازه اینترنت راه افتاده بود. سایتهای استاتیک بدون تعامل با کاربر. هر کس میخواست محتوایش را منتشر کند، باید خودش زیر ساختش را فراهم میکرد. اگر ایمیل میخواست، باید میل سرور خودش را راهاندازی میکرد. مردم عادی که توانایی این کارها را نداشتند؛ حتی آنهایی که از دانش فنی مورد نیاز برخوردار بودند هم علاقهای به این کار نداشتند. اگر ویرگول و GitHub Pages نبود، امکان نداشت من خودم اقدام به راهاندازی یک وب سرویس برای راهاندازی یک وبسایت میکردم. چه کسی دوست دارد با این مسائل فنی درگیر شود؟
افراد که هیچ، حتی شرکتهای بزرگ هم ترجیح میدهند این خدمات را از شرکتهایی که کارشان است بگیرند و این بخش ماجرا را برونسپاری کنند.
کم کم سرویسهایی راه افتاد که بار فنی قضیه را از روی دوش افراد برمیداشتند. افراد بدون دانش تخصصی، میتوانستند با چند کلیک، وبلاگی درست کنند و شروع کنند به نوشتن. این جا وب۲ شروع میشود. شبکههای اجتماعی و پلتفرمهایی که همه افراد را به دنیای اینترنت آوردند.
دیگر مشکل وب۱ این است که پروتکل خیلی کندتر از پلتفرم بهروزرسانی میشود. بعد از ۳۰ سال، ایمیل هنوز رمزنگاری نشده. این را با سرعت بهروزرسانی تلگرام مقایسه کنید که هر چند ماه یک آپدیت اساسی میدهد و کلی ویژگیِ جذاب به سیستمش اضافه میکند.
این لَختی، در ذات سیستمهای توزیع شدهاند. وقتی مرکزیت وجود دارد، فرمان را دست میگیرد. کافی است تلگرام یک آپدیت بدهد. در مدت کوتاهی تمام سرورهایش به روز میشوند و کاربران هم اگر بعد از مدتی کلاینتشان را بهروز نکنند، ممکن است ارتباطشان را با شبکه از دست بدهند. اما در سیستم توزیع شده چه کسی دستور میدهد؟ چه کسی قرار است تغییرات را روی سرورها پیاده کند؟ هزینهٔ توسعه روی دوش چه کسی است؟
در دنیایی که تغییرات این قدر سریع در حال رخ دادن است، سیستمی که توزیع شده باشد، از پلتفرمی که مرکزیت دارد عقب میماند توانایی رقابت را نخواهد داشت. باز میزان همه گیری و نرخ استفادهٔ ایمیل را (که دیگر آن هم مرکزیت دارد) با مثلا واتساپ مقایسه کنید.
پلتفرمها مالکان دنیای اینترنت بودند. برنده اصلی آنها بودند. محتوا را کاربران تولید میکردند و جایزهها را پلتفرمها درو میکردند. نه فقط صاحبان اقتصادی اینترنت، که صاحب اطلاعاتِ کاربران و قانونگذاران و حکمرانان هم، همانها بودند.
هر چه پلتفرمها بزرگتر میشدند، زمزمهٔ تمرکز زدایی و سیستمهای توزیع شده هم بیشتر به گوش میرسید. وقتی بیتکوینِ خردسال داشت اولین قدمهایش را برمیداشت، برخی آیندهٔ درخشانی برایش پیشبینی میکردند و برخی هم به چشم یک اسباب بازی برای نردها به آن مینگریستند. اما رویای وبِ توزیع شده خیلیها را مجذوب خودش کرد. دنیایی که توسط کاربران و برای کاربران باشد. پایانِ حکمرانیِ پلتفرمها.
نرمافزارهای توزیع نشده
نویسنده این متن، دستی بر آتش بلاک چین دارد و دو نرمافزار توزیع شده(dApp) را توسعه داد. (این و این یکی) من از معرفیشان میگذرم. چیزی که در مورد بخش فنیِ آنها میگوید، این است که «توزیع شدگی» (distributedness) در ذات آنها وجود ندارد.اینها با دیگر سایتهایی که با react ساخته میشوند فرق چندانی ندارند. فقط به جای این که اطلاعات را از یک دیتابیسِ مرکزی بگیرند، از apiهایی استفاده میکنند که با بلاکچین در ارتباطند و در نهایتْ داده روی بلاکچین ذخیره میشود.
نویسنده از وجود نداشتن مفهومِ کلاینت/سرور و ارتباط آنها در دنیای وب۳ ابراز تعجب میکند. چیزی که همهٔ اپلیکیشنها و سیستمهای فعلی بر همین اساس طراحی و پیاده سازی شدهاند.
نمودارهای بلاکچین را دیدهاید؟ در این تصاویر نودهایی وجود دارند که به هم متصلند. ولی این نودها، هر کدام یک سرور است. منی که پشت یک لپتاپ یا گوشی نشستهام و به اینترنت متصلم و میخواهم به یک dApp متصل شوم، اصلا در این نمودارها وجود ندارم! این جا کلاینتی وجود ندارد. در زمان فعلی که بیشترین کاربران اینترنت از گوشی هوشمندشان استفاده میکنند، این کمبود بیشتر هم حس میشود.
این اپلیکیشنها و نرمافزارهایی که روی کامپیوترهای شخصی استفاده میشوند چگونه به بلاکچین متصل میشوند؟ این ابزارها، ظرفیت اجرای کد پایهٔ بلاکچینهای فعلی را ندارند و نمیتوانند به عنوان یک نود به شبکه متصل شوند. پس چگونه باید با شبکه اصلی تعامل کنند؟ با راه اندازی سرورهای واسط. سروری که به عنوان یک نود به شبکه متصل باشد و این اپلیکیشنها از آن طریق بتوانند به شبکه اصلی در ارتباط باشند. بله، باز هم سرور!
همان طور که گفتیم و تا به حال دیدهایم، مردم علاقهای به راهاندازی سرور ندارند. و باز هم مثل قبل، شرکتهایی مثل Infura و Alchemy زحمت راهاندازی این سرورها را کشیدهاند و api ارائه میدهند. توسعهدهندهها هم برای برقراری ارتباط dAppهایشان با بلاکچین، از این سرویسها استفاده میکنند.
در واقع، زمانی که یک ولت مثل MetaMask را به یک dApp متصل میکنید و این dApp میخواهد از طریق این ولت با بلاکچین در ارتباط باشد، تنها کاری که MetaMask میکند، صدا زدن درخواستهایی از ایپیآی های Infura است. این ولتها بدون چک کردنِ وضعیتِ بلاکچین و احرازِ درستی یا نادرستیِ جوابِ ایپیآی، نتیجه را عینا به شما نمایش میدهند. درست شبیه رفتار اپلیکیشنها در دنیای وب۲.
دلیل این همه سر و صدا در مورد تمرکز زدایی و اعتماد توزیع شده چیست؟ مثل این که همه به مراکز جدید (Infura و Alchemy) اعتماد دارند!
برخی طرفداران ممکن است با چنین مرکزیتهایی مخالفت نداشته باشند. با این ادعا که ما به این مراکز وابسته نیستیم و سیستم شفافیتِ کافی برای نظارت به کار آنها را دارد. اگر این مراکز بخواهند دست از پا خطا کنند، میتوانیم به راحتی جایگزینشان کنیم. اما پلتفرمها در دنیای واقعی این گونه کار نمیکنند!
یک NFT واقعا چیست؟
تصوری که من(ِ مترجم) از NFT داشتم این بود که اطلاعاتِ آن انافتی(NFT)، مثلا تصویری که دارد معامله میشود، در زنجیره ذخیره میشود. اما مثل این که این طور نیست! جا دادن تمام اطلاعات یک فایلِ چند کیلوبایتی یا حتی چند مگابایتی (یا بیشتر؟) در بلاکچین هزینهٔ بالایی دارد(برای درک درست از هزینهای که میگویم، باید کمی با ساختار بلاکچین آشنا باشید.). کاری که در عمل انجام میشود، این است که urlی که به فایل مورد نظر اشاره میکند را بلاکچین ثبت میکنند و توکن برای آن «آدرس» ایجاد میشود.
چیزی که برای من هم، مثل نویسندهٔ مطلب، تعجبآور بود، این است که هیچ ساختاری برای صحتسنجیِ محتوای این urlها وجود ندارد. این انافتیهایی که از چند دلار تا چند میلیون دلار در حال معاملهاند، صرفا حاوی یک url معمولیاند که به یک vps روی یک سرور اشاره میکند. هر کس که به آن سرور دسترسی داشته باشد یا بعدا صاحب دامینِ آن url شود، میتواند محتوای آن url را دستکاری کند یا حتی کلا از دسترس خارج کند. این که تصویر درست چه چیزی بوده، هیچ جایی ثبت نشده؛ حتی نمیتوان فهمید آن تصویر تغییر کرده یا همان است که از اول بوده!
این جا نویسنده دست به ابتکار جالبی زده. تصمیم گرفته یک انافتی ثبت کند که تصویرش بر اساس این که چه کسی در حال مشاهدهاست، تغییر کند. درواقع وبسرورِ میزبان، فایلهای متفاوتی را بر اساس آی پی و یوزر ایجنتِ درخواست کننده برمیگرداند. یعنی همین انافتی مشخص، برای مثال در OpenSea به یک شکل، در Rarible به شکلی دیگر نمایش داده میشود. اما اگر آن را بخرید و در ولتتان به آن نگاه کنید، شبیه 💩 به نظر میرسد!
قضیه وقتی جالبتر میشود، که بعد از چند روز بدون دریافت هشدار یا توضیحی، انافتیِ او از روی OpenSea حذف میشود:
این پیغام ادعا میکند که این انافتی، خلاف قوانین بوده. اما نویسنده که دوباره قوانین را مرور کرده، متوجه نشده کدام قانون را زیر پا گذاشته.
بعد از این که OpenSea این انافتی را از سیستم خودش حذف میکند، دیگر در ولتش روی دیوایسش هم وجود نداشت. مگر وب۳ یک شبکه توزیع شده نبود؟ چطور چنین چیزی ممکن است؟
مرکزیت جدید
اتفاقی که افتاده روشن است. یک ولت مثل MetaMask برای برقراری ارتباط با شبکهٔ اتریوم، از ایپیآی های شرکتهای سرویس دهنده مثل OpenSea استفاده میکند. مراکزِ وب۳.
همان طور که گفته شد، پاسخِ این درخواستها هیچ گونه صحت سنجی نمیشوند.
همچنین اگر شما چند حساب مختلف روی یک ولت داشته باشید، این شرکتها از در ارتباط بودن آن حسابها مطلعند. چون ولت شما از سشن ثابتی برای تعامل با سرورها استفاده میکند.
مادامی که همهٔ ولتها از این apiها استفاده میکنند، اهمیتی ندارد که انافتی مورد نظر، یک جایی در بلاکچین ذخیره شده. زمانی که در هیچ ولتی نمایش داده نشود، انگار وجود ندارد.
البته ما با این اتفاق غریبه نیستیم. کم کم دیگران هم دارند آشنا میشوند. (+ و +)
مردم با هیجان در مورد رویالتی (سهمِ شخص ایجاد کنندهٔ یک انافتی یا مالک اولیه، از معاملاتِ آیندهٔ آن) صحبت میکنند. اما دادهٔ مربوط به آن روی بلاکچین ذخیره نمیشود. بلکه مدیریت آن بر عهدهٔ OpenSea است. با قوانینِ وب۲. رویالتی در ERC-721 تعریف نشده و حالا هم برای ایجاد کردنش دیر شده. میدانیم که پروتکلها به کندی تغییر میکنند. برای همین OpenSea خودش دست به کار شده و آن چه که لازم بوده را به پلتفرمش اضافه کرده. یعنی همین حالا هم، پلتفرمهای وب۳ از پروتکلهای توزیع شده جلو زدهاند و کنترل بازی را دست گرفتهاند.
در واقع همین حالا هم، چیزی که شما از وضعیت بلاکچین در ولتتان مشاهده میکنید، یک نمای بیواسطه و دست نخورده از بلاکچین نیست. بلکه وضعیت بلاکچین از دیدِ OpenSea است و نیازمندِ دادههایی است که OpenSea جایی خارج از بلاکچین ذخیره کرده. برای همین، جایگزین کردن این پلتفرم به این سادگیها امکان پذیر نیست.
نویسنده این وضع را شبیه به وضعیت ایمیل میبیند. فرض کنید به خاطر مباحث حریم شخصی و محدودیتها و قوانین و چیزهای دیگری که بر پلتفرمها حاکم است، شما بخواهید برای داشتن یک ایمیل امن، میل سرور خودتان را راهاندازی کنید. اما تفاوتی ایجاد نخواهد شد. چون سمت دیگرِ هر ایمیلی که ارسال یا دریافت میکنید، احتمالا به جیمیل متصل است. باز هم دست جیمیل از دیتای شما کوتاه نمیشود.
اگر بخواهد مارکتپلیسی برای خودش راهاندازی کند تا بتواند انافتیِ گم شدهاش را در آن نشان دهد و به فروش برساند، زمانی که همه در حال استفاده از OpenSea هستند و همهٔ ولتها اطلاعات را از آن میگیرند، فایدهای ندارد.
این جا ما بدیهای وب۱ و وب۲ را با هم داریم. کنترلِ مرکزی، به همراه کندی، پیچیدگی و سربارِ شبکهٔ توزیع شده.
نویسنده قصدِ غر زدن از دست OpenSea را ندارد. اتفاقا برعکس، گمان میکند OpenSea آن چه که لازم بوده را پیاده سازی کرده و مفهوم کلاینت را به وب۳ آورده. ما باید از قبل انتظار چنین اتفاقی را میکشیدیم.
تازه اولشه
جواب خیلی از طرفداران این حوزه این است که این تازه شروع داستان است و این نواقص برطرف خواهد شد. در صورتی که خیلی از مفاهیمی که با آنها سر و کار داریم، حداقل برای یک دهه قبل است.
حتی اگر این حرفِ امیدوار کننده درست باشد، باز هم جای امیدواری نیست. حتی ممکن است جای نگرانی بیشتری داشته باشد. وقتی چنین مشکلاتی از همین ابتدا پدیدار شده و این قدر زود وب۳ به سرنوشت وب۱ دچار شده، مشخص است که مشکلاتِ ساختاری بر سر راه وبِ توزیع شده وجود دارد. اما اکثر طرفداران فعلی وب۳ یا این اشکالات را نمیبینند، یا اهمیتی برایشان ندارد. اگر از همین ابتدا این اشکالات اصلاح نشود و با همین فرمان ادامه پیدا کند، این پلتفرمها بزرگ و بزرگتر خواهند شد و کنار گذاشتن و جایگزینکردنشان سختتر و سختتر خواهد شد.
فرض کنید OpenSea بیاید و بلاک چین را کنار بگذارد. تصمیم بگیرد از این به بعد روی یک دیتابیس سنتی کارش را ادامه دهد. در این صورت خیلی بهتر خواهد شد. همه چیز سریعتر، کمدردسرتر و ارزانتر خواهد شد. همین حالا نویسنده اگر بخواهد پیشنهادی برای فروش انافتیاش را قبول کند، باید هزینهای بین ۸۰ تا ۱۵۰ دلار را بپردازد. هزینهٔ تراکنش روی شبکهٔ اتریوم. این هزینه در ذاتِ کریپتوکارنسی است. آن را با هزینهٔ یک پرداختِ معمولی با کارت اعتباری یا هزینهٔ یک کارت به کارت مقایسه کنید. کمی گران در میآید!
تازه امکان ذخیره کردن خود عکس، به جای یک url بی اصل و نصب، در دیتابیس ممکن میشود.
در آن صورت شفافیت چه میشود؟ OpenSea میتواند گزارش تراکنشها را به صورت زنده و کاملا عمومی منتشر کند. با این کار احراز صحت تراکنشها و شفافیت هم حفظ میشود.
اگر OpenSea از ابتدا پلتفرمی راه میانداخت براش خرید و فروش عکس و دیگر ربطی به بلاکچین، کریپتو و وب۳ نداشت احتمالا کارش نمیگرفت. نه به خاطر این که مرکزیت داشت. دلیل اصلی موفقیت فعلیاش، سوار شدن روی موج وب۳ و دیگر کلیدواژههای جذابش بود. نامشان را با این عناوین گره زدند و با بالا رفتن تبِ وب۳، بالا رفتند. مردمی که در حال معاملهٔ انافتی هستند، اهمیتی به شبکه توزیع شده نمیدهند. به تنها چیزی که اهمیت میدهند، پول است. با اوج گرفتن رمزارزها، این بازار هم برای سرمایه گذاری جذاب به نظر میرسید و همین، شد دلیل موفقیت OpenSea.
حالا که OpenSea در جذب اولیه موفق بوده و شناخته شده است و بازارش شکل گرفته، دیگر میتواند با کنار گذاشتن بلاکچین، پیشرفت کند.
تغییر
دیدگاه نویسنده، بسیار شفافتر از نگاه من به دنیای وب۳ است. چرا که به حداقل به اندازهٔ توسعه دو dApp وارد دنیای وب۳ شده و کمی از آن را چشیده. به نظرش وب۳ ما را از پلتفرمها بینیاز نخواهد کرد؛ گمان نمیکند تغییری اساسی در ارتباط ما با اینترنت و تکنولوژی ایجاد کند. فکر میکند علاقهمندیِ نردها به این حوزه، بیشتر به خاطر جدید بودنش است. افرادی که ذاتا خلاقند و به دنبال کشف چیزهای جدید هستند، در هر دنیایی، از جمله دنیای وب۳، سر میکشند و به ساخت و پیشبرد این دنیا کمک میکند. او امیدوار است این خلاقیت و اکتشاف، نتایج مثبتی داشته باشد، اما برای ایجاد یک تغییر اساسی کافی نیستند.
اگر قصد داریم رابطهمان با تکنولوژی وارد مرحله جدیدی شود، باید عمدا چنین تغییری را ایجاد کنیم. او دو ایده برای شروع چنین تغییراتی مطرح میکند:
۱. طراحی اعتماد توزیع شده
از آن جایی مردم دوست ندارند سرور راهاندازی کنند، ما نیاز داریم بدونِ وابستگی به زیرساختِ توزیع شده، به اعتماد توزیع شده برسیم. ما به مرکزیت، برای ارتباط کلاینت/سرور نیاز داریم. باید بتوانیم سیستمی طراحی کنیم که به نحوی با استفاده از شفافیت و رمزنگاری برروی زیرساختهای متمرکز، اعتماد و کنترلی توزیع شده داشته باشیم.
۲. راحت کردن توسعهٔ اپلیکیشن
طراحی و توسعه نرمافزار، بیش از حد پیچیده و فنی است. برای توسعه یک برنامهٔ ساده، به تیمی چند نفره نیاز است و طولی نمیکشد که بعد از مدتی، تیم توسعهٔ اپلیکیشنها به گروههای ۵۰ نفره و حتی بیشتر میرسد. نیاز به وقت و هزینهٔ زیادی است.
زمانی پای همهٔ مردم به حوزهٔ تولید محتوا(نه به صورت حرفهای. در حد پستهای اینستاگرام یا ویدیوهای یوتیوب) باز شد و دیگر این بازی در اختیار افراد فنی نبود، تحولی در اینترنت شکل گرفت. اگر چنین اتفاقی در سطح تولید برنامه بیافتد چه میشود؟ هر کس از هر قشری، بتواند برای استفاده خودش اپلیکیشنی و هم کیشانش، به راحتی یک نرمافزار تولید کند.
من فکر میکنم که نظر نویسنده، قابل توجه است. او مخالف وب۳ نیست، اما میگوید آن چه که قرار است واقعا تغییری ایجاد کند، هنوز کلید نخورده. مشکلاتی ساختاری مطرح کرده که باید بررسی شوند و راه حلی برایشان یافت. از طرفی ایدههایی که مطرح کرده هم بسیار جذاب به نظر میرسند. از وقتی این مقاله را خواندهام، طرحهای مختلفی در سرم شکل میگیرد تا به نحوی از این ایدهها استفاده کنم. خلاصه فکر میکنم دیدن و صحبت کردن در مورد این مشکلات، یکی از نیازهای اساسی جامعهٔ وب۳ باشد.
۱- مقالهٔ اصلی
۲- با تشکر فراوان از محمدحسن