بلاک چین (Blockchain) چیست؟ ساده ترین تعریف بلاک چین

پنج شنبه ۱۹ مهر ۹۷ توسط فاطمه بهاروند

 

این مقاله مختص کسانی است که کنجکاو هستند در مورد بلاک چین اطلاعاتی داشته باشند اما هیچ نظر و ایده ای در مورد آن ندارند. هدف این است که شما بلاک چین را درک کنید. در هنگام نوشتن این مقاله مطالب را اندکی مختصر و ساده ساخته ام، اگر در انتها شما بتوانید تکنولوژی بلاک چین را درک کنید من به هدف و خواست خود خواهم رسید.

نکته: برای درک بهتر تکنولوژی بلاک چین تصاویر قید شده در این مقاله را به خوبی مشاهده کنید. تصاویر بسیار مهم هستند.

........................

بلاک چین چیست؟

(Blockchain = Block + Chain = listOf(block

بلاک چین = بلوک + زنجیر = زنجیره ای از بلوک ها(لیستی از بلوک ها)

بیایید با مثال انتقال پول از حساب من به حساب شما شروع کنیم. به خاطر داشته باشید که بلاک چین موارد استفاده ی زیادی دارد که سیستم انتقال پول یکی از آن هاست.

فرض کنید قرار است مقداری پول از حساب من به حساب شما انتقال داده شود.

زمانی که من از یک حساب به حساب شما پول انتقال می دهم، مکانی باید باشدتا اطلاعات این انتقال در آن ثبت شود.

این مکان بلاک نامیده می شود.

در بلاک، ما اطلاعاتی نظیر اطلاعات زیر را قید می کنیم:

  • چه کسی پول را انتقال داده است و به حساب چه کسی منتقل شده است؟
  • چه مقدار پول انتقال داده شده است؟
  • اطلاعات دیگری نظیر امضا نیز در آن ثبت می شود.
public class Block {
  public String data;
  public String hash;
  ...
}

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

بلاک علاوه بر اطلاعات(I) نگهدارنده ی یک هش(H) واحد برای شناسایی خود است. هش(H) جنبه ی بسیار مهمی به حساب می آید.

به تناسب تعداد زیاد انتقالات تعداد زیاد ی بلاک نیز وجود خواهد داشت.

این بلاک ها از طریق یک زنجیر با یکدیگر در ارتباط بوده و بدین صورت یک بلاک چین را تشکیل می دهد.

چرا بلاک ها به یکدیگر متصل هستند؟

بلاک ها به منظور تامین امنیت اطلاعات با یکدیگر در ارتباط هستند.

بلاک ها به یکدیگر متصل اند به این علت که هش بلاک جاری به هش بلاک قبلی وابسته است.

اجازه هستید این مسئله را در ادامه با یک مثال بهتر درک کنیم.

فرض کنید که ما سه بلاک با اطلاعات زیر داریم:

بلاک 1 نگهدارنده ی اطلاعات I1 با مقدار هش H1 است.

بلاک 2 نگهدارنده ی اطلاعات I2 با مقدار هش H2 است.

بلاک 3 نگهدارنده ی اطلاعات I3 با مقدار هش H3 است.

H2 از ترکیب H1 و I2 ایجاد شده است. به طور مشابه H3 ترکیبی از H2 و I3 است و... .

(H2 = someCryptoFunction(H1, I2

(H3 = someCryptoFunction(H2, I3

اما H1 از کجا می آید. برای شروع ما باید یک مقدار پیش فرض H0 داشته باشیم.

(H1 = someCryptoFunction(H0, I1 زمانی که H0 یک مقدار پیش فرض است.

اکنون بلاک چین بالا پایدار است.

حالا بیایید اینگونه فرض کنیم که یک نفر اطلاعات بلاک2 را از I2 به 'I2 و هش آن را از h2 به 'h2 تغییر داده است و مابقی بلاک ها را بدون تغییر رها نموده است.

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

بلاک چین به علت دلایل زیر ناپایدار است:

  • (H3 = someCryptoFunction(H2', I3 دیگر صحیح نیست.
  • حال ما برای ساخت (H3' = someCryptoFunction(H2', I3 به 'H3 نیاز داریم.
  • به طور مشابه برای 'H4 و 'H5 و 'H6 و به همین صورت تا انتها... .

پس از اعمال این تغییرات بلاک چین بار دیگر مانند تصویر زیر پایدار خواهد شد.

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

List<Block> blockList = new ArrayList();

ما بلاک ها را در لیستی همانند بالا قرار می دهیم تا با استفاده از (blocklist.get(position — 1 و همچنین با استفاده از position بلاک فعلی بلاک قبلی را به راحتی بیابیم. راه های زیادی برای ذخیره ی بلاک ها وجود دارد.

امنیت دلیل اصلی اتصال این بلاک ها به یکدیگر است.

حال با دقت بیشتری به این سوال می پردازیم که بلاک چین چیست؟

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

تعریف بالا تعریفی ناملموس و دشوار از بلاک چین است.

اما نترسید ما تمام نکات آن را با جزئیات برایتان شرح می دهیم.

دفتر حسابرسی

دفتر حسابرسی محل اصلی ذخیره سازی است که لیستی از بلاک ها را در خود ذخیره می کند.

اطلاعات ذخیره شده

بلاک ها اطلاعات را ذخیره می کنند. داده ها می توانند هر چیزی و از هر نوعی باشند. در اینجا ما اطلاعات تراکنش را به عنوان اطلاعات در نظر می گیریم.

دفتر حسابرسی توزیع شده و غیر متمرکز

به طور معمول دستگاه مرکزی وجود دارد که مسئول انجام همه موارد مرتبط با داده ها است. اما در بلاک چین ماشین های زیادی وجود دارند(بنابراین متمرکز نیستند) و تمام این ماشین ها به هم متصل شده اند تا با یکدیگر همسو شوند. تمامی ماشین ها دارای همان دفتر هستند در نتیجه بلاک چین یک دفتر توزیع شده و غیرمتمرکز است.

به عبارت دیگر بلاک چین دفتری توزیع شده است که در میان تمام کسانی که از یک شبکه ی بلاک چین یکسان استفاده می کنند به اشتراک گذاشته می شود. هر کدام یک کپی از کل دفتر ار دریافت نموده و هر زمانی در هر جایی که موردی به اطلاعات اضافه شود دفتر به روزرسانی می شود.

به اشتراک گذاری در سرتاسر گره های شبکه آن 

تمام ماشین ها در یک شبکه حضور دارند و از طریق آن به یکدیگر متصل اند. هر گره(ماشین) یک کپی از دفتر را دریافت می کند. این بدان معنی است که دفتر در همه گره های شبکه مشترک است.

بلاک چین چگونه کار می کند؟

گام هایی برای تشریح چگونگی عملکرد بلاک چین:

  • آمیت(Amit) می خواهد تراکنشی داشته باشد.
  • آمیت تراکنش را انجام می دهد.
  • آمیت تراکنش را برای شبکه ارسال می کند.
  • ماشین موجود در شبکه تراکنش را بررسی نموده و آن را تایید می کند.
  • برای تراکنش آمیت بلاک جدیدی در بلاک چین ایجاد می شود.
  • بلاک چین بروز شده در شبکه برای همه پخش می شود.
  • انتقال انجام شده است.

حال ما می دانیم بلاک چین چیست و چگونه کار می کند.

اکنون این سوال مطرح می شود که اگر بلاک چین توزیع می شود پس امنیت آن به چه صورتی تامین می شود؟

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

هر یک از ما کلید خصوصی خود و کلید عمومی دیگران را در اختیار داریم.

کلید خصوصی: این کلید تنها توسط مالک آن قابل دسترسی است.

کلید عمومی: هر یک از ما به کلیدهای عمومی دیگران در شبکه دسترسی داریم.

فرض کنید من میخواهم تراکنش جدیدی ایجاد کنم. من توسط کلید خصوصی خودم اطلاعات را برای ایجاد یک امضای دیجیتالی رمز نگاری می کنم.

و پس از آن من تراکنش(اطلاعات، کلید عمومی، امضای دیجیتالی که پیش از این ساخته شده است) را برای تایید و بررسی ارسال می کنم.

 در این فرآیند شبکه امضای دیجیتال را به وسیله ی کلید عمومی مهیا شده رمز گشایی نموده و اطلاعات را از آن خارج می نماید.

اگر اطلاعات اصلی با اطلاعاتی که از امضای دیجیتالی گرفته شده است مطابقت داشته باشد(همانطور که در عکس بالا قابل ملاحظه است) این مورد قبول و در  غیر اینصورت رد می شوند.

اگر اطلاعات مطابقت نداشته باشد ممکن است یکی از دو عامل زیر علت این امر باشند:

  • اطلاعات اصلی در جایی در این بین دستکاری شده است.
  • امضای دیجیتالی که با استفاده از کلید خصوصی ساخته شده است با کلید عمومی قابل تطبیق نیست.

این موارد چگونگی قابلیت دستکاری شبکه را توصیف می کنند. از این رو بلاک چین امن است.

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


کلیدواژه: بلاک چین Blockchain امنیت Security

منابع: medium.com

ارسال دیدگاه:
برای ارسال دیگاه باید به سیستم وارد شوید و یا ثبت نام کنید. ثبت نام چند لحظه بیشتر زمان شما را نمیگیرد.
مولف:
فاطمه بهاروند
عضو تیم تولید محتوای آرکادمی
مشاهده‌ی پروفایل
آمار و مشخصات:
event
شنبه ۱۴ مهر ۹۷
public
arcademy.ir/+a335
favorite
۲ پسند
comment
۰ دیدگاه
group
۱۳۴ بازدیدکننده
visibility
۱۷۸ بازدید
رده های این مقاله: