Fomo3D凉了,333ETH来了,你以为公开透明的区块链博彩,实际上背后都是坑

31qu 发表了文章 • 2018-10-23 10:53 • 来自相关话题

赌,是人类天性。

据不完全统计,2016年全球博彩业总交易额为4500亿美金,2017年则达到了惊人的5000亿美金。在世界杯推动下,2018年博彩行业营收可能会更高。

这种天性,也蔓延到新生的区块链领域。Fomo3D、Dice2win、333ETH等,博彩类Dapp成为目前各个惨淡公链中为数不多的亮点。

参与者往往以为,区块链上的博彩公开透明,去中心化,没有庄家操控,让游戏更加安全有秩序。

然而事实真的如此吗?看似透明公正背后还深藏哪些陷阱?博彩类Dapp给区块链带来的虚幻繁荣还能存在多久?


1 火爆的区块链“博彩”


“目前来看,区块链第一应用就是赌博,其他应用,暂时目测还火不起来。”

锦宏是区块链Dapp资深开发者,他一边演示最近开发的博彩游戏的Demo,一边向31QU介绍着目前区块链应用方面的现状。

打开区块链Dapp活跃度检测排行榜,高居榜首的往往是博彩类区块链应用。这验证了锦宏的说法 。





EOS公链Dapp用户活跃前十的应用(红色部分代表博彩类游戏)


以最新数据为例,以太坊公链上最活跃的应用是333ETH这款游戏,目前日活跃人数为3000左右,占以太坊应用活跃榜前十用户总数的25%,游戏资金池沉淀将近4680个以太坊,价值650万人民币。





333ETH资金池沉淀4680个以太坊


据以往数据显示,333ETH日玩家人数从个位数增长到3000,只用1个月左右时间。要知道,基于比特股的全球第一大去中心化交易所,经过4年发展,日交易人数也不过2000左右。

333ETH如此快速的发展速度,究竟有什么吸引力?这就需要对该游戏的奖励模式加以说明。





蓝线代表333ETH用户增加情况


进入该游戏官网,31QU发现,这款游戏最大特点是:投资日收益率为3.33%。按照复利计算,这款游戏月收益可达267%。这就意味着,月初你投入10个以太坊,月底就会变成26.7个。

参与游戏的方式更是“方便快捷”,投资者只需要将以太坊转入游戏给出的地址,就可以持续不断地获得游戏分配的收益。

333ETH只不过是众多这类游戏中的一个。

“这类游戏开发起来很简单,基本上就是开发投注功能,外加智能合约就可以了”,锦宏在介绍这类游戏的过程中,指着Mac屏幕上的333ETH说道,“智能合约都是标准的,再稍加开发,就能适配这类游戏。”

较低的开发门槛,人们较高的博彩热情,直接导致这类博彩游戏快速发展。

据最新数据统计,以太坊前二十热门应用中,与333ETH相类似的博彩类游戏就多达8个,沉淀以太坊数量多达17900个,价值2500万人民币。虽然这些资金数量相对于整个币圈来说不算多,但是这8个游戏的日活跃参与人数,达到6000左右。而目前全球知名头部交易所,日活跃人数也不过这个数字。

EOS公链上也能找到相似情况。EOS公链活跃度前十的Dapp中,一半是博彩类区块链应用,目前活跃用户7000左右。

“火爆,并不代表安全,尤其是智能合约的安全性更是需要‘打问号’”,对这类游戏有过系统性研究的锦宏,提出了自己对智能合约安全性方面的质疑。


2 “难以避免”的智能合约漏洞


“智能合约是这类博彩游戏的灵魂,任何漏洞都有可能让资金池中的资金被席卷一空。”谈到智能合约漏洞的危害,锦宏这样说道。

但是这类博彩类游戏的智能合约,偏偏存在“不少”问题。

“智能合约中存在庞式骗局和支付实施问题,这个项目可能会出错。”9月16日,著名的Dapp排行网站 StateOfTheDApps 就对333ETF贴上了庞氏骗局的标签,同时还对智能合约安全性做出提醒。庞氏骗局就意味着,这是一款后来者接盘的资金盘类游戏,当后入资金不足以支付之前投资者的收益时,将会面临崩盘威胁。

而 StateOfTheDApps 所提到的“智能合约”安全性问题,可能是更为严重的问题。

“Fomo3D 第一轮大奖实际上就是有人向以太坊发起大量攻击交易,导致以太坊阻塞时间长达2分钟,最终赢所有奖励。”谈到Fomo3D智能合约被利用的过程,锦宏这样说道,“攻击者其实是利用了游戏合约自动判断游戏进行状态,通过发送高额手续费的交易,让正常投注的玩家无法交易,最终自己赢得大奖。”





Fomo3D第三轮游戏,目前资金池沉淀了16个以太坊


苍蝇不叮无缝的蛋。

Fomo3D的漏洞实际上是这类游戏自带漏洞所导致。会不会存在其它类型的攻击呢?

“当然存在,对于目前这类博彩类游戏的智能合约,‘随机数’选择十分重要。”锦宏在分析智能合约被攻破的方式时,向31QU强调了随机数的重要性。

在进行游戏结果判定时,需要判定到底谁赢得比赛。随机数的作用就是“裁判”,判定大奖到底归谁。比如,用1和0代表结果,用随机数算出来比赛结果是1还是0,如果他们各有50%的出现概率,就代表比赛参与者各有50%的可能性赢得比赛。

随机数参考的因素非常多,由于智能合约本身是自动执行的,它需要参考的随机数,对公信力要求特别高。

“但是,前博彩类游戏智能合约所参考的随机数比较局限,例如随机数可能是某个哈希值运算最后一位数,这是可能被猜出来,暂时无法实现真正的随机。”锦宏告诉31QU。

因此,博彩类游戏的智能合约,并没有想象的那么安全。

以太坊诞生以来,由于智能合约便捷的发币功能,让整个行业看到了区块链应用前景,Dapp开发也如火如荼进行着。但是随之而来的安全问题,也让整个行业面临巨大的损失。

2017年11月份,由于以太坊合约漏洞,导致以太坊钱包Parity中价值1.6亿美元的以太坊被冻结。而智能合约漏洞导致的安全事件并不只一件。今年4月份,由于合约“溢出漏洞”,导致SMT代币价格大跌。同样的原因,导致BEC代币价格几乎归零。





目前BEC代币价格,从最高点跌去95%


在区块链技术还不成熟的今天,智能合约自身漏洞给资金安全带来了巨大威胁。如果无脑参与这类游戏,最终很有可能会面临资金归零的结局。

任何一款应用必定是玩家与运营者双方共同参与的。而这类游戏的运营者也能通过各种不为人知的手段,从这类游戏中获取惊人利润。


3 开发者的“后门”


技术上的公开透明,给了区块链从业者无限的遐想。但是,如果你认为公开透明能解决一切问题,就未免太过天真。

“游戏开发者实际上是可能留有后门的,”锦宏告诉31QU,“但是这样,会被人验证开源代码的哈希值,专业人士是有可能发现这种‘猫腻’的,所以开发者一般不会这么做。”

既然项目方一般不会“卷包会”,他们有其他方法血洗投人的口袋吗?

“这类资金盘的项目方可以通过发空气币,卖给投资者。像1CO一样,项目方得到现金,投资者得到的是一串虚拟数字。”锦宏向31QU透露了这类项目新的“割韭菜”模式。






正如锦宏所言,一款基于EOS开发的博彩类Dapp MyEosVegas,所采用的的投注方式就是“玩家使用EOS代币与项目方发行的代币MEV替换”,然后再进行博彩。

除了在智能合约中“埋雷”,发行代币“血洗”玩家,开发者其实还有个“杀手锏式”的方法,让你的钱乖乖进入他的口袋,那就是开发“庞氏骗局”智能合约。

常见的是一种“庞氏骗局合约”,该合约是这样设定的:如果你向某合约投资一笔以太坊,它就会以高回报率回赠你更多的以太币,高回报的背后是从后续投资者那里源源不断地吸取资金以反馈给前面的投资者(本文开头详细介绍的333ETH就是属于这类游戏)。

那么开发者是如何通过这种合约“赚钱”呢?

我们来介绍一个典型的庞氏合约ETHX。该合约可以看成虚拟币交易所,但是交易所里只有交易ETH和ETHX (ERC20 Token),每次交易,都有5%的token分配给整个平台的已有的token持有者,因此token持有者在持币期间,将会直接赚取新购买者和旧抛售者的手续费。





庞氏骗局智能合约ETHX( 0x1c98eea5fe5e15d77feeabc0dfcfad32314fd481)的部分代码


但是,眼睛不要只盯着5%利润。这个合约实际上存在严重的“溢出漏洞”问题,该漏洞允许攻击者使用两个已知账户,对合约进行反复攻击,最终凭空制造出大量的代币。攻击者再用这些代币与ETH进行交换,投资者的资金被反复“蹂躏”。

看了这么多“坑”,还敢将自己的真金白银投入这些区块链博彩游戏吗?


-----------------------


在这样一个缺乏监管,不确定性极高的市场上,风险无处不在。

当你觉得这类博彩类游戏公平透明、回报率高时,说不定开发者已经在智能合约中埋下了“隐形地雷”。当你觉得自己即将美梦成真,实现梦寐以求的“财富自由”的美梦时,说不定游戏背后的“黑手”已经准备对你的财富下手。

“把他们当做纯粹的游戏,别去赌,说不定还能发现一丁点乐趣。”作为博彩类游戏一线开发者,锦宏给出了这样的意见。

截止发文,333ETH这款游戏已经被DappRadar从搜索列表剔除,但是官网依然可以打开,31QU特别对此做出风险提示。


作者:零界 查看全部
333eth.jpg

赌,是人类天性。

据不完全统计,2016年全球博彩业总交易额为4500亿美金,2017年则达到了惊人的5000亿美金。在世界杯推动下,2018年博彩行业营收可能会更高。

这种天性,也蔓延到新生的区块链领域。Fomo3D、Dice2win、333ETH等,博彩类Dapp成为目前各个惨淡公链中为数不多的亮点。

参与者往往以为,区块链上的博彩公开透明,去中心化,没有庄家操控,让游戏更加安全有秩序。

然而事实真的如此吗?看似透明公正背后还深藏哪些陷阱?博彩类Dapp给区块链带来的虚幻繁荣还能存在多久?


1 火爆的区块链“博彩”


“目前来看,区块链第一应用就是赌博,其他应用,暂时目测还火不起来。”

锦宏是区块链Dapp资深开发者,他一边演示最近开发的博彩游戏的Demo,一边向31QU介绍着目前区块链应用方面的现状。

打开区块链Dapp活跃度检测排行榜,高居榜首的往往是博彩类区块链应用。这验证了锦宏的说法 。

bc1.jpg

EOS公链Dapp用户活跃前十的应用(红色部分代表博彩类游戏)


以最新数据为例,以太坊公链上最活跃的应用是333ETH这款游戏,目前日活跃人数为3000左右,占以太坊应用活跃榜前十用户总数的25%,游戏资金池沉淀将近4680个以太坊,价值650万人民币。

bc2.png

333ETH资金池沉淀4680个以太坊


据以往数据显示,333ETH日玩家人数从个位数增长到3000,只用1个月左右时间。要知道,基于比特股的全球第一大去中心化交易所,经过4年发展,日交易人数也不过2000左右。

333ETH如此快速的发展速度,究竟有什么吸引力?这就需要对该游戏的奖励模式加以说明。

bc3.png

蓝线代表333ETH用户增加情况


进入该游戏官网,31QU发现,这款游戏最大特点是:投资日收益率为3.33%。按照复利计算,这款游戏月收益可达267%。这就意味着,月初你投入10个以太坊,月底就会变成26.7个。

参与游戏的方式更是“方便快捷”,投资者只需要将以太坊转入游戏给出的地址,就可以持续不断地获得游戏分配的收益。

333ETH只不过是众多这类游戏中的一个。

“这类游戏开发起来很简单,基本上就是开发投注功能,外加智能合约就可以了”,锦宏在介绍这类游戏的过程中,指着Mac屏幕上的333ETH说道,“智能合约都是标准的,再稍加开发,就能适配这类游戏。”

