آموزش فناوري
 

بلاك چين (Blockchain) فناوري‌اي است كه نحوه‌ي كاركردن پايگاه‌هاي داده‌ي توزيع‌ شده را از نو تعريف مي‌كند. در اين فناوري همه اطلاعات ذخيره شده روي سيستم بين همه اعضاي شبكه به اشتراك گذاشته مي‌شود. در اين مقاله شما را با فناوري بلاك چين، نحوه كار تكنولوژي بلاك چين، كدهاي بلاك و توابع هش و پروتكل اجماع و همچنين انواع بلاك چين و ويژگي‌هاي آن‌ها آشنا خواهيم كرد.

بلاك چين چه زماني متولد شد؟

بهتر است از ابتدا شروع كنيم. از وقتي كه اينترنت به وجود آمد، تلاش‌هاي زيادي وجود داشت تا روش پرداخت آنلاين امني ايجاد شود. اين تلاش‌ها منجر به تولد ايده‌ي ارز مجازي شد. كليد موفقيت اين كار توسط «اس. هابر» و «ابليو. اس. استورنتا» در سال ۱۹۹۱ به دنيا معرفي شد. اين «كليد» بلاك چين است، ايده‌اي هوشمندانه و كاملا ساده كه براي آدم‌هايي غيرقابل‌اعتماد (و حتي ناشناس!) اين امكان را فراهم مي‌كند تا بر اشتراك‌گذاري و ذخيره‌سازي اطلاعات (مثل تراكنش‌هاي مالي) به توافق برسند. هدف اصلي تكنولوژي بلاك چين، فراهم‌كردن امضاي ديجيتالي بود كه امكانِ‌ ثبت منظم اسناد ديجيتالي را فراهم مي‌كند. اين اتفاق تا سال ۲۰۰۸ نيفتاد و آن موقع فردي با اسم مستعار «ساتوشي ناكاموتو» ارزي به نام بيت كوين را با استفاده از اين تكنولوژي معرفي كرد. بيت كوين شبكه‌اي است كه در آن افراد ناشناس ارزي مجازي به اسم بيت كوين را معامله مي‌كنند كه در واقع وجود خارجي ندارد. از سال ۲۰۰۸ تا امروز هزينه‌ي يك بيت كوين از چند سنت به بيش از ۸۰۰۰ دلار رسيده است.

 

فناوري بلاك چين چيست؟

ابتدا بايد مشخص كرد كه معماري بلاك چين اصلي چگونه است؟ بلاك چين‌ها تا امروز به شكل ساختارهاي ديگري درآمده‌اند و داراي انواع متفاوت و ويژگي‌هاي مختص به خودشان هستند.

بلاك چين پايگاهي توزيع‌ شده و همتا به همتاست كه در آن همه‌ي اعضا (كه «نود» «Node» ناميده مي‌شوند) از نظر سلسله‌مراتبي در يك سطح هستند و به دليل وجود پروتكلي اجماعي، نيازي نيست به يكديگر اعتماد كنند. همچنين، هر عضو داراي يك كپي از دفتر كل بلاك چين است.

توزيع‌شده: يعني اطلاعات در سرور مركزي و محرمانه ذخيره نمي‌شود، بلكه در تمام سرورها يا كامپيوترهاي هر كدام از اعضا قرار مي‌گيرد كه داراي «نود» هستند. اين واقعيت همراه با استفاده از توابع «هش» (Hash)، اين تكنولوژي را فوق‌العاده امن مي‌كند.

همتا به همتا: يعني اطلاعات ميان اعضا به شكل گروهي مشترك است. هر عضوي كه داراي «نود» است به بقيه‌ي «نود»ها (كه آنها را «دوست‌هاي نودي» مي‌ناميم) وصل است و تمام اطلاعات درباره‌ي تراكنش‌هاي خودش يا افراد غريبه بين آنها به شكل گروهي مشترك است. سپس، آنها اين تراكنش‌ها را با ارتباط‌هايشان تكرار مي‌كنند.

پروتكل اجماع: اين مفهوم، انقلابي‌ترين ايده‌ي تكنولوژي بلاك چين به حساب مي‌آيد. به‌طور خلاصه اين روشي است كه براساس آن تنها بلاك‌هاي صحيح به بلاك چين اضافه مي‌شوند و اگر كسي بلاك اشتباهي معرفي كند، اعضاي راستگو و درستكار مي‌توانند آن را رد كنند.

دفتر كل: هر عضو يك كپي از تاريخچه‌ي به‌روزشده‌ي تراكنش‌ها را دارد. اين كار باعث مي‌شود بتوان بررسي كرد كه آيا فردي كه تلاش كرده تا تراكنشي انجام بدهد، پول انجام اين كار را دارد يا نه! بنابراين مشكل دوبار خرج‌كردن حل مي‌شود.

ناشناس: افراد با يك كليد خصوصي (يك رمز عبور) و يك كليد يا كيف پول عمومي (كدي تركيبي از حروف و اعداد كه اعضاي ديگر آن را مي‌بينند) به سيستم دسترسي دارند. از اين نظر همه چيز ناشناس است. بااين‌حال، شما به عنوان يك «نود» آي‌پي خودتان را به دوستان نودي‌تان ارائه مي‌دهيد، پس شناسايي كاملا غيرممكن نيست. البته راه‌هاي دروني و بيروني براي اجتناب از اين كار وجود دارد.

