Private Key Tools

bc1pnyyy2n2…x3sajgafh —— P2TR (Taproot, witness v1 / bech32m) —— 比特币地址分析器

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

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

转换结果

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

校验

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

✓结论
VALID — a well-formed P2TR (Taproot, witness v1 / bech32m)
编码家族
bech32m
字符长度
62 characters
链
Bitcoin
网络
Mainnet
P2TR地址类型
P2TR (Taproot, witness v1 / bech32m)

结构拆解

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

校验和字符
ajgafh
最后 6 个字符,是对可读部分与全部数据一起算出的 BCH 校验和。
可读部分(hrp)
bc → Bitcoin mainnet
witness 版本
1 (bech32m)
witness 程序
9908454d4e449c986e4a3c789782fc87121bad3a26f13de5a7461fcdf44701a3 (32 bytes)
承诺值角色
x coordinate of the tweaked output key (not a hash)
scriptPubKey
51209908454d4e449c986e4a3c789782fc87121bad3a26f13de5a7461fcdf44701a3
这个地址真正代表的输出脚本 —— 34 字节。区块链上存的是它,而不是地址。
可读脚本
OP_1 <9908454d4e449c986e4a3c789782fc87121bad3a26f13de5a7461fcdf44701a3>
This 32 bytes is the x coordinate of a tweaked output key, not a hash. Taproot addresses deliberately hide whether the output is spendable by key path or by a script tree, so nothing about the spending condition is visible on chain — and no sibling address exists.

兄弟地址

能否从本地址推导出其它地址。

可推导?
NO — this type does not carry hash160(pubkey)
推导兄弟地址需要「公钥的哈希」。而 P2TR (Taproot, witness v1 / bech32m) 承诺的是x coordinate of the tweaked output key (not a hash),所以密钥哈希根本不在字符串里。这是刻意设计的:正因如此,Taproot 输出才能隐藏它的花费条件,P2SH 地址也才能承诺任意复杂的脚本。

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

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

₿快照余额
0.00412127 BTC
这是快照里的值,不是当前余额。可以和下面的实时数字对照。
快照中的类型
P2TR(bc1p…)
余额排名
#16,693,619 / 57,990,927 个地址

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

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

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

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

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

Transaction history — 25 of 29829 shown

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

