在 12 月 3 日的首届波卡社区会议 Polkadot Decoded 上,波卡创始人 Gavin Wood 和主持人 Laura Shin 进行了炉边谈话。

以下是 PolkaWorld 从 Gavin 的分享中总结的一些干货内容,本篇是分享的上半部分,主要包括波卡的愿景、波卡的抽象性、平行链插槽拍卖、PLO 和 1CO 的区别等,下半部分内容很快也会发布在 PolkaWorld 公众号上。

创造波卡的愿景是什么?波卡试图解决哪些问题?

波卡希望创造更通用和更抽象的模型,来解决区块链行业的一些问题。

比特币开启了基础的脚本语言,以太坊扩展了更多金融交易的方式,而波卡希望去创造一个更加通用的模型。在此基础上,我们也希望去解决一些基本的可扩展性的问题,比如怎样达成更多的交易,怎样处理网络上超级多的工作。所以这两个话题是共生的,就是通用性和可扩展性。

我们的愿景就是让 “区块链再次伟大(Make blockchain great again)”,带领区块链向前迈出一步,我们想解决我们已知的现存问题。其实我们如果能穿越到四五年前,就会发现那时人们也在谈论 “怎样在多个节点上处理不同的交易”,“我们确实需要变得更加通用化”,这些其实就是波卡试图解决的问题。

具体来说什么是通用和抽象的?你说过波卡是一个元协议,可以解释一下这是什么意思吗?

元协议的 “元” 的意思就是超越,“元协议” 就是指管理着其他协议的协议,你可以在它的基础上再建立其他的协议,它是协议的协议。我在这里提到元协议,是因为它是一个更加底层的、基础的、简单的协议,我们在它的基础上再去建立我们一般认为的那些协议。

举个例子,比特币的协议就是把区块散布出去,当你执行和解释区块的时候,区块里的交易就像一些脚本,但意思就是把某些比特币发送到某个地址,这就是一个协议,通过它比特币网络的节点就知道如何去解释这些区块了,本质上它就是一门语言。但是一旦你确定了这个协议,它就像是刻在了石头上一样,很难再去改变、改进、增加新的功能、修复 bug,它非常死板。而元协议是在该协议的下面一层,定义着该协议。好处就是因为该协议是建立在元协议基础上的,你可以很轻松地调整它,只需要遵循元协议的规则就行,而主协议可以随着时间去适应、进化和迭代。

那么下一个问题就是 “如何去改变或迭代元协议?”。我们的想法就是我们让它尽可能简单、抽象。我们去选择一个已有的、已经被验证过的技术,很多聪明人和利益相关者已经讨论过并得出结论 “这可能就是做元协议最好的方法”。所以我们选择了 WebAssembly,因为 WebAssembly 差不多是行业标准,它已经经过了迭代。最开始其实有两个单独的技术,一个由 Mozilla 构建,一个由 Google 构建,它们揉合到一起形成了 WebAssembly。因为已经经过了很多迭代,我们不太可能需要再去改变它,所以它是一个很好的基础,我们可以在这个元协议之上去构建一些东西,基于它去定义其他所有的东西,这就是元协议的来源。

所以波卡协议,像平行链、治理、余额、Dot 协议、staking 等等,这些东西都在不断变化,但它底层是不变的元协议,这就是为什么我们选择了像 WebAssembly 这样经过测试的科技。元协议确实主要关于灵活和抽象,因为在它之上波卡协议并不是非常抽象,它有特定的分片、扩展逻辑等,它仍然是很多观点的集合,而 WebAssembly 就完全不带任何观点,它甚至都不是我们的观点。

“元协议 + 协议” 是个二元结构,其实从比特币到以太坊再到波卡的历程也一样,比特币基本是不可编程的,以太坊可编程,但是计算模型非常受限,比如 gas、动态 gas 价格、动态资源计算、有限的存储等。而波卡完全改变了这种模型,因为我们有平行链,它更加抽象和通用,它不只是智能合约那样的一小段代码,而是一整条平行链,可以做任何你能想象到区块链可以做的东西,它要抽象得多。

为什么说要抽象得多呢?你可以在区块链里实现一个智能合约,Edgeware 和 Moonbeam 等已经在做这件事了,但你却不能反过来在智能合约里建立一条区块链,智能合约没有那么多计算能力,就像你不能把鞋子塞到脚里一样。所以我们说波卡的模型比智能合约模型更通用。虽然说这不意味着平行链任何时候都比智能合约更有用,但任何你可以用智能合约做到的事,都可以用平行链来做,反之则不然。

波卡有平行链,你可以定义一下平行链,和它跟平行线程的区别吗?

平行链是就一个一个的卡槽,是有限的,就像电脑的核一样,现在一些电脑有 6 核、8 核甚至更多核,这些核可以处理特定应用的计算。比如你开了很多的窗口,那么可能有一个核在处理视频,另一个核在处理邮件,还有一个核在播放音乐。它们可以做不同的workloads,平行链也一样,只是在区块链里,其中一条平行链可能在做智能合约交易,另一条可能在做转账交易,还有一条在做治理,还有一条在做 staking 优化,所以在每个时间段内都可以有多条平行链同时工作,我们是用区块来衡量时间,所以就是在某个特定的区块中可以同时做这么多事。

而平行线程,就是当某个应用并不需要在每一个区块中都处理交易时用,可能每 10 个区块需要处理一次,也就是 1 分钟而不是 6 秒一次交易。但这个时间也是合理的,毕竟比特币交易有些时候要 1 个小时呢,所以 1 分钟对有些应用来说也够用了。对于这些应用就更适合用平行线程。

你可以举个例子,哪些应用更适合用平行线程而不是平行链吗?

其中一个例子就是预言机(Oracle),一些场景是从外部世界上传数据到链上,对于一些类型的数据来说,每 6 秒就上传一个好像太过了,比如天气数据可能每天或者每小时传一次就行了,而且也不需要非常精确地在某个时间上传。这种场景就很适合用平行线程。

另一个例子就是一些传统应用,比如一个业务主要在美国的保险公司,一般来说大家是不会在凌晨 4 点去处理保险理赔的,一般都是在白天的工作时间处理。所以这类业务也比较适合用平行线程,因为 60% 的时间都不需要处理交易。

平行链卡槽是有期限的,那么建立在那些平行链上的应用比如说一个预言机如果想一直运行下去要怎么办?

如果你在前几年问我这个问题的话,可能还没有很好的解决方案,不过在大约 1 年半前我们提出了平行线程。平行线程就是即用即付的平行链,平时它都不工作,只有在你付钱的时候它才工作,但是你一次也只用付一个区块的钱。

如果你的区块链没有用,那么就很难再筹集资金来续租插槽,但(失去插槽)也不是一夜之间发生的,你有 18 个月说服别人你的链有用,让你的 token 有价值,从而进行续租。你有 18 个月的时间来确保下一个 6 个月的租期。

就算你最终无法续租,你也不是一下就变成一缕青烟凭空消失了,你的链还在那儿,上面的应用可以使用被动数据迁移,仍然可以用即用即付的方式使用平行线程来继续运行。这就像你买了一个手机号,套餐费是一个月 50 美金,如果哪天你不想用套餐了,还可以保留号码,但是改成按通话时间付费用,多少付多少。

这个问题是 Twitter 上很多人关心的,平行链插槽拍卖会什么时候进行,你们什么时候把它开发好?

在我们知道平行链具体什么时候上线之前,都不会去进行拍卖,因为大家需要锁定他们的 DOT 的,如果大家都不知道自己的币到底要锁多久就很不好。

所以说平行链的拍卖,要等我们在其要上线的链上(如 Kusama/波卡)进行了平行链的测试后再说。

你提出了 PLO(平行链租赁发行)的概念,它跟 1CO(首次代币发行)有什么区别?它如何规避 1CO 在美国面临的监管问题?

我们把平行链的租赁叫做 “众贷(Crowd-loaning)”,它跟众筹(Crowd-funding)类似,但是你不用真的交出你的辛苦钱来换回代币,它只是一种贷款,你把你的 DOT 锁定特定的一段时间,解锁后你还可以拿回你的 DOT。

重要的是锁定的过程发生在波卡中继链上,你不用把钱转给项目方,所以也不用担心项目方跑路。波卡协议本身保证了这些币在锁定期结束后会回到你的手里。这种锁定并不涉及转账,所以这对监管方来说可能并不是一个问题。

想要在波卡生态中开发新项目吗?想要获得 Gavin 等重量级导师的亲自指导吗?由 PolkaWorld 社区、数秦科技、巴比特、Nano MG 创新空间、imToken、SimpleChain、Hypersphere Ventures、IOSG、Acala Network、Digital Renaissance Foundation、Patract Labs、Polkadot 生态研究院、白话区块链、Dorahacks 联合发起等发起的「Substrate 创业营」正在招募中,助力 Web3.0 生态创新产品的诞生和成长!点此了解详情和报名。