一些概念与主要结构
1、复制证明与时空证明
1、复制证明(PoRep):一种新颖的存储证明,它允许服务器(即证明者P)说服用户(即验证者V)某些数据D已被复制到其自己的唯一专用物理存储设备上了
addpiece
preCommit1
preCommit2
Commit1
Commit2
Fetch
2、时空证明(PoSt):要求存储矿工每隔一段时间(例如5分钟)来发送一次存储证明到区块链网络,但是Filecoin每次交互的通信都比较复杂,有各种加密
签名,如此频繁的 网络通信将会成为整个系统的瓶颈,所以需要调整 epoch(时间间隔) 的值,使系统达到一个平衡点,或者使用其他的更优的解决方案。
2、message:可以把它理解成一条信息,比如A向B转一笔账,然后Filecoin就往区块链上记录一条message,就像以太坊上发送一笔交易(send a transaction)一样。
actor定义(lotus/chain/types/actor.go):
type Actor struct {
Code cid.Cid `refmt:",omitempty"` //待执行的智能合约代码(对应的枚举:https://github.com/filecoin-project/specs-actors/actors/builtin/codes.go)
Head cid.Cid `refmt:",omitempty"` //
Nonce types.Uint64 //这个跟以太坊一样,用来对抗重放攻击
Balance *types.AttoFIL //账户余额
}
lotus-1
最新推荐文章于 2021-09-29 10:23:33 发布