Bitcoin Forum
June 17, 2024, 10:54:13 AM
Welcome,
Guest
. Please
login
or
register
.
News
:
Voting for pizza day contest
Home
Help
Search
Login
Register
More
Bitcoin Forum
>
Local
>
中文 (Chinese)
>
区块链共识机制的分类和优缺点简析
Pages: [
1
]
« previous topic
next topic »
Print
Author
Topic: 区块链共识机制的分类和优缺点简析 (Read 160 times)
hnmpy222
(OP)
Jr. Member
Offline
Activity: 56
Merit: 10
区块链共识机制的分类和优缺点简析
April 18, 2018, 01:38:37 PM
Merited
by
ueb29304
(2)
#1
区块链的基础是P2P分布式网络、加密算法和共识机制。
在这些基础技术中,共识机制是至关重要的。可以说共识机制是区块链技术的核心,共识机制对于一个区块链系统来说就是它的灵魂。
共识机制很大程度上决定了整个区块链系统节点间的相互信任程度,也决定了其他使用者对于区块链上数据的信任程度。
区块链与普通分布式系统,尤其是分布式数据库最大的区别就是“去中心化”,而正是共识机制决定了一个区块链系统“去中心化”的程度。
通常,我们把区块链分为两大类:一种是公有链,一种是非公有链。
这两种区块链的核心区别在于:参与共识的节点是否是受控的。
对于公有链来说,互联网上的任何计算机都可以通过运行相应的区块链程序,参与整个区块链的共识;
而对于非公有链来说,通常需要获得之前区块链节点中大部分节点的同意,或者通过其他某种机制,获得参与共识的权力。
目前主要几类共识算法如下:PoW、PoS、DPos、Ripple Consensus、PBFT、dBFT、POOL验证池
1.PoW(工作量证明)
通过与或运算,计算出一个满足规则的随机数,即获得本次记账权,发出本轮需要记录的数据,全网其它节点验证后一起存储;
优点:易实现,节点间无需交换额外的信息即可达成共识,破坏系统需要投入极大的成本。
缺点:浪费能源,区块的确认时间难以缩短;共识达成的周期较长,不适合商业应用
2.PoS(权益证明)
PoW的一种升级共识机制,本质上是采用权益证明来代替PoW的算力证明,记账权由最高权益的节点获得,而不是最高算力的节点。根据每个节点所占代币的比例和时间;等比例的降低挖矿难度,从而加快找随机数的速度。
优点:解决了PoW 消耗算力的问题,在一定程度上缩短了共识达成的时间
缺点:拥有权益 的参与者未必希望参与记账,还是需要挖矿。
3.DPos(股份授权证明机制)
类似于董事会投票,持币者投出一定数量的节点,代理他们进行验证和记账。
优点:大幅缩小参与验证和记账节点的数量,可以达到秒级的共识验证。
缺点:整个共识机制还是依赖于代币,很多商业应用是不需要代币存在的。
4.Ripple Consensus(瑞波共识算法)
使一组节点能够基于特殊节点列表达成共识。初始特殊节点列表就像一个俱乐部,要接纳一个新成员,必须由51%的该俱乐部会员投票通过。共识遵循这核心成员的51%权力,外部人员则没有影响力。由于该俱乐部由“中心化”开始,它将一直是“中心化的”,而如果它开始腐化,股东们什么也做不了。
5.PBFT:Practical Byzantine Fault Tolerance(实用拜占庭容错算法)
在保证活性和安全性(liveness & safety)的前提下提供了(n-1)/3的容错性。
在分布式计算上,不同的计算机透过讯息交换,尝试达成共识;但有时候,系统上协调计算机(Coordinator / Commander)或成员计算机 (Member /Lieutanent)可能因系统错误并交换错的讯息,导致影响最终的系统一致性。
拜占庭将军问题就根据错误计算机的数量,寻找可能的解决办法,这无法找到一个绝对的答案,但只可以用来验证一个机制的有效程度。
而拜占庭问题的可能解决方法为:
在 N ≥ 3F + 1 的情况下一致性是可能解决。其中,N为计算机总数,F为有问题计算机总数。信息在计算机间互相交换后,各计算机列出所有得到的信息,以大多数的结果作为解决办法。
优点:
1)系统运转可以脱离币的存在,pbft算法共识各节点由业务的参与方或者监管方组成,安全性与稳定性由业务相关方保证。
2)共识的时延大约在2~5秒钟,基本达到商用实时处理的要求。
3)共识效率高,可满足高频交易量的需求。
缺点:
1)当有1/3或以上记账人停止工作后,系统将无法提供服务;
2)当有1/3或以上记账人联合作恶,且其它所有的记账人被恰好分割为两个网络孤岛时,恶意记账人可以使系统出现分叉,但是会留下密码学证据;
6.dBFT: delegated BFT 授权拜占庭容错算法
小蚁(NEO)采用的dBFT机制,是由权益来选出记账人,然后记账人之间通过拜占庭容错算法来达成共识。
此算法在PBFT基础上进行了以下改进:
将C/S架构的请求响应模式,改进为适合P2P网络的对等节点模式;
将静态的共识参与节点改进为可动态进入、退出的动态共识参与节点;
为共识参与节点的产生设计了一套基于持有权益比例的投票机制,通过投票决定共识参与节点(记账节点);
在区块链中引入数字证书,解决了投票中对记账节点真实身份的认证问题。
优点:
1)专业化的记账人;
2)可以容忍任何类型的错误;
3)记账由多人协同完成,每一个区块都有最终性,不会分叉;
4)算法的可靠性有严格的数学证明;
缺点:
1)当有1/3或以上记账人停止工作后,系统将无法提供服务;
2)当有1/3或以上记账人联合作恶,且其它所有的记账人被恰好分割为两个网络孤岛时,恶意记账人可以使系统出现分叉,但是会留下密码学证据;
以上总结来说,dBFT机制最核心的一点,就是最大限度地确保系统的最终性,使区块链能够适用于真正的金融应用场景。
7.POOL验证池
基于传统的分布式一致性技术,加上数据验证机制。
优点:不需要代币也可以工作,在成熟的分布式一致性算法(Pasox、Raft)基础上,实现秒级共识验证。
缺点:去中心化程度不如bictoin;更适合多方参与的多中心商业模式。
diaonle
Member
Offline
Activity: 140
Merit: 10
Re: 区块链共识机制的分类和优缺点简析
April 18, 2018, 01:46:34 PM
#2
感谢普及,多了解下还是不错的。辛苦了。
btcfree2018
Member
Offline
Activity: 140
Merit: 10
Re: 区块链共识机制的分类和优缺点简析
April 18, 2018, 01:59:33 PM
#3
Quote from: 360llqzc on April 18, 2018, 01:50:46 PM
这贴又有几种新的算法没看到过,谢谢楼主的扫盲工作
看到知识贴,挺好的。
timsun212
Newbie
Offline
Activity: 87
Merit: 0
Re: 区块链共识机制的分类和优缺点简析
April 18, 2018, 02:02:39 PM
#4
根据最近以太和门罗的风波,POW的一个主要缺点就是矿机的威胁
holder99
Member
Offline
Activity: 140
Merit: 12
Re: 区块链共识机制的分类和优缺点简析
April 18, 2018, 02:16:39 PM
#5
Quote from: timsun212 on April 18, 2018, 02:02:39 PM
根据最近以太和门罗的风波,POW的一个主要缺点就是矿机的威胁
主要是费电。
Irreleva577
Newbie
Offline
Activity: 90
Merit: 0
Re: 区块链共识机制的分类和优缺点简析
April 18, 2018, 03:14:48 PM
#6
谢谢楼主的分析啊,很中肯的评价,学习到了,帮楼主顶一个。
biyuan200
Newbie
Offline
Activity: 168
Merit: 0
Re: 区块链共识机制的分类和优缺点简析
April 18, 2018, 03:15:36 PM
#7
Quote from: shaoyin01 on April 18, 2018, 02:56:40 PM
費電在中國目前不是什麼問題啊,在四川那邊的水電根本就是過剩,有的比特幣挖礦只能說是資源最大化利用
在国外就很是问题,只有绿色化才能走的更远。
zhineng2030
Newbie
Offline
Activity: 140
Merit: 0
Re: 区块链共识机制的分类和优缺点简析
April 18, 2018, 03:29:02 PM
#8
Quote from: Irreleva577 on April 18, 2018, 03:14:48 PM
谢谢楼主的分析啊,很中肯的评价,学习到了,帮楼主顶一个。
嗯,学到了,多了解一次就多一点希望。
Pages: [
1
]
Print
Bitcoin Forum
>
Local
>
中文 (Chinese)
>
区块链共识机制的分类和优缺点简析
« previous topic
next topic »
Jump to:
Please select a destination:
-----------------------------
Bitcoin
-----------------------------
=> Bitcoin Discussion
===> Legal
===> Press
===> Meetups
===> Important Announcements
=> Development & Technical Discussion
===> Wallet software
=====> Electrum
=====> Bitcoin Wallet for Android
=====> BitcoinJ
=====> Armory
=====> Mycelium
=====> Hardware wallets
=> Mining
===> Mining support
===> Pools
===> Mining software (miners)
===> Hardware
=====> Group buys
===> Mining speculation
=> Bitcoin Technical Support
=> Project Development
-----------------------------
Economy
-----------------------------
=> Economics
===> Speculation
=> Marketplace
===> Goods
=====> Computer hardware
=====> Digital goods
=======> Invites & Accounts
=====> Collectibles
===> Services
===> Currency exchange
===> Gambling
=====> Games and rounds
=====> Investor-based games
=====> Gambling discussion
===> Lending
=====> Long-term offers
===> Securities
===> Auctions
===> Service Announcements
=====> Micro Earnings
===> Service Discussion
=====> Web Wallets
=====> Exchanges
=> Trading Discussion
===> Scam Accusations
===> Reputation
-----------------------------
Other
-----------------------------
=> Meta
===> New forum software
===> Bitcoin Wiki
=> Politics & Society
=> Beginners & Help
=> Off-topic
=> Serious discussion
===> Ivory Tower
=> Archival
===> Корзина
===> CPU/GPU Bitcoin mining hardware
===> Chinese students
===> Obsolete (buying)
===> Obsolete (selling)
===> MultiBit
-----------------------------
Alternate cryptocurrencies
-----------------------------
=> Altcoin Discussion
=> Announcements (Altcoins)
===> Tokens (Altcoins)
=> Mining (Altcoins)
===> Pools (Altcoins)
=> Marketplace (Altcoins)
===> Service Announcements (Altcoins)
===> Service Discussion (Altcoins)
===> Bounties (Altcoins)
=> Speculation (Altcoins)
-----------------------------
Local
-----------------------------
=> العربية (Arabic)
===> العملات البديلة (Altcoins)
=====> النقاشات
===> إستفسارات و أسئلة المبتدئين
===> التعدين
===> النقاشات الأخرى
===> منصات التبادل
=> Bahasa Indonesia (Indonesian)
===> Marketplace (Bahasa Indonesia)
===> Mining (Bahasa Indonesia)
===> Altcoins (Bahasa Indonesia)
===> Trading dan Spekulasi
===> Ekonomi, Politik, dan Budaya
===> Topik Lainnya
=> Español (Spanish)
===> Mercado y Economía
=====> Servicios
=====> Trading y especulación
===> Hardware y Minería
===> Esquina Libre
===> Mercadillo
=====> Mexico
=====> Argentina
=====> España
=====> Centroamerica y Caribe
===> Primeros pasos y ayuda
===> Altcoins (criptomonedas alternativas)
=====> Minería de altcoins
=====> Servicios
=====> Tokens (Español)
=> 中文 (Chinese)
===> 跳蚤市场
===> 山寨币
===> 媒体
===> 挖矿
===> 离题万里
=> Hrvatski (Croatian)
===> Trgovina
===> Altcoins (Hrvatski)
=====> Announcements (Hrvatski)
===> Off-topic (Hrvatski)
=> Deutsch (German)
===> Anfänger und Hilfe
===> Mining (Deutsch)
===> Trading und Spekulation
===> Projektentwicklung
===> Off-Topic (Deutsch)
===> Treffen
===> Presse
===> Altcoins (Deutsch)
=====> Announcements (Deutsch)
===> Marktplatz
=====> Auktionen
=====> Suche
=====> Biete
=> Ελληνικά (Greek)
===> Αγορά
===> Mining Discussion (Ελληνικά)
===> Altcoins (Ελληνικά)
=====> Altcoin Announcements (Ελληνικά)
=====> Altcoin Mining (Ελληνικά)
=> עברית (Hebrew)
=> Français
===> Actualité et News
===> Débutants
===> Discussions générales et utilisation du Bitcoin
===> Mining et Hardware
===> Économie et spéculation
===> Place de marché
=====> Échanges
=====> Produits et services
=====> Petites annonces
===> Le Bitcoin et la loi
===> Wiki, documentation et traduction
===> Développement et technique
===> Vos sites et projets
===> Hors-sujet
===> Altcoins (Français)
=====> Annonces
=> India
===> Mining (India)
===> Marketplace (India)
===> Regional Languages (India)
===> Press & News from India
===> Alt Coins (India)
===> Buyer/ Seller Reputations (India)
===> Off-Topic (India)
=> Italiano (Italian)
===> Guide (Italiano)
===> Progetti
===> Discussioni avanzate e sviluppo
===> Trading, analisi e speculazione
===> Mercato
=====> Mercato valute
=====> Beni
=====> Servizi
=====> Esercizi commerciali
=====> Hardware/Mining (Italiano)
=====> Gambling (Italiano)
===> Accuse scam/truffe
===> Mining (Italiano)
===> Alt-Currencies (Italiano)
=====> Annunci
===> Raduni/Meeting (Italiano)
===> Crittografia e decentralizzazione
===> Off-Topic (Italiano)
=> 日本語 (Japanese)
===> アルトコイン
=> Nederlands (Dutch)
===> Markt
===> Gokken/lotterijen
===> Mining (Nederlands)
===> Beurzen
===> Alt Coins (Nederlands)
===> Off-topic (Nederlands)
===> Meetings (Nederlands)
=> Nigeria (Naija)
===> Politics and society (Naija)
===> Off-topic (Naija)
=> 한국어 (Korean)
===> 대체코인 Alt Coins (한국어)
=> Pilipinas
===> Altcoins (Pilipinas)
=====> Altcoin Announcements (Pilipinas)
===> Pamilihan
===> Others (Pilipinas)
=> Polski
===> Tablica ogłoszeń
===> Alternatywne kryptowaluty
=====> Nowe kryptowaluty i tokeny
=====> Tablica ogłoszeń (altcoiny)
=> Português (Portuguese)
===> Primeiros Passos (Iniciantes)
===> Economia & Mercado
===> Mineração em Geral
===> Desenvolvimento & Discussões Técnicas
===> Criptomoedas Alternativas
===> Brasil
===> Portugal
=> Русский (Russian)
===> Новички
===> Бизнес
=====> Барахолка
=====> Обменники
===> Идеи
===> Кодеры
===> Майнеры
===> Политика
===> Трейдеры
===> Альтернативные криптовалюты
=====> Токены
=====> Бayнти и aиpдpoпы
===> Хайпы
===> Работа
===> Разное
===> Oбcyждeниe Bitcoin
=====> Новости
=====> Юристы
=> Română (Romanian)
===> Anunturi importante
===> Offtopic
===> Market
=====> Discutii Servicii
===> Minerit
===> Tutoriale
===> Bine ai venit!
===> Presa
===> Altcoins (Monede Alternative)
=====> Anunturi Monede Alternative
=> Skandinavisk
=> Türkçe (Turkish)
===> Bitcoin Haberleri
===> Pazar Alanı
===> Madencilik
===> Ekonomi
===> Servisler
=====> Fonlar
===> Proje Geliştirme
===> Alternatif Kripto-Paralar
=====> Madencilik (Alternatif Kripto-Paralar)
=====> Duyurular (Alternatif Kripto-Paralar)
===> Konu Dışı
===> Yeni Başlayanlar & Yardım
===> Buluşmalar
=> Other languages/locations
Loading...