Author Topic: DPOS潜在风险分析及改进方案(更多的候选代表+准备金+更严厉的惩罚机制+守夜人制度)  (Read 8806 times)

0 Members and 1 Guest are viewing this topic.

Offline HackFisher

  • Hero Member
  • *****
  • Posts: 883
    • View Profile
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline leeyt

  • Full Member
  • ***
  • Posts: 99
    • View Profile
酸饼的讨论见解深,而且全面。对于数字性的东西,比如比特币,比特股甚或数字化的交易中心,虽然涉及的行业、门类较多,但究其系统的实质,仍然是一个数学问题。我认为越是复杂,越是难于实现。这一点,犹如中国的法制,如果法律认定:杀人必偿命,事情就会变的简单的多,但如果杀人犯是否需要偿命,还要视情节而确定,那事情就会复杂起来,这中间最大的受益方即是警察和法官,因为情节如何它们可以任意判断。几乎可以断定的是,杀人案件会更多,而不是收敛。原因是,情节这一漏洞可被充分利用,即便处罚再严厉,也无济于事。酸饼为系统添加的构想恐怕会令系统更难构建。我尚未完全得知系统部分地引入中心化方案(姑且这么称呼)究竟为何,我猜不外乎解决两个问题,第一替换工作量证明模式,以利环保,第二,将虚拟世界的信用引入现实世界。我担心bm恐怕是出于后者的考虑,毕竟虚拟世界与现实的连接需要一个管道,没有这一管道虚拟世界没有意义。既然这样,此一管道应更多地考虑去除现实世界中的人的因素的考虑,即不应该采用股权的方式来替代工作量证明。


Sent from my iPad using Tapatalk

Offline nametooshort

  • Jr. Member
  • **
  • Posts: 46
    • View Profile
我认为是这样的,不晓得对不. 交易是广播给全网,但只有100个当前获得记账权限的节点NODE1- NODE100才接收交易清单,如当前轮到NODE 5 记账,记完块一发布,如果发现和其余51个节点对不上.
1.NODE5 发布的区块被否决;
2.NODE 5 被记大过 ,被踢出代表队伍.
3 NODE X马上生成新区块.
对上了把区快全网发布。

以上算法问题是,
1.51%攻击仍然有效.
2.如果实际控制了31% 节点.让别的40% 机器被DDOS攻击,是可以30台机器联合造假的. 实际概率很小(无IP记录,HASH值)。但时间久了,长期轮守的NODE,获取这些NODE IP是可能的。

我觉得系统还是应该有套应急机制, 建立分级候选代表制度(500NODE),这些代表平时可以接收交易清单缓存,记录但不记帐,对效率没有影响。一、随时进入100代表。二、是应急情况启动扩大代表投票(牺牲效率)。
1.新区块产生了60:40,或者80:20等反常情况。
2.10个以上的代表NODE无响应.
3.记帐记录3个以上节点出现相互混乱。
4 .连续轮换3个代表,多长时间,均不能产生新区快。

以上的阀值,触发应急系统,100个代表,扩大到600,替补代表参与区块产生,直到大于51% 达成一致。
你们都没考虑一个问题,DPoS是以区块为单位的,所以在不能产生区块或发生反常情况时还需要等下一个区块才能防止攻击所造成的影响。
兄弟,如果是挖矿,确实有这个问题。
如果是交易数据维护没问题, 我的意思是100个代表都保存了交易记录,但只有一个代表负责写,写完了区块广播出来,如果和100个代表中大多数的记录有差异,这个区块就被否决。
但是让整个网络接受踢出这个代表就需要下一个区块。
Even if writing Protoshare address in signature is not something good,
PvDZqsSyAsCDYNyYCfwZmy19EVohxnbnKB

Offline cdryan

  • Sr. Member
  • ****
  • Posts: 357
    • View Profile
我认为是这样的,不晓得对不. 交易是广播给全网,但只有100个当前获得记账权限的节点NODE1- NODE100才接收交易清单,如当前轮到NODE 5 记账,记完块一发布,如果发现和其余51个节点对不上.
1.NODE5 发布的区块被否决;
2.NODE 5 被记大过 ,被踢出代表队伍.
3 NODE X马上生成新区块.
对上了把区快全网发布。

