[SOLVED] How to propertly read aeternity addresses?

Given the following address:

ak_2mwRmUeYmfuW93ti9HMSUJzCk1EYcQEfikVSzgo6k2VghsWhgU

in base58check:

2mwRmUeYmfuW93ti9HMSUJzCk1EYcQEfikVSzgo6k2VghsWhgU

I decode it to an hexa buffer:

<Buffer e9 bb f6 04 e6 11 b5 46 0a 3b 39 99 e9 77 1b 6f 60 41 7d 73 ce 7c 55 19 e1 2f 7e 12 7a 12 25 ca 3e 5e e7 f9>

which contians 36 bytes. How should I read it? Last 4 bytes belong to a checksum? Should I discard them in order to use the address inside the sdk function callData to call smart contract functions?

https://en.bitcoin.it/wiki/Base58Check_encoding

2 Likes

if you follow Bitcoin convention, last 4 bytes belong to a checksum. I tested discarding them in callData and it seems to work.