تصور کنید یک معمار بخواهد طراحی داخلی یک خانه را تغییر دهد. به نظر شما از همان ابتدا شروع به خراب کردن دیوارها و کف میکند؟ مسلماً خیر. این شخص ابتدا باید در نرمافزارهای طراحی آنچه که انتظار دارد، را ترسیم کند و سپس با برآورد بودجه و تهیه مصالح لازم شروع به تخریب و بازسازی کند. آنچه که در این مقاله از داموندمگ میخواهیم از آن صحبت کنیم، یعنی شبکه آزمایشی اتریوم یا تست نت اتریوم، همین مفهوم را دارد.
امکان ندارد که تیم توسعه یک اپلیکیشن غیرمتمرکز یا شبکه در فضای بلاک چین، تغییرات مورد نظر خود را مستقیماً روی شبکه اصلی ایجاد کند، چراکه مشکلات زیادی به همراه خواهد داشت. به همین علت از تست نتها یا شبکههای آزمایشی استفاده میکنیم.
تست نت چیست؟
تست نت (Test net) یا شبکه آزمایشی، یک شبکه جانبی در کنار شبکه اصلی یا مین نت است، که توسعهدهندگان از آن برای بررسی درستی کارکرد شبکه و کدهای خود استفاده میکنند. تست نتها را میتوانیم به راحتی تغییر دهیم، زیرا عملاً ارزشی ندارند.
آنچه در تست نت آزموده میشود، کاربردها، ویژگیها و امکاناتی است که قرار است شبکه اصلی داشته باشد. به این ترتیب تمام این موارد در شبکه آزمایشی بررسی میشوند و سپس وقتی نهایی شدند، به مین نت منتقل میشوند.
به طور کلی دو نوع تست نت داریم، یکی پیش از راهاندازی شبکه اصلی استفاده میشود و دیگری در طول حیات شبکه اصلی. نوع دوم، جایی است که توسعهدهندگان آپدیتهای هر شبکه را پیش از انتشار روی آن بررسی میکنند.
در حوزه ارز دیجیتال و بلاک چین، استفاده از تست نت بسیار دیده میشود، معروفترین تست نتها در این حوزه به ارزهای دیجیتال بیت کوین، اتریوم و ایاس تعلق دارند. در این مقاله هم ما قصد داریم، با تمرکز بر شبکه آزمایشی اتریوم، بحث تست نتها را پیش ببریم.
کاربردهای تست نت چیست؟
برای آنکه بتوانیم به درک مناسبی از شبکههای آزمایشی برسیم، لازم است کاربردهای آن را بشناسیم. کاربردهای اصلی تست نت عبارتند از:
آزمون و خطا
توسعهدهندگان نمیتوانند هر تغییری که میخواهند در شبکه اصلی ایجاد کنند، چراکه کاربران واقعی در حال استفاده از آن هستند و نباید هیچ مشکلی رخ دهد. به همین دلیل از تست نت استفاده میشود، تا تیم توسعه بدون نگرانی از مشکلات احتمالی، تغییرات دلخواه خود را با آزمون و خطا ایجاد کند.
حذف اختلال از شبکه اصلی
عمده مشکلاتی که تیم توسعه را به ایجاد تغییر وامیدارد، سه اصل مقیاسپذیری، امنیت و غیرمتمرکز بودن است. هرگونه تغییر در هریک از این موارد، شبکه را با اختلال مواجه خواهد کرد. به همین دلیل از شبکه آزمایشی استفاده میشود.
تست اپلیکشین های غیرمتمرکز
در هر نوع برنامهنویسی و توسعه نرمافزاری، مرحله تست وجود دارد. در مورد شبکه بلاک چین و اپلیکیشنهای غیرمتمرکز نیز به همین ترتیب است. تستهایی که برای اپلیکیشنهای غیرمتمرکز روی تست نت انجام میشوند عبارتند از: تست امنیتی، آزمون یکپارچهسازی، آزمون بارگیری و غیره.
شبکه آزمایشی اتریوم چیست؟
شبکه آزمایشی اتریوم یا تست نت اتریوم مجموعهای از نودها است، که برای آزمایش پروتکل اتریوم استفاده میشود. تستها روی شبکههای آزمایشی اجرا میشوند تا اطمینان حاصل شود که پروتکل مطابق انتظار کار میکند. شبکههای آزمایشی از این نظر شبیه به آزمونهای آزمایشی هستند که برای تست پروتکل در یک محیط کنترلشده استفاده میشوند.
نوشتن قراردادهای هوشمند و استقرار آنها در شبکه اصلی عملیات بسیار گرانتری نسبت به نوشتن تستها و استقرار آنها در شبکه آزمایشی است. این به این دلیل است که قبل از اینکه بتوانیم قراردادهای هوشمند خود را در شبکه اصلی مستقر کنیم، باید هزینههای گس را پرداخت کنیم و این هزینهها واقع هستند.
بدیهی است که وقتی فقط قراردادهای هوشمند خود را آزمایش میکنیم، دوست نداریم پول واقعی خرج کنیم. اینجاست که شبکههای آزمایشی وارد میشوند. تست نتها ارز دیجیتال رایگانی را ارائه میکنند که میتوانید از آن برای پرداخت هزینههای گس استفاده کنید. از آنجایی که این ارز دیجیتال رایگان ارزشی ندارد، نمیتوانیم از آن در شبکه اصلی استفاده کنیم. به بیان ساده، باید قراردادهای هوشمند خود را قبل از استقرار آنها در شبکه اصلی، روی یک شبکه آزمایشی تست کنیم.
معرفی ۴ تست نت اتریوم
رینکبی (Rinkeby)
رینکبی یک شبکه آزمایشی اتریوم و فورکی از مین نت آن است که برای آزمایش پروتکل اتریوم استفاده میشود. رینکبی شما را قادر میسازد تا قبل از استقرار در شبکه اصلی اتریوم، DAppهای خود را در یک محیط آزمایشی توسعه دهید.
رینکبی در آوریل 2017 توسط بنیاد اتریوم ساخته شد و توسط تیم توسعهدهنده Geth نگهداری میشود. از مکانیسم اجماع اثبات اعتبار (POA) استفاده میکند.
رینکبی آمار شبکه از جمله تعداد نودها، تراکنشها و بلوکها را نمایش میدهد. علاوه بر این، تعداد تراکنشها در ثانیه، تعداد بلوکها در ثانیه و تعداد همتاها را نشان میدهد، که تعداد گرههایی است که به رینکبی متصل هستند.
سایت Rinkeby یک بلاک کاوشگر دارد که بلاک چین را در قالبی قابل خواندن به شما نشان میدهد:
برای نوشتن یک قرارداد هوشمند و استقرار آن در شبکه آزمایشی Rinkeby، اولین قدم این است که افزونه متامسک را روی مرورگر دسکتاپ خود نصب کنید.
- ابتدا به فروشگاه کروم بروید و متامسک را جستجو کنید. روی افزونه متامسک کلیک کرده و آن را نصب کنید.
- پس از نصب، به منوی کروم بروید و روی دکمه Add-ons کلیک کنید. سپس روی Extensions و سپس MetaMask کلیک کنید.
- متامسک ظاهر میشود و از شما میخواهد وارد شوید. اگر حساب کاربری ندارید، میتوانید با کلیک کردن روی دکمه ایجاد، حساب کاربری ایجاد کنید. پس از آن، میتوانید وارد متامسک شوید.
همانطور که میبینید، چندین شبکه آزمایشی برای انتخاب وجود دارد، از جمله Ethereum Mainnet، Rinkeby Test Network، Kovan Test Network، Ropsten Test Network و Goerli Test Network. Localhost: 8545 یک نود اتریوم است که به صورت محلی روی دستگاه شما اجرا میشود.
شبکه تست Rinkeby را انتخاب کنید:
همانطور که میبینید، ما 0 اتریوم داریم. ابتدا باید آدرس اتریوم خود را کپی کنیم. برای انجام این کار، روی نماد کپی کلیک کنید تا آدرس اتریوم شما کپی شود.
برای آنکه بتوانید اتریوم رایگان به دست آورید، باید وارد وب سایت faucet.rinkeby.io شوید و با کپی پیست کردن آدرس تست نت رینکبی خود اتریوم رایگان بگیرید.
همچنین سایتهای شخص ثالثی وجود دارند که اتریوم رایگان را در شبکه رینکبی ارائه میدهند، مانند Rinkeby Ether Faucet. به سادگی آدرس اتریوم خود را در قسمت «آدرس من» جایگذاری کنید و برای دریافت اتریوم رایگان روی ارسال کلیک کنید.
دریافت اتریوم رایگان در وب سایت faucet.rinkeby.io دشوار است، زیرا دریافت نهایی زمانه انجام میشود که، یک پست در رسانههای اجتماعی برای رینکبی منتشر کنید و هشت ساعت برای کسب 3 اتریوم، یک روز برای دریافت 7.5 اتریوم و سه روز برای دریافت 18.5 اتریوم منتظر بمانید. مسلماً این زمان خیلی زیاد است.
رینکبی فقط از سرویس گیرنده Geth برای انجام معاملات در شبکه استفاده میکند. این شما را مجبور میکند هنگام انجام تراکنشها در شبکه رینکبی به Geth سوئیچ کنید، که این نیز یک مشکل بزرگ دیگر است.
یکی از مزیتهای کلیدی این است که رینکبی از اثبات اعتبار استفاده میکند، که به داشتن سرعت بالا در دنیای بلاک چین شناخته میشود.
کوان (Kovan)
کوان یکی دیگر از شبکههای آزمایشی است که برای آزمایش پروتکل اتریوم استفاده میشود. مانند رینکبی، کوان یک فورک از شبکه اصلی است. Kovan در ژوئن 2017 توسط بنیاد اتریوم ساخته شد و مانند رینکبی توسط تیم توسعهدهنده Geth نگهداری میشود و از مکانیسم اجماع اثبات اعتبار استفاده میکند. به طور کلی کوان از همان ویژگیهای رینکبی پشتیبانی میکند. همچنین میتوانید از وب سایت رسمی faucet.kovan.network برای دریافت اتریوم رایگان در این شبکه آزمایشی اتریوم استفاده کنید.
میتوانید توکنهای ERC-20، ERC-721 و ERC-1155 را در شبکه آزمایشی کوان وارد کنید، تا آخرین بلوکها، آخرین تراکنشها و توکنهای ERC-20، -721 و 1155 را مشاهده کنید. همچنین میتوانید آدرسها، تراکنشها، بلوکها و دیگر اطلاعات دلخواه را جستجو کنید.
اتریوم رایگانی که در کوان به دست میآوریم، کوان اتر (kEth) نام دارد. برای دریافت کوان اتر رایگان در کوان، میتوانید از وب سایت رسمی که پیشتر معرفی کردیم، استفاده کنید. با استفاده از آن، میتوانید فوراً یک کوان اتر در هر 24 ساعت به ازای هر حساب GitHub دریافت کنید. همچنین میتوانید کوان اتر رایگان را در اتاق گفتگوی کوان گیتر (Kovan Gitter) به دست آورید. برای دریافت کوان اتر رایگان، به اتاق گفتگو بپیوندید و آدرس Kovan testnet خود را کپی پیست کنید.
کوان برخلاف اتریوم که از اثبات اجماع سهام استفاده میکند، از مکانیسم اجماع اثبات اعتبار استفاده میکند. این باعث میشود شبکه آزمایشی کوان کمی با شبکه اصلی اتریوم متفاوت باشد. دریافت اتریوم رایگان در کوان در مقایسه با سایر شبکههای آزمایشی نسبتاً آسان است. تنها کاری که باید انجام دهید این است که آدرس اتریوم خود را به کانال کوان گیتر ارسال کنید.
راپستن (Ropsten)
راپستن در آگوست 2017 توسط بنیاد اتریوم ایجاد شد و مانند بسیاری از شبکههای آزمایشی محبوب اتریوم، توسط تیم توسعهدهنده Geth نگهداری میشود و از مکانیسم اجماع اثبات اعتبار استفاده میکند.
سایت راپستن درست مانند سایت شبکه تست کوان آخرین بلوکها و آخرین تراکنشها را نشان میدهد. همچنین میتوانید توکنهای ERC-20، -721 و -1155 و همچنین آدرسهای جستجو، تراکنشها، بلوکها و غیره را مشاهده کنید.
برای دریافت اتریومهای رایگان راپستن هم باید از وب سایتی که برای این کار انتخاب شده استفاده کنید و آدرس اتریوم خود را در آن قرار دهید.
شبکه آزمایشی Ropsten به عنوان شبکهای در نظر گرفته میشود که بیشترین ارتباط را با شبکه اصلی اتریوم دارد، البته از مکانیسم اجماع اثبات کار استفاده میکند.
در فوریه 2017، راپستن مورد حمله قرار گرفت و متوقف شد. مهاجم محدودیت گس را به 200 میلیون و پاداش استخراج را تا 12 اتریوم افزایش داد. سپس حمله متوقف شد و شبکه آزمایشی راپستن در آگوست 2017 بازسازی شد.
مزیت استفاده از راپستن در مقایسه با سایر شبکههای آزمایشی این است که این شبکهای است که به طور صادقانه از شبکه اصلی اتریوم تقلید میکند. الگوریتم اجماع آن همانند شبکه اصلی اتریوم است که آن را به یک انتخاب عالی برای توسعه دهندگان اتریوم تبدیل میکند.
علاوه بر این، دریافت اتریوم رایگان در Ropsten نسبت به سایر شبکههای آزمایشی سادهتر است. تنها کاری که باید انجام دهید این است که آدرس اتریوم خود را در وب سایت قرار دهید تا در عرض 5 دقیقه 0.3 اتریوم دریافت کنید. همچنین راپستن از کلاینتهای Geth و Parity پشتیبانی میکند که آن را در مقایسه با سایر شبکههای آزمایشی بسیار سازگار میکند.
گوئرلی (Goerli)
Goerli در نوامبر 2018 توسط تیم Parity ایجاد شد. مانند بسیاری از شبکههای آزمایشی که در بالا توضیح داده شد، از مکانیسم اجماع اثبات اعتبار استفاده میکند.
وب سایت گوئرلی آخرین بلوکها و تراکنشها و همچنین توکنهای ERC-20، -721 و -1155 را نمایش میدهد. مانند سایر شبکههای آزمایشی که ارزیابی کردیم، میتوانید آدرسها، تراکنشها، بلوکها و غیره را با استفاده از Goerli جستجو کنید. اطلاعات مربوط به جدیدترین نسخههای شبکه آزمایشی Goerli در GitHub موجود است
میتوانید اتریوم رایگان را به آدرس اتریوم خود در شبکه آزمایشی Goerli با استفاده از منبع رسمی Goerli Testnet ارسال کنید. به سادگی آدرس اتریوم خود را جایگذاری کنید و دکمه REQUEST 0.05 GÖETH را فشار دهید تا 0.05 GÖETH را دریافت کنید.
سخن پایانی
شبکه آزمایشی اتریوم، شاید مهمترین تست نت باشد. همگی به خوبی از اهمیت اتریوم و اینکه چگونه به پیشرفت صنعت کریپتو کمک کرده است، آگاه هستیم. بنابراین اینکه اتریوم فضای مخصوصی داشته باشد، که بدون ایجاد اختلال در شبکه اصلی بتوانیم توسعههای مورد نظر خود را در آن آزمون و خطا کنیم، حائز اهمیت است.
سؤالات متداول
چرا از تست نت ها استفاده می کنیم؟
تست نتها بسترهایی هستند که بدون نگرانی از ایجاد اختلال و مشکل در شبکه اصلی، میتوانیم در آن تغییر ایجاد کنیم و برنامهها و اپلیکیشنهای جدید خود را بیازماییم.
اتریوم چند تست نت دارد؟
4 تست نت اصلی در اتریوم وجود دارد، که معمولاً از آنها استفاده میشود. این شبکهها عبارتند از: رینکبی (Rinkeby)، کوان (Kovan)، راپستن (Ropsten) و گوئرلی (Goerli).
لازمه فعالیت در شبکه آزمایشی اتریوم چیست؟
همانطور که میدانید لازمه هر فعالیتی در شبکه اتریوم پرداخت کارمزد یا همان گس است. در شبکه آزمایشی اتریوم نیز این مسئله وجود دارد، اما از آنجایی که این یک شبکه واقعی نیست، میتوانیم از اتریومهای رایگان و بیارزش برای پرداخت گس استفاده کنیم. به این منظور باید آدرس اتریوم خود را به وب سایتهایی که منابع اصلی اتریوم رایگان هرکدام از تست نتها هستند بدهیم و درازای آن اتریوم رایگان بگیریم.