eth: add personal_importRawKey for runtime private key import

This commit is contained in:
Ales Katona
2016-04-25 11:23:40 -06:00
parent 70b8b54cd2
commit 572da73d4d
3 changed files with 38 additions and 7 deletions

View File

@ -18,6 +18,7 @@ package eth
import (
"bytes"
"encoding/hex"
"encoding/json"
"errors"
"fmt"
@ -439,6 +440,16 @@ func (s *PrivateAccountAPI) NewAccount(password string) (common.Address, error)
return common.Address{}, err
}
func (s *PrivateAccountAPI) ImportRawKey(privkey string, password string) (common.Address, error) {
hexkey, err := hex.DecodeString(privkey)
if err != nil {
return common.Address{}, err
}
acc, err := s.am.ImportECDSA(crypto.ToECDSA(hexkey), password)
return acc.Address, err
}
// UnlockAccount will unlock the account associated with the given address with
// the given password for duration seconds. If duration is nil it will use a
// default of 300 seconds. It returns an indication if the account was unlocked.