سفارش تبلیغ
صبا ویژن

مرجع آموزش بلاک چین و ارزهای دیجیتال

تنگل (Tangle) فناوری جایگزین بلاکچین

 

 

در این مقاله به بررسی تنگل (Tangle) یکی از فناوری های توزیع شده که رقیب بلاکچین است، می پردازیم.

برخی از ویژگی ها ، مانند سازوکار اجماع ، و نحوه ایجاد تغییرناپذیری داده ها ، Blockchain را به یک بخش فوق العاده قدرتمند از فناوری دفتر توزیع شده (DLT) تبدیل کرده است. بدون این دو مفهوم ، بلاکچین موفق نخواهد بود.مطالعات نشان داده که Blockchain امروز مانند موتورهای دیزل قدیمی است: محکم و ایمن است ، اما خیلی راحت و سریع نیست.

 

فناوری های جایگزین

سه فناوری جدید ظهور کرده اند که جایگزینی برای بلاک چین هستند: Tangle و Hashgraph و Holochain . هر سه آنها تضمین می کنند که راه حل هایی برای رفع مشکلات Blockchain ارائه دهند.

یکی از نقاط قوت Blockchain قابلیت اجرای متوالی آن است: یک بلاک استخراج شده – که پس از تأیید اکثریت جامعه Blockchain – بر دیگری بنا شده است. بلوک بعدی در بالا قرار می گیرد و بلوک قبلی دیگر نمی تواند تغییر کند. این روش از انشعابات جلوگیری می کند. اما این توالی روند ساخت بلاک را نیز بشدت کند می کند.

 

 

 

فناوری های دفترکل توزیع شده

 

 

اگر طبیعت این فرآیند را اعمال کند ، برخی از انسان ها وجود نداشتند: ساخت یک سلول فقط پس از پایان سلول دیگر ، کارایی لازم برای ایجاد موجودات زنده را ندارد. در عوض طبیعت تقسیم سلولی همزمان را اعمال می کند. علاوه بر این ، طبیعت فقط اطلاعاتی را به سلول بعدی منتقل می کند که مربوط به آن سلول است. اما در Blockchain ، اساساً کل تاریخچه تمام سلول های قبلی به سلول بعدی منتقل می شود.

 

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


وایت پیپر اتریوم- قسمت ششم

    نظر

 

در ادامه قسمت پنجم وایت پیپر اتریوم:

بلاک چین و ماینینگ اتریوم (Blockchain and Mining )

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

جدا از این مسأله، دو عدد دیگر یعنی شماره بلاک و سختی شبکه هم در بلاک ذخیره میشود.

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

 

Check that the timestamp of the block is greater than that of the referenced previous block and less than 15 minutes into the future

 Check that the block number, difficulty, transaction root, uncle root and gas limit (various low-level Ethereum-specific concepts) are valid

Check that the proof of work on the block is valid

 Let S[0] be the STATE_ROOT of the previous block

Let TX be the block’s transaction list, with n transactions. For all in in 0…n-1, set S[i+1] = APPLY(S[i],TX[i]). If any applications returns an error, or if the total gas consumed in the block up until this point exceeds the GASLIMIT, return an error

 Let S_FINAL be S[n], but adding the block reward paid to the miner

 Check if S_FINAL is the same as the STATE_ROOT. If it is, the block is valid; otherwise, it is not valid

 

جهت مشاهده ادامه مقاله به آدرس وب سایت فکت کوینز مراجعه نمایید


الگوریتم اجماع RAFT چیست؟

    نظر

 

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

مقدمه و تاریخچه ای از RAFT

Raft الگوریتمی برای اجماع توزیع شده است که توسط دیگو اونگارو (Diego Ongaro)و جان اوسترهوت (John Ousterhout)از دانشگاه استنفورد ایجاد شده است. عامل اصلی ایجاد Raft این واقعیت بود که Paxos ، اگرچه الگوریتم توافق توزیع شده استاندارد برای بیش از یک دهه بود ، اما درک آن بسیار سخت تلقی می شد. بنابراین هدف نویسندگان ارائه یک الگوریتم توافق توزیع شده با درک آسان بود.

