最近在学习比特币的base58编码,发现网上很多的教程都不行,所以还是自己写一个吧。
1 错误教程例1
https://blog.csdn.net/qin9800/article/details/105081894
print(b58encode("ABDCDEFGA"))
print(b58decode("qBLiPgShKjap"))
这里b58encode("ABDCDEFGA")
明显就不对,十六进制数怎么出来G呢?
输入
print(b58encode("6fd9c637cc30bb0fe9add3a185c1f5d884d12b7b783bcba0fb"))
结果竟然是:
fsooVZR57AsiteqgXuXYNeuqe3F85mpamYttiB5VeHmCSb66MNkPz7KWPofjigm5UVdK
比十六进制的数还长,这不搞笑么?
2 错误教程例2
https://www.jianshu.com/p/d8af38e091be
这里采用的编码顺序是
$alphabet = '123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ'