学院 最新消息 文章

让 DApp 重构规范开发框架

2020.05.11

2017-2018 年间爆发的区块链投机热潮,让所有人都只关心 Token 的价格。我们一边炒作,一边就忘记了一开始到底想用它来干嘛;就好像是房产泡沫的时候,大家都忘了房子不仅仅是一种炒作资产,也是一个用来居住的空间。

区块链履行了受信任第三方的功能。要想诉诸实践,仅仅知道这一点是不够的;我们还必须理解它对世界经济和互联网的意义。关于区块链的应用,我们团队已经在金融机构和创业公司中研究和实验了多年。靠着这些经验,我们开始意识到,区块链 —— 作为受信任的第三方 —— 可以实现两大关键功能:

虽然 17-18 年的泡沫破灭了,但大家一开始就关注到了 Token,不是一个坏事。Token 就是这两大关键功能的赋能器。我们管这些致力于让 Token 发挥区块链关键功能的技术叫 「Tokenisation (代币化)」。Token 化的权利可以在市场上交易、也可以在多个系统中整合,最终会形成无摩擦的市场并使无限制的整合成为可能。

哪些信息应该被 「存储」(代币化)到区块链上?我们来看两个例子:

案例:USDC

a)代表我持有 100 USDC 的信息

b)代表我的美国公民身份的信息

c) USDC 的 Q&A;(使用说明)信息

d)描述 USDC 交易逻辑的信息

e)表示 USDC 铸造逻辑的信息,例如:要在 Circle 上开设一个账户,并把美元转入某个银行账户,等等。

案例:表示一辆车的所有权的 Token

a)表示我拥有这辆车的信息

b)代表我的驾照的信息

c)汽车的使用说明书

d)这辆车相关权利的交易逻辑,比如转让逻辑、卖出逻辑、用于担保的逻辑

e)这辆车的运行逻辑,包括开门、关门、启动、停车。

答案是 a 和 d

如果是无关所有权的信息,比如 c 和 e,你可以使用数字签名。如果无关所有权的转让,比如 b,可以使用 attestation。

区块链是用来代币化可转让权利(比如所有权)并定义转让逻辑的。关键在于,所有这些信息都关联着一个 Token 化的权利,进而让这个 Token 成为释放 Web 3.0 功能的关键点。

我们这个行业此前的工作几乎都集中在增强技术上(比如交易吞吐量)。TokenScript 却致力于代币化,属于功能而非技术维度。TokenScript 是一套标准,让区块链技术栈能够完整,并为经济活动和互联网提供功能。

一个 TokenScript 文件由两部分组成:1)让 Token 在用户的钱包乃至在跨越应用时能够正常工作的 JavaScript;2)能够提取 Token 的状态和值的 XML 数据。并且,还有沙盒化且经过代码签名的模式来进一步保证文件的安全性。简言之,它就像 Token 的安全前端。

一般来说,TokenScript 是由 Token 的建模者(modeller) —— 即开发底层智能合约(用于描述 Token 的交易规则)的团队 —— 来创建的。

TokenScript 让 Token 运行时的环境(用户代理或者交易引擎)能够:

任意参与者都能使用 TokenScript 来展示 Token 和使用功能,包括通用的市场平台、用户代理人和第三方应用。我们用 「congtext (运行时环境)」 来代指这些参与者。

TokenScript 是一种 XML 方言。TokenScript 文件描述了由 Token (通过智能合约或其它方式)提供的功能、在用户界面展示 Token 的方法、Token 所使用的 ERC 代币行为模板,以及构造交易和展示 Token 所需用到的 JavaScript 代码。它也定义了 attestation 如何用来修饰、转换和验证交易。

把 TokenScript 文件当成项目文件,而规范化的版本当成最终可分发的工程目标,你就更容易理解其中用意了。

XML 有确定的标准和已经经过时间考验的工具,对我们很有帮助:

A. XML 规范(c14n)指定并提供了一种可转移的方法来表示一个 XML 文件,并能在文件传输中始终保持同样的格式。

B. XML 数字签名(基于对标准化 XML 文件的签名)

C. XML 使开发者能够公开列举出并描述属性和 操作 / 交易。虽然 Json 也可以做得到,但其形式可能是在字典或者字符串中列举内容,这些文本很难执行模式、验证和追踪模式更改。

D. 标准化的静态类型,使用 XML 我们可以很容易地执行 ASN.1 变量编码来保证这些变量与定义一致。

这些方面加总在一起,我们就能保证,给定的一个经过签名的标准化 TokenScript 文件没有被篡改过。如果不使用 XML,那就必须重新发明 XML 的这些关键属性并使之可用。

最终来说,如果我们把 TokenScript XML 文件看作是项目文件,我们就可以预见:在未来,我们可能会开发出工具来管理它们,而不是依赖于直接编辑 XML 文件;然后,文件自身的可编辑性就变得没那么重要了,而文件的完整性会变得更加重要。

作者 : 以太坊爱好者

相关推荐