较低的开发门槛,人们较高的博彩热情,直接导致这类博彩游戏快速发展。

据最新数据统计,以太坊前二十热门应用中,与333ETH相类似的博彩类游戏就多达8个,沉淀以太坊数量多达17900个,价值2500万人民币。虽然这些资金数量相对于整个币圈来说不算多,但是这8个游戏的日活跃参与人数,达到6000左右。而目前全球知名头部交易所,日活跃人数也不过这个数字。

EOS公链上也能找到相似情况。EOS公链活跃度前十的Dapp中,一半是博彩类区块链应用,目前活跃用户7000左右。

“火爆,并不代表安全,尤其是智能合约的安全性更是需要‘打问号’”,对这类游戏有过系统性研究的锦宏,提出了自己对智能合约安全性方面的质疑。


2 “难以避免”的智能合约漏洞


“智能合约是这类博彩游戏的灵魂,任何漏洞都有可能让资金池中的资金被席卷一空。”谈到智能合约漏洞的危害,锦宏这样说道。

但是这类博彩类游戏的智能合约,偏偏存在“不少”问题。

“智能合约中存在庞式骗局和支付实施问题,这个项目可能会出错。”9月16日,著名的Dapp排行网站 StateOfTheDApps 就对333ETF贴上了庞氏骗局的标签,同时还对智能合约安全性做出提醒。庞氏骗局就意味着,这是一款后来者接盘的资金盘类游戏,当后入资金不足以支付之前投资者的收益时,将会面临崩盘威胁。

而 StateOfTheDApps 所提到的“智能合约”安全性问题,可能是更为严重的问题。

“Fomo3D 第一轮大奖实际上就是有人向以太坊发起大量攻击交易,导致以太坊阻塞时间长达2分钟,最终赢所有奖励。”谈到Fomo3D智能合约被利用的过程,锦宏这样说道,“攻击者其实是利用了游戏合约自动判断游戏进行状态,通过发送高额手续费的交易,让正常投注的玩家无法交易,最终自己赢得大奖。”

bc4.jpg

Fomo3D第三轮游戏,目前资金池沉淀了16个以太坊


苍蝇不叮无缝的蛋。

Fomo3D的漏洞实际上是这类游戏自带漏洞所导致。会不会存在其它类型的攻击呢?

“当然存在,对于目前这类博彩类游戏的智能合约,‘随机数’选择十分重要。”锦宏在分析智能合约被攻破的方式时,向31QU强调了随机数的重要性。

在进行游戏结果判定时,需要判定到底谁赢得比赛。随机数的作用就是“裁判”,判定大奖到底归谁。比如,用1和0代表结果,用随机数算出来比赛结果是1还是0,如果他们各有50%的出现概率,就代表比赛参与者各有50%的可能性赢得比赛。

随机数参考的因素非常多,由于智能合约本身是自动执行的,它需要参考的随机数,对公信力要求特别高。

“但是,前博彩类游戏智能合约所参考的随机数比较局限,例如随机数可能是某个哈希值运算最后一位数,这是可能被猜出来,暂时无法实现真正的随机。”锦宏告诉31QU。

因此,博彩类游戏的智能合约,并没有想象的那么安全。

以太坊诞生以来,由于智能合约便捷的发币功能,让整个行业看到了区块链应用前景,Dapp开发也如火如荼进行着。但是随之而来的安全问题,也让整个行业面临巨大的损失。

2017年11月份,由于以太坊合约漏洞,导致以太坊钱包Parity中价值1.6亿美元的以太坊被冻结。而智能合约漏洞导致的安全事件并不只一件。今年4月份,由于合约“溢出漏洞”,导致SMT代币价格大跌。同样的原因,导致BEC代币价格几乎归零。

bc5.png

目前BEC代币价格,从最高点跌去95%


在区块链技术还不成熟的今天,智能合约自身漏洞给资金安全带来了巨大威胁。如果无脑参与这类游戏,最终很有可能会面临资金归零的结局。

任何一款应用必定是玩家与运营者双方共同参与的。而这类游戏的运营者也能通过各种不为人知的手段,从这类游戏中获取惊人利润。


3 开发者的“后门”


技术上的公开透明,给了区块链从业者无限的遐想。但是,如果你认为公开透明能解决一切问题,就未免太过天真。

“游戏开发者实际上是可能留有后门的,”锦宏告诉31QU,“但是这样,会被人验证开源代码的哈希值,专业人士是有可能发现这种‘猫腻’的,所以开发者一般不会这么做。”

既然项目方一般不会“卷包会”,他们有其他方法血洗投人的口袋吗?

“这类资金盘的项目方可以通过发空气币,卖给投资者。像1CO一样,项目方得到现金,投资者得到的是一串虚拟数字。”锦宏向31QU透露了这类项目新的“割韭菜”模式。

bc6.jpg


正如锦宏所言,一款基于EOS开发的博彩类Dapp MyEosVegas,所采用的的投注方式就是“玩家使用EOS代币与项目方发行的代币MEV替换”,然后再进行博彩。

除了在智能合约中“埋雷”,发行代币“血洗”玩家,开发者其实还有个“杀手锏式”的方法,让你的钱乖乖进入他的口袋,那就是开发“庞氏骗局”智能合约。

常见的是一种“庞氏骗局合约”,该合约是这样设定的:如果你向某合约投资一笔以太坊,它就会以高回报率回赠你更多的以太币,高回报的背后是从后续投资者那里源源不断地吸取资金以反馈给前面的投资者(本文开头详细介绍的333ETH就是属于这类游戏)。

那么开发者是如何通过这种合约“赚钱”呢?

我们来介绍一个典型的庞氏合约ETHX。该合约可以看成虚拟币交易所,但是交易所里只有交易ETH和ETHX (ERC20 Token),每次交易,都有5%的token分配给整个平台的已有的token持有者,因此token持有者在持币期间,将会直接赚取新购买者和旧抛售者的手续费。

bc7.png

庞氏骗局智能合约ETHX( 0x1c98eea5fe5e15d77feeabc0dfcfad32314fd481)的部分代码


但是,眼睛不要只盯着5%利润。这个合约实际上存在严重的“溢出漏洞”问题,该漏洞允许攻击者使用两个已知账户,对合约进行反复攻击,最终凭空制造出大量的代币。攻击者再用这些代币与ETH进行交换,投资者的资金被反复“蹂躏”。

看了这么多“坑”,还敢将自己的真金白银投入这些区块链博彩游戏吗?


-----------------------


在这样一个缺乏监管,不确定性极高的市场上,风险无处不在。

当你觉得这类博彩类游戏公平透明、回报率高时,说不定开发者已经在智能合约中埋下了“隐形地雷”。当你觉得自己即将美梦成真,实现梦寐以求的“财富自由”的美梦时,说不定游戏背后的“黑手”已经准备对你的财富下手。

“把他们当做纯粹的游戏,别去赌,说不定还能发现一丁点乐趣。”作为博彩类游戏一线开发者,锦宏给出了这样的意见。

截止发文,333ETH这款游戏已经被DappRadar从搜索列表剔除,但是官网依然可以打开,31QU特别对此做出风险提示。


作者:零界

你的CryptoKitties怎么样了?为什么DApp都没有你想的那么完美

planet 发表了文章 • 2018-10-11 19:13 • 来自相关话题

当以太坊的新用户跑来问为什么要用DAPP,而不是传统的网络服务时,我们总会说“去中心,去中心,因为去中心啊。”集中式网络服务受到相关部门监管,DAPP就更为便捷。集中式网络可能在一夕之间丢失所有数据,但是DAPP可以和以太坊一样长寿。默认情况下,集中式服务是受限的,而DAPP可以自己发币,并在交易所公开交易。

但人们不会告诉你,DAPP比以太坊的痛点更多,且更容易受到攻击。并且,仅仅靠在分布式区块链上运行,并不能使DAPP免受其发布者决策的影响。

随着近期CryptoKitty的火爆,很多人没理解清楚DAPP是什么就参与进来。在此,我将以CryptoKitty为例,谈谈隐藏在DAPP背后的隐患。


一人一指令,引来这款游戏的冰河世纪


小猫的所有权存储在一个单独的合约里 – KittyOwnership – 再上传至以太坊主链。谢天谢地,这个合约没有自毁功能,所以所有者不能自行杀掉小猫。但是,只要他想,他也可以做出同样具有破坏性的事。

function pause()external onlyCLevel whenNotPaused {
暂停=真;
}



合约所有者可以暂停该合同(不需要任何节点同意)。如果其他节点也使用“合约升级”(upgradeContract)功能,则当前的合同暂停,永远不能被解冻。这也意味着小猫将永远沉睡。

DAPP不是区块链 – 在区块链里,你的一个指令不足以对以太坊网络构成任何威胁,就算单个节点做出自杀性的毁灭行为,整个网络仍然可以完整运行但是,以太坊有这些功能,并不能代表基于以太坊的CryptoKitties也具备这个功能。就以太坊而言,只有一个版本的KittyOwnership合约,而这合约由单个的钱包所有。这是非常中心化的表现了。


数字猫可能没那么稀有


CryptoKitty的核心概念之一是,你有机会培育出一只稀有且市价很好的猫。比如,一个人花了246以太(按当时价算11.5万美元)买了一只Geno猫 – 创世猫。他可能觉得这种猫很独特,他对猫的所有权将记录在链,并将永久保存。现实也确实如此。

但是,控制数字猫性行为的基因科学合约不仅来源不明(以太坊上未核实),而且也可以被CEO取代。

