Jump to content
Lightning Bitcoin

Search the Community

Showing results for tags 'dpos'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Lightning Bitcoin
    • Please Read Before Posting
    • On-Chain Governance 链上治理
    • Lightning Node Election 闪电节点竞选
    • Press
    • General Discussion
    • Technical Discussion
    • Marketplace
    • Problem Solving
  • PROTOCOL
    • Protocol Discussion
  • OTHER LANGUAGE
    • 中文 (Chinese)
  • shanghai lbtc's LBTC登记人数

Blogs

There are no results to display.

There are no results to display.

Product Groups

There are no results to display.


Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Found 5 results

  1. This Topic is created for actual and future Lightning Bitcoin delegates to post ONLY announcements and justify the process of voting. Please organize your announcement in the following structure: 1. Introduction Your delegate ID.Links to Social Media pages ( Wechat, Telegram, Reddit, GitHub, Medium etc ) 2. What are your contributions to LightningBitcoin community? 3. Why should you be voted? Justify the diligence of your performance, back it up with your expertise and knowledge by providing references. 4. What are the perks for sending votes to you? Please disclose as much information as you want to be disclosed in order to communicate and signal to your potential voters a sufficient amount of information. Remember that being silent does not help others to make their voting decision in your favor. *** Delegates are allowed to introduce delegate pools in the same way. Please mention it in the headline of your announcement! Post with non-related content will be deleted. Please discuss announcements and leave your comments in "Delegates Announcement Platform. Discussion" topic:
  2. Written by Jordan Kovacs Mining, the bookkeeping of the cryptocurrency world, utilizes different consensus protocols in order to maintain a ledger. Three widely used protocols (or at least, gaining substantial momentum) are Proof-of-Work (PoW), Proof-of-Stake (PoS), and Delegated Proof-of-Stake (DPoS). Proof-of-Work (PoW) Proof-of-Work (PoW) functions are basically what you think it would be. It validates that a certain amount of work happened. Arguably, the most well-known instance of PoW is SHA256 — a hashing algorithm commonly used in digital signatures to verify integrity of data. Bitcoin, the first known cryptocurrency, utilizes PoW to complete transactions on its ledger. PoW functions are designed to be difficult to break in order to prevent malicious types of activity. PoW also allows decentralization in that no single person can gain control over the order of blocks in a ledger. The first miner that solves the block gets a mining reward, however, as more blocks are mined, the mining reward decreases…and will eventually reach zero. Once it reaches that point, miners will only receive transactions fees in exchange for their work. Further, as more blocks are added to a ledger, the difficulty level of the computing needed increases. Mining that uses PoW requires miners to basically break this system in order to solve a math problem. Since this math problem is quite difficult, a ton of computing power is needed. The process also becomes wasteful because all of this computing power only protects the ledger from spammers. Coming up with the computing power needed to solve a transaction that uses PoW is not only time-intensive, but the hardware to do this is expensive as well. Proof-of-Stake (PoS) This brings me to Proof-of-Stake (PoS). PoS is an attempt to mitigate the waste, time, and money that PoW brings to miners. PoS chooses miners in a deterministic way, based upon the miner’s wealth, aka their stake in the matter. There is no block reward, but miners receive transactions fees just like in PoW. In PoS, blocks are not mined, but rather, they are “forged” or “minted. Miners are known as “forgers”. Forgers are required to put their own cryptocurrency units at “stake” (as leverage) in case they validate a fraudulent transaction. This incentivizes forgers to validate correct transactions. Most cryptocurrencies that utilize PoS also give interest to users that stake their coins. The interest is the maximum rate of inflation for a currency’s supply. A notable downfall to PoS is that there is currently no way to handle coins when they are initially given to people. To mitigate this, one can have an ICO and give already-forged coins, or start with a PoW system and then switch to PoS later. A large part of making a PoS system effective is choosing a good way in which forgers are chosen. Two popular methods are: Randomized Block Selection — finds the lowest hash value and the size of of a forger’s stake. Coin Age Based Selection — finds the next forger based on the ‘coin age’ of their stake. Coin age= (# of days the coins have been held as stake) X (# of coins being staked) Some other interesting tidbits: A coin must have been held for at least 30 days before it can be held at stake. Once a forger has forged a block, their coin age becomes zero. They cannot forge another block for 30 days, but will be chosen to forge a new block within the next 90 days (max). These features allow the system to remain decentralized, lowers hardware and electricity costs, and allows a greater number of people to become forgers. A chain split can happen if nodes disagree with each other, just as in the case with the creation of Ethereum Classic. To help mitigate this possibility, the Delegated Byzantine Fault Tolerance (dBFT) was created. Delegated Proof-of-Stake (DPoS) Explaining PoS would not be complete without introducing its new cousin — Delegated Proof of Stake (DPoS). DPoS adds more democratic features to help maintain decentralization. Users vote for witnesses to serve on a panel, of which control transaction sizes, transaction fees, and deterministically choose other witnesses to confirm blocks. “Bad” witnesses can be voted off the panel, and their influence is directly proportional to their stake in the system. PoW Examples Bitcoin (BTC) Ethereum (ETH) — moving towards PoW/PoS then solely PoS Bitcoin Cash (BCH) Litecoin (LTC) Monero (XMR) ZCash (ZEC) DigitalCash (DASH) PoS Examples Cardano (ADA) NEO — technically uses dBFT (NEO) Private Instant Verified TX (PIVX) OkCash (OK) Reddcoin (RDD) DPoS Examples Steemit (STEEM) EOS (EOS) BitShares (BTS) Sources: CryptoCurrencyFacts, HackerNoon, CryptoCompare, Steemit,
  3. 即将在比特币第499,999块分叉的闪电比特币(Lightning Bitcoin,LBTC)凭借颠覆性的DPOS共识机制获得了不少人气,以致于有几个后来的分叉也选择了同一个块高进行分叉,也冒出了一些新的采用DPOS机制的分叉币。看到“闪电比特币”,很多人会在第一时间联想到“闪电网络”(Lightning Network),我们就来普及、对比一下二者,看看谁更“闪电”。 闪电网络的名气已经很大了,Joseph Poon和Thaddeus Dryja在2016年1月发表的论文《The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments》(《比特币闪电网络:可扩展的链下即时支付》),在当时引起巨大反响,而现已率先开始在莱特币上部署。 比特币部署闪电网络的前提是“隔离见证”(SegWit)软分叉,目前已经实现,具备这样一个基础,闪电网络的启动仿佛指日可待。 闪电网络提供了一个可扩展的微支付通道网络。交易双方若在区块链上预先设有支付通道,就可以多次、高频、双向地实现瞬间确认的微支付;双方若无直接的P2P支付通道,只要网络中存在一条连通双方的、由多个支付通道构成的支付路径,闪电网络也可以利用这条支付路径实现资金在双方之间的可靠转移。 闪电网络并不试图解决单次支付的银货对付问题,其假设是单次支付的金额足够小,即使一方违约另一方的损失也非常小,风险可以承受。因此使用时必须注意’微支付’这个前提。 不得不说,闪电网络是非常聪明的设计,甚至可以说,闪电网络是在不对比特币底层架构进行大规模改动的前提下(比如区块扩容、改变共识机制等)的最佳扩容方案,即使这是一种变相扩容。 然而,很多人在看到了闪电网络的本质后,不仅不支持,反而开始极力反对闪电网络在比特币上的部署。 闪电网络的核心概念,也就是支付渠道(Payment)。使用一些复杂的比特币脚本,双方就可以建立一个“渠道”,这个“渠道”一旦被打开,就可以让他们做成无数笔无需信任的“链下”(Off-chain)交易。 为了打开这个渠道,双方需要共同建立一笔交易,交易中的一方或者双方需要将比特币存入这个渠道中,然后这笔交易再被转移到比特币区块链中。当要关闭这个渠道时,双方中的任意一方均有1秒的反应时间,比特币网络的链上交易将替双方支付这次交易所需费用。 然而,当这个渠道处于开放状态时,双方在任何时候都可以不通过上链交易就可以共同协商修改支付分配。 按照原有的设计,最终,闪电网络并不会成为白皮书中所讲的“分布式的对等支付层”,而会沦落为银行一样的准集中式的支付网络,最好的情况下,也是以中心辐射型拓扑结构(Hub-and-Spoke Topology)形式结束。 同时,由于支付通道中必须存有充足的资金,也就是说,支付中转站应该给每个渠道存入预存款,而为了实现支付的及时、有效,存款需要达到支付所需额度的10倍左右。即使网络没有受到攻击,沉淀资金的庞大也会带来很严重的资金安全和流通性问题。 当人们以不同数额的金额在不同通道中进行买卖时,数值不对称性就很有可能会频繁发生。从一个节点到另一个节点的路径是很容易被找到,但是每一次找到正确数值的跳跃路径则是最困难的部分。如果有超过百分之五十的交易找不到路径,闪电网络实际上会更多促成的是比特币上链交易,而不是在闪电网络上的交易。 无论如何,闪电网络及RSMC、HTLC等技术是先进的、革新的,我们必须为那些为闪电网络作出贡献的开发者点赞。然而,闪电网络作为平行于比特币的区块链,同时又要实现基于比特币协议的智能合约,起点之高必然带来非常复杂的技术问题,而有些问题是不会有完美解决方案的,因为那会触及比特币的本原。 Core团队反对单纯的扩容,矿工不要闪电网络,用户需要权利同时不要拥堵,多方的利益冲突,错不在比特币。 比特币发展到今天,是从开始就注定了的结果,一切矛盾的根源在于——POW。闪电比特币的出现,为比特币提供了一条新的出路,一条从未有人走过的路。 DPOS分叉后的比特币,摒弃了矿工的算力竞争(DPOS机制轮流出块),提高了出块速度(3s),还把区块扩容到2M,每秒可处理交易量至少达到1000笔! 再来看看深层的变革——真正去中心化。 如今,比特币的核心权力掌握在算力也就是矿池手里,闪电网络可以为Core或者说Block Stream获得权力和利益,争斗结束,无论哪方胜出,只是改变了用户手续费的归属权,并不见比特币网络的根本转好,同时用户依然没有话语权。 DPOS机制将权力还给用户,新比特币的发展方向将由用户决定,最终是会保护多数人的利益,而不是如今的比特币只为少数人服务。 如今的比特币储值属性被不断强化,而支付功能在不断衰退,闪电网络只是一种临时止痛的短期解决方案,也可能带来超级节点被监管、取缔的风险,即使这是一个不被Block Stream控制的网络。 高难度的技术实现同样也会使用户资产面临安全风险,而归根结底,用户依然承担着高额的支付费用。相较之下,DPOS能够解决的问题实在太多了,一条是看不到未来的路,一条是阳光大道,相信用户会作出正确的选择。 分叉不全是好事,为了比特币的未来变得更好而做的分叉,我们都会支持;那些没有用途,为了分叉而分叉的链,最终都会走向消亡。 市场决定一切。
  4. 这篇“缺失的白皮书”是对委托权益证明(DPOS)的分析,目的是分析DPOS的工作原理及其维持强劲的原因。 DPOS的早期介绍文章可以在bitshares.org上找到(link附在原文后);不过,那个早期文章包括了许多不属于真正共识过程的内容。 所有区块链本质上都是一种由交易驱动的确定性状态机器。共识机制是商定确定交易顺序和过滤无效交易的过程。许多不同的共识算法都可以产生相同效果的交易排序,但DPOS已经在多个区块链上可靠运行多年,证明了是健壮、安全和有效的共识机制。 像所有共识算法一样,区块产生者可能导致的最大损害是审查。所有区块的有效性必须遵循确定性的开源状态机逻辑。 DPOS算法概要 DPOS算法可分两部分:如何选择一群区块生产者及调度区块生产。选择过程要确保利益持有方拥有局面最终控制权,因为当网络非正常运行时,利益持有方的损失最大。由于选择过程本身对实际如何达成共识几乎没有影响,本文将重点介绍在区块生产者被选择之后,如何达成共识。 为更好的解释这个算法,假设有3个区块生产者A,B和C。因为达成共识要求2/3+1多数来裁决所有情况,在这个简化的模型中假设生产者C是打破僵局的角色。在现实中,会有21个或更多的区块生产者。类似工作量证明,一般规则是链最长者胜出。任何时候,当一个诚实节点看到一个更长的有效链时,它都会从当前分叉切换到更长的这条有效链。 接下来我将举例说明DPOS如何在大多数可想象的网络条件下运行。这些例子应该可以帮助理解为什么DPOS如此强的稳健而且很难被破坏。 正常操作 正常操作下,每三秒钟区块生产者轮流生产一个区块。假设每个人都按部就班轮流生产,那么这将生产出最长的链。需要指出的是,块生产者在自己轮次之外的任何时间段生产出来的块都是无效的。 少数分叉 会有高达三分之一的恶意或故障节点可能创建少数分叉。此时,少数分叉每9秒才能产生一个块,而多数分叉每9秒可以产生两个块。如此,另外诚实的2/3多数将永远比少数的链长。 离线少数分叉的双重生产 离线的少数节点可以试图产生无限量的分叉,但是他们产生的所有分叉都将比多数人的那条链短,因为少数分叉在出块速度上肯定比多数人的链慢。 网络碎片化 网络完全有可能碎片化,这种情况下没有任何分叉拥有多数区块生产者。这种情况下,最大规模少数派的分叉生产的链会最长。当网络恢复通讯后,较小的少数群体会自然转到最长的那条链,由此恢复明确的共识。 有可能存在这样三个分叉,其中两个最长的分叉长度相同。在这种情况下,第3个最小的分叉的区块生产者重新加入网络时会打破平衡。区块生产者总数为奇数,所以不可能长期保持平局。后面我们会具体谈生产者“洗牌”问题,使出块顺序随机化,确保即使两个分叉有同样多的区块生产者,其分叉链也会以不同的步长增长,最终引发一个分叉超过另一个。 在线少数的双重生产 在这种情况下,少数节点B在其锻造区块时间段内产生了两个或更多的区块。下一个轮到锻造区块的生产者(C)可以选B产生的任何一种区块继续构建链条。如此,C的选择就成为最长的链,而所有选择B1的节点都将切换分叉。无论少数不良生产者会生产多少分叉区块也无关紧要,它们被纳入最长链的时间永远不会超过一轮。 最后不可逆块 当网络碎片化时,多个分叉有可能长时间持续增长。长远看最长的链将胜出,但观察者需要一种方法来确认一个区块是否确实在增长最快的那条链上。这可以通过观察来自2/3+1多数块生产者的确认来决定。 下图中,块B已被C和A确认,这代表了2/3+1多数确认。如果假设2/3的生产者是诚实的,我就可以断定没有其它链会比这个链长。 注意,这个“规则”类似于比特币的6个模块确认“规则”。有些聪明人也许可以设计一系列事件让两个节点最终出现在不同的两个最后不可逆区块上。这种案例要求攻击者能完全控制通信延迟,并且在几分钟内两次,而不只是一次,使用该控制。即便这真的发生了,最长链胜出的规则仍然适用。这种攻击胜出的可能性近于0,且经济影响微不足道,因此不足为患。 生产者法定人数不足 如果出现生产者法定人数不足的这种不太可能的情况,少数人还是可以继续出块。利益持有方可以把更改投票的交易也包括在区块里。这些投票可以选出一组新的生产者,将生产参与率恢复到100%。这样一来,少数链将最终超过其他参与率不足100%的链。 在此过程中,所有观察者都知道,在参与率超过67%的链形成之前,网络状态是不稳定的。选择在此条件下进行交易的人所承担的风险不亚于那些选择接受不到6个确认的比特币人。他们这样做的前提是他们认识到存在这样的小可能性,即共识也许最终在一个不同的分叉上建立起来。实际上,这种情况比接受少于3个确认的比特币交易要安全多了。 多数生产者舞弊 如果多数生产者变得腐败,那么他们可以产生无限数量的分叉,每个分叉都似乎有2/3多数确认向前演进。这种情况下,最后不可逆区块算法将回归到最长链算法。最长链就是为最大多数所批准的那条链,而最大多数将由少数剩下的诚实节点决定。这种行为不会持续长时间,因为利益持有方最终会投票换掉生产者。 交易作为权益证明(TaPoS) 当用户为一个交易签名时,他们会对区块链的状态做出一个假设。该假设基于他们对最近几个块的看法。最长链的共识发生的改变有可能使签名者之前的假设失效。 TaPoS所有交易都包含最近一个块的散列,如果该区块在链历史中不存在了,则这些交易就是无效的。任何在孤儿分叉上给交易签名的人,都会发现该交易无效且无法迁移到主分叉。 该过程的一个副作用是可以抵御试图产生替代链的长期攻击。每个利益持有方在交易时都直接对区块链做出确认。随着时间推移,所有的区块都是由所有利益持有方确认过的,而伪造链是无法复制这点的。 确定性生产者洗牌 在上面所有例子中,我们展示的都是区块生产者按循环调度出块。实际上,每出N个区块(N是生产者的人数),区块生产者集合都会洗牌一次。这种随机性确保块区块生成者B不会总是忽略区块生成者A,并且每当形成多个拥有相同数量生产者的分叉时,平局最终都会被打破。 结论 委托权益证明(DPOS)在任何一个我们能想到的自然网络断裂的情况下,甚至在大多数生产者舞弊的情形时都是强健的。 像其它一些共识算法,当大多数生产者不合格时,DPOS还是可以继续行使功能的。这样,社区可以投票替换掉不合格的生产者,直到恢复100%参与率。我认知范围内,没有任何其它renew算法可以在如此高强度和多变的失败条件下依然保持强健。 说到底,DPOS之所以有如此强大的安全性,是来自于其选择区块生产者和验证节点质量的算法。赞成投票过程可以确保一个人即使拥有50%的有效投票权也无法独自挑选指定哪怕一个生产者。DPOS的设计旨在优化强劲网络连接的诚实节点100%参与共识的机制。这使得DPOS能够在平均只有1.5秒的时间内以99.9%的确定性确认交易,同时以优雅和可检测的方式降级,从降级中恢复到正常也不过是小事一桩。 其它共识算法以网络连接条件差的不诚实节点为条件展开设计,这样设计的最终结果就是网络性能更差、延迟更高、通信开销高,而且如果有33%节点失效,该网络就会完全失效了。 在BitShares成功运行三年以及在Steem运行一年期间,我们见识了各种各样的网络状况和软件错误(bugs)。但DPOS都能成功全天候运行,显示出不仅可出色的维持共识,并可以处理远远多于其他区块链交易的能力。 Reference: DPOS早期描述: https://bitshares.org/technology/delegating-proof-of-stake-consensus/ 原文链接: https://steemit.com/dpos/@dantheman/dpos-consensus-algorithm-this-missing-white-paper 译者: Chris
  5. Welcome to comment on Delegates Announcements Platform Leave your criticisms, support delegates with great performance and disgrace those with bad intentions! Be consistent and proof your words by observable arguments!
×