Huobi Eco Chain client based on the go-ethereum fork

Overview

Huobi ECO Chain – Heco

English | 简体中文

Introduction to the Huobi Open Platform

The Huobi Open Platform is a unified infrastructure platform based on the technical, traffic and ecological resources of the Huobi Group, and will be gradually open to the blockchain industry. It will make the construction of decentralized applications more efficient and cost-effective, and provide comprehensive empowerment in aspects of promotion, traffic, and resources. In December 2020, the first product of the Huobi Open Platform, the Huobi ECO Chain, also known as Heco, officially launched its "Tinder" phase. In addition, Huobi Open Platform will launch DEX and other blockchain infrastructures based on Layer 2. The Huobi Open Platform will provide global developers with series of diverse innovative facilities and services.

Introduction to Huobi ECO Chain

Huobi ECO Chain (Heco) is a decentralized, high-efficiency and energy-saving public chain, also the first product launched by the Huobi Open Platform. It is compatible with smart contracts and supports high-performance transactions. The endogenous token of Heco is HT and it adopts the HPoS consensus mechanism. Heco will continue to improve the efficiency of Ethereum by Layer2, which will supplement and empower the Ethereum ecosystem.

Declaration

To help developers’ evolvement at every stage

Vision

Technological innovation is the driving force behind the advancement of the blockchain industry, but many innovative projects have been misunderstood and ignored at their early stages. We have witnessed the growth process of great projects. Recalling that Ethereum and Polkadot were questioned as altcoins in the early days, they all went through difficult times. Therefore, Heco's mission is not only a public chain, but also to focus on the discovery and support of high-potential developers and innovative projects. Relying on the world's largest trading ecosystem, Heco is committed to becoming the birthplace of innovative technologies and innovative businesses, and building a complete ecological loop of technology development, application promotion, and trading.

Heco’s Performance

  • TPS: 500+
  • Average block interval: 3s

Consensus Mechanism

HPoS consensus mechanism: it has the characteristics of low transaction cost, low transaction delay, and high transaction concurrency.

The maximum number of validators supported is 21.

Economic Model

The endogenous token on the chain is HT; the transactions consume HT as gas fee.

Miners pledge HT to become validator nodes. The reward of nodes is gas fee, which is distributed according to the mortgage proportion.

Cross-Chain

Assets such as BTC, ETH and stable coins can be mapped to Heco by an asset bridge. The realization method is to lock a certain amount of tokens on the original chain then generate a corresponding number of tokens on Heco.

Heco encourages developers to provide more decentralized cross-chain solution.

Meta Transaction Function

The meta-transaction function is supported, which allows users to reduce gas fees step-wise, and Heco will cover the payment of the reduced part. The meta-transaction function allows to minimize the migration cost of DApp developers, as well as to effectively reduce the cost of DApp users.

Heco Technical Characteristics

  • An open and decentralized network to maintain the security of the network and assets.
  • Support the programmability of EVM, the compatibility of smart contracts to reduce development or migration costs.
  • Meta-transaction function: gas fee reduction, effectively reducing the cost of developers and users on the chain.
  • Support cross-chain asset transfer to optimize users’ experience.

Four Stages of Heco

Heco Technical Route
Stage Features Time Sub Stage Technical Points
Tinder The initial version of Heco.

The system is stable and easy to use.

Developers can develop and promote Dapp at low cost.

Users can participate in Dapp on Heco with a low threshold.

2020 Q4-2021 Q1 Public Beta Higher transaction performance
Lower transaction costs
Meta transaction subsidy
Node Election More decentralized and safer
Complete mainstream assets
Basic tools in place
Ecosystem Incubation Technical service systemization
Basic tool customization
Convenient asset transfer
Spark The protocol is further optimized.

Heco will take the mission of connecting CeFi and DeFi,

allowing more users to use DeFi applications at a low threshold.

2021 Q3 To be announced Complete developer tools
Complete developer forum, blog, and FAQ information
Chain ecological infrastructure booms
Innovative open ID
Personalized portal accurately matches users and Dapps
Flame

Enable Layer2 technology. Expand performance while retaining the decentralized advantages of distributed protocols.

2022 Q2 To be announced Application of Layer2
Cross-chain interoperability protocol
Cross-chain interoperability integration
Blaze

Landing of large-scale commercial applications. Support a variety of traditional businesses to run smoothly on the chain

2023 Q1 To be announced Multiple virtual machine s supported
Multiple zero-knowledge proofs and privacy protection capabilities
Multiple signature schemes
Storage compression and expansion solution
Multi-dimensional sharding scheme

Current Stage of Heco

