Private Key Tools

1DcT5Wij5tf…rG98ahZPT —— P2PKH (Pay to Public Key Hash) —— 比特币地址分析器

粘贴任意比特币地址:本页会校验它、给出它的精确类型、重建它对应的脚本、推导出与它共用同一把密钥的其它地址,然后从公开区块浏览器读出它的余额与转账记录。

隐私提示。 地址校验完全在本服务器完成,不向外发送任何内容。但链上查询不是:下面的概要与交易表是由本服务器向公开区块浏览器抓取的,也就是说本服务器和那家浏览器都会知道你查了哪个地址。把「链上数据」选成「否」即可让这次查询完全留在本地。
任何标准形式都可以:1…、3…、bc1q…、bc1p…,以及测试网的 m…/n…/2…/tb1… 变体。Base58 不区分大小写,bech32 允许全小写或全大写 —— 但不能混用。
开关服务端的区块浏览器查询。无论开关如何,校验、类型识别与兄弟地址推导都照常工作。
1–50。

转换结果

全部计算在本机服务端完成,数据不外发

校验

本节的每一项都只由字符串本身算出,不访问网络。

✓结论
VALID — a well-formed P2PKH (Pay to Public Key Hash)
编码家族
Base58Check
字符长度
34 characters
链
Bitcoin
网络
Mainnet
P2PKH地址类型
P2PKH (Pay to Public Key Hash)

结构拆解

这串字符按字节看究竟装了什么。

校验和字符
hZPT
最后 4 个 Base58 字符,编码的是 SHA256(SHA256(payload)) 的前 4 字节。
版本字节
0x00 (0)
这一个字节同时决定链与脚本类型。它被校验和覆盖,所以改动它会让整个地址失效。
载荷(版本 + 哈希)
008a55d6333a81faea74076e49d172e9d851b64737
hash160/承诺值
8a55d6333a81faea74076e49d172e9d851b64737
这 20 字节到底是什么取决于类型:hash160(pubkey)。
scriptPubKey
76a9148a55d6333a81faea74076e49d172e9d851b6473788ac
这个地址真正代表的输出脚本 —— 25 字节。区块链上存的是它,而不是地址。
可读脚本
OP_DUP OP_HASH160 <8a55d6333a81faea74076e49d172e9d851b64737> OP_EQUALVERIFY OP_CHECKSIG

兄弟地址 —— 同一把密钥的其它脚本

P2PKH 与 P2WPKH 承诺的都是 hash160(公钥),所以彼此唯一确定 —— 并且同时确定 P2SH-P2WPKH 形式。下面六个地址都由同一把私钥控制。

MP2PKH · 主网 · 就是本地址
MP2SH-P2WPKH · 主网
TP2PKH · 测试网
TP2SH-P2WPKH · 测试网

快照记录 —— 来自本站自己的数据库

来自 bitcoin.tsv 快照的冻结历史余额(内容时点 ≈ 2026-01-28),存放在本机 MySQL 里。这一项不访问网络,所以浏览器连不上时它照样可用。

₿快照余额
10,000.00047846 BTC
这是快照里的值,不是当前余额。可以和下面的实时数字对照。
快照中的类型
P2PKH(1…)
余额排名
#85 / 57,990,927 个地址

链上数据 —— 由本服务器从公开区块浏览器抓取

这部分是第三方给出的说法,不是算出来的事实。下面每项都会注明是哪个浏览器回答的。

是否被使用过?
YES — this address has activity
₿已确认余额
0.00058766 BTC
区块内未花费输出之和。比特币没有「余额」字段 —— 这是算出来的。
未确认余额
0.00000000 BTC
仍在内存池中的交易带来的净变化。若交易被替换或挤出,它会消失。
累计收到
10,000.00058766 BTC
累计花出
10,000.00000000 BTC
交易笔数
87 confirmed, 0 pending
未花费输出(UTXO)数
81
这个地址持有几笔独立的币。下次花钱时它们每一个都会变成一个输入,这就是「碎片化」的地址花钱更贵的原因。
余额自检
0.00058766 = 10,000.00058766 − 10,000.00000000
数据来源:https://mempool.space/api · 查询时间 2026-10-10 22:00:49 UTC

活动时间窗(基于列出的这些交易)

