From 70c8656640a861d93ac40181c6c0bdd8faef856b Mon Sep 17 00:00:00 2001
From: obscuren <geffobscura@gmail.com>
Date: Fri, 2 May 2014 12:11:55 +0200
Subject: [PATCH] Added a KeyPairFromSec function which creates a new keypair
 based on the given seckey

---
 ethchain/keypair.go | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/ethchain/keypair.go b/ethchain/keypair.go
index a5af791d0..0f23bacdf 100644
--- a/ethchain/keypair.go
+++ b/ethchain/keypair.go
@@ -2,6 +2,7 @@ package ethchain
 
 import (
 	"github.com/ethereum/eth-go/ethutil"
+	"github.com/obscuren/secp256k1-go"
 	"math/big"
 )
 
@@ -14,6 +15,15 @@ type KeyPair struct {
 	state   *State
 }
 
+func NewKeyPairFromSec(seckey []byte) (*KeyPair, error) {
+	pubkey, err := secp256k1.GeneratePubKey(seckey)
+	if err != nil {
+		return nil, err
+	}
+
+	return &KeyPair{PrivateKey: seckey, PublicKey: pubkey}, nil
+}
+
 func NewKeyPairFromValue(val *ethutil.Value) *KeyPair {
 	keyPair := &KeyPair{PrivateKey: val.Get(0).Bytes(), PublicKey: val.Get(1).Bytes()}
 
-- 
GitLab