门罗币子地址是如何防止用户信息被关联
一直以来,门罗币都在用创新方法来解决保护隐私的各种难题.通常这些创新也会带动其他创新,更有甚者,有些创新技术还可以带来意外收获. 今天要介绍创新技术中的佼佼者,门罗币的子地址功能
举个例子:
假设你叫比利鲍勃,你开了一个水果店卖水果,由于你是比特币的爱好者,所以你允许客人付账的时候给你比特币,于是你在店门口挂了一个牌子说这里接受比特币,你还展示了你的收款二维码给大众,假设你的收款地址为7XybV3开头,那么这样做的首要风险,就是任何看到你收款二维码的人,不用跟你交易都知道你的账户余额,所有的交易转账记录,多少其它账户给你付过款,那些人的每一笔来源和余额.
抛开这种危害,还有第二种隐私危害,不太被人提及.假设你的另一个身份是一名黑客或者程序员,你化名33tz0r在网上向无知的民众揭露真相,批评XX腐败,大企业的违法行为,或者揭露有组织犯罪,显而易见,你需要保持匿名以防止迫害和打击报复.可你同时在网站和论坛上表示你接受比特币捐款,以便大众给予你支持,收款地址同样是7XybV3 开头的比特币地址.
而现代通过互联网的大数据和各种爬虫,可以简单而有效的直接抓取所有关于以7XybV3为开头的比特币地址的各种数据.然后结果显而易见,这个收款地址同时出现在比利鲍勃的水果商店和黑客名为l33tz0r的帖子里.这就足以关联两个使用者的身份并消除黑客的匿名性,这会带来可怕后果.
需要注意的是,在上面的例子里,门罗可以默认防御第一种隐私泄露,也就是说如果你的水果店接受门罗付款,别人不会知道有多少人给你有过交易,也不知道余额,但是发明子地址之前的门罗币还是不能防住,第二种隐私泄露.即使门罗币隐藏了链上数据,可该攻击并不利用链上数据作为攻击点. 它仅抓取收款地址,但一个钱包必须公开给大众才能接收付款.即便是在匿名的情况下也要公开捐赠的地址. 这是一种会在不经意间,潜在给门罗币用户造成伤害的情况,并且这是一个很好的警示,即使门罗币本身在隐私方面处于最高水平,也不能保证用户在币以外的范围是安全的.
解决此问题的常用方法是拥有多个钱包. 对于每个身份,例如上面说到的水果店老板和黑客使用不同的收款钱包的地址,由于各个身份使用了不同的地址,因此无法关联它们. 但是,这样做的坏处,对于比特币等透明币来说,用户不光要记得每个新钱包的钥匙和助记词,还要保证他们账户之间不转帐,或者不同时打进同一个账户变现,例如实名的交易所,只有在用户从不混淆时,这种隐私才有效. 任何意外的发生都会让这种方式功亏一篑,门罗币相对来说简单一些,不同账户可以互相转账不被发现,不过同样,每个地址的种子和私钥还是必须保持安全,这个过程增加了为了保护钱包信息安全的工作量.
门罗的解决方案是子地址功能. 简单来说在主地址下可以创建无数的子地址,并且所有地址共用同一个种子和密钥. 每个生成的子地址都可以单独接受门罗币,并且所有子地址的币都存储在同一个钱包中.使用这种方法,可以在一个地址下操作无限个身份,同时将信息安全工作量保持在最低限度. 这些地址在数学上也不可关联的,因此除非用户故意暴露他们与世界的联系,否则外部观察者将很难关联它们.
但是子地址更让人津津乐道的意外功能是,它的出现替代并解决了人们长期以来讨厌payment ID 的情况.
2018年以前的门罗币,转账备注付款ID是商家识别哪个客户发送哪个付款的一种方式.由于门罗币信息在链上模糊不清,因此接收者也无法分辨发送者是谁. 这意味着,如果存在价格相似的商品和多个订单,则无法确定到底是谁付的款. 那时候付款ID是由商家生成并提供给客户的唯一的随机字符串. 客户在发送交易时将其添加为单独的字段. 该随机字符串作为交易的一部分放置在区块链上,通过这种方式,商人可以识别并分类转入的交易. 这里译者为了方便大家理解,举一个生活里的例子,比如学校收学费,会给所有学生同一个银行账户,然后要求付款的学生在转账的时候备注学生的学号,以便会计查账到底谁付了学费,当时的payment ID 就相当于这个例子里的学号.。
这种方法有几种缺陷.首先,它损害了链上数据的一致性.另外,独特的元数据可以使某些交易格外与众不同,从而可以进行启发式分析. 并且当此功能没有对所有人强制实施时,尤为严重,因为转账的时候并不是要强制备注的,比如你从交易所提币到自己的钱包,你并不需要交易所给你备注payment ID.另外,使用这个功能的每个人都导致门罗币区块链增加不必要的额外负担,因此这不是一个好方法. 同样,如果付款ID由于任何原因而被重复使用,则将两个交易关联在一起会变得易如反掌. 这通常发生在交易所充值中,任何人都可以轻松地将交易关联为某个交易所的充值,也可以确定它是来自一个特定的某人.
其次,从用户体验的角度来看,支付ID需要额外进行第二步操作,对不习惯使用该功能的加密货币用户来说,如果忘记了这个步骤,则会造成很多不必要的麻烦,首先充值不能被交易所自动识别到账,而后续这些交易所为了弄清楚到底谁充值,也会花很多时间和精力. 通常为了确定到底是谁充值,交易所需要通过和客户直接交谈并确认只有他们自己才知道的其他标识信息,例如,金额,发送日期和转账的TXID来完成确认.
许多人都犯同样的错,甚至导致一些交易所开始向客户收取额外费用,来找回那些由于忘记了付款ID而没有入账的转账. 客户也只能硬着头皮吃下这个苦果,可是交易所本身也并不开心,毕竟花费了额外的精力,并损害用户体验.
当时有一个解决方案,即集成地址,又叫长地址,它将收款地址和付款ID合并为一个长的地址,但是该方案采用率很低,尽管商家会从中受益.
而子地址可谓交易所的大救星. 每个主地址可以简单生成大量子地址,并内在识别哪些转账是从哪个子地址转入的,使商户可以采用更优雅的方式摆脱付款ID,同时采用新一代门罗币技术.从那时起,大多数交易所和商家都已切换到子地址作为交易识别的方式.
有趣的是本来子地址最初是为了解决隐私问题而设计的方案,没想到却为商人和客户解决了易用性的问题. 这就是文章想阐述的核心思想,创新会带来更多的创新,继而更多新想法会滚滚而来,同时创新也会为我们每个用户带来意外惊喜.门罗币一次又一次地做到了这一点,而整个社区也投入巨大的精力来辨别各种创新技术在门罗币区块链上实现的可能性. 未来可期,谁也不知道我们的天花板在哪里,以及那份创新还能让我们一起解锁怎样的新高度和境界?