میهن بلاکچین
  • اخبار
    • همه
    • رمزارز در ایران
    • اخبار بیت کوین
    • اخبار اتریوم
    • اخبار آلتکوین
    • اخبار بلاکچین
    • اخبار عمومی
    • اطلاعیه صرافی‌های داخلی
  • تحلیل
    • همه
    • تحلیل آنچین
    • تحلیل اقتصادی
    • تحلیل تکنیکال
    • تحلیل فاندامنتال
  • آموزش
    • همه
    • کریپتو پدیا
    • کریپتو کده
    • دیفای
    • سرمایه گذاری
    • آموزش همه صرافی های ارز دیجیتال
    • ترید
    • کیف پول
    • بازی
    • استخراج
    • NFT
    • مقالات عمومی
  • ایردراپ
  • هک و کلاهبرداری
  • قیمت ارزهای دیجیتال
  • ماشین حساب ارزهای دیجیتال
  • مقایسه قیمت در صرافی
No Result
مشاهده همه‌ی نتایج
  • اخبار
    • همه
    • رمزارز در ایران
    • اخبار بیت کوین
    • اخبار اتریوم
    • اخبار آلتکوین
    • اخبار بلاکچین
    • اخبار عمومی
    • اطلاعیه صرافی‌های داخلی
  • تحلیل
    • همه
    • تحلیل آنچین
    • تحلیل اقتصادی
    • تحلیل تکنیکال
    • تحلیل فاندامنتال
  • آموزش
    • همه
    • کریپتو پدیا
    • کریپتو کده
    • دیفای
    • سرمایه گذاری
    • آموزش همه صرافی های ارز دیجیتال
    • ترید
    • کیف پول
    • بازی
    • استخراج
    • NFT
    • مقالات عمومی
  • ایردراپ
  • هک و کلاهبرداری
  • قیمت ارزهای دیجیتال
  • ماشین حساب ارزهای دیجیتال
  • مقایسه قیمت در صرافی
No Result
مشاهده همه‌ی نتایج
میهن بلاکچین
No Result
مشاهده همه‌ی نتایج
میهن بلاکچین آموزش مقالات عمومی

توسعه دهنده قرارداد هوشمند اتریوم هستید؟ این اصولی امنیتی را در نظر بگیرید!

نگارش:‌ایوب کریمی
29 اردیبهشت 1401 - 17:50
در مقالات عمومی
زمان مطالعه: 2 دقیقه
0
توسعه دهنده قرارداد هوشمند اتریوم

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

ArzPlus Logo فرصت ویژه: ۱ میلیارد بیبی دوج رایگان!

همین حالا در ارزپلاس ثبت‌نام کنید و ۱ میلیارد بیبی دوج هدیه بگیرید. بدون قرعه‌کشی، فرصت محدود!

دریافت هدیه

اتریوم چیست ؟ بستری برای برنامه‌های غیر متمرکز + ویدئو

برنامه‌نویسی قرارداد هوشمند نیازمند نگرش متفاوتی است و وجود اشکال در این قرارداد‌ها باعث ایجاد هزینه و مشکلات بسیار می‌شود. برنامه‌نویسی قرارداد هوشمند تا حدود زیادی شبیه برنامه‌نویسی سخت افزار و سرویس‌های مالی است و زیاد شبیه توسعه موبایل یا وب  نیست. در اینجا تنها کافی نیست که برای دفاع در برابر آسیب‌پذیری‌ها آماده باشید، بلکه در عوض لازم است که یک فلسفه جدید توسعه را یاد بگیرید.

آنچه در این مطلب می‌خوانید

Toggle
  • در برنامه‌نویسی قرارداد هوشمند اتریوم باید آمادگی شکست را داشت
  • محصول را با دقت بیرون دهید
  • قرارداد‌های هوشمند اتریوم را ساده نگه دارید
  • به روز باشید
  • مواظب خصوصیات منحصر به فرد ماشین مجازی اتریوم باشید
  • ریسک‎‌های بنیادین
  • عدم ارتقا در برابر ارتقاپذیری
  • یکپارچگی در برابر طراحی مدولار
  • کپی در مقابل استفاده مجدد

در برنامه‌نویسی قرارداد هوشمند اتریوم باید آمادگی شکست را داشت

اتریوم

