اتریوم و Web3مقدماتیدرس ۲ از ۱۰

قرارداد هوشمند و DApp چیست؟ امضا، مجوز و ریسک کد

بفهمید قرارداد هوشمند چگونه اجرا می‌شود، DApp از چه لایه‌هایی ساخته شده و قبل از Sign یا Approve چه چیزهایی را باید کنترل کرد.

انتشار: ۱۱ مرداد ۱۴۰۵۱۶ دقیقه مطالعهبازبینی تحریریهگزارش خطا

پاسخ کوتاه

قرارداد هوشمند و DApp چیست؟ امضا، مجوز و ریسک کد

قرارداد هوشمند برنامه‌ای با کد و داده در یک آدرس بلاکچینی است که پس از دریافت تراکنش طبق قواعدش اجرا می‌شود. DApp معمولاً رابط وب یا موبایل را به یک یا چند قرارداد متصل می‌کند. خودکار بودن اجرا به معنی هوشمندی، قانونی بودن یا امنیت نیست؛ باگ، کلید مدیریتی و امضای مبهم همچنان ریسک دارند.

در این درس چه یاد می‌گیرید؟

  • خواندن داده قرارداد معمولاً تراکنش و گس نمی‌خواهد؛ نوشتن وضعیت می‌خواهد.
  • Approve اجازه خرج‌کردن توکن است و با انتقال عادی فرق دارد.
  • رابط غیرمتمرکز لزوماً نیست؛ قرارداد، دامنه، RPC و اوراکل را جدا ببینید.
۱

DApp از چه لایه‌هایی تشکیل می‌شود؟

لایهنمونه وظیفهنقطه شکست
رابطنمایش و ساخت تراکنشدامنه جعلی یا کد آلوده
کیف پولمدیریت حساب و امضانمایش مبهم یا بدافزار
RPCاتصال به شبکهقطعی یا سانسور پاسخ
قراردادمنطق و نگهداری وضعیتباگ یا ارتقای مخرب
اوراکلداده بیرونیقیمت اشتباه یا دستکاری
۲

Read، Sign، Send و Approve را اشتباه نگیرید

  • Read: پرس‌وجوی وضعیت؛ معمولاً بدون هزینه و بدون تغییر زنجیره.
  • Sign message: امضای پیام؛ ممکن است ورود ساده یا مجوزی قابل سوءاستفاده باشد.
  • Send transaction: درخواست تغییر وضعیت با گس.
  • Approve: تعیین سقف خرج توکن برای یک spender؛ مجوز نامحدود دامنه زیان را بیشتر می‌کند.
  • Permit: مجوز مبتنی بر امضا که می‌تواند بعداً به زنجیره ارسال شود؛ رایگان بودن امضا آن را بی‌خطر نمی‌کند.
۳

قبل از امضا چه کنیم؟

  1. ۱

    دامنه را مستقل باز کنید

    از لینک تبلیغ، پیام خصوصی یا نتیجه اسپانسری وارد نشوید.

  2. ۲

    شبکه و آدرس قرارداد

    از مستندات رسمی و مرورگر بلاک تطبیق دهید.

  3. ۳

    اثر تراکنش

    دارایی ورودی و خروجی، spender، مبلغ و تابع فراخوانی را بررسی کنید.

  4. ۴

    مجوز محدود

    در صورت امکان فقط مقدار لازم و مدت کوتاه را مجاز کنید.

  5. ۵

    کیف پول مجزا

    برای DAppهای تازه از حسابی با موجودی محدود استفاده و مجوزهای قدیمی را لغو کنید.

۴

ارتقاپذیری و کلید مدیریت

برخی قراردادها تغییرناپذیرند و برخی از الگوی proxy استفاده می‌کنند تا منطق بعداً ارتقا یابد. ارتقا می‌تواند باگ را اصلاح کند، اما اعتماد به مالک، چندامضایی و تأخیر زمانی را اضافه می‌کند.

بررسی حسابرسی بدون خواندن دامنه آن کافی نیست. نسخه قرارداد، یافته‌های حل‌نشده، باگ‌بانتی، وقفه اضطراری و سابقه رخداد را کنار هم ببینید.

پاسخ سریع

پرسش‌های پرتکرار

آیا قرارداد هوشمند بعد از انتشار قابل تغییر است؟+

کد یک قرارداد مستقر معمولاً همان می‌ماند، اما الگوهای proxy می‌توانند اجرای آن را به منطق تازه هدایت کنند؛ مالک و سازوکار ارتقا را بررسی کنید.

آیا Sign کردن پیام هزینه دارد؟+

معمولاً گس ندارد، ولی می‌تواند مجوز ورود، سفارش یا خرج‌کردن ایجاد کند. متن یا داده‌ای را که نمی‌فهمید امضا نکنید.

آیا DApp کاملاً غیرمتمرکز است؟+

نه الزاماً. قرارداد ممکن است زنجیره‌ای باشد ولی رابط، سرور، RPC، اوراکل یا کلید مدیریت متمرکز باقی بماند.

منابع و مطالعه بیشتر

منابع مرجع برای بررسی تعریف‌ها و جزئیات فنی این درس.

این محتوا آموزشی است و توصیه خرید، فروش یا سرمایه‌گذاری نیست. اطلاعات سرویس‌ها و قوانین تغییر می‌کند؛ پیش از اقدام، شرایط روز را از منبع رسمی بررسی کنید. افشای ریسک سرمایه‌گذاری

تیم آموزش کریپتوباز

تحریریه آموزش و بررسی بازار

محتوای مرحله‌ای درباره ارز دیجیتال، فارکس و امنیت؛ با تمرکز بر تصمیم عملی، ریسک و منابع قابل‌بررسی.

درس بعدی پیشنهادی

گس اتریوم چیست؟ محاسبه کارمزد، Gwei و تراکنش ناموفق

فرمول کارمزد اتریوم، Base Fee، Priority Fee، Gas Limit و دلیل Pending یا Failed شدن تراکنش را با مثال کاربردی یاد بگیرید.

آموزش‌های مرتبط