作者:Z-Labs Team
1、什么是地址标签
区块链中的钱包地址就如同银行卡号一样,是交易过程中最为重要的信息之一。而与传统银行卡号不同的则是,在区块链网络中地址数量的上限空间极大,为2的N次方,根据不同链的特性不同,N可以达到160甚至更大。而任何一个用户都可以随意生成“无数”个地址,只要他持有私钥就可以随意构造并发起一次区块链交易。而这一过程虽然可以通过公开的区块链数据获取到,但也仅仅能看到地址之间的交易,无法进一步获知更多的信息,这就是区块链的匿名性。
地址标签,就是为了在一定程度上尝试解决这类问题而发展出来的技术。简单来说,地址标签就是这个地址所具备的一切属性。如果给一个人打标签的话,可以说这个人高、矮、胖、瘦、爱看书、爱旅游、脾气好等,地址也是类似的,这个地址的格式、资产、交易记录、持有人或机构,就是这个地址的标签。通过标签,可以在某种程度上降低区块链的匿名性,提升对交易特征的识别度。例如,某地址被标记为某机构,当地址上出现大额的转入转出交易时,用户就可以根据当时的市场或舆情情况对这种行为进行一定的解读。
2、地址标签的划分
如上所述,区块链地址标签实际上是一个地址的各类属性,所以在分类上并没有一个统一的标准,例如,下图就是以太坊浏览器 etherscan.io 上支持的地址标签云词图:

综合etherscan.io和知名的链上智能分析工具nansen.ai两个站点来看,我们对地址标签的分类维度大致做了一个总结,可以大致的将地址标签分类维度归结为:
- 按地址格式
Bitcoin:P2PKH、P2SH、Bech32
Ethereum:EOA、Contract
- 按所属关系
交易所:Coinbase、Bitfinex、Binance 等
个人:Sam Bankman-Fried(SBF)、Vitalik Buterin 等
矿池:F2Pool、AntPool 等
- 按合约功能
代币合约:TUSD、USDT 等
项目合约:Uniswap、Compound、Sushiswap 等
多签合约:MultiSigWallet 等
- 按活跃程度
交易频次:Low Activity、Medium Activity、High Activity
DEX 参与度:Dex Trader、Medium Dex Trader、Heavy Dex Trader、Elite Dex Trader
- 按资产数量
资产余额:Millionaire、Billionaire、High Balance
- 按安全属性
性质:诈骗、赌博、洗钱、盗币
按地址标签属性的不同,可以从中挖掘出不同的价值和信息,例如,下图即展示了传奇投资人Sam Bankman-Fried的其中一个个人地址的情况:

对于地址标签,更多的是进行链上追踪时候的组合使用。例如下图,通过对标记为“恶意”标签的地址进行链上交易行为追踪,最终可以看到大部分资金流入了某些被标记为“中心化”标签的地址(右侧蓝色圆点),而中心化因其业务特性,就可以在一定程度上完成对恶意交易的定位和流向控制:

3、中心化地址
在上一节的案例中我们提到了中心化标签。在地址标签中,中心化地址确实是一类相对比较特殊的存在。所以,在这里我们单独来介绍一下。
中心化平台,既是为用户提供代管私钥的平台,而平台所持有的地址便被称为中心化地址。区块链最传统的交易方式是,用户可以创建一个地址,每个地址会有一个对应的私钥,使用私钥就可以构造一个交易并使用地址将交易发送出去。而这一系列过程对于一般用户来说会存在一定技术门槛,这道门槛将很多用户拦在了区块链交易的大门外。因此,便出现了一些中心化的平台。
中心化平台会预先为用户生成好一系列地址,当用户在平台上注册之后,平台便会分配一个地址给用户,此时用户不需要关注私钥,中心化平台会帮助用户管理私钥。用户按照个人需求在平台上发起交易即可,平台会帮助用户代持私钥并根据用户的需求构造、发起各类交易,整个过程用户就像使用其他在线系统一样简单而无需关注区块链交易的具体技术细节。而相应的,为了得到这样的“便利性”,用户必须提供一些个人信息来完成平台的整个注册和认证过程。中心化平台的工作方式大致如下:

如上图,用户A、B、C在中心化平台注册后,平台便会为用户分配三个地址:用户地址A、B、C,三个地址可供用户用于充值,但私钥并不在用户手中持有而是由中心化平台统一管理。当用户A向自己的地址A充值时,中心化平台便可识别到充值,系统就会在平台数据库中为用户A记录一笔充值并上账。
在日常的用户充提币过程中会涉及到三个重要动作,分别是充币、整理和提币,此处以eth为例介绍一下三个动作的流程:
【用户A充值过程】
- 用户在中心化平台注册后
- 系统会分配一个eth地址给用户
- 用户A向系统分配的eth地址充值1eth
- 地址A收到1eth后为用户A上账
【零钱整理过程】
- 定期扫描用户地址余额
- 将用户地址零钱提币至系统出币地址
- 提币过程中使用手续费地址余额支付链上手续费
【用户A提币过程】
- 用户A提交提币3eth请求
- 填写提币的目标地址(如,用户A外包钱包地址)
- 系统根据金额寻找满足需求的出币地址并构造交易
- 提币过程中使用手续费地址余额支付链上手续费
以上只是一个中心化平台的一个简要说明,但基本关键技术点都涉及其中,而这三个过程中所涉及到的用户地址、系统出币地址、系统手续费地址,都是我们这里所说的“中心化地址”。
根据中心化平台用户的数量,其用户地址、系统出币地址和系统手续费地址数量也会有所不同,单一个币种的地址数量来说,少则数千上万、多则百万千万。中心化地址主要以交易所、换币平台为主,他们的业务逻辑也都大致相似。目前,已经有很多区块链查询平台都提供了不同类别中心化地址的标签:

4、建立地址标签库
正因为地址标签在区块链交易中有着广泛用途,所以很多平台也都在建立自己的地址标签库,并用于建设适应自己的使用场景。总体来说,地址标签库有两个来源:
- 公开信息采集
- 建立分析规则及模型,持续对新增地址进行识别和标记
公开信息采集比较容易理解,通过一些公开的新闻、区块链浏览器、区块链分析平台,便可采集到很多已经被标记的地址信息,例如,上面提到的etherscan.io上的标签云图。还有twitter等一些社交渠道也会有一些相关发布信息:

在此,列举一些地址标签的公开信息站点可供查询:
- https://www.walletexplorer.com/
- https://bitinfocharts.com/top-100-richest-bitcoin-addresses.html
- https://chain.info/
- https://etherscan.io/accounts
- https://etherscan.io/labelcloud
- https://filfox.info/zh/rich-list
使用公开信息的好处显而易见,数量庞大且免费,但相应的,其更新速度、准确性、有效性也存在一些问题。而其中最为凸显的问题就是在标签种类的覆盖度方面,例如,对安全事件、暗网、混币、换币等平台的识别,尤其是在一些由特定安全事件所牵连出的地址标签,在公开信息中所能获取的信息极其有限。所以对地址识别有强烈诉求的用户来说,根据使用场景建立并维护自己的地址库才是最佳方案。
而通过建立分析规则及模型对地址进行识别和标记会有些许的技术门槛和知识储备要求,对于初学者并不友好。为此,我们将在下一篇中展开介绍几种入门的标签发现与识别手段,供大家参考,大家也可以根据这些方法尝试去分析和探索一些地址背后的故事。
【本篇完】
【 关注Sec-UN 及 微信公众号 ZLabs 持续更新 】