هر قرارداد هوشمند مهم اتریوم قطعا دارای خطا‌ها و معایبی خواهد بود. بنابراین کد شما باید قادر باشد به خوبی به باگ‌ها و آسیب‌پذیری‌های موجود پاسخ دهد.

وقتی که اوضاع به خوبی پیش نمی‌رود، قرارداد را متوقف کنید.

مقدار پولی که در معرض ریسک است را مدیریت کنید.

دارای یک مسیر ارتقای موثر برای اصلاح باگ‌ها و بهبود وضعیت باشید.

محصول را با دقت بیرون دهید

همیشه بهتر است که قبل از بیرون دادن کامل محصول با باگ‌ها مواجه شوید.

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

از همان ابتدای کار برای پیدا کردن باگ پاداش تعیین کنید و به این ترتیب کمک دیگران را برای توسعه محصول به سوی خود سرازیر نمایید.

محصول را به صورت مرحله به مرحله بیرون دهید و در هر مرحله استفاده و آزمایش را بیشتر کنید.

قرارداد‌های هوشمند اتریوم را ساده نگه دارید

پیچیدگی احتمال خطا را افزایش می‌دهد.

اطمینان حاصل کنید که لوجیک (logic) قرارداد هوشمند مورد نظر ساده باشد.

کد را به صورت بخش‌هایی جداگانه طراحی کنید تا قرارداد‌ها و توابع کوچک باشند.

اگر امکان دارد، از ابزار‌ها و یا کد از قبل نوشته شده استفاده کنید.

هر زمان که امکان دارد، شفافیت را بر عملکرد ترجیح دهید.

از بلاک چین تنها برای بخش‌هایی از سیستمتان استفاده کنید که لازم است غیر متمرکز باشند.

به روز باشید

همیشه در جریان توسعه‌های امنیتی اخیر باشید.

همواره قرارداد هوشمند اتریوم خود را برای کشف خطا و باگ مورد بررسی قرار دهید.

قرارداد هوشمند (Smart Contract) چیست؟

در اولین زمان ممکن، ابزار خود را به آخرین نسخه موجود ارتقا دهید.

فنون امنیتی جدید را که به نظر مفید می‌رسند، همواره بپذیرید.

مواظب خصوصیات منحصر به فرد ماشین مجازی اتریوم باشید

در حالی که بسیاری از تجربه برنامه‌نویسی شما مرتبط با برنامه‌نویسی اتریوم خواهد بود، اما هشدار‌هایی در این میان مطرح است که باید به آنها توجه داشته باشید:

  • بسیار مراقب فراخوانی‌های قرارداد خارجی باشید که ممکن است کد بدکاری را اجرا کنند و جریان کنترل را تغییر دهند.
  • توجه داشته باشید که توابع عمومی شما عمومی هستند و ممکن است در هر صورتی به صورت بدخواهانه فراخوانی شوند. داده‌های خصوصی در یک قرارداد هوشمند نیز توسط همه قابل مشاهده است.
  • هزینه گس و محدوده گس بلاک را در نظر داشته باشید.
  • به یاد داشته باشید که برچسب‌های زمانی در بلاک چین دقیق نیستند؛ ماینر‌ها می‌توانند زمان اجرای یک تراکنش را در عرض چند ثانیه تحت تاثیر قرار دهند.
  • تصادف و غیر مترقبگی در بلاک چین مهم است و اکثر رویکرد‌ها به نسبت ایجاد عدد تصادفی در بلاک چین قابل دستکاری است.

ریسک‎‌های بنیادین

وقتی که ساختار و امنیت یک قرارداد هوشمند اتریوم را مورد ارزیابی قرار می‌دهیم، ریسک‌های بنیادین زیادی وجود دارد که باید در نظر گرفته شوند و برای آنها چاره‌اندیشی شود. یک سیستم قرارداد هوشمند ایده‌ال اتریوم از منظر مهندسی نرم افزار باید مدولار (modular) باشد و به جای کپی کردن کد باید از آن استفاده مجدد شود. این سیستم باید از مولفه‌های قابل ارتقا پشتیبانی کند. چنین نگرشی مخصوصا در سیستم‌های قرارداد هوشمند پیچیده باید لحاظ شود.

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

ماشین مجازی اتریوم (EVM)؛ مسبب اجرای Dappها!

