Skip to content

Commit

Permalink
EIP-1344: Add chain id opcode (#1344)
Browse files Browse the repository at this point in the history
* Add chain id opcode

* Update EIP number

* Update file name

* Add discussion-to
  • Loading branch information
rmeissner authored and Arachnid committed Apr 1, 2019
1 parent 9b41cbc commit d053eb6
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions EIPS/eip-1344.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
eip: 1344
title: ChainID opcode
author: Richard Meissner (@rmeissner)
discussions-to: https://ethereum-magicians.org/t/add-chain-id-opcode-for-replay-protection-when-handling-signed-messages-in-contracts/1131
category: Core
type: Standards Track
status: Draft
created: 2018-08-22
---
### Specification
Adds a new opcode at 0x46, which takes 0 stack arguments. It will return the chain id of the chain where the block was mined. It should cost 2 gas (G_base) to execute this opcode.
### Motivation
[EIP-155](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-155.md) proposes to use the chain id to prevent replay attacks between different chains. It would be a great benefit to have the same possibility inside smart contracts when handling signatures.
The current approach proposed by [EIP-712](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-712.md) is to specify the chain id on compile time. Using this approach will result in problems after a hardfork.
By adding the opcode it would be possible to access the current chain id and validate signatures based on that.

0 comments on commit d053eb6

Please sign in to comment.