تكنولوژي بلاك چين چطور كار مي‌كند و چگونه همه چيز اعتبارسنجي مي‌شود؟

گام ۱: وقتي يك نود مي‌خواهد تراكنشي انجام بدهد (پول بفرستد، قرارداد هوشمندي ببندد و غيره) اين اطلاعات را به دوستان نودي خود مي‌فرستد. هر نود ابتدا تعدادي از نكات پايه را بررسي مي‌كند (براي مثال اينكه آيا پول قبلا خرج شده يا نه).

گام ۲: اگر همه چيز درست باشد، آنها اطلاعات تراكنش را در استخرشان (نوعي ثبت شخصي) ذخيره مي‌كنند و دوباره آن را براي دوستان نودي خود مي‌فرستند. هر نود استخر متفاوتي دارد، چون با ترتيب متفاوتي از تراكنش‌ها باخبر مي‌شود.

گام ۳: در هر دور (در بيت‌كويين هر دور به‌طور متوسط ۱۰ دقيقه طول مي‌كشد) يك نود به شكل تصادفي انتخاب مي‌شود تا بلاكي را با تراكنش‌هاي استخر خودش اعلام كند. اين فرايند كليدي به پروتكل اجماع معروف است. به جاي اينكه نودها ۱۰۰ درصد تصادفي باشند،‌ نودهاي مختلف شانس‌هاي متفاوتي در برنده‌شدن دارند.

گام ۴: بلاك جديد توسط فردي منتخب اعلام و امضا شده است. يعني اين فرد ورژن جديدي از بلاك چين را براي دوستان نودي خود مي‌فرستد كه بلاك‌هاي ورژن قبلي و بلاك اضافه‌اي را كه با تراكنش‌هاي استخرش پر شده است، دربردارد. دوستان نودي آن را دريافت و تكرار مي‌كنند.

گام ۵: اگر نودها اين بلاك الحاقي را معتبر در نظر بگيرند، بلاك چين را به‌ روزرساني مي‌كنند.

پس مراحل را مي‌توان به‌ اين صورت خلاصه كرد:

  1. فرستادن اطلاعات درباره‌ي تراكنش‌ها.
  2. نودها تراكنش‌ها را در استخرهايشان ثبت مي‌كنند.
  3. انتخاب تصادفي يك نود تا بلاك بعدي را اعلام كند.
  4. نود بلاك جديد را به دوستان نودي خود مي‌فرستد و آنها آن را تكرار مي‌كنند.
  5. اگر بلاك جديد معتبر در نظر گرفته شود، همه‌ي نودها كپي خود از بلاك چين را به‌ روزرساني مي‌كنند.

توابع هش و اعداد هش

 

تمام بلاك‌ها يك كد/عدد تركيبي از حروف و ارقام به نام «هش» دارند. براي به دست‌آوردن يك «هش»، بايد بر روي تمام اطلاعات بلاك (عدد، تراكنش‌هاي داخلش، امضاي تأييدكننده‌اش و غيره) و كد ديگري به اسم نانس (Nonce) تمركز كنيد. هش نتيجه‌ي به‌كاربردن يك هش (تابعي با خواص رياضي خاص و مفيد براي امنيت چين) براي اين الحاق است. هر هشي معتبر نيست، بلكه بايد با عدد معيني از صفرها شروع شود (كه بستگي به بلاك چين دارد). استراتژي پيداكردن هش معتبر، امتحان‌كردن نانس‌هاي مختلف است تا هش معتبري پيدا كنيد. يكي از خواص هش‌ها اين است كه هيچ استراتژي‌اي بهتر از امتحان‌كردن نانس‌هاي تصادفي براي‌شان وجود ندارد.

اين كار روش دستكاري‌ را تقريبا غيرممكن مي‌سازد. چرا كه اگر شما چيزي را در بلاكي كه از قبل معتبر شده (و بنابراين هش معتبري دارد)‌ تغيير دهيد، معلوم است كه هش ديگر معتبر نخواهد بود. نكته اين است كه چون هش بلاك قبلي را به عنوان يكي از تكه‌ها برمي‌داريد تا هش بلاك كنوني را به دست بياورد، اگر چيزي را در بلاكي تغيير دهيد، نه تنها آن بلاك نامعتبر مي‌شود، بلكه كل بلاك‌هاي دنباله‌ي آن هم نامعتبر مي‌شوند! اگر كسي بخواهد چيزي را در بلاكي تغيير بدهد، بايد دوباره آن بلاك و تمام بلاك‌هاي دنباله‌اش را از تمام كپي‌هاي بلاك چين كه هر نود دارد، استخراج كند.


نوشته شده در تاريخ ۱۵ شهريور ۱۳۹۸ توسط سياوش يزداني
نظرات (0)
ارسال نظر
نام :
ایمیل :
سایت :
پیام :
خصوصی :
کد امنیتی :
[ ]
تمامی حقوق این وبلاگ محفوظ است | طراح بیگ سایت