Commit 7df0669b authored by yann300's avatar yann300

fix signature

parent 9a360cc5
const Web3 = require('web3') const Web3 = require('web3')
const { stripHexPrefix } = require('ethereumjs-util') const { stripHexPrefix, hashPersonalMessage } = require('ethereumjs-util')
class InjectedProvider { class InjectedProvider {
...@@ -35,10 +35,10 @@ class InjectedProvider { ...@@ -35,10 +35,10 @@ class InjectedProvider {
} }
signMessage (message, account, _passphrase, cb) { signMessage (message, account, _passphrase, cb) {
const hashedMsg = Web3.utils.sha3(message) const messageHash = hashPersonalMessage(Buffer.from(message))
try { try {
this.executionContext.web3().eth.sign(hashedMsg, account, (error, signedData) => { this.executionContext.web3().eth.sign(message, account, (error, signedData) => {
cb(error, hashedMsg, signedData) cb(error, '0x' + messageHash.toString('hex'), signedData)
}) })
} catch (e) { } catch (e) {
cb(e.message) cb(e.message)
......
const Web3 = require('web3') const Web3 = require('web3')
const { stripHexPrefix } = require('ethereumjs-util') const { stripHexPrefix, hashPersonalMessage } = require('ethereumjs-util')
const Personal = require('web3-eth-personal') const Personal = require('web3-eth-personal')
class NodeProvider { class NodeProvider {
...@@ -43,11 +43,11 @@ class NodeProvider { ...@@ -43,11 +43,11 @@ class NodeProvider {
} }
signMessage (message, account, passphrase, cb) { signMessage (message, account, passphrase, cb) {
const hashedMsg = Web3.utils.sha3(message) const messageHash = hashPersonalMessage(Buffer.from(message))
try { try {
const personal = new Personal(this.executionContext.web3().currentProvider) const personal = new Personal(this.executionContext.web3().currentProvider)
personal.sign(hashedMsg, account, passphrase, (error, signedData) => { personal.sign(message, account, passphrase, (error, signedData) => {
cb(error, hashedMsg, signedData) cb(error, '0x' + messageHash.toString('hex'), signedData)
}) })
} catch (e) { } catch (e) {
cb(e.message) cb(e.message)
......
const Web3 = require('web3') const Web3 = require('web3')
const { BN, privateToAddress, stripHexPrefix } = require('ethereumjs-util') const { BN, privateToAddress, stripHexPrefix, hashPersonalMessage } = require('ethereumjs-util')
const RemixSimulator = require('remix-simulator') const RemixSimulator = require('remix-simulator')
class VMProvider { class VMProvider {
...@@ -54,12 +54,12 @@ class VMProvider { ...@@ -54,12 +54,12 @@ class VMProvider {
} }
signMessage (message, account, _passphrase, cb) { signMessage (message, account, _passphrase, cb) {
const hashedMsg = Web3.utils.sha3(message) const messageHash = hashPersonalMessage(Buffer.from(message))
this.web3.eth.sign(hashedMsg, account, (error, signedData) => { this.web3.eth.sign(message, account, (error, signedData) => {
if (error) { if (error) {
return cb(error) return cb(error)
} }
cb(null, hashedMsg, signedData) cb(null, '0x' + messageHash.toString('hex'), signedData)
}) })
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment