Abstract:
تکنولوژی بلاک چین امروزه به عنوان یک فناوری دگرگون کننده در فضای کسب و کار در نظر گرفته میشود و اوج شکوفایی آن با معرفی رمزارز بیت کوین در سال 2008 اتفاق افتاده است. با استفاده از شبکههای بلاک چین میتوان پایگاه-های داده و دفاتر کل متمرکز را با دفاتر کل و پایگاههای داده امن و توزیع شده میان اعضاء شبکه که به عنوان صحه گذار شناخته میشوند، جایگزین نمود. مهمترین بخش ساختار شبکه بلاک چین، الگوریتمهای اجماع بکار رفته در آن میباشد که طی آن نحوه به توافق رسیدن اعضاء شبکه در خصوص اضافه کردن یک بلوک اطلاعاتی به زنجیره اطلاعاتی بلوکها تعیین میشود. به عبارت دیگر، الگوریتمهای اجماع مشخص کننده قوانین و پروتکلهایی هستند که مطابق آن اعظاء بر سر اینکه کدام بلوک به زنجیره اضافه شود و این کار توسط چه عضوی انجام شود، به توافق رسیده و از ایجاد ساختارهای موازی و متناقض جلوگیری بعمل میآید. الگوریتمهای اجماع مورد استفاده در بلاکچین به دو گروه تقسیم بندی میشوند. گروه نخست الگوریتمهای اثبات محور هستند که در آن اعضاء مشارکت کننده در شبکه صحه گذاری باید نشان دهند که جهت اضافه نودن بلوک جدید، از شرایط و توان بهتری نسبت به سایرین برخوردار هستند.. گروه دوم الگوریتمهای رای محور هستند که در آن قبل از تصمیم نهایی، اعضاء شبکه باید نتایج خود را در خصوص صحت تراکنش و یا بلوک جدید بایکدیگر تبادل کنند. در این مقاله به بررسی الگوریتمهای اجماع مطرح و پرکاربرد مورد استفاده در بلاک چین پرداخته شده و ضمن بیان ویژگیهای کلیدی آنها، از جهات گوناگون مورد مقایسه قرار گرفتهاند.
Nowadays Blockchain technology is considered as a revolutionized technology in business environment and the peak of its prosperity has been the introduction of Bitcoin in 2008. Using blockchain networks, it could be possible to replace centralized databases and general ledgers, by high trust and decentralized one, held by different entities, or in other words, verifying nodes. The most important part of blockchain network structure is the consensus algorithm, which determines how agreement is made to append a new block between all nodes in the verifying network. In other words, consensus algorithms determine rules and protocols specifying which block and by which member should be added to main chain, and to avoid parallel and contradictory structures. Consensus algorithms can be categorized into two main groups. The first group is proof-based consensus algorithms, which requires the nodes joining the verifying network to show that they are more qualified and better than the others to do the appending new block. The second group is voting-based consensus algorithms, which requires nodes in the network to exchange their results of verifying a transaction or a new block, before making the final decision. In this paper, we present a review of the Blockchain consensus algorithms that have been researched and that are being applied in some well-known applications at this time. In this paper, we discuss consensus algorithms that have been researched and that are being applied in some well-known blockchain applications at this time, while discussing the key features and comparing them in different aspects.