最近活动
2026-07-29 14:28:24 UTC
这批中最旧的一笔
2026-01-11 07:39:52 UTC
链尖高度
970832
确认数是相对这个高度算出的;它下面的重组会改变确认数。
公钥是否已在链上暴露?
YES — this address has spent at least once
一旦花出,公钥就会随输入(scriptSig 或 witness)永久公开。在那之前,P2PKH/P2WPKH 地址只由哈希保护,这也是它受未来量子攻击影响最小的原因。

Transaction history — 25 of 87 shown

浏览器返回了 50 笔交易(单次请求上限 50 笔),本页列出其中最新的 25 笔。该地址的历史比这更长。

交易 ID时间(UTC)确认方向金额(BTC)手续费vBytes对手方
009d9bdce7…045c6e009d9bdce7e60ebb8b66…2026-07-2914:28:2410716height 960117转入+0.00000546收 0.00000546 / 发 0.000000000.00000203202.5303 B / 810 WUbc1pwrj78egjyu…gw227 0.00000330
7610efe3b4…cf79c07610efe3b430a50e29ad…2026-06-0901:36:5717917height 952916转入+0.00000546收 0.00000546 / 发 0.000000000.00000203202.5303 B / 810 WUbc1pl77fj37wsm…p6yda 0.00000330
1d270e3ffd…6312df1d270e3ffdc742d14470…2026-05-2300:20:4920243height 950590转入+0.00000546收 0.00000546 / 发 0.000000000.00000212211.3374 B / 845 WUbc1qhpvxcn42g3…3pmqr 0.00000330
10c0a3c8b7…417ca810c0a3c8b7e94628cf72…2026-05-1913:02:4520753height 950080转入+0.00000546收 0.00000546 / 发 0.000000000.00000359327.5623 B / 1310 WUbc1p6uxg0uh9m9…slm7p 0.00000546bc1pnyyy2n2wgj…jgafh 0.000005461 个输出没有地址(数据载体/非标准脚本)
1912571012…f7f57a1912571012a31120e46c…2026-05-1513:02:5921317height 949516转入+0.00000546收 0.00000546 / 发 0.000000000.00000449180.5344 B / 722 WUbc1qhpvxcn42g3…3pmqr 0.00000330
254d1d2b7f…d6914c254d1d2b7fa6d589b7c9…2026-05-1413:20:5521471height 949362转入+0.00000546收 0.00000546 / 发 0.000000000.00000212211.5375 B / 846 WUbc1qhpvxcn42g3…3pmqr 0.00000330
a7258caea7…1f31a5a7258caea724bd4db9c3…2026-05-1115:56:2221875height 948958转入+0.00000546收 0.00000546 / 发 0.000000000.00000244202.5303 B / 810 WUbc1p567vvhxrpe…s8zks 0.00000330
4e716e0459…5eeb664e716e04596e2cb6da69…2026-05-1101:41:5021973height 948860转入+0.00000546收 0.00000546 / 发 0.000000000.00000203202.5303 B / 810 WUbc1pl77fj37wsm…p6yda 0.00000330
88943520ac…9bd25b88943520ac168eaa262a…2026-05-0816:46:2822348height 948485转入+0.00000546收 0.00000546 / 发 0.000000000.00000212211.0373 B / 844 WUbc1qhpvxcn42g3…3pmqr 0.00000330
ae77d918ec…8040c2ae77d918ec4fc2c18a8d…2026-05-0701:59:3122588height 948245转入+0.00000546收 0.00000546 / 发 0.000000000.00000212211.0373 B / 844 WUbc1q7v49n3rwtp…5qyds 0.00000330
044bac0826…d439d2044bac08269c980ae43d…2026-05-0517:12:2222778height 948055转入+0.00000546收 0.00000546 / 发 0.000000000.00000406202.5303 B / 810 WUbc1pkm2h3kje6e…yen0n 0.00000330
4e5595a224…8b8d274e5595a2248cfd7fa8ea…2026-04-2912:03:0823687height 947146转入+0.00000546收 0.00000546 / 发 0.000000000.00000212211.0373 B / 844 WUbc1qhpvxcn42g3…3pmqr 0.00000330
4061cf3afc…cc0a0d4061cf3afc106fc6ef53…2026-04-2513:13:3424245height 946588转入+0.00000546收 0.00000546 / 发 0.000000000.00000359328.0625 B / 1312 WUbc1plp92dynvtr…gcjgm 0.00000546bc1p567vvhxrpe…s8zks 0.000005461 个输出没有地址(数据载体/非标准脚本)
9a88281d9f…d0dd279a88281d9ff646793bf5…2026-04-0906:31:2726532height 944301转入+0.00000546收 0.00000546 / 发 0.000000000.00000340308.8605 B / 1235 WUbc1pcx89g89uyx…7kfc7 0.00000546bc1pnyyy2n2wgj…jgafh 0.00000330
5756bbe319…3952b85756bbe319a7ea19f81a…2026-03-2719:59:4828321height 942512转入+0.00000546收 0.00000546 / 发 0.000000000.00000375180.0342 B / 720 WUbc1qh4lvwvdtaz…edyew 0.00000330
93b031f5a3…2af3b893b031f5a3370ac87f41…2026-03-2623:02:2128455height 942378转入+0.00000546收 0.00000546 / 发 0.000000000.00000203202.5303 B / 810 WUbc1pl77fj37wsm…p6yda 0.00000330
66f180a098…f1faea66f180a098c05786c955…2026-03-2209:36:2029146height 941687转出−1.00000000收 0.00000000 / 发 1.000000000.00003000201.0201 B / 804 WUbc1quhruqrghgc…r8l2d 0.99997000
6a5e11c5d6…d9590a6a5e11c5d60f9772e139…2026-03-2209:36:2029146height 941687转出−3000.00000000收 0.00000000 / 发 3000.000000000.00003000201.0201 B / 804 WUbc1quhruqrghgc…r8l2d 2999.99997000
e99feec4ea…7f247fe99feec4eaca603971fc…2026-03-2209:36:2029146height 941687转出−6999.00000000收 0.00000000 / 发 6999.000000000.00003015200.0200 B / 800 WUbc1quhruqrghgc…r8l2d 6998.99996985
7b3ee1b41a…cba82f7b3ee1b41a330507623f…2026-03-0520:56:3031359height 939474转入+0.00000546收 0.00000546 / 发 0.000000000.00000363331.3659 B / 1325 WUbc1p7r2tupw7sq…m3vzj 0.0000054639DTnoZtwQcTZB…uHWhi 0.00000546
4cf9f42eb5…87bfc34cf9f42eb54a10617f17…2026-03-0500:28:3731498height 939335转入+0.00000546收 0.00000546 / 发 0.000000000.00000060141.5311 B / 566 WUbc1pxcsk4qq9jj…5g07a 0.00000606
7458bacdec…f99dcd7458bacdec00ae7bceb5…2026-02-1800:01:0333677height 937156转入+0.00000546收 0.00000546 / 发 0.000000000.00000203202.5303 B / 810 WUbc1pkm2h3kje6e…yen0n 0.00000330
81c773f8ba…a018b081c773f8bafc5dae6a79…2026-02-0301:48:3936048height 934785转入+0.00000546收 0.00000546 / 发 0.000000000.00000203202.5303 B / 810 WUbc1pkm2h3kje6e…yen0n 0.00000330
2a8e82e5fe…ca41322a8e82e5fe642e36b113…2026-01-1123:23:0038936height 931897转入+0.00000546收 0.00000546 / 发 0.000000000.00000203202.5303 B / 810 WUbc1p3737nx2hs3…ttpdf 0.00000330
fb9d5607fd…25f8fdfb9d5607fdfa76af541b…2026-01-1107:39:5239008height 931825转入+0.00000546收 0.00000546 / 发 0.000000000.00000347309.0606 B / 1236 WUbc1pjekr2dwhfg…0ud4g 0.00000546bc1pnyyy2n2wgj…jgafh 0.00000330
数据来源:https://mempool.space/api · 与上面一样,属于第三方数据。

