nodeset

package
v0.0.0-...-05bc493 Latest Latest
Warning

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

Go to latest
Published: Sep 20, 2023 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const ConsensusStatMissingHere = ConsensusStatUnknown
View Source
const NvrHashlessFlags = NvrSenderFault | NvrMissingNodes

Variables

This section is empty.

Functions

func FmtComparedStat

func FmtComparedStat(v uint8) string

func FmtConsensusBitsetEntry

func FmtConsensusBitsetEntry(v uint8) string

func FmtConsensusStat

func FmtConsensusStat(v uint8) string

func PrepareSubVectorsComparison

func PrepareSubVectorsComparison(sr ComparedBitsetRow, hasOtherTrusted, hasOtherDoubted bool) (SubVectorCompared, SubVectorCompared)

Types

type AnnouncementSequenceCalc

type AnnouncementSequenceCalc struct {
	// contains filtered or unexported fields
}

func NewAnnouncementSequenceCalc

func NewAnnouncementSequenceCalc(digestFactory transport.ConsensusDigestFactory) AnnouncementSequenceCalc

func (*AnnouncementSequenceCalc) AddNext

func (p *AnnouncementSequenceCalc) AddNext(nodeData VectorEntryData, zeroPower bool)

func (*AnnouncementSequenceCalc) FinishSequence

func (p *AnnouncementSequenceCalc) FinishSequence() cryptkit.DigestHolder

func (*AnnouncementSequenceCalc) ForkSequence

func (*AnnouncementSequenceCalc) ForkSequenceOf

func (*AnnouncementSequenceCalc) IsEmpty

func (p *AnnouncementSequenceCalc) IsEmpty() bool

type ComparedBitsetRow

type ComparedBitsetRow struct {
	// contains filtered or unexported fields
}

func CompareToStatRow

func CompareToStatRow(b member.StateBitset, otherDataBitset member.StateBitset) ComparedBitsetRow

func NewComparedBitsetRow

func NewComparedBitsetRow(columnCount int) ComparedBitsetRow

func (*ComparedBitsetRow) Get

func (r *ComparedBitsetRow) Get(column int) ComparedState

func (*ComparedBitsetRow) GetSummaryByValue

func (r *ComparedBitsetRow) GetSummaryByValue(value ComparedState) uint16

func (*ComparedBitsetRow) HasAllValues

func (r *ComparedBitsetRow) HasAllValues(value ComparedState) bool

func (*ComparedBitsetRow) HasAllValuesOf

func (r *ComparedBitsetRow) HasAllValuesOf(value0, value1 ComparedState) bool

func (*ComparedBitsetRow) HasValues

func (r *ComparedBitsetRow) HasValues(value ComparedState) bool

func (*ComparedBitsetRow) Set

func (r *ComparedBitsetRow) Set(column int, value ComparedState) ComparedState

func (ComparedBitsetRow) String

func (r ComparedBitsetRow) String() string

func (ComparedBitsetRow) StringFull

func (r ComparedBitsetRow) StringFull() string

func (ComparedBitsetRow) StringSummary

func (r ComparedBitsetRow) StringSummary() string

type ComparedState

type ComparedState uint8
const (
	ComparedSame ComparedState = iota
	ComparedLessTrustedHere
	ComparedLessTrustedThere
	ComparedMissingThere
	ComparedDoubtedMissingHere
	ComparedMissingHere
)

type ConsensusBitsetEntry

type ConsensusBitsetEntry member.BitsetEntry

MUST be based on BitsetEntry to reuse serialization

func (ConsensusBitsetEntry) String

func (s ConsensusBitsetEntry) String() string

type ConsensusBitsetRow

type ConsensusBitsetRow struct {
	// contains filtered or unexported fields
}

func NewConsensusBitsetRow

func NewConsensusBitsetRow(columnCount int) ConsensusBitsetRow

func (*ConsensusBitsetRow) Get

func (*ConsensusBitsetRow) GetSummaryByValue

func (r *ConsensusBitsetRow) GetSummaryByValue(value ConsensusBitsetEntry) uint16

func (*ConsensusBitsetRow) HasAllValues

func (r *ConsensusBitsetRow) HasAllValues(value ConsensusBitsetEntry) bool

func (*ConsensusBitsetRow) HasAllValuesOf

func (r *ConsensusBitsetRow) HasAllValuesOf(value0, value1 ConsensusBitsetEntry) bool

func (*ConsensusBitsetRow) HasValues

func (r *ConsensusBitsetRow) HasValues(value ConsensusBitsetEntry) bool

func (*ConsensusBitsetRow) Set

func (ConsensusBitsetRow) String

func (r ConsensusBitsetRow) String() string

type ConsensusStat

