merkle

package
v0.7.3-alpha Latest Latest
Warning

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

Go to latest
Published: Jan 24, 2019 License: Apache-2.0, BSD-3-Clause-Clear Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BaseProof

type BaseProof struct {
	Signature core.Signature
}

type Calculator

type Calculator interface {
	GetPulseProof(*PulseEntry) (OriginHash, *PulseProof, error)
	GetGlobuleProof(*GlobuleEntry) (OriginHash, *GlobuleProof, error)
	GetCloudProof(*CloudEntry) (OriginHash, *CloudProof, error)

	IsValid(Proof, OriginHash, crypto.PublicKey) bool
}

func NewCalculator

func NewCalculator() Calculator

type CloudEntry

type CloudEntry struct {
	ProofSet      []*GlobuleProof
	PrevCloudHash []byte
}

type CloudProof

type CloudProof struct {
	BaseProof
}

type GlobuleEntry

type GlobuleEntry struct {
	*PulseEntry
	ProofSet      map[core.Node]*PulseProof
	PulseHash     []byte
	PrevCloudHash []byte
	GlobuleID     core.GlobuleID
}

type GlobuleProof

type GlobuleProof struct {
	BaseProof

	PrevCloudHash []byte
	GlobuleID     core.GlobuleID
	NodeCount     uint32
	NodeRoot      []byte
}

type OriginHash

type OriginHash []byte

type Proof

type Proof interface {
	// contains filtered or unexported methods
}

type PulseEntry

type PulseEntry struct {
	Pulse *core.Pulse
}

type PulseProof

type PulseProof struct {
	BaseProof

	StateHash []byte
}

Jump to

Keyboard shortcuts

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