Intro to Predicates

Icon LinkPredicates 101: 构建无状态的 DeFi 应用

Predicates 是 Fuel 的无状态账户抽象方法。在区块链领域,我们不断面临状态膨胀的指数级增长,这在长期内是不可持续的。在以太坊生态系统中,每个部署的合约都需要在区块链上无限期地存储状态。为了帮助区块链扩展性,我们需要考虑不同的方法来重新定义对去中心化金融世界至关重要的状态最小化应用。

本教程将专注于 predicate 程序类型,这是 Sway 语言中的四种程序类型 之一,以及我们如何解决这一日益严重的问题。

Icon Link什么是 Predicates?

一句话定义 Predicates:

Icon InfoCircle

Predicates 是返回 truefalse无状态 程序。

Predicate 由一个 Address 类型表示,与由私钥创建的任何 EOA(外部拥有账户)相同。程序的字节码可以确定性地哈希并表示为普通地址,所有这些都在链下计算。因此,当这个地址包含资产时,如果任何人能够评估 predicate 为真,他们都可以花费锁定在 predicate 后面的资产。可以将代码视为钱包的私钥,这可能会有所帮助。

如果这个概念仍然有些不清楚,不用担心!让我们在项目设置的下一部分中探索一个简单的例子。

📚 Sway 标准库 Icon Link: 一个配备有用类型和方法的原生库。

🧑‍🔧 Fuelup Icon Link: 官方的 Fuel 工具链管理器,帮助安装和管理不同版本。

🦀 Fuel 的 Rust SDK Icon Link: 使用 Rust 测试和交互您的 Sway 合约。

Fuel 的 TypeScript SDK Icon Link: 使用 TypeScript 测试和交互您的 Sway 合约。