第2课

技术架构

本模块涵盖 SKALE 网络的技术架构,包括 SKALE 链的设计和运行、共识机制、节点运行和安全功能。

SKALE 链

Skale 链是 Skale 网络的重要组成部分,通过作为独立的、针对特定应用定制的区块链并使用容器化验证器节点,提供了一种不同的区块链可扩展性和性能方法。每条链作为一个弹性侧链运行,能够水平扩展以处理不断增加的交易量。这是通过在一组 16 个节点上动态分配网络资源实现的,这些节点定期轮换和随机选择以增强安全性和去中心化。

Skale 链的架构旨在支持高吞吐量和低延迟。每条链自主运行,独立处理交易和执行智能合约,确保它们能够处理复杂的 dApp 需求,而不受限于单个单一区块链的限制。使用容器化验证器节点可以实现高效的资源管理,为去中心化应用程序提供有效的环境。

Skale 的混合架构集成了第一层和第二层的特性:作为第一层解决方案,每条链管理自己的交易处理、共识和数据存储,受益于以太坊主网提供的安全性和编排,同时也是第二层扩展。

共识机制

Skale 网络采用异步二进制拜占庭协议(ABBA, Asynchronous Binary Byzantine Agreement)作为其共识机制,该协议专门设计用于解决去中心化环境中的挑战,例如网络延迟和节点故障。该协议确保交易快速安全地处理,并在区块被包含在链中时实现最终性。ABBA 协议还支持拜占庭容错(BFT),允许网络即使在某些节点出现恶意行为或宕机的情况下仍可运行。

ABBA 的工作原理

ABBA 协议在最多三分之一的拜占庭(故障或恶意)节点的去中心化系统中达成共识。它确保在任意消息延迟的情况下对二进制值(0 或 1)达成一致。它按照以下步骤工作:

1. 区块提案创建:

  • 节点创建包含交易的区块提案。
  • 如果有足够的待处理交易,则提出一个区块。
  • 如果没有交易,则提出一个空区块。

2. 可靠通信:

  • 使用数据可用性协议将提案发送到其他节点。
  • 确保提案到达大多数(超过三分之二)节点。

3. 投票和签名聚合:

  • 接收到提案后,节点将其添加到数据库并发送部分签名。
  • 当一个节点收集到足够多的部分签名形成超级多数时,它就会将这些签名汇总成一个单一的阈值签名并进行广播。

4. 共识决策:

  • 节点使用聚合签名对提议的区块进行投票。
  • ABBA 协议的多个实例运行以对各种提案进行投票。
  • 获得超级多数票的区块被接受并添加到区块链中。

5. 随机化:

  • 随机值(硬币)影响决策,以确保在存在拜占庭节点的情况下取得进展。
  • 共识硬币机制帮助诚实节点达成一致决策。

6. 安全性和最终性:

  • 使用阈值签名和 BFT 属性来保证安全。
  • 保证如果所有诚实节点从相同的值开始,它们将在有限轮数内达成一致。
  • 一旦决定了一个值,它就是最终的。

BLS 加密

BLS(Boneh-Lynn-Shacham)阈值加密是 Skale 共识过程的一部分。它允许一组参与者协作生成签名。这在去中心化系统中特别有用,以确保安全可验证的共识。

在 BLS 中,网络中的每个参与者都有一个私钥和一个公钥。私钥用于签名消息,而公钥用于验证签名。要签名消息,参与者使用其私钥创建一个签名,这是一个可以附加到消息的短字符串。然后,任何拥有公钥的感兴趣方都可以验证签名是否有效以及它是否由相应私钥的持有者创建。

在阈值加密中,需要最少数量的参与者(n 中的 t)协作创建有效的签名。该参数确保即使某些参与者受到损害,系统仍保持安全。私钥使用称为 Shamir 秘密共享的技术拆分为多个份额,其中每个参与者收到私钥的一个份额。

要生成签名,至少需要 T 个参与者组合他们的份额,每个参与者使用其私钥的份额生成部分签名。然后将这些组合成一个完整的签名,可以使用公钥进行验证。然后,可以使用公钥验证组合签名,就像常规 BLS 签名一样。

在实践中,共识过程涉及多个阶段。最初,节点提出新区块并将其与网络中的其他验证器共享。然后,每个验证器使用 BLS 签名验证区块的交易并对其进行签名。这些签名被聚合为单个组签名,并广播到网络。一旦大多数验证者签署了某个区块,该区块就会被添加到链中,实现最终性。该过程确保交易快速确认,同时保持高水平的安全。

节点操作

每个节点操作多个虚拟化的子节点,这些子节点是能够参与共识过程并执行智能合约的容器化实例。这种虚拟化允许节点同时支持多个链,为网络提供灵活且可扩展的基础设施。

