Merge pull request #3800 from ethcore/eth-sign
eth_sign RPC now hashes given data instead of getting the hash
This commit is contained in:
@@ -18,11 +18,11 @@ use std::str::FromStr;
|
||||
use std::collections::HashMap;
|
||||
use std::sync::Arc;
|
||||
use std::time::{Instant, Duration};
|
||||
use rustc_serialize::hex::ToHex;
|
||||
use rustc_serialize::hex::{FromHex, ToHex};
|
||||
use time::get_time;
|
||||
use rlp;
|
||||
|
||||
use util::{Uint, U256, Address, H256, FixedHash, Mutex};
|
||||
use util::{Uint, U256, Address, H256, FixedHash, Mutex, Hashable};
|
||||
use ethcore::account_provider::AccountProvider;
|
||||
use ethcore::client::{TestBlockChainClient, EachBlockWith, Executed, TransactionId};
|
||||
use ethcore::log_entry::{LocalizedLogEntry, LogEntry};
|
||||
@@ -294,8 +294,8 @@ fn rpc_eth_sign() {
|
||||
|
||||
let account = tester.accounts_provider.new_account("abcd").unwrap();
|
||||
tester.accounts_provider.unlock_account_permanently(account, "abcd".into()).unwrap();
|
||||
let message = H256::from("0x0cc175b9c0f1b6a831c399e26977266192eb5ffee6ae2fec3ad71c777531578f");
|
||||
let signed = tester.accounts_provider.sign(account, None, message).unwrap();
|
||||
let message = "0cc175b9c0f1b6a831c399e26977266192eb5ffee6ae2fec3ad71c777531578f".from_hex().unwrap();
|
||||
let signed = tester.accounts_provider.sign(account, None, message.sha3()).unwrap();
|
||||
|
||||
let req = r#"{
|
||||
"jsonrpc": "2.0",
|
||||
|
||||
@@ -26,7 +26,7 @@ use v1::types::ConfirmationResponse;
|
||||
use v1::tests::helpers::TestMinerService;
|
||||
use v1::tests::mocked::parity;
|
||||
|
||||
use util::{Address, FixedHash, Uint, U256, H256, ToPretty};
|
||||
use util::{Address, FixedHash, Uint, U256, ToPretty, Hashable};
|
||||
use ethcore::account_provider::AccountProvider;
|
||||
use ethcore::client::TestBlockChainClient;
|
||||
use ethcore::transaction::{Transaction, Action};
|
||||
@@ -186,11 +186,11 @@ fn should_check_status_of_request_when_its_resolved() {
|
||||
fn should_sign_if_account_is_unlocked() {
|
||||
// given
|
||||
let tester = eth_signing();
|
||||
let hash: H256 = 5.into();
|
||||
let data = vec![5u8];
|
||||
let acc = tester.accounts.new_account("test").unwrap();
|
||||
tester.accounts.unlock_account_permanently(acc, "test".into()).unwrap();
|
||||
|
||||
let signature = tester.accounts.sign(acc, None, hash).unwrap();
|
||||
let signature = tester.accounts.sign(acc, None, data.sha3()).unwrap();
|
||||
|
||||
// when
|
||||
let request = r#"{
|
||||
@@ -198,7 +198,7 @@ fn should_sign_if_account_is_unlocked() {
|
||||
"method": "eth_sign",
|
||||
"params": [
|
||||
""#.to_owned() + format!("0x{:?}", acc).as_ref() + r#"",
|
||||
""# + format!("0x{:?}", hash).as_ref() + r#""
|
||||
""# + format!("0x{}", data.to_hex()).as_ref() + r#""
|
||||
],
|
||||
"id": 1
|
||||
}"#;
|
||||
|
||||
Reference in New Issue
Block a user