4.6 如何设计一个代币系统? - JoanJiao/TokenEconomyBook_Chinese GitHub Wiki

如果你想将你的业务或社区代币化并使其转变为 Web3,你需要如何处理你的代币设计?你必须问自己哪些问题?你的团队需要哪些专业知识才能正确地“设计”或“工程化”这些代币?本章的目的是,考虑到你要创建的代币类型,告诉你需要了解哪些与新代币系统的设计和工程化相关的问题。

设计思维方法在初创公司的产品设计实践和 Web2 的扩展中得到广泛采用,特别关注以用户为中心的设计或以人为中心的设计。“设计思维”一词可以追溯到 1950 年代,并在 1990 年代被商业界广泛采用。其目的是将创造性技术应用于以解决方案为导向的新颖的问题解决技术,但其方法是整体的。设计思维方法有助于战略性地规划任何新技术、产品或服务的概念。该过程的范围从问题定义、构思、以解决方案为中心的策略、建模、原型设计、测试和评估,包括其迭代反馈循环。

随着 Web3 的兴起,越来越多的“代币工程化”社区在设计代币系统的背景下使用“工程化(engineering)”一词。 ^1 。使用工程化这个词(而不是设计)背后的动机是为了公平对待 Web3 网络及其许多潜在应用的基础设施和关键任务性质。Trent McConaghy 说:“工程化是对系统进行严格的分析、设计和验证;所有这些都得到了将理论与实践相结合的工具的帮助。工程化也是一门责任学科:对你建造的机器在道德和专业上负责,正如塔科马海峡大桥的景观和铁环所示。”他可能是第一个创造“代币工程化(token engineering)”一词的人,希望“代币生态系统设计也能成为一个严格分析、设计和验证的领域。它将拥有使理论与实践相协调的工具。它将以责任感为指导。”

“设计(design)”和“工程化(engineering)”这两个术语密切相关,但并不相同。相反,它们相互补充。虽然“设计”^2 一词可能是一个更知名、更直观的术语,具有更主观、创造性甚至艺术化的含义,但“工程化”一词倾向于更强调技术方面,将无效的部件组合,以创造一个可预测和稳健的整体。“工程化是指使用科学原理来设计和建造机器、结构和其他项目,包括桥梁、隧道、道路、车辆和建筑物。” [^3]。因此,设计是工程化过程的一部分。术语“工程化设计(engineering design)”用于描述工程过程是开放式的,因而更加主观。

与电气工程化和公共政策设计类似,代币工程化是关于系统及其假设的严格分析、设计和验证。他们的假设需要通过将理论与实践相协调的工具来辅助。然而,与电气工程化不同,设计人类行为更类似于指导国民经济和公共政策设计,因为它需要更多“模糊”的建模技术。随着人工智能和更好的模拟工具的出现,我们或许能够设计和部署更有效的目的驱动型代币,这些代币还考虑到未知的概率分布、未知的代理或对抗性行为、潜在的网络外部性和“公地悲剧”对社会其他部分产生的影响。

虽然“代币工程化”社区指出了严格的软件工程实践的必要性,但在我看来,在所概述的理论和实践中,它主要集中在我所说的代币系统的“技术工程”方面。看看大多数区块链/web3/token 初创公司的团队成员组成,就很好地反映了这种以技术为中心的理念。然而,工程化是创造一种最终且始终具有社会目标的技术实践。从纯粹的技术角度来看待工程化,会让我们对为什么以及如何构建技术抱有一种简化的心态。

在设计代币系统时,人们似乎越来越意识到需要在更广泛的意义上使用“工程化”一词。 Web3 及其分布式账本和智能合约为互联网提供了治理层和经济层。如果出现问题,附带损失会很高,正如我们在 2016 年的“TheDAO”漏洞利用或 2017 年的“Parity”多重签名合约漏洞利用中看到的那样,导致数百万欧元从一个或多个智能合约中流失,或者最近的2020 年 DeFi 黑客。因此,我建议我们明确地将代币工程化区分为“技术工程化”、“法律工程化”、“经济工程化”和“道德工程化”几个方面。

图 4.1 代币工程化

技术工程化