همچنین Raft یک الگوریتم اجماع برای مدیریت تکثیر داده ها است. که نتیجه ای معادل Paxos تولید می کند و به همان اندازه کارآمد است ، اما ساختار آن از Paxos متفاوت است طوری که باعث می شود Raft قابل درک تر از Paxos باشد و همچنین زمینه بهتری برای ساخت سیستم های عملی فراهم می کند.

به منظور درک آسان  ، Raft عناصر اصلی اجماع ، مانند انتخاب رهبر(leader)  ، تکثیر log ، و ایمنی را از هم جدا می کند ، و درجه انسجام بیشتری را برای کاهش تعداد  وضعیت هایی که باید در نظر گرفته شود ، اعمال می کند. نتایج حاصل از مطالعات نشان می دهد که یادگیری Raft برای کاربران آسان تر از Paxos است.

 

نکته : لاگ  یک ساختار برای ذخیره سازی داده که به صورت توالی کاملا مرتب شده بر اساس زمان است

 

 

اجماع و ماشین های حالت تکثیر (Replicated state machines) در سیستم های توزیع شده

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

 

 

جایگاه اجماع در ماشین های حالت تکثیر

 

 

 

برای ارائه جزئیات بیشتر ، از مدلی به نام Replicated State Machines استفاده می شود. منظور از ماشین وضعیت نوعی برنامه است که به درخواست کلاینت خارجی پاسخ می دهد. ماشین های حالت replicated به این معنی است که با در دست گرفتن کنترل  یکی از ماشین های حالت و اجرای چندین نسخه از آن بر روی سایر ماشین ها ، قابلیت اطمینان سیستم را افزایش می دهیم. هدف این است که هر یک از ماشین های تکثیر شده همان دستورات را به همان ترتیب اجرا کنند ، بنابراین وضعیت همه ماشینها همگام سازی می شوند. سیستم تا زمانی که اکثر ماشین ها روشن باشند و در مورد وضعیت فعلی توافق داشته باشند ، فعال است.

 

 

وضعیت های یک گره

هر گره در cluster می تواند در یکی از 3 حالت باشد: رهبر(leader) ، کاندید (candidate ) یا پیرو(follower)

  • Leader: یک گره فعال است که در حال حاضر cluster را هدایت می کند. درخواست های کلاینت را کنترل می کند و وضعیت را در گره های follower  کپی یا تکثیر می کند.
  • کاندید(candidate ): گره فعالی است که تلاش می کند با ارسال درخواست رأی به سایر گره ها رهبر شود.
  • پیرو(follower): گره ای غیرفعال است که فقط به RPCc پاسخ می دهد و هیچ ارتباطی را آغاز نمی کند.

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

 

 

 


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


 

 

 

 

انتخاب لیدر در اجماع Raft

 

 

زمان به چند دوره (Term) تقسیم می شود. هر دوره با انتخاب رهبر آغاز می شود و یک رهبر در تمام دوره سلطنت می کند.هر دوره با اعداد صحیح مثبت نشان داده می شوند . اگر گره ای (حتی رهبر) پیامی حاوی دوره زمانی بالاتر از دوره خود دریافت کند ، بلافاصله به  وضعیت follower برمی گردد و شماره دوره خود را به روز می کند. گره ها تعداد دوره های خود  را بر روی دیسک ذخیره می کنند ، بنابراین در صورت خرابی یا راه اندازی مجدد می توان آن را بازیابی کرد.

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

مانند R3Corda  و Quorum

 

منبع: factcoins.com


خطراتی که شبکه بیتکوین را تهدید میکند(قسمت چهارم)

    نظر

 

در ادامه مقاله قبلی در باب حملات احتمالی مهاجم ها به شبکه بیت کوین، در این مقاله به بررسی 2 حمله دیگر میپردازیم.

تأیید تراکنش های بیت کوین

قبلاً گفتیم که تراکنش های بیت کوین از طریق فرآیندی به نام استخراج (mining ) تأیید میشوند.به منظور جلوگیری از دوبار خرج کردن تراکنش ها ، تراکنش ها به صورت دسته ای طبقه بندی میشوند. با استفاده از این دسته ها و گروهی از تراکنش های قبلی به عنوان ورودی،  یک معمای ریاضی بسیار مشکل حل میشود.که دسته های تراکنش ها بلاک نامیده میشوند. این پازل یا معمای ریاضی آنقدر سخت است که مقادیر قابل توجهی پول برای حل آن هزینه میشود. به عنوان مثال میتوان به هزینه برق مصرفیِ سیستم های ماینینگ اشاره کرد.

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

 

