跳过正文

10. 比特币匿名性

·36 字·1 分钟
Chuck Chan
作者
Chuck Chan
分享技术、思考与生活

比特币的匿名性
#

比特币的 “匿名性” 是一个被广泛误解的核心特性—— 它并非绝对匿名,而是一种伪匿名,更准确的描述是地址匿名、交易公开可追溯。甚至与纸币相比,纸币的匿名性更好,因为纸币上面没有任何任何个人相关的信息。

下面分别从几个角度分析下比特币匿名的局限性。

账号关联
#

在一次比特币交易中,通常会有多个输入及多个输出。我们前面说过,比特币基于utxo集合,在现实世界中很少某个utxo输出刚好等于你要交易的金额,这就意味着某笔交易可能需要多个utxo输出及"找零"的情况。

在上面的情况中,输入的两个账号很可能都是同一个人的,很可能该人同时用于这两个账号的私钥,从而发起的交易。同样的,account_4也很可能是找零的地址,account_3是实际的交易金额(为什么不是反过来?因为如果实际交易金额是account_3的3个比特币的话,那account_1跟account_2单个账号金额就足够了,也没必要用两个账号了)。

由上,能由交易的账号信息,从而将这些账号进行关联。

身份关联
#

任何使得比特币和实体世界中关联的操作都有可能泄露用户真实身份,其中最典型的就是比特币与法币的交易。例如在钱包软件中使用法币购买比特币,或者将比特币出售以换取法币(但对于大额法币的转入与转出,很难逃避司法机构的监管)。

监管机构通过链上分析工具已破获多起利用比特币洗钱的案件 比较著名的有silk road事件

实际上,很难不让比特币与现实世界产生关联,除非,你完全不使用比特币。这样的人也不是没有,比特币的发明人中本聪就是其中一个(传闻他有大量比特币,但从未使用过)。

如何提高匿名性
#

如果要提高比特币的匿名性,可以从两个方向来实现,一个是网络层,一个是应用层。

网络层
#

网络层的匿名性其实已经有较好的实现,比如利用TOR路由,其核心工作原理是数据传输过程像剥洋葱一样,经过多层加密和节点转发,每一层仅暴露下一个节点信息,最终无法追溯原始发送者。

应用层
#

  1. 某些第三方的服务商会提供比特币的coin mixing服务,服务商会将不同用户的比特币放在一起打乱重组,用户再从第三方的服务商取回对应数额的已经是经过mixing处理的比特币,但其中的风险是这些服务商本来也是匿名的,如果他们卷款跑路的话,那你是一点办法都没有。
  2. 某些钱包软件实现了coin mixing机制,很多人会把比特币放到钱包软件里,钱包软件会把这些币全部搅混,当你从钱包取回币的时候,可能已经不是你当初放入时候的币了。
  3. 某些交易所天然地实现了coin mixing机制,例如交易所里可能产生比特币->USDT->以太币->比特币的交易,最后从交易所里提取的比特币已经不是当时你存入的那些了,当然这个前提是交易所不会泄露相关的提币存币记录。

总结
#

实际上,暴露用户隐私正是由于区块链的公开性不可篡改性。不可篡改性对于隐私保护,实际上是灾难性的,因为一旦因为某个交易将你的身份暴露出去,这笔交易会永久写到区块中,永远无法去除,从而造成身份的永久性暴露。