Linera 是一种 区块链 基础设施,旨在通过在互联网规模上提供可预测的性能、安全性和响应能力,来支持高度可扩展的 Web3 应用程序。它引入了一种基于弹性验证器和微链的多链范式,以解决传统 区块链 架构中常见的区块空间稀缺问题。[1] [3] [4]
Linera 将自己定位为第一个针对超连接、实时应用程序优化的 Layer 1 区块链。该协议通过允许用户管理其自身链(微链)中的区块生产,从而实现最佳性能,将用户置于中心位置。这种方法旨在解决现有 区块链 基础设施中的基本限制,尤其是在交易吞吐量和延迟方面。
Linera 基础设施基于 委托权益证明 (DPoS),并侧重于通过经济激励和大规模的社区审计来提供强大的去中心化。为了帮助 Web3 开发人员利用 Linera 基础设施,该项目开发了一种丰富的、与语言无关的多链编程模型。最初的 SDK 通过 WebAssembly (Wasm) 虚拟机面向 Rust 程序员。Linera 应用程序可以使用异步消息跨链通信,而在同一微链中,应用程序使用同步调用和临时会话(资源)进行组合。这种架构允许在复杂的去中心化应用程序中实现安全性和高性能。[1] [2][3]
Linera 多链协议是 Linera 基础设施的基础组件,旨在支持可扩展的 去中心化应用程序 开发。与传统的单链系统不同,Linera 将交易结构化为多个并行链,称为微链。这些微链将应用程序状态分布在网络中,以实现水平可扩展性。 协议的参与者包括用户、验证器和链所有者。验证器负责验证区块,而链所有者提出新区块并管理各个微链。除非正在进行网络重新配置,否则单个验证器集服务于所有微链。这种架构将区块提议与区块验证分开,从而可以在去中心化框架内更灵活、更高效地管理应用程序状态。[1]
微链是 Linera 架构的核心,它是允许应用程序以最小延迟读取和写入链上数据的小型区块链。微链概念是 Linera 扩展方法的根本:
在 Linera 中,应用程序状态分布在多个微链中,每个链都维护其自己的本地状态。跨链消息传递使用异步消息传递来实现这些链之间的通信。消息作为远程过程调用 (RPC) 在验证器网络中发送,并放置在接收链的收件箱中。然后,该链上的下一个区块提议可以包括和执行选定的消息,从而确保消息仅被处理一次且按顺序处理。仅当执行失败时,消息才可能被丢弃。
链可以有一个或多个活动所有者;如果所有所有权都被移除,则链将永久失效。验证器通过强制执行给定高度处每个区块的唯一性来确保安全性,而生成新区块的活跃性责任则由链的所有者承担。
Linera 使用多阶段轮结构来提议区块:
多领导者轮的数量是可配置的,允许链适应不同的使用模式,并在争用增加时切换到单领导者轮。[1] [7]
Linera 将链上交易组织成小的 并行 链,这些链 跨 验证器和用户钱包实时同步。与传统的 区块链 系统相比,这种架构可显著降低延迟。[2]
Linera 上的应用程序可以通过 跨 微链分配计算来扩展。由于微链的数量几乎是无限的,因此该平台旨在提供无限的交易吞吐量容量。[2]
Linera 钱包通过在本地 WebAssembly 虚拟机中即时重放交易和执行 Web 查询,为应用程序提供可信数据。这种方法增强了安全性和用户体验。[2]
该平台为每个 区块 提供执行证明,并支持直接从交易中查询外部 Web 服务。这使得 Linera 适用于需要与各种 区块链 生态系统和传统 Web 服务交互的多链和多系统应用程序。[2]
Linera 的去中心化方法结合了 委托权益证明 (DPoS) 和社区驱动的审计模型,以确保可扩展性和系统完整性。
通过 DPoS,验证器根据他们自己的代币持有量和用户委托给他们的代币来获得投票权。这种结构允许用户修改他们的委托选择,并允许验证器使用公共交易加入或退出网络。跨微链的验证器重新配置需要协调的迁移协议来保持一致性。为了减轻诸如远程攻击之类的风险,微链可以拒绝来自过时或不受信任的验证器委员会的跨链消息。[1]