last updated 2023-10-26
Main_Menu


Mastering Evrmore
*A collection of information about the Evrmore Defi blockchain*

Summary of Evrmore Chain Parameters for Developers

The Forkdrop:
        A snapshot of the Ravencoin blockchain was taken at block #2,510,000 on 2022-10-25 02:47:20-UTC
        The most valuable 50,000 addresses were extracted.
        That included all addresses containing >=2,673.14 RVN, and accounted for 99.21% of all RVN including all burned and lost RVN
        The list of included addresses and their balances is available HERE.
        From that snapshot, an airdrop was calculated for inclusion in the Evrmore genesis granting 1 EVR for every RVN
        The full details of the Evrmore genesis block coinbase transaction is available HERE.
        The airdrop outputs become non-spendable after block height 60x60x24 (estimated 2022-12-29 19:07-UTC))
   
Evrmore genesis block:
    hash: "0000007b11d0481b2420a7c656ef76775d54ab5b29ee7ea250bc768535693b05"
    merkleroot: "c191c775b10d2af1fcccb4121095b2a018f1bee84fa5efb568fcddd383969262"

Start of Evrmore blockchain mining: block #1 was mined 2022-10-31 15:03:40-UTC    

RPC Ports: 8819 mainnet; 18819 testnet

P2P Ports: 8820 mainnet; 18820 testnet

Algo:
    mainnet:    ProgPow starting with block 0.
                Same as Kawpow except starting DAG=3GB and EPOCH=12000 blocks and new custom seeds
                note: reference C++ implementation with all details is at https://github.com/EvrmoreOrg/cpp-evrprogpow
   
    testnet: SHA256 cpu mining using built-in miner (use "setgenerate true" in the node)

Coinbase subsidy:
    2778 EVR starting.
    SubsidyHalvingInterval = 1648776 blocks which is ~= 3.1 years

Minerdevfund:
    Every coinbase transaction must have 2 outputs:
        1 output for the minerdevfund (value >= 0.1 x (block subsidy + transaction fees) note: starting block subsidy is 2778 EVR
        1 output for the miner (value <= 0.9 x (block subsidy + transaction fees) note: starting block subsidy is 2778 EVR
    The core node software contains a hard-coded whitelist of minerdevfund addresses
        The whitelist of addresses will change with different versions of evrmored/-qt.
        The current whitelist of addresses is reported in the response to the "getblocktemplate" RPC command
        The whitelist (for core v1.0.5) is:
            Mainnet:
                "eHNUGzw8ZG9PGC8gKtnneyMaQXQTtAUm98",
                "e7Tkk3kjS9NjSYVX2Q8qzxXB1WKMRvea1j"
            Testnet:
                "n2rxh4SrVLkzASyxaP3jB6Zf2TEfsPXdMz",
                "muFMkxZeEpptRMNK1zWvsi2aPRNULCin3s"

Addresses and Keys:
mainnet=>
        pchMessageStart[0] = 0x45; // E
        pchMessageStart[1] = 0x56; // V
        pchMessageStart[2] = 0x52; // R
        pchMessageStart[3] = 0x4d; // M

        base58Prefixes[PUBKEY_ADDRESS] = std::vector<unsigned char>(1,33);    // produces 'E' as first char of address after base58 encoding
        base58Prefixes[SCRIPT_ADDRESS] = std::vector<unsigned char>(1,92);    // produces 'e' as first char of address after base58 encoding
        base58Prefixes[SECRET_KEY] =     std::vector<unsigned char>(1,128); // after base58 encoding, produces a first char of '5' for uncompressed
                                                                            //      WIF, 'K' or 'L' for compressed WIF (as for Bitcoin)
        base58Prefixes[EXT_PUBLIC_KEY] = {0x04, 0x88, 0xB2, 0x1E};
        base58Prefixes[EXT_SECRET_KEY] = {0x04, 0x88, 0xAD, 0xE4};

        nExtCoinType = 175;

        strIssueAssetBurnAddress = "EXissueAssetXXXXXXXXXXXXXXXXYiYRBD";
        strReissueAssetBurnAddress = "EXReissueAssetXXXXXXXXXXXXXXY1ANQH";
        strIssueSubAssetBurnAddress = "EXissueSubAssetXXXXXXXXXXXXXWW1ASo";
        strIssueUniqueAssetBurnAddress = "EXissueUniqueAssetXXXXXXXXXXTZjZJ5";
        strIssueMsgChannelAssetBurnAddress = "EXissueMsgChanneLAssetXXXXXXXD3mRa";
        strIssueQualifierAssetBurnAddress = "EXissueQuaLifierXXXXXXXXXXXXW5Zxyf";
        strIssueSubQualifierAssetBurnAddress = "EXissueSubQuaLifierXXXXXXXXXUgTjtu";
        strIssueRestrictedAssetBurnAddress = "EXissueRestrictedXXXXXXXXXXXZZMynb";
        strAddNullQualifierTagBurnAddress = "EXaddTagBurnXXXXXXXXXXXXXXXXb5HLXh";
        strGlobalBurnAddress = "EXBurnXXXXXXXXXXXXXXXXXXXXXXZ8ZjfN";

testnet=>
        pchMessageStart[0] = 0x45; // E
        pchMessageStart[1] = 0x56; // V
        pchMessageStart[2] = 0x52; // R
        pchMessageStart[3] = 0x54; // T
       
        base58Prefixes[PUBKEY_ADDRESS] = std::vector<unsigned char>(1,111);  // produces 'm' or 'n' as first char of address after base58 encoding
        base58Prefixes[SCRIPT_ADDRESS] = std::vector<unsigned char>(1,196);  // produces '2' as first char of address after base58 encoding
        base58Prefixes[SECRET_KEY] =     std::vector<unsigned char>(1,239);  // after base58 encoding, produces a first char of '9' for uncompressed
                                                                            //      WIF, 'c' for compressed WIF (as for Bitcoin)
        base58Prefixes[EXT_PUBLIC_KEY] = {0x04, 0x35, 0x87, 0xCF};
        base58Prefixes[EXT_SECRET_KEY] = {0x04, 0x35, 0x83, 0x94};
       
        nExtCoinType = 1;

        strIssueAssetBurnAddress = "n1issueAssetXXXXXXXXXXXXXXXXWdnemQ";
        strReissueAssetBurnAddress = "n1ReissueAssetXXXXXXXXXXXXXXWG9NLd";
        strIssueSubAssetBurnAddress = "n1issueSubAssetXXXXXXXXXXXXXbNiH6v";
        strIssueUniqueAssetBurnAddress = "n1issueUniqueAssetXXXXXXXXXXS4695i";
        strIssueMsgChannelAssetBurnAddress = "n1issueMsgChanneLAssetXXXXXXT2PBdD";
        strIssueQualifierAssetBurnAddress = "n1issueQuaLifierXXXXXXXXXXXXUysLTj";
        strIssueSubQualifierAssetBurnAddress = "n1issueSubQuaLifierXXXXXXXXXYffPLh";
        strIssueRestrictedAssetBurnAddress = "n1issueRestrictedXXXXXXXXXXXXZVT9V";
        strAddNullQualifierTagBurnAddress = "n1addTagBurnXXXXXXXXXXXXXXXXX5oLMH";
        strGlobalBurnAddress = "n1BurnXXXXXXXXXXXXXXXXXXXXXXU1qejP";



"In Theory There Is No Difference Between Theory and Practice, While In Practice There Is"

Copyright 2022,2023 by Hans Schmidt
Note: this is in no way related to the wonderful book "Mastering Bitcoin" by Andreas Antonopoulos