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

توسعه راهکارهای بلاک چین ؛ قرارداد هوشمند ، یک پایگاه داده نیست!

نگارش:‌امین آبشاهی
3 خرداد 1401 - 22:49
در مقالات عمومی
زمان مطالعه: 2 دقیقه
0
بلاک چین mempool تراکنش ارز دیجیتال

کدگذاری قرارداد هوشمند (Smart Contract) به عنوان جدول‌های پایگاه داده اشتباه است. خود من نیز تا همین اواخر در این مورد اشتباه می‌کردم. توسعه راهکارهای بلاک چین (Blockchain) ، شما را ملزم می کند تا در مورد داده‌ها، کنترل و حریم خصوصی متفاوت فکر کنید.

درک برخی از جزئیات آسان است، مانند این که ارز مقداری بیشتر از جدول موجودی‌ها باشد. برخی از جزئیات پیچیده‌تر هستند؛ مانند این واقعیت که شما در حال ساختن راهکاری هستید که به سختی می‌توانید آن را کنترل کنید.

یکی از جزییاتی که این اواخر توجه من را جلب کرد، این بود: این که داده‌ها هم در یک بلاک چین عمومی، عمومی هستند یعنی چه؟

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

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

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

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

Toggle
  • ثبت وقایعی که در یک بلاک چین تولید شده‌اند
  • کار با رویدادها
  • در حال حاضر نحوه توسعه نرم‌افزار چگونه است
  • نتیجه گیری

ثبت وقایعی که در یک بلاک چین تولید شده‌اند

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

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

تحقیقات اولیه من باعث شد که فکر کنم: “هر تغییر وضعیتی در بلاک چین ثبت می‌شود، بنابراین باید راهی برای عبور از طریق بلاک‌ها و بازیابی تاریخ تراکنش وجود داشته باشد.” 

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

پایگاه داده‌ای که روی تاریخ تراکنش ساخته شده، می‌تواند هر زمان و در هر مکان دیگری که لازم باشد، بازسازی شود؛ زیرا منبع حقیقت همیشه بلاک ‌چین خواهد بود.

قرارداد هوشمند به ذخیره داده‌هایی که در آنجا تنها به صورت بایگانی هستند، نیاز ندارد. من از دوست خوبم برناردو ویرا (Bernardo Vieira) خواستم تا ابزاری برای پایگاه داده تاریخ تراکنش پیدا کند. او می‌داند هر کس چه کار می‌کند و معمولاً با چیزی می‌یابد که ما بتوانیم از آن استفاده کنیم.

من حتی در مورد رویدادها فکر نمی‌کردم تا این که برناردو برگشت و گفت: “ثبت وقایعی که در یک بلاک چین تولید شده‌اند چطور است، آیا این مشکل شما را حل می‌کند؟”

این موضوع ذهن من را باز کرد.

کار با رویدادها

تا آن زمان من زیاد به رویدادهای اتریوم فکر نمی کردم. می‌دانستم هنگامی تغییر وضعیت بلاک چین، به جای بازگرداندن ارزش به انتشار یک رویداد کمک می کنید. همچنین یاد گرفته‌ام که آن رویدادها را از فرانت اند (front end) بگیرم تا نتیجه را بازیابی کنم. در مورد کارکرد رویدادها هیچ ایده‌ای نداشتم.

هنگامی که شما یک رویداد را از یک قرارداد هوشمند خارج می کنید، در بلاک چین نیمه ساختار یافته ثبت می‌شود. چند قسمت از این رویداد همیشه یکسان است و متغیرهایی که برای این رویداد در قرارداد هوشمند تعریف می‌کنید، به عنوان قسمت‌های اضافی پیوست می‌شوند. از نظر گس (gas)، یک رویداد یکی از ارزان‌ترین عملیات‌هایی است که می‌توانید در اتریوم انجام دهید. در واقع ۴۰۰۰ گس واقعا ارزان است.

اولین کاوش‌های ما راه‌اندازی TheGraph بود که دقیقاً همان چیزی را که ما می‌خواستیم انجام می‌دهد. TheGraph رویدادها را از بلاک‌چین ها می‌گیرد و یک رابط GraphQL برای جستجوی آنها فراهم می‌کند.

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

در حال حاضر نحوه توسعه نرم‌افزار چگونه است

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

همه تغییرات وضعیت باید یک رویداد ایجاد کند.

با اطمینان از این که همه تغییرات وضعیت باعث ایجاد یک رویدادی می‌شود، لازم نیست نگران ردیابی تراکنش‌ها باشیم. تمام تغییرات وضعیت به عنوان رویدادهایی دامپ می‌شوند و ما تنها اطلاعات را که لازم داریم به طور خلاصه از Front End خواهیم داشت.

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

به یاد داشته باشید که تمام داده‌ها در بلاک چین عمومی، عمومی هستند.

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

بلاک چین قرارداد هوشمند حریم خصوصی گس کدنویسی رویداد

می تواند ساده‌تر و کارآمدتر نیز باشد.

بلاک چین قرارداد هوشمند حریم خصوصی گس کدنویسی رویداد

توجه داشته باشید که این قرارداد دوم هیچ چیزی را ذخیره نمی‌کند و عملکردی برای بازیابی داده‌‌ها نیز ندارد. با این حال کار کرده و همان کار را انجام می‌دهد.