type ConsensusStat uint8
const (
	ConsensusStatUnknown ConsensusStat = iota
	ConsensusStatTrusted
	ConsensusStatDoubted
	ConsensusStatMissingThere
	ConsensusStatFraudSuspect
	ConsensusStatFraud
)

type ConsensusStatColumn

type ConsensusStatColumn struct {
	// contains filtered or unexported fields
}

func (*ConsensusStatColumn) GetSummaryByValue

func (c *ConsensusStatColumn) GetSummaryByValue(value ConsensusStat) uint16

func (*ConsensusStatColumn) String

func (c *ConsensusStatColumn) String() string

type ConsensusStatRow

type ConsensusStatRow struct {
	// contains filtered or unexported fields
}

func NewConsensusStatRow

func NewConsensusStatRow(columnCount int) ConsensusStatRow

func StateToConsensusStatRow

func StateToConsensusStatRow(b member.StateBitset) ConsensusStatRow

func SummarizeStats

func SummarizeStats(otherDataBitset member.StateBitset, verifyRes NodeVerificationResult, sr ComparedBitsetRow) ConsensusStatRow

func (*ConsensusStatRow) Get

func (r *ConsensusStatRow) Get(column int) ConsensusStat

func (*ConsensusStatRow) GetSummaryByValue

func (r *ConsensusStatRow) GetSummaryByValue(value ConsensusStat) uint16

func (*ConsensusStatRow) HasAllValues

func (r *ConsensusStatRow) HasAllValues(value ConsensusStat) bool

func (*ConsensusStatRow) HasAllValuesOf

func (r *ConsensusStatRow) HasAllValuesOf(value0, value1 ConsensusStat) bool

func (*ConsensusStatRow) HasValues

func (r *ConsensusStatRow) HasValues(value ConsensusStat) bool

func (*ConsensusStatRow) Set

func (ConsensusStatRow) String

func (r ConsensusStatRow) String() string

type ConsensusStatTable

type ConsensusStatTable struct {
	// contains filtered or unexported fields
}

func NewConsensusStatTable

func NewConsensusStatTable(nodeCount int) ConsensusStatTable

func (*ConsensusStatTable) AddRow

func (t *ConsensusStatTable) AddRow(row *ConsensusStatRow) int

func (*ConsensusStatTable) AsText

func (t *ConsensusStatTable) AsText(header string) string

func (*ConsensusStatTable) EqualsTyped

func (t *ConsensusStatTable) EqualsTyped(o *ConsensusStatTable) bool

func (*ConsensusStatTable) GetColumn

func (t *ConsensusStatTable) GetColumn(colIndex int) *ConsensusStatColumn

func (*ConsensusStatTable) GetRow

func (t *ConsensusStatTable) GetRow(rowIndex int) (*ConsensusStatRow, bool)

func (*ConsensusStatTable) NewRow

func (t *ConsensusStatTable) NewRow() *ConsensusStatRow

func (*ConsensusStatTable) PutRow

func (t *ConsensusStatTable) PutRow(rowIndex int, row *ConsensusStatRow)

type EntryApplyFunc

type EntryApplyFunc func(nodeData VectorEntryData, postponed bool, filter uint32)

type EntryFilterFunc

type EntryFilterFunc func(index int, nodeData VectorEntryData, parentFilter uint32) (bool, uint32)

type LocalHashedNodeVector

type LocalHashedNodeVector struct {
	statevector.Vector
	TrustedGlobulaStateVector proofs.GlobulaStateHash
	DoubtedGlobulaStateVector proofs.GlobulaStateHash
}

type MemberBitsetRow

type MemberBitsetRow struct {
	// contains filtered or unexported fields
}

TODO unused

func NewMemberBitsetRow

func NewMemberBitsetRow(columnCount int) MemberBitsetRow

func (*MemberBitsetRow) Get

func (r *MemberBitsetRow) Get(column int) member.BitsetEntry

func (*MemberBitsetRow) GetSummaryByValue

func (r *MemberBitsetRow) GetSummaryByValue(value member.BitsetEntry) uint16

func (*MemberBitsetRow) HasAllValues

func (r *MemberBitsetRow) HasAllValues(value member.BitsetEntry) bool

func (*MemberBitsetRow) HasAllValuesOf

func (r *MemberBitsetRow) HasAllValuesOf(value0, value1 member.BitsetEntry) bool

func (*MemberBitsetRow) HasValues

func (r *MemberBitsetRow) HasValues(value member.BitsetEntry) bool

func (*MemberBitsetRow) Set

func (r *MemberBitsetRow) Set(column int, value member.BitsetEntry) member.BitsetEntry

type NodeVerificationResult

