gen

package
v0.4.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 2, 2020 License: Apache-2.0, MIT Imports: 41 Imported by: 19

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ValidWpostForTesting = []abi.PoStProof{{
	ProofBytes: []byte("valid proof"),
}}

Functions

func CarWalkFunc added in v0.3.0

func CarWalkFunc(nd format.Node) (out []*format.Link, err error)

func ComputeVRF

func ComputeVRF(ctx context.Context, sign SignFunc, worker address.Address, sigInput []byte) ([]byte, error)

func IsRoundWinner

func IsRoundWinner(ctx context.Context, ts *types.TipSet, round abi.ChainEpoch,
	miner address.Address, brand types.BeaconEntry, mbi *api.MiningBaseInfo, a MiningCheckAPI) (*types.ElectionProof, error)

func MinerCreateBlock

func MinerCreateBlock(ctx context.Context, sm *stmgr.StateManager, w *wallet.Wallet, bt *api.BlockTemplate) (*types.FullBlock, error)

func VerifyVRF

func VerifyVRF(ctx context.Context, worker address.Address, vrfBase, vrfproof []byte) error

Types

type ChainGen

type ChainGen struct {
	CurTipset *store.FullTipSet

	Timestamper func(*types.TipSet, abi.ChainEpoch) uint64

	GetMessages func(*ChainGen) ([]*types.SignedMessage, error)

	Miners []address.Address
	// contains filtered or unexported fields
}

func NewGenerator

func NewGenerator() (*ChainGen, error)

func NewGeneratorWithSectors added in v0.3.0

func NewGeneratorWithSectors(numSectors int) (*ChainGen, error)

func (*ChainGen) Banker added in v0.2.8

func (cg *ChainGen) Banker() address.Address

func (*ChainGen) ChainStore added in v0.2.8

func (cg *ChainGen) ChainStore() *store.ChainStore

func (*ChainGen) Genesis

func (cg *ChainGen) Genesis() *types.BlockHeader

func (*ChainGen) GenesisCar

func (cg *ChainGen) GenesisCar() ([]byte, error)

func (*ChainGen) NextTipSet

func (cg *ChainGen) NextTipSet() (*MinedTipSet, error)

func (*ChainGen) NextTipSetFromMiners

func (cg *ChainGen) NextTipSetFromMiners(base *types.TipSet, miners []address.Address) (*MinedTipSet, error)

func (*ChainGen) ResyncBankerNonce

func (cg *ChainGen) ResyncBankerNonce(ts *types.TipSet) error

ResyncBankerNonce is used for dealing with messages made when simulating forks

func (*ChainGen) SetStateManager added in v0.2.8

func (cg *ChainGen) SetStateManager(sm *stmgr.StateManager)

func (*ChainGen) Wallet added in v0.2.8

func (cg *ChainGen) Wallet() *wallet.Wallet

func (*ChainGen) YieldRepo

func (cg *ChainGen) YieldRepo() (repo.Repo, error)

type MinedTipSet

type MinedTipSet struct {
	TipSet   *store.FullTipSet
	Messages []*types.SignedMessage
}

type MiningCheckAPI

type MiningCheckAPI interface {
	ChainGetRandomness(ctx context.Context, tsk types.TipSetKey, personalization crypto.DomainSeparationTag, randEpoch abi.ChainEpoch, entropy []byte) (abi.Randomness, error)

	MinerGetBaseInfo(context.Context, address.Address, abi.ChainEpoch, types.TipSetKey) (*api.MiningBaseInfo, error)

	WalletSign(context.Context, address.Address, []byte) (*crypto.Signature, error)
}

type SignFunc

type SignFunc func(context.Context, address.Address, []byte) (*crypto.Signature, error)

type WinningPoStProver added in v0.3.0

type WinningPoStProver interface {
	GenerateCandidates(context.Context, abi.PoStRandomness, uint64) ([]uint64, error)
	ComputeProof(context.Context, []abi.SectorInfo, abi.PoStRandomness) ([]abi.PoStProof, error)
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL