释放Web3潜力:Filecoins虚拟机如何推进去中心化技术

夕夕说经济 2023-12-25 10:55:43

Filecoin虚拟机简介

Filecoin虚拟机(Filecoin VM)是一款专门为在Filecoin网络上运行智能合约而设计的分散虚拟机。它为Filecoin智能合约提供了一个安全和隔离的执行环境,实现了对Filecoin协议的高级功能和可编程控制。

Filecoin VM于2020年底首次提出,作为网络路线图的一部分,用于扩展简单存储和检索之外的功能。经过广泛的研发,Filecoin VM于2023年初在Mainnet上线。

Filecoin虚拟机作为Filecoin现有基础架构之上的一层运行。它利用区块链的全球存储提供商网络,以分散和可验证的方式运行智能合同代码。当用户将智能合约部署到Filecoin虚拟机时,代码会打包到虚拟机字节码中,并在存储提供商网络中传播。然后,矿工们在沙盒虚拟环境中执行字节码,并将结果发布到Filecoin的区块链。这使得网络能够就智能合同的执行和结果达成共识。

通过为Filecoin带来智能合约功能,同时继承网络现有的安全性、去中心化和可扩展性,Filecoin VM支持新一波高级去中心化存储应用程序和系统。可编程逻辑扩展了Filecoin的功能,并在分散金融、可验证计算和数字内容分发方面解锁了新的用例。

Filecoin虚拟机架构

Filecoin虚拟机(Filecoin VM)体系结构旨在实现在Filecoin网络上安全和高性能地执行Web3应用程序。Filecoin VM的主要组件包括:

EVM引擎—实现Filecoin虚拟机的执行层。它与以太虚拟机(EVM)兼容,允许现有的Solidity智能合约在Filecoin上运行,只需极少的更改。EVM引擎处理执行智能合约指令的字节码。

生命周期管理器—此组件管理Filecoin上智能合约从部署到执行的整个生命周期。它控制初始化状态、部署合同和调用EVM引擎。

状态管理器—在执行期间处理持久化智能合约状态和访问状态。这允许在多个事务中维护状态。

燃气表—测量执行期间的气体消耗量并执行气体限制。这确保了执行时收取适当的天然气费用。

预编译—这些内置智能合约是本机实现的,目的是提高效率,而不是运行EVM字节码。像ECDSA签名验证器这样的东西是作为预编译实现的。

Filecoin VM的核心执行语义与Ethereum兼容,支持现有合同的移植。但是,Filecoin VM不支持特定于Ethereum的功能,如挖掘奖励、块哈希和链ID。Filecoin VM旨在通过利用面向存储的体系结构中的并行化机会来提高Ethereums性能。气体计量经过优化,可降低费用,并实现经济实惠的存储支持计算。

Filecoin虚拟机执行生命周期

Filecoin虚拟机使开发人员能够在Filecoin区块链上部署和执行兼容以太的智能合约。了解合同执行的生命周期对于在Filecoin上构建有效的dApp至关重要。

当开发者在Filecoin上部署智能合约时,代码会被上传并以不变的方式存储在区块链上。合同被分配一个唯一的地址来调用它的函数并读取它的状态。

要调用合约函数,用户发送一个包含函数名、参数和要传递的任何FIL值的事务。矿工将此事务添加到一个新的块中,并执行契约,契约读取输入并将任何输出写入Filecoins世界状态。

合同执行的关键阶段是:

🔵部署 —合同字节码上传到区块链并存储在唯一地址下。这种情况仅在首次部署合同时发生一次。

🔵调用 —用户将事务发送到合同地址,其中包含函数名和参数。这会将呼叫请求放入mempool中。

🔵验证 —矿工验证事务、检查签名、随机排序等。交易费用从发件人帐户中扣除。

🔵执行 —使用提供的输入参数执行合同函数。这可以在Filecoins世界状态下读取和写入存储。

🔵状态变更 —合同对存储所做的任何更改都将写入并保留在链上。这将更新世界状态。

🔵返回值 —将执行结果返回给事务发送方。这包括任何LOG和函数返回值。

Filecoins VM体系结构的关键优势是支持链上程序和链外客户端应用程序之间的直接调用。这使您能够读取智能合约中的区块链数据,以便在dApp中使用。

Filecoin虚拟机气体模型

与Ethereum一样,Filecoin VM使用Gas来分配资源和限制计算。Gas是指在Filecoin区块链上执行操作所花费的计算单位。

每一次操作都有与之相关的天然气成本。例如,存储数据可能花费500气体,执行智能合约功能可能花费100气体等。天然气成本有助于确保足够的采矿费用,并防止像无限循环那样的滥用。

关于Filecoin VM中气体的一些关键点:

🔵天然气是用FIL支付的, FIL是Filecoin网络的原生加密货币。燃气价格在FIL中规定,每个燃气单位。

🔵用户在提交交易时设置最大天然气限额和价格—总天然气费用=已使用天然气x天然气价格。

🔵天然气价格影响交易优先级。更高的天然气价格被矿工更快地包括在内。

🔵气体限制上限是事务可使用的最大气体。这可以防止无限循环。

🔵未使用的燃气退还给用户。只有完成的计算才会支付费用。

🔵天然气成本可能因操作复杂性、储存使用情况等而异。价格在协议中定义。

开发人员可以在提交交易之前通过客户端API估计天然气成本。

正确的气体管理对于Filecoin开发人员构建高效的Dapp是必不可少的。根据用例设置适当的天然气价格/限制可优化成本。了解气体模型有助于设计安全和高性能的智能合同。

开发智能合同

Filecoin智能合约可以用几种编程语言编写,这些语言编译为[Wasm](https://web汇编.org/)(Web汇编),包括Rust、C、C++和汇编脚本。这使得开发人员可以选择他们最满意的语言。

Filecoin智能合约开发的一些基本工具和框架包括:

🔵AssemblyScript —类似TypeScript的语言,编译为wasm。为Web开发人员提供了熟悉的语法。

🔵锈 —用于构建Filecoin协议的系统编程语言。Rust编译为高度优化的wasm代码。

🔵wasm合同sdk —基于Rust的sdk,用于在Filecoin上构建wasm智能合约。包括用于存储和加密的库和API。

🔵OpenZeppelin —智能合约安全库移植到Rust。提供加密函数的安全实现。

🔵开罗 —一种专门为高度优化的WASm合约而设计的编程语言和环境。

🔵铸造厂 —开发环境、测试框架和沙箱,适用于Filecoin和开罗开发人员。

Filecoins对主流和专业编程语言的支持使开发人员能够构建确定性、安全的智能合约,与分散存储无缝交互。这些工具和框架支持在虚拟执行环境中部署的模块化、可升级的合同。

Filecoin虚拟机安全

Filecoin虚拟机和运行在其上的智能合约的安全性是当务之急。与其他区块链虚拟机不同,Filecoin虚拟机必须考虑与分散数据存储和检索相关的安全影响。

正在采取几项措施来防止Filecoin VM智能合同中的错误、漏洞攻击和其他问题:

🔵核心系统合同正式验证 —控制存储/检索和管理Filecoin经济的关键系统级智能合同将得到正式验证,以确保其行为符合预期。使用数学证明的形式验证为合同行为提供了高度的保证。

🔵代码审计 —除正式核查外,所有核心系统合同都将接受专业审计公司的广泛外部安全审计。这提供了额外的人类评估层,以捕获任何潜在问题。

🔵面向开发人员的工具 — Filecoin虚拟机将包括内置工具,以帮助开发人员编写安全的智能合同。这包括静态分析、自动化测试、气体计量和调试器等功能。

🔵最佳实践 —将提供关于安全智能合同开发最佳做法的大量文件。鼓励开发人员遵循测试驱动开发等方法论。

🔵错误赏金计划 —漏洞奖励将激励安全研究人员在潜在的漏洞和漏洞被恶意利用之前负责任地披露这些漏洞和漏洞。这有助于主动提升合同安全性。

🔵可升级合同 — Filecoin虚拟机将支持安全地升级合同代码,以在部署后修复错误和修补漏洞。这提供了重要的保障。

🔵隔离 —合同在虚拟化、隔离的环境中执行,并且只能通过显式公共接口与其他合同交互。这限制了任何潜在错误或漏洞的“爆炸半径”。

正在进行的研发工作继续使Filecoin VM和合同执行在Mainnet发布之前尽可能安全。严格的设计和测试将有助于防止现有智能合同平台中的许多问题。

存储集成

Filecoin虚拟机提供与底层Filecoin存储网络的无缝集成。这使运行在Filecoin VM上的智能合约能够与存储设备交互,并直接进行存储交易。

Filecoin VM为存储集成提供的一些关键功能包括:

🔵读写存储 — Smart合约可以直接将数据读写到连接到Filecoin存储网络的存储设备中。这允许构建需要存储或检索数据的分散应用程序。

🔵进行存储交易 — Smart合同可以启动并与存储提供商达成交易,以租用存储空间。所有交易条款(如期限、价格、可回收性等)都可以以编程方式指定。

🔵与Filecoin客户端交互 —虚拟机为合同提供API ,以便与负责管理存储交易和传输数据的Filecoin客户端连接和交互。

🔵密码原语 —实用程序可用于生成密钥和签名,以便与存储提供商连接并验证交易。

🔵支付能力 —合同可以通过将Filecoin加密货币转让给存储提供商来无缝支付存储交易费用。

🔵验证证据 —合同可以自动验证存储提供商生成的证明,以申请存储数据的奖励。

通过本机与分散存储集成,Filecoin VM为AI、ML、基因组数据、视频流等解锁了新类别的分散Dapp。存储是Filecoin VM中的一流公民,而不是事后才想到的。

使用案例

Filecoin虚拟机使开发人员能够构建利用Filecoin网络的存储功能和安全性的分散应用程序(dapp)。以下是使用Filecoin VM的一些示例用例和行业:

Dapps示例

🔵文件分散存储:Dapps提供了用户友好的接口,用于以分散的方式将文件存储在Filecoin上。例如,一个应用程序,让用户可以轻松地在Filecoin上备份他们的照片或其他个人文件。

🔵数据市场: 用户可以买卖存储在Filecoin上的数据集的市场。交易和许可可以通过智能合同处理。

🔵可验证凭据:用于签发存储在Filecoin智能合约上的可验证数字凭据(如专业认证)的Dapp可以对凭据逻辑和验证过程进行编码。

🔵供应链跟踪:用于跟踪Filecoin上供应链数据的物流dapp。智能合同自动执行验证来源和触发付款等流程。

使用Filecoin虚拟机的行业

🔵媒体和娱乐:将高价值媒体资产存储在Filecoin上,以确保安全,并通过智能合同分发。

🔵医疗保健:安全地存储医疗记录,并通过智能合同使批准的各方能够访问这些记录。

🔵金融服务:从文档管理到区块链分析的应用程序,这些应用程序利用Filecoin实现安全性和成本节约。

🔵保险:以防篡改的方式存储索赔和策略数据,同时允许通过智能合同进行受控访问。

🔵企业数据存储:用Filecoin上的分散存储取代集中式孤立数据库,以实现跨组织的安全性和协作。

Filecoin虚拟机为跨行业构建基于分散存储的应用程序提供了许多可能性。随着采用率的增长,我们将看到更多创新的dapp以独特的方式利用Filecoins功能。

路标

Filecoin虚拟机仍在积极开发中,定期发布新版本和更新。以下是最近的一些发展和未来的计划:

最近更新

🔵2022年10月,Filecoin在testnet上发布了Filecoin虚拟机Alpha版本。此初始版本允许开发人员开始在Filecoin上测试智能合约。

🔵Filecoin在VM中实现了Actor模型,允许智能合约与Filecoin存储提供商交互。这为存储支持的dapp铺平了道路。

🔵引入了一种新的气体模型,该模型是根据存储和计算的需要量身定制的。这为开发商提供了可预测的天然气费用。

🔵文档、SDK和开发人员工具已经发布,以帮助构建Filecoin dapp。

即将到来的里程碑

🔵Filecoin VM主网发布计划于2023年初发布,允许Dapps实时部署。

🔵随着时间的推移,将增加更高级的智能合同功能,如对Solidity和Ethereum工具的支持。

🔵Filecoin旨在构建一个基于存储的dapp生态系统,涵盖分散的社交媒体、互联网归档、数据市场等。

🔵正在进行将IPFS、Filecoin和libp2p结合起来以实现分散式Web的研究。

🔵长期计划包括在新出现的用例发展过程中优化虚拟机。

Filecoin团队正在迅速创新,以实现在这种新的分散基础架构上的建设。随着积极的发展和参与的社区,可能性是巨大的。

结论

Filecoin虚拟机代表了Filecoin网络功能的重大发展。通过在Filecoin上开发和执行智能合同,该平台打开了新的潜在用例和应用程序。

在本篇文章中,我们介绍了虚拟机体系结构、执行生命周期、气体模型、存储集成等。主要亮点包括:

- Filecoin虚拟机支持在Filecoin网络上构建和运行分散的应用程序。开发人员可以用Solidity等语言编写智能合约,并编译它们以便在Filecoin上部署。

-在安全的沙盒环境中执行智能合同。新的生命周期系统管理合同部署、升级和停用。

- Filecoins独特的气体模型收费计算和存储资源使用。这与网络内的激励措施一致。

-与Filecoins存储功能紧密集成,允许智能合约直接访问分散存储并支付费用。

-令人兴奋的潜在使用案例范围从分散的金融到可验证的计算。

随着Filecoin作为Web3平台的成熟,Filecoin虚拟机将发挥不可或缺的作用。它为分散式应用程序开辟了新的可能性,同时保留了Filecoins对数据存储和传输的核心关注。对于希望在Filecoin上构建的开发人员来说,未来的道路是光明的,因为采用这一强大的新功能获得了动力。

0 阅读:240
评论列表
  • 2023-12-30 20:27

    FiI,只会炒作,圈钱!技术含量不高,技术瓶颈没突破,还搞分布式存储!

夕夕说经济

简介:IPFS