节点操作由部署在以太坊主网上的一组智能合约(统称为 SKALE 管理器)管理。这些合约处理诸如节点注册、轮换和质押等基本功能。操作节点的验证者必须遵守严格的性能和安全要求,包括保持高的在线时间和低延迟。性能指标被持续监控,节点根据其遵守网络标准的情况进行评估,并获得奖励或惩罚。

节点操作的动态特性是 SKALE 架构的一个重要特点。节点会定期轮换到不同的 SKALE 链,防止任何单个节点成为单点故障。这种轮换由 SKALE 管理器合约管理,使用随机选择算法将节点分配给链。这种方法通过确保控制任何给定链的权力分散在各种验证者中,增强了网络的去中心化和安全性。

安全特性

SKALE 网络采用多种方法来保障操作安全。该网络的混合架构从其本地协议和以太坊主网上获取安全性。BLS 阈值签名和分布式密钥生成(DKG, Distributed Key Generation)用于确保跨链消息传递的安全性和跨链交易的完整性。这种加密方法防止未经授权的访问和数据操纵,维护网络的可信度。

SKALE 还使用了权益证明(PoS)模型,验证者通过质押 SKL 代币来参与网络,以获得经济收益作为激励,促使他们诚实行事并维持网络安全。验证者会定期轮换,以最小化共谋风险并确保高度去中心化。SKALE 与其他区块链不同的一点是,它还包括削减机制,以惩罚恶意或疏忽行为,从而进一步保护生态系统的完整性。

节点监控和性能

每个节点都配备了节点监控服务(NMS, Node Monitoring Service),该服务跟踪网络中其他节点的性能。该服务测量正常运行时间和延迟,定期对其他节点进行ping操作,并将这些指标记录到本地数据库。在每个周期结束时,这些指标会被平均并提交给主网智能合约,这些合约会根据这些数据来决定节点的奖励分配,并标记表现不佳的节点以供审查。

通过监控和评估节点性能,SKALE网络可以及时识别和解决问题,保持高水平的可靠性和安全性。NMS还贡献于网络的去中心化治理,因为节点由其同行而非集中权威来负责。

节点性能还受到资源动态分配的影响,因为SKALE网络中的每个节点都是容器化的,这种设计允许高效管理CPU、内存和存储资源,使节点能够同时支持多个链,提供可扩展和灵活的基础设施。资源分配的动态性确保节点能够适应不同的工作负载,保持网络的最佳性能。

链间消息传递和互操作性

链间消息传递(Interchain Messaging)使得 SKALE 链与以太坊主网之间能够有效通信,促进代币和消息在链间的传输,并使用 BLS 阈值密码学来保障这些交互的安全性。这一功能使得开发者能够创建能够与多个链交互的复杂 dApp,增强其功能和覆盖范围。

IMA 支持多种代币标准,包括 ERC-20、ERC-721 和 ERC-1155,为开发者提供了灵活性。通过在链间传输资产和数据,IMA 确保 SKALE 链可以利用以太坊生态系统提供的技术,同时保持其独立运行能力。这使得 SKALE 链能够作为以太坊的延伸,同时提供更高的性能和可扩展性。

开发者工具与兼容性

SKALE 网络在设计上非常友好开发者。它提供兼容现有以太坊开发环境的工具。SKALE 链完全兼容以太坊虚拟机(EVM),允许开发者无需修改即可部署现有的智能合约。

该网络还提供各种开发者工具以支持 dApp 开发。这些工具包括 SDK、API 和文档,帮助开发者在 SKALE 上构建、部署和管理他们的应用程序。网络对 Solidity 的支持(以太坊智能合约使用的编程语言)进一步简化了开发过程。通过提供一整套全面的工具并保持与以太坊的兼容性,SKALE 降低了开发者的进入门槛,鼓励创新 dApp 的创建。

亮点

  • SKALE 链提供可扩展且灵活的区块链环境,采用容器化验证节点和动态负载平衡。
  • 网络使用异步二进制拜占庭协议(ABBA)进行共识,支持 BLS 阈值加密。
  • 节点操作多个虚拟化子节点,由以太坊上的 SKALE 管理智能合约管理。
  • 安全特性包括 BLS 签名、分布式密钥生成(DKG)和带有经济激励和惩罚机制的权益证明(PoS)模型。
  • 混合架构结合了第一层和第二层的特征,既利用了以太坊的安全性,又具备了 SKALE 的可扩展性。
免责声明
* 投资有风险,入市须谨慎。本课程不作为投资理财建议。
* 本课程由入驻Gate Learn的作者创作,观点仅代表作者本人,绝不代表Gate Learn赞同其观点或证实其描述。
目录
第2课