مهاجم با اجرای نرم افزار ماینینگ میتواند از تأیید تراکنش ها جلوگیری کند.

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

 

قابلیت های امنیتی

  • انجام هر تراکنش تؤام با پرداخت مبلغی به نام کارمزد است .این کارمزد به ماینرها پرداخت میشود. حال اگر یک مهاجم این تراکنش ها را نادیده بگیرد ، پس کارمزد حل تراکنش را دریافت نمیکند و آن را از دست میدهد.
  • اگر یک مهاجم تراکنشی در بلاک را رد کند، به احتمال زیاد حل بلاک بعدی را از دست خواهد داد. چرا که ماینری دیگر بلاک بعدی را حل میکند. پس این مهاجم تنها زمان بسیار کوتاهی قادر است تراکنش را به تعویق بیندازد.

 

جهت مشاهده ادامه مقاله به آدرس وب سایت فکت کوینز مراجعه نمایید


اثبات وزن (proof of weight) چیست؟

 

 

در دنیای الگوریتم های اجماع بلاکچین ، گزینه های مختلفی برای انتخاب نود ، جهت تایید بلاک جدید وجود دارد. اثبات وزن یکی از راه حل های نسبتاً غیرمعمول است.

 

معرفی و تاریخچه اثبات وزن

سازوکارهای اجماع اثبات وزن بر اساس اولین مدل اجماع اثبات وزن مورد استفاده در ارز رمزنگاری شده الگوراند(Algorand) است. که توسط محققان آزمایشگاه علوم رایانه ای و هوش مصنوعی MIT ساخته شده است.

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

به عنوان مثال در اثبات سهام هر چه نود سهام بیشتری داشته باشد شانس بیشتری برای به دست آوردن تایید بلاک جدید را دارد.

 

اثبات وزن چگونه کار می کند؟

اثبات وزن (PoWeight) مکانیسم اجماع بلاکچین است که بر اساس میزان ارز رمزنگاری شده ، به هر کاربر “وزن” خاصی اختصاص داده می شود. که نشان دهنده سهم کاربر در شبکه است. به منظور جلوگیری از حملات و اعمال ناخوشایند در بلاکچین ، اکثریت (بیش از دو سوم) وزن ها باید به کاربران صادق تعلق داشته باشد.

 

 

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

 

در نگاه اول proof of weight ممکن است شباهت زیادی به الگوریتم اجماع اثبات سهام داشته باشد ، اما هنگام بررسی دقیق تر ، می توان متوجه تفاوت اساسی شد. در یک شبکه اثبات سهام ، تعداد سکه های نگهداری شده در کیف پول است که “وزن” کاربر و متعاقباً احتمال دریافت پاداش بلوک را برای کاربر تعیین می کند.

در مکانیزم اجماع proof of weight ، هر مقدار قابل اندازه گیری دیگر ، نه فقط مقدار سکه های نگهداری شده ، می تواند برای تعیین “وزن” کاربر استفاده شود.مثلا در پروژه ذخیره سازی فایل ،تعداد فایل های ذخیره شده یک معیار وزن است.

 

میزان محبوبیت اثبات وزن در بلاکچین

اگرچه proof of weight شایستگی زیادی دارد . اما یک مدل اجماعی نیست که ارزهای رمزپایه اصلی بخواهند از آن استفاده کنند. انگیزه دادن به کاربران برای شرکت در چنین شبکه هایی بسیار دشوار است . زیرا در این روش کاربران پاداش نمی گیرند. توسعه دهندگان می توانند با استفاده از روش های خلاقانه این مسئله را برطرف کنند.

 


بیشتر بخوانید :   بلاک کهنه (Stale) و بلاک Uncle در بلاکچین



موارد استفاده :

آلگورند (Algorand)، فایل‌کوین (Filecoin)، چیا (Chia)

 

منبع: factcoins.com