实时余额 —— 由你的浏览器当场查询

这一块由你浏览器里的 JavaScript 直接联系公开区块浏览器后填入。这里的数据不经过本服务器 —— 所以在服务器没网时它依然可能成功,也所以如果中间有新块产生,这里的余额可能与上面不同。

正在查询区块浏览器…
P2PKH · mainnet · 就是本地址
…
P2SH-P2WPKH · mainnet
…
P2PKH · testnet
…
P2SH-P2WPKH · testnet
…
这些地址合计—
技术原理详解

本页做什么 —— 以及每个答案是从哪里来的

关于一个地址,可以问两类本质不同的问题,本页刻意把它们分开:

问题由谁回答需要联网吗
这串字符是合法地址吗?本服务器上的纯计算不需要
它是什么类型,对应哪段脚本?本服务器上的纯计算不需要
还有哪些地址与它共用同一把密钥?本服务器上的纯计算不需要
它的余额和转账记录是什么?公开区块浏览器需要

前三项是从字符串本身推出来的事实,永远不会错。第四项是第三方给出的说法,本页会注明是哪个 浏览器说的。没有网络时,前三项照样完全可用,第四项会如实说明拿不到。

1. 比特币地址究竟是什么

地址不是密钥、不是账户、也不是钱包。它只是某个花费条件的一种带校验和的简短编码 —— 严格说,是对「未来某笔交易必须满足的脚本」的一个承诺。区块链上根本不存地址:它存的是被脚本锁住的 输出,地址只是把特定脚本写成人能抄下来的样子。