In December 2020, the Huobi ECO chain, Heco officially launched its "Tinder" phase, which will focus on improving the on-chain infrastructure, including but not limited to: Oracles, Voting tools, Anchor Coins, DEX, Lending, Fnancial Management, Insurance, Synthetic Assets, Cross-Chain Solutions, Data Analysis, Smart Contract Innovation, etc.

Support Plan of Heco

Financial Support

  • Heco will set up a special fund to invest, support and incentivize high-potential developers.
  • Heco will launch a variety of developer activities and competitions to discover and fund potential developers.
  • In order to reduce the cost of users on Heco Dapp, the Heco meta transaction function will reduce the gas fee of users holding HT in a step-wise manner.

Traffic Support

Huobi Global will strongly support the development of Heco ecosystem:

  • Provide traffic entrance for high-quality Dapp on Heco.
  • After running successfully on Heco, high-quality projects can submit token listing application to Huobi Global, and can be listed on Huobi Global if they meet the listing standards.

Resource Support

  • Projects or developers that have received investment and support from Heco have not only the opportunity to get official news report, but also can apply for marketing service packages and promote their projects globally.
  • High-quality projects can participate in Heco global roadshows for free.
  • Huobi Group will open up ecological resources to high-potential developers, matching the win-win cooperation between developers and our ecological partners.

Interact with Us on Social Media

  • Facebook:Huobi Eco Chain
  • Twitter:Huobi_EcoChain
  • Telegram: HuobiEcoChain
  • Weibo:火币生态链Heco
  • Wechat Offical Account:Huobi Eco Heco

Risk Warning

  • All users and developers can participate in the current test environment and subsequent stages of Heco for free, and there is no charging scenario.
  • All users must distinguish the test environment from the Mainnet. The assets generated in the test environment have no value. Be aware of counterfeit currency fraud.
  • Heco announces authorization, promotion and other collaborations only through the official social media platform. Developers and users should check carefully to avoid losses.
  • Do not misread the official website (hecochain.com), and be cautious with private key phishing.