在创建代币系统时,需要决定是创建基础设施代币还是应用代币,以及如何在技术上实现代币系统。 **“基础设施代币”**是引导公共区块链网络(第一层)或第二层协议(例如状态通道)或其他 Web3 协议(例如分布式文件存储网络)的代币(了解更多:第 1 部分 - Web3,有状态的网络)。这些基础设施代币是目的驱动型的,激励对所述网络的集体维护。工程化过程中最重要的设计问题与安全性、可扩展性和隐私问题有关。

  • 安全方面解决了加密经济机制的设计,以提供所需的安全级别(了解更多:第 1 部分 - 代币安全和区块链以及其他分布式账本)。

  • 可扩展性方面解决了安全性、去中心化和可扩展性之间的权衡。在实现可扩展性的同时保持安全性和高度去中心化是一个需要权衡取舍的工程问题。目前正在测试不同的可扩展性技术,例如分片、互操作性、状态通道和替代加密工具,以解决这些问题(了解更多:附录 - 可扩展性)。

  • 隐私方面解决了应该使用什么类型的密码技术来实现正确的“隐私设计”问题。在早期的区块链网络中,代币及其交易所中包含的数据对任何人都是公开的。通过额外的加密机制,可以以更加保护隐私的方式管理访问授权(了解更多:第 3 部分 - 隐私币)。然而,这并不是免费的,因为每次额外的加密都是合约调用的成本。

“应用代币”由底层分布式账本和其他 Web3 网络管理。技术工程化过程需要考虑使用哪些基础设施和代币标准。它还需要考虑代币系统的潜在互操作性需求。

  • 使用的基础设施:由于应用代币由分布式账本管理,因此底层基础设施必须满足代币的所有隐私、可扩展性、去中心化和安全需求。因此,在权衡一种解决方案和另一种解决方案时,需要考虑基础设施限制。

  • 互操作性:尽管分布式账本目前的互操作性有限,但仍有一些解决方案可能有利于一个系统而不是另一个系统。从长远来看,根据你的代币系统需要多少互操作性,需要考虑基础设施问题。

  • 标准:技术工程化流程可以从越来越多的标准化代币合约列表中进行选择。使用的代币标准取决于代币应具有的属性(隐私性、可替代性、可转让性、到期日),而属性取决于代币的用途,同时考虑到所有经济、法律或道德约束。

图 4.2 代币工程化的四个方面

法律工程化

当我们处理“简单的代币系统”时,代币的法律工程是主要任务。术语“简单”通常用于复杂系统[^4] 领域。在代币工程的背景下,“简单”一词是指一个潜在代币的业务或治理模型的动态是众所周知的,例如 (i) 中央银行货币,(ii) 证券和其他资产,(iii) 识别和认证过程,(iv) 投票权,(v) 代金券和优惠券,或 (vi) 入场券和其他访问权。这些用例各自的业务或治理流程已经过数十年甚至数百年的压力测试。多年来,在反复试验的过程中,潜在的漏洞已经被堵住,并且监管已经到位。此类业务/治理流程的代币化主要需要法律工程,即使现有资产、访问权和投票权的代币化合法地符合当地法律。因此,法律工程是指传统治理模型的代币化,其中智能合约取代了许多现有的基于人工/纸张/客户端-服务器的操作。身份代币、货币代币、资产代币或投票权代币的法律工程过程中的相关问题是:

  • 需要考虑哪些跨国/国家/地方司法管辖区?

  • 需要考虑哪些监管机构?

  • 我们如何设计智能合约以使其合法合规?

  • 是否需要更改管辖权以适应代币化和 Web3 的新可能性/动态?

经济工程化

在设计“复杂的代币系统”时,首先需要的是经济工程。社区的激励和治理规则与“目的驱动型代币”相关联,这些代币通过自动化机制引导社区的集体行动(了解更多:第 4 部分 - 目的驱动型代币)。治理模型大多是未知的,并且是在没有中介的情况下通过使用智能合约和分布式账本来规范 Web3 上集体行动的无数新的可能结果。许多人将这些代币称为“实用代币”、“工作代币”或“共识代币”。所有这些代币的共同点是它们引导集体行动朝着一个共同目标前进。此类共同目的可能是共识、资源共享、声誉和管理、减少二氧化碳排放等。设计此类系统所需的工具可以在经济学、网络科学、网络物理系统和社会技术系统中找到。

  • 经济学涉及经济制度、政策和伦理的研究,包括在商品和服务的生产、分配和消费背景下的资源分配、财富差距和市场动态等问题。

  • 网络科学研究复杂的网络,从生物网络到经典电信网络,从计算机网络到社交网络。使用的方法包括数学、物理学、计算机科学和社会学。

  • 网络物理系统是由基于计算机的算法控制或监控的机制,与互联网及其用户紧密集成。例子包括电网和大型交通系统,它们都有一个共同的特性,即不受控制的人类行为者的行为可能会以完全违反直觉的方式造成不良甚至不安全的条件。

  • 社会技术系统最初是在 1940 年代创造的,指的是私人和公共组织与社区的社会和技术方面的互动,包括线上和物理世界。它是指对社会使用的复杂基础设施的研究,例如互联网和其他通信网络、供应链和法律制度以及人类行为。这种关系可以是简单的(线性因果关系)或复杂的(非线性且难以控制和预测)。

在此类设计过程中需要回答的主要问题是

  • 你的代币系统的目标:你想创建什么样的系统?

  • 你需要多少种不同的代币类型?一些代币系统有多种代币类型来引导网络内的集体行动。本书前几章解释过的例子是去中心化社交媒体网络 Steemit(STEEM、SP、SBD)或稳定币 MakerDAO(DAI、WETH、PETH、SIN、MKR)。其他代币系统只有一个代币,例如比特币网络。通常可以假设,代币类型越多,控制该网络的网络动态就越复杂。

  • 目的:明确定义代币目的对于进一步的设计过程很有必要。在分析了 100 多个代币系统后,似乎目的越明确,网络的弹性就越大。我个人的看法是,一个代币应该只有一个目的。如果你有多种用途,那你可能需要更多的代币类型。否则,你的代币系统机制设计可能会变得过于复杂。

  • 属性:一旦定义了目的,就可以推导出代币的属性,同时考虑可能影响代币系统动态的所有经济、法律或道德约束。属性选择和潜在动态的例子包括: (i) 可转移性:代币是否与唯一身份(个人或机构)相关联,或者它们是否具有有限的可转移性?根据用例,答案会有所不同。有限的可转移性会自动降低代币的流动性,使其无法作为交换媒介。例如,信誉代币需要与网络中的个人或组织的身份相关联,并且根本不应该具有可转移性。可转移的声誉代币可以在自由市场上交易,使其不代表网络中的个人行为,就像 Steemit 生态系统中的“Steem Power”代币一样。 (ii) 可替代性:如果代币相同且不绑定身份,则需要确定代币系统的货币政策,包括通货膨胀率,因为代币可以充当交换媒介(支付代币)。 (iii) 到期日:如果代币有到期日,这将减少代币的通货膨胀。在优惠券或入场券和其他访问权限的情况下,到期日期也可能是可取的。

  • 证明......:代币的属性是建模容错机制以引导网络朝着集体目标前进的基础。这种容错机制的目的是定义代币的铸造行为,因此它能够抵御腐败、攻击或错误。工作量证明已被证明具有弹性并且可以实现目的(P2P 交易)。另一方面,Steemit 网络的声誉代币(Steem Power)没有设计弹性代币来适应其目的(作为指示质量内容的容错声誉代币)。

道德工程化

代币系统的设计也需要伦理和政治思考。我们要创建什么样的系统不是技术问题,而是社会经济和政治问题。需要回答政治、道德和伦理问题,最好是在设计此类系统之前。如果我们未能将伦理问题纳入此类系统的设计思维过程,我们将产生“协议偏差”。历史表明,最终所有这些问题都需要得到解决。然而,如果这是事后进行,在创建系统之后,由于系统惯性,这些偏见很难扭转(参见剑桥分析丑闻和随后关于隐私、控制和社交媒体治理的讨论,以及 Facebook 网络目前面临的挑战)。但是,我们不必重新造轮子。我们可以将工程伦理[^5] 应用于基于互联网系统的创建,这是硅谷和其他互联网时代的大玩家未能做到的。在代币设计方面,两个最重要的伦理和政治问题是:

  • 透明度与隐私:公共利益和私人利益之间的权衡是一个由政治学和社会学研究过的古老政治讨论。虽然个人隐私很重要,但它可能会损害公共利益。让我们以供应链透明度为例:虽然大多数消费者可能同意他们希望获得更多关于商品和服务供应链中发生事情的信息,但提供这种透明度的行为可能会侵犯个人权利(即工厂中监控工人权利的摄像头也侵犯了工人的隐私,具体取决于数据的披露方式)。因此,在回答此类问题时,聘请具有正确专业知识的社会科学家至关重要。

  • 权力结构:去中心化、安全性和可扩展性之间的权衡是区块链网络中讨论最多的话题。权力下放的三难困境提出了一个政治问题,即需要/想要多少权力下放,具体取决于用例和社区的价值观。去中心化程度越高,网络越慢,反之亦然。否则,必须牺牲网络的安全性。在像 Steemit.com 这样的社交媒体网络上设计声誉代币时,权力结构也很重要。在其目前的设计中,大多数声誉代币(Steem Power)由网络中的少数大玩家拥有,只有他们能决定哪些故事相关或不相关。

为了涵盖上述所有方面,需要一支跨学科团队,在工程过程的所有四个领域都具备必要的专业知识,携手合作。除了技术工程师之外,还有律师、经济学家和社会科学家作为团队的一员,在执行层以及以下工作,对于开发有弹性的代币系统至关重要。然而,跨学科工作需要时间和精力,因为所有四个类别都重叠并且学科之间的交流需要一些努力。 Web1 和 Web2 的开发方法简捷粗暴,差不多相当于“先破解,再运转(hack now and pivot later)”,这在 Web3 中基本行不通。一旦协议中出现偏差,如果没有所有网络参与者的共识,就很难恢复更改。因此,我们需要从硅谷的“基于模仿的开发(meme-based development)”转向“基于工程的开发(engineering-based development)”,包括工程过程的所有方面。 “简单的代币系统”可能主要需要法律和技术工程,而“复杂的代币系统”则需要在所有四个领域都取得良好的平衡。