交易 ID时间(UTC)确认方向金额(BTC)手续费vBytes对手方
a405feb48d…14e539a405feb48d3afe7cb728…unconfirmed0mempool转入+0.00005229收 0.00005229 / 发 0.000000000.00000030227.5397 B / 910 WUbc1p4angdnvfy6…vd6eu 0.00007259
7f7e8490de…d7340e7f7e8490de6b06048b67…unconfirmed0mempool转入+0.00005273收 0.00005273 / 发 0.000000000.00000030227.5397 B / 910 WUbc1p4angdnvfy6…vd6eu 0.00007303
e74f4b3734…252275e74f4b373485a2378ca4…unconfirmed0mempool转入+0.00005290收 0.00005290 / 发 0.000000000.00000030227.5397 B / 910 WUbc1p4angdnvfy6…vd6eu 0.00007320
4f5a3c4605…20fcf84f5a3c460548acf0397c…unconfirmed0mempool转入+0.00002845收 0.00002845 / 发 0.000000000.00000030227.5397 B / 910 WUbc1p4angdnvfy6…vd6eu 0.00004875
302f2b83a8…693c33302f2b83a83da06b6c32…unconfirmed0mempool转入+0.00002377收 0.00002377 / 发 0.000000000.00000030227.5397 B / 910 WUbc1p4angdnvfy6…vd6eu 0.00004407
fcf938e365…edec7bfcf938e36518df6d4135…unconfirmed0mempool转入+0.00002108收 0.00002108 / 发 0.000000000.00000030227.5397 B / 910 WUbc1p4angdnvfy6…vd6eu 0.00004138
c4f61bf1e9…3ebfc6c4f61bf1e97aece2f8a8…unconfirmed0mempool转入+0.00005550收 0.00005550 / 发 0.000000000.00000030227.5397 B / 910 WUbc1p4angdnvfy6…vd6eu 0.00007580
54b3550899…7dba5954b355089984740586aa…unconfirmed0mempool转入+0.00005896收 0.00005896 / 发 0.000000000.00000030227.5397 B / 910 WUbc1p4angdnvfy6…vd6eu 0.00007926
d8a12fefe3…94833dd8a12fefe35398d0c054…unconfirmed0mempool转入+0.00002442收 0.00002442 / 发 0.000000000.00000030227.5397 B / 910 WUbc1p4angdnvfy6…vd6eu 0.00004472
e84fcca67f…0f22f9e84fcca67ffd413fb2e1…2026-10-0900:57:15168height 970559净转出−0.00000123收 0.00001407 / 发 0.000015300.00000123347.8641 B / 1391 WUbc1qc0ptmr2akz…neu9q 0.00000546
76db5dde18…8d5e6676db5dde1850e7accd1c…2026-10-0900:57:15168height 970559净转出−0.00000631收 0.00002083 / 发 0.000027140.00000085254.5355 B / 1018 WUbc1p3ldz5fmdts…zys08 0.00000546
d8bc70e1ad…0bdd2ad8bc70e1ad17497569c5…2026-10-0900:57:15168height 970559净转出−0.00000128收 0.00001618 / 发 0.000017460.00000128348.5644 B / 1394 WUbc1qp8lhysjtd0…3pvan 0.00000546
eb5d43e61f…50fafdeb5d43e61f528b52e449…2026-10-0900:57:15168height 970559净转出−0.00000636收 0.00002078 / 发 0.000027140.00000090254.5355 B / 1018 WUbc1psuuan3lmhu…eru4q 0.00000546
ed9c53c10f…cd71d6ed9c53c10fae742a8b94…2026-10-0900:31:54170height 970557净转出−0.00000132收 0.00001398 / 发 0.000015300.00000132359.8653 B / 1439 WUbc1p567vvhxrpe…s8zks 0.00000546
85d3c70620…94ed1885d3c70620c977376fcd…2026-10-0900:31:54170height 970557净转出−0.00000636收 0.00002078 / 发 0.000027140.00000090254.5355 B / 1018 WUbc1p737cw37n0r…7ru27 0.00000546
1cfc8d4618…19eb2d1cfc8d461832c981bcc8…2026-10-0900:18:21176height 970551净转出−0.00000129收 0.00001617 / 发 0.000017460.00000129349.5648 B / 1398 WUbc1qmcrmgvf39f…pwqu7 0.00000546
87b1a2ee2f…44dbff87b1a2ee2fc2a24dc11f…2026-10-0900:18:21176height 970551净转出−0.00000656收 0.00002044 / 发 0.000027000.00000110312.0462 B / 1248 WUbc1pmpgh2tllgr…g3tz9 0.00000546
8f94a05734…be32e58f94a057341244b99c22…2026-10-0900:18:21176height 970551净转出−0.00000129收 0.00001617 / 发 0.000017460.00000129349.5648 B / 1398 WUbc1qrdh8uv5tlj…n0sta 0.00000546
01f80aff6a…2df3fb01f80aff6ad403403218…2026-10-0900:18:21176height 970551净转出−0.00000656收 0.00002557 / 发 0.000032130.00000110312.0462 B / 1248 WUbc1pj9zjkz384z…q2mje 0.00000546
3237bc0026…ece8f33237bc0026fcca5dce1a…2026-10-0900:18:21176height 970551净转出−0.00000129收 0.00001617 / 发 0.000017460.00000129349.5648 B / 1398 WUbc1q3zcta8qs7c…wcujg 0.00000546
0b97624380…1898300b97624380cb0341103f…2026-10-0900:18:21176height 970551净转出−0.00000656收 0.00002557 / 发 0.000032130.00000110312.0462 B / 1248 WUbc1pymwjue0t9t…tk9ud 0.00000546
471ef3925f…204ab0471ef3925f5ebe8195b7…2026-10-0900:18:21176height 970551净转出−0.00000129收 0.00001401 / 发 0.000015300.00000129349.5648 B / 1398 WUbc1qxglp36pqs3…vlwtp 0.00000546
76ecfbd5f9…97e8f176ecfbd5f9621a5e15ad…2026-10-0900:18:21176height 970551净转出−0.00000656收 0.00002044 / 发 0.000027000.00000110312.0462 B / 1248 WUbc1p6nkzkw48v2…pcvuw 0.00000546
a6456b4279…6070f1a6456b4279b0139fa4c4…2026-10-0900:18:21176height 970551净转出−0.00000129收 0.00001401 / 发 0.000015300.00000129349.5648 B / 1398 WUbc1qpsth7trfwu…vdlck 0.00000546
dfc1b89b99…8c95f1dfc1b89b996142201060…2026-10-0900:18:21176height 970551净转出−0.00000656收 0.00002557 / 发 0.000032130.00000110312.0462 B / 1248 WUbc1ppcpmm7wx0k…hgv9k 0.00000546
数据来源:https://mempool.space/api · 与上面一样,属于第三方数据。

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

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

正在查询区块浏览器…
P2TR (Taproot, witness v1 / bech32m) · mainnet
…
这些地址合计—
技术原理详解

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

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

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

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

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 笔