SlideShare a Scribd company logo
1 of 61
Download to read offline
BY: FATEME BESHARAT , MOHADESE JALILI
PROFESSOR: DR.DORI
1397
1
Blockchain
2
Blockchain
■‫بالکچین‬‫یک‬‫بستر‬‫توزیع‬‫تراکنش‬‫است‬‫که‬‫در‬‫آن‬‫هر‬‫تراکنش‬‫به‬‫دیگر‬‫تراکنش‬‫های‬‫اطراف‬‫آن‬‫از‬‫طریق‬‫ر‬‫مزگذاری‬
‫متصل‬‫است‬.
■‫هر‬‫تراکنش‬‫در‬‫سرشماری‬‫عمومی‬‫با‬‫توافق‬‫اکثریت‬‫شرکت‬‫کنندگان‬‫در‬‫سیستم‬‫تایید‬‫شده‬‫است‬.‫و‬‫هنگا‬‫می‬‫که‬‫وارد‬
‫شبکه‬‫شد،اطالعات‬‫هرگز‬‫نمی‬‫تواند‬‫پاک‬‫شود‬.
■Block chain‫حاوی‬‫یک‬‫رکورد‬‫خاص‬‫و‬‫قابل‬‫تایید‬‫از‬‫هرتراکنش‬‫ساخته‬‫شده‬‫است‬.
■‫این‬‫فناوری‬‫یک‬‫پایگاه‬‫‌ی‬‫ه‬‫داد‬‫توزیع‬‫شده‬‫است‬‫که‬‫هر‬‫کسی‬‫‌تواند‬‫ی‬‫م‬‫در‬‫آن‬‫اعتبار‬‫معامالت‬‫را‬‫بررسی‬‫کند‬.
3
Blockchain
■‫سه‌فناوری‌اصلی‌برای‌ایجاد‌یک‌بالک‌چین‌با‌هم‌ترکیب‌می‌شوند‌و‌هیچ‌یک‌از‌آنها‌جدید‌نیستند‌اما‌تن‬‌‫ظیم‌و‌برنامه‬
‫های‌کاربردی‌آن‌ها‌جدید‌هستند‬.
■۱‌)‫کلید‌های‌خصوصی‌رمزنگاری‌شده‬،
■۲‌)‌‫یک‌شبکه‌توزیع‌شده‌با‌یک‌دفترکل‌مشترک‬‫و‬
■۳‌)‫انگیزه‌ای‌برای‌انجام‌تراکنش‌های‌شبکه،‌ثبت‌ضمانت‌و‌امنیت‬(.‫پاداش‬)
4
Blockchain
■‫دو‌نفر‌می‌خواهند‌با‌یکدیگر‌از‌طریق‌اینترنت‌ارتباط‌برقرار‌کنند‬.‫هر‌یک‌از‌آن‌ها‌یک‌کلید‌خصوصی‌و‌ی‬‌‫ک‌کلید‬
‫عمومی‌دارند‬.
5
Blockchain
■‫هدف‬‫اصلی‬‫این‬‫کامپوننت‬‫در‬‫فناوری‬‫بالک‬‫چین‬‫ایجاد‬‫یک‬‫هویت‬‫دیجیتال‬‫امن‬‫است‬.‫این‬‫هویت‬‫دیجیتال‬‫بر‬‫اساس‬
‫ترکیبی‬‫از‬‫کلیدهای‬‫رمزنگاری‬‫خصوصی‬‫و‬‫عمومی‬‫ایجاد‬‫می‬‫شوند‬.‫این‬‫ترکیب‬‫در‬‫ایجاد‬‫یک‬‫نوع‬‫امضا‬‫دیجیت‬‫ال‬‫بسیار‬
‫مفید‬‫است‬.‫این‬‫امضای‬‫دیجیتال‬‫کنترل‬‫قوی‬‫بر‬‫تشخیص‬‫مالکیت‬‫دارد‬.
6
Blockchain
■‌‫شبکه‌توزیع‌شده‬(‫شبکه‌ای‌با‌چندین‌هزار‌کامپیوتر‌در‌حال‌فعالیت‬)
•‌‫اندازه‌شبکه‬(‫تعداد‌کامپیوترهای‌در‌حال‌فعالیت‬‌)‫برای‌امنیت‌شبکه‌مهم‌است‬.
7
■‫پروتکل‬
•‌‫یک‌بالک‬–‌‫حاوی‌امضای‌دیجیتالی،‌برچسب‌زمانی‌و‌اطالعات‌مربوطه‬–‫و‌سپس‌در‌تمام‌گره‌ها‌در‌شبک‬‌‫ه‬
‫پخش‌می‌شود‬.
8
Blockchain
■‫زنجیره‌از‌بالک‌ها‬
9
Blockchain
10
Blockchain
11
Blockchain‫برای‌کسب‌و‌کار‌چیست؟‬
12
Blockchain‫برای‌کسب‌و‌کار‌چیست؟‬
13
.1‌‫پرداخت‬‌‫و‌انتقال‬‌‫پول‬
–‌‫شناخته‌شده‌ترین‌کاربرد‬Blockchain‫قابلیت‌ارسال‌و‌دریافت‌پرداخت‌است‬‌.
–‫از‌آنجائی‌که‬‫شروع‌تکنولوژی‌بالک‌چین‌بر‌اساس‌ارز‌دیجیتال‌است،‌این‌امر‌منطقی‌است‬.‫و‌اینن‌حالنت‬‌‫بنرای‬
‫صاحبان‬‌‫کسب‌و‌کار‬‫کوجک‬‫مفید‌است‬.
–‫دلیل‌انجام‌این‌کار‌این‌است‌که‌هیچ‌واسطه‬‫ای‌وجود‌ندارد‌که‌انتقال‌وجوه‌بین‌چندین‌بانک‌را‌کنند‌ن‬‌‫مایند‌و‬
‫هزینه‬‫های‌معامله‌گران‌را‌خنثی‌کند‬.
Blockchain‫برای‌کسب‌و‌کار‌چیست؟‬
14
۲‌‌.‌‫قراردادهای‬‫هوشمندانه‬
–“‫قراردادهای‌هوشمند‬‌”‫عبارتند‌از‌برنامه‬‫های‌کامپیوتری‌خودکار‬‫که‌می‬‫توانند‌شرایط‌هر‌قرارداد‌را‌اجرا‌کنن‬‫د‬.
–‫این‌یک‌امنیت‌مالی‌است‌که‌توسط‌یک‌شبکه‌که‌به‌گیرندگان‌بر‌اساس‌رویدادهای‌آینده‌هدایت‌و‌ت‬‌‫وسط‌کد‬
‫کامپیوتری‌منتقل‌می‬‫شود‌سپرده‌گذاری‌شده‌است‬.
Blockchain‫برای‌کسب‌و‌کار‌چیست؟‬
15
۳‌.‫دفتر‌اسناد‌رسمی‬
–‫فن‬‫آوری‬Blockchain‫همچنین‬‫می‬‫تواند‬‫به‬‫عنوان‬‫یک‬‫سرویس‬‫اسناد‬‫راحت‬‫و‬‫ارزان‬‫استفاده‬‫شود‬.
–‫به‬‫عنوان‬،‫مثال‬‫برنامه‬‫های‬‫مانند‬Uproov،‫که‬‫یک‬‫پلت‬‫فرم‬‫چند‬‫رسانه‬‫های‬‫گوشی‬‫های‬‫هوشمند‬،‫است‬‫می‬-
‫تواند‬‫بالفاصله‬‫پس‬‫از‬‫آن‬‫که‬‫یک‬‫کاربر‬‫یک‬،‫تصویر‬‫ویدئو‬‫یا‬‫ضبط‬‫صدا‬‫ایجاد‬،‫کرد‬‫تأیید‬‫شود‬.
Blockchain‫برای‌کسب‌و‌کار‌چیست؟‬
16
4‌.‫هویت‌دیجیتالی‬
–‫فن‬‫آوری‬‫بالک‬‫چین‬‫راه‬‫حلی‬‫برای‬‫بسیاری‬‫از‬‫مسائل‬‫مربوط‬‫به‬‫هویت‬‫دیجیتال‬‫ارائه‬‫می‬‫دهد‬‫که‬‫در‬‫آن‬‫هو‬‫یت‬
‫می‬‫تواند‬‫به‬‫صورت‬‫غیرقابل‬،‫تصوری‬‫غیر‬‫قابل‬،‫تغییر‬‫و‬‫ایمن‬‫به‬‫صورت‬‫یکپارچه‬‫تأیید‬‫شود‬.
–‫سیستم‬‫های‬‫تأیید‬‫مبتنی‬‫بر‬Blockchain‫بر‬‫پایه‬‫تأیید‬‫هویت‬‫غیرقابل‬‫انکار‬‫با‬‫استفاده‬‫از‬‫امضای‬‫دیجی‬‫تال‬‫بر‬
‫اساس‬‫رمزنگاری‬‫کلید‬‫عمومی‬‫است‬.
Blockchain‫برای‌کسب‌و‌کار‌چیست؟‬
17
5‌.‫ذخیره‌سازی‌ابر‌توزیع‌شده‬
6‌.‫ارتباطات‌زنجیره‌تامین‌و‌اثبات‌پروانه‬
7‌.‫کارت‬‫های‌هدیه‌و‌برنامه‬‫های‌وفاداری‬
8‌.‌‫شبکه‌و‬IoT
18
Hyperledger
■ Open source blockchain
■ related tools
■ started in December 2015 by the Linux Foundation
■ to support the collaborative development of blockchain-based distributed ledgers
19
Hyperledger
■‫هایپرلجر‬Open source‫است‬‫و‬‫برای‬‫ایجاد‬‫فناوری‬‫صنعتی‬‫پیشرفته‬‫بالک‬‫چین‬‫است‬.‫یک‬‫تالش‬‫جمعی‬‫بی‬‫ن‬
‫المللی‬‫است‬‫که‬‫توسط‬‫بنیاد‬‫لینوکس‬‫میزبانی‬‫‌شود‬‫ی‬‫م‬‫و‬‫شامل‬‫رهبران‬‫صنعت‬،‫مالی‬،‫بانکداری‬‫اینترنت‬،‫اشیا‬‫زنجیره‬
،‫تامین‬‫تولید‬‫و‬‫فناوری‬‫است‬.
20
Hyperledger
■‫هدف‬‫از‬‫این‬‫پروژه‬‫پیشرفت‬‫همکاری‬‫های‬‫متقابل‬‫صنعت‬‫با‬‫ایجاد‬‫بلوک‬‫های‬‫زنجیره‬‫ای‬‫و‬ledger‫های‬‫توزیع‬‫شده‬
‫است‬‫که‬‫تمرکز‬‫ویژه‬‫ای‬‫بر‬‫بهبود‬‫عملکرد‬‫و‬‫قابلیت‬‫اطمینان‬‫این‬‫سیستم‬‫ها‬(‫در‬‫مقایسه‬‫با‬‫طرح‬‫های‬‫مشاب‬‫ه‬‫رمزنگاری‬)
‫به‬‫طوری‬‫که‬‫آنها‬‫قادر‬‫به‬‫پشتیبانی‬‫از‬‫معامالت‬‫تجاری‬‫جهانی‬‫توسط‬‫شرکت‬‫های‬‫عمده‬‫فن‬،‫آوری‬‫مالی‬‫و‬‫زنجی‬‫ره‬‫تامین‬
‫هستند‬.
21
■Hyperledger‫تراکنش‬‫های‬‫شرکت‬‫به‬‫مصرف‬‫کننده‬‫و‬‫شرکت‬‫به‬‫شرکت‬‫را‬‫ممکن‬‫می‬‫سازد‬.
■‫این‬‫الگوها‬‫به‬‫کاربران‬‫کمک‬‫می‬‫کنند‬‫تا‬‫با‬‫استفاده‬‫از‬‫چارچوب‬‫های‬‫متن‬‫باز‬Open Source‫و‬‫به‬‫روش‬‫سریع‬‫و‬
‫آسان‬‫شبکه‬‫ی‬‫بالک‬‫چین‬‫ایمن‬‫را‬‫ایجاد‬‫و‬‫راه‬‫اندازی‬‫کنند‬.
22
Hyperledger
Hyperledger
■‫بنیاد‬‫لینوکس‬‫قصد‬‫دارد‬‫تا‬‫محیطی‬‫را‬‫ایجاد‬‫کند‬‫که‬‫در‬‫آن‬‫توسعه‬‫‌ها‬‫ه‬‫دهند‬‫و‬‫‌ها‬‫ت‬‫شرک‬‫بتوانند‬‫همدیگر‬‫را‬‫پ‬‫یدا‬‫کنند‬‫و‬
‫دست‬‫به‬‫ایجاد‬‫ساختارهای‬‫مختلف‬‫بالک‬‫چین‬‫بزنند‬.
■‫بنیاد‬‫لینوکس‬‫این‬‫بستر‬‫را‬‫در‬‫دسامبر‬۲۰۱5‫ایجاد‬‫کرد‬.‫در‬‫فوریه‬۲۰۱6‫اولین‬‫موسسان‬‫آن‬‫معرفی‬‫شدند‬.
23
Hyperledger
■‫امروزه‬‫هایپرلجر‬‫بیش‬‫از‬۱۰۰‫عضو‬‫برجسته‬‫دارد‬‫که‬‫در‬‫این‬،‫فهرست‬‫رهبران‬‫شناخته‬‫شده‬‫صنعت‬‫فناوری‬‫جای‬‫دارند‬.
‫رهبران‬‫صنعت‬‫حمل‬‫و‬‫نقل‬(‫مثل‬‫ایرباس‬)
‫‌های‬‫ت‬‫شرک‬‫فناوری‬(‫مثل‬IBM،،‫فوجیتسو‬،‫هواوی‬،‫نوکیا‬‫اینتل‬‫و‬‫سامسونگ‬)
‫موسسات‬‫مالی‬‫مانند‬‫جی‬‫پی‬،‫مورگان‬‫ول‬‫فارگو‬
‫‌های‬‫پ‬‫استارتا‬‫بالک‬‫چین‬
24
25
‫‌ها‬‫ه‬‫پروژ‬(Hyperledger Frameworks)
■ 2.1 Hyperledger Burrow
■ 2.2 Hyperledger Fabric
■ 2.3 Hyperledger Iroha
■ 2.4 Hyperledger Sawtooth
■ 2.5 Hyperledger Indy
26
‌‫‌ها‬‫ه‬‫پروژ‬(Hyperledger Frameworks)
■Hyperledger‫‌ای‬‫ه‬‫دندان‬(Sawtooth):‫یک‬‫سلسله‬‫‌چین‬‫ک‬‫بال‬‫‌ای‬‫ه‬‫پیمان‬‫و‬‫ماژوالر‬‫است‬‫که‬‫توسط‬‫اینتل‬‫توس‬‫عه‬
‫یافته‬‫و‬‫از‬‫یک‬‫الگوریتم‬‫توافقی‬‫جدید‬‫به‬‫نام‬‫گواهی‬‫اثبات‬ِ‫ن‬‫زما‬‫سپری‬‫شده‬Proof of Elapsed Time (PoeT)
‫استفاده‬‫‌کند‬‫ی‬‫م‬.
■Hyperledger‫ایروها‬(Iroha):‫ایروها‬‫‌ای‬‫ه‬‫پروژ‬‫از‬‫یک‬‫جفت‬‫شرکت‬‫ژاپنی‬‫است‬‫برای‬‫ایجاد‬‫روشی‬‫آسان‬‫در‬
‫ترکیب‬‫و‬‫به‬‫هم‬‫پیوستن‬‫چهارچوب‬‫های‬‫یک‬‫‌چین‬‫ک‬‫بال‬.
‫بر‬‫اساس‬Hyperledger Fabric،‫با‬‫توجه‬‫به‬‫برنامه‬‫های‬‫تلفن‬‫همراه‬.
27
■Hyperledger‫فابریک‬(Fabric):‫این‬‫پروژه‬‫توسط‬‫‌ام‬‫ی‬‫‌ب‬‫ی‬‫آ‬‫هدایت‬‫‌شود‬‫ی‬‫م‬.‫فابریک‬‫یک‬‫اجرای‬‫پالگ‬&‫پلی‬‫از‬
‫فناوری‬‫‌چین‬‫ک‬‫بال‬‫است‬‫که‬‫به‬‫عنوان‬‫پایه‬‫و‬‫اساسی‬‫در‬‫توسعه‬‫‌های‬‫ه‬‫برنام‬‫کاربردی‬‫‌چین‬‫ک‬‫بال‬‫در‬‫مقیاس‬‫بزرگ‬‫‌باشد‬‫ی‬‫م‬
‫که‬‫قابلیت‬‫تنظیم‬‫مجوزها‬‫را‬‫دارد‬.
28
‌‫‌ها‬‫ه‬‫پروژ‬(Hyperledger Frameworks)
■: Hyperledger Burrow‫این‬‫پروژه‬‫یک‬‫ماشین‬‫قرارداد‬‫هوشمند‬‫مجاز‬‫را‬‫در‬‫کنار‬‫مشخصات‬‫اتریوم‬‫توسعه‬‫‌دهد‬‫ی‬‫م‬.
■Indy : Hyperledger Indy‫یک‬‫مجموعه‬،‫ابزارها‬‫‌ی‬‫ه‬‫کتابخان‬‫کدها‬‫و‬‫سایر‬‫اجزا‬‫سازنده‬‫هویت‬‫دیجیتال‬‫براساس‬
‫بالک‬‫چین‬‫است‬.
29
‌‫‌ها‬‫ه‬‫پروژ‬(Hyperledger Frameworks)
30
Hyperledger Fabric
■‫فابریک‬‫به‬‫جای‬‫یک‬‫‌چین‬‫ک‬‫بال‬،‫ساده‬‫مبنایی‬‫برای‬‫توسعه‬‫راه‬‫‌های‬‫ل‬‫ح‬‫مبتنی‬‫‌چین‬‫ک‬‫بربال‬‫با‬‫یک‬‫معماری‬‫م‬‫اژوالر‬‫است‬.
■‫با‬‫استفاده‬‫از‬،‫فابریک‬‫اجزای‬‫مختلف‬‫‌چین‬‫ک‬‫بال‬(‫مانند‬‫‌های‬‫س‬‫سروی‬‫عضویت‬‫و‬‫یا‬‫نظرسنجی‬‫گروهی‬)‫‌توا‬‫ی‬‫م‬‫نند‬‫پالگ‬‫و‬
‫پلی‬‫شوند‬.
■Hyperledger Fabric‫اولین‬‫سیستم‬‫بلوک‬‫چینی‬‫است‬‫که‬‫برنامه‬‫های‬‫توزیع‬‫شده‬‫در‬‫زبان‬‫های‬‫برنامه‬‫نوی‬‫سی‬
‫عمومی‬‫مانند‬Go،Java،Node.js‫را‬‫اجرا‬‫می‬‫کند‬
31
■‫در‬‫واقع‬‫پروژه‬‫فابریک‬‫ساختاری‬‫ارائه‬‫‌دهد‬‫ی‬‫م‬‫که‬‫‌ها‬‫ت‬‫شرک‬‫بتوانند‬‫‌های‬‫ه‬‫شبک‬‫‌چینی‬‫ک‬‫بال‬‫اختصاصی‬‫خود‬‫را‬‫ب‬‫ا‬‫سرعتی‬
‫باال‬(‫بیش‬‫از‬۱۰۰۰‫تراکنش‬‫در‬‫ثانیه‬)‫در‬‫آن‬‫قرار‬‫دهند‬.
■‫این‬‫ساختار‬‫در‬‫محیط‬Go‫‌سازی‬‫ه‬‫پیاد‬‫شده‬‫است‬‫و‬‫‌تواند‬‫ی‬‫م‬‫‌هایی‬‫ن‬‫‌چی‬‫ک‬‫بال‬‫‌با‬‫امکان‬‫‌سازی‬‫ل‬‫فعا‬‫انواع‬‫مختلف‬‫مجوز‬‫ها‬
‫را‬‫بسازد‬.‫فابریک‬ً‫ا‬‫شدید‬‫به‬‫یک‬‫سیستم‬‫قرارداد‬‫هوشمند‬‫به‬‫نام‬Chaincode‫متکی‬،‫است‬‫که‬‫در‬‫آن‬‫هر‬‫یک‬‫از‬
‫همتاهای‬‫‌ها‬‫ه‬‫شبک‬‫در‬‫مخزن‬‫داکر‬(Docker )‫اجرا‬‫‌شود‬‫ی‬‫م‬
32
‫فابریک‌چیست‌و‌چطورکار‌می‌کند؟‬
■‫فابریک‬‫به‬‫‌گذاران‬‫ه‬‫سرمای‬‫اجازه‬‫‌دهد‬‫ی‬‫م‬‫که‬‫‌هایی‬‫ش‬‫بخ‬‫از‬‫‌چین‬‫ک‬‫بال‬‫را‬‫بسازند‬.‫‌کنندگان‬‫ت‬‫شرک‬‫‌بایست‬‫ی‬‫م‬‫ب‬‫رای‬‫دریافت‬
‫مجوز‬‫اتصال‬‫و‬‫صدور‬‫‌ها‬‫ش‬‫تراکن‬‫برروی‬‫یک‬‫‌چین‬‫ک‬‫بال‬‫مبتنی‬‫بر‬،‫فابریک‬‫ثبت‬‫نام‬‫انجام‬‫دهند‬.
33
‫فابریک‌چیست‌و‌چطورکار‌می‌کند؟‬
■‫برای‬‫استفاده‬‫موثرتر‬‫از‬،‫منابع‬‫فابریک‬‫‌های‬‫ه‬‫گر‬‫کمتری‬‫در‬‫مقایسه‬‫با‬‫یک‬‫زنجیره‬‫عمومی‬‫‌دارد‬‫و‬‫‌ها‬‫ه‬‫داد‬‫را‬‫به‬‫ص‬‫ورت‬
‫موازی‬‫محاسبه‬‫‌کند‬‫ی‬‫م‬‫که‬‫این‬‫امر‬‫موجب‬‫برتری‬‫فابریک‬‫نسبت‬‫به‬‫‌های‬‫ن‬‫‌چی‬‫ک‬‫بال‬‫عمومی‬‫شده‬‫است‬.‫همچنین‬
‫معماری‬‫اصلی‬‫آن‬‫از‬‫اطالعات‬‫محرمانه‬‫پشتیبانی‬‫‌کند‬‫ی‬‫م‬‫و‬‫این‬‫مساله‬‫امنیت‬‫بیشتری‬‫را‬‫در‬‫مقایسه‬‫با‬‫بالک‬‫‌چین‬
‫عمومی‬‫‌برای‬‫اعضا‬‫فراهم‬‫‌کند‬‫ی‬‫م‬.
34
‫فابریک‌چیست‌و‌چطورکار‌می‌کند؟‬
■‫‌ها‬‫ه‬‫تأییدکنند‬‫دارای‬‫حالت‬(state)‫هستند‬‫و‬‫‌توانند‬‫ی‬‫م‬‫‌ها‬‫ش‬‫تراکن‬‫و‬chaincode‫ها‬‫را‬،‫بسازند‬‫تأیید‬‫کنند‬‫و‬‫انتشار‬
‫دهند‬.
■‫‌های‬‫ه‬‫گر‬،‫توافق‬‫‌های‬‫ش‬‫تراکن‬‫تایید‬‫شده‬‫قبلی‬‫را‬‫مرتب‬‫‌کنند‬‫ی‬‫م‬.
■‫فابریک‬‫یکی‬‫از‬‫اولین‬‫‌هایی‬‫ه‬‫پروژ‬‫است‬‫که‬‫این‬‫تفکیک‬‫را‬‫به‬‫عنوان‬‫یک‬ِ‫ل‬‫اص‬‫طراحی‬‫استفاده‬‫‌کند‬‫ی‬‫م‬.‫این‬‫مساله‬‫توانایی‬
‫زیادی‬‫به‬‫فابریک‬،‫‌دهد‬‫ی‬‫م‬‫به‬‫عنوان‬،‫مثال‬‫فابریک‬‫‌تواند‬‫ی‬‫م‬‫تقسیم‬‫کار‬‫بهتری‬‫را‬‫اجرا‬‫کند‬‫و‬‫به‬‫این‬‫ترتی‬‫ب‬‫هر‬‫همتایی‬
‫در‬‫شبکه‬‫مجبور‬‫به‬‫انجام‬‫هر‬‫کاری‬‫نیست‬.
35
‫فابریک‌چیست‌و‌چطورکار‌می‌کند؟‬
■‫ساختار‬‫قراردادهای‬‫هوشمند‬Chaincode‫فابریک‬،‫شبیه‬‫به‬‫اتریوم‬‫است؛‬Chaincode‫منطق‬‫‌کار‬‫و‬‌‫ب‬‫کس‬‫‌ها‬‫ی‬‫دارای‬
‫را‬‫تعیین‬،‫‌کند‬‫ی‬‫م‬‫قوانین‬‫خواندن‬‫و‬‫تغییر‬‫وضعیت‬‫که‬‫اصطالحا‬‫حالت‬‫دارایی‬‫نامیده‬‫‌شود‬‫ی‬‫م‬.‫فابریک‬،‫مجم‬‫‌ای‬‫ه‬‫وع‬‫از‬
‫‌های‬‫ی‬‫خروج‬‫خالی‬‫را‬‫نگهداری‬‫‌کند‬‫ی‬‫نم‬(‫درست‬‫مانند‬‫‌کوین‬‫ت‬‫بی‬)،‫بلکه‬‫درواقع‬‫حالت‬‫‌چین‬‫ک‬‫بال‬‫که‬‫چیزی‬‫فرات‬‫ر‬‫از‬
‫‌های‬‫ه‬‫داد‬‫انتقالی‬‫است‬‫را‬‫نگهداری‬‫‌کند‬‫ی‬‫م‬.
36
‫فابریک‌چیست‌و‌چطورکار‌می‌کند؟‬
■‫برخالف‬‫‌های‬‫ن‬‫‌چی‬‫ک‬‫بال‬ِ‫ی‬‫عموم‬،‫‌شده‬‫ی‬‫‌رمزنگار‬‫ی‬‫ارزها‬‫فابریک‬‫به‬‫‌کنندگان‬‫ت‬‫شرک‬‫اجازه‬‫‌دهد‬‫ی‬‫م‬‫که‬‫کانال‬‫مجزای‬‫ی‬
‫برای‬‫‌های‬‫ی‬‫دارای‬‫خود‬‫بسازند‬‫و‬‫به‬‫این‬‫ترتیب‬‫‌ها‬‫ش‬‫تراکن‬‫را‬‫از‬‫یک‬‫دفترکل‬‫جدا‬‫کنند‬.‫با‬‫استفاده‬‫از‬‫این‬‫روش‬،
chaincode‫ای‬‫که‬‫نیاز‬‫به‬‫خواندن‬‫و‬‫تغییر‬‫حالت‬‫یک‬‫دارایی‬،‫دارد‬‫تنها‬‫بر‬‫روی‬‫همتایان‬‫درگیر‬‫در‬‫این‬‫مورد‬
‫‌کار‬‫و‬‌‫ب‬‫کس‬‫به‬‫خصوص‬‫نصب‬‫‌شود‬‫ی‬‫م‬.
■‫درست‬‫مانند‬‫‌های‬‫ه‬‫برنام‬،‫چت‬‫‌های‬‫ن‬‫‌چی‬‫ک‬‫بال‬‫فابریک‬‫به‬‫کاربر‬‫اجازه‬‫‌دهند‬‫ی‬‫م‬‫که‬‫در‬‫هر‬‫دو‬‫تعامالت‬‫خصوصی‬‫و‬
،‫غیرخصوصی‬‫شرکت‬‫کنند‬.
37
‫فابریک‌چیست‌و‌چطورکار‌می‌کند؟‬
‫فابریک‌برای‬‫‌ام‬‫ی‬‫‌ب‬‫ی‬‫آ‬
38
■‫‌ام‬‫ی‬‫‌ب‬‫ی‬‫آ‬‫یک‬‫طرح‬‫جایگزین‬‫برای‬‫‌های‬‫ن‬‫‌چی‬‫ک‬‫بال‬‌‫ی‬‫عموم‬‫و‬‫بدون‬‫نیاز‬‫به‬‫مجوز‬‫را‬‫پیشنهاد‬‫‌کند‬‫ی‬‫م‬.‫فابریک‬‫یک‬‫ساختار‬
‫کلید‬‌‫ی‬‫عموم‬‫را‬‫برای‬‫صدور‬‫‌های‬‫ه‬‫‌نام‬‫ی‬‫گواه‬‫رمزنگاری‬‫شده‬‫برای‬‫‌ها‬‫ن‬‫سازما‬‫و‬‫کاربران‬‫به‬‫کار‬‫‌برد‬‫ی‬‫م‬.‫بنابراین‬‫امک‬‫ان‬
‫محدود‬‫کردن‬‫دسترسی‬‫به‬‫‌ها‬‫ه‬‫داد‬‫و‬‫‌ها‬‫ل‬‫کانا‬‫برای‬‫بعضی‬‫از‬‫‌ها‬‫ل‬‫عام‬(actor)‫وجود‬‫دارد‬.
39
‫فابریک‌برای‬‫‌ام‬‫ی‬‫‌ب‬‫ی‬‫آ‬
■‫‌ام‬‫ی‬‫‌ب‬‫ی‬‫آ‬ً‫ا‬‫شدید‬‫در‬‫حال‬‫ارتقاء‬‫ساختار‬‫‌چین‬‫ک‬‫بال‬‫خود‬(‫فابریک‬)‫در‬‫بسیاری‬‫از‬‫موارد‬‫پرکاربرد‬‫است‬.‫به‬‫عنوان‬‫م‬،‫ثال‬‫در‬
‫پایان‬‫ماه‬،‫مارس‬Natixis‫و‬Trafigure‫با‬‫‌ام‬‫ی‬‫‌ب‬‫ی‬‫آ‬‫همکاری‬‫کردند‬‫تا‬‫‌چینی‬‫ک‬‫بال‬‫مبتنی‬‫بر‬‫فابریک‬‫را‬‫برای‬‫ت‬‫جارت‬
‫مالی‬‫کاال‬‫در‬‫معامالت‬‫نفت‬‫خام‬‫ایاالت‬،‫متحده‬‫به‬‫کارگیرند‬.‫تمام‬‫مراحل‬‫اصلی‬‫در‬‫‌ی‬‫ه‬‫معامل‬‫نفت‬‫خام‬‫بر‬‫روی‬
،‫‌چین‬‫ک‬‫بال‬‫دیجیتالی‬‫شده‬‫است‬‫و‬‫این‬‫امر‬،‫شفافیت‬‫کارایی‬‫و‬‫امنیت‬‫را‬‫به‬‫طور‬‫‌ای‬‫ه‬‫گسترد‬‫بهبود‬‫‌بخش‬‫ی‬‫م‬‫د‬.
42
‫فابریک‌برای‬‫‌ام‬‫ی‬‫‌ب‬‫ی‬‫آ‬
‌‫معماری‬fabric
43
‫معماری‬fabric
■‌‫برنامه‬‌‫را‌بر‌روی‌سرور‌و‌قرارداد‌هوشمندانه‌با‌یک‬‌‫همتا‬‫با‌استفاده‌از‬DEPLOY‌‫گسترش‬‫می‌دهد‬
■‫یک‌کاربر‌ثبت‌شده‌با‌دستور‌ارسال‌برنامه‬INVOKE‌‫فراخوانی‌یا‬‫بازیابی‌اطالعات‬QUERY‌‫از‌طریق‌قرارداد‬
‫هوشمند‌تعامل‌دارد‬
■‌‫قرارداد‌هوشمند‌می‌تواند‌یک‌رویداد‬‌‌‫به‌اشتراک‌گذاشته‬‫شده‌توسط‌برنامه‌را‌منتشر‌کند‬
45
SDK‌‫جاوا‬‫اسکریپت‬
■SDK Hyperledger Composer JavaScript SDK‫مجموعه‬‫ای‬‫از‬API‫های‬Node.js‫است‬‫که‬‫توسعه‬
‫دهندگان‬‫را‬‫قادر‬‫می‬‫سازد‬‫برای‬‫ایجاد‬‫برنامه‬‫های‬‫کاربردی‬‫برای‬‫مدیریت‬‫و‬‫تعامل‬‫با‬‫شبکه‬‫های‬‫تجاری‬‫مستقر‬‫شوند‬.
■API‫ها‬‫بین‬‫دو‬‫ماژول‬npm‫تقسیم‬‫می‬‫شوند‬:
■composer-client‫برای‬‫ارسال‬‫معامالت‬‫به‬‫یک‬‫شبکه‬‫کسب‬‫و‬‫کار‬‫و‬‫یا‬‫انجام‬،‫ایجاد‬،‫خواندن‬‫به‬‫روز‬،‫رسانی‬‫ح‬‫ذف‬
‫عملیات‬‫در‬‫دارایی‬‫ها‬‫و‬‫شرکت‬‫کنندگان‬
■composer-admin‫برای‬‫مدیریت‬‫شبکه‬‫های‬‫کاری‬‫استفاده‬‫می‬‫شود‬(،‫نصب‬‫راه‬،‫اندازی‬‫ارتقاء‬)
46
47
‌‫جریان‌معامله‌در‬Hyperlegger Fabric،‌‫که‌در‌آن‌معامالت‌قبل‌از‬‌‌‫مرتب‌سازی‬‌،‫ابتدا‌اجرا‌و‌تایید‌می‌شوند‬‌‫و‌بعد‌تایید‬‫اینک‬‌‫ه‌آنها‬
‌‫در‬‫تضاد‌نباشند‬
‫معماری‬‫سنتی‬‫برای‬‫ساخت‬‫بلوک‬‫چین‬‫ها‬‫و‬‫خدمات‬‫تکراری‬‫انعطاف‬،‫پذیر‬‫که‬‫در‬‫آن‬‫معامالت‬‫ابتدا‬‫مرتب‬‫شده‬‫و‬‫بعدا‬‫اجرا‬‫می‬‫شون‬‫د‬.
Fabric Hyperledger‫از‬‫یک‬‫ساختار‬‫ارزیابی‬‫جدید‬‫برای‬‫اجرا‬‫استفاده‬‫می‬،‫کند‬‫که‬‫اجازه‬‫می‬‫دهد‬‫تراکنش‬‫ها‬‫قبل‬‫از‬‫اینکه‬‫ب‬‫الک‬
‫های‬‫کل‬‫در‬‫محل‬‫خود‬‫در‬‫زنجیره‬‫به‬‫توافق‬،‫برسند‬‫اجرا‬‫می‬‫شود‬.
‌‫چرخه‌زندگی‌تراکنش‬Hyperledger Fabric
48
‫مزایا‬‫به‬‫طور‬‫خالصه‬
■Hyperledger Fabric‫توانایی‬‫ارائه‬‫قابلیت‬‫های‬‫شبکه‬‫ای‬‫منحصر‬‫به‬‫فرد‬‫مانند‬‫حفظ‬‫حریم‬‫خصوصی‬‫و‬‫مح‬‫رمانه‬
،‫بودن‬‫پردازش‬،‫کارآمد‬‫مقیاس‬،‫پذیری‬‫زبان‬‫برنامه‬‫نویسی‬‫استاندارد‬‫و‬‫ساختار‬‫مدوالر‬‫است‬.‫چنین‬‫قابلیت‬‫ه‬‫ایی‬
Fabric‫را‬‫یک‬‫پلت‬‫فرم‬‫بالک‬‫چین‬‫مناسب‬‫برای‬‫کسب‬‫و‬‫کارها‬‫می‬‫سازد‬.
■‫حتی‬‫می‬‫توان‬‫یک‬‫مجوز‬‫اضافی‬‫از‬‫طریق‬‫سرویس‬‫مدیریت‬‫هویت‬‫پلت‬‫فرم‬‫را‬‫نیز‬‫اعمال‬‫کرد‬.‫به‬‫عنوان‬،‫مثال‬‫ی‬‫ک‬
‫شناسه‬‫کاربر‬‫خاص‬‫می‬‫تواند‬‫مجاز‬‫به‬‫استفاده‬‫از‬‫نرم‬‫افزار‬‫قرارداد‬‫هوشمند‬‫باشد‬‫اما‬‫از‬‫راه‬‫اندازی‬‫یک‬‫قرارداد‬‫جدی‬‫د‬
‫برای‬‫آن‬‫مسدود‬‫شود‬.
■‫هویت‬‫و‬‫قابلیت‬‫اطمینان‬،‫معامالت‬‫خصوصی‬،‫قرارداد‬،‫محرمانه‬‫اجماع‬،‫کارایی‬‫باال‬،‫مقیاس‬،‫پذیری‬‫کد‬‫های‬‫زن‬‫جیره‬
‫ای‬/‫قراردادهای‬‫هوشمند‬
49
‌‫مزایای‌کلیدی‬Hyperledger Fabric
50
‫های‬ ‫برنامه‬ ‫چگونه‬Fabric‫کنند‬ ‫می‬ ‫کار‬
51
■‫این‬‫برنامه‬‫ها‬(‫و‬‫قرارداد‬‫هوشمند‬‫که‬‫از‬‫آن‬‫استفاده‬‫می‬‫کنند‬)-‫که‬‫به‬‫طور‬‫جمعی‬‫به‬‫نام‬fabcar‫شناخته‬‫می‬‫شود‬-
‫یک‬‫نمایش‬‫از‬‫قابلیت‬Fabric‫را‬‫ارائه‬‫می‬‫دهند‬.‫به‬‫طور‬،‫مشخص‬‫ما‬‫فرایند‬‫تعامل‬‫با‬‫یک‬‫گواهینامه‬‫و‬‫ایجاد‬
‫گواهینامه‬‫ثبت‬‫نام‬‫را‬‫نشان‬‫خواهیم‬،‫داد‬‫پس‬‫از‬‫آن‬‫ما‬‫این‬‫هویت‬‫ها‬‫را‬‫برای‬‫پرس‬‫و‬‫جو‬‫و‬‫به‬‫روز‬‫رسانی‬‫یک‬‫دفترچ‬‫ه‬
‫استفاده‬‫خواهیم‬‫کرد‬.
52
‫چگونه‬‫برنامه‬‫های‬Fabric‫کار‬‫می‬‫کنند‬
‫اصلی‬ ‫گام‬ ‫سه‬hyperledger fabric
53
.1Setting up a development environment:‫برنامه‬‫ما‬‫به‬‫یک‬‫شبکه‬‫برای‬‫ارتباط‬‫نیاز‬‫دارد‬،‫بنابراین‬‫م‬‫ا‬
‫یک‬‫فایل‬‫را‬‫به‬‫قطعاتی‬registration/enrollment،queries‫و‬updates‫نیاز‬‫داریم‬‫تقسیم‬‫کرده‬‫و‬‫دانلود‬
‫می‬‫کنیم‬:
54
‌‫سه‌گام‌اصلی‬hyperledger fabric:
Learning the parameters of the sample smart contract our app will use.2:
■‫قرارداد‬‫هوشمند‬‫ما‬‫شامل‬‫عملکردهای‬‫مختلفی‬‫است‬‫که‬‫به‬‫ما‬‫اجازه‬‫می‬‫دهد‬‫با‬‫روش‬‫های‬‫مختلف‬‫با‬‫سرفصل‬‫های‬
‫مختلف‬‫ارتباط‬‫برقرار‬‫کنیم‬.‫پارامتر‬‫های‬smart contract‫نمونه‬‫ای‬‫که‬‫برنامه‬‫ها‬‫استفاده‬‫میکند‬‫را‬‫یاد‬‫میگیرد‬.
55
‌‫سه‌گام‌اصلی‬hyperledger fabric:
Developing the applications to be able to query and update assets on the ledger.3
‫ما‬‫به‬‫کد‬‫برنامه‬‫دسترسی‬‫داریم‬(‫برنامه‬‫ها‬‫در‬‫جاوا‬‫اسکریپت‬‫نوشته‬‫شده‬‫است‬)‫و‬‫می‬‫توانیم‬‫متغیرها‬‫را‬‫به‬‫صورت‬‫دستی‬
‫برای‬‫اجرای‬‫انواع‬query‫ها‬‫و‬‫به‬‫روز‬‫رسانی‬‫ها‬‫دستکاری‬‫کنیم‬.
56
‌‫سه‌گام‌اصلی‬hyperledger fabric:
57
Ethereum vs Hyperledger.Fabric
HyperledgerEthereum
Private Network: Read/Write are permissionedPublic Network: Read/Write access to all peers
No Built-In CryptocurrencyBuilt-In Cryptocurrency: ether
Can create custom tokens via chaincodeCan create custom tokens via Coin API
No mining: Pluggable Consensus Algorithm -
(PBFT)
Consensus is reached by mining: Proof of Work
(soon to be Proof of Stake)
Chaincode usually written in GolangSmart contract usually written in Solidity
58
■‫در‬‫اتریوم‬‫ممکن‬‫است‬‫یک‬‫معامله‬‫برای‬‫کسی‬‫قابل‬‫مشاهده‬،‫باشد‬‫اما‬‫برای‬‫دیگران‬‫قابل‬‫مشاهده‬‫نباشد‬.
■‫یکی‬‫دیگر‬‫از‬‫تفاوت‬‫های‬‫عمده‬‫الگوریتم‬‫توافق‬‫در‬Ethereum v / s Fabric‫است‬.
–Ethereum:PoW (Proof of work)
–: fabricPBFT(Practical Byzantine Fault Tolerance).
■Ethereum:‫هر‬‫کسی‬‫مجاز‬‫است‬‫در‬‫شبکه‬‫شرکت‬‫کند‬.،‫زیرا‬‫یک‬‫بلوک‬‫عمومی‬‫است‬.
■Hyperledger Fabric:‫شرکت‬‫کنندگان‬‫از‬‫قبل‬‫انتخاب‬‫شده‬‫اند‬‫و‬‫تنها‬‫شرکت‬‫کنندگان‬‫انتخاب‬‫شده‬‫به‬‫ش‬‫بکه‬
‫دسترسی‬‫دارند‬.‫زیرا‬‫یک‬‫بلوک‬‫خصوصی‬‫است‬.
59
Ethereum vs Hyperledger.Fabric
■‫دستیابی‬‫به‬‫اجماع‬‫در‬Ethereum:‫همه‬‫ی‬‫همکارانی‬‫که‬‫در‬‫شبکه‬‫شرکت‬‫می‬،‫کنند‬‫باید‬‫به‬‫توافق‬‫برسند‬‫تا‬‫مع‬‫امله‬
‫را‬‫بتوان‬‫به‬‫بلوک‬‫چین‬‫اضافه‬‫کرد‬.proof of work
■‫دستیابی‬‫به‬‫توافق‬‫در‬‫مورد‬fabricHyperledger:‫کنترل‬‫دسترسی‬‫بیشتر‬‫برای‬‫بهبود‬‫حریم‬‫خصوصی‬‫وجود‬‫دار‬‫د‬.
■‫در‬،‫اینجا‬‫اجماع‬‫تمام‬‫جریان‬‫معامله‬‫را‬‫از‬‫ابتدا‬(from proposing a transaction to the network)‫تا‬‫انتها‬
(committing the transaction to the ledger)‫را‬‫شامل‬‫می‬‫شود‬.‫در‬‫این‬،‫مورد‬‫هر‬‫گره‬‫نقش‬‫متفاوتی‬‫را‬
‫بازی‬‫می‬‫کند‬‫بر‬‫خالف‬‫رسیدن‬‫به‬‫توافق‬‫در‬Ethereum‫که‬‫هر‬‫گره‬‫نقش‬‫یکسان‬‫دارد‬.
60
Ethereum vs Hyperledger.Fabric
■‫در‬،‫نتیجه‬‫ما‬‫احساس‬‫می‬‫کنیم‬‫که‬‫در‬‫آینده‬‫بیشتر‬‫برنامه‬‫های‬‫سازمانی‬‫به‬‫سمت‬Fabric‫کشیده‬‫می‬،‫شوند‬‫در‬‫حالی‬
‫که‬Ethereum‫بیشتر‬‫در‬B2C‫استفاده‬‫می‬‫شود‬،‫ادامه‬‫می‬‫یابد‬.
61
Ethereum vs Hyperledger.Fabric
62
Install hyperledger
Install hyperledger
■‌‫پیشنیاز‌نصب‬hyperledger:
■ Download the latest version of the cURL tool
■ Go language
■ Node.js Runtime and NPM
■ Git client
■ Go - 1.9 or later (for v1.0.X releases, use Go 1.7.X)
■ Docker - 17.06.2-ce or later
■ Docker Compose - 1.14.0 or later
63
64

More Related Content

Featured

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Saba Software
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
Simplilearn
 

Featured (20)

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
 

introduction to hyperledger-tarbiatmodares university