比特币并不具有严格意义上的匿名(anonymity)特性,而是更接近化名(pseudonymity),公钥哈希即为用户在比特币系统中的名称。根据各种分析手段可以推测公钥账户背后的真实身份信息和不同账户的关联性。
- 一般来说,一个比特币账户建议只使用一次,防止通过一个账户的多个交易分析出背后的真实身份;
- 另外即使使用不同的账户,也可以通过简单的分析得出不同账户之间的关联关系,例如下图所示,这笔转账交易有2个输入和2个输出,转给账户Addr4是3BTC,小于输入的Addr1的4BTC和Addr2的5BTC,如果Addr4是收款人的话,只需要从Addr1或Addr2转入就足够了,并不需要两个输入,所以Addr4大概率是找零地址,与Addr1和Addr2属于同一个身份,而获得6BTC的Addr3大概率是收款人:
- 一旦与现实事件发生关系,如发生资金转入、转出,就会泄露账户的真实身份。
- 不可篡改性对于匿名性是致命的,一旦某个账户泄露,也无法抹去,将对所有人永久公开。
比特币应用层和网络层的匿名解决方案: