本篇文章给大家谈谈区块链系统组件功能,以及区块链的组织架构对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
想知道区块链系统有什么功能?
现在区块链开发公司挺多的,如盛世华彩,提供底层技术服务,微结合商业系统提供投资、挖矿、资讯、自定义功能,具体还是按照自己的实际情况来选择吧
各区块链架构的横向比较
各区块链架构的横向比较
时常听人们谈起区块链,从 2009 年比特币诞生至今,各式各样的区块链系统或基于区块链的应用不断被开发出来,并被应用到大量的场景中,而区块链技术本身也在不停地变化和改进。
区块链又被称为分布式账本,与之对应的则是中心化账本,比如银行。与中心化账本不同的是,分布式账本依靠的是将账本数据冗余存储在所有参与节点中,来保证账本的安全性。简单地说,区块链会用到三种底层技术:点对点网络技术、密码学技术和分布式一致性算法。而通常,区块链系统还会“免费附赠”一种被称为智能合约的功能。智能合约虽然不是区块链系统的必要组成部分,但由于区块链天生所具备的去中心化特点,使它可以很好地为智能合约提供可信的计算环境。
为了适应不同场景的需求,区块链系统在实际应用的过程中往往会需要进行各种改造,以满足特定业务的要求,比如身份认证、共识机制、密钥管理、交易频次、响应时间、隐私保护、监管要求等。而实际应用区块链系统的公司往往没有进行这种改造的能力,于是市场上慢慢出现了一些用于定制专用区块链系统的框架,采用这些框架就可以很方便地定制出适用于企业自身业务的区块链系统。
本文将对目前市场上几个典型的区块链框架进行横向对比,看看它们都有哪些特点,以及它们之间到底有哪些区别。为了保持对比的公正性,本文将只针对开源的区块链框架进行讨论。
各区块链架构的简单介绍
1、比特币
比特币(bitcoin)源自一名叫做中本聪(Satoshi Nakamoto)的人在 2008 年发表的一篇名为《比特币:一种点对点的电子现金系统》(Bitcoin: A Peer-to-PeerElectronic Cash System)的论文,文中描述了一种被他称为“比特币”的电子货币及其算法。在之后的几年里,比特币不断成长和成熟,而它的底层技术也逐渐被人们认识并抽象出来,这就是区块链技术。比特币作为区块链的鼻祖,在区块链的大家族中具有举足轻重的地位,基于比特币技术开发出的山寨币(altcoins)的数量有如天上繁星,数不胜数。
从论文中可以得知,中本聪设计比特币的目的,就是希望能够实现一种完全基于点对点网络的电子现金系统,使得在线支付能够直接由一方发起并支付给另外一方,中间不需要通过任何的中介机构。总结来说,他希望比特币的设计能够实现以下这些目标:
● 不需要中央机构就可以发行货币
● 不需要中介机构就可以支付
● 保持使用者的匿名性
● 交易无法被撤销
从电子现金系统的角度来看,以上这些目标在比特币中基本都得到了实现,但是依然有一些技术问题有待解决,比如延展性攻击、区块容量限制、区块分叉、扩展性等。
在应用场景方面,目前大量的数字货币项目都是基于比特币架构来设计的,此外还有一些比较实际的应用案例,比如彩色币、t? 等。
彩色币(coloredcoin),通过仔细跟踪一些特定比特币的来龙去脉,可以将它们与其他的比特币区分开来,这些特定的比特币就叫作彩色币。它们具有一些特殊的属性,从而具有与比特币面值无关的价值,利用彩色币的这种特性,使得开发者可以在比特币网络上创建其它的数字资产。彩色币本身就是比特币,存储和转移不需要第三方,可以利用已经存在的比特币的基础。
t? 是比特币区块链在金融领域的应用,是美国在线零售商 Overstock 推出的基于区块链的私有和公有股权交易平台。
2、以太坊
以太坊(ethereum) 的目标是提供一个带有图灵完备语言的区块链,用这种语言可以创建合约来编写任意状态转换功能,用户只要简单地用几行代码来实现逻辑,就能够创建一个基于区块链的应用程序,并应用于货币以外的场景。
以太坊的设计思想是不直接“支持”任何应用,但图灵完备的编程语言意味着理论上任意的合约逻辑和任何类型的应用都可以被创建出来。总结来说,以太坊在比特币的设计目标之外,还需要实现以下几个目标:
● 图灵完备的合约语言
● 内置的持久化状态存储
目前基于以太坊的合约项目已达到数百个,比较有名的有 Augur、TheDAO、Digix、FirstBlood 等。
Augur 是一个去中心化的预测市场平台,基于以太坊区块链技术。用户可以用数字货币进行预测和下注,依靠群众的智慧来预判事件的发展结果,可以有效地消除对手方风险和服务器的中心化风险。
限于篇幅,基于以太坊智能合约平台的项目就不多介绍了。基于以太坊的代码进行改造的区块链项目也有不少,但几乎都是闭源项目,只能依靠一些公开的特性来推断,所以就不在本文展开讨论了。
3、Fabric
Fabric 是由 IBM 和 DAH 主导开发的一个区块链框架,是超级帐本的项目成员之一。它的功能与以太坊类似,也是一个分布式的智能合约平台。但与以太坊和比特币不同的是,它从一开始就是一个框架,而不是一个公有链,也没有内置的代币(token)。
超级账本(hyperledger)是 Linux 基金会于 2015 年发起的推进区块链技术和标准的开源项目,加入成员包括:荷兰银行(ABN AMRO)、埃森哲(Accenture)等十几个不同利益体,目标是让成员共同合作,共建开放平台,满足来自多个不同行业各种用户案例,并简化业务流程。
作为一个区块链框架,Fabric 采用了松耦合的设计,将共识机制、身份验证等组件模块化,使之在应用过程中可以方便地替换成自定义的模块。除此之外,Fabric 还采用了容器技术,将智能合约代码(chaincode)放在 docker 中运行,从而使得智能合约可以用几乎任意的高级语言来编写。
以下是 Fabric 的一些设计目标:
● 模块化设计,组件可替换
● 运行于 docker 的智能合约
目前已经有不少采用 Fabric 架构进行开发的概念验证(POC)项目在实施过程中,其中不乏一些金融机构做出的尝试,不过由于项目刚刚起步,还没有比较成熟的落地应用。
4、DNA
DNA(Distributed Networks Architecture,分布式网络架构),是由总部位于上海的区块链创业公司“分布科技”开发的区块链架构,可以同时支持公有链、联盟链、私有链等不同应用类型和场景,并快速与业务系统集成。
与以太坊、Fabric不同的是,DNA 在系统底层实现了对多种数字资产的支持,用户可以直接在链上创建自己的资产类型,并用智能合约来控制它的发行逻辑。对于绝大部分的区块链应用场景,数字资产是必不可少的,而为每一种数字资产都开发一套基于智能合约的转账、发行逻辑是非常浪费且低效的。因此,由区块链底层提供直接的数字资产功能是十分必要的。而对于那些完全不需要数字资产的应用场景,同样可以基于 DNA 提供的智能合约架构来编写任意的自定义逻辑来实现。
DNA 的设计目标主要有以下几点:
● 多种数字资产的底层支持
● 图灵完备的智能合约和状态持久化
● 跨链互操作性
● 交易的最终性
目前已有不少金融机构采用 DNA 架构来进行区块链概念验证产品的开发。除此之外,还有一些已经落地的区块链项目,如小蚁区块链、法链等。
小蚁(antshares)是一个定位于资产数字化的公有链,将实体世界的资产和权益进行数字化,通过点对点网络进行登记发行、转让交易、清算交割等金融业务的去中心化网络协议。它采用社区化开发的模式,在架构上与 DNA 保持一致,从而可以与任何基于DNA 的区块链系统发生跨链互操作。
法链是全球第一个大规模商用的法律存证区块链,一个底层基于 DNA区块链技术,并由多个机构参与建立和运营的证据记录和保存系统。该系统没有中心控制点,且数据一旦录入,单个机构或节点无法篡改,从而满足司法存证的要求。
5、Corda
Corda 是由一家总部位于纽约的区块链创业公司 R3CEV 开发的,由其发起的 R3区块链联盟,至今已吸引了数十家巨头银行的参与,其中包括富国银行、美国银行、纽约梅隆银行、花旗银行、德国商业银行、德意志银行、汇丰银行、三菱 UFJ 金融集团、摩根士丹利、澳大利亚国民银行、加拿大皇家银行、瑞典北欧斯安银行(SEB)、法国兴业银行等。
从 R3 成员的组成上也可以看出,Corda 是一款专门用于银行与银行间业务的区块链架构。尽管 R3 自己声称 Corda 不是区块链,但从各项特征来看,它具备区块链的一些特性。
技术对比
1、数字资产
接下来,将对前文中提到的这些区块链框架进行一系列的技术对比,并从多个维度展开介绍它们的区别与相似之处。
区块链的内置代币通常是一种经济激励模型和防止垃圾交易的手段。比特币天生就有且只有一种内置代币,所以在比特币系统中所有的“交易”本质上都是转账行为,除非通过外部的协议层来给比特币增加额外的数字资产。
以太坊和 DNA 具有内置代币,它们的作用除了以上提到的经济激励和防止垃圾交易之外,还具有为系统内置功能提供一个收费的渠道。比如以太坊的智能合约运行需要消耗 GAS,而 DNA 的数字资产创建也需要消耗一定的代币。
以太坊和 Fabric 没有内置的多种数字资产支持,而是通过智能合约来实现相应的功能。这种方式的好处在于,系统设计可以做到非常简洁,而且资产的行为可以任意指定,自由度极高。然而这样的设计也会带来一系列的负面影响,比如所有的资产创建者不得不自己编写重复的业务逻辑,而用户也没有办法通过统一的方式去操作自己的资产。
相比之下,DNA 和 Corda 采用了在底层支持多种数字资产的方式,让资产创建者可以方便地创建自己的资产类型,而用户也可以在同一个客户端中管理所有的资产。对于逻辑更加复杂一点的业务场景来说,他们同样可以利用智能合约来强化资产的功能,或者创建一种与资产无关的业务逻辑。
2、账户系统
UTXO(Unspent Transaction Output)是这样一种机制:每一枚数字货币都会被登记在一个账户的所有权之下,一枚数字货币有两种状态,即要么还没有被花费,要么已经被花费。当需要使用一枚数字货币的时候,就将它的状态标记为已经花费,并创造一枚新的与之等额的数字货币,将它的所有权登记到新的账户之下。在这个过程中,被标记为已花费的数字货币就被称为交易的输入,而创造出来的新的数字货币被称为交易的输出,在一笔交易中,可以包含多个输入和多个输出,但是输入之和与输出之和必须相等。要计算一个账户的余额时,只要将所有登记在该账户下的数字货币的面额相加即可得出。
比特币和 Corda 就采用了 UTXO 这样一种账户机制,而以太坊则采用了更加直观的余额机制:每个账户有一个状态,状态中直接记录了账户当前的余额,转账的逻辑就是从一个账户中减去一部分余额,并在另一个账户中加上相应的余额,减去的部分和加上的部分必须相等。DNA 在账户机制上同时兼容这两种模式。
那么 UTXO 模式和余额模式,究竟有什么优缺点呢?UTXO 最大的好处就是,基于 UTXO 的交易可以并行验证且任意排序,因为所有的 UTXO 之间都是没有关联的,这对区块链未来的伸缩性是有很大帮助的,而基于余额的设计就没有这个优势了;反过来,余额设计的优点是设计思想非常简洁和直觉化,便于程序实现,特别是在智能合约中,要处理 UTXO 的状态是非常困难的。这也是为什么以智能合约为主要功能的以太坊选择余额设计的原因,而比特币、OnchainDNA、Corda 这些以数字资产为核心的架构则更倾向于 UTXO 设计。
关于身份认证,比特币和以太坊基本没有身份认证的设计,原因很简单,因为这两者的设计思想都是强调隐私和匿名,而反对监管和中心化,而身份认证就势必要引入一些中心或者弱化的中心机构。Fabric、DNA 和 Corda 不约而同地选择了采用数字证书来对用户身份进行认证,原因在于这三者都有应用于现有金融系统的设计目标,而金融系统必然要考虑合规化并接受监管,此外现有的金融系统已经大范围地采用数字证书方案,这样便可以和区块链系统快速集成。
什么是区块链
区块链的意思是一个信息技术领域的术语。从本质上讲,它是一个共享数据库,存储于其中的数据或信息,具有“蠢并不可伪造”“全程留痕”“可以追溯”“公开透明”“集体维护”等特征。
它最早出现在1991年,由一群研究人员用来给数字化文档打时间戳。以使得这些文档不能被篡改,看上去区块链技术就像一位公证人一样。
一条区块链就是对所有人完全公开的分布式账本,它有一个很有趣的属性:一旦数据被记录到区块链中后就带烂迹很难再发生改变。那么它到底是如何工作的呢?接下来让我们首先来观察一下单个区块的组成。
请点击输入图片描述(最多18字)
相关资料
一般说来,区块链系统由数据层、网络层、共识层、激励层、合约层和应用层组成。其中,数据层封装了底层数据区块以及相关的数据加密和时间戳等基础数据和基本算法;网络层则包括分布式组网机制、数据传播机制和数据验证机制等。
区块链的功能是什么?
区块链是一种按照时间顺序将数据块以特定区块链系统组件功能的顺序相连的方式组合成的链式数据结构区块链系统组件功能,其上存储区块链系统组件功能了系统诞生以来所有交易的记录。区块链上的数据由全网节点共同维护并共同存储区块链系统组件功能,同时以密码学方式保证区块数据不可篡改和不可伪造。所以区块链本质是一个分布式共享数据库。
区块链技术的功能特征
区块链在本质上是一种分布式的存储系统,由于其采用了交易记账式的存储模型,也可以称其为分布式记账系统。北京木奇移动技术有限公司,专业的区块链开发公司,欢迎交流合作。下面讲一下区块链技术的功能特征。
在传统的平台技术中,中心决策是非常常见的一种数据处理方式,例如银行传统的转账方式中,交易信息要经过银行的中心服务器集群进行处理,通过层层的数据上传和指令分发完成两个账户间的交易。而区块链中的每笔交易都是交易人双方直接进行沟通和交易的,从发起交易到交易完成确认,不经过任何中介机构,所有节点都是平等的,具有完全相同的权限,这种在网络中点对点交易的模式,使区块链应用免于中介交易的风险。
需要注意的是,区块链虽然经常被称为分布式账本,甚至其本质就是一种分布式的存储系统,但区块链与常规的分布式系统不同,它的分布式结构更加特殊。分布式是与中心化相对应的一个概念,中心化结构中的所有分节点都只与中心节点进行数据交互,相互之间没有任何联系,因此中心节点需要承担全部的负载,一个中心化系统的效率基本只与中心节点的处理速度相关,同时一旦中心节点出现阻塞、死锁、宕机等问题,整个中心化系统就会随之停滞运行甚至直接崩溃。而分布式结构中的特点则是存在多个可以与其他节点的进行数据交互的节点,分布式网络存储技术则是将数据分散的存储于多台独立的机器设备上。这听起来有些拗口,但如果对其基于中心化特点进行分类描述就容易理解了,分布式结构包括了多中心化结构与去中心化结构。
多中心化系统是指由多个中心化系统构成的系统,其中每一个中心化系统都包括一个主节点和若干个从节点。在进行任务处理时,由主节点将任务拆解为多个分任务,并分别下发至其下属的多个从节点同时进行处理。从节点将处理结果回传至主节点后,主节点将对各个分任务的处理结果进行整合,最终完成任务。当然这只是一个简化的任务处理描述,多中心化系统可能存在多层主从结构,形成树状的任务分配结构。同时,从节点还可能听命于多个主节点的调配,基于复杂的任务管理机制,实现效率最大化。但多中心化与去中心的根本区别在于是否有一个中心节点控制着各个主节点的运行,如果最顶层的节点是多个节点,那么它就是去中心化,相反,如果顶层只有一个节点,它就是多中心化的。
在去中心化里,还有更为特殊的一种不存在任何中心的结构,可以称其为完全去中心化结构,这也就是点对点网络结构,这种结构在比特币网络中就有所体现。点对点网络结构的相对优点是高容错、节点拓展性强、隐私性强和数据一致等,但相应也存在冗余通信、消息延迟等问题。
图5 网络结构划分示意图
一般区块链领域内强调的”去中心化”,大多指的是系统的归属层面。系统归于社区和所有账户是去中心化的,系统归于机构甚至某个人则是中心化的。去中心化是区块链的共同特征,但点对点网络这种完全去中心化结构却在当前的应用较少,只有比特币、以太坊等公有链属于这种结构,因为全世界任何人都可以随时进入到系统中进行读取数据、发送可确认交易、竞争记账行为,这导致了其安全性和系统效率不能得到保障。私有链往往具有一个或多个中心对节点进行管控,所有操作均需得到该中心的许可并受其约束和限制,虽然其进行常规数据处理时采用去中心化的机制,但它在严格意义只是一种分布式的区块链部署模型。而联盟链则可被视为私有链的集合,是公有链在安全性与高效性上的妥协,它采用了多中心的技术架构。
区块链由于具有不可篡改的天然特点,基于共识算法保证数据一致,系统中的任何节点都无法篡改和伪造交易,所有交易内容都是确定的、没有争议的,交易将不存在信用风险,那么区块链系统也就具备了去信任化特征。
基于区块中承载内容由交易到智能合约的变化,区块链的去信任化有两个阶段,第一阶段是对区块链网络中 历史 交易行为真实性的信任,第二阶段是以智能合约规则为基础,对未来交易行为的信任。
第一阶段对 历史 行为真实性的信任,可以简单理解为区块链系统免除了证明 历史 交易的过程。当我们向别人说明某事曾经发生过时,需要有证据才能让别人相信,而这个证据往往需要一个有公信力的第三机构来证明,并通过验真手段提供信用保证。例如进行网络购物时购物平台提供的电子交易单是证据、在外用餐时餐厅提供的税务局发票是证据、或者在使用夫妻身份购房时机构提供的结婚证是证据。而在接受这些信息的人也需要对这些证据验真才能确信这些事确实是发生过的,与前文对应的,在出现网络购物纠纷时,需要查询购物平台的电子交易单是否真实存在;进行餐费报销时,需要对发票的签章进行核验;确认两人夫妻身份时,需要对结婚证的防伪标志进行核验。但区块链系统的数据被认为是不可篡改和伪造的,因此只要是向链上的其他节点说明一件 历史 发生的事就不需要任何第三方证明,因为数据块上的信息随时可以被拿出来直接考证,这便形成了区块链的 历史 交易去信任化。
第二阶段对未来交易行为的信任,因为在理想的状态下,区块链的智能合约是与业务绑定的,即智能合约在区块链系统中具备强制执行力。因为智能代码是完全公开的,且被记录在主链中被所有账户所储存。在智能合约被调用或是被某一机制触发后交易将被强制执行等操作,不存在抵赖的可能性。因此在区块链系统中的用户不必担心对方在未来的信用风险,这边形成了对未来交易去信任化。
在公有链中,每一个节点的账本都完整记录了所有交易,区块链不直接进行账户信息的实时记录,而是通过交易追溯的方式得出账户实时信息,同时由于任何人都可以创建区块链账户以形成区块链节点,那么公有链中的信息可以被认为是对所有人公开的,这就形成了区块链的开放与可追溯特征。且因公有链的代码往往是开源的,那么开放可追溯的不仅是系统中的交易数据,还有整个系统的交易规则,高度的公开透明化使区块链满足了许多需要公开数据的应用场景。
不过区块链基于比特币网络的基础上还发展出多种变体,例如比轻节点,以及私有链与联盟链等,这些变体不能满足严格意义上的开放可追溯。轻节点只能执行和验证交易,没有全部的交易数据可供回溯,因此轻节点不具备可追溯性。不过这一问题只是在于用户的选择,如果具备足够好的硬件环境,用户完全可以选择成为一个全节点而非轻节点,以便掌握全部数据。另外,加入私有链与联盟链是需要准入许可或者被验证的,读取权限是有选择性地对外开放,并非对全网公开,这也就不满足严格意义上的开放性。
写到这里,本文关于区块链系统组件功能和区块链的组织架构的介绍到此为止了,如果能碰巧解决你现在面临的问题,如果你还想更加了解这方面的信息,记得收藏关注本站。
标签: #区块链系统组件功能
评论列表