crypto: return common.Address rather than raw bytes

pull/1181/head
obscuren 10 years ago
parent dcdb4554d7
commit 0f51ee6c88
  1. 6
      core/types/transaction_test.go
  2. 8
      crypto/crypto.go
  3. 2
      crypto/key.go

@ -64,7 +64,7 @@ func decodeTx(data []byte) (*Transaction, error) {
return &tx, rlp.Decode(bytes.NewReader(data), &tx)
}
func defaultTestKey() (*ecdsa.PrivateKey, []byte) {
func defaultTestKey() (*ecdsa.PrivateKey, common.Address) {
key := crypto.ToECDSA(common.Hex2Bytes("45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8"))
addr := crypto.PubkeyToAddress(key.PublicKey)
return key, addr
@ -85,7 +85,7 @@ func TestRecipientEmpty(t *testing.T) {
t.FailNow()
}
if !bytes.Equal(addr, from.Bytes()) {
if addr != from {
t.Error("derived address doesn't match")
}
}
@ -105,7 +105,7 @@ func TestRecipientNormal(t *testing.T) {
t.FailNow()
}
if !bytes.Equal(addr, from.Bytes()) {
if addr != from {
t.Error("derived address doesn't match")
}
}

@ -201,7 +201,7 @@ func ImportBlockTestKey(privKeyBytes []byte) error {
ecKey := ToECDSA(privKeyBytes)
key := &Key{
Id: uuid.NewRandom(),
Address: common.BytesToAddress(PubkeyToAddress(ecKey.PublicKey)),
Address: PubkeyToAddress(ecKey.PublicKey),
PrivateKey: ecKey,
}
err := ks.StoreKey(key, "")
@ -247,7 +247,7 @@ func decryptPreSaleKey(fileContent []byte, password string) (key *Key, err error
ecKey := ToECDSA(ethPriv)
key = &Key{
Id: nil,
Address: common.BytesToAddress(PubkeyToAddress(ecKey.PublicKey)),
Address: PubkeyToAddress(ecKey.PublicKey),
PrivateKey: ecKey,
}
derivedAddr := hex.EncodeToString(key.Address.Bytes()) // needed because .Hex() gives leading "0x"
@ -305,7 +305,7 @@ func PKCS7Unpad(in []byte) []byte {
return in[:len(in)-int(padding)]
}
func PubkeyToAddress(p ecdsa.PublicKey) []byte {
func PubkeyToAddress(p ecdsa.PublicKey) common.Address {
pubBytes := FromECDSAPub(&p)
return Sha3(pubBytes[1:])[12:]
return common.BytesToAddress(Sha3(pubBytes[1:])[12:])
}

@ -124,7 +124,7 @@ func NewKeyFromECDSA(privateKeyECDSA *ecdsa.PrivateKey) *Key {
id := uuid.NewRandom()
key := &Key{
Id: id,
Address: common.BytesToAddress(PubkeyToAddress(privateKeyECDSA.PublicKey)),
Address: PubkeyToAddress(privateKeyECDSA.PublicKey),
PrivateKey: privateKeyECDSA,
}
return key

Loading…
Cancel
Save