github syscoin/syscoin v4.3.0rc2
Syscoin 4.3.0rc2 Testnet Release

Syscoin NEVM testnet RC2, this is not intended to be a final release or run on mainnet. We are testing on our official testnet, migration happening on block 840000, this is an explorer you can follow for Syscoin blocks. More info to follow for NEVM explorers, faucets etc. Once we migrate to the new block, masternodes can upgrade by simply running the new version of code overtop of their existing install. No reindex should be necessary.

If one does not want to run Geth for NEVM part of the network you can define zmqpubnevm as an empty string which will skip running Geth and not validate EVM blocks.

Other useful links:
Web3 endpoint:
Network ID: 5700
Network name: NEVM Tanenbaum

Development links:
Internal bridge contracts:
Reference dapp to utilize bridge using web3/pali/metamask: (live at
Entry point into c++ syscoin mint funtion (burn on evm and mint as syscoin SYSX SPT):
Geth fork running alongside Syscoin Core:
Solidity opsysblockhash commit:

You can mine by adding configuration to syscoin.conf (or by specifying them as command line parameters) which will get passed to Geth running internally (process name 'sysgeth'):

Gas limit is optional, by default it is at 8000000 (8m gas limit). NEVM runs with EIP1559 enabled. Change '0xe600696eb0555c93f2c391a1406726cee239091d' with your NEVM address. The rest of the mining process remains the same.

Functionally when you mine, a ZMQ message will be sent to the local geth running configured in NEVM mode to respond to a new block packaging up transactions in the geth txpool. This will put the block into the Syscoin block alongside the transaction root, receipt root and block hash of the NEVM block into the Syscoin block header. The Syscoin block will be propagated through Syscoin nodes which will validate the NEVM block by extracting the NEVM block and passing the data to geth (via ZMQ) to deserialize the block and validate it. If the NEVM execution on the block is invalid, the Syscoin block will be flagged as invalid by the validating node. If the block is valid, the geth node will import and store the block into its state. Connects and Disconnects of blocks are handled this way and so Syscoin block validity depends on NEVM block validity.


pre-release18 days ago