2018-03-17 11:53:21 +00:00
|
|
|
package crypto
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/CityOfZion/neo-go/pkg/util"
|
|
|
|
)
|
|
|
|
|
|
|
|
// AddressFromUint160 returns the "NEO address" from the given
|
|
|
|
// Uint160.
|
|
|
|
func AddressFromUint160(u util.Uint160) string {
|
|
|
|
// Dont forget to prepend the Address version 0x17 (23) A
|
2019-11-27 09:20:31 +00:00
|
|
|
b := append([]byte{0x17}, u.BytesBE()...)
|
2018-03-17 11:53:21 +00:00
|
|
|
return Base58CheckEncode(b)
|
|
|
|
}
|
|
|
|
|
|
|
|
// Uint160DecodeAddress attempts to decode the given NEO address string
|
|
|
|
// into an Uint160.
|
|
|
|
func Uint160DecodeAddress(s string) (u util.Uint160, err error) {
|
|
|
|
b, err := Base58CheckDecode(s)
|
|
|
|
if err != nil {
|
|
|
|
return u, err
|
|
|
|
}
|
2019-11-27 09:20:31 +00:00
|
|
|
return util.Uint160DecodeBytesBE(b[1:21])
|
2018-03-17 11:53:21 +00:00
|
|
|
}
|