تست نت اصطلاحی رایج در دنیای اینترنت و شبکه است که راه خود را به دنیای ارزهای دیجیتال هم باز کرده است. ماهیت تست نت تا حد زیادی از نام آن مشخص است. تست نت در حقیقت یک شبکه آزمایشی است که با هدف ارتقای حداکثری شبکه اصلی یا همان مین نت (Mainnet) راهاندازی میشود. این شبکه آزمایشی را میتوان نوعی «چرکنویس دیجیتالی» دانست که امکان آزمونوخطا و رفع نقایص را برای توسعهدهندگان فراهم میکند.
بهطور کلی دو نوع تستنت وجود دارد: نوعی که پیش از مین نت راهاندازی میشود و نوع دیگری که در حین کار مین نت منتشر میشود. عملکردهایی که این دو نوع تست نت ارائه میدهند از بسیاری جهات مشابه است؛ اما زمینهای که تست نتها در آن منتشر میشوند بهطور چشمگیری بر درک کاربران از آن تست نت و تأثیری که بر جامعه هدف خود میگذارند مؤثر است.
در این مقاله قصد داریم شبکههای آزمایشی و تفاوتهای آنها با شبکههای اصلی را بررسی کنیم، کاربردهای تست نت را بیان کنیم و نگاهی به شیوههای کلاهبرداری از طریق تست نتها و راههای اجتناب از آنها بیندازیم. با ما همراه باشید.
تست نت چیست؟
همان طور که در قسمت قبل هم اشاره کردیم، ماهیت تست نت تا حد زیادی از نام آن مشخص است.
تست نتها شبکههایی آزمایشی هستند که تأثیر بسزایی در رفع نقصهای شبکه اصلی و ارائه بهترین کد ممکن دارند.
همه توسعهدهندگان باتجربه میدانند که چیزی بهعنوان «کد بینقص» وجود ندارد؛ بنابراین تست نتها محیطی شبیه شبکه اصلی را در اختیار توسعهدهندگان قرار میدهند تا آنها بتوانند کد خود را با کمترین ریسک ممکن تست کنند.
توسعهدهندگان بلاک چینی از این شبکههای آزمایشی برای آزمایش برنامههای غیرمتمرکز خود بهره میبرند. همچنین زمانی که یک شبکه بلاک چینی قصد انجام بهروزرسانی در کد خود را داشته باشد، ابتدا این کار را در شبکه آزمایشی انجام میدهد و سپس نتیجه نهایی را در قالب شبکه اصلی ارائه میکند.
کدهایی که در یک تست نت نوشته میشوند بهراحتی قابلتغییرند و کوینهای آنها فاقد ارزش هستند. در واقع ارزش تست نتها به همین فاقدارزشبودن آنهاست.
عملکرد تست نتها و شبکههای اصلی بهشدت به یکدیگر مرتبط است و هیچیک از آنها بدون دیگری معنا ندارد. بنابراین برای درک بهتر ماهیت و کارکرد تست نتها بد نیست نگاهی هم به شبکههای اصلی داشته باشیم و آنها را بررسی کنیم.
مین نت چیست؟
شبکه اصلی یا همان مین نت (Mainnet) آخرین، پایدارترین و کاربردیترین نسخه بلاک چین است که در اختیار کاربران قرار میگیرد. مین نت در حقیقت یک بلاک چین مستقل است که شبکه خودش را راهاندازی کرده و فناوری و پروتکلهای مخصوص خود را دارد.
برخلاف تست نت که کوینهای آن فاقد ارزش هستند، کوینها و توکنهای مین نت ارزش منحصربهفرد دارند و از آنها برای دستیابی به اهداف شبکه استفاده میشود.
بنابراین میتوان گفت که تست نت در حقیقت یک پروژه بلاک چینی در حال توسعه است؛ در حالی که مین نت را میتوان یک بلاک چین کامل و توسعهیافته دانست.
مراحل زیادی وجود دارند که میتوانند پیش از راهاندازی مین نت سپری شوند. یکی از این مراحل، عرضه اولیه سکه یا همان ICO است. عرضه اولیه سکه باعث میشود که پروژه سرمایه لازم را برای ادامه کار خود جمعآوری کند و یکی از اقداماتی است که پیش از راهاندازی مین نت انجام میشود.
از معروفترین مین نتهای موجود میتوان به بلاک چینهای شناختهشدهای مانند بیت کوین، اتریوم، ایاس، ترون، تزوس و همه شبکههای دیگری اشاره کرد که بلاک چین اختصاصی و مستقل خود را دارند.
رکورد بزرگترین عرضه اولیه تاریخ به بلاک چین ایاس تعلق دارد. این عرضه اولیه یک سال به طول انجامید و در طی این یک سال، ایاس موفق شد ۴ میلیارد دلار سرمایه جمعآوری کند. همچنین گفتنی است بسیاری از مین نتهای معروفی که امروزه میشناسیم، در ابتدا روی مین نت اتریوم کار خود را آغاز کردند. یک نمونه خوب، بلاک چین ترون است. ترون در ابتدا توکنی ERC-۲۰ روی اتریوم بود؛ اما در ماه مه ۲۰۱۸ مین نت ترون رسماً راهاندازی شد و در ماه ژوئن همان سال، توکنهای آن به شبکه اصلی منتقل شدند.
کاربردهای تست نت
تا به اینجای مقاله درباره ماهیت کلی تست نت و مین نت صحبت کردیم. در این قسمت نیز قصد داریم نگاهی مختصر به برخی از کاربردهای تست نت داشته باشیم و پس از آن تفاوتهای مین نت و تست نت و روشهای کلاهبرداری از طریق تست نت را بررسی خواهیم کرد.
برخی از اصلیترین کاربردهای تست نت از این قرار هستند:
- امکان توسعه در یک محیط امن: با استفاده از تست نت، توسعهدهندگان میتوانند کدهای خود را در یک محیط امن و آزمایشی اجرا کنند و بدون نگرانی درباره نتیجه نهایی، آزمونوخطاهای موردنظر خود را انجام دهند؛
- بهحداقلرساندن اختلالات: امروزه توسعهدهندگان بلاک چینی در تلاشند تا چالشهایی مانند مقیاسپذیری و تعاملپذیری را به حداقل برسانند. همچنین حفظ و ارتقای مداوم امنیت بلاک چینها از اهمیت بالایی برخوردار است. توسعهدهندگان آزمونهای زیادی را در این راستا انجام میدهند و نمونههای اولیه خود را بدون ایجاد اختلال در شبکه اصلی، در تست نت اجرا میکنند؛
- امکان اجرای تستهای سازگاری برای اپلیکیشنهای غیرمتمرکز: هر اپلیکیشن غیرمتمرکزی که میخواهد کار خود را آغاز کند، باید مرحلهای از آزمایش و اصلاح را طی کند. قطعات جدید، ویژگیها و بسیاری دیگر از موارد مربوط به این اپلیکیشنها در تست نت آزمایش میشوند. از نمونههای این تستها میتوان به تستهای امنیتی، تست بارگیری، تست یکپارچهسازی، تست انتقال بلاک چین و بازیابی رویدادهای نامطلوب اشاره کرد.
مین نت و تست نت چه تفاوتی دارند؟
همان طور که متوجه شدهاید، تفاوت اصلی مین نت و تست نت در کاربرد و هدف آنهاست. با این حال، این دو نوع شبکه تفاوتهای دیگری هم با یکدیگر دارند که بیانکردن آنها خالی از لطف نیست. تفاوتهای موجود بین شبکه اصلی و شبکه آزمایشی را میتوان در شش مورد «هدف»، «هزینه عملیات»، «شناسه شبکه»، «بلاک جنسیس»، «نودها» و «آدرسها» خلاصه کرد.
تا به اینجای مقاله درباره اهداف متفاوت مین نت و تست نت صحبت کردیم. در رابطه با هزینه عملیات، باید بگوییم از آنجا که کوینهای تست نت در حقیقت ارزش مادی ندارند، تراکنشهایی که در این شبکهها انجام میشوند هم هزینهای ندارند. این در حالی است که انجام تراکنش در مین نت مستلزم پرداخت هزینه است. شما برای انجام هر تراکنشی در شبکههای اصلی از جمله ایجاد یک قرارداد هوشمند یا انجام یک تراکنش به این قرارداد، باید دستکم کارمزد شبکه را پرداخت کنید.
یکی از تفاوتهای مهم بین مین نتها و تست نتها، تفاوت شناسهها یا همان IDهای آنهاست. بهعنوان مثال، ID شبکه اصلی اتریوم ۱ است؛ در حالی که ID شبکههای آزمایشی راپستن (Ropsten)، رینکبای (Rinkeby) و کوان (Kovan) که هرسه متعلق به اتریوم هستند، بهترتیب ۳، ۴ و ۴۲ است.
میدانید که اولین بلاک هر شبکهای را بلاک اولیه یا بلاک جنسیس (Genesis Block) آن شبکه میخوانند. جالب است بدانید که مین نتها و تست نتها هرکدام بلاک جنسیس متعلق به خود را دارند و در حقیقت بلاکهای جنسیس آنها با یکدیگر متفاوت هستند.
همچنین لازم است بدانید که آدرسهای شبکه آزمایشی و شبکه اصلی با یکدیگر متفاوت هستند. بهعنوان مثال، آدرسهای شبکه اصلی بیت کوین با ۱، ۳ یا bc1 شروع میشوند؛ در حالی که آدرسهای متعلق به شبکه آزمایشی بیت کوین با m یا n آغاز میشوند.
و در نهایت در رابطه با تعداد نودها، واضح است که تست نتها نودهای کمتری دارند و میتوان گفت که نودهای آنها را تنها توسعهدهندگان تشکیل میدهند، نه کاربران عادی.
یکی از نکات مهمی که در این قسمت باید به آن اشاره کنیم، تفاوت بین کاوشگرهای بلاک شبکه اصلی و شبکه آزمایشی است. مین نتها و تست نتها هریک کاوشگرهای بلاک خاص خود را دارند. بهعنوان مثال، اگر نگاهی به کاوشگر بلاک blockchain.com داشته باشید، متوجه میشوید که از دو بخش مجزا مربوط به شبکه اصلی بیت کوین و شبکه آزمایشی بیت کوین پشتیبانی میکند.
با نگاهی به بخش مربوط به شبکه آزمایشی بیت کوین متوجه میشوید که تعداد تراکنشهای این شبکه نسبت به شبکه اصلی بسیار بیشتر است (۲,۱۳۷,۶۶۲ تراکنش در شبکه آزمایشی در مقابل ۷۲۰,۴۷۷ تراکنش در شبکه اصلی، در زمان نگارش این مقاله).
دلیل این امر مشخص است. همان طور که پیشتر بیان کردیم، تراکنشهایی که در تست نتها انجام میشوند رایگان و متعلق به توسعهدهندگان هستند. توسعهدهندگان بلاک چینی از شبکههای آزمایشی برای تستکردن کدهای خود بدون نیاز به پرداخت کارمزد استفاده میکنند و طبیعی است که تعداد تراکنشهایی که در این شبکهها ثبت میشوند بیشتر باشد.