密码极客 | 国内最权威的区块链技术创投社群

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

YASUdaYASUda 2018-12-17 8,572 次 收藏0

昨晚十点刚结束的分享,今天早上就有很多朋友来找密码极客要文章了。

为啥这么积极?

这可是硅谷最火的区块链项目,而且第一次来国内线上分享,这份整理文稿没有人手一份都说不过去了。

毕竟Dfinity是公认的区块链下一代,而且密码极客邀请团队创始成员分享的也是核心技术。不止分享,就连后面的问答也围绕通讯委员会、治理模型等专业话题。

错过这一次,你可能就要再等明年的密码极客和Dfinity合作了。悄悄地说,密码极客在明年三月份会有大动作。

如此“技术范”的直播,当然也离不开密码极客的提问嘉宾:

吕晟珉:TAS联合创始人&CTO,浙江大学应用数学系博士毕业。

刘星:恺英网络高级总监,曾任迅雷“玩客云-链克”项目负责人,主导区块链商业落地和“迅雷链”的核心设计、技术落地。

在放出Dfinity分享文稿前,密码极客依然要感谢Pickin小姐姐的翻译帮助。Pickin是一家全球资产数字化服务平台,致力于全球化服务,将从全球选取分析优质项目,全球项目一小时直达,将于2018年12月24日上线。届时请关注www.pockin.me 。

能够一次次撬动全球顶尖项目来国内分享,密码极客也在直播过程中得到了很多小伙伴的称赞,夸我们工作扎实又可靠。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

分享正式开始

DFINITY是一个全球各地均可访问的分布式计算机,提供一种全新的方法来创建网页应用、主网站、及业务运营。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

DFINITY是一个由矿工创建的互联网计算机,矿工通过互联网运行“节点”以赚取代币。同时,它为传统市场提供了一种解决方案,解决了区块链市场的所有特殊需求。

DFINITY能够满足所有软件系统的运行环境,实现软件部件间便捷的相互操作。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

如果你之前不了解DFINITY,我简单给大家介绍一下我们的团队。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

DOMINIC WILLIAMS:主席&首席科学家,发明了核心的DFINITY技术;

BEN LYNN:高级研究员&工程师,BLS密码学创始成员之一;

TIMO HANKE:工程主管,发明了ASIC Boost ;

MAHNUSH MOVAHEDI:高级研究员&工程师, 设计了Rapid Chain——全分片式的高速区块链协议;

ANDREAS ROSSBERG:高级研究员&工程师,联合设计了WebAssembly。

构架基础&委员会

当然,DFINITY内含多项创新,下面我们来看阈值接力(可验证随机函数)和概率插槽协议。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

权益证明:DFINITY的每个节点质押固定的代币。因此“挖矿”网络中的所有参与者人人平等,该协议适用于所有参与者。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

DFINITY 无处不在的随机性能够影响下一区块的出块者,为网络参与者指派特殊角色,其中包括:构建分区、创建随机性、建立区块。这使得DFINITY能够在应用层作用广泛,包括赌博、交易订单、游戏。

因为我们知道都有哪些节点参与网络,那么假设几乎所有的节点都在线,我们就可以随机指派任务给节点,并保证任务的正常执行。

以上就是DFINITY的架构基础,今天我们将解释随机性在随机数产生和区块生产中的作用(备注:在描述“selection of blockmakers(区块生产者的选择)”时,避免使用确定性词汇(此处的selection就是一个反面例子,因为区块生产者不是通过选择产生的))。

随机性在分片及其他领域都用处颇丰,但我们今天不讨论它,因为DFINITY的分片模型还处于研究阶段,其基本组成要素详见DFINITY官网问答区。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

这里我要说的是委员会成员。每轮都会存在委员会成员,他们的计算机团队创建随机,每一轮从委员池中选取一位新委员会成员。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

委员会是DFINITY的核心组成,可避免出现独断。任何时间,网络中都有一群活跃的委员会成员。每个委员会均由接入网络的节点随机组成。一个节点可加入多个委员会。在今天最后的视频演示中,各位将看到在一个节点加入多个委员会的具体案例。

请知悉,DFINITY采用权益证明(POS),因此平台知晓所有的节点,并能对下线的节点进行惩罚。

出于部分原因考虑,该部分不做详解。委员会成员需提前选出。

随机数&阈值接力

给大家说个新概念: 随机数和阈值接力。

设想一下在你打扑克的时候,你需要确保玩家无法预测或操控发出的扑克牌,因此才需要公开洗牌,可验证性随机函数就类似于洗牌这个过程,在去信任的节点网络中随机挑选“玩家”。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

使用阈值加密来创建可验证性随机函数。假设你有2把家里的钥匙,一把用来开门,一把用来锁门。你可以放心的将锁门的这把钥匙交给任何人,毕竟没人关心别人是否能上锁你的门,但重点是,只有你一个人可以开门。

公钥加密与数字签名有类似的地方,但相比之下更抽象。你有2把钥匙,一把用来签名,另一把用来验证签名。在确保只有你一人能签名的情况下,如果他人能帮你验证签名,这将是个不错的事情。这就是“公/私钥加密”的出处。用来签名的钥匙必须是私密的。

阈值加密也是类似的概念,但有一点不同:用来签名的私钥被分成多片,每片都能创建签名的一部分。能凑成完整签名的片段可与公钥一起用来验证。在DFINITY中,该执行仅需大部分人参与。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

我们将在随机数灯塔中使用这一签名。这张图片显示了使用公钥加密及阈值加密的签名过程。

至此,我们尚未讨论到阈值签名的一个惊人特点,那就是,不管用哪部分的签名片段来创建签名,最终得到的签名都是一样的!!!简直不可思议!!!

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