type NodeVerificationResult uint16
const (
	NvrSenderFault NodeVerificationResult = 1 << iota
	NvrMissingNodes
	NvrTrustedValid
	NvrTrustedFraud
	NvrTrustedAlteredNodeSet
	NvrDoubtedValid
	NvrDoubtedFraud
	NvrDoubtedAlteredNodeSet
)
const NvrNotVerified NodeVerificationResult = 0

func (NodeVerificationResult) AllOf

func (NodeVerificationResult) AnyOf

func (*NodeVerificationResult) SetDoubted

func (v *NodeVerificationResult) SetDoubted(valid bool, altered bool) bool

func (*NodeVerificationResult) SetTrusted

func (v *NodeVerificationResult) SetTrusted(valid bool, altered bool) bool

func (NodeVerificationResult) String

func (v NodeVerificationResult) String() string

func (NodeVerificationResult) StringPart

func (v NodeVerificationResult) StringPart(b *strings.Builder)

type StateAndRankSequenceCalc

type StateAndRankSequenceCalc struct {
	// contains filtered or unexported fields
}

func NewStateAndRankSequenceCalc

func NewStateAndRankSequenceCalc(digestFactory transport.ConsensusDigestFactory, nodeID node.ShortNodeID, roleCountHint int) StateAndRankSequenceCalc

func (*StateAndRankSequenceCalc) AddNext

func (p *StateAndRankSequenceCalc) AddNext(nodeData VectorEntryData, zeroPower bool)

func (*StateAndRankSequenceCalc) FinishSequence

func (*StateAndRankSequenceCalc) ForkSequence

func (*StateAndRankSequenceCalc) ForkSequenceOf

func (*StateAndRankSequenceCalc) IsEmpty

func (p *StateAndRankSequenceCalc) IsEmpty() bool

type SubVectorCompared

type SubVectorCompared uint8
const (
	SvcIgnore SubVectorCompared = iota
)

func (SubVectorCompared) IsNeeded

func (v SubVectorCompared) IsNeeded() bool

func (SubVectorCompared) IsRecalc

func (v SubVectorCompared) IsRecalc() bool

func (SubVectorCompared) UpdateVerify

type VectorBuilder

type VectorBuilder struct {
	// contains filtered or unexported fields
}

func (*VectorBuilder) BuildAllGlobulaAnnouncementHashes

func (p *VectorBuilder) BuildAllGlobulaAnnouncementHashes() (proofs.GlobulaAnnouncementHash, proofs.GlobulaAnnouncementHash)

func (*VectorBuilder) BuildGlobulaAnnouncementHashes

func (p *VectorBuilder) BuildGlobulaAnnouncementHashes(buildTrusted, buildDoubted bool,
	defaultTrusted, defaultDoubted proofs.GlobulaAnnouncementHash) (trustedHash, doubtedHash proofs.GlobulaAnnouncementHash)

func (*VectorBuilder) BuildGlobulaStateHashWithFilter

func (p *VectorBuilder) BuildGlobulaStateHashWithFilter(nodeID node.ShortNodeID, apply EntryApplyFunc,
	filter EntryFilterFunc) statevector.CalcStateWithRank

func (*VectorBuilder) BuildGlobulaStateHashesAndRanks

func (p *VectorBuilder) BuildGlobulaStateHashesAndRanks(buildTrusted, buildDoubted bool, nodeID node.ShortNodeID,
	defaultTrusted, defaultDoubted statevector.CalcStateWithRank) (trustedHash, doubtedHash statevector.CalcStateWithRank)

func (*VectorBuilder) CreateDerived

func (p *VectorBuilder) CreateDerived(comparedStats ComparedBitsetRow) VectorBuilder

func (*VectorBuilder) FillBitset

func (p *VectorBuilder) FillBitset()

func (*VectorBuilder) GetBitset

func (p *VectorBuilder) GetBitset() member.StateBitset

func (*VectorBuilder) GetEntryScanner

func (p *VectorBuilder) GetEntryScanner() VectorEntryScanner

type VectorEntryData

type VectorEntryData struct {
	RequestedPower member.Power
	RequestedMode  member.OpMode
	TrustLevel     member.TrustLevel
	Profile        profiles.ActiveNode

	// Node *NodeAppearance
	// common.MembershipAnnouncement
	proofs.NodeAnnouncedState
}

type VectorEntryDigester

type VectorEntryDigester interface {
	AddNext(nodeData VectorEntryData, zeroPower bool)
	ForkSequence() VectorEntryDigester
}

type VectorEntryScanner

type VectorEntryScanner interface {
	GetIndexedCount() int
	GetSortedCount() int
	ScanIndexed(apply func(index int, nodeData VectorEntryData))
	ScanSorted(apply EntryApplyFunc, filterValue uint32)
	ScanSortedWithFilter(parentFilter uint32, apply EntryApplyFunc, filter EntryFilterFunc)
}

Jump to

Keyboard shortcuts

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