区块链虚拟世界Genesis的治理机制和公链基础技术介绍.doc
《区块链虚拟世界Genesis的治理机制和公链基础技术介绍.doc》由会员分享,可在线阅读,更多相关《区块链虚拟世界Genesis的治理机制和公链基础技术介绍.doc(18页珍藏版)》请在三一文库上搜索。
1、区块链虚拟世界Genesis的治理机制和公链基础技术介绍项目的特点1. 共识协议:DDPOS。高TPS,兼顾精英治理与大众普选,避免成为少数人的专政。2. 完善的系统升级机制:区块链系统的每次升级即是一次硬分叉。由于各种原因,部分用户选择不更新客户端,因此和升级后的客户端失去共识,造成系统价值的损失。Genesis将投票功能built in客户端,系统升级在系统中多数人达成共识后自动进行,保证了系统升级的时候的价值得以延续。3. DApp Store(1.0版):传统的区块链主链像windows一样,开发者开发的DApp散落无组织。 Genesis中有一个DApp store作为面对普通用户的
2、入口,开发者和用户都必须遵守一定的规则和监管。作为一个去中心的自制社区,这个监管由社区自行投票拟定。最初的原始规则采用类似reddit的排名机制(基于用户投票排名)。4. 自带存储侧链:目前市面上的公链大都不具备存储能力。Storj和siacoin之类 虽然允许开发者存储数据,但是这些链设计复杂,更适合于专业的去中心存储场景。Genesis存储侧链自带数据存储的经济体系,开发者可以直接调用来开发需要存储大量数据的应用。5. 开发进度30%:基于Rust开发,系统编程、安全、并发、高效。Framework链计划于2018年9月测试,主网testnet计划于2018年12月上线。6. 和其他主链项
3、目的对比:Genesis作为一条公链,通过侧链实现扩展,和现有的公链的对比如下:项目的目标我们希望最终Genesis要打造的不仅仅是一个区块链基础链,更是John Barlow 梦想中的,能实现DAO治理的理想国,一个全新的,完全独立自治的,不受任何中心化权威控制的互联网虚拟世界,一个未来将颠覆所有现有社交网络和互联网生产关系的互联网空间。Genesis系统介绍出发点用户为社交平台贡献了大量的内容,成就了脸书等社交平台的巨大成功。然而,用户提交的内容所产生的收益大部分被这些平台拿走,并没有分享给这些用户。实际上,用户只有这些社交平台的使用权,没有所有权。Genesis用区块链技术打造一个去中心
4、的社区。社区所有内容由全体用户拥有,社区的规则也由用户自己制定。社区依托于一条高性能的公链,用户可以通过在其上发布的各种去中应用来实现各种功能和场景。治理机制Genesis用区块链技术打造一个去中心的社区。社区所有内容由全体用户拥有,社区的规则也由用户自己制定。Genesis的核心治理原则为“自治”, 用户参与自治最重要的工具是“投票”。Genesis里有下面这些核心对象:1. 人Genesis系统里的第一要素是人,也就是用户。Genesis由共享同一用户系统的一条主链和多条侧链组成。Genesis中的用户可分为普通用户、地主和元老三种。其中地主负责维护一个云盘,而元老负责维护整个区块链系统。
5、Genesis的用户具有如下特点: 用户名无需注册,生成私钥/公钥即可以使用。 出生纸:用户激活时,设定一个仅自己知道的字符串,用于被质疑时验证身份。 投票权:每个用户都有投票权利,用于对各种事件作出选择。Genesis的用户在系统里有不同角色,例如: 元老 Block Producer:元老负责对全网数据进行共识维护。 地主 Landholder:地主负责以Merkle Tree的形式维护一个云盘。 普通用户 Users:普通用户可以从市场购买应用并且参与投票等。2. 货币Genesis系统流通的货币叫Gencoin或者创世币。创世币是驱动Genesis生态系统的动力。获得创世币渠道: 普通
6、用户: 保持在线状态会有机会获得创世币 用户的事件记录被应用端程序调用时会获得创世币 参与投票等活动会获得发起投票的人所附上的奖励 创造出有用的内容 创建应用程序并发布在应用商店上 地主:维护云盘获得创世币 元老:维护区块链共识机制等获得创世币消耗创世币的渠道: 应用端程序每次获得用户授权需要消耗创世币 普通用户: 发起投票等活动可能会消耗创世币 使用应用程序或购买应用程序内的功能类似EOS的模式,基本上任何需要消耗计算力的事件都需要用创世币做抵押,这样可以有效防止Ddos攻击。 以下是Genesis创世币的经济关系图:3. 市场市场(Genesis Market/DApp store)是DA
7、pp的交易场所,也叫应用商店。在这里,普通用户可以找到所有在Genesis生态圈里的应用。用户通过对这些应用的下载和使用来实现其在Genesis虚拟世界的各项生活需求。对于开发者来说,这里是他们发布应用并获取收入的场所。4. 宪法Genesis允许用户签订共同希望遵守的协议,即宪法(如果是少数用户直接的协议,则叫法律)。宪法是系统的最高规则,所有用户和活动必须遵守宪法。宪法由大法官来负责发起投票动议,并且由全体用户投票的方式来更新。5. 投票通过投票来参与到管理是Genesis的核心治理原则。用户的投票权作为核心机制写在区块链里。系统运行之后,算法成为基本逻辑的坚定执行者,任何一种全局性改变都
8、需要群体通过投票的来决定。投票的机制是Genesis演化和用户自治的核心手段。区块链中记录的不可篡改的特点让Genesis里的投票具有绝对的公信力,因此集体通过投票达到的系统进化即可以代表大多数用户的意愿。Genesis主要通过用户投票的机制完成对自身协议的更新, 实现进化。对于程序无法处理的逻辑,Genesis通过人工投票来完成决策。例如软件出现bug,必须更新的情况,即可由系统里的任何一个人提出动议,并且附上更新后的版本以及愿意为该动议支付的货币,其它人用投票方式表决是否接受新版本。Genesis中投票应用广泛,还可以用于仲裁用户之间的纠纷等场合。Genesis的区块链技术Genesis的
9、共识机制Genesis项目在发展过程中,设计过两种共识机制。第一种是将POW的算力用于数据模型训练的POC(Proof of Comprehension)共识。第二种是民主代理人权益证明 DDPOS(Democratic Delagated Proof of Stake)共识。两种机制都为Genesis团队原创并申请专利。POC作为Genesis共识的最初版本,将被做成一个DApp放在侧链。目前Genesis采用第二种共识机制,即DDPOS。1.0版:POC(Proof of Comprehension)POC(Proof of Comprehension)是一种基于POW的改良。传统区块链工
10、作量证明POW是一个复杂的加密机制, 当矿工节点试图去制造一个区块时, 会将若干笔交易通过hash算法进行加密,来形成一个符合协议的字符串。这个加密的过程会消耗几乎100%的cpu运算量以及时间,加密出来的字符串被称为解。传统POW机制产生的解是无意义的,其好坏只由反映出区块链的健壮性的特定序列的长度来决定。众所周知基于深度学习的人工智能算法近些年在包括语音识别,图像识别等领域都取得了突破性进展。而训练深度学习模型需要消耗大量的算力,可以说算力的堆积对于深度学习模型的效果有着决定性的作用。由于GPU等高性能计算设备价格昂贵且在市场上经常供不应求,而算力的缺乏成为了学术界和工业界搭建更优秀深度学
11、习系统的瓶颈之一。Genesis将区块链加密所必须的工作量证明和深度学习进行了有机结合。不同于传统的POW方法仅仅依赖于算力的多少来进行工作量证明,我们通过验证矿工使用算力训练所得到的深度模型的有效性来判断其工作量,这也就是所谓的POC(Proof of Comprehension)。鉴于之前我们提到的模型有效性与算力之间的正比关系,因此矿工所训练深度模型的有效性可以作为其工作量的证明,同时,挖矿的过程最终将缔造出强大的人工智能系统,使整个求解的过程具有实际意义,解决了传统POW算力浪费的问题并且为Genesis提供了一个极其广阔的应用空间。Genesis的Proof of Comprehen
12、sion 本质上是一个具有自动学习和理解能力的人工智能机制。POC在不断的数据训练中会变得更强大和聪明,让Genesis的共识过程更高速,单位时间内处理更多交易。不同于大多数区块链项目,Genesis单位时间处理交易的次数tps是随着系统的进化动态增加的一个指标,随着使用人数和处理数据越多,系统tps反而会越大。另外一方面,随着Genesis训练的数据越多,Genesis将有能力理解更多人类逻辑,从而未来系统有可能进入到其它需要大量运算力的领域,前景非常广阔。需要强调的是,Genesis 的POC共识机制仅仅会放在侧链上作为一个DApp运行。Genesis的POC机制是Genesis团队原创,
13、已经申请专利。POC的详细实现流程如下:数据获取和模型输出数据通过DApp store里的DApps输入Genesis。第三方的应用程序开发团队可以在Genesis现有的基础上进行DApps的开发,并通过这些DApps提供个人或者实体上传数据的渠道。同时数据提供者也通过DApps获得补偿。数据进来Genesis后,将会被存在一个分布式的文件存储系统。Genesis中,每一个farmer都是一个数据资源的维护者,而所有的farmer的集群可以看作是一个由所有farmer共同维护的可实时扩充的分布式文件存储系统。数据经过POC训练后,通过DApp输出结果。数据存储数据在Genesis中被存储在一个
14、虚拟数据中心当中供下一步POC使用。1. 虚拟数据中心Genesis系统中用于存储数据的节点被称为存储节点,存储节点和普通节点使用一样的地址空间。数据集将以碎片的形式复制并分散到不同的存储节点上。 存储节点的集群被称为虚拟数据中心。每当用户提交transacTIon时, 该用户将会和虚拟数据中心的若干节点签订存储合约来租赁数据中心的存储空间。该技术将确保Genesis的可扩容性和数据一致性。2. 默克尔树默克尔树常用于不可信源数据验证。 默克尔树有如下特征: 默克尔树的叶子节点上的值为等长数据块。 非叶子节点的value是根据它下面所有的叶子节点值,然后按照一定的HASH算法计算而得出的。如果
15、非叶子节点的子节点也同为非叶子节点,该非叶子节点的值由其子节点的值组合后HASH加密后得到。 用户会以默克尔树的一个分支路径进行数据同步。这个路径被称为验证路径。 每一个验证路径会被默克尔树根验证。Genesis使用二叉默克尔树进行数据存储。假设数据块的数量为N, 那么根据二叉树的特性可知一个默克尔树的生成复杂度为O(2-N)。3. 数据存储方式Genesis的数据以默克尔树的形式存于不同的存储节点中。处于激活状态的存储节点在p2p网络中广播自己的IP,用户收到广播后会将可信度高的存储节点置于节点队列中并构建虚拟数据中心。之后用户将自己的默克尔树同步到虚拟数据中心并在数据同步校验成功后和虚拟数
16、据中心签订存储合约。4. 存储合约的制定与发布存储合约是存储空间租赁者和存储节点之间达成的协议。 协议内容以脚本的形式存在于合约的payload中, 协议内容包含签订者双方应当履行的义务。合约在发布前会要求合约附上数据提供者与数据中心的数字签名组。 一旦合约签订发布,合约将不能被修改。合约内容包含: 合约hash头 合约创建时当前区块链高度 租赁周期(以区块高度计算) 验证数据有效性的默克尔树根 数字签名组(包含数据提供者和虚拟数据中心的数字签名) 存储节点的外网IP组 双重锁定脚本(数据上传者会将一个周期内的奖励通过虚拟数据中心的公钥组合特殊验证路径进行双重锁定, 需要矿工使用特殊验证路径以
17、及存储节点使用私钥进行解锁) 存储合约将以transacTIon的形式发布到存储区块链上。5. 存储链与存储合约的执行负责维护存储合约的侧链名为存储链。存储链由矿工负责维护。矿工在创建新存储链块的时候会将当前有效周期内的部分存储合约指向的数据进行下载验证,当数据被存储合约上的数据可信根验证通过,矿工会将一个带有特定数据验证路径的交易发布到主链上,该交易会复制存储合约中双重锁定脚本并进行一次解锁,上述过程被称为合约履行。用户客户端会监听区块链上的交易并收到合约履行成功的事件。存储合约在有效周期过后会从存储侧链上移除。在合约周期快结束时,用户可以选择是否向数据中心进行续租。6. RS码纠错由于网络
18、抖动或者数据损坏等原因,虚拟数据中心的节点会提供错误数据。Genesis采用RS编码来进行数据纠错。 RS编码是一种简单实用的代数编码模式,该技术广泛用于数据传输中并有着较强的抗干扰能力。POC实现Genesis的POC机制采用基于深度神经网络模型的优化和验证逻辑,下面详细描述其实现。1. 深度神经网络基于深度神经网络(Deep Neural Network)的深度学习已经被证明在包括图像识别,自然语言处理在内的人工智能应用中极其有效。神经网络模型采用类似大脑神经突触联接的结构进行信息处理,主要用于监督式学习领域。通过处理给定的带有标签的数据,抽象数据的分布特征,从而学习出从数据特征到标签的映
19、射,使训练出的模型具有数据分类(classificaTIon),回归(regression)等功能。增加神经网络的层数后,即可通过组合低层特征形成更为抽象的高层标书属性类别或特征,可更好地刻画数据的分布。例如在图1展示的深度神经网络,通过对将数据输入模型的输入层(input layer),经过多层隐含层(hidden layers)的特征提取及抽象,在输出层(output layer)生成数据的标签。其中,层与层之间的联系往往是线性变换,而每一次的神经元则对应了一个非线性变换。深度神经网络可以用于解决不同的实际问题。举例而言,当使用神经网络进行人脸识别时,将图片通过输入层,经过隐含层的特征提取
20、及抽象,判断该图片是否包含人脸(例如,当输出层输出1则有人脸,输出0为无人脸)。神经网络的架构有很多种,卷积神经网络(ConvoluTIonal Neural Network)通常用于图像识别。递归神经网络(Recurrent Neural Network)以及衍生出来的长短期记忆网络(LongShort Term Memory)则更多的应用于自然语言处理。生成对抗网络(GAN)则是一类在无监督学习中使用的神经网络,在图片,视频,自然语言和音乐的生成方面有着广泛应用。2. 深度神经网络的参数优化在使用深度神经网络时,除了设计网络结构(网络的层数及每层的结构)一个重要的问题是如何通过给定的训练集
21、(数据及对应的标签)对模型进行训练,以决定其每一层的参数。具体而言,这个问题可以定义为,给定数据集D = X,Y,其中X=X_1,。.X_N为输入数据,且每一个样本向量xk为一个d维的向量,Y=y1,yN为对应样本的标签。而我们优化的目的就是找到一个由X到Y的映射F(X),这样给定一个样本向量,我们可以确定它的标签。为了达成这个目标,一般的做法是确定一个损失函数L(F(X),Y),使得映射F(X)相对于Y的损失值最优。常见的损失函数包括squared loss,cross-entropy等。其中n是预先设定的学习率。在实际的训练过程中,通常会在开始训练的时候选取一个稍微大一点的学习率(比如0.
22、1),加速训练的过程,在训练的过程中慢慢的调小学习率,以求达到精确的结果。由于深度神经网络模型所需优化的参数数量很多,即使使用了不同的正则化方法(如使用卷积神经网络,或使用Dropout技术)稀疏所需优化的参数,想要训练如此巨大的模型仍旧需要大量数据,那么计算梯度往往会导致运算速度过慢。一个标准化的处理方法是使用随机梯度下降(stochastic gradient descent)的方法。具体而言,就是每次计算梯度以更新参数时,都随机从原训练数据集中抽取部分数据计算梯度并进行参数更新,在有限次迭代更新中同样可以取得稳定的表现。3. 验证深度神经网络的表现在实际的使用中,我们需要在训练好模型后判
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 区块 虚拟 世界 Genesis 治理 机制 基础 技术 介绍
链接地址:https://www.31doc.com/p-3396912.html