区块链:a16z:早期代币设计中的7个关键问题

原文:《7SanityChecksBeforeDesigningaToken》byGuyWuollet

编译:Sissi

代币是一种非常强大的新型原语,可以通过多种方式定义;在文章「Tokenology:超越代币经济学」中已经阐述了为什么我们应该将代币的研究和设计考虑得更广泛,而不仅仅是“代币经济学”。

代币为设计带来了非常丰富的空间。但是我们仍处于探索代币设计的早期阶段,更不用说改进了。在这里,我们所追求的圣杯就是计算机科学家常常称之为“龙书”的现代版。这本书指的是《编译原理》,有时也可能指早期版本的该书或Aho和Ullman的早期作品《编译器设计原理》。该书统一、定义并影响了几代计算机科学家对编译器设计的研究。它影响了许多人,以至于该书的两位作者在几年前被授予了ACM图灵奖,其中一位是“为编程语言实现打下基础的算法和理论”,另一位是“通过在他们的高度影响力的书籍中综合这些结果和其他人的成果,教育了几代计算机科学家”。

彭博社:OpenSea正与a16z等机构讨论新一轮募资,估值超120亿美元:12月6日消息,据彭博社报道,OpenSea创始人兼首席执行官DevinFinzer证实,该公司正在与投资者讨论筹集额外资金的问题,其中包括A16Z、FoundersFund、Coinbase和Blockchain Capital。

熟悉谈判的人士表示,投资者正寻求以120亿美元以上的估值投资约10亿美元。OpenSea在今年7月份筹集第二轮资金时,投资者对其估值为15亿美元。[2021/12/6 12:54:54]

我们距离像编译器设计领域里的“龙书”那样的代表性著作还有很长的路要走,现在要编写一本关于代币的权威指南还为时过早。我们的研究主管TimRoughgarden指出,距离这个目标可能还需要十年左右的时间,这是一项长期的工作。在20世纪50年代,编译器设计是一个非常复杂和混乱的计算机科学难题。《龙书》的出现,通过阶段性应用严格的原则,帮助将这个问题转化为了一个更好解决的问题。

但一些早期的机会和陷阱已经变得清晰起来了。因此,我认为,如果我整理一份我们团队在与其他人进行代币设计时经常讨论的一些合理性检查列表,那么这对于那些正在构建代币的人将是有帮助的。我还鼓励大家观看EddyLazzarin最近关于代币设计的演讲,其中涵盖了心理模型、常见模式和陷阱、当前代币的功能以及许多尚未探索的设计空间。

Syndicate宣布完成2000万美元A轮融资,a16z领投:去中心化投资平台Syndicate宣布完成2000万美元A轮融资,AndreessenHorowitz(a16z)领投,Coinbase Ventures、AshtonKutcher、Snoop Dogg等超150位投资者参投。Syndicate旨在通过让人们建立去中心化自治组织(DAO)来实现投资民主化。今年7月,Syndicate曾筹集80万美元,100位投资者参投,其中包括一些加密领域的大腕——Balaji Srinivasan、Jeremy Allaire、Meltem Demirors等。[2021/8/31 22:50:06]

实际情况是,许多团队试图为自己的项目找到“正确”的代币设计,但通常缺乏测试过的设计框架,因此遇到了其他人曾经遇到的相同挑战。幸运的是,也存在早期的成功案例和“好”的代币设计示例。最有效的代币模型将具有与其目标独特的元素,但大多数有缺陷的代币设计都共享一些常见的缺陷。因此,这里列出了一些有用的提示,以避免最常见的失败模式。

#1设定明确的目标

在设计代币时最大的困难是在明确目标之前构建一个复杂的模型。没有所谓的好代币设计或坏代币设计——只有实现你的目标的代币设计或者没有实现目标的代币设计。

a16z完成两支新基金的募资,管理资产规模达165亿美元:a16z宣布完成两支新基金的募资,分别是13亿美元的FundVII基金和32亿美元的GrowthII基金,至此a16z管理的总资产规模达近165亿美元。其中,FundVII」基金是一支投资于消费者、企业和金融服务技术的早期基金,而GrowthII基金则是一支后期阶段的基金,投资于a16z的所有核心垂直领域:消费者、企业、金融技术、生物和加密。[2020/11/21 21:35:14]

