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

پروتکل بافرز در هایپر لجر و کاربرد آن در قرارداد هوشمند !

نگارش:‌ایوب کریمی
17 اردیبهشت 1401 - 11:19
در کریپتو پدیا
زمان مطالعه: 4 دقیقه
2
قرارداد هوشمند

در این مقاله به توضیح تکنیکی می‌پردازیم که در ترجمه داده‌های ساختاری با استفاده از Protobuf در هایپر لجر (Hyperledger Fabric) مورد استفاده قرار می‌گیرد. Protobuf کوتاه شده عبارت Protocol Buffers است و در فارسی هم به آن پروتکل بافرز گفته می‌شود. Protobuf روشی برای ترجمه داده‌های ساختاری است و در توسعه برنامه‌هایی برای ارتباط با یکدیگر و یا برای ذخیره داده مفید است. Protobuf شکل‌گیری و پردازش داده را آسان‌تر می‌کند. آن داده‌ها را به شیوه‌ای سازمان می‌دهد که خواندن و نوشتن آنها در داخل یک قرارداد هوشمند (smart contract) آسان باشد. مفهوم قرارداد هوشمند را اولین بار اتریوم وارد فضای ارز دیجیتال کرد.

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

Toggle
  • Chaincode و قرارداد هوشمند
  • Protobuf
  • چرا از protobuf استفاده می‌شود؟
  • Protobuf چگونه کار می‌کند؟
  • تجزیه Protobuf
  • نتیجه‌گیری

Chaincode و قرارداد هوشمند

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

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

قرارداد هوشمند

در این SmartContract، آی دی (ID)، ایمیل، نام، موبایل، سن و غیره به یک سابقه کاربری خاص مرتبط است. اگر لازم باشد که سوابق مالی را برای هر کاربر ذخیره کنیم، یک قرارداد هوشمند دیگر خواهیم داشت که Financial نامیده می‌شود.

قرارداد هوشمند

پس این دو قرارداد هوشمند داخل Chaincode توسعه داده می‌شود و لوجیک تراکنش را برای هر دو وضعیت WorldState و Blockchain مدیریت می‌کند.

SmartContract عمدتا عملکرد‌های Put، get، Delete و GetHistory را در WorldState اجرا می‌کند.

PutState برای هر کلید مجزا شی جدید ایجاد می‌کند و یا بر بالای شی‌های موجود نوشته می‌شود.

GetState شی را برای کلیدی خاص از وضعیت لجر بازیابی می‌کند.

DelState شی را از WorldState لجر برمی‌دارد.

GetHistoryForKey همه سوابق تاریخچه تراکنش را برای یک کلید در طول زمان برمی‌گرداند.

همه سوابق در CouchDB به عنوان یک سابقه WorldState ذخیره می‌شود. شی‌ها به عنوان جفت key-value در فرمت JSON ذخیره می‌شوند. CouchDB در فراخوانی مجموعه‌های JSON از پایگاه داده سریع‌تر است. در Blockchain State، همه این سوابق به صورت بایت (byte) ذخیره می‌شوند و غیر قابل تغییر هستند.

Protobuf

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

چرا از protobuf استفاده می‌شود؟

همچنان که دیدیم، دو قرارداد هوشمند با نام‌های User و Financial برای ذخیره اطلاعات در داخل لجر یک کاربر موجود است. User اطلاعات زیستی اساسی را ذخیره می‌کند و Financial جزئیات بانکی کاربر را ذخیره می‌کند.

اما اگر به قرارداد هوشمند به منظور فراخوانی نگاه کنیم، ارتباطی بین دو مجموعه داده وجود ندارد. ما نمی‌توانیم یک ID را به عنوان کلید برای مدل داده‌های User و financial تعریف کنیم زیرا داده‌های لجر در key-value ذخیره می‌شود و اطلاعات برای یک کلید لغو می‌شود.

قرارداد هوشمند

هر دوی این سوابق با دو ID مختلف در Ledger State ذخیره می‌شوند.

برای حل این مشکل، Protobuf راه‌حلی سریعتر و انعطاف‌پذیر‌تر فراهم می‌کند. ما تنها لازم است که یم فایل .proto بنویسیم که ساختار داده را توصیف می‌کند. بنابراین، نتیجه بایتی پیام protobuf مستقیما به User SmartContract ارجاع داده می‌شود و Financial SmartContract را کاملا برمی‌دارد.

Protobuf چگونه کار می‌کند؟

در اینجا نحوه تنظیم کامپایلر protobuf و ایجاد فرمت پیام Protobuf را مشاهده می‌کنیم.

در ابتدا لازم است چند فرآیند نصب را برای استفاده از این کامپایلر دنبال کنیم.

قرارداد هوشمند

حالا کامپایلر را نصب می‌کنیم.

قرارداد هوشمند

حال protoc را در خط فرمان تایپ می‌کنیم. اگر پیام Missing Input File ظاهر شود، به معنی این است که کامپایلر با موفقیت نصب شده است.

به عنوان مثال، ابتدا لازم است یک فایل financial.proto ایجاد نماییم. آن متشکل از یک فرمت پیام نوع Financial است که چهار قسمت نام بانکی، کد ifsc، شماره حساب و تاریخ ایجاد دارد.

