میهن بلاکچین
  • اخبار
    • همه
    • رمزارز در ایران
    • اخبار بیت کوین
    • اخبار اتریوم
    • اخبار آلتکوین
    • اخبار بلاکچین
    • اخبار عمومی
    • اطلاعیه صرافی‌های داخلی
  • تحلیل
    • همه
    • تحلیل آنچین
    • تحلیل اقتصادی
    • تحلیل تکنیکال
    • تحلیل فاندامنتال
  • آموزش
    • همه
    • کریپتو پدیا
    • کریپتو کده
    • دیفای
    • سرمایه گذاری
    • آموزش همه صرافی های ارز دیجیتال
    • ترید
    • کیف پول
    • بازی
    • استخراج
    • 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 تغییر داد.

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

نتیجه‌گیری

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

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

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

فیچر اخبار اتریوم و تحلیل قیمت اتریوم
اخبار اتریوم

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

6 مرداد 1405 - 23:00
50
توکن stETH چیست
اخبار اتریوم

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

6 مرداد 1405 - 21:00
13
فیچر آپدیت هفتگی
تحلیل فاندامنتال

نبض هفتگی بازار کریپتو؛ از اخبار مهم تا رویدادهای پیش‌روی هفته اول مرداد

5 مرداد 1405 - 09:00
30
Exchange_Generic اطلاعیه صرافی
اطلاعیه صرافی

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

4 مرداد 1405 - 23:00
80
رابرت کیوساکی نویسنده پدر پولدار پدر فقیر بزرگ‌ترین سقوط بیت کوین
اخبار بیت کوین

رابرت کیوساکی: طلا، بیت کوین و اتریوم سپر دفاعی من در برابر بحران بدهی آمریکا هستند

4 مرداد 1405 - 21:00
47
فیچر کیف پول وب ۳
مقالات عمومی

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

2 مرداد 1405 - 16:00
310
اشتراک
اطلاع از
2 دیدگاه
جدید ترین
قدیمی ترین محبوب ترین
Inline Feedbacks
View all comments

آموزش

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

بررسی کتابچه راهنمای استیبل کوین دلویت و آوالانچ برای موسسات مالی

3 مرداد 1405 - 20:00
28
گزارش بایننس: چگونه نسل زد در حال تغییر بازارهای مالی است؟
مقالات عمومی

گزارش بایننس: چگونه نسل زد در حال تغییر بازارهای مالی است؟

3 مرداد 1405 - 16:00
83
سقوط رؤیای ۲۰۰ میلیون دلاری DeSo؛ چرا بلاکچین شبکه‌های اجتماعی نتوانست اجتماعی شود؟
مقالات عمومی

سقوط رؤیای ۲۰۰ میلیون دلاری DeSo؛ چرا بلاکچین شبکه‌های اجتماعی نتوانست اجتماعی شود؟

3 مرداد 1405 - 12:00
45
رابینهود چین (Robinhood Chain) چیست؟ بررسی جامع زیرساخت لایه ۲، دارایی‌های توکنیزه‌شده و آینده دیفای
کریپتو پدیا

رابینهود چین (Robinhood Chain) چیست؟ بررسی جامع زیرساخت لایه ۲، دارایی‌های توکنیزه‌شده و آینده دیفای

2 مرداد 1405 - 20:00
65
فیچر کیف پول وب ۳
مقالات عمومی

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

2 مرداد 1405 - 16:00
310
تست شخصیت بیت کوینرها؛ بیت کوین چه افرادی را جذب می‌کند؟
مقالات عمومی

تست شخصیت بیت کوینرها؛ بیت کوین چه افرادی را جذب می‌کند؟

2 مرداد 1405 - 12:00
140

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

فیچر بازار سهام

وال‌استریت فقط برای آمریکایی‌ها نیست؛ قبل از خرید اپل، انویدیا یا S&P 500 این راهنما را بخوانید

16 تیر 1405 - 17:00
210

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

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

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

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

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

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

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

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

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