Are there online tool or repositories that can convert multiple base58 (BTC address) to base16 simultaneously?
2 Answers
In Go, you can do this very easily:
package main
import (
"fmt"
"github.com/btcsuite/btcutil/base58"
)
var addresses = []string{
"1Nh7uHdvY6fNwtQtM1G5EZAFPLC33B59rB",
"1Le1ttNd2GQ79212Epyciw39JDy2E6DYWf",
"1LpRieyPAZfFyUSMGiZhwAarQoJw1Y8pEx",
}
func main() {
for _, address := range addresses {
ripemd160, _, err := base58.CheckDecode(address)
if err != nil {
fmt.Printf("Failed to decode address %s: %s\n", address, err)
continue
}
fmt.Printf("HASH160 %x from address %s\n", ripemd160, address)
}
}
When you have Go installed, you can run this code very easily in your terminal:
$ go get github.com/btcsuite/btcutil/base58
$ go run thefile.go
HASH160 edf10a7fac6b32e24daa5305c723f3de58db1bc8 from address 1Nh7uHdvY6fNwtQtM1G5EZAFPLC33B59rB
HASH160 d76a86f903b33835f06d7b18a1429a8f249f3ab1 from address 1Le1ttNd2GQ79212Epyciw39JDy2E6DYWf
HASH160 d96292e45d045d2269a818b96b13422555557d85 from address 1LpRieyPAZfFyUSMGiZhwAarQoJw1Y8pEx
-
Hi @Steven can it just accept a txt file consisting the base58? Since I have thousands of base58 to convert. Thank you. Nov 22, 2017 at 10:19
-
@NaelCruz this should work: gist.github.com/stevenroose/de1cdd183b1d3b9a6e5a5623a4ca969a Dec 5, 2017 at 10:56
static const QByteArray convert ( const QLatin1String& buf )
{
QByteArray ret;
ret.resize ( 20 );
quint8 addr [30];
BASE58::decodeBase58 ( buf.latin1 ( ), addr, 26, true );
memcpy ( ret.data ( ), addr + 1, 20 );
//printf ( "%s\n", ret.toHex ( ).constData ( ) );
return ret.toHex ( );
}
Oups, sorry. This is not an answer if you are looking for online solution
-
Hello @amaclin thanks for your answer. Where can I reach you I have some ideas maybe we can collaborate . Nov 23, 2017 at 7:59
base58
tobase16
(aka hex)?A
is what you have andB
is what you want before asking a tool?