一图看懂如何用椭圆曲线公钥生成比特币地址

最后编辑于 2020年04月26日 区块链

比特币地址的生成过程,是先生成一个32字节的私钥,再用私钥生成公钥,然后用公钥进行一系列算法处理,最终生成比特币地址,注意比特币主网地址是1开头。其中用私钥生成公钥使用了椭圆曲线数字签名算法ECDSA中的secp256k1,即 y^2=x^3+7,因此该公钥也叫做椭圆曲线公钥,有着x和y两部分。

下图展示的就是从椭圆曲线公钥到比特币地址的转换(Elliptic-Curve Public Key to BTC Address conversion),这个过程还用到了sha256、ripemd160(rmd160)、base58等算法。

1024.com
Image credit: Alan Reiner

该图的作者叫做Alan Reiner,他是一个数学家和软件开发者,喜欢探索新的想法,经常痴迷于对奇怪事物的研究,非常有意思。

Alan Reiner:
https://alanreiner.com/

Alan Reiner的GitHub:
https://github.com/etotheipi

登录注册后才能评论。