当前位置: 首页 > news >正文

区块链:去中心化的交易所方向

引入

“门头沟幽灵”重现江湖

2016/8/2 Bitfinex,交易量最大的比特币交易所之一,宣布自己成为最新的大型安全漏洞受害者。账户被黑,客户资金被盗。该交易所位于香港,是次损失高达6000万美金。交易所希望在比特币用户和BTC/USD保证金交易商平摊损失。联想到2014/2/28,另一次更为著名的Mt.Gox交易所声称价值4.7亿美金的比特币被盗,包括用户交易账号中约75万个比特币,以及Mt.Gox自身账号中的约10万个比特币。根据2月28日的交易行情,损失估计约4.67亿美元。据媒体报道,Mt.Gox交易平台顶峰期间拥有超过100万个账户,该次攻击直接导致这100万个用户血本无归,Mt.Gox也因此破产,同时对比特币也引起更多的争议。历史上每次大的交易所被攻破的时候,比特币的价格就会暴跌一次,例如Mt.Gox事件的比特币价格已从2月7日前的828.9美元下跌至135美元。最新的bitfinex事件,2016/8/2当天比特币价格从4500人民币左右直跌到3000人民币,接近30%。

本文主要从技术角度解读这个幽灵的根源,以及如何才能避免。

比特币不是加密的安全货币吗?为什么会被盗?

比特币推广者一直声称,比特币凭借加密技术难以被伪造和盗窃。比特币有一个非常核心的特点,即匿名拥有,在比特币的区块链上记录了所有比特币的来龙去脉,但是以帐户地址的形式记录,并不关联到具体个人谁拥有这个账户的私钥,谁就可以调动这个账户的比特币。但正所谓成也萧何,败也萧何,这个私钥往往就成为黑客突破和攻击的目标。因为一旦获得目标帐户的私钥就可以控制、转出这个账户比特币。
被盗的交易所,应该就是网站被攻破后,其所拥有的比特币账户私钥被黑客控制,然后将其比特币转到另外的由黑客所控制的账户中。这个过程,不是比特币本身有问题,而是这个网站出现了漏洞。
那么问题又来了,既然网站有这么大的风险,是否可以不通过网站来交易比特币呢?这又要从比特币的另外一个特点来解释:比特币的转移需要在其底层的区块链上记账即产生新的块(block),而产生新块的时间是10分钟,同时为了算法安全的需要,一笔交易至少需要6个块确认才真正的没有争议,换而言之,一个交易可能长达1个小时都无法确认或交割。这对习惯了买卖股票、外汇的普通客户而言无法接受。这就引出了中心化的交易所概念,为了实现秒到,即用户即买即卖交易所首先要卖方先把币存在交易所,交割其实是内部账户数字之间的划转,即币只是在交易所这个层面属于用户,从比特币帐本的角度来看,全部归属于交易所,用户也从未控制自己名义上的账户的私钥。

中心化交易所的风险

首先是技术风险。理解了上文所述的中心化交易所的技术特点,就不难理解其面临的技术风险。在市场自由竞争的环境下,总有交易所会做到最大,此时这个最大的交易所便会成为比特币的弱点和比特币反对者们攻击的主要对象。而一旦出现网站被攻击,甚至私钥被盗,将又会出现下一个“门头沟”事件。当前比较大的几个交易所如火币网,云币网,coinbase,okcoin等无一例外都是中心化的交易所。而这些交易所因为交易的是比特币,在大多数国家并未受法律的保护,当然也不可能受到类似于股票交易所这种级别的保护,技术上来讲,非常脆弱,而一旦受到攻击,其损失又无法追回,因此黑客们总是把目标选定在比特币领域也不足为奇了。

其次是道德风险。对于Mt.Gox监守自盗的怀疑从来就没有停止过,毕竟面对的4.7亿美金的巨额财富,所以Mt.Gox事件发生之后,美国FBI和日本刑事调查部门第一时间都介入来调查。在中国p2p的跑路事件层出不穷,大量的中小交易所也在去年以来的区块链投资风口中成立,这里面必然蕴藏着巨大的风险,并且是在交易所的经营管理者的道德层面。

因此从正规和高道德水准的交易所运营者来说,几乎就是怀抱着一个定时炸弹,夜不能寐的滋味相当不好受。

那么,有没有去中心化的交易所解决方案呢?答案是当然有,并且业界已经有不少在这方面的探索了。下文将就去中心化的交易所其技术特征以及存在的问题进行探讨。

Bitsqaure的解决方案

开源项目BitSquare通过让服务器使用Tor Hidden服务,可以带来更强的隐私保护。特别之处在于BitSquare不仅仅是一个去中心化交易所,还是一种协议,旨在保持该网络是开放的。BitSquare对去中心化的承诺通过它的安全性优先于方便性的选择来进行实践的,这体现在他们并不会持有用户资金或者收集数据



其核心思想就是利用比特币的 “多重签名”机制 ,可以实现交易资金的担保和安全。交易的撮合是通过另外的p2p网络来实现解决了陌生人通过p2p网络实现比特币交易的信任问题,但并没有解决交易的体验问题,用户不能实现交易的秒到。

