Documentation
¶
Index ¶
Constants ¶
const ( // Max gas that one block contains MaxBlockGas = uint64(10000000) VMGasRate = int64(200) StorageGasRate = int64(1) MaxGasAmount = int64(200000) DefaultGasCredit = int64(30000) //config parameter for coinbase reward CoinbasePendingBlockNumber = uint64(100) InitialBlockSubsidy = uint64(140700041250000000) // config for pow mining BlocksPerRetarget = uint64(2016) TargetSecondsPerBlock = uint64(150) SeedPerRetarget = uint64(256) // MaxTimeOffsetSeconds is the maximum number of seconds a block time is allowed to be ahead of the current time MaxTimeOffsetSeconds = uint64(60 * 60) MedianTimeBlocks = 11 PayToWitnessPubKeyHashDataSize = 20 PayToWitnessScriptHashDataSize = 32 CoinbaseArbitrarySizeLimit = 128 BTMAlias = "BTM" )
consensus variables
Variables ¶
var ActiveNetParams = MainNetParams
ActiveNetParams is ...
var BTMAssetID = &bc.AssetID{ V0: uint64(18446744073709551615), V1: uint64(18446744073709551615), V2: uint64(18446744073709551615), V3: uint64(18446744073709551615), }
BTMAssetID is BTM's asset id, the soul asset of Bytom
var BTMDefinitionMap = map[string]interface{}{ "name": BTMAlias, "symbol": BTMAlias, "decimals": 8, "description": `Bytom Official Issue`, }
BTMDefinitionMap is the ....
var InitialSeed = &bc.Hash{ V0: uint64(11412844483649490393), V1: uint64(4614157290180302959), V2: uint64(1780246333311066183), V3: uint64(9357197556716379726), }
InitialSeed is SHA3-256 of Byte[0^32]
var MainNetParams = Params{
Name: "main",
Bech32HRPSegwit: "bm",
}
MainNetParams is the config for production
var NetParams = map[string]Params{ "mainnet": MainNetParams, "wisdom": TestNetParams, "solonet": SoloNetParams, }
NetParams is the correspondence between chain_id and Params
var SoloNetParams = Params{
Name: "solo",
Bech32HRPSegwit: "sm",
}
TestNetParams is the config for test-net
var TestNetParams = Params{
Name: "test",
Bech32HRPSegwit: "tm",
}
TestNetParams is the config for test-net
Functions ¶
func BlockSubsidy ¶
BlockSubsidy calculate the coinbase rewards on given block height
func IsBech32SegwitPrefix ¶ added in v0.1.4
IsBech32SegwitPrefix returns whether the prefix is a known prefix for segwit addresses on any default or registered network. This is used when decoding an address string into a specific address type.
Types ¶
type Params ¶ added in v0.1.4
type Params struct { // Name defines a human-readable identifier for the network. Name string Bech32HRPSegwit string }
Params store the config for different network
type ServiceFlag ¶ added in v1.0.3
type ServiceFlag uint64
ServiceFlag use uint64 to indicate what kind of server this node can provide. one uint64 can represent 64 type of service flag
const ( // SFFullNode is a flag used to indicate a peer is a full node. SFFullNode ServiceFlag = 1 << iota DefaultServices = SFFullNode )