以上算法问题是,
1.51%攻击仍然有效.
2.如果实际控制了31% 节点.让别的40% 机器被DDOS攻击,是可以30台机器联合造假的. 实际概率很小(无IP记录,HASH值)。但时间久了,长期轮守的NODE,获取这些NODE IP是可能的。

我觉得系统还是应该有套应急机制, 建立分级候选代表制度(500NODE),这些代表平时可以接收交易清单缓存,记录但不记帐,对效率没有影响。一、随时进入100代表。二、是应急情况启动扩大代表投票(牺牲效率)。
1.新区块产生了60:40,或者80:20等反常情况。
2.10个以上的代表NODE无响应.
3.记帐记录3个以上节点出现相互混乱。
4 .连续轮换3个代表,多长时间,均不能产生新区快。

以上的阀值,触发应急系统,100个代表,扩大到600,替补代表参与区块产生,直到大于51% 达成一致。
你们都没考虑一个问题,DPoS是以区块为单位的,所以在不能产生区块或发生反常情况时还需要等下一个区块才能防止攻击所造成的影响。
兄弟,如果是挖矿,确实有这个问题。
如果是交易数据维护没问题, 我的意思是100个代表都保存了交易记录,但只有一个代表负责写,写完了区块广播出来,如果和100个代表中大多数的记录有差异,这个区块就被否决。
« Last Edit: April 07, 2014, 04:28:36 am by cdryan »

Offline Overthetop

大家都很热心,也很有热情啊。 赞  :) +5%

我个人的愚见是最好先让BM做一个版本出来,看测试版本的实际运行状态再做考量。

软件的功能复杂性和系统稳定性往往是成反比的关系,只有在实践中才能找到一种平衡。

对于新出不久的DPOS白皮书,我觉得只是作者本人一个哲学性和方法论上的大致描述,再加上BM一直都比较忙,我判断他不太可能把他自己对这个机制的所有逻辑性理解都写上来,只能是轮廓版本。

所以,我觉得现在对于这个新的DPOS协议探讨太细致的东西可能不一定有好的效果。

因为到目前为止,大家所探讨的对象本身都是模糊的,所以很难进行恰切的评论。

我个人鼓励不受限的创新理念,只是在这个阶段,我建议先让BM把原型做出来,大家跑一跑看,到时候再做细致入理的互动和反馈也不迟。

见笑了...
 :)
个人微博账号: Overthetop_万里晴空
“块链创新与创业”交流群: 330378613

Offline angrywinds

  • Full Member
  • ***
  • Posts: 116
    • View Profile
我个人觉得dan和楼主已经走向中心化的道路了,为了保证公正,去中心化导致效率低下在一定情形下这是无法避免的,就跟国家一样,多党派竞争必然导致内耗,中央集权长久专政肯定要更高效,但是剩下的人只能指望每一个皇帝是好皇帝,而且皇帝换太频繁肯定也不好,政策变换会频繁,但是10个好皇帝后摊上一个昏君,这个国家也许也就完了,风险导致的结果可能是毁灭性的,因此个人认为出块机制的健壮性是第一要素,即便它效率低下,当然很有可能出现的情况是可能无法实现真正的去中心化。代表制是一种妥协,可以看作半中心化,一旦觉得这种方式的交易速度还不够快,那么剩下的选择可能更加偏向中心化了,是做一个有限 的妥协还是以后毫无底线的不断妥协,就看3I的节操了。楼主的方案只是在为代表制打补丁,且不说协议会过于复杂,可能存在更多的漏洞导致需要更多的补丁,很有可能发展到最终变成一般人都无法理解,更多的人只能纯粹信任这个协议是公平的,这样即便有漏洞可能也会短期内无法找出来。
btsid: btcshares

Offline nametooshort

  • Jr. Member
  • **
  • Posts: 46
    • View Profile
我认为是这样的,不晓得对不. 交易是广播给全网,但只有100个当前获得记账权限的节点NODE1- NODE100才接收交易清单,如当前轮到NODE 5 记账,记完块一发布,如果发现和其余51个节点对不上.
1.NODE5 发布的区块被否决;
2.NODE 5 被记大过 ,被踢出代表队伍.
3 NODE X马上生成新区块.
对上了把区快全网发布。

