---
# System prepended metadata

title: Substrate ewasm requirements

---

# Substrate ewasm requirements

## Provide a coinbase account at genesis

This account should be hardcoded in the source code. 

Coinbase: `0x7eff122b94897ea5b0e2a9abf47b86337fafebdc`
Private key: `0ce9f0b80483fbae111ac7df48527d443594a902b00fc797856e35eb7b12b4be`
Keystore:
```
{
  "address":"7eff122b94897ea5b0e2a9abf47b86337fafebdc",
  "id":"f86a62b4-0621-4616-99af-c4b7f38fcc48","version":3,
  "crypto":{
    "cipher":"aes-128-ctr","ciphertext":"19de8a919e2f4cbdde2b7352ebd0be8ead2c87db35fc8e4c9acaf74aaaa57dad",
    "cipherparams":{"iv":"ba2bd370d6c9d5845e92fbc6f951c792"},
    "kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"c7cc2380a96adc9eb31d20bd8d8a7827199e8b16889582c0b9089da6a9f58e84"},
    "mac":"ff2c0caf051ca15d8c43b6f321ec10bd99bd654ddcf12dd1a28f730cc3c13730"
  }
}
```
Password: `1234`
Amount: `210000000000000000000000000` (That is 21M x 10^19 wei)

If people change it, they will need to re-build their own binary node software. 

## Provide release binary

Ubuntu 18.04 and 20.04 binaries. The above coinbase balance *could* be built into the binary.

Do we need to built Ethereum chainID into the binary as well?

## Demonstrate account operations

* Query the balance at address `0x7eff122b94897ea5b0e2a9abf47b86337fafebdc`
* Transfer coins from `0x7eff122b94897ea5b0e2a9abf47b86337fafebdc` to another account `0x77beb894fc9b0ed41231e51f128a347043960a9d`
* Query the balance at both addresses

## Demonstrate smart contract operations

* Deploy an ERC20 Ewasm contract from `0x7eff122b94897ea5b0e2a9abf47b86337fafebdc`
* Transfer ERC20 coins from `0x7eff122b94897ea5b0e2a9abf47b86337fafebdc` to another account `0x77beb894fc9b0ed41231e51f128a347043960a9d`
* Query the balance at both addresses



