BTFS(BitTorrent File Sstem)是基于波场网络和BitTorrent生态系统的文件共享协议,是一个可扩展的高性能文件存储和共享方案。
Metadata 是NFT代币的元数据,以便更丰富地显示NFT资产的详细信息, 存储在链下,一般发行一枚NFT代币会指定一个URI路径,指向这枚代币的Metadata数据。
1 安装BTFS
参照BTFS安装说明进行安装。
2 充值BTT
上传文件到BTFS网络需要支付BTT。
目前存储的价格是0.0037 BTT/Mb/月,对于上传者来说,上传的文件会被添加冗余信息,并拆成30份,任意10份在一起就能还原成完整的文件,所以每一个文件会生成三倍原始文件大小的内容来上传,也就是说,对于上传者,价格是3*0.0037 BTT/Mb/月(以当前价格计算,大约$0.000038/Mb/月)。
btfs init初始化本地节点时,会自动生成一个与本地节点关联的波场钱包账户,可以通过btfs id来查看钱包对应的波场地址。
首先要充值一些BTT到节点的波场账户,然后将波场账户的BTT划转给BTFS网络的记账系统。
设置密码
运行以下命令为节点钱包设置密码:
转账BTT给BTFS网络记账系统
运行以下命令会将本地BTFS节点账户的BTT转账给BTFS网络的记账系统, 最小的转账金额是10BTT, 下面命令中指定的BTT单位是μBTT(百万分之一BTT),至少需要存入10个BTT:
3 上传文件
第一步: 准备一张图片,将图片命名为coral.jpeg
第二步:以Reed-Solomon编码添加图片到节点本地
图中的QmUK9nwtLEiHBJ48HAZHNmSQ53U6ADbRhATxs2tomadwKw即为该文件的哈希值
第三步:通过这个哈希值来上传文件到BTFS网络
btfs daemon的窗口看到”File storage successful”字样时,表示上传成功了
第四步:验证图片是否能被下载
在浏览器里面打开图片的链接,能看到图片说明图片能成功被下载:
https://gateway.btfs.io/btfs/QmUK9nwtLEiHBJ48HAZHNmSQ53U6ADbRhATxs2tomadwKw
4 构造NFT的metadata文件
有了上面的图片链接,就可以用它来构造用于NFT的metadata了。
首先按照TRC-721文档中metadata的示例创建一个json文件,命名为coral.json, 将image字段中的description值替换成上面图片的BTFS下载链接,如图:
运行btfs命令上传coral.json:
在浏览器里面打开metadata文件的uri:
https://gateway.btfs.io/btfs/QmWq4cp588QD8tzrSxvPs2bGikDdKyA35BT3iysBcP1jFD
原文链接:
https://cn.developers.tron.network/docs/%E4%B8%8A%E4%BC%A0metadata%E5%88%B0btfs%E7%BD%91%E7%BB%9C