عدم ارتقا در برابر ارتقاپذیری

اگرچه همواره بر انعطاف‌پذیری تاکید می‌شود و ویژگی‌هایی مانند قابلیت ارتقا مورد تحسین قرار می‌گیرد، اما مخاطراتی بنیادین در این میان مطرح است و انعطاف‌پذیری ممکن است از امنیت بکاهد. انعطاف‌پذیری ذاتا باعث افزایش پیچیدگی می‌شود و این احتمال ظاهر شدن حملات را بیشتر می‌کند. باید تا آنجا که امکان دارد سادگی را بر پیچیدگی ترجیح دهیم.

یکپارچگی در برابر طراحی مدولار

یک قرارداد هوشمند یکپارچه اتریوم تمامی اطلاعات را به صورت محلی قابل شناسایی و خواندن نگه می‌دارد. در حالی که سیستم‌های قرارداد هوشمند کمی این یکپارچگی را حفظ می‌کنند، بحث در مورد محل افراطی داده‌ها و جریان مطرح است. در قرارداد‌های کوتاه مدت و ساده، اقدامات امنیتی مناسب و اقدامات مهندسی مناسب در تطابق با یکدیگر قرار نمی‌گیرند. اقدامات امنیتی مناسب معمولا تمایل دارند که در سیستم‌های پیچیده در تطابق با اقدامات مناسب نرم افزاری قرار بگیرند.

کپی در مقابل استفاده مجدد

یک سیستم قرارداد هوشمند اتریوم از منظر مهندسی نرم افزار تمایل دارد که استفاده مجدد را در هر جا که معقول باشد به حداکثر برساند. روش‌های زیادی برای استفاده مجدد از کد قرارداد در زبان برنامه‌نویسی سالیدیتی (solidity) وجود دارد. استفاده از قرارداد‌های هوشمندی که قبلا استفاده شده‌اند و خود را اثبات کرده‌اند، معمولا ایمن‌ترین روش برای استفاده مجدد از کد است.

