NKN奥德赛:张逸伦博士和十亿节点的传奇

​注:原文发表于2020年1月,文中所提及的nMobile以及TUNA现已上线。

Screen Shot 2020-07-31 at 1.56.59 PM

“我可以笃定:当前的NKN节点代码,无需任何修改,就能在数以十亿个全节点上正常工作。”

——NKN CTO 张逸伦博士,2019年11月20日

NKN新型网络项目致力于创建世界上最高效,可扩展和去中心化的通信网络。

在这之前,我曾为NKN撰写过一篇详尽的入门文章,并对才华横溢却不矜不伐的NKN创始人李彦博进行了一次长篇采访。

在入门文章中,着眼于晦涩难懂的元胞自动机技术,NKN的技术开发为我们构建了一个绝妙的虚拟世界。元胞自动机以令人讶异的成绩揭示了如何利用简单规则创建更加复杂的系统和模型。这些系统早已存在于生命及自然界中,而利用元胞自动机的语言,我们则可更好地掌握如何通过简单规则来了解看似混乱或随机的事物:例如贝壳的花纹、树叶的叶脉、乃至整个宇宙的奥秘。

于NKN而言,了解这些令人困惑矛盾的行为来源于其革命性共识机制MOCA(多数投票元胞自动机)的灵感。

MOCA和NKN进行的“中继证明”挖矿,在全球共拥有超过2万个共识全节点(数量已超过比特币加以太坊的总数),为自己交出了一份漂亮的成绩单。

Screen Shot 2020-07-31 at 1.54.14 PM

而NKN的CTO张逸伦博士公开数百万个达成共识的节点,也令人印象深刻(本次采访中,他将给出更深度的相关解答)。

精彩视频详见:https://www.youtube.com/watch?v=a5eHyDuKOoo&feature=youtu.be

NKN的技术顾问是斯蒂芬·沃尔夫拉姆(Stephen Wolfram),一位屡获殊荣的计算机科学家及物理学家,他领导了该领域的研究,并著有《一种新科学》一书。 该书及标题正是NKN的灵感来源。创始人李彦博在接受采访时曾与我们详细谈起过这个有趣的灵感交互。

令人骄傲的是NKN团队(包含李彦博、Bruce Li、张逸伦等人)与Wolfram、Whitfield Diffie等业内顶尖人物都有着深度的工作与合作关系。 Whitfield Diffie是公钥加密技术的共同创造者,而正因为仰赖这项技术,HTTPS,SSL和比特币等技术才得以存在。

我很高兴能与NKN的首席技术官张逸伦博士通过此次采访进行交流,以回顾自上次与世界第一的全节点共识网络近距离接触以来,NKN又已取得了哪些进步与成长。

Screen Shot 2020-07-31 at 2.03.06 PM

逸伦你好,很高兴能与你再次交谈。 自从我发布NKN入门文章以来,我可以从discord和github看到,在NKN核心及其dApps生态系统方面,你们都取得了很大进步。 可否为我们逐一列举,并简要介绍其中最重要的几项吗?

[YL] 当然没问题!实际上,最近NKN在核心和应用程序方面都取得了跨越式进步。简要总结来说:

● 在NKN节点方面,我们基本实现了大部分设计,并已在测试网和主网中对其进行了彻底测试。自上次文章发布以来,MOCA共识已得到很大改进,安全性更是稳步提高,且已在具有20k+社区节点的公共主网中经过了实战测试!

● P2P消息传递和发布/订阅:我们已对该协议进行了诸多升级,并且得到了更多使用率。最受欢迎的应属D-Chat:它是一个纯粹去中心化的IM,亦可作为浏览器插件运行,NKN团队更是每天都在使用它进行安全的内部通信。同样,NKN Shell(nsh)是ssh的一个更便捷且安全的替代方法,我们已在nCDN节点管理中将其投入使用。

详情参见:基于NKN的分布式Pub/Sub服务

● nCDN:这是NKN最近宣布的分布式CDN解决方案。我们的网站与nknx api服务器现已在使用nCDN,与之前相比,我们看到了显着的性能提升。我们也在进行公开Beta测试,每个人都可以在短短几分钟内安装并使用nCDN。

详情参见:nCDN:基于NKN的新型内容投递网络

● TUNA:TUNA是NKN提供的一个平台,允许将任何基于网络的应用程序提供给其他人,并根据带宽使用情况进行定价。我们尚未公开发布它,但是在内部,我们已开始进行测试使用。

详情参见:NKN商业服务CDN、Pub/sub和Tuna介绍

在继续采访之前,让我们着重了解一下张逸伦博士所提到的一些技术。

新的安全模型(nsh)

Screen Shot 2020-07-31 at 2.05.12 PM

