IOTA基金会:2020年1月研发进度报告

2020年1月

新年的开始是一个回顾过去,展望未来的时刻。这是我们评估挑战和机遇、继续规划前进道路的时刻。在我们每月研究状态更新的第二部分中,我们提供了关于上次更新中所列组件的进一步信息。我们对2020年感到非常兴奋!


Berlin Summit柏林峰会

12月,我们在柏林举行了另一次研究高峰会议,在那里,各小组互相沟通,分享了他们的成果,并讨论Coordicide项目的下一步计划。尽管还有一些规范需要编写,但是目前项目的总体状态是,我们已经解决了第一个Coordicide版本所需要解决的所有问题。对此,我们想回答几个肯定有很多人在问的问题:

我们离原型还有多远? 不是很远!我们已经逐步将Coordicide的组件应用到原型当中。在GoShimmer成为一个“完整的”原型之前,还有两个组件需要进行编码实现。即:随机数生成器(RNG)和mana机制(参见下面的状态更新)。

接下来还有那些工作? IOTA协议不是“最终产品”,而是一个不断发展的项目,这对任何人来说都不奇怪。Coordicide的第一个版本将针对IoP (Internet of People),从那里我们将改进必要的部分,以满足物联网的需求。Coordicide的基本问题已经被回答了,Coordicide v1 来了!剩下的研究问题包括:细胞自动机投票、分片sharding机制(我们更愿意称之为“slicing”)、Arrow autopeering和VDFs。虽然我们过去的研究已经在这些课题上取得了很大的进展,但它们对最初的Coordicide版本并不重要。因此,我们当前的重点是交付Coordicide的工作版本,以便完全实现IOTA网络的去中心化。实现这一目标后,我们将把全部注意力转向物联网方向的下一步。

下一步我们要做什么? 在节后的这个季度,我们的研究小组将全力以赴完成我们的原型工作,并最终确定“研究”和工程规范。我们现有的研究为许多杰出的组件编写合适的规范提供了合适的基础。一些去协调器以后的主题仍然需要进一步的研究。查看当前的“现状”,我们可以看到项目是如何工作的,我们只需要填写一些细节并将我们的工作发送到开发环境中。我们对进展的速度感到非常兴奋!


Coordicide 白皮书

修订后的Coordicide白皮书在假期前刚刚完成,并将其发送给研究委员会成员和其他学者进行一些“内部”审查,为明年年初的公开发布做准备。当然,许多更新的概念和方法已经在IOTA.cafe上进行了讨论,因此本文的内容对于那些密切关注IOTA研究的人来说已经很熟悉了。但我们期待公众对已编制的白皮书的反馈。

我们对基本解决方案进展的总体评价是,没有出现任何重大意外。我们的许多最初的假设已经被证实,我们将继续跟进检验预期的Coordicide。当我们发布更新的白皮书时,请继续关注我们的博客更新。


研究小组更新

在我们的柏林会议上,我们对研究(小)组的机构进行了一些调整。目前这些小组的表述如下:“网络Networking”、“分布式RNG (dRNG)”、“GoShimmer实现”、“快速概率一致性(FPC)”、“Mana和自动互联与协议”。下面,我们提供了来自这些团体的一些更新。

*Networking.* 以前的速率控制(rate control)团队已经被“重新命名”为网络(networking),因为它目前正在处理多个任务,所有这些任务都与IOTA的网络方面有关。在上个月,我们主要集中在最后确定一些关于Tangle的反垃圾邮件机制的文章。譬如:(基于译者翻译功底有限,对原文中的学术论文部分不做翻译。)

此外,我们正在为Coordicide设计拥塞控制算法:当需求(即交易的数量)增加时,节点必须根据客观标准对某些事务进行排序和过滤。我们还实现了一个Python模拟器来测试提出的算法并调整相关参数。

*dRNG.* 我们决定在研究部成立一个新的研究小组。新组称为“dRNG组”,其主要目标是为IOTA网络提供合适的分散随机数生成器(dRNG)。由于FPC共识机制的需要,dRNG是Coordicide的一个必要部分。该小组将对现有的dRNG各种解决方案,比如drand,它被熵联盟等使用,而后者是一个已经在运行的分布式随机信标。我们已经开始在这篇博客中描述drand如何适合在IOTA中使用 。我们将改造和发展分散随机数发生器,以优化IOTA网络。目前,最有希望的备选方案似乎是一个组合的现有解决方案的基础上drand分散委员会选择的声誉(mana)系统。

