2018年3月31日(美西时间),MOAC(墨客)1.0公测版闪耀面世,首批50多款DAPP应用将陆续部署到墨客平台上,挖矿测试也将同步开启,公测完成后,参与底层POW共识的大算力矿机和参与上层处理智能合约的手机、盒子等小算力设备都可在墨客链上挖矿。
墨客的诞生,源于创始团队希望构建一个区块链平台,让所有人可以低成本建链。区块链1.0代表比特币落实了加密货币,区块链2.0代表以太坊通过低成本发币解决融资问题。接下来是区块链3.0时代,墨客是第一款真正支持大规模DAPP商用落地的公链,它让DAPP能够低成本发链,并根据自己业务需要自定义共识方式和选择业务最优化的配置.
墨客平台上线,对区块链世界有什么意义呢?回顾下互联网时代谷歌和雅虎的故事,你会对墨客即将带来的变革有更深刻的理解。
1990年代,雅虎开创了互联网门户,其依靠信息服务赢得流量并换取广告的模式,迅速成为家喻户晓的互联网网站,并持续保持全球访问量最大的地位,2000年的互联网泡沫没有打垮雅虎,但雅虎的危机也从那时开始,因为2000年谷歌诞生,谷歌的搜索引擎业务,在技术和商业模式上逐步超越了雅虎,直至完全占领互联网入口。
先行者雅虎与后来居上者谷歌的商业故事,如同今日区块链底层基础链的竞争。以太坊虽如日中天,但危机已经显露。2018是区块链应用之年,以太坊受限于低TPS和扩展性问题,无法支撑应用真正落地。区块链底层基础设施,急需性能和架构上的突破。
以太坊的先天缺陷
根据stateofthedapps网站统计,搭建在以太坊上面的DAPP应用已经超过1252个,然而这些应用除了发币,其他功能都跑不动,看似应用很多,但绝大多数都是无法落地的空气币。之所以出现今天的局面,因为以太坊一开始并不是为DAPP设计的,以太坊的系统设计有先天缺陷,主要体现在三个方面:
1、交易费用高
目前DAPP创建者每次对以太坊智能合约的调用花费的GAS大概在1-3美元,且维护DAPP运行的成本不公平的偏向于DAPP的创建者。
2、网络拥堵效率低
以太坊目前能够支持的TPS(每秒处理交易笔数)非常有限,每秒只能支持15-20个交易,一个热门应用就能让网络卡死。究其原因,跟先天系统设计有很大关系,以太坊网络里的所有节点都处理同样的智能合约,而且所有合约的状态都记录到公共的区块链账本中,这样的系统注定效率低下,无法支持成千上万的DAPP应用落地。
3、扩展性差
以太坊的架构很多方面不适合DAPP,主要表现在两个方面:
(1)不够简单易用
DAPP用户的学习曲线非常陡峭。如果用户需要使用一个基于智能合约的DAPP,他必须先做几件事情:
第一,他要获得一个钱包地址、私钥,并知道如何正确的使用钱包地址和保存私钥;
第二,他必须通过某种方式先获得ETH,然后才能将ETH转移到DAPP的钱包地址。这个过程对区块链的小白来说非常复杂,而且经常需要等待足够长的时间(大于一周)才能完成,之后用户才能真正的使用DAPP。基于区块链的DAPP的使用应该跟传统的DAPP一样,用户从APP store下载了之后就可以立刻免费或者以很低成本的使用APP。真正的DAPP用户并不需要关心底层的区块链是什么样的,不需要关心ETH的存在或者如何获得ETH。
(2)应用场景单一
以太坊上的所有Dapp应用都只能共用一条主链,Dapp不能搭建自己的子链,不能自定义自己的共识算法,不能根据业务需要选择最优化的配置,这导致了以太坊目前除了发币,能支持的商业应用场景很少,不利于构建DAPP的生态。
以太坊生态看似枝繁叶茂,但根部不够强壮,如果不尽快完成性能和架构升级,顶部众多DAPP迟早会枯萎。
墨客:革命性区块链开源平台
MoacChain(墨客),2017年初诞生于硅谷,由硅谷顶级区块链专家团队研发,创始团队在创立墨客之前已经积累了四年多区块链技术开发和商业落地经验。
墨客通过分层配置结构,在P2P网络上支持多种子链,同时突破了异步合约调用、合约分片处理、跨链操作等当前区块链技术难题,平台的扩展能力和对合约的处理速度远远优于其他基础链,是一款真正可以部署商业应用的区块链开源平台。
能支撑大规模商用的基础链需要满足四个条件:
一是保证安全(足够多的节点,中心与去中心取得良好平衡)
二是交易效率高(每秒处理交易量TPS越高越好,交易执行速度越快越好)
三是交易成本低(每笔交易花费的Gas越少越好)
四是可扩展性强(能支持的应用场景越多越好)
墨客的系统设计和技术架构很好地满足了这四个条件。
墨客的分层设计和POP共识方式,既保证了系统安全又提升了效率。墨客底层物理网用pow共识算法,上层智能合约的逻辑网用 pos,使得两者的优点都能兼顾,可以称为pop (pos over pow)。其他基础链要么坚持pow,要么坚持pos,要么混合pow+pos,都无法有效利用两者的优点和避免两者的缺点。
墨客采用分片技术,大幅提高网络性能,相比以太坊每秒7-14次交易速度,墨客可以提高100倍,在优化条件下,甚至到1000倍的处理速度。
墨客的子链设计,DAPP应用可以自定义自己想要的共识方式,让开发者自己根据业务的需要,来选择最合乎业务最优化的配置,为Dapp应用提供了非常灵活可扩展的架构。
墨客的原子跨链,可以兼容比特币和以太坊两大平台的代币和应用,将来还可以兼容其他基础链,使得墨客成为有跨链能力的区块链系统。
(墨客系统架构)
此外,墨客采用双层挖矿机制。底层的POW采用以太坊一致的挖矿方式。这类挖矿节点的数量在几千至上万。上层的挖矿采用多种挖矿方式,这类挖矿节点的数量可以是几十万至上百万。每个节点以随机的方式参与某个Micro-chain,提供服务,并获得收益。
针对交易成本问题,在墨客平台上创建DAPP必须支付Micro-chain中的每个区块的费用,以持续不断的方式,支付给参与上层挖矿的验证节点,这样就类似以每月支付水电账单的方式维持DAPP的持续运行。DAPP的使用者可以采用直接调用的方式,不需要支付任何gas费用,对DAPP的应用发起调用。如果需要防止用户滥用,DAPP自己可以实现相应的处理方式。
通过DAPP支付费用的方式,实现Token的二次分配,以吸引海量的用户来参与挖矿提供服务。因为上层的共识协议不需要消耗大量的能源来获得随机数,而是纯粹处理智能合约的执行或者服务,对系统的要求非常低。普通的嵌入式系统甚至手机都可以参与。这样,海量的节点提供的巨大的处理能力,然后通过分片(sharding)的方式可以支持成千上万的DAPP运行。反过来,DAPP持续的支付费用可以支持更多的上层矿工,这样就形成了一个开放的,正反馈的循环,使得系统成为一个巨大的DAPP生态圈。
墨客五大杀手锏
1、分层
墨客底层物理网用pow共识算法,上层智能合约的逻辑网用 pos。下层pow 全节点跑起来能有几万个节点,可以铺遍全球,全节点去中心化程度高,保证系统安全可靠,且pow是唯一经历过千万人使用验证过的可以大规模应用的去中心化共识模式。上层pos和子链自定义共识方式,提高效率和系统扩展性。
2、分片
分片,简单理解就是分组,一个网络有10000个节点,我们可以将该网络分为20个、每个由500个节点组成的分片,这是网络分片,此外还有交易分片、计算分片。
相比其他采用基础链采用侧链扩容方案,分片比侧链技术更优越。侧链是在链外(offchain),分片在链内(onchain)。分片能实现无线扩容,侧链无法做到。现在的以太坊是没有扩容性的,给以太坊增加几千个节点,网络反而会变慢,因为它需要协调节点。如果网络能进行分片,新加入的节点越多,扩容性越大。
墨客上层智能合约采用分片技术,将整个系统分成若干片,参与的节点越多,可分出的片越多,整个网络同时处理智能合约的数量就越多,那么处理的并发能力就越强,分片技术使得系统具有无限扩容能力。
3、子链
分片是去中心化系统提升性能的杀手锏,但作为底层平台,光有效率是不够的,扩展性也要强,能够支撑丰富的应用场景,生态才会繁荣。墨客的子链设计,具有高扩展性。
可扩展性,通俗理解就是一条高速公路,非常容易划分出一百条道路,有车上来跑,顺着你的路使劲跑,都能支持。墨客为Dapp应用提供非常灵活可扩展的架构,子链可以根据业务需要选择业务最优化的配置。
墨客用智能合约建立子链,而子链在单独的片上,并非把一个智能合约分解到不同的片里,系统并不需要片与片之间的通讯。DAPP应用在墨客子链,可以做bft,可以做pos,可以做tendermint,甚至可以做自己定义的任何共识方式,系统不会去改动现有的各种共识方式。
反观市场上大多数基础链,在设计上扩展性严重不足。例如,平台的共识算法是PBFT或DPOS,在此平台上搭建的应用都得跟公链采用同样的共识,无法根据自己业务特点进行调整。
4、异步合约调用
以太坊的同步智能合约调用,智能合约的返回和区块共识绑定在同一个区块,导致智能合约处理的总额受到区块时间限制。墨客采取了异步智能合约调用,使得调用和返回可以跨区块而不受到区块时间限制,大大增加了同时处理智能合约的数量。
如果你要烧一壶开水,你得放下手头所有的事情,等水烧开后才能接着干下一件事,这是同步调用。同样是烧一壶水,你烧水的过程中并行处理其他事,等水烧开了再关火,这是异步调用。异步智能合约调用提高系统处理交易速度,而以太坊的智能合约,目前还是同步调用。对以太坊来说,因为是同步调用智能合约,整个合约的完成,必须在一个区块里面进行。这样当共识节点给交易打包的时候,必须等待智能合约跑出结果。墨客的异步调用智能合约的功能,因为可以将智能合约的执行,跨过几个不同的区块,就突然产生了可以进行不同区块链的跨链功能。因为不同的区块链,具有不同的产生区块的时间,那么如果我在墨客上设定一个购买以太坊ERC20代币的合同,那么就可以在5秒钟里面,跨出墨客的当时的区块,然后合同通过链外通讯,等待以太坊的25秒的区块完成对应买卖,再在第N+2个墨客区块,完成这边的交易。这种原子交易,不同于目前各种跨链的第三方角色,都是通过建立一个中间托管账户,来完成。而且在合约中,你还可以定义看几个确认区块,再完成交易。而缺乏异步调用合同功能,是无法进行跨链的原子交换的。
5、跨链
当前两个区块链系统代币之间的兑换有两种方式:一种是场外点对点交易,这种方法缺点是低效且风险大。另一种方式就是目前普遍采用的中心化交易所,交易所作为中介结构,撮合不同代币资产之间交易兑换。中心化的交易平台的问题显而易见。在监管缺失的情况下,中心化交易所可能存在内幕交易,伪造交易,资金挪用等等。而且中心化的交易所很容易受到主权机构的控制。
当前跨链主要面临两个问题:
(1)需要跨链的每条链都支持闪电网络,也就是需要哈希锁和时间锁的功能。现有的链如果没有这个功能的话,需要进行硬分叉。很多情况下并不现实。
(2) 跨链交易的过程是个交互手动的过程。用户乙必须等待甲的公布,之后要确保在对方网络中递交合适的信息。如果需要实现自动化的话,会比较麻烦,需要额外的基础设施支持,比如类似Cosmos的拜占庭容错hub支持。
墨客采用系统特有的系统定时触发功能和子链的功能,完美解决了上述两个问题。系统定时触发功能是设置在指定的未来区块位置执行某个交易。这个设置是100%会被执行。墨客的跨链不止是公链自己内部子链与子链还有辅助侧链之间的跨链,更核心的是各大公链之间的跨链。
四年潜伏,振翅欲飞,墨客2018,精彩纷呈。
MOAC(墨客)Github仓库地址:
https://github.com/MOACChain/moac-core
https://github.com/innowells
欢迎所有开发者、DAPP项目方参与墨客公测,一起创造历史。