Comments
  • ./geth_heco_v1_2_2 --config

    ./geth_heco_v1_2_2 --config "config.toml"

    Fatal: Failed to register the Ethereum service: unsupported fork ordering: sophonBlock not enabled, but arrowGlacierBlock enabled at 0

    这是怎么回事, release里直接下载的 v1.2.2

    bug 
    opened by xian9yu 8
  • 使用GO语言直接与geth交互,一个错误,请求帮助

    使用GO语言直接与geth交互,一个错误,请求帮助

    使用GO语言直接与geth交互 func main() { // Create an IPC based RPC connection to a remote node and instantiate a contract binding conn, err := ethclient.Dial("http://127.0.0.1:8545") if err != nil { log.Fatalf("Failed to connect to the Ethereum client: %v", err) } token, err := NewToken(common.HexToAddress("0x21e6fc92f93c8a1bb41e2be64b4e1f88a54d3576"), conn) if err != nil { log.Fatalf("Failed to instantiate a Token contract: %v", err) } // Create an authorized transactor and spend 1 unicorn auth, err := bind.NewTransactor(strings.NewReader(key), "my awesome super secret password") if err != nil { log.Fatalf("Failed to create authorized transactor: %v", err) } tx, err := token.Transfer(auth, common.HexToAddress("0x0000000000000000000000000000000000000000"), big.NewInt(1)) if err != nil { log.Fatalf("Failed to request token transfer: %v", err) } fmt.Printf("Transfer pending: 0x%x\n", tx.Hash()) }

    ==================无法交互====报错如下:

    [[email protected] src]# go run main.go token.go 2021/07/15 10:21:06 Failed to request token transfer: net/http: nil Context

    感谢帮助!

    opened by bitbeb 8
  • geth_heco V1.2.0 can't syning...

    geth_heco V1.2.0 can't syning...

    System information

    Geth version: geth version OS & Version: Windows/Linux/OSX Commit hash : (if develop)

    Expected behaviour

    eth_blocknumber is 8523412

    INFO [09-25|01:37:56.483] metric                                   method=executeBlock hash=0x14cf09ca3178fced3265e9d68782ac2f7632cf8a4473126daaf19cf4f027d96e number=8523413 trieHash=0s trieProc=0s size=21.49KiB txCount=60 ga
    sUsed=5191509 cost=29.910005ms                                                                                                                                                                                                   
    ERROR[09-25|01:37:56.484]                                                                                                                                                                                                        
    ########## BAD BLOCK #########                                                                                                                                                                                                   
    Chain config: {ChainID: 128 Homestead: 0 DAO: <nil> DAOSupport: true EIP150: 0 EIP155: 0 EIP158: 0 Byzantium: 0 Constantinople: 0 Petersburg: 0 Istanbul: 0, Muir Glacier: <nil>, YOLO v1: <nil>, RedCoastBlock: 6618800, Engine:
     congress}                                                                                                                                                                                                                       
                                                                                                                                                                                                                                     
    Number: 8523413                                                                                                                                                                                                                  
    Hash: 0x14cf09ca3178fced3265e9d68782ac2f7632cf8a4473126daaf19cf4f027d96e                                                                                                                                                         
             0: cumulative: 22383 gas: 22383 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xedab6537045b91f822618c8efa7c2b56334e3b43d9ebf827b623dd6c69f4937f logs: [0xc0021478c0] bloom: 0000000000000000004000
    000000000000000000000000000000000000000000000000000000000000000000000000000020000004000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000001
    008000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000800000040000000000000000200000000000000000000000000000000000000000004000000000000000000000000000000000000
    0000000000000000000000000000000000000000 state:                                                                                                                                                                                  
             1: cumulative: 59754 gas: 37371 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x21808ad063b18862091b1c0a486ce0e059cb6a51e2c347e7ee91a2d702f6ff84 logs: [0xc002147970] bloom: 0000000000000000000000
    000000000000000000000000000000000000000000000000000000002000010000000000000000000004001000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000001
    008000000000000000000000000000000000000000000000000020000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000100000000000
    0000000000000000000000000000000000000000 state:                                                                                                                                                                                  
             2: cumulative: 474631 gas: 414877 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xb2ce66f8887a995e45f49eaa7c84dc19f3d2f9946ef46ff2ca26e245ee2419ab logs: [0xc002147a20 0xc002147ad0 0xc002147b80] b
    loom: 080400000000000000010000000000000000000000000000000000001010000000000000200000000000080000000000400000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000200000
    000000000000000000000000000000200000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000400000000800000000000800000000000000000800020000000000000000000000000000800000000000
    000000012000000000000000100000000000000000000400000000a0000000000000 state:                                                                                                                                                      
             3: cumulative: 790694 gas: 316063 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xb22e60bd3266ccf6ed625b8ae7abbeaff5fba7da007ce371cac5ae5e7448cfc2 logs: [0xc002147c30 0xc002147ce0 0xc002147d90] b
    loom: 080000000000000000010000000000000000000000000000000000000010000000000000200000000000000000000000400000000000000000000000000000000000000000000000020000000000000000001400000000000000000000000000000000000000000000000000000
    000000000000000000000000000000000000000200000000000000000000002000000000040000000000000000000000000000000000000000000000000000000000000000000400000000800000000000800000000000000000800020000000000000000000000000000800000000000
    000000010020000000000000100000000000000000000400000000a0000000000000 state:                                                                                                                                                      
             4: cumulative: 1190571 gas: 399877 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x92150d208fd7d452093eee21df836d09215d7c7330767ee7bab964fa021319dc logs: [0xc002147e40 0xc002147ef0 0xc0155a4000] 
    bloom: 08000000000000000001000000000000000000000000001000000000001000000000000020000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000010000000000000000000000
    000000000000000020000000000000200000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000240000000080000000400080000000000000000080002000000000000000000000000000080000000000
    0000000010000000000000000100000000000000000000400000000a0000000000000 state:   
    
             55: cumulative: 5191509 gas: 64123 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x1826aef1d7deacc72faf580600dfd68b6ac55a2cb8581bec7b1b77fb01cff4f9 logs: [0xc0433286e0] bloom: 0000000000000000000000400000000000000000000000000000000000000000000000000000000000000a000080000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000000000000000000001020000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000002000000000000000000000000000000000 state:
             56: cumulative: 5191509 gas: 0 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x9b1af769607ef53100668ec9640758575e7e8f012dbfeec0ac08d95b0ca17469 logs: [0xc043328790] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000008008000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000002000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000020000001000001000004000000000000000000000000000000000000000000000000000000000000000000000000 state:
             57: cumulative: 5191509 gas: 0 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x4dd2b1276c4ccf5e78cbe3769144bde99d97c3afeee781ea778421ee4d9c85fa logs: [] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 state:
             58: cumulative: 5191509 gas: 0 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0xbf93bffd4a90b4339b74ba52c17e0f63d055abdf737b74bad866448f6b6dcae6 logs: [0xc043328840] bloom: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000010000000000000000000000000000000000000000000002000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000020000101000001000006000000000000000000000000000000000000000000000000000000000000000000000000 state:
             59: cumulative: 5191509 gas: 0 contract: 0x0000000000000000000000000000000000000000 status: 1 tx: 0x46f8aa265060a55e81a9093d562838513c417ed1e119988b1158eba1addc0ff3 logs: [0xc0433288f0] bloom: 00010000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000084000000000000000000000008008000000000000080000000000000000000080000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000002000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000 state:
    
    Error: invalid merkle root (remote: 1ab173585b61eedaf638e6561191947c9b449f2da534b73bcabdbfd183923990 local: aa4e7f6b497c0b1a496cf308bfbd08c06d557024f294049c5e2c3c67651c659c)
    ##############################
    
    WARN [09-25|01:39:11.435] Synchronisation failed, dropping peer    peer=7d0add301b6e96bc err="retrieved hash chain is invalid: invalid merkle root (remote: 1ab173585b61eedaf638e6561191947c9b449f2da534b73bcabdbfd183923990 local: aa4e7f6b497c0b1a496cf308bfbd08c06d557024f294049c5e2c3c67651c659c)"
    
    opened by 1b1og-com 7
  • geth syncing is hanged

    geth syncing is hanged

    System information

    Geth version: 1.1.1-stable OS & Version: Ubuntu 20.04.2 LTS Server location: AWS us-east Server type: Amazon EC2 M6g instances are powered by Arm-based AWS Graviton2 processors. Commit hash : b5a6d1aec0be3021e2eb98d7a79097581d2afa07

    Expected behaviour

    geth is full sync the latest blocks of heco mainnet.

    Actual behaviour

    geth syncing is hanged and the following error is reported.

    INFO [07-27|08:02:50.182] metric method=broadcastBlock peer=008f72fd83d9d072 hash=0x35addb623f921e03da96122aead7f631fa5406eb8e2408d13bb544f7161fc898 number=6826402 fullBlock=false

    Steps to reproduce the behaviour

    1. Install golang and build geth.
    2. Syncing blocks.
    #!/usr/bin/env bash
    nohup /data/heco/geth \--config /data/heco/config.toml  \
    --logpath /data/heco/logs \--verbosity 3  >> /data/heco/logs/systemd_chain_console.out 2>&1 &
    
    1. Syncing the latest blocks and hanged.
    opened by dbarobin 6
  • 启动节点后,一直打印Looking for peers

    启动节点后,一直打印Looking for peers

    • 已经使用创世文件初始化了
    • 配置文件里面也添加了Static节点列表
    • 打印信息如下:
    heco_node    | INFO [02-24|01:57:49.133] Looking for peers                        peercount=0 tried=88 static=3
    heco_node    | INFO [02-24|01:58:02.694] Looking for peers                        peercount=0 tried=95 static=3
    heco_node    | INFO [02-24|01:58:13.198] Looking for peers                        peercount=0 tried=40 static=3
    heco_node    | INFO [02-24|01:58:23.479] Looking for peers                        peercount=0 tried=75 static=3
    heco_node    | INFO [02-24|01:58:33.499] Looking for peers                        peercount=1 tried=161 static=3
    heco_node    | INFO [02-24|01:58:43.515] Looking for peers                        peercount=0 tried=38  static=3
    heco_node    | INFO [02-24|01:58:53.707] Looking for peers                        peercount=1 tried=36  static=3
    heco_node    | INFO [02-24|01:59:04.454] Looking for peers                        peercount=0 tried=88  static=3
    heco_node    | INFO [02-24|01:59:14.861] Looking for peers                        peercount=0 tried=110 static=3
    heco_node    | INFO [02-24|01:59:24.881] Looking for peers                        peercount=0 tried=72  static=3
    heco_node    | INFO [02-24|01:59:34.922] Looking for peers                        peercount=2 tried=99  static=3
    heco_node    | INFO [02-24|01:59:44.936] Looking for peers                        peercount=1 tried=35  static=3
    heco_node    | INFO [02-24|01:59:55.071] Looking for peers                        peercount=0 tried=73  static=3
    

    该如何解决才能开始同步节点?

    opened by liuxh-go 5
  • v1.2.1 will not build with supplied Dockerfile

    v1.2.1 will not build with supplied Dockerfile

    System information

    Geth version: v1.2.1 OS & Version: Ubuntu 20.04, docker.io

    Actual behaviour

    Build on golang:1.16-alpine as in the Dockerfile fails with these errors:

    # github.com/ethereum/go-ethereum/crypto/secp256k1
    /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: crypto/secp256k1/gmp/linux-amd64/lib/libgmp.a(assert.o): in function `__gmp_assert_header':
    assert.c:(.text+0x35): undefined reference to `__fprintf_chk'
    /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: crypto/secp256k1/gmp/linux-amd64/lib/libgmp.a(assert.o): in function `__gmp_assert_fail':
    assert.c:(.text+0x95): undefined reference to `__fprintf_chk'
    /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: crypto/secp256k1/gmp/linux-amd64/lib/libgmp.a(assert.o): in function `__gmp_assert_header':
    assert.c:(.text+0x59): undefined reference to `__fprintf_chk'
    /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: crypto/secp256k1/gmp/linux-amd64/lib/libgmp.a(memory.o): in function `__gmp_default_allocate':
    memory.c:(.text+0x3c): undefined reference to `__fprintf_chk'
    /usr/lib/gcc/x86_64-alpine-linux-musl/10.3.1/../../../../x86_64-alpine-linux-musl/bin/ld: crypto/secp256k1/gmp/linux-amd64/lib/libgmp.a(memory.o): in function `__gmp_default_reallocate':
    memory.c:(.text+0x8f): undefined reference to `__fprintf_chk'
    collect2: error: ld returned 1 exit status
    util.go:46: exit status 2
    exit status 1
    make: *** [Makefile:16: geth] Error 1
    

    The build succeeds when changing the Dockerfile to use golang:1.16-bullseye instead.

    bug 
    opened by yorickdowne 3
  • Signature from Ledger Nano X will be marked as invalid transaction

    Signature from Ledger Nano X will be marked as invalid transaction

    Hello,

    I am a user of Hecochain, and already deposit some HT into my Hecochain address.

    However, when I am sending transactions on my Ledger Nano X to transfer the HT to other addresses, it always says "invalid signature". Such a situation has last for at least 5 days, and my HT is "freezed" in my Hecochain address.

    You can see the picture below, I am sure the signature is signed by the corresponding address. image

    I have reported this issue in WeChat, but no one is replying to me. If you do not trust me, please have a try on your own.

    Please help me if possible.

    opened by BlankerL 3
  • Unable to retrieve the latest block information using web3js

    Unable to retrieve the latest block information using web3js

    Hi,

    I try to get the latest block and it always returns me value 0. In addition, it seems that I cannot retrieve transaction receipts neither for the latest blocks (return is null). I can only get it 5-10 minutes later.

    From the node log file , I saw it written :

    Imported new block headers count=1 elapsed=1.795ms number=17,394,889 hash=794b4e..b05617

    The number seems to be the latest block but I cannot retrieve the information. I used SyncMode snap to run my node. What should I do in this case to have a full and instant access to node data?

    Thanks.

    opened by dandavid3000 2
  • About contract creation

    About contract creation

    How to solve this problem: when I deploy a contract by REMIX, it shows the error: creation of Storage errored: Error: [ethjs-query] while formatting outputs from RPC '{"value":{"code":-32603,"data":{"code":-32000,"message":"transaction underpriced"}}}' When I use ethers, the error occurs too. Could you please tell me how to solve it? How to set the gas price?

    opened by LuckyLQD 2
  • geth not startup

    geth not startup

    INFO [09-18|10:16:56.182] Starting Geth on testnet... Fatal: /data/heco/config.toml, line 3: field 'DiscoveryURLs' is not defined in ethconfig.Config, see https://godoc.org/github.com/ethereum/go-ethereum/eth/ethconfig#Config for available fields

    opened by SundyHu 2
  • upgrade the node to 1.2.0-stable , but has a error, Fatal: /data/blockdata/heco/conf/config.toml, line 3: field 'DiscoveryURLs' is not defined in ethconfig.Config, see https://godoc.org/github.com/ethereum/go-ethereum/eth/ethconfig#Config for available fields,

    upgrade the node to 1.2.0-stable , but has a error, Fatal: /data/blockdata/heco/conf/config.toml, line 3: field 'DiscoveryURLs' is not defined in ethconfig.Config, see https://godoc.org/github.com/ethereum/go-ethereum/eth/ethconfig#Config for available fields,

    System information

    Geth version: geth version OS & Version: Windows/Linux/OSX Commit hash : (if develop)

    Expected behaviour

    Actual behaviour

    Steps to reproduce the behaviour

    Backtrace

    [backtrace]
    

    When submitting logs: please submit them as text and not screenshots.

    opened by malingzhao 2
  • How to trace tokens on HECO chain?

    How to trace tokens on HECO chain?

    Hello: I have a question: I transfer some Ruff (Ruff Chain) tokens from one HECO address to another HECO address, I got successful notice from the source, but after more than 20 hours, I can't see the Ruff tokens arrive on the target address. The source address is something like: 0x10a ... (total 42 bytes), the target address is something like: 0x91 ... (total 42 bytes). Let me know how can I trace where are the Ruff tokens in HECO chain. To transfer some Ruff tokens takes more than 20 hours, is it normal? Please advise, Thanks,

    opened by zydjohnHotmail 1
  • panic: runtime error: integer divide by zero

    panic: runtime error: integer divide by zero

    INFO [08-19|19:24:41.001] Successfully sealed new block            number=200 sealhash=3b2230..f94e91 hash=c9f983..6611fc elapsed=2.996s
    INFO [08-19|19:24:41.001] 🔗 block reached canonical chain          number=193 hash=bcde61..ad91c3
    INFO [08-19|19:24:41.001] 🔨 mined potential block                  number=200 hash=c9f983..6611fc
    panic: runtime error: integer divide by zero
    
    goroutine 72 [running]:
    github.com/ethereum/go-ethereum/consensus/congress.(*Snapshot).inturn(0x0?, 0xc9, {0xb4, 0x5b, 0x3b, 0x1a, 0xa3, 0x53, 0x24, 0x77, ...})
            github.com/ethereum/go-ethereum/consensus/congress/snapshot.go:203 +0xb0
    github.com/ethereum/go-ethereum/consensus/congress.calcDifficulty(0xa39de29dcec6bd7f?, {0xb4, 0x5b, 0x3b, 0x1a, 0xa3, 0x53, 0x24, 0x77, 0xd8, ...})
            github.com/ethereum/go-ethereum/consensus/congress/congress.go:1119 +0x4c
    github.com/ethereum/go-ethereum/consensus/congress.(*Congress).Prepare(0xc0002e75f0, {0x17dc278, 0xc00060b000}, 0xc002f22900)
            github.com/ethereum/go-ethereum/consensus/congress/congress.go:571 +0x127
    github.com/ethereum/go-ethereum/miner.(*worker).commitNewWork(0xc000142000, 0xc00025bc94?, 0x0, 0x62ff72f9)
            github.com/ethereum/go-ethereum/miner/worker.go:956 +0x645
    github.com/ethereum/go-ethereum/miner.(*worker).mainLoop(0xc000142000)
            github.com/ethereum/go-ethereum/miner/worker.go:474 +0x63b
    created by github.com/ethereum/go-ethereum/miner.newWorker
            github.com/ethereum/go-ethereum/miner/worker.go:241 +0x78a
    make: *** [Makefile:8:start] 错误 2
    
    opened by youngqqcn 2
  • Private node in HECO

    Private node in HECO

    Running private node in heco chain. Using same genesis file mentioned in heco document [https://docs.hecochain.com/#/dev/private_chain?id=using-docker-compose-to-deploy-a-private-chain]. In that, we modified set system contract code and extra data, the mining process is running successfully. But sending a transaction is always reverting and the mining process is stopped.

    Logs: INFO [12-25|12:50:13.914] Looking for peers peercount=0 tried=131 static=0 ERROR[12-25|12:50:15.002] ExecuteMsg failed err="execution reverted" ret= panic: execution reverted goroutine 88 [running]: github.com/ethereum/go-ethereum/consensus/congress.(*Congress).FinalizeAndAssemble(0xc00026b790, 0x19f9738, 0xc0003e3000, 0xc0023ad200, 0xc000e44d00, 0xc0001149d8, 0x1, 0x1, 0xc0017dd2f0, 0x0, ...) github.com/ethereum/go-ethereum/consensus/congress/congress.go:727 +0xd86 github.com/ethereum/go-ethereum/miner.(*worker).commit(0xc000328000, 0xc0017dd2f0, 0x0, 0x2, 0x0, 0xc001c0ab01, 0xc069e2c1c023924d, 0x13cf16b14a, 0x244c020, 0x0, ...) github.com/ethereum/go-ethereum/miner/worker.go:1060 +0x1ef github.com/ethereum/go-ethereum/miner.(*worker).commitNewWork(0xc000328000, 0xc001c0ab58, 0x1, 0x61c71382) github.com/ethereum/go-ethereum/miner/worker.go:1048 +0x845 github.com/ethereum/go-ethereum/miner.(*worker).mainLoop(0xc000328000) github.com/ethereum/go-ethereum/miner/worker.go:474 +0x8a7 created by github.com/ethereum/go-ethereum/miner.newWorker github.com/ethereum/go-ethereum/miner/worker.go:241 +0x5d6

    opened by Neoblock8 0
  • v1.2.2私链

    v1.2.2私链

    System information

    Geth version: v1.2.2 OS & Version: Ubuntu20.04 Commit hash : (if develop)

    Actual behaviour

    通过系统合约添加的validator 使用miner.start()不会出块, 节点日志输出 err="unauthorized validator", 即便过了一个epoch初始validator也不会停止出块, validator是添加成功了的 image

    When submitting logs: please submit them as text and not screenshots.

    opened by xian9yu 0
  • Runtime outof memory in HECO

    Runtime outof memory in HECO

    Hi everyone, Running private network in heco. It will run for 1 day and return runtime out of memory error. Hereby, attached the screenshot of error: Screenshot from 2021-09-17 12-29-07

    opened by blockchain-app12 2
Releases(v1.2.2)
  • v1.2.2(Dec 13, 2021)

  • v1.2.1(Oct 19, 2021)

  • v1.2.0(Sep 14, 2021)

    This release contains go-ethereum's code follow up AND HECO chain-governance improvement.

    And this release will support three hard-forks, all of these hard-forks share the same hard-fork block number, which is:

    • 8290000 for the Testnet (Estimated Target Date: Thu Sep 16 2021 10:52:06 GMT+0800)
    • 8577000 for the Mainnet (Estimated Target Date: Sun Sep 26 2021 10:54:45 GMT+0800)

    All nodes should be upgraded before the hard-forks take effect.

    Sophon Hard Fork

    • upgrade some system contracts, supportting the new mechanism of block-rewards distribution (see the London hard-fork for detail).

    Berlin Hard Fork

    It's the same as the go-ethereum.

    London Hard Fork

    • Modify the distribution of block rewards: (a) block rewards are divided into three parts: burn, foundation rewards and validator rewards.The rates can be adjusted through the system contract. (b) the amount of gas to be burned is controled by the burnRate in the system-validators contract, burned = blockRewards * burnRate/10000, and the burnRate can be changed by the HECO DAO; (c) the burned HT will be sent to 0x000000000000000000000000000000000000FaaA.
    • The BaseFee will always be zero.

    Other features:

    Mostly the same as go-ethereum v1.10.8, except that

    • the TxLookupLimit is 0 by default (which means keep all transactions index by default).
    • now it will be ok to debug_trace those blocks containing sys-txs (transactions initiated inside the Congress engine).
    Source code(tar.gz)
    Source code(zip)
    geth-darwin-amd64(33.14 MB)
    geth-darwin-amd64.shasum256(84 bytes)
    geth-linux-amd64(31.96 MB)
    geth-linux-amd64.shasum256(83 bytes)
  • v1.1.3(Aug 27, 2021)

  • v1.1.2(Aug 21, 2021)

    This is a hot-fix version, and only the archive-nodes are affected.

    Bug fix

    • Currently the Congress's system transactions can not be traced, and one of them will cause an error and then make the traceBlock failed totally. This release is a hot-fix to this issue, and it's a temporary solution.
    Source code(tar.gz)
    Source code(zip)
  • v1.1.1(Jul 8, 2021)

    v1.1.1 is a minor release with the sole purpose of enabling the RedCoast hard-fork on Mainnet.

    The hard-fork block number on Mainnet is 6618800(20 July 2021 UTC+8:00).

    For a full rundown of the changes please consult the v1.1.0 release note.

    Source code(tar.gz)
    Source code(zip)
    geth-linux-amd64(28.51 MB)
  • v1.1.0(Jun 30, 2021)

    RedCoast Hard Fork

    This hardfork is not enabled on Mainnet, only for Testnet now.

    • System Governance. In case of emergency, administrators can simulate any address and contract, make transactions on the chain, generate special system transaction receipts and make them public on the chain.

    • Transaction Address Blacklist. All transactions associated with blacklisted addresses are blocked on the chain based on rules.

    • Contract developer permission list. New contract creator must be a whitelisted user; there is a master switch for this feature, which is initially turned off.

    • Node staking. Allow external users to run validator nodes, and users can be rewarded by staking.

    New features

    • Gas price prediction base on the txpool, and with a rpc interface eth_gas Price Prediction for query;
    • Jam index (a quantitative index) for accessing the transaction jam status quantitatively, it's a metrics for this index, and also a rpc interface for query: txpool_jamIndex;

    Improvement

    • Now the EstimateGas will return a non-exact value in order to improve the performance, and the returned gas value will be greater than the exact one, and with an error range less than 4000 gas.

    Bug fix

    • eth/filters: fix potential deadlock in filter timeout loop;
    • eth/filters: fix potential timeout in getting logs if the block range is too large, set a maxFilterBlockRange const value.
    Source code(tar.gz)
    Source code(zip)
    geth-linux-amd64(28.51 MB)
  • v1.0.0(Dec 21, 2020)

Owner
null
A phoenix Chain client based on the go-ethereum fork,the new PoA consensus engine is based on the VRF algorithm.

Phoenix Official Golang implementation of the Phoenix protocol. !!!The current version is for testing and developing purposes only!!! Building the sou

g_master 14 Apr 28, 2022
A Binance Smart Chain client based on the go-ethereum fork

A Binance Smart Chain client based on the go-ethereum fork

null 2k Dec 31, 2022
A Binance Smart Chain client based on the go-ethereum fork

Binance Smart Chain The goal of Binance Smart Chain is to bring programmability and interoperability to Binance Chain. In order to embrace the existin

Sahara Street Platform 0 Feb 8, 2022
Ethereum-vanity-wallet - A fork of https://github.com/meehow/ethereum-vanity-wallet but the key can be exported to a JSON keystore file

ethereum-vanity-wallet See https://github.com/meehow/ethereum-vanity-wallet This version: doesn't display the private key let's you interactively expo

null 0 Jan 2, 2022
Ethereum go-ethereum - Official Golang implementation of the Ethereum protocol

Go Ethereum Official Golang implementation of the Ethereum protocol. Automated b

null 6 Feb 17, 2022
A Binance Smart Chain client based on the erigon fork

Erigon Erigon is an implementation of Ethereum (aka "Ethereum client"), on the efficiency frontier, written in Go. System Requirements Usage Getting S

null 33 Sep 17, 2022
A more elegant Client for huobi API with golang

huobi A more elegant Client for huobi API example package main import ( "context" "log" "os" "github.com/zhenzou/huobi" "github.com/zhenzou/huo

september 0 Dec 28, 2021
A Golang cryptocurrency trading API & Library. Support Binance, BitMEX, Deribit, Bybit, Huobi DM, OKEX Futures and more.

CREX 中文 | English CREX 是一个用Golang语言开发的量化交易库。支持tick级别数字币期货平台的回测和实盘。实盘与回测无缝切换,无需更改代码。 回测 示例 @backtest 交易结果 开源策略 https://github.com/coinrust/trading-stra

Paranoid 4 Nov 18, 2022
LEO (Low Ethereum Orbit) is an Ethereum Portal Network client.

LEO LEO (Low Ethereum Orbit) is an Ethereum Portal Network client. What makes LEO different from other Portal Network clients is that it uses libp2p f

Valist, Inc. 10 Apr 19, 2022
This library aims to make it easier to interact with Ethereum through de Go programming language by adding a layer of abstraction through a new client on top of the go-ethereum library.

Simple ethereum client Simple ethereum client aims to make it easier for the developers to interact with Ethereum through a new layer of abstraction t

Jero 3 May 1, 2022
The goal of Binance Smart Chain is to bring programmability and interoperability to Binance Chain

Binance Smart Chain The goal of Binance Smart Chain is to bring programmability

lin 1 Aug 17, 2022
Berylbit PoW chain using Ethash, EPI-Burn and geth. The chain will be using bot congestion flashbot bundles through nodes

Berylbit PoW chain using Ethash, EPI-Burn and geth. The chain will be using bot congestion flashbot bundles through nodes. Soon, We will work towards

BerylBit 9 Jun 30, 2022
Go-chain - EVM-compatible chain secured by the Lachesis consensus algorithm

ICICB galaxy EVM-compatible chain secured by the Lachesis consensus algorithm. B

Talented Blockchain Developer 4 Jun 8, 2022
Rei chain fork from quorum using raft consensus

GoQuorum is an Ethereum-based distributed ledger protocol with transaction/contract privacy and new consensus mechanisms. GoQuorum is a fork of go-eth

Moon Rhythm 12 Aug 8, 2022
On chain interactive fraud prover for Ethereum

The cannon (cannon cannon cannon) is an on chain interactive fraud prover It's half geth, half of what I think truebit was supposed to be. It can prov

George Hotz 18 Dec 9, 2022
ConsenSys Software 9 Jan 7, 2023
Go-ethereum - Official Golang implementation of the Ethereum protocol

Go Ethereum Official Golang implementation of the Ethereum protocol. Automated b

i06 0 Jan 4, 2022
Yet another Binance Smart Chain client based on TrustFi Network

TrustFi Smart Chain The goal of TrustFi Smart Chain is to bring programmability and interoperability to Binance Chain. In order to embrace the existin

TrustFi Network 19 Mar 27, 2021
Tool for monitoring your Ethereum clients. Client-agnostic as it queries the standardized JSON-RPC APIs

e7mon Tool for monitoring your Ethereum clients. Client-agnostic as it queries the standardized JSON-RPC APIs. However, the execution client should be

null 31 Dec 20, 2022