逸伦最近在Hackernoon发布了“ NKN Shell(nsh):一种比SSH更安全,更便捷的新型远程shell”,获得了25,000多次观看。 本文着眼于NKN上运行SSH的优点,逸伦也在文章中解释了SSH的问题:归结为安全密钥交换与面向公众的IP地址等容易使用户收到攻击的原因,并提到HTTPS,现可通过NKN消除对像Verisgn这样的受信任证书颁发机构的需求。

[YL] ssh的安全性源于用户知道远程计算机公钥的假设。 因ssh使用IP地址进行数据包传递并使用公共密钥进行加密,而由于IP地址和公钥之间没有内在联系,因此需要一些先验知识或PKI(公钥基础结构)来防止中间人(MITM)发动攻击,否则中间人将能查看和修改往返之间的所有通信。HTTPS面临相同的问题,所以我们只能通过预定义的受信任证书进行解决。 当使用ssh时,用户需要知道远程公钥,或只能祈祷没有任何人试图对信息进行攻击。

详情参见:NKN Shell(nsh): 一种比SSH更安全,更方便的新型远程终端

NKN如何解决这些问题? 逸伦的文章中解释到:

[YL] NKN客户端地址包含公共密钥,并用于路由与加密,从而无需任何PKI即可进行端到端加密。

远程计算机不需要具有公共IP地址或公共可访问性。 唯一的要求是具有因特网访问权限,并可建立出站http和websocket连接。

任何可以使用NKN客户端的软件,就可使用nkn-shell-daemon运行命令。 例如,nkn-shell-daemon与d-chat兼容,您可以使用d-chat Chrome / Firefox插件或我们的支持d-chat移动应用程序(在开发中)在节点上运行命令。

所有NKN dApp都将从中受益,无论是消息传递dApp(聊天),约会dApp(nLove)还是即将到来的酒店预订dApp。 通过连接API,任何应用程序都可以利用NKN的安全优势。 随着IPV4地址空间用尽,这将是一个拥有巨大潜力的市场。

D-chat

NKN发表的October Medium文章更详细地描述了这种分布式消息传递应用程序。

Screen Shot 2020-07-31 at 2.06.52 PM

[YL] D-Chat是由社区开发人员Lynn创建的NKN消费者应用程序之一。 它利用并展示了NKN的各种平台产品和SDK,包括:

● 使用NKN的去中心化Pub/Sub服务传递群组消息

● 使用多客户端SDK优化交付速度和延迟

● 使用安全的端到端加密来启用“私语”私人聊天。

与其他任何主流的消费者聊天应用程序(如WhatsApp,Facebook Messenger或微信)不同,D-Chat不使用也不依赖单个集中式服务器, 整个应用程序都置于您的浏览器插件上,保证所有数据的安全。

D-Chat作为所有基于Chromium浏览器的浏览器插件提供。 本文中的功能很多,包括同时支持公共群组聊天和私人一对一聊天(“私语”模式)等,在此不做逐一赘述。

Screen Shot 2020-07-31 at 2.08.11 PM

[YL] 就如同snap chat,这是两个客户端之间的加密消息传递服务(客户端可以是人,抑或机器)。

D-Chat甚至可以与nsh结合用于控制IoT设备。

Screen Shot 2020-07-31 at 2.09.33 PM

更好的性能(nCDN)

NKN在原有网络上发挥了性能优势,例如10月8日宣布与NETNIC签署了NKN内容交付服务nCDN的商业合同。 公告部分内容引用如下:

[YL] 中国北方地区百度云和腾讯云最大的增值经销商企商在线为企业客户提供以应用程序为中心的云解决方案。 nCDN(即NKN的新型内容交付网络)是一种具有竞争力的新产品,与传统的CDN解决方案相比,它更可靠,更易于大规模部署并且更适应负载变化。

Screen Shot 2020-07-31 at 2.10.35 PM

11月4日,NKN在ncdn.io上发布了nCDN的公开Beta版,供有兴趣测试该解决方案的企业使用。 NKN的当期双周报告详细介绍了nCDN最近发布的Beta版本。

[YL] 这项新服务使用NKN在许多不同平台之上服务器的全球共享网络,包括诸多顶级云提供商(例如AWS,Google Cloud和DigitalOcean)的数据中心及边缘位置(包括家庭WiFi路由器,NAS(网络硬盘)设备等)。CDN具有许多边缘节点和嵌入式质量控制,以确保其可用性与其他性能。

目前,nCDN处于beta测试阶段,仅针对部分企业和中小企业客户。如果您有兴趣尝试使用nCDN进行业务,请访问https://www.ncdn.io/并申请免费试用帐户。

