mirror of https://github.com/status-im/EIPs.git
Update Solidity syntax in EIP-191 specs (#1547)
This commit is contained in:
parent
31dafbec20
commit
a8ac72dda5
|
@ -59,19 +59,23 @@ Using `0x19` thus makes it possible to extend the scheme by defining a version `
|
||||||
|
|
||||||
### Example
|
### Example
|
||||||
|
|
||||||
function submitTransactionPreSigned(address destination, uint value, bytes data, uint nonce, uint8 v, bytes32 r, bytes32 s)
|
The following snippet has been written in Solidity 0.5.0.
|
||||||
|
|
||||||
|
```solidity
|
||||||
|
function submitTransactionPreSigned(address destination, uint value, bytes data, uint nonce, uint8 v, bytes32 r, bytes32 s)
|
||||||
public
|
public
|
||||||
returns (bytes32 transactionHash)
|
returns (bytes32 transactionHash)
|
||||||
{
|
{
|
||||||
// Arguments when calculating hash to validate
|
// Arguments when calculating hash to validate
|
||||||
// 1: byte(0x19) - the initial 0x19 byte
|
// 1: byte(0x19) - the initial 0x19 byte
|
||||||
// 2: byte(0) - the version byte
|
// 2: byte(0) - the version byte
|
||||||
// 3: this - the validator address
|
// 3: this - the validator address
|
||||||
// 4-7 : Application specific data
|
// 4-7 : Application specific data
|
||||||
transactionHash = keccak256(byte(0x19),byte(0),this,destination, value, data, nonce);
|
transactionHash = keccak256(abi.encodePacked(byte(0x19),byte(0),address(this),destination, value, data, nonce));
|
||||||
sender = ecrecover(transactionHash, v, r, s);
|
sender = ecrecover(transactionHash, v, r, s);
|
||||||
// ...
|
// ...
|
||||||
}
|
}
|
||||||
|
```
|
||||||
|
|
||||||
## Copyright
|
## Copyright
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue