Skip to content

Commit

Permalink
Merge pull request #329 from GoFarsi/12.1.1
Browse files Browse the repository at this point in the history
add: section 12.1.1 abount blockchain
  • Loading branch information
Ja7ad authored Jan 6, 2024
2 parents 0c12b64 + 7f92b98 commit 1162cdb
Show file tree
Hide file tree
Showing 4 changed files with 62 additions and 1 deletion.
63 changes: 62 additions & 1 deletion content/chapter 12/blockchain/12.1.1-blockchain.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,65 @@ title: 12.1.1 بلاکچین چیست
slug: blockchain
weight: 25001
---
بلاکچین چیست...
{{<img url="#" image="../../assets/img/content/chapter12/blockchain/12.1-0.png" alt="Blockchain">}}

بلاکچین (زنجیره بلوک) در واقع یک سیستم توزیع شده {{< tooltip text="همتا به همتا" note="P2P" >}} (Peer to Peer) [^1] می باشد که هیچ سرور مرکزی وجود ندارد و این شبکه با افزایش تعداد بلوک ها, تراکنش ها و کلاینت ها رشد می کند و در این شبکه تمامی اطلاعات بصورت رمزنگاری شده رد و بدل می شود و از انواع رمزنگاری متقارن و نامتقارن برای افزایش امنیت شبکه استفاده می شود.

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

{{<img url="#" image="../../assets/img/content/chapter12/blockchain/12.1-1.png" alt="P2P Network">}}

بلاکچین عموما توسط کامپیوترهای داخل شبکه {{< tooltip text="همتا به همتا" note="P2P" >}} مدیریت می شود و جایی که هر {{< tooltip text="گره" note="Node" >}} (یا همان کلاینت) با استفاده از پروتکل الگوریتم {{< tooltip text="اجماع" note="Consensus" >}}[^2] ایجاد و اعتبارسنجی ایجاد تراکنش و بلوک را انجام می دهد.

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

در کل این عمل به مشارکت کنندگان ({{< tooltip text="گره" note="Node" >}} ها) اجازه می دهد تا معاملات را بطور مستقل و نسبتا ارزان بررسی و حسابرسی کنند.

در شبکه بلاکچین هر {{< tooltip text="گره" note="Node" >}} دارای یک دیتابیس مستقل می باشد که بواسط شبکه {{< tooltip text="همتا به همتا" note="P2P" >}} تمامی اطلاعات (بلوک - تراکنش - اکانت ها و...) بین {{< tooltip text="گره" note="Node" >}} با یک {{< tooltip text="مهر زمانی" note="Timestamp" >}} توزیع می شود و این اطلاعات داخل دیتابیس محلی هر {{< tooltip text="گره" note="Node" >}} نگه داری می شود. هر {{< tooltip text="گره" note="Node" >}} موظف است به محض دریافت اطلاعات جدید این اطلاعات را احراز هویت کند و در صورت معتبر بودن اطلاعات به دیتابیس خود اضافه و نگهداری کند.

در شبکه بلاکچین یک {{< tooltip text="دارایی دیجیتالی" note="Digital Asset" >}} (به عنوان مثال کوین - توکن) وجود دارد که به هیچ عنوان کپی نمی شود و بلکه این دارایی بین حساب های داخل شبکه منتقل می شود, این تایید می کند که هر واحد ارزش فقط یک بار منتقل شده است و مشکل دیرینه خرج مضاعف را حل می کند.

یک بلاکچین به عنوان یک پروتکل تبادل ارزش توصیف می شود چون بلاکچین می تواند حقوق مالکیت را حفظ کند و این ارزش یک بار توصیف می شود.

بلاکچین را می توان به چندین لایه تقسیم می شود:
- زیر ساخت سخت افزار
- شبکه (کشف گره, انتشار اطلاعات و تایید اطلاعات)
- پروتکل الگوریتم {{< tooltip text="اجماع" note="Consensus" >}}
- داده ها (بلاک ها و تراکنش ها)
- نرم افزار (قرارداد های هوشمند - برنامه های غیرمتمرکز)

