eip | title | author | type | category | status | created |
---|---|---|---|---|---|---|
695 |
Create `eth_chainId` method for JSON-RPC |
Isaac Ardis <[email protected]>, Wei Tang <[email protected]>, Fan Torchz (@tcz001) |
Standards Track |
Interface |
Draft |
2017-08-21 |
Include eth_chainId
method in eth_
-namespaced JSON-RPC methods.
The eth_chainId
method should return a single STRING result
for an integer value in hexadecimal format, describing the
currently configured "Chain Id" value used for signing replay-protected transactions,
introduced via EIP-155.
Currently although we can use net_version RPC call to get the current network ID, there's no RPC for querying the chain ID. This makes it impossible to determine the current actual blockchain using the RPC.
Returns the currently configured chain id, a value used in replay-protected transaction signing as introduced by EIP-155.
none
QUANTITY
- integer of the current chain id. Defaults are mainnet=61, morden=62.
curl -X POST --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'
// Result
{
"id":83,
"jsonrpc": "2.0",
"result": "0x3d" // 61
}
An ETH/ETC client can accidentally connect to an ETC/ETH RPC endpoint without knowing it unless it tries to sign a transaction or it fetch a transaction that is known to have signed with a chain ID. This has since caused trouble for application developers, such as MetaMask, to add multi-chain support.
Please note related links:
Not relevant.
Not currently implemented.
Would be good to have a test to confirm that expected==got.
Return value QUANTITY
adheres to standard JSON RPC hex value encoding, as documented here: https://github.com/ethereum/wiki/wiki/JSON-RPC#hex-value-encoding.
Copyright and related rights waived via CC0.