以上算法问题是,
1.51%攻击仍然有效.
2.如果实际控制了31% 节点.让别的40% 机器被DDOS攻击,是可以30台机器联合造假的. 实际概率很小(无IP记录,HASH值)。但时间久了,长期轮守的NODE,获取这些NODE IP是可能的。

我觉得系统还是应该有套应急机制, 建立分级候选代表制度(500NODE),这些代表平时可以接收交易清单缓存,记录但不记帐,对效率没有影响。一、随时进入100代表。二、是应急情况启动扩大代表投票(牺牲效率)。
1.新区块产生了60:40,或者80:20等反常情况。
2.10个以上的代表NODE无响应.
3.记帐记录3个以上节点出现相互混乱。
4 .连续轮换3个代表,多长时间,均不能产生新区快。

以上的阀值,触发应急系统,100个代表,扩大到600,替补代表参与区块产生,直到大于51% 达成一致。
你们都没考虑一个问题,DPoS是以区块为单位的,所以在不能产生区块或发生反常情况时还需要等下一个区块才能防止攻击所造成的影响。
Even if writing Protoshare address in signature is not something good,
PvDZqsSyAsCDYNyYCfwZmy19EVohxnbnKB

Offline cdryan

  • Sr. Member
  • ****
  • Posts: 357
    • View Profile
我认为是这样的,不晓得对不. 交易是广播给全网,但只有100个当前获得记账权限的节点NODE1- NODE100才接收交易清单,如当前轮到NODE 5 记账,记完块一发布,如果发现和其余51个节点对不上.
1.NODE5 发布的区块被否决;
2.NODE 5 被记大过 ,被踢出代表队伍.
3 NODE X马上生成新区块.
对上了把区快全网发布。

以上算法问题是,
1.51%攻击仍然有效.
2.如果实际控制了31% 节点.让别的40% 机器被DDOS攻击,是可以30台机器联合造假的. 实际概率很小(无IP记录,HASH值)。但时间久了,长期轮守的NODE,获取这些NODE IP是可能的。

我觉得系统还是应该有套应急机制, 建立分级候选代表制度(500NODE),这些代表平时可以接收交易清单缓存,记录但不记帐,对效率没有影响。一、随时进入100代表。二、是应急情况启动扩大代表投票(牺牲效率)。
1.新区块产生了60:40,或者80:20等反常情况。
2.10个以上的代表NODE无响应.
3.记帐记录3个以上节点出现相互混乱。
4 .连续轮换3个代表,多长时间,均不能产生新区快。

以上的阀值,触发应急系统,100个代表,扩大到600,替补代表参与区块产生,直到大于51% 达成一致。
« Last Edit: April 07, 2014, 12:35:40 am by cdryan »

Offline checkie

  • Full Member
  • ***
  • Posts: 162
    • View Profile
楼主想法很好,但我怎么看都象是要在btsx中做一个最高法院一样的东西,可能是未来的趋势,但目前难以驾驭这么复杂的系统,目前阶段,我想说,简单是美

Offline sfinder

  • Hero Member
  • *****
  • Posts: 1205
  • 4 Cores CPU+100GB SSD+anti-DDoS Pro
    • View Profile

