DAOstack是一套软件栈,它用于构建与运行DAOs(Decentralized Autonomous Organizations),即去中心化自治组织。
所谓的去中心化自治组织,就是它们的运作,是建立在P2P软件基础上,并遵循无层级的决策。这些决策往往是针对大家共同拥有的资源,比如资金。DAOstack做的这些工作,正是其相信DAOs的结构,将改变我们的世界,因为它会让人与人之间的协作,更加容易、直接,也更容易规模化。
DAOstack瞄准了构建DAOs的全流程,因此在它的软件栈中包括了从P2P决策模块,到全功能的用户接口的所有构件。如果通过该栈的UI,甚至不需要太多的技术知识储备,就可以构建用户所需要的DAO。而且DAOstack还包含了将这些自治组织链接在一起的工具,因此随着该DAOs网络的成长,所有基于DAOstack的各DAO也将会随着拥有更强的组织治理能力。
DAOstack架构
综述
下面中DAOstack的架构图:
从下往上看,架构图中构件分别是:
-
Infra,它是完成通用去中心化决策的基础组件;它是一组以太坊智能合约库,包括投票机(voting machines)和声誉系统(Reputation system)。
-
Arc,它是以太坊智能合约,用于注册DAO的构建模块和标准组件等,以实现我们想要类型的DAO;
-
Subgraph;它是基于TheGraph协议实现的,用来查询DAOs状态与信息的高速缓存(Caching Layer)。
-
Arc.js,它是一个Javascript的库,方便Dapps来访问Arc里的智能合约。
-
Dapps,它就是各DAO呈现给用户具体的去中心化应用,比如去中心化选举系统等。
-
DAOs,这其实已不是DAOstack的组成部分,而代表着遵行DAOstack机制运行着的一个个DAO。
智能合约(Smart Contracts)
Infra
Infra是一个用Solidity编写的智能合约库,它包含了DAOstack协议的2个主要组件:
-
投票机(Voting Machines):它是一个通用型合约(所有的DAO都可以调用),将用于处理投票事务。每一个投票机都要遵循它自己预先设定的决策规则;根据DAOstack的共识协议,决策可以依据简单的绝大多数同意通过规则,也可以更加复杂的逻辑。
-
投票权限管理(Voting Rights Management):该系统就是一个智能合约,它用于确定投票权限是如何分布的;该系统会记录每个投票参与方的投票权限大小;运行在DAOstack的DAOs,会用声誉(reputation)来计量参与方的投票权限;这“声誉”就是数字,将跟随参与方参与提案投票的成功与