本节概要

“设计”和“工程化”这两个术语密切相关,但并不相同。相反,它们相互补充。虽然“设计”一词可能是一个更广为人知和直观的术语,具有更主观、更有创意甚至更艺术化的含义,但“工程化”一词往往更强调技术方面,将无效的部件组合,以创造一个可预测且稳健的整体。

设计是工程化过程的一部分。术语“工程设计”用于描述工程化过程中开放且最终更加主观的部分。与电气工程和公共政策设计类似,代币工程化是关于系统及其假设的严格分析、设计和验证。他们的假设需要通过将理论与实践相协调的工具来辅助。与电气工程不同,设计人类行为更类似于指导国民经济和公共政策设计,因为它需要更多“模糊”的建模技术。

随着人工智能和更好的模拟工具的出现,我们或许能够设计和部署更有效的目标驱动型代币,这些代币还考虑到未知的概率分布、未知的代理或对抗性行为、潜在的网络外部性以及社会其他部分引发的“公地悲剧”问题。

工程化是创造一种最终且始终具有社会目标的技术实践。从纯粹的技术角度来看待工程化,会让我们对为什么以及如何构建技术抱有一种简化的心态。在设计代币系统时,人们似乎越来越意识到需要在更广泛的意义上使用“工程化”一词。

Web3 及其分布式账本和智能合约为互联网提供了治理层和经济层。如果出现问题,附带损害会很高。

技术工程涉及创建基础设施代币或应用代币的技术问题,以及如何在技术上实现代币系统:是要创建基础设施代币还是应用代币?安全方面解决了密码经济机制的设计,以提供所需的安全级别。可扩展性方面解决了安全性、去中心化和可扩展性之间的权衡。隐私方面解决了应该使用哪种类型的密码技术来实现正确的“设计隐私”问题。

当我们处理“简单的代币系统”时,代币的法律工程是主要任务。术语“简单(simple)”通常用于复杂系统领域。在代币工程的背景下,“简单”一词是指一个潜在代币的业务或治理模型的动态是众所周知的,例如 (i) 中央银行货币,(ii) 证券和其他资产,(iii) 识别和认证过程,(iv) 投票权,(v) 代金券和优惠券,或 (vi) 入场券和其他访问权。对已知的业务/治理流程进行代币化需要使现有资产、访问权和投票权的代币化符合当地的法律。

在设计“复杂的代币系统”时,经济工程化是首先需要考虑的。社区的激励和治理规则与“目的驱动型代币”相关联,这些代币通过自动化机制引导社区的集体行动。设计此类系统所需的工具可以在经济学、网络科学、网络物理系统和社会技术系统中找到。在此类设计过程中需要回答以下问题:你要创建什么样的系统?你需要多少种不同的代币类型?目的是什么?需要具有哪些属性:可转让性、可替代性、到期日?

代币系统的设计还需要道德和政治思维。我们要创建什么样的系统不是技术问题,而是社会经济和政治问题。需要回答政治、道德和伦理问题,最好是在设计此类系统之前,其中最重要的是围绕“透明度与隐私”和“权力结构”的问题。如果我们未能将伦理问题纳入此类系统的设计思维过程,我们将产生“协议偏差”。

除了技术工程师之外,还需要律师、经济学家和社会科学家作为团队的一员,在执行级别及以下参与工作,这对于开发有弹性的代币系统至关重要。然而,跨学科工作需要时间和精力,因为所有四个类别都重叠并且学科之间的交流需要一些努力。

章节引用和延伸阅读

脚注

[^4]: “复杂系统理论研究系统的部分与系统的集体行为和系统环境之间的关系。复杂系统与其他系统的不同之处在于,系统行为不能轻易地从网络参与者引起的状态变化中推断出来。突现、非线性、适应、自发顺序和反馈回路等特性是复杂系统的典型特征。忽略这些困难的建模方法将产生对建模和控制这些系统没有用的模型。” 沃什米尔,S.; Zargham, M.:“加密经济系统的基础”(参见参考资料)。

[^5]: “工程伦理确定了工程师对公众、客户、雇主和专业考虑的特定优先级。许多工程专业协会已经制定了道德规范。有些规范可以追溯到 20 世纪初的几十年,它们已经或多或少地被纳入几个司法管辖区的监管法律中。” (https://en.wikipedia.org/wiki/Engineering_ethics#General_principles) 或者,正如美国土木工程师协会所说:“工程师应将公众的安全、健康和福利放在首位,并应努力遵守这些原则,履行其专业职责中的可持续发展。”