قرارداد هوشمند

فایل proto را برای ایجاد فایل مدل داده protobuf و برای فرمت پیام Financial کامپایل کنید.

قرارداد هوشمند

مشاهده می‌شود که فایل protobuf به صورت Financial.pb.go ایجاد شده است. این فایل یک مدل داده سازگار با بسته proto است و برای تبدیل فرمت پیام proto به بایت مورد استفاده قرار می‌گیرد.

قرارداد هوشمند

حال یک فیلد داده اضافی را در قرارداد هوشمند User ایجاد می‌کنیم.

قرارداد هوشمند

ارجاع فرمت پیام Financial

قرارداد هوشمند

در حالی که سوابق کاربر را به لجر اضافه می‌کنیم، می‌توان ارجاع فرمت پیام Financial را به داخل همان قرارداد هوشمند User اضافه کرد.

قرارداد هوشمند

تجزیه Protobuf

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

قرارداد هوشمند

نتیجه‌گیری

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

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

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

رمزارز در ایران فیچر
رمزارز در ایران

بانک دی به جمع ارائه‌دهندگان کیف پول ریال دیجیتال پیوست

29 آذر 1404 - 21:00
70
فیچر اتریوم
اخبار اتریوم

بازگشت سینتتیکس به اتریوم؛ آیا مین‌نت برای میزبانی از پرپچوال‌ها آماده است؟

29 آذر 1404 - 18:30
36
پروژه‌های سودآور وب ۳ در زمستان کریپتو کدامند؟ 
تحلیل فاندامنتال

تناقض روایت فاندسترت و تام لی؛ باید نگران باشیم یا می‌توان به یک چرخه صعودی امیدوار بود؟

29 آذر 1404 - 17:30
61
گری اسکیل
مقالات عمومی

پیش‌بینی گری اسکیل؛ معرفی ۱۰ ترند سرمایه‌گذاری ارزهای دیجیتال در سال ۲۰۲۶

28 آذر 1404 - 20:00
1443
راهنمای آموزشی SEC برای نگهداری ارزهای دیجیتال توسط سرمایه‌گذاران خرد
آموزش

راهنمای آموزشی SEC برای نگهداری ارزهای دیجیتال توسط سرمایه‌گذاران خرد

28 آذر 1404 - 16:00
152
از واشنگتن تا بروکسل؛ مقایسه جامع رویکردهای نظارتی ارزهای دیجیتال در سراسر جهان
مقالات عمومی

دوجهان، یک صنعت؛ مقایسه تحلیلی قانون‌گذاری ارزهای دیجیتال در آمریکا و اروپا

27 آذر 1404 - 22:00
54
اشتراک
اطلاع از
2 دیدگاه
جدید ترین
قدیمی ترین محبوب ترین
Inline Feedbacks
View all comments

آموزش

فیچر دوام آوردن در سقوط بازار
ترید

چگونه احساسات ما را در ترید نابود می‌کنند؟ راهنمای جامع کنترل هیجانات در بازار کریپتو

29 آذر 1404 - 22:00
97
فیچر حباب گل لاله
مقالات عمومی

حباب گل لاله چه بود؟ با اولین حباب اقتصادی تاریخ آشنا شوید!

28 آذر 1404 - 22:00
145
گری اسکیل
مقالات عمومی

پیش‌بینی گری اسکیل؛ معرفی ۱۰ ترند سرمایه‌گذاری ارزهای دیجیتال در سال ۲۰۲۶

28 آذر 1404 - 20:00
1443
راهنمای آموزشی SEC برای نگهداری ارزهای دیجیتال توسط سرمایه‌گذاران خرد
آموزش

راهنمای آموزشی SEC برای نگهداری ارزهای دیجیتال توسط سرمایه‌گذاران خرد

28 آذر 1404 - 16:00
152
فیچر پریمیوم تتر در هند
مقالات عمومی

چرا تتر در هند گران‌تر معامله می‌شود؟ روایتی از پریمیوم USDT در بازار هند و اقتصاد سایه

28 آذر 1404 - 12:00
88
از واشنگتن تا بروکسل؛ مقایسه جامع رویکردهای نظارتی ارزهای دیجیتال در سراسر جهان
مقالات عمومی

دوجهان، یک صنعت؛ مقایسه تحلیلی قانون‌گذاری ارزهای دیجیتال در آمریکا و اروپا

27 آذر 1404 - 22:00
54

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

اکسکوینو زیر سایه‌ سنگین احکام قضایی؛ کاربران چطور شکایت رسمی ثبت کنند؟

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

30 آذر 1404 - 13:02
1339

پسکی (PassKey) چیست؟ رمزنگاری کلید عمومی امن‌تر از پسورد‌ها و عبارات بازیابی! 

مقایسه پسکی (Passkey) با ۲۴ یا ۱۲ کلمه؛ از کاغذ و عبارت بازیابی تا ورود با اثر انگشت

مقایسه بهترین صرافی های رمزارز ایرانی؛ بهترین صرافی داخلی کدام است؟

پرونده اکسکوینو؛ از وعده‌های پرداخت تا واقعیت حساب‌های مسدود

تفاوت کیف پول حضانتی و غیرحضانتی چیست؟ ولت امانی بهتر است یا غیرامانی؟

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

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

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

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