有关nCDN的完整详细信息,请查看我们的nCDN发布新闻文章:nCDN:基于NKN的新型内容投递网络

要了解有关nCDN自助服务门户如何工作的更多信息,请查看我们的视频nCDN自助服务门户教程:

那么重新回到访谈上,我想在这些话题上吸引逸伦的注意力。

是什么阻止了NKN节点运营商进行中间人(MITM)攻击?

[YL] 在NKN,我们从根本上消除了MITM中间人攻击。 MITM攻击的根本原因是通信地址(例如ip地址)与加密公共密钥(pk)之间的不匹配。当我们通过任何方式得到了一个中间人的pk通讯地址,那么中间人可读取通讯内容并进行修改且不会被发现。而在NKN,客户地址包含加密pk,以及通讯地址与加密公钥都使用相同的地址。因此,如果加密pk错误,就不可能获得正确的通讯地址。当某人发送消息时,它(默认情况下)将使用收件人的pk对消息进行端到端(AEAD)身份验证和加密,从而保证任何中间人,只要没有发送者或接收者的私钥,都无法阅读邮件内容(通过加密保证)。如果他修改了消息,则接收者也将在收到消息后知晓该操作(通过身份验证保证)。

为什么我们除了ISP之外还可以信任NKN节点?

[YL] 从上面的问题中我们可以想见,从技术上讲,任何人(包括节点运营商)都无法进行MITM攻击。因此,我们对NKN节点有着完全的信任!

NKN如何实现比传统CDN更好的性能,如何衡量这些性能?

[YL] 当我们在谈论性能时,有诸多指标。传统的CDN在单节点吞吐量方面绝对是更好的选择,因为它们的“节点”通常是整个数据中心,但nCDN通常在边缘网络足够大的情况下更靠近终端用户,因此可更好的消除延迟。如果我们比喻说获取网站的内容就像采购,那么传统的CDN就像去更远的大型超市——它可以容纳更多的人,但是需要更长的时间;而nCDN就像楼下的便利店——它离您很近,也节省更多的时间。

在加入NKN之前,除了完成哲学和计算神经科学博士学位以外,您还研究了元胞自动机。我想,人的大脑就像一个网络,您能否告诉我们更多有关此研究领域的信息,以及它如何影响您对NKN独特解决方案的开发?

[YL] 当我了解区块链、共识算法及有关去中心化的一切时,我意识到大脑是一个非常典型的去中心化系统。以人类为例,大脑中有数百亿个神经元,但通常每个神经元仅与数千个其他神经元(很小的一部分)相连,并且仅与那些直接邻居通信。就像其他每个分布式系统一样,没有一个神经元可以控制整个大脑,但是整个大脑处于有序状态并且能够处理极端复杂的任务。这与共识算法非常相似,只不过规模庞大且目标复杂得多。在我意识到这一点之后,这个问题就变得容易多了,因为物理学中已有许多解决数学上相似问题的方法和工具。

如何利用元胞自动机来建立NKN的MOCA共识?如果不了解元胞自动机,是否可以取得类似的结果?您能为我们的读者用通俗易懂的文字描述NKN的“葵花宝典”(MOCA)吗?

[YL] MOCA使用非常基本的元胞自动机(CA)规则,但纷繁复杂,所以并没有“独门秘诀/知识”能成功解决。但是有了CA,Ising Model或相似的理论和经验,就更容易理解为什么本地规则能够达成全球共识,也更容易为我们找到解决方案。

MOCA是多数投票元胞自动机的缩写,比起大多数其他共识算法,这是个通俗易懂的解释。假设我们尝试从两名候选人中选出一位总统。最初,每个人的投票都有自己的见解。当与邻里进行讨论,并检查自己的投票是否与大多数邻居投票不同时,他/她很容易改变看法,并希望确保他/她的投票与大多数邻居的投票一致,甚至告知邻居“嘿,我改变了主意,现在我将为xxx投票”。如果每个人都以这样的模式行动,那么在有限的时间(实际上是非常短的时间)内,所有投票将选出同一候选人,并且在过程中我们仅通过(邻居之间)本地沟通即可有效地达成全球共识。

自NKN推出MOCA以来,EminGünSirer和AVA Labs已开发出一种称为Avalanche的共识算法,而IOTA则名为Coordicide。前者可能与MOCA根本没有相似之处,但可以肯定的是后者利用了元胞自动机。您能否简要讲解一下这些技术之间的主要区别?

[YL] MOCA和Avalanche / Coordicide之间存在一些根本区别:我们基于区块链,而它们基于DAG,因此我们需要在每个区块间隔达成全球共识,而它们仅需要事务之间的最终一致性。成为区块链而不是DAG具有更吸引人的好处:

其一,我们有挖矿奖励。在早期(仅几个月)就吸引了2万多个社区共识节点进入网络,并大大增强了安全性和去中心化。我们不妨拭目以待,看看DAG需要多长时间(如果可能)才能达到相近规模; 其二,交易订单定义良好且更容易定义,因此对智能合约更适用。除了区块链与DAG的区别外,MOCA还基于可验证的覆盖拓扑,而Avalanche / Coordicide并没有对如何安全,可验证地(如果可能)选择邻居/样本进行过多说明。对于这种类型的共识,这在安全性上产生了巨大的差异,安全的邻居/样本选择是影响安全性的最重要因素之一。

除了在网络上运行的防篡改数据外,NKN还引入了通常无法提供的隐私级别的因特网流量。您能跟我们讲讲个吗?

[YL] 除了您提到的防篡改数据之外,还有一些其他隐私功能。 NKN地址是伪匿名制,就如同比特币地址一样,因此知道NKN地址并不会泄漏任何有关用户的信息,除非以其他方式建立了链接。此外,NKN地址包含公共密钥,因此在端对端发送数据时无需进行未加密的协议协商,从而更进一步减少了信息泄漏。

与Stephen Wolfram和Whitfield Diffie的会面和合作如何?

[YL] 他们都极具智慧(正如笔者所料)且知识渊博,无需多余的交流就可以轻松理解我的想法。他们在自己的领域内外都有着很强很深的知识储备,且为人有趣友好。

您是否真的相信NKN可以处理数百万个节点?您是否希望看到网络增长如此之快?您如何看待NKN的未来?

[YL] 这一点我可以笃定:当前的NKN节点代码,无需任何修改,就可于10亿级规模的全节点上运行而不会出现任何问题。

因为在NKN中,一切都最多以O(log N)扩展,从当前的网络大小(2万个节点)到100万个节点,每个节点仅增加消耗40%的资源;从2万到10亿个节点,每个节点仅增加消耗110%的资源。考虑到当前的NKN节点仅消耗少量资源,扩展根本不是问题,付诸实际应用才是。我们要解决的真正问题是,如何吸引更多的用户(客户),矿工(节点)和价值进入网络,并真正成为未来的去中心化网络基础架构。

用最简单的话来说,NKN有什么特别之处?

[YL] NKN是我所知道的唯一一个提供即用型去中心化数据传输网络的项目,它也是最大的区块链网络,拥有2万多个完全共识节点,并且可以进一步水平扩展到任何规模。

结论

NKN正在以惊人的速度发展,且其愿景的范围已逐渐成为行业焦点。

信息的确是力量,但对信息的控制才是真正兼顾不摧的力量。

不得不说,进入壁垒是只是象征性的。 要运行NKN节点,只需拥有因特网连接和低功率设备,甚至是家用路由器。 不必再纠结“我为什么要”的问题,而着眼于“我为什么不?”才是需要考虑的问题。

区块链的历史始于P2P资金,在许多人担心隐私已死的世界中,NKN一直在努力使用区块链来开放P2P通信与应用程序。

可以预见,(nsh)隧道的末端有一盏灯, 它的光芒令人震撼、无所畏惧、通往自由。

Picture1

“哦,上帝啊!到处都是星星”

(2001年,太空漫步)

引领我进入科学领域并指引我研究近乎20年的命题就是:如果数学方程式无法在理解自然世界的复杂现象方面取得进展,那人类又将如何进步?

——Mathematica首席设计师兼NKN顾问Stephen Wolfram

今天我们对待通信安全的态度,将决定明天我们生活的社会类型。

——Whitfield Diffie,公钥密码学的共同创建者和NKN顾问

鸣谢

感谢张逸伦博士花时间回答我的问题。

感谢Bruce协助协调采访。

感谢喇嘛的原始作品。

感谢社区成员Tom的NKN初始徽标。

相关资料

NKN官网:https://www.nkn.org/

Github:https://github.com/nknorg/

推特:https://twitter.com/NKN_ORG

Discord:https://discordapp.com/invite/yVCWmkC

CDN:https://www.ncdn.io/zh/sign/in

Linkedin(张逸伦博士):https://www.linkedin.com/authwall?trk=gf&trkInfo=AQFpXeoSbkPJ3QAAAW7aVbPA626d6myGPSwImZl7ZmTlO4qdmhuFQ8XROQtLFi-mVflauM6-9jVkebuF4FFhNs67GDz3sDhSTNhpb0G80VZbmpZrqOzCTlv2dEKyuLOmJqBLRyI=&originalReferer=&sessionRedirect=https%3A%2F%2Fwww.linkedin.com%2Fin%2Fyilun-zhang-%2F

Screen Shot 2020-07-31 at 2.19.17 PM