这样啊
那就放心了 :'( :'( :'(
我还以为造了块马上就生效了无法被推翻

帅熊,你们想法真不错,BM已经考虑过你们提出的因素,英文区有很多解释的帖子。
https://bitsharestalk.org/index.php?action=profile;area=showposts;u=5

目前我考虑的是如果我贿赂投票者,那么我很容易拿到代表权。当然这也不见得对bts网络有害,因为这个代表权就是个哨兵而已,没有什么权力。即使取得51%的代表权也无法发动有效的攻击。分分钟都可能被踢,如果有违规行为
微博:星在飘我在找|BTS X 受托人delegate ID:baidu
中国教育书店合作将20%收入捐献给贫困山区学生。
Cooperating with China Education Bookstore and will donate 20% of delegate income to the poor students

Offline kimpeady

  • Full Member
  • ***
  • Posts: 68
    • View Profile
我认为代表应该数量可变(不一定100个),有隐蔽性(无法将代表们一起攻击掉),可快速轮换(即使很多代表突然出问题也可立即不上)

数量可变,是个可被攻击的点。
代表是50个,500个,这都不是大问题。关键是要数量固定。
隐蔽性,已经解决了。
快速轮换,已经解决了。
请参考白皮书。

觉得 区块在全网接受前,出问题几分钟内就可以轮换代表节点,也就很安全放心了
BTS真难玩

Offline Musewhale

  • Hero Member
  • *****
  • Posts: 2881
  • 丑,实在是太丑了 !
    • View Profile
代表是有权力,但是这个没任何用处的权力——你每个细小动作都在N个聚光灯实时审查之下,一旦发现,分分钟踢掉。
DPOS 还没 Low 到把真正的权力集中起来。
反观 POW,谁有算力,谁有记账权。他围规了,全网“所有”节点最多否决掉这个块,但不能踢出有作恶前科的记账者,因为他有算力。这才是问题。

cool,你说的分分钟具体是指多少?
是立刻、马上的几秒钟内? 还是几分钟以后?
这个分分钟被踢掉的时候,后果是还没有产生还是说已经产生后果之后?

我希望达到的效果是在他作恶的行为即将产生正式的结果之前,能踢掉吗?

这跟比特币一样,你造出一个不老实的块,就被全网否决了,这个块就无效了。

这样啊
那就放心了 :'( :'( :'(
我还以为造了块马上就生效了无法被推翻
MUSE witness:mygoodfriend     vote for me

Offline coolspeed

  • Hero Member
  • *****
  • Posts: 536
    • View Profile
    • My Blog
我认为代表应该数量可变(不一定100个),有隐蔽性(无法将代表们一起攻击掉),可快速轮换(即使很多代表突然出问题也可立即不上)

数量可变,是个可被攻击的点。
代表是50个,500个,这都不是大问题。关键是要数量固定。
隐蔽性,已经解决了。
快速轮换,已经解决了。
请参考白皮书。
Please vote for  delegate.coolspeed    dac.coolspeed
BTS account: coolspeed
Sina Weibo:@coolspeed

Offline coolspeed

  • Hero Member
  • *****
  • Posts: 536
    • View Profile
    • My Blog
代表是有权力,但是这个没任何用处的权力——你每个细小动作都在N个聚光灯实时审查之下,一旦发现,分分钟踢掉。
DPOS 还没 Low 到把真正的权力集中起来。
反观 POW,谁有算力,谁有记账权。他围规了,全网“所有”节点最多否决掉这个块,但不能踢出有作恶前科的记账者,因为他有算力。这才是问题。

cool,你说的分分钟具体是指多少?
是立刻、马上的几秒钟内? 还是几分钟以后?
这个分分钟被踢掉的时候,后果是还没有产生还是说已经产生后果之后?

我希望达到的效果是在他作恶的行为即将产生正式的结果之前,能踢掉吗?

这跟比特币一样,你造出一个不老实的块,就被全网否决了,这个块就无效了。
Please vote for  delegate.coolspeed    dac.coolspeed
BTS account: coolspeed
Sina Weibo:@coolspeed

Offline Musewhale

  • Hero Member
  • *****
  • Posts: 2881
  • 丑,实在是太丑了 !
    • View Profile
是不是该引入类似银行的大额和小额交易管理制度。

要求快速确认的往往是一些小额支付,如价值100美元以下的,这样可以用较快、较不安全的方式进行确认,而大额的必须用较慢又较安全的方式确认,这样即使大户想作恶,在被人发现前造成的影响也不会太严重。

至于具体金额的确定,可以按系统总价值动态生成,比如系统总价值1万美元,那么快速确认的金额就是1%即100美元以下,如此类推。

我觉得这个可能和金额关系不大,安全不安全不能以金额来考虑,就算是一分钱,也必须得想办法让他完全安全啊

另外,假设按照大小金额之分,真要搞的话他也可以把大笔的金额拆散成数个小额的进行,也管不到他 :P :P :P
MUSE witness:mygoodfriend     vote for me