比特币地址监控实现

chaimyu(58)
Published in
#cn
Words
222
Reading
1 min
9y
Listen to this post
~1 min

在前期文章中写过 以太坊地址监控,这次简单来看下怎么做比特币地址监控。

监控原理

这个和以太坊一样,通过rpc接口读取每个块信息,解析每个交易,判断交易中是否有需要监控的地址。

RPC接口

主要用到以下几个接口:

getBlockCount 取区块数

getBlockHash 取区块hash

getBlock 根据hash取区块数据

区块数据

{
    "txid" : "c80b343d2ce2b5d829c2de9854c7c8d423c0e33bda264c4013\
              8d834aab4c0638",
    "hash" : "c80b343d2ce2b5d829c2de9854c7c8d423c0e33bda264c40138d834aab4c0638",
    "size" : 85,
    "vsize" : 85,       
    "version" : 1,
    "locktime" : 0,
    "vin" : [
        {
            "txid" : "3f4fa19803dec4d6a84fae3821da7ac7577080ef75\
                      451294e71f9b20e0ab1e7b",
            "vout" : 0,
            "scriptSig" : {
                "asm" : "",
                "hex" : ""
            },
            "sequence" : 4294967295
        }
    ],
    "vout" : [
        {
            "value" : 49.99990000,
            "n" : 0,
            "scriptPubKey" : {
                "asm" : "OP_DUP OP_HASH160 cbc20a7664f2f69e5355a\
                         a427045bc15e7c6c772 OP_EQUALVERIFY OP_CHECKSIG",
                "hex" : "76a914cbc20a7664f2f69e5355aa427045bc15e\
                         7c6c77288ac",
                "reqSigs" : 1,
                "type" : "pubkeyhash",
                "addresses" : [
                    "mz6KvC4aoUeo6wSxtiVQTo7FDwPnkp6URG"
                ]
            }
        }
    ]
}

api调用和数据解析,都是比较简单的处理,没太多可说的。

注意事项

  • 比特币用的UTXO方式,每笔交易中可能有多个输入和多个输出;
  • 比特币有找零情况;
  • 可能存在同样地址的多笔输入输出。

感谢您阅读 chaimyu@chaimyu 的帖子,期待您能留言交流!

比特币地址监控实现 | Ecency