第一步应该始终是严谨地审视目标,并确保你充分理解它:是什么,为什么重要,你真正想要实现什么?没有严谨地定义目标通常会导致重新设计和浪费时间。明确定义目标还有助于避免“为了代币经济而代币经济”的问题,这是对一些代币设计的常见批评。

此外,目标应该针对代币具体而言。这可能看起来很显然,但经常被忽视。以下是一些具体的代币目标示例:

一个游戏想要设计一个最佳的代币模型,以实现可扩展性并支持模组化

一个DeFi协议想要设计一个最优的代币模型,以在参与者之间分配风险

一个声誉协议想要确保资金不能直接用于声誉

一个存储网络想要保证文件低延迟可用

一个质押网络想要提供最大的经济安全

风投a16z:尽管加密周期“混乱” 但总能带来新项目:硅谷顶级风投机构Andreessen Horowitz(a16z)称,尽管加密周期看起来“很混乱”,但它们总是能带来新的想法、项目和初创企业。未来几年,技术人员和企业家将继续推动加密技术的发展。(TheBlock)[2020/5/18]

一个治理机制想要获取真实偏好或最大参与度。……列表可以不胜枚举。代币可以支持任何用例和目标,而不是反过来

那么,如何开始明确目标呢?明确的目标通常来自于一份使命宣言。虽然使命宣言往往是高层次和抽象的,但目标应该是具体和简化到最基本的形式。

我们以EIP-1559为例。Roughgarden提出的EIP-1559的一个明确目标是:“EIP-1559应通过易于估算费用的优化方式,改善用户体验,使其在需求急剧上升时,能够以‘显而易见的最优出价’的形式存在。“

他还提出了另一个明确的目标:“我们是否可以重新设计以太坊的交易费用机制,使得设置交易的gas价格更像在亚马逊购物?理想的情况是一个公布价格的机制,即为每个用户提供一个接受或放弃的gas价格,以便在下一个区块中包含。我们将看到...在EIP-1559中提出的交易费用机制就像一个公布价格的机制,除非需求大幅度增加。

动态 | a16z加密以1500万美元收购6%的MKR:据btcmanager消息,9月24日,Andreessen Horowitz的专业加密货币和区块链基金a16z加密已经购买了MakerDAO的MKR令牌供应量的6%,总价值1500万美元。[2018/9/25]

这两个例子共同之处在于:阐述了一个高层次的目标;提供了一个易于理解的类比,以帮助他人理解这个目标;然后继续概述最好支持该目标的设计。

#2从第一原理出发评估现有工作

在创建新事物时,研究已经存在的东西通常是个好主意。当你评估现有协议和文献时,应该客观地从技术优劣的角度来评价它们。

代币模型经常基于代币价格或相关项目的受欢迎程度进行评估。这些因素可能与代币模型实现其目标的能力无关。估值、受欢迎程度或其他单纯的评估代币模型的方法可能会让构建者走入歧途。

如果你认为其它模型能够正常工作,但实际上它们不能,那么你就可能会创建一个有缺陷的代币模型。如果你为了不同的目标重新使用一个代币模型,你可能会不经意地继承不适合你的代币模型的假设。

#3阐明假设

当你专注于构建一个代币时,很容易将基本假设视为理所当然。你也很容易错误地表述你真正做出的假设。

让我们以一个新协议为例,假设它的硬件瓶颈是计算速度。将这种假设作为代币模型的一部分可以帮助将设计与期望的行为对齐。

但是,如果协议和代币设计者没有陈述他们的假设,或者他们陈述的假设是错误的,那么可能会有参与者意识到偏差并从协议中提取价值。“黑客”通常是那些比系统的设计者更了解系统的人。

阐述你的假设可以使人更容易理解你的代币设计,并确保其正常工作。如果没有明确表述你的假设,你也无法验证你的假设……

#4验证假设

俗话说,“让你陷入麻烦的不是你不知道的,而是你肯定知道但并非如此的事情。”

代币模型通常会做出一系列假设。这种方法部分源于拜占庭系统设计的历史,作为区块链的灵感来源。该系统做出假设,并构建一个函数,如果该假设成立,则保证一些输出。例如:比特币保证在同步网络模型中的活跃性,并且如果网络中的51%的哈希功率是诚实的,则保证一致性。有几个较小的区块链已经遭受了51%攻击,违反了纳克莫托共识对区块链正确运行所需的诚实多数假设。

代币设计者可以通过多种方式验证他们的假设。严谨的统计建模,通常以Agent-Based建模的形式,可以帮助测试这些假设。有关人类行为的假设也经常通过与用户交谈并观察人们实际做的事情来验证,特别是通过激励测试网络在沙盒环境中生成实证结果。

正式验证或密集审核也有助于确保代码库按预期运行。

#5定义清晰的抽象屏障

“抽象屏障”是系统或协议不同层次之间的接口。它用于分离系统的不同组件,使每个组件可以独立设计、实现和修改。清晰的抽象屏障在所有工程领域特别是软件设计中都很有用,对于分散式开发和大团队构建复杂系统更是必要,因为单个人无法理解整个系统。

在代币设计中,清晰的抽象屏障的目标是尽量减少复杂性。减少代币模型不同组件之间的相互依赖性可以得到更干净的代码,更少的漏洞和更好的代币设计。

例如,许多区块链是由大型工程团队构建的。一组可能会假设硬件成本随时间变化而改变,并使用该假设来确定为特定代币价格提供多少挖矿设备。如果另一组依赖于代币价格作为参数,但不知道第一个团队对硬件成本的假设,那么它们可能会做出冲突的假设。

不透明的假设和接口有时会导致难以发现的错误,特别是在早期的DeFi协议中。模糊的抽象屏障还通过增加协议不同组件的团队之间的沟通来延长开发时间。模糊的抽象屏障还增加了整个协议的复杂性,使任何一个人都难以完全理解该机制。

通过创建清晰的抽象屏障,代币设计者可以更容易地预测特定的更改将如何影响代币设计的每个部分。清晰的抽象屏障还使扩展自己的代币或协议更加容易,并创建一个更包容和广泛的建设者社区。

#6减少对外部参数的依赖

在创建代币模型时,经常会使用一些对于系统本身不是固有参数,但会影响整体性能和成功的外部参数,如计算资源的成本、吞吐量或延迟等。

在创建代币模型时,经常会使用一些对于系统本身不是固有参数,但会影响整体性能和成功的外在参数,比如计算资源的成本、吞吐量或延迟等。

危险的是,当代币模型仅在某些参数保持在有限范围内时才能正常工作,就会出现意外行为。例如,考虑一个协议,它销售某项服务并以一定数量的代币奖励形式提供返利:如果代币价格意外飙升,代币奖励的价值可能会超过服务的成本。在这种情况下,从该协议购买无限数量的服务是有利可图的,从而导致奖励用尽或服务被完全利用。

再举一个例子:去中心化网络通常依赖于加密或计算难题,这些难题非常困难,但并非不可能解决。这些难题的难度通常取决于外部变量,比如计算机可以计算哈希函数或零知识证明的速度。想象一下一个协议,它假设能够快速计算某个哈希函数的速度,并相应地支付代币奖励。如果有人发明了一种更快地计算该哈希函数的方法,或者只是拥有不成比例的巨大资源来解决该问题,他们就可以获得意外的大量代币奖励。

#7重新验证假设

设计一个代币应该像设计一个对抗性系统那样。假设系统中存在拜占庭行为。用户的行为会随着代币运行方式的变化而发生改变。

设计者常犯的一个错误是在调整代币模型时没有确保任意用户行为仍然能产生可接受的结果。不要假设用户行为在代币模型变化时会保持不变。这种错误通常发生在设计过程的后期:有人花费了大量时间定义代币的目标、功能,并验证其是否按预期工作。然后,他们识别出一个边缘案例并调整代币设计以适应它……但是忘记了重新验证整个代币模型。他们在解决一个边缘案例时,可能会产生另一个意外后果。

不要让辛苦的工作付之东流:每当项目更改其代币模型时,请重新验证它是否按预期工作。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

[0:15ms0-0:898ms