曾经的PRESSone区块链BlockChain区块链

区块链科普系列短文——地址

2018-11-12  本文已影响21人  比特汪

比特币地址(也包括其他加密货币)是一个由数字和字母组成的字符串,可以与任何想转给你比特币的人分享,就像银行卡的卡号一样,收款人可以是个人,也可以是公司或机构等组织。

下面是一个比特币地址的例子:

1q7vbn5rbWEUdENYdx39SDFG7fsLpEoXZy

那么这个字符串是怎么的来的呢?这就要说到公钥了(关于公钥和私钥见prs白皮书科普系列短文-公钥和私钥https://bbs.onedev.club/topic/225/)。

比特币地址是由公钥经过单向的加密哈希算法得到的。由公钥生成比特币地址时使用的算法是SHA256和RIPEMD160。

具体过程:

以公钥 K 为输入,计算其SHA256哈希值,并以此结果计算RIPEMD160 哈希值,得到一个长度为160位(20字节)的数字:

A = RIPEMD160(SHA256(K))

公式中,K是公钥,A是生成的比特币地址。

为了提高了可读性、避免歧义并防止在地址转录和输入过程中产生 错误,比特币系统使用Base58Check(一种基于文本的二进制编码格式)技术,将生成的长度为160位(20字节)的这串数字转换为我们常见的16进制形式的地址。

下图描述了公钥生成比特币地址的过程。

上一篇 下一篇

猜你喜欢

热点阅读