【Lotus项目源代码导读】项目简介

Filecoin 可谓是当前区块链的一个明星项目,首先在拼爹的年代它有一个高贵的出身:协议实验室,这个名字或者有人比较陌生,但说起 IPFS 可就是鼎鼎大名了,IPFS 就是协议实验室的大儿子。而 Filecoin 就是小儿子了,再有它可谓是含着金钥匙出生的:2017 年该项目 ICO 的金额是 2.5 亿美金,在当时是最高的。

前言

Filecoin 可谓是当前区块链的一个明星项目,首先在拼爹的年代它有一个高贵的出身:协议实验室,这个名字或者有人比较陌生,但说起 IPFS 可就是鼎鼎大名了,IPFS 就是协议实验室的大儿子。而 Filecoin 就是小儿子了,再有它可谓是含着金钥匙出生的:2017 年该项目 ICO 的金额是 2.5 亿美金,在当时是最高的。
IPFS 项目源自 2014 年,他本身已经很成功项目,代码模块化程度非常高,例如 libp2p 已经在开源社区很多应用。而 Filecoin 的项目不仅重用了 IPFS 的绝大多数代码,而且开发者大多是原先开发 IPFS 的那批程序员,所以不仅技术起点高,而且团队技术力量雄厚。所以这样的项目不仅得到币/链圈的推崇,也得到技术人员的喜爱。
最早 Filecoin 的项目是 go-filecoin,但 2019 年下半年团队推出一个新的项目:lotus,这个项目后来居上,率先在 12 月 11 日启动测试网。所以可以理解这个项目是之前 go-filecoin 的重构项目,但官方目前并没有抛弃 go-filecoin 项目。本人理解其中原因是为保证区块链安全,因为多个代码实现可以避免因为仅有的代码实现的BUG而导致全网瘫痪。

项目相关链接:

  • github 代码主仓库: https://github.com/filecoin-project/lotus
  • 使用指南文档: https://docs.lotu.sh/
  • 设计规范文档: https://filecoin-project.github.io/specs
  • 测试网: https://stats.testnet.filecoin.io/
  • Slack 官方频道: https://app.slack.com/client/TEHTVS1L6/CPFTWMY7N

项目代码分支

master 为 0.2.x 版本的测试网版本,但最新代码目前是在 testnet/3 分支上,对应的区块链网络名称为 interopnet,相当于是预测试网。本文开始写时是 2020 年 4 月 23 日,使用的版本号为 ac92ad36,后续随着版本的版本,文中使用的代码也会跟随更新。

项目功能简介

Lotus 是一个分布式存储区块链项目,其目标是提供一个存储的平台和市场,一方是提供存储和检索服务的矿工,另一方普通用户通过支付数字货币 Fil 可上传存储数据,并在需要时又可获取到数据。矿工为了证明自身进行存储的事实,采用零知识证明加密技术对存储的数据进行计算并将结果广播到区块链,一方获取用户支付的 Fil,另一方面获得 Power(单位与存储的字节一样),当 Power 到达一定程度还可以有机会参与到区块链的打包,从而再获取得区块打包的奖励。

代码基本情况

上层代码开发语言为 Golang,版本是 1.13 或以上。底层涉及到零知识证明等算法相关的逻辑采用 Rust 语言,toolchain 版本为 nightly-2020-03-19。底层库先是编译成静态库,上层 Golang 通过 cgo 调用底层静态库。
底层的代码仓库叫 filecoin-ffi,URL:
https://github.com/filecoin-project/filecoin-ffi.git,在主仓库的路径 extern/filecoin-ffi 之下。

二进制文件

代码编译后可能产生多个二进制文件,最主要有两个:lotus 和 lotus-storage-miner。lotus 为全节点,lotus-storage-miner 为矿工软件。这两个软件均是命令行方式运行。

后续

以上是 lotus 的基本介绍,后续再进 lotus 全节点 daemon 服务启动过程的源代码逻辑进行分析。
End
非常感谢您对 IPFS&Filecoin 项目的持续支持。我们很高兴继续与您一起,为人类信息建立一个强大的,去中心化和高效的基础。
FilCloud 帮你迅速了解 IPFS 领域的热点技术和应用
公众号:filcloud

24小时热点

热点专题

Gem和Genie功能大对比

2022年4月25日,OpenSea官方发推宣布收购NFT交 ...

2397889

TopHolder 头号藏家

Genie 就是一个 NFT 市场的交易聚合器

Web3 中的「聚合器」是一个非常重要的组件,例如 1inc ...

2363077

嗨艺购

一个pi币现在值多少人民币?pi币2024年可以交易吗?

近年来,加密货币市场迅速发展,各种新型数字资产层出不穷。其中 ...

1625055

Alameda Research

USDT是什么币?新手如何购买和交易?

USDT是什么币?新手如何购买和交易?USDT是什么?USD ...

1301292

Cosmos Art

2024年pi币多少钱一个?介绍pi币历年价格

Pi币是一种新兴的数字货币,它的概念于2019年由一位斯坦福 ...

1287487

Alameda Research

CORE未来能涨到多少钱?core2024大约能涨到多少钱?

在数字货币市场中,CORE 作为一种加密货币,在过去的一段时 ...

878479

BitKeep钱包

欧科集团设立1000万元疫情防治专项基金 联合中华慈善总会共同支援一线防护工作

这个春节,新型冠状病毒疫情牵动着大家的心。1月26日0—24 ...

832338

TokenInsight

举报:PAXG币 (PAX Gold)涉嫌违法?

PAXG币(PAX Gold)是一种基于以太坊区块链网络创建 ...

780914

NewsBTC

什么是Polygon(Matic)网络?

由于网络拥堵仍然是以太坊区块链的一个问题,像Polygon这 ...

774002

树图链

ZT交易所介绍

ZT交易所介绍 ZT是为全球用户提供最优质数字资 ...

759409

ZT GLOBAL 交易所