这个区别能解释大部分让人困惑的现象:

2. 两种编码家族

比特币写下一个地址只有两种方式,区分它们就是本页做的第一件事:

Base58CheckBech32 / Bech32m
长相1…、3…bc1q…、bc1p…
字母表58 个字符 —— 去掉了 0、O、I、l32 个字符 qpzry9x8gf2tvdw0s3jn54khce6mua7l
版本信息一个字节前缀(0x00、0x05…)可读部分(bc)加一个 5 位 witness 版本
校验和SHA256(SHA256(payload)) 的前 4 字节覆盖整串的 6 字符 BCH 码
能检出几乎必然检出任意单字符错误任意 4 个错误;更长连续错误有公布的保证
大小写区分大小写必须全小写或全大写,混用按设计即为非法
引入时间2009 年最初的客户端BIP173,2017 年(SegWit)

Base58 的字母表去掉 0、O、I、l,正是因为它们是人从纸上 抄写时最容易混淆的字符。bech32 更进一步:禁止大小写混用,把一整类抄写错误变成了硬失败。

3. 地址类型,以及每种类型承诺了什么

这正是「有些地址能互相推导、有些不能」的根源。每个地址都承诺唯一一段 20 字节或 32 字节的值, 但这段值是什么,取决于类型:

类型前缀承诺的是scriptPubKey大小
P2PKH1…hash160(公钥)OP_DUP OP_HASH160 <20B> OP_EQUALVERIFY OP_CHECKSIG25 B
P2SH3…hash160(redeemScript)OP_HASH160 <20B> OP_EQUAL23 B
P2WPKHbc1q…(20 B)hash160(公钥)OP_0 <20B>22 B
P2WSHbc1q…(32 B)SHA256(witnessScript)OP_0 <32B>34 B
P2TRbc1p…调整后输出公钥的 x 坐标OP_1 <32B>34 B
为什么本页有时候不肯再往下走

3… 地址只告诉你某段脚本的哈希,别的什么也没说 —— 它可能是嵌套 SegWit、多签,也可能是 时间锁。bc1q… 且程序为 32 字节的地址,告诉你的也是脚本哈希。bc1p… 地址告诉你的 是一个点。这三者都无法反推出「同一把密钥的其它地址」,因为密钥的哈希根本不在里面。只有 P2PKH 和 P2WPKH 携带 hash160(公钥),因此可以互相转换。

4. 兄弟地址:一把密钥,多个地址

因为 P2PKH、P2WPKH 与 P2SH-P2WPKH 承诺的都是同样那 20 字节(压缩公钥的哈希), 知道其中任意一个就等于知道了另外两个。这不是安全缺陷,只是同一个承诺写成了不同的脚本。

但在实践中它极其重要。最经典的灾难是:币躺在 P2PKH 地址上,而手上的钱包只看 P2WPKH 地址 (或者反过来,或者主网对测试网)。钱包显示余额为零,用户就以为钱没了。币通常都还在, 而查看兄弟地址正是找回它们的方法。

地址类型同一把密钥?
1BgGZ9tcN4rm9KBzDn7KprQz87SZ26SAMHP2PKH 主网是
3JvL6Ymt8MVWiCNHC7oWU6nLeHNJKLZGLNP2SH-P2WPKH 主网是
bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4P2WPKH 主网是
mrCDrCybB6J1vRfbwM5hemdJz73FwDBC8rP2PKH 测试网是
2NAUYAHhujozruyzpsFRP63mbrdaU5wnEpNP2SH-P2WPKH 测试网是
tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsxP2WPKH 测试网是

