قرارداد هوشمند اتریوم کلاسیک؛ همان کد، شبکه دیگر
برای ثبت سفارش به حساب نیاز دارید. ثبت نام رایگان است.
سوالی که گاهی از سمت توسعه دهنده ها می رسد این است: «همین قرارداد سالیدیتی را می شود روی اتریوم کلاسیک هم اجرا کرد؟»
جواب فنی اش بله است و تقریبا بدون تغییر. جواب کامل ترش این است که استقرار قرارداد ساده ترین بخش ماجراست و مشکل جای دیگری منتظر شماست.

اتریوم کلاسیک شبکه ای است سازگار با ماشین مجازی اتریوم. همان زبان، همان کامپایلر، همان ابزارها. آنچه عوض می شود سه قلم پیکربندی است، نه کد.
طبق صفحه شبکه در سایت رسمی اتریوم کلاسیک، شبکه اصلی شناسه زنجیره ۶۱ دارد و با الگوریتم اثبات کار ETCHash کار می کند. شبکه آزمایشی اش هم موردور نام دارد با شناسه زنجیره ۶۳.
پس مهاجرت یک قرارداد یعنی عوض کردن نقطه اتصال، شناسه زنجیره و توکن پرداخت کارمزد. همین. کسی که تجربه استقرار روی اتریوم دارد، در یک بعدازظهر این کار را انجام می دهد.
این جمله شعار تبلیغاتی نیست؛ دلیل وجود این شبکه است. صفحه چرایی اتریوم کلاسیک صریح می گوید که این شبکه ادامه همان اتریومی است که در سال ۲۰۱۵ راه افتاد و هرگز قراردادهای مستقرشده روی خود را متوقف نکرده و نخواهد کرد.
حالا این را از زاویه خودتان نگاه کنید. اگر قرارداد شما باگ داشته باشد و کسی دارایی کاربران را خالی کند، هیچ انشعابی برای برگرداندن آن اتفاق نمی افتد. روی اتریوم دست کم یک سابقه تاریخی از مداخله وجود دارد؛ اینجا صراحتا اعلام شده که چنین چیزی نخواهد بود.

نهایی شدن تراکنش مثل اتریوم امروز نیست. اینجا اثبات کار است، پس نهایی شدن احتمالی است نه قطعی. یعنی تعداد تاییدیه ای که در قرارداد یا در سرویس خود در نظر می گیرید باید محافظه کارانه تر باشد.
سابقه بازآرایی زنجیره وجود دارد. این شبکه بارها هدف حمله اکثریت قرار گرفته و این پرونده مستقیما روی طراحی شما اثر می گذارد. جزئیاتش را در پرونده حمله های پنجاه و یک درصدی این شبکه نوشته ایم و پیش از هر استقرار جدی خواندنش لازم است.
و مهم ترین مورد، که فنی نیست: قرارداد شما در خلا کار نمی کند. اگر به یک استیبل کوین نقدشونده، یک اوراکل قیمت یا یک استخر نقدینگی نیاز دارد، باید ببینید آن قطعات اینجا هستند یا نه. کامپایل شدن کد به معنای وجود اکوسیستم نیست.
جواب کوتاه: خیلی کم. و این را نباید ماست مالی کرد.
اندازه واقعی فعالیت مالی روی این شبکه و اینکه چرا با وجود سازگاری کامل با ماشین مجازی اتریوم چیزی رویش ساخته نشد، بحث جداگانه ای است که در اینکه از دیفای روی اتریوم کلاسیک چه چیزی واقعا وجود دارد با عدد بررسی شده. اینجا تکرارش نمی کنیم و همان را مرجع می گیریم.
نکته ای که از زاویه توسعه دهنده اضافه می شود این است: خود سایت رسمی هم درباره سرویس های موجود روی این شبکه هشدار می دهد که ممیزی نشده اند. یعنی حتی قطعاتی که پیدا می کنید، تضمینی همراهشان نیست.
چهار چیز را قبل از شروع تنظیم کنید.
- شناسه زنجیره را درست بگذارید. یک قرارداد بدون محافظت در برابر تکرار تراکنش، روی زنجیره های سازگار دردسر می سازد.
- کارمزد را با توکن خود این شبکه می پردازید، نه با اتر. بدون موجودی، هیچ تعاملی ممکن نیست.
- اول روی موردور تست کنید. سکه تستش را می شود با اجرای محلی کلاینت استخراج کرد.
- تعداد تاییدیه لازم را بالاتر از عادت اتریومی خود بگذارید، به دلیل همان سابقه بازآرایی.
و اگر پرسش شما اصلا فنی نیست و می خواهید بدانید این شبکه از کجا آمده، داستان جدا شدنش از اتریوم نقطه شروع درستی است.
برای هر تعامل با این شبکه، حتی یک استقرار آزمایشی روی شبکه اصلی، باید توکن همین شبکه را داشته باشید. تهیه اش از پلتفرم های داخلی ساده تر از تلاش برای گرفتنش از سرویس های خارجی است؛ نرخ و ثبت سفارش ریالی اتریوم کلاسیک همان جاست.
و یک هشدار عملی: نقطه های اتصال عمومی این شبکه کم و گاهی کند هستند. اگر روی یک اتصال ناپایدار کار می کنید، بین «تراکنش رد شد» و «تراکنش هنوز نرسیده» تفاوت بگذارید و پیش از ارسال دوباره، وضعیت را در مرورگر بلاکچین ببینید.
اتریوم کلاسیک از نظر فنی یک بستر قرارداد هوشمند کامل است و این ادعای اغراق آمیزی نیست. مشکلش هرگز توانایی نبوده.
مشکل این است که یک قرارداد بدون کاربر، بدون نقدینگی و بدون قطعات جانبی، فقط یک کد مستقرشده است. اگر دلیل شما برای آمدن به اینجا اصل تغییرناپذیری است، جای درستی آمده اید. اگر دلیلتان کارمزد کمتر است، لایه دوم اتریوم همان را با اکوسیستم کامل به شما می دهد.
آیا اتریوم کلاسیک قرارداد هوشمند دارد؟
بله. این شبکه با ماشین مجازی اتریوم سازگار است و همان قراردادهای سالیدیتی روی آن اجرا می شوند. تفاوت در اکوسیستم اطراف است، نه در توانایی اجرای قرارداد.
شناسه زنجیره اتریوم کلاسیک چیست؟
شبکه اصلی شناسه ۶۱ دارد و شبکه آزمایشی موردور شناسه ۶۳. تنظیم اشتباه این عدد رایج ترین دلیل ناموفق ماندن اولین استقرار است.
آیا می شود قرارداد اتریوم را بدون تغییر به اتریوم کلاسیک برد؟
در بیشتر موارد بله، اگر قرارداد شما به سرویس بیرونی مثل اوراکل یا استیبل کوین وابسته نباشد. اگر باشد، کد منتقل می شود ولی کار نمی کند، چون آن وابستگی آن طرف وجود ندارد.
تفاوت اصلی توسعه روی این شبکه با اتریوم چیست؟
اجماع اثبات کار، نهایی شدن احتمالی به جای قطعی، سابقه بازآرایی زنجیره و نبود اکوسیستم دیفای. سه مورد اول روی طراحی شما اثر می گذارند و چهارمی روی اینکه محصولتان اصلا کاربر پیدا می کند یا نه.