Algorand,算法又好又快?

作者: 02b657fe74cd | 来源:发表于2019-06-22 16:35 被阅读4次

    algorand,近期的热门话题,它有两个与众不同的地方,一是宣称在解决不可能三角的问题上取得了突破,二是有兜底的荷兰式拍卖。

    币圈的人喜欢来头大,技术新,商业运作(炒作)优秀的项目,algorand,符合这几点,我们一看,图灵奖的名头,一出手就上了22家交易所。

    Algorand是由麻省理工学院(MIT)教授、哥德尔奖(GödelPrize)得主、图灵奖(TuringAward)得主SilvioMicali领导开发的一个区块链项目 。该项目成功募集到了一笔400万美元的种子轮融资,投资方包括知名风投Pillar和UnionSquareVentures。

    大部分人喜欢并参与的是它的荷兰式拍卖,介绍这个的文章很多,资金的博弈非常复杂,go哥这里就不具体描述了,只提几点看法。

    1、algo的SM价$0.05,6月20日的拍卖价为$2.4,交易所现价2.7$,参与SM的人可以变现获得巨额回报,这场游戏SM赚得盆满钵满,不管是什么样的花式玩法,后面参与的人已经失去先机。

    2、项目方承诺参与拍卖的人,对其投资有90%的回购兜底。这个即使可信,假如algo不涨价,将资金在币圈锁仓一年,再拿回来大部分,是否划算?

    3、该项目准备发行代币是100亿,计划拍卖30亿(体量大),分5年拍卖完毕,每月两次,每年拍卖6亿代币,一年后市场上至少有6亿代币,按现价算将近120亿市值。拿什么来支撑这120亿市值?

    在币圈,人们习惯了炒作,这个拍卖吸引了大量的中国玩家。

    这里讨论下它的共识层面,试着去分析它在技术上的亮点是否真的靠谱。

    区块链“不可能三角”,也称为“三元悖论”,就是指区块链网络无论采用哪种共识机制来决定新区块的生成方式,皆无法同时兼顾扩展性(Scability)、安全性(Security)、去中心(Decentralization)这三项要求,至多只能三者取其二。可简单地理解为性能(效率)、安全和去中心化三者不能同时满足。而algorand宣称打破了这一“不可能三角”。

    打破这个不可能,有没有可能?

    授权拜占庭容错算法:是基于持有权益比例来选出专门的记账人(记账节点),然后记账人之间通过拜占庭容错算法(即少数服从多数的投票机制)来达成共识,决定动态参与节点。dBFT可以容忍任何类型的错误,且专门的多个记账人使得每一个区块都有最终性、不会分叉。

    在区块链版块有一个基本的共识就是要达成小范围的共识,拜占庭容错算法是好用的,因为不涉及挖矿,所以速度会非常快。而对于大范围共识,POW是唯一一个被验证可行的算法,比特币运行了这么久就是例子。但是POW昂贵且低效。 Alogorand要打破的就是这个矛盾,要做出又快又广的共识。

    共识要想快,基本思路就是要先选取出代表,由代表来进行交易确认,打包出块等工作。被人诟病的EOS,采取的就是这种模式,通过网络投票选举出21个大节点,大节点参与网络的工作并同时获得增发的EOS激励,这种模式获得了性能,但中心化程度较高,同时因为节点比较固定,很容易被攻击,也就是安全性能低。

    EOS可以理解为牺牲了部分去中心化和安全性获得了性能。

    algorand的Micali认为,工作量证明机制,权益证明机制,本质上是在找由谁来生产区块这件事。比特币网络中,区块的生产是市场上算力博弈的结果,比特币运行了这么多年,用算力和工作量保证了谁来生产区块是不可预测的。在EOS网络中,生产区块由持有大量EOS的节点来进行。在BTC和EOS网络中,由谁来生产区块,成本是高昂的。

    algorand,中心思想是用密码学的方法搞个随机数产生器,其本质是通过密码学的方法,来做一个随机数发生器来随机决定下一个区块的生成者是谁。如果这个随机数发生器是完全随机的,也就是说,任何人都无法预测下一个的发布者是谁。rand,就是随机的意思。

    algorand项目的技术核心就是其密码学的随机抽签,先随机选择一个小组一次性用户作为共识节点,节点根据POS机制具有一定权重——这一权重使得无成本的攻击难以进行,再让选出的生产者根据改进的拜占庭共识协议发布区块。因为随机生成的参数无法被预测和操纵,因此任何节点都不能预测未来的某个区块的生成者。这种理论下,既保证了共识的运行效率,同时实现了去中心化和容错性。

    在 Algorand 中,共识机制分为两个步骤:

    1)随机选举区块生成者生成区块;

    2)随机选出 1,000 人验证区块,形成共识。

    有关Algorand的资料里提到,交易很快就会清晰明了,因为交易是直接的和最终的,参与者不必等着知道是否他们的交易已经被永久地添加到区块链中。一旦一个区块出现,参与者就可以立即依赖它所包含的交易,他们可以相信区块将永远是链的一部分,这意味着它们接收的值是安全的。

    主网是这样描述的,看下图。

    algorand的技术比较烧脑,go哥也没去细看,但go哥认为algorand有点理想化了。

    1、algorand没有通证的激励机制,打包没有奖励。这就又回到了币与链是否能分割的问题。

    我们知道比特币每生成一个区块就发放若干枚比特币作为奖励,吸引矿工提供算力来验证链上交易,今天散户手里拥有的每一枚比特币都是通过这个方式来的。如果没有币的奖励,谁有动力去打包,去做相关的工作?没有币,一般人根本不会去关心linux和mysql是啥东西。没有币,区块链技术跟我们有什么关系?没有币,如何调动离散化的人员做出相应的贡献?

    所以algorand做为技术的尝试,做试验OK,得到很多知识分子的支持也OK,但能否大规模的推广就值得怀疑了。缺少奖励的区块链,很难吸引到足够的参与者。

    2、algorand共识算法的操作性。

    algorand的共识无固定时间间隔,考虑到网络延迟及用户的硬件配置不同,如何保证每个节点执行共识流程的步调一致?在最差的网络状况下达成共识需要11步之多,这么多的步骤,如何确保准确的执行,预估的超时时间怎么算?

    因为技术烧脑,是否天然与大众绝缘?能够面向大众的共识,一定是简单易懂且容易操作的。

    3、产生随机数算法的安全性问题存在担忧。

    综合起来,依然是鱼和熊掌兼得的故事。

    在现实中大规模的共识达成,本身就是费时且昂贵的。我们要得到一样东西,就必然会失去另外一些东西,凡事皆有成本,没有付出的得到是不可靠而且也是不安全的。algorand又好又快的算法,或许只存在于小范围的试验之中。

    相关文章

      网友评论

        本文标题:Algorand,算法又好又快?

        本文链接:https://www.haomeiwen.com/subject/blfmqctx.html