技术架构

本模块涵盖 SKALE 网络的技术架构,包括 SKALE 链的设计和运行、共识机制、节点运行和安全功能。

SKALE 链

Skale 链是 Skale 网络的重要组成部分,通过作为独立的、针对特定应用定制的区块链并使用容器化验证器节点,提供了一种不同的区块链可扩展性和性能方法。每条链作为一个弹性侧链运行,能够水平扩展以处理不断增加的交易量。这是通过在一组 16 个节点上动态分配网络资源实现的,这些节点定期轮换和随机选择以增强安全性和去中心化。

Skale 链的架构旨在支持高吞吐量和低延迟。每条链自主运行,独立处理交易和执行智能合约,确保它们能够处理复杂的 dApp 需求,而不受限于单个单一区块链的限制。使用容器化验证器节点可以实现高效的资源管理,为去中心化应用程序提供有效的环境。

Skale 的混合架构集成了第一层和第二层的特性:作为第一层解决方案,每条链管理自己的交易处理、共识和数据存储,受益于以太坊主网提供的安全性和编排,同时也是第二层扩展。

共识机制

Skale 网络采用异步二进制拜占庭协议(ABBA, Asynchronous Binary Byzantine Agreement)作为其共识机制,该协议专门设计用于解决去中心化环境中的挑战,例如网络延迟和节点故障。该协议确保交易快速安全地处理,并在区块被包含在链中时实现最终性。ABBA 协议还支持拜占庭容错(BFT),允许网络即使在某些节点出现恶意行为或宕机的情况下仍可运行。

ABBA 的工作原理

ABBA 协议在最多三分之一的拜占庭(故障或恶意)节点的去中心化系统中达成共识。它确保在任意消息延迟的情况下对二进制值(0 或 1)达成一致。它按照以下步骤工作:

1. 区块提案创建:

  • 节点创建包含交易的区块提案。
  • 如果有足够的待处理交易,则提出一个区块。
  • 如果没有交易,则提出一个空区块。

2. 可靠通信:

  • 使用数据可用性协议将提案发送到其他节点。
  • 确保提案到达大多数(超过三分之二)节点。

3. 投票和签名聚合:

  • 接收到提案后,节点将其添加到数据库并发送部分签名。
  • 当一个节点收集到足够多的部分签名形成超级多数时,它就会将这些签名汇总成一个单一的阈值签名并进行广播。

4. 共识决策:

  • 节点使用聚合签名对提议的区块进行投票。
  • ABBA 协议的多个实例运行以对各种提案进行投票。
  • 获得超级多数票的区块被接受并添加到区块链中。

5. 随机化:

  • 随机值(硬币)影响决策,以确保在存在拜占庭节点的情况下取得进展。
  • 共识硬币机制帮助诚实节点达成一致决策。

6. 安全性和最终性:

  • 使用阈值签名和 BFT 属性来保证安全。
  • 保证如果所有诚实节点从相同的值开始,它们将在有限轮数内达成一致。
  • 一旦决定了一个值,它就是最终的。

BLS 加密

BLS(Boneh-Lynn-Shacham)阈值加密是 Skale 共识过程的一部分。它允许一组参与者协作生成签名。这在去中心化系统中特别有用,以确保安全可验证的共识。

在 BLS 中,网络中的每个参与者都有一个私钥和一个公钥。私钥用于签名消息,而公钥用于验证签名。要签名消息,参与者使用其私钥创建一个签名,这是一个可以附加到消息的短字符串。然后,任何拥有公钥的感兴趣方都可以验证签名是否有效以及它是否由相应私钥的持有者创建。

在阈值加密中,需要最少数量的参与者(n 中的 t)协作创建有效的签名。该参数确保即使某些参与者受到损害,系统仍保持安全。私钥使用称为 Shamir 秘密共享的技术拆分为多个份额,其中每个参与者收到私钥的一个份额。

要生成签名,至少需要 T 个参与者组合他们的份额,每个参与者使用其私钥的份额生成部分签名。然后将这些组合成一个完整的签名,可以使用公钥进行验证。然后,可以使用公钥验证组合签名,就像常规 BLS 签名一样。

在实践中,共识过程涉及多个阶段。最初,节点提出新区块并将其与网络中的其他验证器共享。然后,每个验证器使用 BLS 签名验证区块的交易并对其进行签名。这些签名被聚合为单个组签名,并广播到网络。一旦大多数验证者签署了某个区块,该区块就会被添加到链中,实现最终性。该过程确保交易快速确认,同时保持高水平的安全。

节点操作

每个节点操作多个虚拟化的子节点,这些子节点是能够参与共识过程并执行智能合约的容器化实例。这种虚拟化允许节点同时支持多个链,为网络提供灵活且可扩展的基础设施。

