以太坊跨链基础项目Lighthouse,可通过Textile简化Filecoin存储工作流程

Lighthouse(灯塔)的项目为Ethereum智能合约提供一种方式,它通过Textile.io的Powergate请求IPFS中的CID在Filecoin上存储,大大简化了IPFS中的Filecoin存储工作流程。

Lighthouse的出现能够使以太坊开发人员通过Filecoin上进行可加密验证和激励的分布式存储,并且轻松扩展至IPFS存储中。据悉,Lighthouse是通过直接部署在以太坊上的智能合约进行交互,从而大大减少了与Ethereum开发人员与Filecoin存储网络进行交互产生的摩擦。该项目最初是受[Quasar]项目的启发而开发的,目前该项目已针对Aragon和IPFS进行了研究。

图片
项目整体运作流程
1. 在以太坊上部署Lighthouse智能合约,可以通过传入现有IPFS CID并配置请求Filecoin存储来触发交易。CID表示要存储文件的唯一ID,而config表示必须根据其存储文件进行的配置。
2. 进行交易时,智能合约会发出带有CID和config的事件,该事件会被Vulcanize数据库实例拦截。Vulcanize DB是基于IPLD的以太坊链的开源Postgres数据库。
3. Lighthouse节点监测到Vulcanize实例,并从Vulcanize实例中接收CID和配置。然后,Lighthouse节点将CID和配置发送给Powergate实例,该实例已被设置为代表用户与Filecoin网络进行存储交易的编码。随后, Lighthouse节点公开一个WebSocket,该WebSocket给出了特定CID的存储信息。并且此WebSocket还用于取回Filecoin网络上存储的文件。
4. Lighthouse节点与Powergate实例进行交互后,会根据用户请求,从Filecoin网络检索和存储信息、文件本身。
如何使用Lighthouse
Lighthouse的智能合约当前部署在以太坊Rinkeby测试网的地址如下:
0xdFEa08D7c2B43498Bfe32778334c9279956057F0
用户可以通过调用store函数来与合同进行交互,该函数通过Remix或其他IDE / web3库接受两个参数CID和Config。
输入过程
CID—QmTJYDuVWNnRn6g4AjRE5adZ9GwTm7Sgu2Zj75a3xibDRJ
配置
图片
图片
注意,此CID是文件的唯一ID,而Config表示要存储在Filecoin上的文件的配置。Lighthouse节点使用Textile.io的Powergate配置将数据存储在Filecoin上,用户也可以在此处了解更多信息。
提交事务以调用Lighthouse时,用户可以接收存储状态并从Lighthouse节点公开的WebSocket检索和存储的文件。您可以运行以下客户端代码示例来实现此目的:
https://github.com/nandit123/lighthouse/blob/master/client.js
上面的客户端代码连接到托管的Lighthouse后,该Lighthouse会在13.126.82.18:3002处公开一个Websocket,用户可以将其更改为自定义或本地主机。
在上面的代码段中需提供CID,并将其返回当前的存储状态。另外再从Filecoin网络中取回文件。此检索可能需要一些时间,具体取决于用户需存储的文件大小。
如何运行自己的Lighthouse节点
因为目前官方的设置中,Lighthouse节点是完全开源的,任何人都可以在上面运行。
Github链接:
https://github.com/nandit123/lighthouse
智能合约代码链接:
https://github.com/nandit123/lighthouse-contract
此外,要运行整个Lighthouse节点,还需要设置Powergate和Vulcanize才能使整个项目端到端地进行工作:
1.克隆这个项目
图片
2.安装所有项
图片
3.全局安装pm2
图片
4.运行服务器
图片
5.通过以下方式查看日志
图片
1、设置Powergate
要了解有关Powergate和设置的信息-Powergate Docs,当用户已运行Powergate时,请使用POWERGATE_URL,POW_ID,POW_TOKEN并将其替换为Lighthouse项目存储库中的环境文件。
2、设置Vulcanize
用户可以通过聆听官方部署的智能合约中的事件,Lighthouse节点已经通过graphql订阅收听Vulcanize。如果仍然需要自行设置vulcanize watcher来侦听已部署的智能合约中的事件,则可以按照此处的步骤操作:
https://gist.github.com/nandit123/2cd44760cefb6061fb8a2a2e1894e72b。
应用领域
作为便利的基础架构,该项目对于以太坊开发人员在无需设置自己的Filecoin节点的情况下请求可验证的文件数据存储是非常有用。这将让各种应用部署在Filecoin上存储,并且Defi应用程序的记录长期存储NFT,这些NFT主要存储在IPFS或集中式固定服务在Filecoin存储并且与当前dapp集成,而无需在堆栈中添加新技术Dapps,这样一来,两个或两个以上的参与者之间互相交换数据,以换取以太坊区块链上的以太币或其他代币。
未来目标
Lighthouse的出现只是连接以太坊和Filecoin的开始,在未来还会有更多功能组合在一起。其中一些措施包括将Filecoin存储交易状态发布以太坊区块链,或从外部智能合约自动续订存储交易,或是通过为用户赢得利益的外部defi智能合约付款。
我们欢迎任何意见和反馈,并努力做出您希望看到的功能。
源自:星际视界

原创文章,作者:IPFS中文资讯,如若转载,请注明出处:https://www.ipfsnews.cn/21259.html

发表评论

登录后才能评论