اساساً برای هر توسعه دهنده، دسترسی به شبکه ای کامل و بی نقص، از اهمیت بسیار بالایی برخوردار خواهد بود. از طرفی ساخت شبکه ای بدون اختلال و نقص فنی و امنیتی نیز نیازمند انجام آزمون و خطاهای فراوان است؛ از این رو پرسش اصلی این است که چطور می توان بدون راه اندازی یک شبکه، آن را آزمایش کرده و خطاهای آن را پیدا کرد؟ درحقیقت این کار با استفاده از شبکه آزمایشی یا Testnet امکان پذیر است.
به طورکلی، پایه و اساس دنیای ارزهای دیجیتال و امور مالی غیرمتمرکز یا defi/’>دیفای (DeFi) فناوری بلاک چین است. این فناوری باقابلیت های بی نظیر خود (همچون غیرمتمرکز بودن و امکان انجام تراکنش های مالی به شکل ناشناس)، روزبه روز از محبوبیت بالاتری برخوردار شده و همین موضوع سبب شده تا هر روز شاهد راه اندازی پروژه های بلاک چینی جدیدی باشیم.
از طرفی، یکی از گام های بسیار مهم در توسعه هر پروژه ارز دیجیتال یا دیفای بر بستر بلاک چین، همین شبکه آزمایشی یا Testnet است. درواقع هدف از راه اندازی شبکه آزمایشی، آزمایش کردن یک شبکه پیش از راه اندازی آن است، اما در مقابل تست نت، شبکه اصلی یا مین نت (MainNet) قرار دارد که همان بلاک چین اصلی یک ارز دیجیتال است. درواقع Testnet ها را می توان به ۲ دسته بندی کلی تست نت هایی که پیش و بعد از شروع به کار مین نت اجرا می شوند تقسیم بندی کرد.
امروزه تراکنش هایی به ارزش میلیاردها دلار بر بستر شبکه های بلاک چینی انجام می شود. حال فرض کنید اگر این بلاک چین ها و پلتفرم ها بدون تست شدن راه اندازی می شدند، چه مشکلاتی به وجود می آمد. بلاک چین ها و اپلیکیشن های آزمایش نشده می توانند مشکلاتی داشته باشند که خسارت های چند میلیارد دلاری به مردم وارد کنند و کل دنیای ارزها و دیفای را تحت تأثیر قرار دهند
از این رو در این مطلب قصد داریم به معرفی تست نت ها پرداخته و ضمن بررسی تفاوت های آن ها با مین نت ها، به کلاه برداری هایی که از طریق تست نت ها انجام می گیرد نیز اشاره داشته باشیم.
تست نت چیست؟
نوعی شبکه بلاک چین آزمایشی است که برای اجرا و آزمایش کردن بلاک چین ها یا پروژه های بلاک چین پیش از راه اندازی یا حتی پس از راه اندازی آن ها ایجاد و اجرا می شود. اساساً راه اندازی Testnet ساده ترین روشی است که برنامه نویسان و توسعه دهندگان می توانند از طریق آن، قابلیت های مختلف پروژه های بلاک چین و دیفای، مثل انواع مختلف قراردادهای هوشمند و اپلیکیشن های غیرمتمرکز (dApps) را تست و اصلاح کنند و تا زمانی که برای استفاده در دسترس عموم قرار می گیرند، به عملکرد آن ها نظارت داشته باشند.
برنامه نویسان و توسعه دهندگان در تست نت ها، ایرادات پروژه ها، اپلیکیشن ها، قراردادهای هوشمند، صرافی های غیرمتمرکز و هر قابلیت بلاک چین و دیفای را آزمایش کرده و ایرادات آن را شناسایی و برطرف می کنند. از طرفی، در محیط Testnet می توان آزمایش های مختلفی را به صورت مکرر انجام داد و عملکرد هر قابلیت را پیش از عمومی شدن آن، تحت نظر داشت و بررسی کرد.
از آنجا که Testnet ها به صورت کاملاً مجزا از مین نت ها عمل می کنند، می توان در آن ها پروژه های بلاک چین را بدون تداخل با تراکنش ها در مین نت، به طور کامل آزمایش کرد. مدل جعبه شن یا سند باکس (Sandbox) به توسعه دهندگان و برنامه نویسان امکان می دهد تا ریسک ها و آزمایش های مختلفی را انجام دهند و به بهترین مدل ممکن برای راه اندازی بر بستر مین نت برسند.
از آنجا که Testnet ها، پیش نمونه یا پروتوتایپ محسوب می شوند، هرگز نبایستی از آن ها برای انتقال دارایی های ارزشمند استفاده کرد، بلکه برای انجام آزمون ها و آزمایش مدل ها در این شبکه ها بایستی از توکن های تقلبی و بدون ارزش استفاده شود. همچنین معمولاً توسعه دهندگان برای راه اندازی و آزمایش بلاک چین ها، تست نت ها را می سازند و زمانی که توسعه بلاک چین پس از پشت سر گذاشتن تمامی آزمایش ها و رفع تمامی نواقص به پایان رسید، آن را در مین نت راه اندازی می کنند.
دوره آموزشی از صفر تا سطح پیشرفته در ترید که با هدف “استاد تمامی ترید” طراحی شده است
برخی از بلاک چین ها مانند اتریوم دارای روش های استانداردی برای آزمایش کردن پروژه ها، اپلیکیشن ها و دیگر انواع قابلیت های دیفای هستند. این بلاک چین ها، به پروژه هایی که آزمون ها را با موفقیت پشت سر می گذارند، گواهینامه می دهند. این گواهینامه ها خیال کاربران را راحت می کنند و سبب جلب اعتماد آن ها می شوند. به علاوه، یکی از مدارک موردنیاز برای پذیرش پروژه ها در آن بلاک چین ها هستند.
مین نت (MainNet) چیست؟
در بالا به طور کامل توضیح دادیم که Testnet چیست و حالا زمان آن رسیده که مین نت یا شبکه اصلی را برای شما همراهان گرامی توضیح دهیم. به صورت کلی مین نت نیز همان طور که از نام آن مشخص است، به معنی شبکه اصلی است که بلاک چین یا پروژه بلاک چین روی آن اجرا می شود. راه اندازی پروژه یا بلاک چین در مین نت، بعد از آزمایش کردن موفق آن در تست نت انجام می شود.
درحقیقت مین نت، یک شبکه کاملاً توسعه یافته است که می توان در آن تراکنش های واقعی انجام داد و تراکنش ها را ثبت و تأیید کرد. وقتی توسعه دهندگان پروژه ای، آن را در مین نت راه اندازی می کنند، درواقع اعلام می دارند که آزمایش های لازم را روی پروژه انجام داده اند و به آن اعتماد کامل دارند.
مین نت ها، بلاک چین هایی کاملاً عملکردی هستند که کاربران می توانند تراکنش های ارزهای دیجیتال یا NFT ها را بر بستر آن ها انجام دهند یا به مبادله اطلاعات بپردازند. به علاوه، می توان از مین نت ها برای اجرای پروژه ای که نیازمند نوعی پروتکل ویژه بلاک چین است، استفاده کرد؛ برای مثال می توان به اجرای dApp ها بر بستر مین نت اتریوم اشاره داشت.
مین نت ها امکان استفاده عمومی از dApp ها را فراهم می آورند. از آنجا که در مین نت ها، از دارایی های دارای ارزش واقعی استفاده می شود، تأییدکننده ها برای مشارکت در آن ها، انگیزه کافی دارند. پروژه هایی که مین نت دارند، بیشتر مورد اعتماد کاربران هستند و می توان آن ها را پروژه های پخته تری دانست. وقتی پروژه ای مین نت داشته باشد، کاربران می دانند منابع زیادی به آن پروژه اختصاص یافته و کار زیادی روی آن انجام شده است.
تفاوت های میان تست نت و مین نت
در ادامه قصد داریم به تفاوت های Testnet و مین نت پرداخته تا بدین ترتیب به درک صحیحی از این دو مفهوم دست پیدا کنیم.
آی دی شبکه
اساساً آی دی تست نت با آی دی مین نت متفاوت است. درواقع آی دی تست نت های Ropsten، Rinkeby و Kovan در اتریوم به ترتیب، 3، 4 و 42 است؛ درحالی که آی دی Testnet با آی دی مین نت تفاوت دارد. آی دی مین نت اتریوم، 1 است.
وضعیت انتشار کد
کد Testnet ها منتشر نمی شود؛ زیرا هنوز روند توسعه کامل نشده است؛ درحالی که کد مین نت ها منتشر می شوند و در دسترس عموم قرار می گیرند.
هدف
در تست نت هدف از اجرای آزمایشی پروژه با دارایی های بدون ارزش و غیرواقعی به منظور پیداکردن نقاط ضعف، خطاها، باگ ها و ایرادات و برطرف کردن آن ها پیش از راه اندازی در مین نت است؛ درحالی که در مین نت، پروژه بلاک چین اصلی که تراکنش های دارایی های باارزش و واقعی در آن انجام می شوند.
هزینه عملیات
در Testnet توکن ها هیچ ارزشی ندارند؛ بنابراین تراکنش ها در تست نت بدون کارمزد هستند؛ درحالی که در تراکنش های مین نت از توکن های واقعی استفاده می شود؛ بنابراین، هر تراکنش دارای کارمزد است. درنتیجه، هزینه عملیات در مین نت بالاتر از Testnet است.
تعداد تراکنش ها
در تست نت تعداد تراکنش ها، کمتر از تعداد تراکنش در مین نت است؛ درحالی که در مین نت، تعداد تراکنش ها، بیشتر از تعداد تراکنش ها در Testnet است.
جنسیس بلاک یا نخستین بلوک شبکه (Genesis Block)
در تست نت، نخستین بلوک شبکه مستقل از نخستین بلوک شبکه در مین نت است؛ درحالی که در مین نت، نخستین بلوک شبکه، مستقل از نخستین بلوک شبکه در Testnet است.
گره ها
در تست نت، تعداد گره ها، کمتر از تعداد گره ها در مین نت است؛ درحالی که در مین نت، تعداد گره ها، بیشتر از تعداد گره ها در Testnet است.
کاربردهای اصلی شبکه آزمایشی یا Testnet
آزمایش رایگان و کاهش هزینه های شبکه
برای اینکه بلاک چین عملکرد قرارداد هوشمند را فعال کند، باید از ارز دیجیتال خود شبکه برای انجام تحویل استفاده شود؛ برای مثال اتر (ETH) یک درخواست پرداخت برای محاسباتی است که در شبکه بلاک چین اتریوم انجام می شود. برای توسعه دهندگان، آزمایش ویژگی های برنامه یا اجرای آزمایش ها در شبکه اصلی بسیار پرهزینه خواهد بود؛ زیرا آن ها باید مقادیر زیادی ارز دیجیتال با ارزش واقعی خریداری کنند.
تست نت یک پلتفرم آزمایشی برای توسعه دهندگانی فراهم می کند که می خواهند برنامه های کاربردی را در بلاک چین ایجاد کنند یا عملکردهای خاصی را بدون هزینه آزمایش کنند. Testnet می تواند در ساخت اپلیکیشن های غیرمتمرکز، ایفای نقش به عنوان اعتباردهنده، آزمایش قراردادهای هوشمند یا صدور توکن های جدید، شبکه های توسعه شبکه بلاک چین و… استفاده شوند. شبکه های آزمایشی می توانند بدون به خطر افتادن شبکه اصلی ارزش قابل توجهی برای شبکه های اصلی بلاک چین ارائه دهند.
افزایش ایمنی و کاهش حداکثری اختلالات مین نت ها
تیم های بلاک چین با سرعت بالایی برای حل کردن مشکلاتی مثل مقیاس پذیری، امنیت و غیرمتمرکز بودن، تلاش می کنند. آزمایش های متعددی در تست نت ها انجام می شوند و این آزمون ها، هیچ اختلالی در مین نت ها ایجاد نمی کنند. درحقیقت Testnet به آزمایش کنندگان و توسعه دهندگان برنامه اجازه می دهد تا ویژگی ها و عملکرد پروتکل را بدون نگرانی درمورد شکستن زنجیره اصلی بلوک در یک محیط جداگانه آزمایش کنند. انجام آزمایش روی شبکه اصلی امکان پذیر نیست؛ زیرا تعاملات پیچیده بین اجزای موجود در پروتکل می تواند به شبکه آسیب برساند یا زنجیره اصلی را بشکند. این امر سبب اختلال عمده در بلاک چین می شود و ممکن است پروتکل را ضعیف کند؛ بنابراین این یک روش معمول برای پروژه هایی است که ابتدا نمونه اولیه را در شبکه آزمایشی اجرا می کنند تا مشخصات را حل کنند و اطمینان حاصل کنند که همه چیز در نظم درست است.
توسعه مستمر
فناوری بلاک چین هنوز در مراحل ابتدایی است و نیاز به آزمایش و توسعه زیادی دارد تا به تدریج به جریان اصلی و مجاز تبدیل شود. محیط تست نت برای تأمین این امر ایجادشده است؛ برای مثال یکی از مسائل اصلی که در جامعه بلاک چین حل می شود، مقیاس پذیری است. تحقیق و توسعه مداوم، توانایی بلاک چین را برای مدیریت تراکنش های بیشتر افزایش می دهد. به منظور بهبود مستمر قابلیت های بلاک چین، آزمایش های زیادی در مورد عملکرد قرارداد هوشمند، تراکنش ها و فرایندهای استخراج باید انجام شود. Testnet به عنوان یک شبیه سازی از نحوه عملکرد پروتکل شبکه بلاک چین اصلی (mainnet) در زندگی واقعی عمل می کند.
آزمایش سازگاری اپلیکیشن های غیرمتمرکز
هر اپلیکیشن غیرمتمرکز، قبل از اجرایی شدن بر بستر بلاک چین، باید آزمایش های متعددی را پشت سر بگذارد و باگ های آن برطرف شود. بسته های به روزرسانی جدید، قابلیت های جدید و… پیش از اجرایی شدن در Testnet آزمایش می شوند. برخی از این تست ها عبارت اند از: آزمایش های امنیتی، تست بارگذاری، مهاجرت بلاک چین، آزمون یکپارچه سازی، آزمون مدیریت بحران و بازیابی پس از حادثه.
برخی نگرانی ها درباره تست نت
با وجود مزایای برجسته ای که در بالا برای Testnet ذکر کردیم، ماهیت بی ارزش تعداد بی شماری از ارزهای آزمایشی (شبکه Testnet ها)، ممکن است کاربران را در معرض خطرات امنیتی قرار دهد. اگرچه با پیچیده ترشدن شبکه های بلاک چین، اثربخشی رو به کاهش خواهد رفت، یک حمله مجدد وقتی اتفاق می افتد که یک تراکنش معتبر بر بستر یک شبکه بلاک چین و به صورت مخرب یا متقلبانه تکرار شود.
برای نمونه، دو بار پرداختن هزینه بین یک شبکه آزمایشی و شبکه اصلی، یکی از این موارد است. همچنین برخی از کلاه بردارها تلاش دارند ارز دیجیتال Testnet را به عنوان نسخه اصلی به فروش برسانند.
اگرچه برخی پروتکل های بلاک چین اثبات کار به کاربران امکان استخراج ارزهای دیجیتال تست شبکه را می دهند، بسیاری از کاربران برای صرفه جویی در زمان و هزینه به فاست ها (Faucets) روی می آورند. این سرویس های مبتنی بر وب معمولاً افراد یا سازمان هایی هستند که سکه های شبکه آزمایشی اضافی دارند که مایل اند از آن ها جدا شوند، اغلب به صورت رایگان.
کاربردهای شبکه اصلی یا مین نت (MainNet)
در بالا بررسی کردیم تست نت ها چه کاربردهایی دارند، اما در اینجا قصد داریم برای واضح تر شدن مطلب، به برخی از اصلی ترین کاربردهای مین نت ها بپردازیم.
قرارگیری فرصت های بیشتر، پیش روی توسعه دهندگان
مین نت ها به عنوان شبکه های عمومی بدون نیاز به مجوز، فرصت هایی برای پروژه های جدید ایجاد می کنند.
جلب اطمینان کاربران
داشتن مین نت نشان می دهد آن پروژه بلاک چین، عملکردی است و باگ مهمی ندارد؛ بنابراین کاربران به پروژه های دارای مین نت اطمینان می کنند و وارد آن ها می شوند. به علاوه، پس از راه اندازی مین نت، اکثر پروژه ها کدهای خودشان را عمومی و متن باز می کنند و این موضوع نیز در افزایش اعتبار پروژه و اعتماد کاربران نقش دارد.
دسترسی به اپلیکیشن هایی با کاربردهای بیشتر
هر بلاک چین پیش از راه اندازی مین نت با توسعه دهندگان اپلیکیشن ها وارد همکاری می شود؛ بنابراین برخی از آن اپلیکیشن ها، با راه اندازی مین نت شروع به کار می کنند و موارد کاربرد اپلیکیشن ها افزایش پیدا می کند.
قابلیت های بیشتر
مین نت ها از قابلیت های دیگری همچون قابلیت های امنیتی یا ضد اسپم، برخوردار هستند.
علت اهمیت تست نت ها
همان طور که در ابتدا توضیح دادیم، از آنجا که روزانه میلیاردها دلار سرمایه بر بستر بلاک چین های مختلف جابه جا می شوند، بسیار حیاتی است که قبل از راه اندازی هر پروژه بلاک چین، آن پروژه به صورت کامل آزمایش شده و ایرادات آن برطرف شود، اما سؤال مهم اینجا است که چرا این آزمایش ها را نمی توان روی خود شبکه های اصلی یا مین نت ها انجام داد؟
درواقع انجام این آزمایش ها بر روی مین نت ها بسیار هزینه بر است؛ چراکه در مین نت ها از توکن های واقعی استفاده می شود؛ بنابراین هر تراکنش کارمزد خودش را دارد. حتی راه اندازی پروژه در مین نت و اعمال هر تغییر روی آن، بدون پرداخت کارمزد به تأمین کننده مین نت امکان پذیر نیست؛ بنابراین آزمایش کردن کامل پروژه در مین نت با هزینه های زیادی همراه است.
از طرفی اگر مشکلی در فاز آزمایشی پروژه در مین نت رخ دهد، کل شبکه با اختلال مواجه می شود و دارایی های کاربران در معرض خطر قرار می گیرد. این موضوع می توان برای تأمین کننده مین نت بسیار گران تمام شود و آن ارز، اعتبار خود را به طور کامل از دست بدهد.
همچنین دومین دلیل استفاده از تست نت ها برای آزمایش کردن پروژه های بلاک چینی، مشکل سازگاری (Compatibility) است. درحقیقت، در تست نت ها از توکن های دارای ارزش مالی استفاده نمی شود و به جای آن، دارایی های بدون ارزش (Fake Money) استفاده می شوند. ضمناً ارزهایی که در Testnet ها استفاده می شوند با مین نت ها سازگاری ندارند؛ بنابراین باید برای آزمایش کردن پروژه ها در مین نت ها، رمز ارزهای جدیدی ضرب یا مینت (Mint) شوند که کاری بسیار پیچیده و پرهزینه است.
درنهایت اینکه به دلایلی که در بالا ذکر شد، حتماً باید پروژه های بلاک چین در تست نت ها مورد آزمایش قرار بگیرند و آزمایش کردن آن ها در مین نت ها پرهزینه و پرخطر است. با آزمایش کردن پروژه ها در تست نت ها، این پروژه ها به صورت کاملاً مجزا از بازار ارزها آزمون و خطا می شوند و توسعه دهندگان می توانند با خیال آسوده، هر قابلیتی را در این پروژه ها آزمایش کنند.
تأثیر Testnet ها بر قیمت یک ارز دیجیتال
اساساً اگر قیمت را ناشی از یکی از ارزش هر محصولی بدانیم و این را قبول کنیم که تست نت ها به افزایش ارزش محصولات توسعه دهندگان کمک می کنند، آنگاه باید انتظار اثر قیمتی از آن ها را هم داشته باشیم؛ یعنی وقتی پروژه ای به مرحله انتشار روی Testnet می رسد، نشان دهنده پیشرفت نسبی آن است، ولی مشکل اینجاست که این ارتباط به چند نتیجه ناخواسته هم منجر می شود. درواقع برخی از پروژه ها گاهی فقط به قصد افزایش قیمت توکن خود، یک نسخه تست نت را منتشر می کنند که در عمل هیچ کاربردی برای پروژه ندارد. متأسفانه بسیاری از مردم هم اعلامیه انتشار تست نت را دیده و تصور می کنند که چیزی ارزشمند منتشرشده و با افزایش خرید باعث بالا رفتن قیمت توکن می شوند.
تست نت مناسب استفاده چه کاربرانی است؟
اساساً هر کاربری که بخواهد پروژه جدیدی را توسعه دهد و آن را آزمایش کند، می تواند از Testnet ها استفاده کند؛ چراکه آن ها روشی ساده برای آزمایش کردن محصول در مقیاس نزدیک به مقیاس واقعی، بدون کارمزد و بدون خطر تداخل با مین نت ها هستند.
همچنین، همان طور که پیش ازاین نیز اشاره داشتیم، اکثر شبکه های اصلی، از نوعی خدمات تست نت نیز برخوردار هستند. توسعه دهندگان پروژه ها باید با توجه به نیازهای خود، تست نت مناسب تر برای خودشان را انتخاب کنند؛ به عنوان نمونه شبکه بلاک چین Symbol دارای یک مین نت و یک Testnet است که از نظر ساختاری، کاملاً به مین نت شباهت دارد، اما اتریوم تعداد زیادی تست نت دارد که شبیه ترین آن ها به خود مین نت اتریوم Ropsten است. به علاوه، اگر توسعه دهنده ای بخواهد بلاک چین خودش را بسازد و آن را آزمایش کند، نیازمند تست نت است.
به بیانی دیگر، درمورد Testnet هایی که قبل از شبکه اصلی آغاز به کار می کنند، باز هم هدف اصلی آزمایش کردن است، اما تمرکز آن بیشتر روی خود سیستم است؛ زیرا قبل از این هرگز عملیاتی نشده است و البته چون جدید است، هنوز هیچ برنامه ای بر روی آن اجرا نمی شود.
در این حالت وضعیت خیلی یک طرفه تر است. بیشتر کسانی که روی منبع کدها کار می کنند توسعه دهندگان بلاک چین هستند و هدف آن ها این است که پلتفرم را به مرحله ای برسانند که سازندگان نرم افزار تمایل داشته باشند روی آن شبکه کار کنند.
نخستین چیزی که توسعه دهندگان نرم افزار باید در مورد آن اطمینان حاصل کنند، اثبات این نکته است که پلتفرم به اندازه کافی امن است و این دستورالعمل اصلی هرگونه آزمایش شبکه در این مرحله است. بعد از اینکه توسعه دهندگان به این نتیجه رسیدند که شبکه امن است، حالا باید درمورد روش استفاده از این پلتفرم آموزش ببینند.
به بیان دیگر تست نت بایستی به عنوان یک ابزار آموزشی در نظر گرفته شود که به توسعه دهندگان یک دید عمیق تری داده شود که چگونه می توانند هم زمان هم از شبکه استفاده کنند و هم امنیت شبکه را مداوم آزمایش کنند. درنهایت اینکه همچنان که آن ها شبکه را تست می کنند و می آموزند که چطور از آن استفاده کنند، به قسمت هایی از شبکه برمی خورند که نیاز به بهبود دارد. کتابخانه های خاصی را ممکن است نیاز داشته باشند یا اسناد مهمی برای کمک به درک سیستم باید تهیه شوند. این اطلاعات بی نهایت ارزشمند بازخوردهایی هستند که توسعه دهندگان پلتفرم بایستی از آن ها برای بهبود شبکه استفاده کنند، قبل از اینکه اجرای شبکه اصلی نهایی شود.
شبکه آزمایشی اتریوم
گسترش یک Testnet برای بلاک چین اتریوم، از بیشترین تقاضا برخوردار بود تا اینکه یک تست نت برای این شبکه به نام گث (Geth) راه اندازی شد. این شبکه بر پلتفرم های مک، لینوکس و ویندوز قابل دسترسی است که به صورت گسترده با بلاک چین اتریوم در تعامل است.
نرم افزار اتریوم به کاربران امکان می دهد یک شبکه تست و یا حتی یک شبکه خصوصی ایجاد کنند که از هسته اصلی اتریوم مجزا است. گث (Geth) برای توسعه نرم افزارهای غیرمتمرکز و ایجاد پروژه های مختلف بر روی بلاک چین اتریوم بسیار مفید و کاربردی است و می توان اجرای برنامه ها را بر روی شبکه اصلی امتحان کرد و آن ها را سنجید. برای انجام این کار به گزینه های زیر نیاز دارید:
- فایل اولیه (Genesis File)
- لیست داده ها (data directory)
- شناسه کاربران شبکه (Network user-id)
- فعال نبودن قابلیت تشخیص نودها (Disable node detection)
تست نت عمومی قراردادهای هوشمند شبکه کاردانو
با اجرایی شدن نخستین Testnet عمومی قرارداد هوشمند در شبکه کاردانو، این ارز دیجیتال به انتهای دوره گوگن و راه اندازی قرارداد هوشمند نزدیک شد. براساس اطلاعیه منتشرشده توسط شرکت تحقیقات و توسعه IOHK در روز جمعه، تست نت آلونزو (Alonzo) شبکه بلاک چین کاردانو (ADA) وارد فاز «بنفش» شده است. اجرای این فاز که پس از تکمیل فازهای «آبی» و «سفید» صورت گرفته است، گامی برجسته و مهم برای راه اندازی قراردادهای هوشمند در بزرگ ترین بلاک چین مکانیسم اجماع اثبات سهام (Proof of Stake) به حساب می آید.
در حال حاضر، Testnet آلونزو در فاز بنفش کاملاً عمومی است؛ این موضوع بدین معناست که کلیه اعضای طرح پیشگام پلوتوس (Plutus pioneer program) تمام اپراتورهای استخرهای استیکینگ و صرافی های ارز دیجیتال می توانند در این فاز شرکت داشته باشند. جهت مقایسه فاز بنفش با ۲ فاز پیشین، بایستی در نظر داشت که فازهای آلونزو آبی و سفید به ترتیب تنها به 50 و 500 کاربر محدود بودند. به نقل از چارلز هاسکینسون، مدیرعامل IOHKکاردانو فعالیت خود را جهت برپایی سیستماتیک صرافی های ارزی آغاز می کند.
درحقیقت تاریخ دقیق اجرای هارد فورک آلونزو بر بستر مین نت، در اواسط ماه آگوست (اواخر مردادماه) اعلام خواهد شد. براساس استراتژی فعالیت IOHK که در اواخر ماه می (اوایل خردادماه) منتشر شد، انتظار می رود پیاده سازی هارد فورک Alonzo در شبکه اصلی ارز دیجیتال کاردانو تا اوایل ماه سپتامبر (شهریورماه) پس از انجام چندین مرحله آزمایشی صورت بگیرد.
علاوه بر این، هم اکنون بنیاد IOHK مشغول تصمیم گیری درباره انتخاب نامزدهای اصلی نود شبکه در طول راه اندازی رویداد HFC هستند. آلونزو آخرین مرحله از آپدیت گوگن (Goguen) شبکه ارز دیجیتال کاردانو به شمار می رود که هدف آن امکان ساخت قرارداد هوشمند با زبان برنامه نویسی پلوتوس در بلاک چین کاردانو است.
از کجا می توان به رمز ارزهای تست نت ها دسترسی داشت؟
اساساً می توان از طریق افرادی که Testnet دارند درخواست کرده تا برای ما این ارزها را ارسال کنند؛ چراکه این ارزها دارای هیچ ارزشی نیستند، اما راه دوم استفاده از بیت کوین فاست هاست.
در وب سایت stackexchange هم بسیاری از افراد تجربه خود با سایر فاست ها را قرار دادند که می توانید استفاده کنید؛ برای مثال یکی از پیشنهادهای وب سایت https://bitcoinfaucet.uo1.net/ است.
در این وب سایت می توانید آدرس خود را از بخش دریافت یا receive کیف پول کپی کرده و سپس در بخش آدرسی که این وب سایت مشخص کرده است، وارد کنید.
سپس باید روی گزینه send testnet bitcoins کلیک کرده تا بیت کوین تستی برای شما ارسال شود. همچنین شما می توانید از بخش تاریخچه (history) که در کیف پول شما قرار دارد نیز این تراکنش را مشاهده کنید.
پروژه های کلاهبرداری از طریق تست نت ها (Testnet Scams)
Testnet ها در هر بلاک چین مثل اتریوم یا بیت کوین یک نسخه تستی، اما کاملاً مجزا از شبکه اصلی هستند که تنها برای امور توسعه پروژه های روی آن بلاک چین و موارد تستی کاربرد دارد. کوین ها و توکن های روی شبکه تستی فاقد هرگونه ارزش مادی بوده و تنها برای تست در آن شبکه تستی است و نمی توان آن ها را به شبکه اصلی انتقال داد.
به بیانی دیگر، همان طور که در بالا توضیح دادیم، ارزهای مین نت و تست نت تفاوت هایی با هم دارند؛ پس می دانیم که ارزهای Testnet حقیقتاً ارزش به خصوصی ندارند؛ از این رو حتماً حدس زده اید که آن ها مسیر مطلوبی برای کلاه برداری هستند.
از طرفی، مهم ترین نکته جهت جلوگیری از کلاه برداری های تست نت این است که مطمئن شوید از کیف پول متعلق به شبکه اصلی استفاده می کنید. کیف پول های شبکه اصلی و شبکه آزمایشی هم با یکدیگر متفاوت هستند و نمی توان از کیف پول یک شبکه برای دریافت رمز ارزهای شبکه دیگر استفاده کرد؛ از این رو استفاده از کیف پول های ناشناخته یا کمتر شناخته شده را متوقف کنید و از کیف پول های رایج و شناخته شده ای استفاده کنید که می دانید متعلق به شبکه اصلی هستند،
اما یکی از روش هایی که می تواند برای جلوگیری از کلاه برداری به شما کمک کند، توجه به آدرس کیف پولتان است؛ برای مثال در قسمت قبل هم اشاره کردیم که آدرس های شبکه اصلی بیت کوین با ۱، ۳ یا bc1 شروع می شوند؛ درحالی که آدرس های تست نت با حروف m یا n آغاز می شوند؛ بنابراین توصیه می کنیم پیش از ارسال آدرس خود برای دیگران به این مسئله دقت کنید.
همچنین یکی دیگر از نکاتی که توصیه می کنیم به آن توجه کنید این است که کارهایی مانند ساخت کیف پول یا خرید ارز دیجیتال را خودتان شخصاً بر عهده بگیرید. دنیای ارزهای دیجیتال دنیای حذف واسطه هاست؛ بنابراین کاربران این ارزها هم باید از این اصل مهم پیروی کنند. توصیه می کنیم تا جایی که می توانید اطلاعات خود را درزمینه ارزهای دیجیتال افزایش دهید و فرایند ساخت کیف پول و خرید کوین را به شخص دیگری واگذار نکنید.
درنهایت اینکه اگر می خواهید از خطر کلاه برداری در امان باشید، از قیمت های رؤیایی و بیش ازحد پایین دوری کنید. وب سایت هایی وجود دارند که ارزهای دیجیتال رایج بازار را باقیمت های بسیار پایین تری از قیمت بازار آن ها ارائه می کنند و کاربران هم به طمع کسب سود بیشتر، برای خرید آن ها وسوسه می شوند؛ درحالی که در ازای پولی که پرداخت می کنند، ارزهایی دریافت می کنند که عملاً هیچ کاربرد و ارزشی ندارند. فراموش نکنید ارزهای دیجیتال پول واقعی هستند و هیچ کس آن ها را به رایگان یا با قیمت پایین در اختیار شما قرار نمی دهد.
در آخر به این نکته نیز توجه داشته باشید که اسکمرها در این مورد نیز با سوءاستفاده از ناآگاهی افراد، با فریب آن ها، سکه های شبکه تستی را به عنوان کوین شبکه اصلی به آن ها می فروشند. روش کلاه بردارها هم به این صورت است:
- پیشنهاد فروش ارزها به افراد مختلف و با تخفیف های ویژه
- متقاعدکردن افراد به خرید ارزهای Testnet ها
- فریب دادن افراد به دانلود کیف پول های تست نت ها
- ارسال ارزهایی بی ارزش مربوط به تست نت ها به ولت افراد و دریافت پول از آن ها
حال جهت جلوگیری از کلاه برداری به وسیله کیف پول های Testnet، پیشنهاد ما این است که توصیه های زیر را دنبال کنید:
- اگر در حال خرید ارز هستید، لطفاً مطمئن شوید که کیف پولی که قرار است وجه را در آن دریافت کنید، کیف پول تست نت نباشد.
- اگر ارزی می خرید، مراقب کسی که ارز دیجیتال را باقیمتی بسیار پایین تر از نرخ فعلی بازار ارائه می کند، باشید.
- اجازه ندهید طرف مقابل برای شما کیف پول بسازد (آموزش کیف پول). آن ها ممکن است بخواهند یک کیف پول Testnet ایجاد کنند و سپس کوین های شبکه آزمایشی را برای شما بفرستند که ارزش پولی ندارند. آن ها همچنین می توانند یک کیف پول Multisig ایجاد کنند و وجوه را به کیف پول دیگری که کنترل آن را ندارید ارسال کنند.
نحوه تشخیص یک کیف پول اصلی از یک ولت تست نت
اساساً اگر فردی به شما بگوید که یک کیف پول Testnet بسازید تا برای شما پول ارسال کند، سعی دارد از شما کلاه برداری کند، اما سؤال اصلی این است که چگونه می توان کیف پول های اصلی را از تست نت ها تشخیص داد؟ به طورکلی اگر کیف پول شما دارای نماد بیت کوین (ارز مربوط) خاکستری شده یا نماد TESTNET است (مثل تصویر زیر) آن کیف پول یک کیف پول تست نت است.
اما اگر شما یک کیف پول تست نت دارید، تنها می توانید با کیف پول های تست نت دیگر در ارتباط باشید. همان طور که قبلاً ذکر شد، این کیف پول ها شامل ارز واقعی نیستند و هیچ راهی برای تبدیل ارزهای Testnet به ارزهایی با ارزش پولی واقعی وجود ندارد.
اما ساده ترین راه برای تشخیص تفاوت testnet و شبکه واقعی، جست وجوی آدرس است. به صورت کلی، آدرس های بیت کوین آزمایشی با m یا n شروع می شوند. درواقع تمامی آدرس های واقعی بیت کوین با 1 یا 3 یا bc1 شروع می شوند.
درحالی که آدرس های Bitcoin Cash با bitcoincash یا p و q شروع می شوند. از طرفی آدرس های آزمایشی Bitcoin Cash با bchtest آغاز می شوند. علاوه بر این، برای ارزهای مثل اتریوم و ریپل نیز، قالب آدرس ها تغییر نکرده و عملاً هیچ راهی برای تشخیص اینکه آدرس مربوطه تست نت است یا مین نت وجود ندارد.
سخن پایانی
اساساً روزبه روز به تعداد پروژه ها و اپلیکیشن های بلاک چین و دیفای اضافه می شود و مردم دنیا روزانه میلیاردها دلار را بر بستر بلاک چین های مختلف جابه جا می کنند. در صورتی که قرار باشد هر پروژه بلاک چین بدون تست کردن شروع به کار کند، ممکن است به دلیل باگ های احتمالی، خسارات مالی سنگینی ایجاد شود.
از این رو پیش از راه اندازی هر پروژه بلاک چین آن را در بستری به نام Testnet آزمایش می کنند تا باگ ها و ایرادات آن را پیداکرده و آن ها را برطرف کنند. در مقابل تست نت، مین نت قرار دارد. مین نت همان بلاک چین اصلی است که تراکنش های واقعی و با دارایی های دیجیتالی واقعی در آن انجام می شوند. هر پروژه، پس از تکمیل آزمایش ها در تست نت، برای اجرایی شدن و در دسترس عموم قرار گرفتن وارد مین نت می شود.
به طورکلی، هر مین نت مثل اتریوم می تواند یک یا چند Testnet داشته باشد و هر پروژه ای که آزمون های تست نت را با موفقیت پشت سر بگذارد، گواهینامه لازم برای فعالیت در مین نت دریافت می کند. همچنین، تست نت و مین نت تفاوت های زیادی با هم دارند.
درحقیقت در تست نت برخلاف مین نت از دارایی های دیجیتالی واقعی استفاده نمی شود، بلکه در تراکنش های تست نت از توکن های بدون ارزش استفاده می کنند. عملیات و تراکنش ها در Testnet هیچ هزینه ای ندارند، اما هر تراکنش در مین نت دارای کارمزد است. آی دی شبکه و بلاک چین نخستین تست نت و مین نت نیز باهم دیگر متفاوت هستند. از دیگر تفاوت های مین نت و تست نت می توان به کمتربودن تعداد تراکنش ها و تعداد گره ها در Testnet در مقایسه با مین نت اشاره کرد. وجه تفاوت دیگر تست نت با مین نت این است که تست نت ها، متن باز نیستند، اما بیشتر مین نت ها، متن باز هستند.
توسعه دهندگان پروژه های بلاک چینی مثل توسعه دهندگان اپلیکیشن های غیرمتمرکز و صرافی های غیرمتمرکز و نیز توسعه دهندگان بلاک چین های جدید از تست نت ها برای تست کردن پروژه ها در محیطی امن، به حداقل رساندن اختلالات در مین نت ها و تست کردن سازگاری اپلیکیشن های غیرمتمرکز با بلاک چین ها استفاده می کنند.
از آنجا که در تست نت ها از دارایی های واقعی استفاده نمی شود، آزمون و خطا کردن در آن ها هیچ خطر و کارمزدی ندارد، اما تست کردن پروژه ها و اپلیکیشن ها در مین نت ها بسیار پرهزینه و پر ریسک است. تست نت ها به توسعه دهندگان امکان می دهند تا با خیال راحت، پروژه ها یا اپلیکیشن های خود را آزمایش کنند.
پرسش های متداول
شبکه ای است که برای اجرای آزمایشی پروژه های بلاک چین استفاده می شود.
به نسخه اصلی بلاک چینی که در دسترس عموم قرار گرفته و می توان در آن تراکنش های واقعی با ارزهای واقعی را اجرا کرد، مین نت می گویند.
توسعه دهندگان پروژه های بلاک چین از تست نت ها برای آزمایش پروژه های خود استفاده می کنند؛ چراکه آزمایش کردن در Testnet ها، بسیار کم هزینه تر از آزمایش کردن در مین نت ها بوده و همچنین برخلاف تست آزمایش کردن در مین نت ها، انجام آزمایش در تست نت ها، به هیچ عنوان با ریسک همراه نخواهد بود.