INNER CODE UNIT · Go
func
volodymyrprokopyuk/go-blockchain · chain/account.go:42
func (k *p256k1PrivateKey) publicKey() *ecdsa.PublicKey {
return &ecdsa.PublicKey{Curve: ecc.P256k1(), X: k.X, Y: k.Y}
}
func (k *p256k1PrivateKey) privateKey() *ecdsa.PrivateKey {
return &ecdsa.PrivateKey{PublicKey: *k.publicKey(), D: k.D}
}
type Address string
func NewAddress(pub *ecdsa.PublicKey) Address {
jpub, _ := json.Marshal(newP256k1PublicKey(pub))
hash := make([]byte, 64)
sha3.ShakeSum256(hash, jpub)
return Address(hex.EncodeToString(hash[:32]))
}
type Account struct {