عادت داریم که رویدادها را به عنوان چیزهای گذرا فرض کنیم؛ اما همه چیز از جمله رویدادها در بلاک چین دائمی است. اگر می‌خواهید بدانید که آیا یک سند اصیل است، فقط باید هش را محاسبه کرده و یک پرسش (Query) را روی حافظه پنهان (cache) اجرا کنید.

تنها واقعیت این است که شما باید یک زیرساخت خارجی  برای ردیابی وقایع و تقلید از وضعیت بلاک چین خارج از زنجیره نگه دارید. این کار نسبتا ساده، بهترین روش از نظر عملکرد است.

می‌توانید در starter-kit نمونه‌ای از کش رویداد را پیدا کنید؛ لطفاً توجه داشته باشید، زیرا این ابزاری است که در حال حاضر در همه پروژه‌ها از آن استفاده می‌شود و باید به سرعت پیشرفت کند.

نتیجه گیری

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

داده‌ها را تنها در صورتی که یک قرارداد هوشمند به آن نیاز داشته باشد در حالت متغیر ذخیره کنید، زیرا در غیر این صورت در یک رویداد از بین می‌رود.

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

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

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

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

فیچر پالی مارکت و کالشی
مقالات عمومی

چگونه رقابت پالی مارکت و کالشی به یک جنگ برندینگ تمام عیار تبدیل شد؟

3 تیر 1405 - 20:00
32
گزارش سه‌ماهه اول ۲۰۲۶ اتریوم؛ رکورد استفاده و سقوط کارمزدها
دیفای

گزارش سه‌ماهه اول ۲۰۲۶ اتریوم؛ رکورد استفاده و سقوط کارمزدها

3 تیر 1405 - 16:00
50
فیچر استراتژی و خرید بیت کوین
اخبار بیت کوین

مقایسه غول بیت کوین Strategy با ترا لونا (Terra Luna) اشتباه است

2 تیر 1405 - 11:00
29
فیچر اهمیت خودحضانتی
اخبار بیت کوین

چرا توسعه‌دهندگان بیت کوین می‌خواهند قابلیت «جایگزینی تراکنش با کارمزد بیشتر» را کنار بگذارند؟

1 تیر 1405 - 17:00
29
فیچر هک کلاهبرداری
اخبار عمومی

بررسی حملات اخیر به پل‌های بلاکچینی Taiko و Secret Network

1 تیر 1405 - 13:00
19
sonic labs
اخبار عمومی

توکن S با استعفای ۳ مدیر ارشد سابق از هیئت مدیره سونیک لبز، ۵ درصد سقوط کرد

30 خرداد 1405 - 13:00
76
اشتراک
اطلاع از
0 دیدگاه
جدید ترین
قدیمی ترین محبوب ترین
Inline Feedbacks
View all comments

آموزش

فیچر وام دهی
مقالات عمومی

راهنمای جامع وام‌دهی آنچین و نقش استیبل‌ کوین‌ها

4 تیر 1405 - 12:00
43
فیچر پالی مارکت و کالشی
مقالات عمومی

چگونه رقابت پالی مارکت و کالشی به یک جنگ برندینگ تمام عیار تبدیل شد؟

3 تیر 1405 - 20:00
32
گزارش سه‌ماهه اول ۲۰۲۶ اتریوم؛ رکورد استفاده و سقوط کارمزدها
دیفای

گزارش سه‌ماهه اول ۲۰۲۶ اتریوم؛ رکورد استفاده و سقوط کارمزدها

3 تیر 1405 - 16:00
50
فیچر اسکنر آربیتراژ
مقالات عمومی

بهترین اسکنر‌های شناسایی آربیتراژ ارز دیجیتال در ۲۰۲۶؛ کسب سود از اختلاف قیمت‌های پنهان

3 تیر 1405 - 12:00
67
فیچر دکس اگریگیتورها
صرافی غیرمتمرکز

پایان بحران در THORChain؛ آغاز فعالیت دوباره این صرافی پس از ۱ ماه دوری

2 تیر 1405 - 21:00
20
فیچر هوش مصنوعی
مقالات عمومی

پایان انحصار؛ چگونه هوش مصنوعی غیرمتمرکز بساط غول‌های فناوری را جمع می‌کند؟

29 خرداد 1405 - 20:00
50

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

فیچر ریزش قیمت بیت کوین - ریزش بازار - نزولی - اصلاح قیمت

روزهای قرمز بازار؛ قربانی ترس می‌شوید یا استراتژی‌تان را تغییر می‌دهید؟

17 خرداد 1405 - 10:00
140

تحریم صرافی های ایرانی و ریسک حضانتی؛ دارایی‌هایمان واقعاً در خطر است؟

گزارش ویژه: اکسکوینو چگونه از اختلالی ادعایی به بحرانی سیستمی رسید؟ کالبدشکافی ورشکستگی پنهان در فین‌تک ایران

۵ گام طلایی برای ردیابی کیف پول‌ نهنگ‌ها و به دست آوردن سرمایه میلیون دلاری

«برای آنچه نیاز دارید، چه بهایی می‌پردازید؟» صورت‌مسئله تازه اقتصاد جهانی و ایران

نقشه بقای سرمایه در ایران: سه سناریو، سه رفتار بازار، هدفی مشترک

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

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

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

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