کپی معمولا زمانی لازم می‌شود که قرارداد هوشمند قبلا توسعه یافته توسط خود فرد موجود نباشد. تلاش‌هایی مانند openZeppelin`s Solidity Library را می‌توان برای فراهم آوردن الگو‌های استفاده مجدد و جلوگیری از کپی انجام داد. تحلیل‌های امنیتی قرارداد هوشمند باید شامل هر کد قابل استفاده مجددی باشد که قبلا در سطح اعتماد، متناسب با وجوه در معرض ریسک نبوده باشد. امروزه ساخت و توسعه برنامه‌ها در اتریوم برای مهندسان بسیار هیجان‌برانگیز است اما این کار نیازمند برنامه‌ریزی و بازرسی مستمر است.

تگ: اتریومارز دیجیتالزبان برنامه نویسیسالیدیتیقرارداد هوشمند
اشتراک‌گذاریتوئیت

نوشته‌های مشابه

کاندید بعدی فدرال رزرو
مقالات عمومی

رئیس بعدی فدرال رزرو کیست؟ محبوبیت بی‌سابقه کریستوفر والر از وال‌استریت تا بازار کریپتو

24 مرداد 1404 - 12:00
36
حمله زنجیره تامین
کریپتو پدیا

حمله زنجیره تامین چیست و چرا حملات Supply Chain در دنیای کریپتو خطرناک هستند؟

23 مرداد 1404 - 22:00
62
فیچر اتریوم و پروپوزال EIP-7782
کریپتو پدیا

پروپوزال EIP-7782 چیست؟ پیشنهادی برای بلاک‌های ۶ ثانیه‌ای اتریوم

23 مرداد 1404 - 12:00
72
Exchange_Generic اطلاعیه صرافی
اطلاعیه صرافی

اطلاعیه و اتفاقات مهم صرافی‌های ایرانی ارز دیجیتال؛ ۲۲ مرداد ۱۴۰۴

22 مرداد 1404 - 23:00
884
ولیدیتورهای کازمس از ارائه خدمت به سیکرت نتورک سر باز زندن
تحلیل فاندامنتال

پایان کار Eden Network؛ خداحافظی با یکی از بازیگران مهم حوزه MEV

22 مرداد 1404 - 21:00
68
تحلیل بازار

پیش‌بینی یک تحلیلگر: اگر بیت کوین به ۱۵۰ هزار دلار برسد،‌ اتریوم ۸۵۰۰ دلاری می‌شود!

22 مرداد 1404 - 14:00
198
اشتراک
اطلاع از
0 دیدگاه
جدید ترین
قدیمی ترین محبوب ترین
Inline Feedbacks
View all comments

آموزش

کاندید بعدی فدرال رزرو
مقالات عمومی

رئیس بعدی فدرال رزرو کیست؟ محبوبیت بی‌سابقه کریستوفر والر از وال‌استریت تا بازار کریپتو

24 مرداد 1404 - 12:00
36
حمله زنجیره تامین
کریپتو پدیا

حمله زنجیره تامین چیست و چرا حملات Supply Chain در دنیای کریپتو خطرناک هستند؟

23 مرداد 1404 - 22:00
62
فیچر موبایل فیک
مقالات عمومی

موبایل جدید یا تله هکرها؟ راز گوشی‌های فیک و سرقت رمزارزها چیست؟

23 مرداد 1404 - 20:00
138
فیچر محاسبات کوانتومی
مقالات عمومی

پرسش و پاسخ با متخصص محاسبات کوانتومی؛ تهدید کامپیوترهای کوانتومی برای ارزهای دیجیتال واقعیت است یا اغراق؟

23 مرداد 1404 - 16:00
115
فیچر اتریوم و پروپوزال EIP-7782
کریپتو پدیا

پروپوزال EIP-7782 چیست؟ پیشنهادی برای بلاک‌های ۶ ثانیه‌ای اتریوم

23 مرداد 1404 - 12:00
72
فیچر پروژه های منتخب MVB بایننس
مقالات عمومی

۱۵ پروژه‌ منتخب فصل دهم MVB بایننس؛ استارتاپ‌هایی با پتانسیل رشد انفجاری

17 مرداد 1404 - 22:00
872

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

تاخیر برداشت در اکسکوینو

بررسی مشکلات تاخیر برداشت ریالی و رمزارزی در صرافی اکسکوینو؛ دلایل، پیامدها و راهکارها

5 مرداد 1404 - 17:00
2556

کلاهبرداری با کیف پول چند امضایی چیست و چگونه از آن در امان بمانیم؟

حمله انتقال صفر (Zero-Transfer)؛ راهنمای کامل شناسایی و مقابله با تهدید کیف پول‌های رمزارزی

تاثیر تصویب قانون GENIUS بر ریسک فریز و مسدود شدن دارایی‌های تتر ایرانی‌ها؛ چه باید کرد؟

اشتباه ۶۰ هزار دلاری کاربر بیت کوین در پرداخت کارمزد؛ مراقب باشید این اشتباه را تکرار نکنید!

تسلیم یا کاپیتولاسیون (Capitulation) در کریپتو چیست؟ نشانه ترس یا فرصتی برای ورود به بازار؟

  • خانه
  • قیمت ارز
  • صرافی ها
  • ماشین حساب
No Result
مشاهده همه‌ی نتایج
  • اخبار
    • همه
    • رمزارز در ایران
    • اخبار بیت کوین
    • اخبار اتریوم
    • اخبار آلتکوین
    • اخبار بلاکچین
    • اخبار عمومی
    • اطلاعیه صرافی‌های داخلی
  • تحلیل
    • همه
    • تحلیل آنچین
    • تحلیل اقتصادی
    • تحلیل تکنیکال
    • تحلیل فاندامنتال
  • آموزش
    • همه
    • کریپتو پدیا
    • کریپتو کده
    • دیفای
    • سرمایه گذاری
    • آموزش همه صرافی های ارز دیجیتال
    • ترید
    • کیف پول
    • بازی
    • استخراج
    • NFT
    • مقالات عمومی
  • ایردراپ
  • هک و کلاهبرداری
  • قیمت ارزهای دیجیتال
  • ماشین حساب ارزهای دیجیتال
  • مقایسه قیمت در صرافی

© 2025 - تمامی حقوق مادی و معنوی این وبسایت نزد میهن بلاکچین محفوظ است

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

© 2025 - تمامی حقوق مادی و معنوی این وبسایت نزد میهن بلاکچین محفوظ است.