比特币地址重用!?

比特币地址重用

  • 1 问题
    • 1.1 隐私
      • 1.1.1 例1 - 暴露储蓄
      • 1.1.2 例2 - 交易所前的赛跑
      • 1.1.3 例3
    • 1.2 安全
      • 1.2.1 已知攻击
    • 1.3 意外损失
    • 1.4 疑惑
    • 1.5 高费用
  • 2 知名的违规者
  • 3 译者结束语

原文链接: https://en.bitcoin.it/wiki/Address_reuse

比特币地址重用指同一个地址在多个比特币交易中使用。这不是我们期待的做法,也是对交易参与者以及未来持有者的隐私和安全的一种威胁。这种做法碰巧可行,但比特币并非有意这样设计,不能期待它能稳定的工作。

使用比特币最隐私和安全的方法是给每个要支付给你的人发送一个新的接收地址。在接收到的比特币被消费后这个地址不应再被使用。在发送比特币给别人的时候,也让他给你一个新的比特币地址。

有争议讲“比特币地址”不是一个好的命名。 也许叫“比特币发票”更好些。

在今天,优秀的钱包都使用确定性的钱包,并且有个不错的用户界面可以方便而安全地使用多个钱包地址。之前(大约2013年以前)这个很难做到,是因为在当时创建新地址会让备份失效导致资金损失。

1 问题

1.1 隐私

地址重用不止破坏你的隐私,而且还有其他人的,包括那些跟交易不直接相关的人。在某些情况下,这些风险可以严重到侵犯消费者保护法。

在地址被重用的时候,这些重用的地址可以让人们轻易的判定这些地址是你的。 每次这些重用地址对应的私钥对一个新的交易签名的时候,任何收到交易的人都能够用这个地址的历史信息来找出关于你的信息。任何有兴趣发现地址拥有者身份的人会多有一个目标来发掘出你是谁。

在重用地址上的关系图中,该地址所有的输入跟它所有的输出都紧密地结合在一起。

在研究者们称为“身份坍塌”的领域里,进行过大量的研究工作。这个“身份坍塌”发生在当多个比特币地址被比特币交易图连接在一起的时候。地址重用让这个工作非常简单。现在还存在一些公开的数据库,它们不仅坍塌了成千上万的比特币地址,而且还使用公共信息来把这些坍塌了的地址跟现实中的个人关联。这些数据库还在被持续地维护。

也许你对欧洲的一些研究人员因受伦理委员会限制而不把你的身份公之于众而感到放心, 但是很可能那些从你这里收到比特币的人不清楚你的的意图:那就是通过你的这一泄露隐私的行为,在地址签名链上很远的人如果把比特币用在了违法犯罪中,你就会处于危险之中。

假如你是一个商家,由于你重用地址,你的交易历史会危害你的客户隐私。因为现在你的这些个公开的地址非常可能跟你的公司身份关联,这些个地址很可能在做一系列跟公司身份有关的经济活动。

1.1.1 例1 - 暴露储蓄

你用一个单一地址的纸钱包来存储比特币。
你所有的比特币都存在这个地址上,我们假定这里面有1百万美元的价值。
现在你买少量的比特币存放进这个纸钱包,增加你的储蓄。卖比特币给你的人顺着比特币区块链里面的线索发现你的钱包里面有1百万。
他在一个咖啡厅或酒吧里跟人聊到这个事情。
闲话传得很快。一个盗贼知道后闯入你家。绑架者抓走你的孩子,并且知道应该向你索要多少赎金。

1.1.2 例2 - 交易所前的赛跑

你在一个比特币交易所有一个账号,你向打进去一些比特币用于套现。你把比特币打进之前用过的交易所的同一个地址。因为地址重用,很容易在比特币区块链上发现有一些比特币被送到了交易所。
这个交易所要求在3个确认后才在你的账户上记账。但是那个时候比特币价格已经朝着不利于你的方向变化了,这是因为其他交易者知道了里你往交易所打币。
现在你只能在一个不那么好的价格上出售你的比特币。这其实可以很容易避免,只要交易所网站上点一下“创建新入账地址”按钮然后把比特币打进那个地址。

1.1.3 例3

你用一个单一的比特币地址来收款和消费。任何跟你交易的人可以看到你完整的财务历史。
你的房东可以看到你的薪水,当他涨房租的时候,知道该向你要多少。
商店售货员可以看到你的消费。很快会有流言说你在色情图片上花了很多钱而只给教堂捐献了很少的钱。
你的雇主可以看到你的消费。当你向工会缴费时或给维基解密或其他非盈利组织捐款时,你的老板知道谁不可以信任。

1.2 安全

在较低的层面上,比特币并没有地址的概念,它只有单独的币。在这个层面上,地址重用要求在花费比特币时产生多个数字签名。在多个场景中发现可以有多于一个签名用来找到消费比特币所需要的私钥。甚至当你一次把该私钥拥有的比特币都花掉, 仍然有可能在交易被确认之前由于失窃而被双花。虽然根据签名找出私钥的bug已经被修复,我们仍然应该谨慎对待,因为也许还有未知的bug存在。

当在一个交易中花掉所有的TXO时,还有另一个危险。假如有个人一直在监视比特币网络,当他接收到这样的一个交易,他可以拆分他的双花交易使得每个交易中只需一次ECDSA验证(为每个TXO创建一个交易)。这将使得攻击者的交易可以比被攻击交易更快地传播到全网,以增加双花的成功率。

1.2.1 已知攻击

多个签名中使用相同K值问题(How do you derive the private key from two signatures that share the same k value?)
定时侧链

1.3 意外损失

在比特币的概念里,一个地址是一次支付的发票。一旦那个支付完成,接收方没有任何理由保留这个地址相关的数据(最重要的私钥),于是可能就丢弃掉这些数据。甚至当人们并没有选择去丢弃那些数据,仍然可能因为这样或那样的原因丢失。当这些情况发生时, 任何将来支付到这个地址的币就像进入一个“黑洞”一样,并且永远被丢失,虽然接收者没有犯任何错误。

1.4 疑惑

看到过重用地址的用户可能会错误地认为地址跟钱包或银行账号类似。通常这发生这样一群人中,他们总在谈论“地址余额”、“钱包地址”、“来自地址”、和其他一些类似的在比特币中并不存在的错误概念。

1.5 高费用

一个使用P2PKH的单一发票支付在被消费时的费用是可以预测的,这是因为这样的交易有可预测的尺寸。根据“地址余额”来判断支付和可支配资金的软件可能因为较高的费用造成损失。如果有很多小额比特币汇到你的一个地址,当你消费这些汇款时会支付一个比较高的交易费。对于一个客户端软件来说,展示交易输出额比展示地址余额更有意义。

2 知名的违规者

一些知名的比特币软件和服务商鼓励或要求使用重用地址:

  • 多个比特币矿场(特别是 Eligius)
  • 使用单一比特币私钥/地址对的纸钱包

3 译者结束语

目前在技术上,在比特币交易中重复使用相同地址是可以的。但是这样做会给自己、交易历史中相关各方、以及将来交易相关各方的隐私和安全带来潜在的威胁。推荐的做法采用可以使用多个地址的确定性钱包,每个新的交易,都使用新的地址,不重复使用已经在交易中出现的地址。

你可能感兴趣的:(区块链,比特币,钱包,地址)