这里举个简单的例子,数字签名本质上就是一种教科书式的经典乱码,如果没有人事先知道创建它们的内容,没有人知道数字签名长什么样。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

每个委员会有一把公钥,每个委员会成员有一个私钥碎片。

委员会是持有与公有密钥对应的私有阈值密钥片段的群体。

如果你好奇我们为什么提前选择委员会,那是因为非交互式生成阈值密钥对的计算成本相对较高,因此,就没有人能知道其他人的私钥片段了。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

这是随机数灯塔的生成。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

既然已经知道了阈值接力是如何运转的。我们从随机性的来源开始。用它来选择一个委员会,然后通过委员会成员签署来选择随机的委员会。

阈值签名将被用来选择下一个委员会(记住我们只需要大多数的委员会成员,且单个委员会成员此时无法影响签名的创建)。

这一过程将无限循环下去。

委员会还有另一个角色,那就是签署区块,但首先让我们看一下运行中的网络。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?
错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

对比比特币的10分钟出块速度,我们只要几秒钟就能出块。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

既然我们有了委员会和随机性的来源,就很容易就区块消息达成共识。

协议具有连接到网络所有节点的列表,可结合随机数灯塔,来输入和输出一个随机排序的列表。

节点可以在创建和广播区块之前自己决定等级。 这节省了计算和网络资源。我们刚刚看到创建随机数的委员会同样也有签署区块的工作。

每一个委员会的成员都要遵循同样的规则。

他们接收到一个区块,如果该区块无效,则会将其丢弃。如果有效,则检查其等级。如果等级低于他们之前收到的区块,他们就会丢弃它。如果等级更高,他们会使用私钥片段对其进行签名,并广播该区块和签名片段。

一旦区块收集了必要数量的可创建完整和可验证签名的签名片段,则其被视为“已公证”区块,并将被添加到链中。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

这就是阈值接力如何允许我们通过概率插槽协议来签署区块。

错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?
错过再等一年,硅谷最火的DFINITY在密码极客透露了什么?

这是我今天的讲话分享,感谢大家的收听。可以通过dfinity.org/jobs加入我们,或者通过arthur@dfinity.org直接联系我们,如果你想了解更多的Difinity,可以通过subject:Autoresponder了解。

Q&A

吕晟珉

Q:我是TASchain的吕晟珉,看了dfinity的技术白皮书后有几个问题想向Arthur请教。

从DFINITY技术白皮书可知:一个委员会成员会达到400人,而通讯量是O(n^2)的会很大。请问实际测试网络的通讯量具体是多少?difinity官网写节点网络配置需要50MB的上行速率。

A:我没有确切的数据。基本系统开销很低,因为这些节点之间需要交换的只是区块头(存储区块的头信息)和默克尔树(一种数据结构),在此过程中需要包含几个块。

我们期望需要一个强大连接的原因不是为了网络操作,而是因为这些节点将被要求为用户提供和接收数据。

Q : DFINITY的委员会建组策略具体是什么?如何避免某个时刻,同一个用户注册大量id来申请加入委员会,从而控制超过51%的委员会组员,即可控制整个委员会决议。

A : 我不是很清楚第一个主题。块创建者是随机选择的,其输出由节点库的随机样本验证,因此具有很高的安全性。我们有一个专注于开发高性能网络层的内部团队。我们投入了大量的资源来优化P2P层。

因为用了POS所以需要抵押金,这是不可能的事情。

Q : DFINITY的经济激励制度是什么?门限签名只需部分组员参与既能完成最终签名,铸块奖励是按组的,还是实际落实到具体参与签名的个人?

A : 这是个很好的问题。是的,我们有经济激励制度。具体内容还有待公布,我们计划既奖励委员会也奖励区块生产者

刘 星

Q : 在治理模型方面Dfinity与Tezos和Polkadot有什么区别和优势?

A:Tezos有一个动态治理机制。Dfinity和Polkadot仍然在发展他们的计划。我今天只能说这么多,也就是他们的建立在一定程度上是基于代币持有人的投票。

Q : Dfinity 实现无限容量的关键难点在哪里和解决难点的思路?

A : 这个问题很有挑战性。有很多方法。分片、侧链和状态通道。DFINITY的策略是用所有工具来进行扩容。部分细节详见dfinity.org/faq。

Q : Dfinity、Algorand和Thunder这三个项目的共识体系有什么异同?Dfinity最大的特色或者优势是什么?

A : 尽管这些项目非常优秀,但DFINITY提供了最短的出块时间。我会找出每个人的不同。

Algorand在区块已经广播后才选择出块人,增加了网络开销。

Thunder采用了一种传统实用的拜占庭式容错共识,当区块生产者拒绝服务器攻击后,Thunder允许网络减慢或者停止服务。因为区块生产者是预先知道的。(这比我刚才描述的要复杂得多)。

DFINITY不会选择一个出块人,它只是决定出块人可能是谁。这可以防止DOS攻击,还可以减少网络开销。

(由于全程英文分享,所以还有一些没有翻译清楚的内容。当然我们把昨晚的分享录音上传到了喜马拉雅FM,大家搜索“密码极客”即可。)

【密码极客】是一群来自前蚂蚁金服、阿里的工程师和阿里创业帮一起发起的区块链技术创业社群,也是杭州最大的区块链技术人才社群。截至12月,社群阿里技术人员超过2000位,社群成员超过8万。

本文系作者个人观点,转载请注明出处!
喜欢 0
支付宝扫码打赏
微信打赏

相关文章

更多

发布评论

共0条评论