*GoShimmer Implementation.* 研究团队已经为下一个支持0值事务的GoShimmer版本完成了新核心模块的集成:

  • Autopeering: 自动对等点发现和基于距离的邻居选择
  • Gossip: 用于发送和接收新事务的网络层
  • Rate control: 一个临时的基于非mana的速率控制来限制垃圾交易的泛滥
  • API: 接口发送0值事务并查询网络

我们特别关注这些组件的可靠性,账本状态和投票层的集成来支持非零值交易,这可能是我们后续发布的版本的主要目标。

按照路线图中的计划,我们将在本月发布GoShimmer的更新。

*FPC.* 我们模拟研究了mana对FPC性能的影响。所获得的结果为如何改进意见定稿和使协议更稳定提供了有价值的见解。 我们还发布了一篇关于狂暴攻击检测的博客文章,这篇文章表明,诚实的节点可以积极地相互参与,以识别并将遵循狂暴攻击策略的恶意节点列入黑名单。在FPC中,到目前为止,节点对查询的响应是未检查的,这允许攻击者有更大的自由来影响协议的安全性。在最严重的情况下,我们称之为狂暴攻击。初步研究表明,该检测方法的通信开销是可控的,可以作为一个可选的附加实现,使协议更安全。

*Mana and Autopeering.* 这个团队本月进行了一次重组,并决定将人力资源集中在Coordicide的第一版上。我们的第一个决定是关于mana系统的许多研究版本中的哪一个将被使用,这个带有一些细节的决定已经在新版本的白皮书中指定了。虽然mana系统已经被很好地定义,并且许多讨论使我们对它有了一个很好的总体理解,但是mana将如何被协议的其他部分使用仍然需要被明确和模拟。在接下来的一个月里,该小组将专注于通过节点快速计算法力值,编写适当的规范,并定义法力值将如何与Salt和Autopeering等一起使用。我们已经和GoShimmer小组讨论了我们的想法,我们希望很快进行模拟,这样我们就可以对所有剩下的问题做出最后的决定。

*Protocol.* 在过去的一个月里,协议团队主要关注三个主题:

IRI 应用: 我们已经知道,为了提高网络性能和安全性,有许多来自Coordicide(或源自Coordicide讨论)的想法将在IRI中实现。协议团队负责与开发和工程团队进行这样的沟通,在一个月中,我们经常向他们提供所需的所有信息,包括新的URTS提示选择、里程碑选择和冲突白旗。这些变化将消除当前网络的许多瓶颈,该团队非常期待看到这些变化的实现。

Tangle中的时序: 在这个月里,我们讨论了很多关于共存于Coordicide中的不同的时间系统。其中最重要的是将在网络的其他部分广泛使用的时间戳系统(声明发布时间的签名值)。还讨论了检查点的使用,它对于简化各种情况(如快照)非常有用。我们目前正在继续讨论何时信任时间戳。在这方面,最好的办法是使用目前正在讨论的“知识等级(Levels of knowledge)”系统。

节点接收到交易时发生了什么?: 该协议包括节点接收到的传播事务需要经过的几个步骤,如签名验证、速率控制、拥塞缓冲区、分类状态计算、投票、传播和BelowMaxDepth标准。我们现在有了关于所有这些步骤的足够信息,因此我们能够确定如何在协议中以最小化计算开销的方式组织这些“阶段”。这个任务引出了另一个有趣的问题:在接收到事务之后,节点何时应该将该事务作为Tip包含在其Tip选择中?答案很简单:当它不再被投票讨厌(disliked)时。为了对此给出一个客观的标准,我们将再次利用知识等级的相关概念。


在下个月,该小组将继续与IRI小组合作,进一步发展“知识等级”方法。

*CA.* .最终,我们提醒大家,我们决定不在v1的Coordicide中启用CA。仿真结果表明,在Coordicide的初始版本中,仅FPC就足以满足网络的需求。我们仍然对开发CA非常感兴趣,并将在适当的时候进行启动。

我们希望这个更新能带来帮助。与往常一样,您可以通过我们的Discord服务器的#tanglemath频道了解IOTA研究团队的最新情况。欢迎您在我们的公共论坛IOTA.cafe上关注并参与我们的技术讨论。

原文来源https://blog.iota.org/iota-research-status-update-b27aa5cbe3b1​​​​

大熊

专栏作者:大熊

个人简介:我共发表了 45 篇文章,总计被阅读了19,750 次,共获得了 514 个赞。

作者邮箱 作者主页 Ta的文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注