双花问题不再仅仅是纸上谈兵。5月24日,媒体称,第26大加密货币BTG遭51%攻击--一名恶意矿工获得了比特币黄金网络至少51%算力,临时控制了BTG区块链,在向交易所充值后迅速提币,再逆转区块,成功实施双花。据悉,攻击者可能从交易所窃取超过388200个BTG,价值高达1860万美元。在这样的情况下,业界更需要深刻理解比特币中的双花问题,DxChain对于这个问题有自己的深刻理解,以下是他的解析:
中本聪的文章“Bitcoin: A Peer-to-Peer Electronic Cash System”开启了加密货币的行程。这篇文章从技术的角度详尽的介绍了比特币网络的体系构架,一些重要的概念比如电子交易,激励机制,Merkle树等被以后的加密货币体系反复使用。
实际上,整个比特币体系基本上是围绕着在去中心化环境中,没有一个可以信任的中间人的情况下,如何防止双花问题而设计的。
火币泰国站总部设立于曼谷,采用专业的泰国本土化运营模式,为泰国第五家合规持牌开展数字资产交易的机构,获准在当地开通法币交易及币币交易。火币泰国专注为用户提供优质、便捷的数字资产交易服务,向泰国用户提供泰铢法币交易服务,满足用户泰铢出入金需求,并将优质区块链资产引入泰国及东南亚市场。
什么是双花问题?
双花问题就是一个数字货币被使用2次或者多次。在现实世界中,我们可以使用法币,比如使用美元,人民币进行交易。买方把100美元付给卖方,由于100美元是实物,买方无法再使用这100美元进行新的交易。当我们使用信用卡的时候,当我们支付了100美元以后,也无法再使用这100美元进行新的交易,因为信用卡用户的所有交易记录被信用卡公司的中心数据库记录着。由于比特币不是实物,也没有中心数据库,避免双花问题就成了比特币体系要解决的重要问题。
而在比特币体系中有2个重要概念账本和账户,账本里面记录着每个账户有多少余额。账户进行一次交易,就会把这次交易发送到整个网络并写进账本里面。由于这个过程需要时间,账户可以在发送一次交易以后马上发送另外一次交易,这样会导致一个虚拟货币被花了2次。所以通常收款的一方会等待一定时间来确定交易的有效性。
火币集团宣布,旗下火币公益将捐助1000万元人民币用于全球采购医疗物资。1月27日,火币采购的2万个3M公司授权青岛金泽瑞安全防护用品有限公司生产的个人防护口罩已经运送抵达湖北省黄冈市。未来1-2天还将有20万套医用防护物资送达疫情严重地区。此外,火币集团在日本、韩国、美国、土耳其等国的办公机构也在积极进行全球范围的采购,希望在最短时间内将物资发往国内。 火币集团创始人李林表示,“这次疫情的发展出乎大家的想象,但是中国历来有团结一致众志成城的传统,此时信心比黄金珍贵,号召社会各界爱心人士通过各种捐赠渠道来表达爱心,尽自己的绵薄之力。
虽然中本聪的文章里面给出了部分的数学证明,但是由于篇幅有限,只是给出了结果,并没有详细说明。本文会给出一个更加详细的解释。
比特币账本在技术实现上就是区块链,所以区块链也被称为分布式账本。由于比特币网络的节点分布在世界各地,不同节点接收到交易的时间会不同,所以会产生多条区块链,比特币协议中采用最长的区块链。双花问题中,通常收款的一方会等待一定时间(等待自己的交易在一条很长的区块链里面)来确定交易的有效性,但是等待多久(区块链长到多长)会比较安全,我们马上来给出数学证明。
火币云是新一代金融基础设施方案供应商,为四大洲20多个国家提供合规化的区块链产品与技术支持,助推区块链,民生,贸易方面的应用在阿根廷,俄罗斯,泰国,马来西亚等多国落地,为用户提供安全、可信赖的价值网络服务。
双花攻击可以理解为,在一个交易被写到区块链上,并且又经过z个区块以后,攻击者又开始重新产生了一条新区块链,并且比目前的区块链快,这样攻击者就可以把以前的交易中的花费的虚拟货币取回来。我们把这个问题使用数学概念来从新描述一下:一条诚实链比一条攻击链快了z个块,如果下一个时刻诚实链产生一个新块,2条链的距离+1,如果是攻击链产生一个新块,2条链的距离-1,我们的问题是攻击链能不能追上诚实链。文章中给出以下定义:
p = 诚实链发现下一个块的概率
q = 攻击链发现下一个块的概率
qz = 攻击链在落后z个块以后追上诚实链的概率。
文中直接给出qz结论,计算qz是通过徒破产理论计算出来的。以下是详细的解释。我们引入了:
pz = 落后了z个块的攻击链在追上诚实链以前落后N个块的概率。
Huobi Brokerage场外大宗交易平台正式上线聚合交易和授信交易两大功能。 聚合交易是指在一个平台上聚合对接多家交易所,做市商、OTC平台以及其他流动性供货商,实现“深度聚合”,提供大宗交易所需要的市埸深度,降低大宗交易价格滑点,从而提供极具竞争力的交易价格。火币场外大宗交易平台支持的交易类型有以下三种: 1、询价交易:该功能已上线,大宗交易一口价成交,每10秒刷新价格。 2、聚合交易:该功能已上线,提供聚合orderbook,每秒刷新价格。 3、大宗委托交易:该功能即将上线,大宗委托交易,可在任何时间重新设置理想价格。 除聚合交易功能外,火币场外大宗平台也上线了“先锁价,后清算”的授信交易功能。该功能需提前通过相关资格审查, 符合资格的机构用户可享有24小时先锁价,后交割的安排,减少交易平台跑单及价格波动带来的价格风险。
pz = p* pz+1 + q * pz-1,
由于p + q = 1,
(p + q) * pz = p * pz+1 + q * pz-1, 我们可以推导出
pz+1 - pz = q/p * (pz - pz-1)。由于p0 = 0,
p2 - p1 = q/p * (p1 - p0) = q/p * p1,
p3 - p2 = q/p * (p2 - p1) = (q/p)2 * p1,
pz - pz-1 = q/p * (pz-1 - pz-2) = (q/p)z-1 * p1,
pN - pN-1 = q/p * (pN-1 - pN-2) = (q/p)N-1 * p1.
我们把这个系列所有项加起来,会得到以下结果:
pN = p1 * [1 + q/p + (q/p)2 + … + (q/p)N-1]
pN = N * p1,if p = q,
pN = ((q/p)N - 1)/(q/p - 1) * p1, if p != q.
考虑到pN是攻击者链在落后N个块以后在追上诚实链以前落后N个块的概率,所以pN = 1。由此,我们得到:
p1 = 1 / N ,if p = q,
p1 = (q/p - 1) / ((q/p)N - 1), if p != q.
我们把这个系列前z-1项加起来,做法同以上相似,会得到以下结果:
pz = z * p1,if p = q,
pz = ((q/p)z - 1)/(q/p - 1) * p1, if p != q.
因为我们已经算出了p1,所以:
pz = z / N ,if p = q,
pz = ((q/p)z - 1)/( (q/p)N - 1) , if p != q.
当N趋向无穷大的时候:
pz = 0 ,if p <= q,
pz = 1 - (q/p)z , if p > q.
我们再来看一下pz的意思,攻击者链在落后z个块以后在追上诚实链以前落后N个块的概率,当N趋向无穷大的时候,也就是无法追上诚实链的概率。而qz是攻击者链追上诚实链的概率,所以qz = 1 - pz。因此,我们得到了:
qz = 1 ,if p <= q,
qz = (q/p)z , if p > q.
根据这个公式,我们可以看出如果诚实链出块的概率不大于攻击链出块概率,攻击链是可以追上诚实链的。反之,攻击链追上诚实链的概率按指数递减。
以上的结论是基于2个假设,我们明确知道p和q,并且攻击者在等诚实链出了z个块以后才开始产生新块。现在我们把这些隐含的假设去掉。当攻击者在送出一个交易的同时,马上开始产生攻击链的区块,在诚实链产生z个块以后,攻击者的进度是k,实际上攻击链落后诚实链是z-k个区块。我们可以估计k的期望值是:
我们把k用泊松分布来表示,在这种更实际的情况下,攻击链仍然追上诚实链得概率是:
当q=0.1,p=0.9,z=6的情况下,攻击者双花的概率是0.0002。在现实环境中,p远远大于q,所以在实际操作中,当收款者等待z=6个块以后,攻击者是很难追上诚实链的。
本文从数学理论中解释了比特币体系如何防止双花问题。这个结论奠定了PoW的理论基础,从而为以后的PoS理论打下很好的基础。DxChain就是站在这样巨人的肩膀上来设计了更加有用并且高效的系统结构。
火币日本已正式上线HT。根据公告,火币日本将开通HT/JPY、HT/BTC、HT/ETH、BCH/HT、XRP/HT、LTC/HT 6个交易对。同时火币日本还上线HT抢购活动,后续会陆续推出HT手续费抵扣、投票、支付等多种功能,推动HT本土生态构建。 据悉,上线后HT已成为日本第26个合规数字资产,并在日本合规数字资产市值中排名第7。日本是全球第二大数字资产交易市场,有超过620万的数字资产投资者。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。