与此类似的交易所还有openbazzar,bitmarkets等,提供的功能和体验基本类似,即有去中心化的核心特征,但由于存在交易体验的问题,注定无法成为交易所替代品。

闪电网络

闪电网络的出发点是为了提升比特币交易速度,假设一笔交易影响alice, bob,理论上其他人是不关心这笔交易的,因此可以使用延迟广播的原理,来交易减少主链上的交易数量。与此同时,延迟广播还带来一个好处,交易双方可以一直使用这个通道进行后续交易,直至有一方决定关闭这个通道,最终交易状态广播至主链。

闪电网络尚有巨大的争议,其技术细节在本文就不展开了,将在另文中详述。尽管闪电网络本身可以基于任何合适的传统技术构建,闪电网络的支付通道也可能逐渐向少数大型中介集中,变成若干大型中介彼此互联、普通用户直连大型中介的形式,但这种方案仍然具有传统中心化方案不可比拟的优势,因为用户现在并不需要信任中介,不需要在中介处存钱才能转移支付,资金安全受到比特币区块链的充分保护。因此闪电网络带来了一个非常大的好处,即基于闪电网络构建去中心化的交易所,一旦标准化之后,若各个offchain和onchain钱包加入闪电网络成为节点:

  1. 由于成为hub建立通道需要交保证金质押,副作用是使钱包,交易所等部分准备金的企业提高了准备金率
  2. 由于资金可以瞬时到账,搬砖套利资金可以在各个参与到闪电网络的实体间低成本来回传输,价差将更快被抹平
  3. 秒到大大改善支付体验,将有可能催生各种有趣的小额支付场景,如流支付,打赏,冲击changetip等产品
  4. 闪电密钥存储使用分层确定性的hd钱包技术,各种onchain钱包会极有可能形成(闪电钱包+比特币主链钱包)双钱包共存的形式;同时由于闪电网络足够快,可能会对offchain钱包有冲击,比如coinbase等offchain钱包。

结论

去中心化的交易所是未来大势所趋,采用闪电网络将会是非常有吸引力的解决方案,但由于闪电网络对比特币网络需要若干改动的依赖,加之其自身又存在技术方案非常复杂,能够完全理解该方案的专家或程序员非常少,目前尚存在较大的不确定因素。

相关文章:

  • 星际文件存储IPFS是如何颠覆云存储的?
  • 使命、愿景、价值观
  • 前端Token存储问题
  • 为什么房产等实体资产不适合做同质化所有权拆分?
  • 市场营销+AI+区块链
  • 为什么NFT可安全实现无第三方担保交易
  • 腾讯千帆区块链云市场发布会
  • 陆奇万字演讲:世界新格局下的创业创新机会
  • 区块链积分体系
  • 区块链token设计原理与区块链token经济生态的商业意义
  • 如何判断是否有必要使用区块链
  • 基于区块链服务的供应链物流应用
  • 区块链服务在医疗健康上的应用
  • 区块链的前世今生
  • 关于新科学与领导力
  • 《Javascript高级程序设计 (第三版)》第五章 引用类型
  • 【node学习】协程
  • CSS3 聊天气泡框以及 inherit、currentColor 关键字
  • HTML5新特性总结
  • JDK 6和JDK 7中的substring()方法
  • KMP算法及优化
  • LeetCode29.两数相除 JavaScript
  • mongodb--安装和初步使用教程
  • node学习系列之简单文件上传
  • SpriteKit 技巧之添加背景图片
  • Wamp集成环境 添加PHP的新版本
  • 想使用 MongoDB ,你应该了解这8个方面!
  • 一道面试题引发的“血案”
  • 原生JS动态加载JS、CSS文件及代码脚本
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • 怎么把视频里的音乐提取出来
  • JavaScript 新语法详解:Class 的私有属性与私有方法 ...
  • 扩展资源服务器解决oauth2 性能瓶颈
  • $emit传递多个参数_PPC和MIPS指令集下二进制代码中函数参数个数的识别方法
  • (01)ORB-SLAM2源码无死角解析-(66) BA优化(g2o)→闭环线程:Optimizer::GlobalBundleAdjustemnt→全局优化
  • (27)4.8 习题课
  • (附源码)ssm基于微信小程序的疫苗管理系统 毕业设计 092354
  • (附源码)ssm跨平台教学系统 毕业设计 280843
  • (附源码)计算机毕业设计SSM智能化管理的仓库管理
  • (利用IDEA+Maven)定制属于自己的jar包
  • (四)Android布局类型(线性布局LinearLayout)
  • (续)使用Django搭建一个完整的项目(Centos7+Nginx)
  • (转)Android中使用ormlite实现持久化(一)--HelloOrmLite
  • (转)Linux NTP配置详解 (Network Time Protocol)
  • (转)大型网站的系统架构
  • .NET MVC 验证码
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .NET序列化 serializable,反序列化
  • @angular/cli项目构建--http(2)
  • [ C++ ] STL---string类的使用指南
  • [ 攻防演练演示篇 ] 利用通达OA 文件上传漏洞上传webshell获取主机权限
  • [100天算法】-目标和(day 79)
  • [20171101]rman to destination.txt
  • [BJDCTF 2020]easy_md5
  • [BUG]Datax写入数据到psql报不能序列化特殊字符