## 12.1.1.2 غیرمتمرکز
با ذخیره داده ها در سراسر شبکه {{< tooltip text="همتا به همتا" note="P2P" >}} بلاکچین برخی از خطرات ناشی از نگه داری داده را بصورت متمرکز حذف می کند.

در شبکه های توزیع شده متمرکز احتمالات حملات و آسیب پذیری بسیار بالاس و ممکن است با یک حمله کل شبکه از بین برود اما در شبکه غیرمتمرکز بلاکچین به لطف پروتکل الگوریتم {{< tooltip text="اجماع" note="Consensus" >}} جلو حملات و کلاینت های مخرب گرفته می شود و پایداری شبکه چند برابر می شود چون زمانیکه که شبکه بلاکچین بزرگتر می شود و رشد می کند امنیت هم رشد پذیر است و شبکه پایدارتر می شود.

در شبکه بلاکچین ممکن است {{< tooltip text="گره" note="Node" >}} هایی با دستکاری کردن کلاینت خود قصد آسیب زدن به شبکه را داشته باشند به همین دلیل شبکه با استفاده از استراتژی های مطرح شده در پروتکل الگوریتم {{< tooltip text="اجماع" note="Consensus" >}} می تواند جلو این اتفاق را بگیرد یکی از این استراتژی های [Byzantine fault tolerance](https://en.wikipedia.org/wiki/Byzantine_fault_tolerance) می باشد.


## 12.1.1.3 بلاکچین Permissionless

بلاکچین مزایایی دارد باز بودن, permissionless یا عمومی بود شبکه می باشد که این مزیت باعث می شود شبکه خود را در برابر {{< tooltip text="گره" note="Node" >}} متخلف از خود محافظت کند و نیازی به کنترل دسترسی نیست.
منظور از این مطلب این است که هر برنامه ای می تواند بدون تایید و اعتماد از لایه انتقال شبکه بلاکچین استفاده کند و عمل ناشیانه ای انجام دهد تاثیری برروی آسیب دیدن شبکه نمی گذارد و شبکه مسیر خود را پیش روی میکند.

بیت کوین و سایر ارزهای دیجیتال در حال حاضر با الزام انجام اثبات Proof of Work [^3] شبکه را ایمن می کند و هر کسی که در این شبکه فعالیت می کند با انجام پازل [Hashcash](https://en.wikipedia.org/wiki/Hashcash) می تواند در شبکه بلاک بسازد و به پایداری شبکه کمک کند و در ازا یک جایزه ای دریافت کند.


## 12.1.1.4 زمینه های استفاده از بلاکچین

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

- ارزهای دیجیتالی
- [قراردادهای هوشمند](https://book.gofarsi.ir/chapter-12/blockchain/blockchain-smart-contracts/)
- سرویس های مالی (بانکداری دیجیتال)
- بازی های آنلاین
- زنجیره تامین
- ثبت اطلاعات، اسناد و مستندات با اثبات و تظمین از دست نرفتن بالا تر از ذخیره در منابع متمرکز و شفافیت
- و ...


#### ارجاعات

- [^1]: [شبکه {{< tooltip text="همتا به همتا" note="P2P" >}} (Peer to Peer)](https://book.gofarsi.ir/chapter-12/blockchain/blockchain-p2p-network/)
- [^2]: [پروتکل الگوریتم {{< tooltip text="اجماع" note="Consensus" >}}](https://book.gofarsi.ir/chapter-12/blockchain/blockchain-consensus-algorithm/)
- [^3]: [الگوریتم اثبات کار](https://fa.wikipedia.org/wiki/%D8%A7%D9%84%DA%AF%D9%88%D8%B1%DB%8C%D8%AA%D9%85_%D8%A7%D8%AB%D8%A8%D8%A7%D8%AA_%DA%A9%D8%A7%D8%B1)
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file.

0 comments on commit 1162cdb

Please sign in to comment.