function setGeneScienceAddress(address _address)external onlyCEO {
GeneScienceInterface candidateContract =
GeneScienceInterface(_address);



这意味着,CryptoKitties的CEO随时可以通过改变繁育算法,来创造更多创世型猫,或者采取其他方式来影响数字猫的稀有性。一个人的猫本来是独一无二,可能转眼间就出现许许多多同款。

虽然CryptoKitty合约所有者不太可能这样做,但将来总有人这样做。真正独特的东西和社会协议所特有的东西,在价值上是有区别的。







数字猫可能长出另一条尾巴 – 分叉


以太坊运行和存储的成本很高,所以DApp存储的逻辑和数据会尽可能简洁。数字猫的唯一性体现在它的无符号整数(无符号整数):uint256基因

读取这些毫无意义的整数,并将其转换为数字猫。这些数字猫的外观,颜色,描述等的代码,都被存储在集中式服务器,封闭源代码中。

区块链中,软件由每个节点运行,每次升级都会出现硬/软分叉但与区块链不同,CryptoKitties分叉,可以在任何时候,单边地改变基因序列的解释方式。 – 可以给小猫增加一个尾巴,改变它的颜色,调整它的描述,甚至,把这只小猫变成一只汪星人。

如果个人拥有一只猫及其基因的ERC 721令牌,但他依然没有生成猫的全部数据。这样,你的猫就不会因为一个人的决策而发生改变。

但不必如此…我必须明确指出,CryptoKitties的制造者这么做并不是出于恶意或恶意。他们利用当时可用的非常有限的基础设施,已经尽可能使DAPP完美,并且成功吸引到许多新用户。

但人们真正需要的是一种运行成熟的应用程序,整个代码都在节点中运行。它的数据不仅是分布式的,也是可以拥有的。那些愿意自己运行节点的人都可以拥有这些数据。只有实现这些的时候,我们才真正拥有了完全意义上的DAPP。


原文作者Luke Zhang,来源于medium.com,由卓张凤/李丽诗翻译 查看全部
c01.jpg

当以太坊的新用户跑来问为什么要用DAPP,而不是传统的网络服务时,我们总会说“去中心,去中心,因为去中心啊。”集中式网络服务受到相关部门监管,DAPP就更为便捷。集中式网络可能在一夕之间丢失所有数据,但是DAPP可以和以太坊一样长寿。默认情况下,集中式服务是受限的,而DAPP可以自己发币,并在交易所公开交易。

但人们不会告诉你,DAPP比以太坊的痛点更多,且更容易受到攻击。并且,仅仅靠在分布式区块链上运行,并不能使DAPP免受其发布者决策的影响。

随着近期CryptoKitty的火爆,很多人没理解清楚DAPP是什么就参与进来。在此,我将以CryptoKitty为例,谈谈隐藏在DAPP背后的隐患。


一人一指令,引来这款游戏的冰河世纪


小猫的所有权存储在一个单独的合约里 – KittyOwnership – 再上传至以太坊主链。谢天谢地,这个合约没有自毁功能,所以所有者不能自行杀掉小猫。但是,只要他想,他也可以做出同样具有破坏性的事。


function pause()external onlyCLevel whenNotPaused {
暂停=真;
}




合约所有者可以暂停该合同(不需要任何节点同意)。如果其他节点也使用“合约升级”(upgradeContract)功能,则当前的合同暂停,永远不能被解冻。这也意味着小猫将永远沉睡。

DAPP不是区块链 – 在区块链里,你的一个指令不足以对以太坊网络构成任何威胁,就算单个节点做出自杀性的毁灭行为,整个网络仍然可以完整运行但是,以太坊有这些功能,并不能代表基于以太坊的CryptoKitties也具备这个功能。就以太坊而言,只有一个版本的KittyOwnership合约,而这合约由单个的钱包所有。这是非常中心化的表现了。


数字猫可能没那么稀有


CryptoKitty的核心概念之一是,你有机会培育出一只稀有且市价很好的猫。比如,一个人花了246以太(按当时价算11.5万美元)买了一只Geno猫 – 创世猫。他可能觉得这种猫很独特,他对猫的所有权将记录在链,并将永久保存。现实也确实如此。

但是,控制数字猫性行为的基因科学合约不仅来源不明(以太坊上未核实),而且也可以被CEO取代。


function setGeneScienceAddress(address _address)external onlyCEO {
GeneScienceInterface candidateContract =
GeneScienceInterface(_address);




这意味着,CryptoKitties的CEO随时可以通过改变繁育算法,来创造更多创世型猫,或者采取其他方式来影响数字猫的稀有性。一个人的猫本来是独一无二,可能转眼间就出现许许多多同款。

虽然CryptoKitty合约所有者不太可能这样做,但将来总有人这样做。真正独特的东西和社会协议所特有的东西,在价值上是有区别的。

c02.jpg



数字猫可能长出另一条尾巴 – 分叉


以太坊运行和存储的成本很高,所以DApp存储的逻辑和数据会尽可能简洁。数字猫的唯一性体现在它的无符号整数(无符号整数):uint256基因

读取这些毫无意义的整数,并将其转换为数字猫。这些数字猫的外观,颜色,描述等的代码,都被存储在集中式服务器,封闭源代码中。

区块链中,软件由每个节点运行,每次升级都会出现硬/软分叉但与区块链不同,CryptoKitties分叉,可以在任何时候,单边地改变基因序列的解释方式。 – 可以给小猫增加一个尾巴,改变它的颜色,调整它的描述,甚至,把这只小猫变成一只汪星人。

如果个人拥有一只猫及其基因的ERC 721令牌,但他依然没有生成猫的全部数据。这样,你的猫就不会因为一个人的决策而发生改变。

但不必如此…我必须明确指出,CryptoKitties的制造者这么做并不是出于恶意或恶意。他们利用当时可用的非常有限的基础设施,已经尽可能使DAPP完美,并且成功吸引到许多新用户。

但人们真正需要的是一种运行成熟的应用程序,整个代码都在节点中运行。它的数据不仅是分布式的,也是可以拥有的。那些愿意自己运行节点的人都可以拥有这些数据。只有实现这些的时候,我们才真正拥有了完全意义上的DAPP。


原文作者Luke Zhang,来源于medium.com,由卓张凤/李丽诗翻译

我们真的需要这么多高性能公链吗?

blockbeats 发表了文章 • 2018-10-08 22:36 • 来自相关话题

区块链世界是否已经出现产能过剩?随随便便一个新项目就号称可以吊打旧项目,事实真的如此吗?

常常能见到打着「超越以太坊」、「超越 EOS」、「商用级公链」「世界级交易速度」等旗号的公链项目推出,他们声称解决了困扰以太坊网络的拓展性不足的问题,声称可以达到每秒上千次甚至是百万次交易,交易手续费更低甚至是 0 手续费。

项目团队不断地在技术上实现突破,还有团队将技术指标与传统的 VISA 信用卡和 PayPal 线上支付的处理性能进行对比,让不少人觉得区块链可以解决现实世界中的大量问题,数字加密货币「超越 VISA」「吊打 PayPal」指日可待。

可是,事实又如何呢?这些公链的性能真的如所宣称的那样优秀吗?如果这是事实的话,为什么看似处理速度极慢的以太坊转账交易第一的地位仍然如此稳固呢?我们真的需要这么多高性能的公链吗?

*注意:本文坚持的观点为区块链必须实现真正的去中心化,欢迎留言讨论与之相关的观点。


首先让我们来看一下这些主流公链的性能参数对比,其中 NEO、EOS 和波场的节点结构不同,以太坊也有完整节点和普通节点之分。当前 TPS(Transaction Per Second)按照 10 月 3 日当天交易量量进行计算,不过小蚁 NEO 区块链浏览器最近仅可查询到 8 月 14 日的数据。





数据参考:(项目官网和浏览器,dappradar, Ethernodes, stateofthedapps, NEO DApps, CoinGecko: 360 Degree Overview of Cryptocurrencies Chart, trondapp.org)

从上表中,我们有两个发现:

1. NEO、EOS、QTUM、TRON 目前在拓展性上确实优于 ETH,但是他们去中心化的程度远远不如 ETH。

2. 目前绝大多数的 DApp 都是在以太坊上开发的,其他的几条公链相比之下项目太少,巨大的吞吐量并没有发挥太大的作用。



去中心化和效率,只能选其一?


去中心化是区块链的本质,牺牲去中心化而获得的拓展性违背区块链本意。根据安全性、拓展性、去中心化的不可能三角理论,如果保持安全性不变,要提高拓展性,就必然要提高中心化的程度。

以 NEO 为例,NEO 采用的是 DBFT 共识机制。在这个机制中,有两种参与者,一种是专门用来记账的记账节点,一种是参与这个网络的普通用户。普通用户根据持有权益的比例来选出记账节点。当需要达成一个共识时,就从这些记账节点中随机选出一个节点提出方案,其他记账节点投票表决。

如果有 66% 以上的节点赞同此方案,则公式达成,反之则重新选出一个节点再次投票。NEO 在网络较好的情况下目前可以处理每秒千笔交易,处理速度和吞吐量与 ETH 相比有较为明显的优势。然而,在去中心化和安全性方面,NEO 不得不作出较大牺牲以维持这样的高性能:如果超过三分之一的记账节点停止工作,系统就无法提供正常服务;如果存在三分之一的恶意节点,系统就可能发生分叉。

对于公链来说,维护区块链的去中心化比实现高 TPS 更重要,开发者也更愿意在一个去中心化的公链上开发应用。只有在去中心化的公链上开发者才能自由地、无需任何人审查地进行开发,不用担心代码执行被干预、应用被移除、用户被屏蔽等风险。只有在真正去中心化的区块链上,数字财产的所有权才能得到真正的保障。

去中心化是区块链的本质。就像比特币被设计出来不是为了高效,而是为了去中心化;以太坊的设计理念也是建立在不能牺牲去中心化的基础上的。去中心化是区块链价值体现最根本的前和唯一的道路,为了它,我们愿意忍受一定的和暂时的低效。

根据 Ethernodes 和 Bitnodes 的数据,截至 9 月 24 日,以太坊在六个大洲拥有 13543 个节点,Consensys 的报告也称以太坊为目前最去中心化的区块链平台,相比之下比特币的节点数量为 9930 个。






而其他的这些公链与以太坊相比,验证交易的节点数量极少。以 EOS 为例,它仅有 21 个主要节点,但是可以实现极快的交易确认速度,0.5 秒的出块速度也让用户几乎察觉不到转账确认的时间延迟。

但是牺牲了去中心化换来的效率,需要开发者更加信任区块链的安全性和可靠性。在 EOS 上开发和使用应用,需要开发者相信这 21 个公开节点里至少 15 个节点不会被攻击、不会更改协议、不会限制使用、不会受到政府或是企业的压力去审查交易。而以太坊正在引入 99% 容错机制,如果要在以太坊上影响这一万多个匿名节点,可能性显然是极低的。

那些打着超越以太坊旗号的项目选择了更高的速度和更低的费用,同时也就放弃了很大程度上的去中心化以及安全性,这是违背区块链去中心化本质精神的。在这种平台上开发出来的所谓的 DApp,可能就只是 App 而已了。

然而遗憾的是,目前的用户很容易被高拓展性带来的优越性能所吸引,往往忽略了去中心化的意义。比如账户丢失或者被盗后可以通过委员会申请仲裁,人治在某些方面比算力统治更有优势。

这种忽视带来的风险会不断累积,而人们往往在风险爆发带来灾难性后果的时候,比如资产受损时,才会认识到它的重要性。7 月份,EOS FOMO 狼人游戏被黑客攻击,不少用户资产受损。9 月,EOS 链上的博彩平台 DEOSGames 就遭到黑客攻击,被盗走超过两万六千美元。

就目前的数据来看,开发者选择了使用以太坊作为 DAPP 的开发和运行场地,表中四个高 TPS 项目上 DAPP 数量不及以太坊的零头。


公链的实用价值并未体现出来


一条公链,像以太坊这样的公链,除了可以用来发币之外,还应当有大量 DAPP 和智能合约存在。但目前这些公链上存在的问题不仅是上表体现出来的链上 DAPP 项目绝对数量小,而且项目种类也相当畸形,更重要的是用户数量远不及预期。

首先,没有开发者,公链再高的吞吐量也没有意义。从上面的表格中,我们发现,目前在以太坊平台上有将近两千个 DApp,而其他的几条公链 DApp 数目都仅仅是两位数。同时以太坊的开发者社区也是世界上最大的,拥有 25 万开发者。公链需要有开发者的参与,有开发者参与才会有应用的落地,才能有使用者的认可,才会有人去使用,这条公链的存在才是有意义的。即使处理速度再快,如果没有交易需要处理,再高的 TPS 也不过只能使这条公链成为一座鬼城。

为了解决这个问题,多个公链采取的方法都是在自己代码编译器中加入对以太坊智能合约的支持,或者是对以太坊 solidity 代码的升级优化,让开发者可以将以太坊上的智能合约或者 DAPP 直接搬运到新的公链上运行。比如波场的 TVM 就兼容以太坊的 EVM,量子链也兼容 EVM,EOS 也兼容 EVM。但是为什么这些运行在以太坊的项目,没有搬到这些公链上呢,原因很简单:搬过来又没人用,那何苦去搬呢?

其次,目前这些公链上的项目种类也相当贫瘠。下图是 DappRadar 上根据项目种类对用户数进行的统计,观察可以发现,绝大多数的用户都集中在交易所、博彩、游戏这三种项目上,其他类型的项目可以说是忽略不计。






以区块链游戏为例,自从迷恋猫 Cryptokitties 火了之后,就涌现了大量类似的项目,当 FOMO3D 火了之后,又有一批新的仿制项目出现。这个行业存在创新,但是创新容易被滥用,也导致区块链的应用场景变得狭隘。

此外,DApp 的使用者数量极少,项目的市值相对于用户数量来说是存在着极大的泡沫的。






任何一个爆火的区块链游戏,看似有很多人玩,实际上可能就那么几百个人参与。例如最近火的 EOS Pixel 游戏,前 5 天的用户数量只有千人;上个月很火的 FIBOS 兑换,参与者也只有千人左右。他们的传播圈子并不大。

根据 Dappradar 的数据,目前所有的 DApp 的日均活跃用户数大多数时间是在一万上下波动。而传统的应用,如单单一个 Facebook 日均活跃用户就有约 14 亿。二者完全无法相比。目前以太坊和 EOS 上日均活跃用户在 300 人以上的 DApp 一共仅 13 个,其中以太坊 6 个,EOS 七个。





以太坊上日均活跃用户数前十的项目





EOS 上日均活跃用户数前十的项目


看起来游戏交易数据不错,但是却掺杂着水分。如 EOS 上日均交易量最大的项目 EOSBet,一个博彩平台,24 内交易数量达到 37 万笔,然而用户数只有约 600 人,相当于平均每名用户在一天之内交易六百笔以上,这里大概率是存在着大量的机器人交易。9 月 11 日到 13 日期间 EOSBet 平台甚至在 36 小时内向一名用户支付了 6 万美元,他在连续多个回合中成为唯一的赢家。


我们不缺少高性能的公链,我们缺少的是使用公链的人


从上面的分析可以看出,目前区块链大规模应用的阻碍不在于拓展性,不在于缺少高性能的公链。问题在于,没有真正想去使用区块链的人。

区块链是一个大型协作系统,目前公链最需要的是建立生态,吸引项目上链,吸引用户使用链上的 DApp。

从开发者方面来讲,吸引项目上链重要的不仅是高吞吐量和低手续费,最基本的是开发工具和基础设施。即使前文的那些公链宣称超过以太坊 100 倍的吞吐量和 0 手续费,为什么 94% 的项目都还是选择在以太坊上开发?因为以太坊上有远远超过其他公链的优秀开发工具和基础设施。如果公链连最基本的基础设施都建设不好,而且系统内部漏洞诸多,一味去追求高性能又能吸引到谁呢?

以太坊上的开发者可以免费使用 Truffle、Infura、Web3.js 等等这些优秀的开发工具,同时他们自身也在完善着以太坊的基础设施,由此形成一个正向循环。越来越多的开发者被吸引到以太坊网络中,以太坊的设施又被他们不断优化。只不过因为去中心化的缘故,这个优化和更新的速度很慢,远不及中心化的区块链。

从使用者方面来讲,目前的区块链和区块链产品的学习成本太高。中心化的应用往往都对如何打造用户友好的界面做了足够多的调研,而这正是 DApp 所需要借鉴的。区块链技术需要在无形中进入人们的生活,「太上,不知有之。」而不是让潜在用户感到自己的无知,感到畏惧,对新技术感到抗拒。

以 Fomo3D 为例,这个游戏在 7 月底火爆了区块链世界,7 月 21 日当天活跃用户突破一万名。可是,要参加这个游戏,对于普通人来说还是太难了。普通用户,即便按照网上的教程,按照一二三四的顺序来安装使用,基本上会被卡住。

对于一个从来没有接触过区块链的人,这样的教程一定会令他敬而远之,整个过程中出现了大量的问号:

Metamask 是什么?

ETH 是什么?

在哪里购买?

怎么充值?

key 是做什么用的?

游戏里各种分红机制的区别是什么?

智能合约是什么?


这么麻烦的话,用户会更愿意去玩一个用支付宝或者微信输入个密码就可以参与的游戏吧。一天一万名用户的数字放在 DApp 的世界里,目前可以说是区块链世界的一个巅峰了,然而和普通中心化的 App 用户数相比,实在是九牛一毛。

因为使用 DApp 的门槛限制了普通人的参与,即使 DApp 再有趣,也只能从现有的极小的用户基数里吸引玩家。目前区块链的大规模普及如果想要吸引使用者,开发者要做的就是让应用对普通用户来说更友好,缩小甚至隐形区块链、智能合约的概念,让用户使用 DApp 就像使用习以为常的 App 一样容易操作,以免潜在用户产生畏惧甚至抗拒心理。

区块链不仅仅是一项技术,更是一个生态系统。吸引开发者带来更多的项目上链、吸引用户使用 DApp、建立生态才是当务之急,一味在吞吐量上争高低、鼓吹超强的性能是看不到前途的。如果现阶段公链不能做到吸引项目上链、吸引新用户的话,或许区块链行业的聚光灯就不得不让给联盟链,由联盟链来实现区块链技术的大规模商用落地了。

简单来讲:让区块链真正用起来,而不是堆技术指标去唬人。


作者:区块律动BlockBeats 0x22 查看全部
shanghai_blockchain_buildings.width-800_.jpg

区块链世界是否已经出现产能过剩?随随便便一个新项目就号称可以吊打旧项目,事实真的如此吗?

常常能见到打着「超越以太坊」、「超越 EOS」、「商用级公链」「世界级交易速度」等旗号的公链项目推出,他们声称解决了困扰以太坊网络的拓展性不足的问题,声称可以达到每秒上千次甚至是百万次交易,交易手续费更低甚至是 0 手续费。

项目团队不断地在技术上实现突破,还有团队将技术指标与传统的 VISA 信用卡和 PayPal 线上支付的处理性能进行对比,让不少人觉得区块链可以解决现实世界中的大量问题,数字加密货币「超越 VISA」「吊打 PayPal」指日可待。

可是,事实又如何呢?这些公链的性能真的如所宣称的那样优秀吗?如果这是事实的话,为什么看似处理速度极慢的以太坊转账交易第一的地位仍然如此稳固呢?我们真的需要这么多高性能的公链吗?

*注意:本文坚持的观点为区块链必须实现真正的去中心化,欢迎留言讨论与之相关的观点。


首先让我们来看一下这些主流公链的性能参数对比,其中 NEO、EOS 和波场的节点结构不同,以太坊也有完整节点和普通节点之分。当前 TPS(Transaction Per Second)按照 10 月 3 日当天交易量量进行计算,不过小蚁 NEO 区块链浏览器最近仅可查询到 8 月 14 日的数据。

002.jpg

数据参考:(项目官网和浏览器,dappradar, Ethernodes, stateofthedapps, NEO DApps, CoinGecko: 360 Degree Overview of Cryptocurrencies Chart, trondapp.org)

从上表中,我们有两个发现:


1. NEO、EOS、QTUM、TRON 目前在拓展性上确实优于 ETH,但是他们去中心化的程度远远不如 ETH。

2. 目前绝大多数的 DApp 都是在以太坊上开发的,其他的几条公链相比之下项目太少,巨大的吞吐量并没有发挥太大的作用。




去中心化和效率,只能选其一?


去中心化是区块链的本质,牺牲去中心化而获得的拓展性违背区块链本意。根据安全性、拓展性、去中心化的不可能三角理论,如果保持安全性不变,要提高拓展性,就必然要提高中心化的程度。

以 NEO 为例,NEO 采用的是 DBFT 共识机制。在这个机制中,有两种参与者,一种是专门用来记账的记账节点,一种是参与这个网络的普通用户。普通用户根据持有权益的比例来选出记账节点。当需要达成一个共识时,就从这些记账节点中随机选出一个节点提出方案,其他记账节点投票表决。

如果有 66% 以上的节点赞同此方案,则公式达成,反之则重新选出一个节点再次投票。NEO 在网络较好的情况下目前可以处理每秒千笔交易,处理速度和吞吐量与 ETH 相比有较为明显的优势。然而,在去中心化和安全性方面,NEO 不得不作出较大牺牲以维持这样的高性能:如果超过三分之一的记账节点停止工作,系统就无法提供正常服务;如果存在三分之一的恶意节点,系统就可能发生分叉。

对于公链来说,维护区块链的去中心化比实现高 TPS 更重要,开发者也更愿意在一个去中心化的公链上开发应用。只有在去中心化的公链上开发者才能自由地、无需任何人审查地进行开发,不用担心代码执行被干预、应用被移除、用户被屏蔽等风险。只有在真正去中心化的区块链上,数字财产的所有权才能得到真正的保障。

去中心化是区块链的本质。就像比特币被设计出来不是为了高效,而是为了去中心化;以太坊的设计理念也是建立在不能牺牲去中心化的基础上的。去中心化是区块链价值体现最根本的前和唯一的道路,为了它,我们愿意忍受一定的和暂时的低效。

根据 Ethernodes 和 Bitnodes 的数据,截至 9 月 24 日,以太坊在六个大洲拥有 13543 个节点,Consensys 的报告也称以太坊为目前最去中心化的区块链平台,相比之下比特币的节点数量为 9930 个。

004.jpg


而其他的这些公链与以太坊相比,验证交易的节点数量极少。以 EOS 为例,它仅有 21 个主要节点,但是可以实现极快的交易确认速度,0.5 秒的出块速度也让用户几乎察觉不到转账确认的时间延迟。

但是牺牲了去中心化换来的效率,需要开发者更加信任区块链的安全性和可靠性。在 EOS 上开发和使用应用,需要开发者相信这 21 个公开节点里至少 15 个节点不会被攻击、不会更改协议、不会限制使用、不会受到政府或是企业的压力去审查交易。而以太坊正在引入 99% 容错机制,如果要在以太坊上影响这一万多个匿名节点,可能性显然是极低的。

那些打着超越以太坊旗号的项目选择了更高的速度和更低的费用,同时也就放弃了很大程度上的去中心化以及安全性,这是违背区块链去中心化本质精神的。在这种平台上开发出来的所谓的 DApp,可能就只是 App 而已了。

然而遗憾的是,目前的用户很容易被高拓展性带来的优越性能所吸引,往往忽略了去中心化的意义。比如账户丢失或者被盗后可以通过委员会申请仲裁,人治在某些方面比算力统治更有优势。

这种忽视带来的风险会不断累积,而人们往往在风险爆发带来灾难性后果的时候,比如资产受损时,才会认识到它的重要性。7 月份,EOS FOMO 狼人游戏被黑客攻击,不少用户资产受损。9 月,EOS 链上的博彩平台 DEOSGames 就遭到黑客攻击,被盗走超过两万六千美元。

就目前的数据来看,开发者选择了使用以太坊作为 DAPP 的开发和运行场地,表中四个高 TPS 项目上 DAPP 数量不及以太坊的零头。


公链的实用价值并未体现出来


一条公链,像以太坊这样的公链,除了可以用来发币之外,还应当有大量 DAPP 和智能合约存在。但目前这些公链上存在的问题不仅是上表体现出来的链上 DAPP 项目绝对数量小,而且项目种类也相当畸形,更重要的是用户数量远不及预期。

首先,没有开发者,公链再高的吞吐量也没有意义。从上面的表格中,我们发现,目前在以太坊平台上有将近两千个 DApp,而其他的几条公链 DApp 数目都仅仅是两位数。同时以太坊的开发者社区也是世界上最大的,拥有 25 万开发者。公链需要有开发者的参与,有开发者参与才会有应用的落地,才能有使用者的认可,才会有人去使用,这条公链的存在才是有意义的。即使处理速度再快,如果没有交易需要处理,再高的 TPS 也不过只能使这条公链成为一座鬼城。

为了解决这个问题,多个公链采取的方法都是在自己代码编译器中加入对以太坊智能合约的支持,或者是对以太坊 solidity 代码的升级优化,让开发者可以将以太坊上的智能合约或者 DAPP 直接搬运到新的公链上运行。比如波场的 TVM 就兼容以太坊的 EVM,量子链也兼容 EVM,EOS 也兼容 EVM。但是为什么这些运行在以太坊的项目,没有搬到这些公链上呢,原因很简单:搬过来又没人用,那何苦去搬呢?

其次,目前这些公链上的项目种类也相当贫瘠。下图是 DappRadar 上根据项目种类对用户数进行的统计,观察可以发现,绝大多数的用户都集中在交易所、博彩、游戏这三种项目上,其他类型的项目可以说是忽略不计。

005.jpg


以区块链游戏为例,自从迷恋猫 Cryptokitties 火了之后,就涌现了大量类似的项目,当 FOMO3D 火了之后,又有一批新的仿制项目出现。这个行业存在创新,但是创新容易被滥用,也导致区块链的应用场景变得狭隘。

此外,DApp 的使用者数量极少,项目的市值相对于用户数量来说是存在着极大的泡沫的。

006.jpg


任何一个爆火的区块链游戏,看似有很多人玩,实际上可能就那么几百个人参与。例如最近火的 EOS Pixel 游戏,前 5 天的用户数量只有千人;上个月很火的 FIBOS 兑换,参与者也只有千人左右。他们的传播圈子并不大。

根据 Dappradar 的数据,目前所有的 DApp 的日均活跃用户数大多数时间是在一万上下波动。而传统的应用,如单单一个 Facebook 日均活跃用户就有约 14 亿。二者完全无法相比。目前以太坊和 EOS 上日均活跃用户在 300 人以上的 DApp 一共仅 13 个,其中以太坊 6 个,EOS 七个。

007.jpg

以太坊上日均活跃用户数前十的项目

008.jpg

EOS 上日均活跃用户数前十的项目


看起来游戏交易数据不错,但是却掺杂着水分。如 EOS 上日均交易量最大的项目 EOSBet,一个博彩平台,24 内交易数量达到 37 万笔,然而用户数只有约 600 人,相当于平均每名用户在一天之内交易六百笔以上,这里大概率是存在着大量的机器人交易。9 月 11 日到 13 日期间 EOSBet 平台甚至在 36 小时内向一名用户支付了 6 万美元,他在连续多个回合中成为唯一的赢家。


我们不缺少高性能的公链,我们缺少的是使用公链的人


从上面的分析可以看出,目前区块链大规模应用的阻碍不在于拓展性,不在于缺少高性能的公链。问题在于,没有真正想去使用区块链的人。

区块链是一个大型协作系统,目前公链最需要的是建立生态,吸引项目上链,吸引用户使用链上的 DApp。

从开发者方面来讲,吸引项目上链重要的不仅是高吞吐量和低手续费,最基本的是开发工具和基础设施。即使前文的那些公链宣称超过以太坊 100 倍的吞吐量和 0 手续费,为什么 94% 的项目都还是选择在以太坊上开发?因为以太坊上有远远超过其他公链的优秀开发工具和基础设施。如果公链连最基本的基础设施都建设不好,而且系统内部漏洞诸多,一味去追求高性能又能吸引到谁呢?

以太坊上的开发者可以免费使用 Truffle、Infura、Web3.js 等等这些优秀的开发工具,同时他们自身也在完善着以太坊的基础设施,由此形成一个正向循环。越来越多的开发者被吸引到以太坊网络中,以太坊的设施又被他们不断优化。只不过因为去中心化的缘故,这个优化和更新的速度很慢,远不及中心化的区块链。

从使用者方面来讲,目前的区块链和区块链产品的学习成本太高。中心化的应用往往都对如何打造用户友好的界面做了足够多的调研,而这正是 DApp 所需要借鉴的。区块链技术需要在无形中进入人们的生活,「太上,不知有之。」而不是让潜在用户感到自己的无知,感到畏惧,对新技术感到抗拒。

以 Fomo3D 为例,这个游戏在 7 月底火爆了区块链世界,7 月 21 日当天活跃用户突破一万名。可是,要参加这个游戏,对于普通人来说还是太难了。普通用户,即便按照网上的教程,按照一二三四的顺序来安装使用,基本上会被卡住。

对于一个从来没有接触过区块链的人,这样的教程一定会令他敬而远之,整个过程中出现了大量的问号:


Metamask 是什么?

ETH 是什么?

在哪里购买?

怎么充值?

key 是做什么用的?

游戏里各种分红机制的区别是什么?

智能合约是什么?



这么麻烦的话,用户会更愿意去玩一个用支付宝或者微信输入个密码就可以参与的游戏吧。一天一万名用户的数字放在 DApp 的世界里,目前可以说是区块链世界的一个巅峰了,然而和普通中心化的 App 用户数相比,实在是九牛一毛。

因为使用 DApp 的门槛限制了普通人的参与,即使 DApp 再有趣,也只能从现有的极小的用户基数里吸引玩家。目前区块链的大规模普及如果想要吸引使用者,开发者要做的就是让应用对普通用户来说更友好,缩小甚至隐形区块链、智能合约的概念,让用户使用 DApp 就像使用习以为常的 App 一样容易操作,以免潜在用户产生畏惧甚至抗拒心理。

区块链不仅仅是一项技术,更是一个生态系统。吸引开发者带来更多的项目上链、吸引用户使用 DApp、建立生态才是当务之急,一味在吞吐量上争高低、鼓吹超强的性能是看不到前途的。如果现阶段公链不能做到吸引项目上链、吸引新用户的话,或许区块链行业的聚光灯就不得不让给联盟链,由联盟链来实现区块链技术的大规模商用落地了。

简单来讲:让区块链真正用起来,而不是堆技术指标去唬人。


作者:区块律动BlockBeats 0x22

区块链的“网景浏览器”会是谁?

chengpishu 发表了文章 • 2018-09-05 12:04 • 来自相关话题

互联网刚出现的时候,只有少数的极客懂得通过命令行浏览纯文字符的网页。

直到第一款支持图片的浏览器“网景”出现,上网才变成一件非常容易的事情。网景不仅是第一款得到广泛应用的商业浏览器,它还为我们带来了许多关键的 Web 技术元素,比如 RSS 和 JS 。

网景占据了当时大部分的市场份额,但总的用户数也只有一万人。今天区块链行业里真正的“用户”又有多少呢?

最近我们去探访了一家位于新加坡的技术公司 AlphaWallet,他们在做的事有点类似于一个区块链时代里的“网景”。

AlphaWallet希望能像早期网景推动 web 技术发展那样,通过一个用户端集成产品,即 AlphaWallet 钱包,让用户很方便地使用智能合约、操作智能资产,同时填补现在整个区块链技术生态里缺失的关键元素,包括研发更好的智能合约标准接口、中间协议和技术堆栈等,最终帮助改善区块链应用的易用性、性能和隐私。

AlphaWallet 的 CEO Victor Zhang(张中南)是连续创业者,之前主要在票务领域。CTO 张韡武则是区块链领域的技术大拿,曾经任职 R3 全球构架师工作组和澳大利亚联邦银行区块链构架师,主导过12个区块链项目。

这次橙皮书和中南、韡武聊了一下午,依旧收获颇丰,我们希望能在这篇文章里和大家分享 AlphaWallet 在做的事情,以及 AlphaWallet 团队两位核心成员对区块链行业的一些有趣的看法。(文末有入群方式,欢迎来勾搭AlphaWallet团队~)


AlphaWallet 团队在做什么?


AlphaWallet 其实就做两件事:

一方面,他们开发了各种区块链协议和智能合约标准(比如 ERC875),让 B 端的开发者能更好地在区块链上开发应用,帮助改善区块链应用的易用性,性能和隐私;

另一方面,他们为 C 端的消费者开发了一个可编程钱包( AlphaWallet )。通过这个钱包,用户能够和上面提到的区块链应用和智能合约进行交互。


纵观整个区块链行业的技术分布,你会发现,这里面的技术栈大概分为四层,从下到上分别为:

底层公链(例如以太坊)

智能资产的协议、智能合约标准(比如以太坊上的ERC20 、ERC721、ERC875)

Gateway Application,通过这层入口与区块链进行连接(比如 blockstack、AlphaWallet)

区块链应用,加密经济的产品或服务(比如加密猫、fomo3d)


AlphaWallet 团队在做的事情属于第二层和第三层。

最赚钱的事情其实发生在第一层和第四层:第一层公链很好理解,它是整个生态的根基。如果上面长出了一片森林,底层公链的价值当然就越大。这种价值也很好量化,最后可能直接体现为 token 的币价了;除此之外,第四层也是比较容易赚钱的。因为这一层的服务离用户最近。在一个产业链条里,越靠近消费者的环节,可以做的商业模式越多,油水也越多。

而第二层和第三层,你只要看涉及到「协议」、「网关」这些特别 geek 的词,其实大概就能猜到这两层服务是很难直接变现的。

对 AlphaWallet 来说,它无法和用户直接进行交互。「联网」和「数据交换」都发生在第四层的 DApp 上,由开发者的应用直接控制。AlphaWallet 只负责把这些应用加密完的数据对接给底层的公链,所以 AlphaWallet 本质上是个离线应用,它不联网,自己没有中心化的云服务器,只负责上链。这样一来, AlphaWallet 没办法做数据截流,任何涉及到交易的环节都发生在应用层,也无法收取手续费。

所以这两层的服务最终就是不赚钱的。


既然不挣钱为什么要做?


区块链目前是一个新生的蛮荒地。这块土地还很初期,有很多基础设施还没有搭建好,但它以后也许能长出许多不一样的东西。而对搞技术的人来说,能在这么早期的阶段,参与技术协议和标准的建设,本身就是一件让人激动的事情。

这就像回到一九七几年,你能亲身参与 RCF 的修订,推出 IP/TCP 等一系列协议。难道你不想在早期技术发展史上留下浓墨重彩的一笔吗?

那么,既然做的是第二层和第三层的事情,AlphaWallet 具体开发了哪些东西呢?


1、ERC875,更好的非同质化代币标准

AlphaWallet 开发智能资产和智能合约相关的协议,其中一个比较有代表性的例子就是 ERC875。

ERC 是以太坊上不同类型的智能合约的标准接口。比如大家最熟悉的 ERC20 就是一种同质化代币的标准接口。通过这套标准,同一种类型的智能合约,它们所用的数据结构、调用的函数方法都是一样的,那么彼此就能对话。像 ERC20 的流行,很大程度是 ICO 火了之后带动的,因为不同团队可以很容易地在以太坊上发币,而这些不同的币种,因为沿用的是同一套 ERC20 的标准,因此很多交易所都可以兼容这些币,币与币之间可以互相交易。如果是去中心化交易所,还可以直接自动化接入这些不同的代币。总结一句话:标准一样,代码就能互相沟通。

除了 ERC20,另一个比较被人们所熟悉的标准应该是 ERC721。ERC721 是一种非同质化代币的标准接口。非同质化和同质化的区别,其实就是“钱”和“猫”的区别。钱是同质化的,我从 1000 块钱里转账 100 给你,你在乎的是 100 这个数量,但你并不会在乎具体是 1000 块里哪部分的 100 块;而另一方面,每只加密猫都是独一无二的,你没办法对一只猫进行分割,只能以一整只进行交易。ERC721 的创新之处,就在于它为猫的智能合约引入了专属的 ID。






AlphaWallet 提出的 ERC875 也是一种非同质化代币的标准。但跟 ERC721 相比,ERC875 有另外一些创新点。ERC721 算是比较粗糙的标准,很多非同质化的数字资产在实际应用场景里可能遇到的问题它并没有考虑进去,因此开发起来仍然有一些痛点,比如 ERC721 的 gas 费用会比较高,而且很容易引发网络拥堵。

ERC875 通过内置两套密码学的协议,针对这些痛点做了一些创新。最大的不同有两点:

实现原子化交易。

实现批量打包操作。


「原子化交易」的意思是:交易的操作步数不可分,交易要么发生,要么不发生,不存在其他可能。


这样的好处是什么呢?


假如买卖双方交易,买家付款打了钱过去,卖家收款后不发货买家就会遭遇损失。而在原子化操作里,买家打钱过去,卖家的货就会自动发出,不存在打款后不发货的可能。

所以,一旦能简单地实现原子化交易(atomic swap),就可以做到货款对付——换句话说,可以直接搭建去中心化的公共交易市场了。AlphaWallet 让卖家无需持有以太币,买家支付一次 gas 就能完成交易,从而降低普通用户的使用门槛。

第二点「批量打包操作」比较好理解。ERC721 的交易是无法批量进行的,一次只能交易一只加密猫。如果你想一次性交易 10 只加密猫怎么办呢?做不到。而 ERC875 可以支持批量交易。它把批量的交易打包到一起进行,从而可以节省 gas 费用。

比如,用户可以先用法币购买加密猫,然后直接通过 AlphaWallet 提供的 MagicLink 免费把猫导入到自己的钱包里,之后用户还可以在不需要持有以太币的情况下,通过 MagicLink 再把猫售出或者免费转让。整个过程都是无中心的原子化交易,商家也可以一次批发 100 只猫给分销商。

MagicLink 在产品上的设计,有点像当年的微信红包。这有可能会为区块链带来更多的场外新用户。微信红包最早开始的时候,很多人都没有在微信上绑定银行卡,但接收别人的红包时是不需要绑卡的,只有当你想要把零钱提现的时候才需要绑卡。这样一个非常巧妙的设计,结合发红包这种非常自然的用户行为,最终让微信支付成功绑定了许多银行卡,马云更是直接把微信红包称之为对支付宝的一次“珍珠港偷袭”。

如果有了 ERC875 这种更好用的非同质化代币标准,我们能实现什么以前比较少见的商业应用?

首先,我们可以把所有线下的物品和事物都 token 化,比如一个碗、一瓶白酒、一张演唱会门票。这些东西都是独特的,每张门票对应一个座位,一个观众,一个场次,它不可分割、不可替换。同时,很多门票代售点有可能还需要一次转卖 100 张演唱会门票。通过 ERC875,这些非同质化 token 的发行、流通和转让,都会变得很容易。

如果橙皮书印制了 100 件专属的文化衫,也许我可以很容易地为这100 件文化衫发行一套 token。每件文化衫显然都是独特的,拥有自己的尺码和编号,我们可以通过 ERC875,把这些T恤一次性批量发给橙皮书的忠实读者。随着 token 的转让和流通,文化衫的所有权也可以进行交易和售卖。于是,你拿着 token 就能证明自己是橙皮书早期的忠实读者了。到了最后,这其实会演变成一种社交货币和身份符号。

关于 ERC875 的应用场景,其实中南提到了一个更有意思的案例——公交车站广告牌的分时租赁。

许多公交车站的广告牌都是用分时的方式租赁的,广告主可以购买某一个时段的广告位。对广告位来说,它是一种非同质化代币,因为每个广告位都是独一无二的,需要对应特定的车站位置、特定的广告牌编号、特定的广告时段。而对广告主来说,不太可能一次就买一分钟(假设广告位最小的时段单位是一分钟)的广告而已,广告主更有可能的做法是:在“晚上 7 点”这种下班高峰期时段里买两个小时的广告位来宣传自己的产品。这样一来,批量购买 2 个小时的非同质化 token ,这个场景就非常适合用 ERC875 来实现了,ERC721 反而很难胜任。






除了 ERC875,AlphaWallet 还会持续不断开发新的智能合约标准。这些都属于协议层的东西。如果区块链行业要实现更多的商业场景,这些协议都是必不可少的。即使单纯做协议并不挣钱,整个行业仍然需要有人有意识地推动这些协议的发展。

其实现在整个行业已经提出了许多新的标准。

热门的标准,诸如上面提到的 ERC721、ERC20、ERC875,冷门一些的还包括诸如 PepeDapp 提出的 ERC420。ERC420 是一个卡片收藏游戏的 token 标准。在卡片收藏游戏里,每种卡片都会发行一定的数量。同一个系列里的卡片每张都一样,是一种同质化代币,但在系列之外,每张卡片又都是独特的,需要有自己的 id,这时又是一种非同质化代币了。卡片收藏游戏通过发行的编号和总的发行数量来决定一张卡片的稀有程度,从而决定卡片的价值,它有自己特殊的应用场景,因此可能是需要一套自己的代币标准的。其他的一些标准还包括 ERC1155 等游戏资产类型的代币标准。

AlphaWallet 在接下来的时间里也会根据具体的商业应用场景,不断开发更多的协议和标准,丰富智能合约类型。至于最后哪些标准能够真正成为行业的主流,当然还是要看哪个场景里跑出了真正热门又赚钱的应用。就像加密猫游戏的火爆带动了 ERC721 这套标准一样。

目前 AlphaWallet 已有的一个落地案例是之前他们联合「盛开体育」共同推出的世界杯区块链门票方案。按中南的说法,总共有 20 张门票,盛开那边做了10张票,AlphaWallet则拿了10 张开幕式的VIP门票,用户在购买时会提示是否使用区块链购买还是正常购买,后续还能通过 AlphaWallet 完成门票的确权、流通或转让。






这种应用案例的探索也是 AlphaWallet 打算采取的方式:为区块链技术找一些示范性的应用场景,以此吸引更多的开发者加入,一步步去实现“移动区块链网关”的目标。

以 token 为核心,其实能延展出很多新的场景。

之前我们一直在思考能不能为明星或者行业 kol、b 站主播、微博小 v 发币,让他们借助 token 的力量来完成变现,为自己生产的内容找到除了接广告、卖货的其他商业模式。中南对「明星发币」这个场景也提了一个非常有意思的设想:

    为明星发币,然后在代币的智能合约里设置一个手续费规则。这样一来,一个明星可以在刚开始不太红的时候,免费把自己的币发出去,这些币代表着一些权益,可能是见面会等一些小福利。然后币同时也代表这一种身份证明,比如拥有第一个币就证明是这个明星的头号粉丝。这样一来,明星不太红的时候把币免费散出去,一旦明星人气比较高之后,就会有粉丝愿意去购买明星币,而每次购买的手续费都会有一部分回流到明星成立的「粉丝基金会」里,这部分基金会的钱就可以用来当作粉丝活动经费啦。

这是个非常有趣的场景。和橙皮书之前写过的「人情币」有点类似。


2、“用户端集成”:AlphaWallet 是钱包,也是一个更开放的gateway

除了协议和标准,中南他们也在做面向 C 端用户的集成产品,即 AlphaWallet 钱包。

这款钱包其实是一个让用户和智能合约进行交互的 gateway(入口)。我们知道,普通用户要跟公链进行交互,还是需要依赖一些中间件的。现在大多数人使用 DApp 主要还是通过 Metamask 和 Web3.js 实现的:开发者通过 web3.js 开发应用,普通用户在浏览器上安装 Metamask 插件,通过网页进行转账、往智能合约里写入数据等操作。






AlphaWallet 的定位是一个基于移动端的开放智能资产平台,任何人都可以通过这个平台与智能资产、智能合约进行交互。在这里面,消费者、代币发行方、服务提供方、应用开发者,这些不同的角色通过 AlphaWallet 平台连接到了一起。

它对用户来说,首先是一个可以直接与智能资产和智能合约交互的入口。AlphaWallet 会集成许多不同种类的 ERC 标准,最终让所有以太坊的代币都可以在自己的平台上进行交易,既包括同质化代币 ERC20,也包括非同质化代币 ERC875、ERC721 或者其他类型的标准 。因为 AlphaWallet 的目标是打造一个开放性的平台,所以在标准接口上不会做限定,而是尽可能去做兼容——在应用里有一个板块叫“公共市场”,在这里面,所有类型的代币都可以进行交易。这样一来,非同质化代币才可以真的流通起来。游戏道具、物理世界里的非同质化的实体资产也能借助 ERC875 的标准映射到区块链上,成为数字资产。

这听起来挺像去中心化交易所的。但 AlphaWallet 的定位其实更偏向于“应用”,而非仅仅只是“货币”。

在公共市场里,AlphaWallet 希望用户可以互相交换自己的游戏道具,或者数字门票之类的东西。他们在这块也有一些很有意思的设计。举一个例子,中南提到过“反向交易”的概念,大概的意思是说,你手上有一个游戏道具的 token 想要出售,普通流程需求自己先去交易市场上挂单,然后等人来买,AlphaWallet 未来则希望加入一个反向交易的特性:你的资产里有哪种类型的 token,即使没有真正挂单,但市场上如果有相应的需求,市场也会自动 push 一个通知给你。这样一来,买卖双方的流动性就会大大增加。

其次,AlphaWallet 是“移动先行”(moble first)的,它想做的是“移动网关”。 gateway 不可避免要涉及到 ID 身份认证,而这种相对私密、需要隐私的东西,用手机应用的形式来做应该是更合理的,因为手机更贴身。从这个角度出发,韡武也提到了一个很有趣的观点——「区块链手机」这种东西一定程度上是可以 make sense 的,因为区块链的 ID 入口、身份认证和私钥管理这块,未来一定是越做越往下沉,一开始它可能做在 APP 应用上,慢慢地再做到软件的操作系统层,再接下去,可能就需要做到手机硬件层里了。

当然,现在无疑还很早期。

token 能够用于有价值的,需要被验证的,并且所有权有转移场景的信息。而类似身份 ID 等有价值、需要被验证、但是不需要转移所有权的信息,AlphaWallet 则希望在加密经济内应用 Attestation 技术来使用这类信息。

要理解 Token 和 Attestation 在做什么样的事,中南举了一个支付宝的例子:

现在支付宝聚集了大量的用户,这些用户通过支付宝与其他第三方金融或保险业务进行交互,交互产生的大量数据最终都留在了支付宝自己手里。支付宝通过平台去跟这些金融公司、保险公司进行业务合作时,本质上是代表用户、以用户的名义去与这些第三方公司进行合作的。因为用户的数据和用户的身份认证掌握在支付宝手上,用户选择哪家保险公司、选择什么理财产品,这里面的选项,就由支付宝决定了,它已经提前为你选择了一批合作方,你只能在这些合作方里面进行选择。这件事其实是不合理的。


如果通过 AlphaWallet 这样的开放平台来做会怎么样呢?

首先用户与不同系统交互产生的有价值、同时有所有权转让场景的信息,会作为 token 存在区块链上,ID 身份等需要隐私、并且无所有权转让场景的信息,则可以作为 Attestation 存储在用户本地,AlphaWallet 不保存这些数据,但同时用户又能通过 AlphaWallet 去做身份认证的授权。比如,第三方的保险公司想要我的数据,那么直接在 AlphaWallet 上向我发起一个身份授权的请求就可以了。如果用户同意了,保险公司就可以与之进行合作,提供服务。这样一来,所有的数据掌握在用户自己手上,平台没有权力拿着用户的数据去代表用户的名义与其他第三方公司进行合作,用户能选择的服务范围也不会被限定。只要用户允许,平台就无法阻止其他第三方公司向用户提供服务。


这样一来,平台是更开放的、更自由的。而且第三方的服务提供方,也必须从「努力讨好平台」转变为「努力讨好用户」,一定程度上消除了平台内部的不公正和贪腐现象。

韡武把这个方向的应用称之为“用户端的集成需求”。他专门写了一整篇文章来谈这方面的想法,推荐感兴趣的朋友都读一读,非常有启发。用韡武的话来说,用户倾向于使用一个工具就能解决所有需求,而市面上大多数服务的连接都是围绕“企业”这个中心进行,在产品的系统层面进行集成。而区块链让集成需求转移到了用户端,一个 token 和 Attestation 就可以完成用户的身份验证和服务授权,所有服务最后围绕“用户”运转,这样一来就能够实现服务之间的“充分竞争”了。

一个充分竞争的市场才是一个更好的市场。就好像比特币的意义在于第一次为货币引入了竞争机制。这个概念在之前很难想象,因为我们很少去思考“货币”作为一种价值交互工具,它本身的效率和可靠性究竟如何。但比特币出现之后,我们会慢慢意识到,货币彼此之间是需要竞争的,只不过我们之前缺少这样的技术。在充分竞争的市场环境里,我们也许能产生更好的货币。






其实我们不仅要为货币引入竞争,我们应该为所有的事物引入竞争机制:支付宝的第三方金融服务方、保险公司不应该由平台来决定,而应该由用户来决定,金融保险服务商需要互相竞争;今日头条上的内容分发算法也不应该由平台来决定,而应该由用户来决定,不同的算法需要竞争。


区块链时代的网景浏览器?


AlphaWallet 在做的事,会不由自主让我联想到互联网刚出现时的“网景浏览器”。当然现在说这话可能对 AlphaWallet 来说还太早,但他们在做的事情、在走的方向,一定程度上是有一些类似网景浏览器的地方。

在互联网早期,想要浏览网页是非常困难的。当时的极客们在命令行终端或者 DOS 环境里使用一个名为 Lynx 的纯文字网页浏览器。这种方式操作很复杂,Lynx 会先把网页上所有的超链结都编号,然后用户通过输入号码来选择超链接。在 90年代初 ISP 服务商也非常少,所以就算你连上了网能享受到的最快网速也不过28.8Kbps。因此当时的 Web 也没能很快普及开来。

到了网景浏览器出现时,这个现象终于被改变了。Marc Andreessen 在伊利诺大学开发了全球最早一款可以显示图片的网页浏览器 Mosaic,而后他又在 Mosaic 的基础上开发了一款商业网页浏览器,也就是网景浏览器。网景支持多个操作系统,包括 Windows,Mac 以及Unix的X Windows System。过去上网不是一件容易的事,但网景让人们可以毫不费力的浏览网页。不过即使网景浏览器占领了当时大部分的市场份额,它的用户也就刚刚过万。可见当时的互联网人群有多小。






早期互联网基础设施铺设好了一些,人们可以上网,但因为相关协议和软件的缺失,使得上网成本很高。这就像今天的区块链,公链的基础已经有了,但因为性能的问题、以及生态的问题,许多中间件的协议和接口不完善,最终开发者想在公链上开发应用也很有限,用户想在链上执行操作也比较困难。

而许多像 AlphaWallet 这样的团队,包括国外的 Blockstack,他们在做的事情类似于网景在早期阶段所做的努力,让用户能更方便的使用区块链。一旦这种使用的成本降低,区块链也许也能像早期互联网那样,从刚刚过万的用户,增长为今天 40 亿的全球网民。

而且,网景的意义不仅仅是降低浏览网页的成本,它还为我们现在所熟知的这个互联网带来了许多关键的技术元素。比如 RSS 订阅源和网页动态 JS 技术就是网景浏览器提供的。最早HTTP在基本的TCP/IP协议栈上发送信息,网景公司又在此基础上创建了一个额外的加密传输层,也就是今天我们熟悉的 SSL,用以保障互联网内容传输的安全性。

事实上如果你去认真查阅网景浏览器的历史,你会发现在 1995 年, 网景甚至还在试图开发一个依靠浏览器操作的网络操作系统——这不就是 Chrome OS 吗?在技术设想方面,网景实在太前卫了。当然,这也一定程度上惹怒了当时刚刚坐稳了世界第一操作系统供应商的微软,从而导致浏览器大战的开始。当然这一切都是后话了。

AlphaWallet 开发 ERC875 ,研发更好的智能合约标准接口、中间协议和技术堆栈,一方面是为了 AlphaWallet 钱包产品本身有更好的发展,另一方面,也是在为整个区块链生态填补缺失的技术元素,改善易用性、性能和隐私。从这个角度来说,我们乐于看到许多像 AlphaWallet 这样的技术理想团队,他们有机会像早期网景浏览器推动 web 技术发展那样,推动区块链技术栈的发展。 查看全部
al01.jpg


互联网刚出现的时候,只有少数的极客懂得通过命令行浏览纯文字符的网页。

直到第一款支持图片的浏览器“网景”出现,上网才变成一件非常容易的事情。网景不仅是第一款得到广泛应用的商业浏览器,它还为我们带来了许多关键的 Web 技术元素,比如 RSS 和 JS 。

网景占据了当时大部分的市场份额,但总的用户数也只有一万人。今天区块链行业里真正的“用户”又有多少呢?

最近我们去探访了一家位于新加坡的技术公司 AlphaWallet,他们在做的事有点类似于一个区块链时代里的“网景”。

AlphaWallet希望能像早期网景推动 web 技术发展那样,通过一个用户端集成产品,即 AlphaWallet 钱包,让用户很方便地使用智能合约、操作智能资产,同时填补现在整个区块链技术生态里缺失的关键元素,包括研发更好的智能合约标准接口、中间协议和技术堆栈等,最终帮助改善区块链应用的易用性、性能和隐私。

AlphaWallet 的 CEO Victor Zhang(张中南)是连续创业者,之前主要在票务领域。CTO 张韡武则是区块链领域的技术大拿,曾经任职 R3 全球构架师工作组和澳大利亚联邦银行区块链构架师,主导过12个区块链项目。

这次橙皮书和中南、韡武聊了一下午,依旧收获颇丰,我们希望能在这篇文章里和大家分享 AlphaWallet 在做的事情,以及 AlphaWallet 团队两位核心成员对区块链行业的一些有趣的看法。(文末有入群方式,欢迎来勾搭AlphaWallet团队~)


AlphaWallet 团队在做什么?


AlphaWallet 其实就做两件事:


一方面,他们开发了各种区块链协议和智能合约标准(比如 ERC875),让 B 端的开发者能更好地在区块链上开发应用,帮助改善区块链应用的易用性,性能和隐私;

另一方面,他们为 C 端的消费者开发了一个可编程钱包( AlphaWallet )。通过这个钱包,用户能够和上面提到的区块链应用和智能合约进行交互。



纵观整个区块链行业的技术分布,你会发现,这里面的技术栈大概分为四层,从下到上分别为:


底层公链(例如以太坊)

智能资产的协议、智能合约标准(比如以太坊上的ERC20 、ERC721、ERC875)

Gateway Application,通过这层入口与区块链进行连接(比如 blockstack、AlphaWallet)

区块链应用,加密经济的产品或服务(比如加密猫、fomo3d)



AlphaWallet 团队在做的事情属于第二层和第三层。

最赚钱的事情其实发生在第一层和第四层:第一层公链很好理解,它是整个生态的根基。如果上面长出了一片森林,底层公链的价值当然就越大。这种价值也很好量化,最后可能直接体现为 token 的币价了;除此之外,第四层也是比较容易赚钱的。因为这一层的服务离用户最近。在一个产业链条里,越靠近消费者的环节,可以做的商业模式越多,油水也越多。

而第二层和第三层,你只要看涉及到「协议」、「网关」这些特别 geek 的词,其实大概就能猜到这两层服务是很难直接变现的。

对 AlphaWallet 来说,它无法和用户直接进行交互。「联网」和「数据交换」都发生在第四层的 DApp 上,由开发者的应用直接控制。AlphaWallet 只负责把这些应用加密完的数据对接给底层的公链,所以 AlphaWallet 本质上是个离线应用,它不联网,自己没有中心化的云服务器,只负责上链。这样一来, AlphaWallet 没办法做数据截流,任何涉及到交易的环节都发生在应用层,也无法收取手续费。

所以这两层的服务最终就是不赚钱的。


既然不挣钱为什么要做?


区块链目前是一个新生的蛮荒地。这块土地还很初期,有很多基础设施还没有搭建好,但它以后也许能长出许多不一样的东西。而对搞技术的人来说,能在这么早期的阶段,参与技术协议和标准的建设,本身就是一件让人激动的事情。

这就像回到一九七几年,你能亲身参与 RCF 的修订,推出 IP/TCP 等一系列协议。难道你不想在早期技术发展史上留下浓墨重彩的一笔吗?

那么,既然做的是第二层和第三层的事情,AlphaWallet 具体开发了哪些东西呢?


1、ERC875,更好的非同质化代币标准

AlphaWallet 开发智能资产和智能合约相关的协议,其中一个比较有代表性的例子就是 ERC875。

ERC 是以太坊上不同类型的智能合约的标准接口。比如大家最熟悉的 ERC20 就是一种同质化代币的标准接口。通过这套标准,同一种类型的智能合约,它们所用的数据结构、调用的函数方法都是一样的,那么彼此就能对话。像 ERC20 的流行,很大程度是 ICO 火了之后带动的,因为不同团队可以很容易地在以太坊上发币,而这些不同的币种,因为沿用的是同一套 ERC20 的标准,因此很多交易所都可以兼容这些币,币与币之间可以互相交易。如果是去中心化交易所,还可以直接自动化接入这些不同的代币。总结一句话:标准一样,代码就能互相沟通。

除了 ERC20,另一个比较被人们所熟悉的标准应该是 ERC721。ERC721 是一种非同质化代币的标准接口。非同质化和同质化的区别,其实就是“钱”和“猫”的区别。钱是同质化的,我从 1000 块钱里转账 100 给你,你在乎的是 100 这个数量,但你并不会在乎具体是 1000 块里哪部分的 100 块;而另一方面,每只加密猫都是独一无二的,你没办法对一只猫进行分割,只能以一整只进行交易。ERC721 的创新之处,就在于它为猫的智能合约引入了专属的 ID。

al02.jpg


AlphaWallet 提出的 ERC875 也是一种非同质化代币的标准。但跟 ERC721 相比,ERC875 有另外一些创新点。ERC721 算是比较粗糙的标准,很多非同质化的数字资产在实际应用场景里可能遇到的问题它并没有考虑进去,因此开发起来仍然有一些痛点,比如 ERC721 的 gas 费用会比较高,而且很容易引发网络拥堵。

ERC875 通过内置两套密码学的协议,针对这些痛点做了一些创新。最大的不同有两点:


实现原子化交易。

实现批量打包操作。



「原子化交易」的意思是:交易的操作步数不可分,交易要么发生,要么不发生,不存在其他可能。


这样的好处是什么呢?


假如买卖双方交易,买家付款打了钱过去,卖家收款后不发货买家就会遭遇损失。而在原子化操作里,买家打钱过去,卖家的货就会自动发出,不存在打款后不发货的可能。

所以,一旦能简单地实现原子化交易(atomic swap),就可以做到货款对付——换句话说,可以直接搭建去中心化的公共交易市场了。AlphaWallet 让卖家无需持有以太币,买家支付一次 gas 就能完成交易,从而降低普通用户的使用门槛。

第二点「批量打包操作」比较好理解。ERC721 的交易是无法批量进行的,一次只能交易一只加密猫。如果你想一次性交易 10 只加密猫怎么办呢?做不到。而 ERC875 可以支持批量交易。它把批量的交易打包到一起进行,从而可以节省 gas 费用。

比如,用户可以先用法币购买加密猫,然后直接通过 AlphaWallet 提供的 MagicLink 免费把猫导入到自己的钱包里,之后用户还可以在不需要持有以太币的情况下,通过 MagicLink 再把猫售出或者免费转让。整个过程都是无中心的原子化交易,商家也可以一次批发 100 只猫给分销商。

MagicLink 在产品上的设计,有点像当年的微信红包。这有可能会为区块链带来更多的场外新用户。微信红包最早开始的时候,很多人都没有在微信上绑定银行卡,但接收别人的红包时是不需要绑卡的,只有当你想要把零钱提现的时候才需要绑卡。这样一个非常巧妙的设计,结合发红包这种非常自然的用户行为,最终让微信支付成功绑定了许多银行卡,马云更是直接把微信红包称之为对支付宝的一次“珍珠港偷袭”。

如果有了 ERC875 这种更好用的非同质化代币标准,我们能实现什么以前比较少见的商业应用?

首先,我们可以把所有线下的物品和事物都 token 化,比如一个碗、一瓶白酒、一张演唱会门票。这些东西都是独特的,每张门票对应一个座位,一个观众,一个场次,它不可分割、不可替换。同时,很多门票代售点有可能还需要一次转卖 100 张演唱会门票。通过 ERC875,这些非同质化 token 的发行、流通和转让,都会变得很容易。

如果橙皮书印制了 100 件专属的文化衫,也许我可以很容易地为这100 件文化衫发行一套 token。每件文化衫显然都是独特的,拥有自己的尺码和编号,我们可以通过 ERC875,把这些T恤一次性批量发给橙皮书的忠实读者。随着 token 的转让和流通,文化衫的所有权也可以进行交易和售卖。于是,你拿着 token 就能证明自己是橙皮书早期的忠实读者了。到了最后,这其实会演变成一种社交货币和身份符号。

关于 ERC875 的应用场景,其实中南提到了一个更有意思的案例——公交车站广告牌的分时租赁。

许多公交车站的广告牌都是用分时的方式租赁的,广告主可以购买某一个时段的广告位。对广告位来说,它是一种非同质化代币,因为每个广告位都是独一无二的,需要对应特定的车站位置、特定的广告牌编号、特定的广告时段。而对广告主来说,不太可能一次就买一分钟(假设广告位最小的时段单位是一分钟)的广告而已,广告主更有可能的做法是:在“晚上 7 点”这种下班高峰期时段里买两个小时的广告位来宣传自己的产品。这样一来,批量购买 2 个小时的非同质化 token ,这个场景就非常适合用 ERC875 来实现了,ERC721 反而很难胜任。

al03.jpg


除了 ERC875,AlphaWallet 还会持续不断开发新的智能合约标准。这些都属于协议层的东西。如果区块链行业要实现更多的商业场景,这些协议都是必不可少的。即使单纯做协议并不挣钱,整个行业仍然需要有人有意识地推动这些协议的发展。

其实现在整个行业已经提出了许多新的标准。

热门的标准,诸如上面提到的 ERC721、ERC20、ERC875,冷门一些的还包括诸如 PepeDapp 提出的 ERC420。ERC420 是一个卡片收藏游戏的 token 标准。在卡片收藏游戏里,每种卡片都会发行一定的数量。同一个系列里的卡片每张都一样,是一种同质化代币,但在系列之外,每张卡片又都是独特的,需要有自己的 id,这时又是一种非同质化代币了。卡片收藏游戏通过发行的编号和总的发行数量来决定一张卡片的稀有程度,从而决定卡片的价值,它有自己特殊的应用场景,因此可能是需要一套自己的代币标准的。其他的一些标准还包括 ERC1155 等游戏资产类型的代币标准。

AlphaWallet 在接下来的时间里也会根据具体的商业应用场景,不断开发更多的协议和标准,丰富智能合约类型。至于最后哪些标准能够真正成为行业的主流,当然还是要看哪个场景里跑出了真正热门又赚钱的应用。就像加密猫游戏的火爆带动了 ERC721 这套标准一样。

目前 AlphaWallet 已有的一个落地案例是之前他们联合「盛开体育」共同推出的世界杯区块链门票方案。按中南的说法,总共有 20 张门票,盛开那边做了10张票,AlphaWallet则拿了10 张开幕式的VIP门票,用户在购买时会提示是否使用区块链购买还是正常购买,后续还能通过 AlphaWallet 完成门票的确权、流通或转让。

al04.jpg


这种应用案例的探索也是 AlphaWallet 打算采取的方式:为区块链技术找一些示范性的应用场景,以此吸引更多的开发者加入,一步步去实现“移动区块链网关”的目标。

以 token 为核心,其实能延展出很多新的场景。

之前我们一直在思考能不能为明星或者行业 kol、b 站主播、微博小 v 发币,让他们借助 token 的力量来完成变现,为自己生产的内容找到除了接广告、卖货的其他商业模式。中南对「明星发币」这个场景也提了一个非常有意思的设想:

    为明星发币,然后在代币的智能合约里设置一个手续费规则。这样一来,一个明星可以在刚开始不太红的时候,免费把自己的币发出去,这些币代表着一些权益,可能是见面会等一些小福利。然后币同时也代表这一种身份证明,比如拥有第一个币就证明是这个明星的头号粉丝。这样一来,明星不太红的时候把币免费散出去,一旦明星人气比较高之后,就会有粉丝愿意去购买明星币,而每次购买的手续费都会有一部分回流到明星成立的「粉丝基金会」里,这部分基金会的钱就可以用来当作粉丝活动经费啦。

这是个非常有趣的场景。和橙皮书之前写过的「人情币」有点类似。


2、“用户端集成”:AlphaWallet 是钱包,也是一个更开放的gateway

除了协议和标准,中南他们也在做面向 C 端用户的集成产品,即 AlphaWallet 钱包。

这款钱包其实是一个让用户和智能合约进行交互的 gateway(入口)。我们知道,普通用户要跟公链进行交互,还是需要依赖一些中间件的。现在大多数人使用 DApp 主要还是通过 Metamask 和 Web3.js 实现的:开发者通过 web3.js 开发应用,普通用户在浏览器上安装 Metamask 插件,通过网页进行转账、往智能合约里写入数据等操作。

al05.jpg


AlphaWallet 的定位是一个基于移动端的开放智能资产平台,任何人都可以通过这个平台与智能资产、智能合约进行交互。在这里面,消费者、代币发行方、服务提供方、应用开发者,这些不同的角色通过 AlphaWallet 平台连接到了一起。

它对用户来说,首先是一个可以直接与智能资产和智能合约交互的入口。AlphaWallet 会集成许多不同种类的 ERC 标准,最终让所有以太坊的代币都可以在自己的平台上进行交易,既包括同质化代币 ERC20,也包括非同质化代币 ERC875、ERC721 或者其他类型的标准 。因为 AlphaWallet 的目标是打造一个开放性的平台,所以在标准接口上不会做限定,而是尽可能去做兼容——在应用里有一个板块叫“公共市场”,在这里面,所有类型的代币都可以进行交易。这样一来,非同质化代币才可以真的流通起来。游戏道具、物理世界里的非同质化的实体资产也能借助 ERC875 的标准映射到区块链上,成为数字资产。

这听起来挺像去中心化交易所的。但 AlphaWallet 的定位其实更偏向于“应用”,而非仅仅只是“货币”。

在公共市场里,AlphaWallet 希望用户可以互相交换自己的游戏道具,或者数字门票之类的东西。他们在这块也有一些很有意思的设计。举一个例子,中南提到过“反向交易”的概念,大概的意思是说,你手上有一个游戏道具的 token 想要出售,普通流程需求自己先去交易市场上挂单,然后等人来买,AlphaWallet 未来则希望加入一个反向交易的特性:你的资产里有哪种类型的 token,即使没有真正挂单,但市场上如果有相应的需求,市场也会自动 push 一个通知给你。这样一来,买卖双方的流动性就会大大增加。

其次,AlphaWallet 是“移动先行”(moble first)的,它想做的是“移动网关”。 gateway 不可避免要涉及到 ID 身份认证,而这种相对私密、需要隐私的东西,用手机应用的形式来做应该是更合理的,因为手机更贴身。从这个角度出发,韡武也提到了一个很有趣的观点——「区块链手机」这种东西一定程度上是可以 make sense 的,因为区块链的 ID 入口、身份认证和私钥管理这块,未来一定是越做越往下沉,一开始它可能做在 APP 应用上,慢慢地再做到软件的操作系统层,再接下去,可能就需要做到手机硬件层里了。

当然,现在无疑还很早期。

token 能够用于有价值的,需要被验证的,并且所有权有转移场景的信息。而类似身份 ID 等有价值、需要被验证、但是不需要转移所有权的信息,AlphaWallet 则希望在加密经济内应用 Attestation 技术来使用这类信息。

要理解 Token 和 Attestation 在做什么样的事,中南举了一个支付宝的例子:


现在支付宝聚集了大量的用户,这些用户通过支付宝与其他第三方金融或保险业务进行交互,交互产生的大量数据最终都留在了支付宝自己手里。支付宝通过平台去跟这些金融公司、保险公司进行业务合作时,本质上是代表用户、以用户的名义去与这些第三方公司进行合作的。因为用户的数据和用户的身份认证掌握在支付宝手上,用户选择哪家保险公司、选择什么理财产品,这里面的选项,就由支付宝决定了,它已经提前为你选择了一批合作方,你只能在这些合作方里面进行选择。这件事其实是不合理的。



如果通过 AlphaWallet 这样的开放平台来做会怎么样呢?


首先用户与不同系统交互产生的有价值、同时有所有权转让场景的信息,会作为 token 存在区块链上,ID 身份等需要隐私、并且无所有权转让场景的信息,则可以作为 Attestation 存储在用户本地,AlphaWallet 不保存这些数据,但同时用户又能通过 AlphaWallet 去做身份认证的授权。比如,第三方的保险公司想要我的数据,那么直接在 AlphaWallet 上向我发起一个身份授权的请求就可以了。如果用户同意了,保险公司就可以与之进行合作,提供服务。这样一来,所有的数据掌握在用户自己手上,平台没有权力拿着用户的数据去代表用户的名义与其他第三方公司进行合作,用户能选择的服务范围也不会被限定。只要用户允许,平台就无法阻止其他第三方公司向用户提供服务。



这样一来,平台是更开放的、更自由的。而且第三方的服务提供方,也必须从「努力讨好平台」转变为「努力讨好用户」,一定程度上消除了平台内部的不公正和贪腐现象。

韡武把这个方向的应用称之为“用户端的集成需求”。他专门写了一整篇文章来谈这方面的想法,推荐感兴趣的朋友都读一读,非常有启发。用韡武的话来说,用户倾向于使用一个工具就能解决所有需求,而市面上大多数服务的连接都是围绕“企业”这个中心进行,在产品的系统层面进行集成。而区块链让集成需求转移到了用户端,一个 token 和 Attestation 就可以完成用户的身份验证和服务授权,所有服务最后围绕“用户”运转,这样一来就能够实现服务之间的“充分竞争”了。

一个充分竞争的市场才是一个更好的市场。就好像比特币的意义在于第一次为货币引入了竞争机制。这个概念在之前很难想象,因为我们很少去思考“货币”作为一种价值交互工具,它本身的效率和可靠性究竟如何。但比特币出现之后,我们会慢慢意识到,货币彼此之间是需要竞争的,只不过我们之前缺少这样的技术。在充分竞争的市场环境里,我们也许能产生更好的货币。

al06.jpg


其实我们不仅要为货币引入竞争,我们应该为所有的事物引入竞争机制:支付宝的第三方金融服务方、保险公司不应该由平台来决定,而应该由用户来决定,金融保险服务商需要互相竞争;今日头条上的内容分发算法也不应该由平台来决定,而应该由用户来决定,不同的算法需要竞争。


区块链时代的网景浏览器?


AlphaWallet 在做的事,会不由自主让我联想到互联网刚出现时的“网景浏览器”。当然现在说这话可能对 AlphaWallet 来说还太早,但他们在做的事情、在走的方向,一定程度上是有一些类似网景浏览器的地方。

在互联网早期,想要浏览网页是非常困难的。当时的极客们在命令行终端或者 DOS 环境里使用一个名为 Lynx 的纯文字网页浏览器。这种方式操作很复杂,Lynx 会先把网页上所有的超链结都编号,然后用户通过输入号码来选择超链接。在 90年代初 ISP 服务商也非常少,所以就算你连上了网能享受到的最快网速也不过28.8Kbps。因此当时的 Web 也没能很快普及开来。

到了网景浏览器出现时,这个现象终于被改变了。Marc Andreessen 在伊利诺大学开发了全球最早一款可以显示图片的网页浏览器 Mosaic,而后他又在 Mosaic 的基础上开发了一款商业网页浏览器,也就是网景浏览器。网景支持多个操作系统,包括 Windows,Mac 以及Unix的X Windows System。过去上网不是一件容易的事,但网景让人们可以毫不费力的浏览网页。不过即使网景浏览器占领了当时大部分的市场份额,它的用户也就刚刚过万。可见当时的互联网人群有多小。

al07.jpg


早期互联网基础设施铺设好了一些,人们可以上网,但因为相关协议和软件的缺失,使得上网成本很高。这就像今天的区块链,公链的基础已经有了,但因为性能的问题、以及生态的问题,许多中间件的协议和接口不完善,最终开发者想在公链上开发应用也很有限,用户想在链上执行操作也比较困难。

而许多像 AlphaWallet 这样的团队,包括国外的 Blockstack,他们在做的事情类似于网景在早期阶段所做的努力,让用户能更方便的使用区块链。一旦这种使用的成本降低,区块链也许也能像早期互联网那样,从刚刚过万的用户,增长为今天 40 亿的全球网民。

而且,网景的意义不仅仅是降低浏览网页的成本,它还为我们现在所熟知的这个互联网带来了许多关键的技术元素。比如 RSS 订阅源和网页动态 JS 技术就是网景浏览器提供的。最早HTTP在基本的TCP/IP协议栈上发送信息,网景公司又在此基础上创建了一个额外的加密传输层,也就是今天我们熟悉的 SSL,用以保障互联网内容传输的安全性。

事实上如果你去认真查阅网景浏览器的历史,你会发现在 1995 年, 网景甚至还在试图开发一个依靠浏览器操作的网络操作系统——这不就是 Chrome OS 吗?在技术设想方面,网景实在太前卫了。当然,这也一定程度上惹怒了当时刚刚坐稳了世界第一操作系统供应商的微软,从而导致浏览器大战的开始。当然这一切都是后话了。

AlphaWallet 开发 ERC875 ,研发更好的智能合约标准接口、中间协议和技术堆栈,一方面是为了 AlphaWallet 钱包产品本身有更好的发展,另一方面,也是在为整个区块链生态填补缺失的技术元素,改善易用性、性能和隐私。从这个角度来说,我们乐于看到许多像 AlphaWallet 这样的技术理想团队,他们有机会像早期网景浏览器推动 web 技术发展那样,推动区块链技术栈的发展。