互联网计算机是由运行高级去中心化协议的独立数据中心网络创建的革命性区块链计算机,使开发人员、组织和企业家能够构建和部署安全的应用程序和自治软件程序。

与在专有基础结构或特定托管服务上运行的典型的基于云或分布式体系结构不同,互联网计算机提供了一个开放平台,软件和服务可直接在开放互联网上运行。

分散的互联网计算机协议(ICP)通过实施高级加密技术来创建此安全网络。

在分散的分布式系统中,会出现各种问题。在对等级别,我们如何在这种敌对的开放环境中的节点之间传播工件?我们如何以最有效的方式做到这一点?我们如何定义最合适的网络拓扑?

接下来,有一个共识协议,主要问题是确保在没有中央权限的情况下,以正确的顺序验证和处理正确的交易。

在DFINITY基金会,研发与我们创建的公共平台之间没有区别。

我们的研发团队成员定期实施新技术,并了解他们的想法在实际应用中的应用。

在加密级别实现此功能的一个很好的例子是互联网计算机的非交互式分布式密钥生成(NIDKG)协议-基金会首次发布了新颖的核心加密技术。

引入非交互式DKG

在互联网计算机上运行的应用程序或服务的最终用户与软件容器进行交互,并且不会直接看到用于构建此分散式开发平台的高级加密技术。

互联网计算机定义了一个简单而干净的界面,该界面指定了容器的工作方式,从而实现了一个软件生态系统,其中不同的应用程序可以相互通信并使用彼此的API。

深入研究揭示了数字签名的用法,通过该签名,互联网计算机可以对输出进行认证和验证。

数字签名是现代加密技术曙光的一部分,出现在1970年代后期的Diffie-Hellman和RSA的开创性著作中。

最终用户和与其他容器对话的容器需要信息进行认证。

但是,在互联网计算机上,容器托管在子网中,子网由全球各地的节点集合运行。

因此,节点必须运行分布式协议以达成一致并签署互联网计算机的输出。

阈值签名使子网上的节点可以协同签名数据,如果有足够的节点合作,则可以签名。

另一方面,一些恶意节点无法偏离和签署未经授权的消息。

到目前为止,一切都很好,但是有一个转折。

在互联网计算机上,运行子网的节点集将发生变化,节点可以加入并离开各自的子网。

根据网络的需求和要求,所需的安全级别、数据中心的可用容量、随机硬件故障等,运行子网的节点集会随着时间而变化,这意味着阈值签名者组会随着时间而发展。

这样做的影响是,在子网内不断变化的节点中,继续生成、注册和分发新的公共密钥会在逻辑上变得很复杂。

作为替代解决方案,即使同一子网始终可以被静态公钥引用,即使组成子网的节点处于不断变化的状态,也可以极大地简化密钥管理。

幸运的是,公共密钥保存具有加密解决方案,并且可以重新共享密钥。

通过这些密钥重新共享方案,参与阈值签名方案的一组签名者可以将阈值签名的能力转移给另一组签名者。

现有的密钥重分配方案有很多好处,但是它们有一个局限性:它们是交互式的,从而引发了异步问题。

如果缺少来自节点的消息,则不清楚该消息是仅延迟还是该节点崩溃或受到损害。

DFINITY研发团队已经发明了一种新的非交互式密钥重新共享协议,每个旧的签名者只需要向新的签名者广播一条消息。

为了确保安全地完成此操作,使用了高级密码学中的许多概念,包括使用前向机密和非交互式零知识证明的加密。

因为它是非交互的,所以密钥重新共享协议的操作方式非常适合异步环境,其好处包括密钥保存。

在子网的整个生命周期中,单个公用密钥就可以知道它,并且互联网计算机上的其他各方不必跟踪更改公用密钥的情况。

查看子网密钥管理的不同阶段,该协议首先适用于初始密钥生成。

互联网计算机可以使用NIDKG协议来启动新的子网,并为初始节点提供阈值签名密钥,而不必在设置过程中涉及初始节点。

节点仅了解它们已被分配给子网,就可以推断出它们的签名密钥的秘密份额,然后开始运行该子网。

在子网运行时,分布式密钥重新共享协议用于注册新的加入节点。

不需要长时间的注册过程,因为子网只是将加密的密钥材料留给了加入的节点。

预期最经常发生的是,一组节点将自己重新分配密钥,这听起来有些违反直觉,因为节点已经具有阈值签名密钥。

但是,这种想法源于主动安全性的概念。

问题在于,随着时间的流逝,节点可能会受到损害。

想象一个由相同节点运行一定时间长度的子网,这为攻击者提供了一个时间窗,在此期间,他们可以以某种方式了解节点在签名密钥中的阈值份额。

主动安全性通过继续刷新签名密钥的阈值份额来提供解决方案,这意味着节点重新共享密钥以获取签名密钥的新阈值秘密共享。

之后,它们将删除其旧共享,这意味着即使攻击者随着时间的推移从每个节点学习了一些共享,只要在任何给定时间仅知道任何给定纪元的少数共享,阈值签名密钥仍然是安全的。

NIDKG是DFINITY研发团队带头推动的众多创新之一,其追求互联网计算机的宏伟愿景来更新Web的创新能力,这一愿景正在稳步成为公共现实。

我们期待着欢迎开发人员探索网络的功能并创建未来的应用程序和服务。

加入我们的开发人员社区,并在forum.dfinity.org上开始构建。

你关心的 IC 内容

技术进展 | 项目信息 | 全球活动

收藏关注 IC 币安频道

随时答疑解惑