上面六行都是同一把私钥。其中两个在测试网上,那是完全不同的网络 —— 币无法跨网转移, 但同一把密钥同时控制两边。

兄弟地址是强烈提示,不是证据

推导出兄弟地址,只说明「那把密钥会产生哪些地址」。它不能证明某个兄弟地址曾被使用过,也不能告诉你 谁掌握着那把密钥。注意这一家人的余额差异有多大 —— 一个空空的主网地址旁边躺着一个有余额的测试网地址, 是再正常不过的事。

5. 「校验通过」意味着什么,又不意味着什么

本页会检查校验和、字符集、长度、版本字节或 witness 版本、程序长度、大小写规则与补零规则。 全部通过只说明一件事:这串字符是一个格式良好的地址,没有任何比特币节点会因为格式问题 拒绝它。

它不意味着:

6. 正确理解「余额」

比特币里没有「余额」这个字段。存在的是「未花费输出」的集合,每一个都被某段脚本锁住。地址余额是把 支付给它的未花费输出加起来算出来的:

余额 = Σ(支付给该地址的未花费输出) = 累计收到 − 累计花出

由此有三个推论,本页把其中的组成部分分开显示,方便你自己核对:

7. 如何阅读交易列表

本页显示的记录是从「这个地址」的视角写的。每一笔交易都会算出该地址收到多少、花出多少,以及净效果:

方向含义
转入 in有输出付给这个地址,且没有输入来自它。
转出 out有输入花掉这个地址的输出,且没有钱回到它这里。
自身/净额两边都涉及这个地址 —— 归并、找零,或自己转给自己。

其它几列值得说明:

为什么列表可能比交易总数短

兼容 Esplora 的浏览器单次最多只返回某个地址最近 50 笔交易。本页请求的数量更少,并单独给出交易总数, 所以繁忙地址会显示成「172 笔中的 25 笔」。要翻阅多年历史,那是完整浏览器网站的活儿 —— 页面底部的链接就是通往那里。

8. 隐私:谁知道了你在查

校验全部发生在本服务器上。链上查询则不是,而且有两条不同的路径:

服务端查询(概要与交易表)

由本服务器发起请求。你的浏览器 IP 不会暴露给区块浏览器 —— 但本服务器和那家浏览器都会知道 你关心的是哪个地址。

浏览器端查询(实时余额区块)

下面的 JavaScript 在你的浏览器里运行,直接联系区块浏览器,所以你的 IP 对那家浏览器可见, 但本服务器完全看不到这次查询。把「链上数据」选项关掉即可彻底禁用第一条路径。

无论走哪条路,查询地址都是一次隐私泄露:问一个地址,就把你和这个地址关联了起来。每次付款都复用同一个 地址,等于把全部财务历史公开给任何来看的人;而拿自己的地址去问公共 API,等于告诉那家 API 的运营者你持有什么。 如果这让你介意,就自己跑一个节点,在本地查询。

9. 特殊地址与不可花费地址

有些地址足够有名,值得被认出来,本页会给它们打标签:

地址它是什么
1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa创世区块 coinbase 输出 —— 最早的 50 BTC,从未被花掉。
1BitcoinEaterAddressDontSendf59kuE一个刻意的销毁地址,没人持有它的私钥。
1111111111111111111114oLvT2hash160 全零的地址。实际上无法花费:要花它需要一个哈希恰好是二十个零字节的公钥。

销毁币是一种真实存在的手法 —— 有些协议正是靠它做出一个永远无法赎回的承诺。当然,它同样不可撤销。

10. 速查表

项目取值
主网 P2PKH / P2SH 前缀0x00 → 1… / 0x05 → 3…
测试网 P2PKH / P2SH 前缀0x6F → m…/n… / 0xC4 → 2…
bech32 的 hrpbc 主网,tb 测试网,bcrt regtest
witness 程序长度2–40 字节;v0 必须恰好 20(P2WPKH)或 32(P2WSH)
校验和常量v0 用 1(bech32),v1+ 用 0x2bc830a3(bech32m)
地址长度上限bech32 为 90 个字符,Base58 主网约 34–35 个
可推导兄弟地址的类型只有 P2PKH 与 P2WPKH(它们携带 hash160(公钥))
浏览器单次交易上限每个地址最近 50 笔