contracts

package
v1.0.2-alpha Latest Latest
Warning

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

Go to latest
Published: Oct 30, 2021 License: GPL-3.0, GPL-3.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var TxSignMu sync.RWMutex

Functions

func BuildTxOpeningRandomize

func BuildTxOpeningRandomize(nonce uint64, randomizeAddr common.Address, randomizeKey []byte) (*types.Transaction, error)

Send opening to randomize SMC.

func BuildTxSecretRandomize

func BuildTxSecretRandomize(nonce uint64, randomizeAddr common.Address, epocNumber uint64, randomizeKey []byte) (*types.Transaction, error)

Send secret key into randomize smartcontract.

func BuildValidatorFromM2

func BuildValidatorFromM2(listM2 []int64) []byte

Get validators from m2 array integer.

func CalculateRewardForHolders

func CalculateRewardForHolders(foundationWalletAddr common.Address, state *state.StateDB, signer common.Address, calcReward *big.Int, blockNumber uint64) (error, map[common.Address]*big.Int)

func CalculateRewardForSigner

func CalculateRewardForSigner(chainReward *big.Int, signers map[common.Address]*rewardLog, totalSigner uint64) (map[common.Address]*big.Int, error)

Calculate reward for signers.

func CreateTransactionSign

func CreateTransactionSign(chainConfig *params.ChainConfig, pool *core.TxPool, manager *accounts.Manager, block *types.Block, chainDb ethdb.Database, eb common.Address) error

Send tx sign for block number to smart contract blockSigner.

func CreateTxSign

func CreateTxSign(blockNumber *big.Int, blockHash common.Hash, nonce uint64, blockSigner common.Address) *types.Transaction

Create tx sign.

func DecodeValidatorsHexData

func DecodeValidatorsHexData(validatorsStr string) ([]int64, error)

Decode validator hex string.

func Decrypt

func Decrypt(key []byte, cryptoText string) string

decrypt from base64 to decrypted string

func DecryptRandomizeFromSecretsAndOpening

func DecryptRandomizeFromSecretsAndOpening(secrets [][32]byte, opening [32]byte) (int64, error)

Decrypt randomize from secrets and opening.

func Encrypt

func Encrypt(key []byte, text string) string

encrypt string to base64 crypto using AES

func GenM2FromRandomize

func GenM2FromRandomize(randomizes []int64, lenSigners int64) ([]int64, error)

Generate m2 listing from randomize array.

func GetCandidatesOwnerBySigner

func GetCandidatesOwnerBySigner(state *state.StateDB, signerAddr common.Address) common.Address

Get candidate owner by address.

func GetRandomizeFromContract

func GetRandomizeFromContract(client bind.ContractBackend, addrMasternode common.Address) (int64, error)

Get random from randomize contract.

func GetRewardBalancesRate

func GetRewardBalancesRate(foundationWalletAddr common.Address, state *state.StateDB, masterAddr common.Address, totalReward *big.Int, blockNumber uint64) (map[common.Address]*big.Int, error)

func GetRewardForCheckpoint

func GetRewardForCheckpoint(c *posv.Posv, chain consensus.ChainReader, header *types.Header, rCheckpoint uint64, totalSigner *uint64) (map[common.Address]*rewardLog, error)

Calculate reward for reward checkpoint.

func GetSignersByExecutingEVM

func GetSignersByExecutingEVM(addrBlockSigner common.Address, client bind.ContractBackend, blockHash common.Hash) ([]common.Address, error)

Get signers signed for blockNumber from blockSigner contract.

func GetSignersFromContract

func GetSignersFromContract(state *stateDatabase.StateDB, block *types.Block) ([]common.Address, error)

Get signers signed for blockNumber from blockSigner contract.

func NewSlice

func NewSlice(start int64, end int64, step int64) []int64

Dynamic generate array sequence of numbers.

func RandStringByte

func RandStringByte(n int) []byte

Generate random string.

func Shuffle

func Shuffle(slice []int64) []int64

Shuffle array.

Types

This section is empty.

Directories

Path Synopsis
Package chequebook package wraps the 'chequebook' Ethereum smart contract.
Package chequebook package wraps the 'chequebook' Ethereum smart contract.
ens

Jump to

Keyboard shortcuts

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