节点操作由部署在以太坊主网上的一组智能合约(统称为 SKALE 管理器)管理。这些合约处理诸如节点注册、轮换和质押等基本功能。操作节点的验证者必须遵守严格的性能和安全要求,包括保持高的在线时间和低延迟。性能指标被持续监控,节点根据其遵守网络标准的情况进行评估,并获得奖励或惩罚。

节点操作的动态特性是 SKALE 架构的一个重要特点。节点会定期轮换到不同的 SKALE 链,防止任何单个节点成为单点故障。这种轮换由 SKALE 管理器合约管理,使用随机选择算法将节点分配给链。这种方法通过确保控制任何给定链的权力分散在各种验证者中,增强了网络的去中心化和安全性。

安全特性

SKALE 网络采用多种方法来保障操作安全。该网络的混合架构从其本地协议和以太坊主网上获取安全性。BLS 阈值签名和分布式密钥生成(DKG, Distributed Key Generation)用于确保跨链消息传递的安全性和跨链交易的完整性。这种加密方法防止未经授权的访问和数据操纵,维护网络的可信度。

SKALE 还使用了权益证明(PoS)模型,验证者通过质押 SKL 代币来参与网络,以获得经济收益作为激励,促使他们诚实行事并维持网络安全。验证者会定期轮换,以最小化共谋风险并确保高度去中心化。SKALE 与其他区块链不同的一点是,它还包括削减机制,以惩罚恶意或疏忽行为,从而进一步保护生态系统的完整性。

节点监控和性能

每个节点都配备了节点监控服务(NMS, Node Monitoring Service),该服务跟踪网络中其他节点的性能。该服务测量正常运行时间和延迟,定期对其他节点进行ping操作,并将这些指标记录到本地数据库。在每个周期结束时,这些指标会被平均并提交给主网智能合约,这些合约会根据这些数据来决定节点的奖励分配,并标记表现不佳的节点以供审查。

通过监控和评估节点性能,SKALE网络可以及时识别和解决问题,保持高水平的可靠性和安全性。NMS还贡献于网络的去中心化治理,因为节点由其同行而非集中权威来负责。

节点性能还受到资源动态分配的影响,因为SKALE网络中的每个节点都是容器化的,这种设计允许高效管理CPU、内存和存储资源,使节点能够同时支持多个链,提供可扩展和灵活的基础设施。资源分配的动态性确保节点能够适应不同的工作负载,保持网络的最佳性能。

链间消息传递和互操作性

链间消息传递(Interchain Messaging)使得 SKALE 链与以太坊主网之间能够有效通信,促进代币和消息在链间的传输,并使用 BLS 阈值密码学来保障这些交互的安全性。这一功能使得开发者能够创建能够与多个链交互的复杂 dApp,增强其功能和覆盖范围。

IMA 支持多种代币标准,包括 ERC-20、ERC-721 和 ERC-1155,为开发者提供了灵活性。通过在链间传输资产和数据,IMA 确保 SKALE 链可以利用以太坊生态系统提供的技术,同时保持其独立运行能力。这使得 SKALE 链能够作为以太坊的延伸,同时提供更高的性能和可扩展性。

开发者工具与兼容性

SKALE 网络在设计上非常友好开发者。它提供兼容现有以太坊开发环境的工具。SKALE 链完全兼容以太坊虚拟机(EVM),允许开发者无需修改即可部署现有的智能合约。

该网络还提供各种开发者工具以支持 dApp 开发。这些工具包括 SDK、API 和文档,帮助开发者在 SKALE 上构建、部署和管理他们的应用程序。网络对 Solidity 的支持(以太坊智能合约使用的编程语言)进一步简化了开发过程。通过提供一整套全面的工具并保持与以太坊的兼容性,SKALE 降低了开发者的进入门槛,鼓励创新 dApp 的创建。

亮点

  • SKALE 链提供可扩展且灵活的区块链环境,采用容器化验证节点和动态负载平衡。
  • 网络使用异步二进制拜占庭协议(ABBA)进行共识,支持 BLS 阈值加密。
  • 节点操作多个虚拟化子节点,由以太坊上的 SKALE 管理智能合约管理。
  • 安全特性包括 BLS 签名、分布式密钥生成(DKG)和带有经济激励和惩罚机制的权益证明(PoS)模型。
  • 混合架构结合了第一层和第二层的特征,既利用了以太坊的安全性,又具备了 SKALE 的可扩展性。
免责声明
* 投资有风险,入市须谨慎。本课程不作为投资理财建议。
* 本课程由入驻Gate Learn的作者创作,观点仅代表作者本人,绝不代表Gate Learn赞同其观点或证实其描述。