utils

package
v0.29.6 Latest Latest
Warning

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

Go to latest
Published: Jan 19, 2023 License: AGPL-3.0 Imports: 21 Imported by: 2

Documentation

Index

Constants

View Source
const X962_INVERSION = uint8(0x03)
View Source
const X962_NO_INVERSION = uint8(0x02)

these constants are defined in X9.62 section 4.2 and 4.3 see https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.202.2977&rep=rep1&type=pdf they indicate if the conversion to/from a public key (point) in compressed form must involve an inversion of the ordinate coordinate

Variables

This section is empty.

Functions

func GenerateKeys

func GenerateKeys(algo crypto.SigningAlgorithm, n int, seeds [][]byte) ([]crypto.PrivateKey, error)

func GenerateMachineAccountKey

func GenerateMachineAccountKey(seed []byte) (crypto.PrivateKey, error)

func GenerateNetworkingKey

func GenerateNetworkingKey(seed []byte) (crypto.PrivateKey, error)

func GenerateNetworkingKeys

func GenerateNetworkingKeys(n int, seeds [][]byte) ([]crypto.PrivateKey, error)

func GenerateNodeInfos

func GenerateNodeInfos(consensus, collection, execution, verification, access int) []model.NodeInfo

func GeneratePublicNetworkingKey

func GeneratePublicNetworkingKey(seed []byte) (key crypto.PrivateKey, err error)

GeneratePublicNetworkingKey draws ECDSASecp256k1 keys until finding a suitable one. though this will return fast, this is not constant-time and will leak ~1 bit of information through its runtime

func GenerateSecretsDBEncryptionKey

func GenerateSecretsDBEncryptionKey() ([]byte, error)

GenerateSecretsDBEncryptionKey generates an encryption key for encrypting a Badger database.

func GenerateStakingKey

func GenerateStakingKey(seed []byte) (crypto.PrivateKey, error)

func GenerateStakingKeys

func GenerateStakingKeys(n int, seeds [][]byte) ([]crypto.PrivateKey, error)

func GenerateUnstakedNetworkingKeys

func GenerateUnstakedNetworkingKeys(n int, seeds [][]byte) ([]crypto.PrivateKey, error)

func ReadDKGData

func ReadDKGData(dkgDataPath string) (*inmem.EncodableFullDKG, error)

func ReadRootBlock

func ReadRootBlock(rootBlockDataPath string) (*flow.Block, error)

func ReadRootProtocolSnapshot

func ReadRootProtocolSnapshot(bootDir string) (*inmem.Snapshot, error)

func RunWithSporkBootstrapDir

func RunWithSporkBootstrapDir(t testing.TB, f func(bootDir, partnerDir, partnerWeights, internalPrivDir, configPath string))

func WriteInternalFiles

func WriteInternalFiles(nodeInfos []model.NodeInfo, bootDir string) (string, string, error)

WriteInternalFiles writes the internal private node info into `bootDir/private-root-information/` also writes a map containing each of the nodes weights mapped by the node's networking address

func WriteMachineAccountFile

func WriteMachineAccountFile(
	nodeID flow.Identifier,
	accountAddress sdk.Address,
	accountKey encodable.MachineAccountPrivKey,
	write WriteJSONFileFunc) error

func WriteMachineAccountFiles

func WriteMachineAccountFiles(chainID flow.ChainID, nodeInfos []bootstrap.NodeInfo, write WriteJSONFileFunc) error

WriteMachineAccountFiles writes machine account key files for a set of nodeInfos. Assumes that machine accounts have been created using the default execution state bootstrapping. Further assumes that the order of nodeInfos is the same order that nodes were registered during execution state bootstrapping.

Only applicable for transient test networks.

func WritePartnerFiles

func WritePartnerFiles(nodeInfos []model.NodeInfo, bootDir string) (string, string, error)

WritePartnerFiles writes the all partner public node info into `bootDir/partners/public-root-information/` also writes a map containing each of the nodes weights mapped by NodeID

func WriteSecretsDBEncryptionKeyFiles

func WriteSecretsDBEncryptionKeyFiles(nodeInfos []bootstrap.NodeInfo, write WriteFileFunc) error

WriteSecretsDBEncryptionKeyFiles writes secret db encryption keys to private node info directory.

func WriteStakingNetworkingKeyFiles

func WriteStakingNetworkingKeyFiles(nodeInfos []bootstrap.NodeInfo, write WriteJSONFileFunc) error

WriteStakingNetworkingKeyFiles writes staking and networking keys to private node info files.

Types

type WriteFileFunc

type WriteFileFunc func(relativePath string, data []byte) error

WriteFileFunc is the same as WriteJSONFileFunc, but it writes the bytes directly rather than marshalling a structure to json.

type WriteJSONFileFunc

type WriteJSONFileFunc func(relativePath string, value interface{}) error

WriteJSONFileFunc is a function which writes a file during bootstrapping. It accepts the path for the file (relative to the bootstrapping root directory) and the value to write. The function must marshal the value as JSON and write the result to the given path.

Jump to

Keyboard shortcuts

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