如何证明我是我?区块链世界的确权、身份验证、仲裁、预测技术大解读,enjoy~
说到万能的淘宝,相信大家不会陌生吧?
微信因为流量大,不少人想把自己的小店开在微信上。当然,如果想在微信上开店,店主不用自己从头搭建店铺,而用 “微店” 和 “有赞” 等开店 SaaS(“软件即服务”)即可。使用这些开店模板,店主只需要加上自己商品的图片和描述就可以了。
而这个 “开店模板” 层,在区块链的世界里对应的,正是面向 dApp 层的中间层 / 协议层。
我们在之前的一篇文章里介绍了面向底层的中间层,今天我们就来聊聊面向上层、面向行业的中间层,保证比面向底层的那篇好懂。
首先,我们来说说面向上层的中间层的定义、以及它和面向底层的中间层的关系。
这两层间其实很难划一条清晰的分界线。总体来说,后者意在改进底层性能(比如让整个网络速度更快),而前者是为了使某个具体领域的广泛应用成为可能、而专注于解决该领域特有问题的方案(比如如何在区块链世界里证明 “你是你”)。两者一起构成了广义的中间层,通常也被叫做协议层,起到链接底层公链和上层 dApp 的作用。
中间层:既不是 “非你不可”、也不是 “可有可无”
这么看来,中间层是 “非你不可” 了?
其实,还真不是所有公链都需要中间层。有一小部分比较完备的公链可以自下而上跳过中间层,直接在公链上开发出 dApp,比如 Steem 区块链上就有内容+社交的平台 Steemit。
我们看到的steemit 只是 Steem 公链的冰山一角。
除了有些公链想向上发展自己做 dApp,我们也注意到目前有这么一种趋势:不少 dApp 或协议级别的项目出于各种各样的目的,也纷纷向下发展、开始自己做公链,不愿意用别人的公链了。
“人人都自己做公链” 的问题在于,公链也需要众多 dApp 们一起支撑整个生态的繁荣,公链太多,dApp 都不够用了…
那么,到底哪些中间层或 dApp 有自己做公链的必要呢?
小探采访了区块链技术开发者林吓洪。林吓洪认为,在 dApp 或协议类项目想发币之前,先要问自己以下两个问题:
第一,我的货币体系是否 “自包含(self-contained)”?第二,我的项目是否在解决一个特定应用场景(application specific)里的问题?
如果这两个条件都满足,那才值得发公链。
所谓自包含,就是看币在发币方的系统里能否自成体系,能否像燃料一样,让整个系统有效地运转起来。比如做去中心化交易所协议的 0x,就很明智地选择用别人的公链。试想,如果一个交易所自己做条链,谁还会在那条链上面发币、和人去交易呢?因此我们说,0x 就不符合 “自包含” 这点,它依赖于其他的币、其他的生态,所以必须建立在其他公链上。
另外一个条件,就是看项目是否在某个特定应用场景里。如果通用型区块链解决不了它要解决的问题,才有必要自己做公链,反之则没有必要。
做去中心化存储的 IPFS 就满足这个条件:去中心化存储的应用场景很特殊,要解决隐私问题、文件共享的副本备份问题、还要确保提供存储的人不作恶… 然而,通用型区块链并不能解决这些问题,因此其开发方 Protocol Lab 做出了与 IPFS 配套的公链 Filecoin,把这些设想都实现到链层。
而那些不符合这两个条件、还自己要做公链的项目…你懂的。
那么,偏行业的中间层都解决哪些问题呢?在这篇文章里我们主要讨论其中最受关注的三大类:预测市场、仲裁系统、和确权系统。
预测市场:从天气预报到股市分析,无处不预测
生活中,我们经常需要对事情进行预测:大到未来的经济形势如何,小到明天会不会降温、需不需要多穿一件外套。保险、金融、比赛结果预测、娱乐、甚至天气… 换句话说,任何一个需要我们对信息进行整合、加上自己的分析判断、最后得出自己预测的结果的事情,都在预测市场的范畴里。如果有个地方可以下注的话,不少人都会尝试一把,看看自己猜测得对不对。
对天气的预测,可能是我们从小到大最熟悉的一种预测。
因此,我们把区块链领域的预测市场定义为:人们对有明确结果的未来事件进行预测的一个平台。人们可以押宝自己看好的结果,预测正确的一方将赢得错误一方的赌注。
用户的体验是这样的:用户网上看到一个地址,然后把币打给赌的结果,比如在世界杯开赛前预测法国队得冠军。等事件结果出来后(世界杯结束),如果用户猜对了(法国队夺冠),用户钱包就会自动收到币;如果用户猜错了,他的币就被猜对了的人赢走了。
正因为预测在生活中应用广泛,不同细分领域的 dApp 将会越来越多,而这些一个个具体的 dApp 都需要用到预测这个 “引擎”。因此,做预测市场的区块链项目自诞生之日起,就格外受社区关注,甚至有人认为预测市场会成为区块链规模化应用的突破点。
那么,用区块链做预测市场到底都有哪些优势呢?
传统方法未能解决维护及监管成本高、用户资金不安全等问题,而基于区块链做去中心化的预测市场与传统方法比,有以下优势:
第一,密码学保证用户资金安全,避免传统方法里监守自盗、庄家控盘;第二,由于建立在区块链的逻辑之上,去中心化的预测市场维护成本非常低;第三,在区块链上创建的合约面向全球,不存在传统预测市场的语言、网络访问限制等问题;最后,自由度更高,用户可以对任何自己感兴趣的话题进行预测。
我们简单介绍三个预测市场项目:Augur、Gnosis、和 Bodhi。
这三个项目本质上是用不同的设计思路,试图解决相同问题(在之前的另一篇文章里,我们把 Augur 和 Gnosis 归为中间层偏底层,但由于这两个项目现在也有中间层偏上层的产品,故而放在一起比较)。
Augur利用了 “囚徒困境” 思路,激励大家投票给诚实的结果,然后根据投票结果来分配输赢,可见Augur 相信群众的眼睛是雪亮的。但 Augur 的投票过程长达一两天,非常漫长,所以用户体验欠佳,而且在预测市场规模化后,将需要在全球范围内随机分配投票参与者,你能想象让一个老外预测《如懿传》的大结局吗?不能吧!因此 Augur 将面临预测市场规模化后的匹配问题。不过目前 Augur 仍然是该领域的领先者。
囚徒困境原指个人最佳选择并非团体最佳选择,Augur 运用此思路激励大家诚实投票、以确保结果的正确性。
Gnosis的思路是,它指定一个可信的信息中介提供的事件结果来裁定事件(比如该信息中介提供的信息说,2018年世界杯冠军是法国队,那么 Gnosis 就按照这个结果做裁定)。要注意的是,这种模式建立在 “指定信息源的信息真实可信” 的假设上。一旦假设不成立,整个模式就会被带跑。因此,如何保证这个信息中介提供的信息真实可信,就成了 Gnosis 需要解决的问题。
Bodhi则用 “循环仲裁机制” 解决预测问题。循环仲裁,就是如果某人对某事结果提出质疑,他可以不断上诉,请系统重新判决,直到没有争议为止,用这种办法保证结果的正确性。这有点像我们现实生活中的一级级法院。
区块链里的循环仲裁不会这么辛苦。
但这三个项目也面临着预测市场目前共同的瓶颈:用户不友好、使用门槛太高,交易速度慢、要会自己管理钱包、要承担预测结果正确与否和币价大幅波动的双重风险…等等。这些问题可能无法短期内解决,但长期来看,预测市场无疑将是区块链世界里的重要一环。
需要指出的是,真正意义上的区块链预测市场项目,其最核心是对结果的预测应该是去中心化的。如果一个项目徒有预测市场的外表、而预测部分仍然是中心化的,那么它其实并不是真正的去中心化预测项目,这点值得我们格外留意。
仲裁系统:比现实世界离绝对公平进了一步
仲裁系统又叫争议解决层,也是中间层偏行业的重要组成部分。未来随着 dApp 越来越多,就像互联网上难免有网购之类的引起的小纠纷一样,区块链世界里难免也会有纠纷。
生活中如果出现了严重纠纷,我们会走法律程序。但显然不可能所有鸡毛蒜皮的小事都走法律程序,就如同二手交易网站咸鱼有自己的仲裁系统一样,区块链也需要找到一种有透明度的、去中心化的办法解决争议,因此作为中间层的仲裁系统就显得格外必要。仲裁系统模块做好了,就可以运用到不同的 dApp 里。
那么,区块链上的仲裁机制是怎样的呢?
假如区块链的交易双方出现争议需要仲裁,由于钱包和身份一一对应,因此争议双方可以分别他们钱包里的信息作为证据提交到链上。然后,仲裁系统会随机抽取 “陪审团” 盲审。陪审团并不知道具体谁是谁,只能看到事件本身,并且从事件的信息做出判断后投票,确定事件的结果。而且在这个过程中,“陪审团” 还可以讨论、问问题,由于整个系统是去中心化的,所以每个人都是匿名的。
区块链的匿名性决定了陪审团不会有主观倾向。而这点是传统手段 —— 也就是中心化网站 —— 很难做到的事情。中心化仲裁网站当然可以表面弄得很公平的样子,但后台管理员到底如何挑选陪审团、是否会把你的身份信息透露给别人,我们又怎么知道呢?
小探和业内人士交流后了解到,作为区块链世界里一个相对细节容易被忽略、但其实很重要的点,现在做仲裁系统的项目并不是很多。本文主要介绍 Kleros 和 OATH protocol 两个项目。
OATH的仲裁协议以普通法陪审团制度为蓝本,利用区块链、加密算法、与类别(categories)和属性(attributes)相关的随机算法、陪审员信用等级、及案例追踪技术打造而成。 OATH 正在构建一个去中心化的、标准的、可扩展的公共链仲裁协议,以保护 dApp 用户的权利和资产。
OATH 为智能合约编程语言提供了一个界面。通过 OATH 接口编写的所有智能合约都由 OATH 的智能仲裁协议自动保护。此外 OATH 还提供了一个 layer 2 library,简化与 dApp 的融合及 OATH 协议里的纠纷解决过程。
Kleros也是一种通用的仲裁协议。当有争议时,Kleros 会挑选陪审员出来,并且为他们提供经济激励以达到用快速、价格合理及透明的方式裁决争议。与 OATH 类似,Kleros 也不会直接与用户交互,仲裁将发生在构建在 Kleros 协议之上的、面向客户的 dApp 上。
和 OATH 不同的是,Kleros 计划从一种“法院”裁决所有案例,逐渐变成根据争议类型设立专门的分院,对口裁决。
不论 OATH 还是 Kleros,这类项目应用都比较广泛,与保险结合就可以解决保险相关纠纷、与旅行结合就能解决旅行相关纠纷…等等。
确权系统里的身份验证:区块链世界里,我是谁是我?
区块链的不可篡改性,就决定了所有想要溯源的行业,都想用区块链技术做确权系统。
还记得改一张图片的像素、哈希值都不一样的确权方法吗?从区块链 “上古时代” 的比特币时期开始,人们就想用区块链解决确权问题了。但目前确权系统本身并没有太多真正的应用,一部分原因是它由于涉及到法律,需要不少线下参与(比如律师)。因此,现在区块链上的记录往往被当做证据,呈现给线下专门研究确权方面的法律工作者,而不是完全依赖区块链上的确权项目。
身份验证(Identity system)是确权领域的一个分支 —— 毕竟,要想证明一件资产是你的(即“确权”),你首先要证明你是你(即“身份验证”)。同时,身份验证也是目前确权领域发展得最好的一个部分。此处我们主要介绍身份验证领域两个知名度比较高、产品已经落地的项目:Civic 和 uPort。
举个例子:假设你用身份证买了票、定了酒店,那么你出门时就要随身带着身份证以证明你的身份;这套思路搬到互联网上,就变成了第三方登陆, 而 Civic 就想做区块链里的 “第三方登陆”—— 当然了,这是建立在所有 dApp 都用同一套身份验证系统的前提下。
Civic 提供一种嫁接在别的 dApp 上的、用以确定用户身份确认系统,这样用户就不用和那些 dApp 一个一个地证明自己的身份了。uPort 也有相似的使用场景。
当然,这两个项目也有诸多不同之处,比如 uPort 不需要、也没有自己的代币,交易时只用付以太坊的燃料费即可。毕竟,由 ConsenSys 开发的 uPort 算是以太坊的嫡系产品,肩负着发展以太坊生态的使命,有没有自己的代币也就没那重要了。
另外一个显著不同是 uPort 把个人信息存放在链上,而 Civic 则是存放在用户手机里的。信息存放在链上可能会受到存储空间的限制,而存在本地可能会让信息的交换及流通变得不方便。
这两个项目目前均已落地应用:去中心化交易所 0x 融资时用的就是 Civic 的身份认证系统(当然,两个项目有相同的投资人);我们上文提到的 Augur、Gnosis、及共享协议平台 origin protocol,则已经在用户登录的那一步用上了 uPort。
任何需要用户登录的 dApp 都需要身份验证。身份验证的运用前景如此广泛,做身份验证的项目当然也远不止这两家:
除了 Selfkey、Project Indy等项目,微软和埃森哲也已经联合推出了一款身份验证的原型链(prototype),该原型链使用私有的许可版以太坊。
与此同时,公共以太网网络上的开发者正在制定代币化的身份验证标准。这个名为 ERC-725的标准由 Fabian Vogelsteller 提出。Fabian Vogelsteller 是谁呢?他是 ERC-20 标准的创造者。我们现在看到的各种加密货币,不论是靠谱项目的币还是割韭菜币,绝大部分用的都是 ERC-20 标准。
最后,Digital Bazaar 的团队推出了一个名为 Veres One的、基于区块链的身份验证解决方案的实验版。它和 uPort 有点类似,都是公共的、不需权限访问(permissionless)、且不自己发币的项目。然而,和基于以太坊的 uPort 不同,Veres One 是一个自己独立的区块链。
限于篇幅我们不一一详细介绍。总的来说,目前 Civic 和 uPort 暂处身份验证的第一方阵,虽然不确定哪个项目会最后胜出,但这个领域的竞争激烈、百家争鸣却是确定了的。
此外,去中心化的交易系统也是中间层的重要组成部分。Bancor、0x、Loopring 等项目都非常有潜力。由于篇幅限制,就不在本文做过多介绍。
结尾的话
不论哪个领域,哪些中间层项目才是发展得好、有潜力的项目呢?
答案是:要看它的应用范围有多广。如果一个面向 dApp 的中间层项目上有很多 dApp、且用户人数多的话,这个项目就很成功了。照此标准判断,即便在熊市每天交易量还都有几千万美金的去中心化交易所 0x,和开发了颇多游戏、吸引了不少玩家的 Loom,的确算是各自领域的佼佼者。
那么,区块链里的中间层偏上层现阶段的最大问题是什么呢?
业内有观点认为,现阶段最大的两个问题是:基础设施不完善,以及非常缺乏用户基础。
当然,用户基础是建立在基础设施的发展之上的。不论是中间层偏底层、还是中间层偏上层,如果公链底层、共识协议等取得实质性的突破,解决扩容、存储与计算等问题,将会给中间层带来翻天覆地的影响。很多项目在争先恐后地试图解决这些问题,到底会是 Dfinity、Algorand,还是别的项目能带来这个改变?我们拭目以待。