wwwwjs777net13094391112关于区块链,你该知道的事

一.前言
互联网改变了信息传递的方式,人工智能释放了计算能力,从重复、低效和繁重的工作中把人解放出来。区块链基于其分布式、防篡改、可追溯等特点构建的新型信任机制,将加速生产价值的“数字化”流通,改变价值的传递方式。区块链的开源性、可编程、去中心等特性,将进一步打破信息孤岛,扩展“网络化”运行的边界。机器流程引擎驱动多中心跨主体高效协作,社会资源将实现共商共识共享共治的“智能化”配置,带给区块链应用前景的无限憧憬和想象。
互联网经济以数据为关键生产要素,通过运用网络信息技术提升全要素生产率和优化经济结构。区块链是继云计算、大数据、人工智能之后的又一新兴网络信息技术,其基于技术构建的信任机制,基于合约和规则达成的多节点共识,基于机器驱动的价值自动化流通,将极大的改变当前社会的商业模式,进而引发新一轮的技术创新和产业变革,为数字经济带来新的活力。
二.区块链发展概述
2.1 区块链概念
区块链起源于比特币,是一种综合技术的简称。在经历多年发展后,不断集成当今多种技术于一体,包括分布式账本、共识机制、智能合约、密码学、p2p网络等。在每个区块链系统中,区块即信息块,信息以区块的形式进行集成、打包,并按照实际产生时间的先后顺序进行连接。
2.2 区块链价值
如今,伴随诸多区块链项目的兴起与发展,人们不断见证着区块链为各领域带来的变化,也逐渐认可区块链技术本身所呈现出的价值。其价值主要体现在以下几个方面:

(1)安全:基于去中心化P2P网络技术,区块链系统中所有参与节点将共同完成数据的存储、维护,可有效避免中心化数据系统遭到***时数据泄露的风险。在数据传输过程中,密码学技术提供了安全保障。此外,新区块的产生,是由全网多数节点达成共识后的结果,任意节点都无法实现数据的完全控制,保证区块信息不可篡改;
(2)确权:区块链的另一个价值体现在数据资产所有权的确认上。数据一经上链,即可通过区块链网络确定与用户间的锚定关系,且后续的每一次数据操作都会被准确记录,不可篡改。该特点可对数据资产进行有效保护,防止他人恶意篡改、窃取与利用;

(3)信任:去中心化区块链系统中,数据账本存于各节点,信息公开透明,为数据可信提供了基础保证。由于采用共识机制,各节点需要按照严格的算法规则更新区块信息,从而达成信息共享、多方决策一致,保障数据记录过程的可信性。整个过程中,无需借助第三方机构即可建立信任网络,完成多节点的可信沟通;

(4)自动化:智能合约是一种可编程的数字协议,当合约参与方满足触发条件后,合约条款将自动执行。智能合约的加入,为区块链带来了新的契机,保障部署在区块链上的合同条款可以实现自动、去中心化的计算,从而为诸多领域(尤其针对流程复杂繁琐、效率低下的领域)的效率提升、成本控制起到不可忽视的作用;

(5)信息共享:传统中心化系统常涉及较多环节,参与中介多、流程复杂,耗费成本较高。而区块链系统则实现了各参与节点的去中心化连接,且各节点数据资产可进行点对点自由流通,以降低中间成本。此部分节约成本将以收益的形式,根据对区块链网络的贡献程度按照一定规则分配到各节点,在激励其它节点积极参与的同时,实现全网价值的再分配。

2.3 区块链发展现状

区块链生态构成主要包括区块链网络、基础设施(如资产管理、轻量级节点、交易所)以及运行在区块链网络中的DApp。自2009年比特币网络成功运行以来,区块链各类技术得到了突飞猛进的发展。尤其是底层技术,自2017-2018年至今发展势头明显。基于底层平台,各领域不断进行商业端、用户端的场景落地尝试,DApp应用持续推陈出新。

2.3.1 公有链、联盟链与私有链

区块链平台根据去中心化程度、应用场景的不同,可划分为三类:公有链、联盟链、私有链。不同区块链平台在准入机制、共识算法等诸多方面均存在差异。

公有链公开透明。公有链常被形象化为“区块链世界的操作系统”,此类区块链平台允许节点自由加入网络,且所有节点均有权限查看账本信息。典型的、当前应用最为广泛的公有链平台为以太坊。以太坊提供了图灵完备的编程语言,允许开发者部署智能合约,可帮助处理复杂业务流程。然而,受限于交易处理速度、可扩展性等,以上公链平台难以进行大规模商业应用落地。自2017年以来,区块链逐步成为能够构建更高效社会活动的一种社会关系,成为能够减少摩擦提高效率的新范式。业界开始追求公链底层技术新的突破,探索更加普适、稳定的公链平台,并将基于该类平台的下一个时代定义为区块链3.0.目前,公链3.0平台仍处于探索阶段,大部分主网暂未上线。据各平台对外公布数据,可以预见的是,2018年将是公链2.0平台高速发展的元年,各公链主网将陆续于2018年下半年至2019年完成上线。

联盟链半公开。联盟链通常被用于政府机构、商业机构及公司之间,节点通过准入机制得到授权后方可进入,不同节点所拥有的信息查看权限不同。典型的区块链联盟如超级账本(Hyperleger)、R3。超级账本(Hyperledger)项目由Linux基金会发起,旨在构建跨行业开源区块链商业平台,推动各行业成员协同合作、共建开放平台、简化业务流程。其中,专注于提供企业级区块链解决方案的IBM HyperLeger(也即Fabric)区块链平台备受关注。R3是由美国初创公司R3CEV发起的金融行业区块链联盟,目前已吸引多家国内外金融机构×××。该项目旨在为银行业提供探索区块链技术的渠道,同时开发公布分布式账本平台Corda。

私有链则全部封闭,参与的节点仅在有限范围,数据的访问及使用有严格的管理权限。仅采用区块链技术进行记账,记账权并不公开,且只记录内部的交易,由公司或者个人独享。私有链最大的好处是加密审计,发生错误时也能追溯错误来源,且在特殊情况下,运行着私有链的机构或公司可以很容易地修改区块链的规则、还原交易、修改余额等。这一点似乎略有违背区块链的本质,但是却适用于一些特殊场景需求。例如,全国土地登记,要实现这个功能就必须得使用私有链,毕竟,试图建立一个不受政府控制的土地登记机构,在实践中是不会被政府承认的,另外,由于私有链验证者是内部公开的,交易的成本会很低,并且不存在部分验证节点共谋进行51%***的风险。私有链如Eris Industries,其创建的平台是一个开源的应用程序套件,任何人都可以免费使用。这些应用程序旨在创建全面运行和合法的分布式应用程序(DApps)和分布式自治组织(DAO)。

2.3.2 DApp生态

随着区块链(尤其是底层技术平台技术)的发展,各领域快速进行着区块链应用的原型设计、功能测试,直至最终产品落地。当前,以太坊平台受到诸多开发者的认可与追捧,并基于该平台持续进行技术落地创新,DApp不断涌现。截至2018年6月,以太坊平台已有DApp数量超过1600,生态最为繁荣。其中,较为知名的如世界首款区块链游戏CryptoKitties、以太坊钱包imtoken、社交聊天应用YeeCall等。除以太坊外,其它底层平台也陆续衍生出了各具特色的应用生态,拥有各自典型的DApp,如基于Steem平台的Steemit、基于迅雷链的玩客云、基于公信链的公信宝等。

然而总体来看,DApp发展仍处于初步探索时期。绝大多数DApp在产品设计上尚未成熟,没有充分体现出区块链技术的独特优势。在诸多DApp生态中,暂无可以与传统App相匹敌的爆款DApp出现,用户体量相对较低。

三.区块链整体架构

3.1 区块链行业痛点

3.1.1 当前区块链技术的性能制约

自区块链技术诞生以来,区块链的性能问题一直是倍受业界关注和讨论的核心问题,同时也可能是成为区块链行业发展的壁垒。当前,影响区块链性能的直观指标可总结为四点

(1)出块时间:区块产生的时间间隔;

(2)区块大小:单个区块的实际存储容量;

(3)事务执行速度:单个请求的处理时间。对于包含智能合约的请求,执行速度还受智能合约的执行时间影响;

(4)事务大小:事务数据存储在区块链里的实际大小。

回顾区块链1.0时代的比特币交易系统,性能的制约因素可归纳为区块大小和出块时间。区块链2.0时代的以太坊系统,由于支持通用智能合约,除了区块大小和出块时间之外,只能利用单核CPU的串行计算的低效率同样是制约整体性能的因素。同时,POW机制以较慢的出块时间来降低分叉概率的机制,也是影响区块链整体性能的因素之一。

3.1.2 智能合约的痛点

以太坊的出现,让人们注意到用智能合约可以构建丰富多彩的价值网络。但以太坊本质是一个基于单链架构的通用智能合约系统,所有的智能合约都在一条链上运行。所以以太坊的合约之间没有隔离能力,性能也差强人意。除此之外,以太坊提供的Solidity语言设计上存在欠缺,也缺乏实用的编程库支持,无法跟主流编程语言比较。

深挖智能合约的潜力,丰富的智能合约可以完整的构建一款基于区块链的应用程序,我们叫DApp(Decentralized App)。DApp能够传递有价值可信的信息和服务。区别于现在的App,现在的移动App提供的信息和服务需要主体公司的信用做背书,而在DApp中,背书是由区块链完成的,因此DApp比App具备巨大的优势。DApp取代App,标志着区块链技术3.0时代的到来。为了迎接新的时代,两个技术问题亟待解决:

(1)DApp运行的独立性:每个DApp都可以跑在一条或者多条链上,DApp内部的智能合约相互可以访问,DApp之间的数据通过跨链通讯来实现;

(2)DApp开发的便利性:智能合约的编程语言,短期内应该向当前的软件开发生态靠齐,支持主流编程语言包括C++,JAVA,GO等。但是从长期来看,区块链的智能合约需要有更符合自己特点的原生编程语言。

3.1.3 共识机制的痛点

共识机制本质上是一套博弈系统:共识的产生需要付出一定的代价,矿工努力工作后能获得有效的奖励,通过一奖一罚的博弈保证系统稳定实施。现存的共识机制,在应用层面比较专注于某一特定场景并存在一定程度的短板。比如PBFT比较适用于联盟网络的共享账本技术,POW能耗较高、POS存在中心恶意干涉的可能性等。

在当前的技术背景下,功能过于全面的共识算法无法真正可用。在新一代区块链共识机制的设计过程中,根据实际应用场景,有的放矢选择去中心化、节能、安全等设计原则,对一些原则支持强弱进行取舍,将一定程度上提升系统的整体运行效率。因此,在新一代的区块链系统设计中,可插拨的共识机制可能是未来发展的主要方向:在区块链解决方案中,应该实现兼容多种共识算法,在实际业务落地中有选择性的使用一种最合适的共识机制,甚至整个网络具备让开发者自定义共识机制的能力。

3.1.4 计算和存储的痛点

在当前的区块链技术方案中,始终无法突破单机的存储和计算瓶颈,甚至连单机的多核计算和多盘存储都不能很好的利用。整体性能和扩展性存在一定局限。性能支撑是用户体验的基础,因此区块链支持DApp的良好运转,必须解决计算和存储的弹性扩展问题。

3.1.5 网络建设的痛点

(1)平台化技术的难点

1)基于比特币等公链平台实现DApp的难点

目前公链的技术,如比特币,如果想直接用比特币的区块链网络做自己的事情,有两种模式:

  1. 将数据写到比特币的Script区里面,业务端理解数据并实施;
  2. Fork比特币的代码并进行修改,从头开始搭建自己的区块链网络。

通过这些模式创建自己的DApp对网络构建、技术实施的门槛非常高,一定程度上限制了DApp生态的快速发展。

2)基于以太坊公链的快速发展。

基于以太坊的平台化主要面临两方面问题:

  1. Soliday 这门语言相对较弱,在构建复杂应用的时候,会面临软件工程的问题;
  2. 以太坊的整体网络性能,不足以支撑一款高频DApp的执行,所以根本无力去支撑整个DApp生态。


(2)区块链建设的难度

公链的建设难度极大,利益纠纷明显。在传统比特币和以太坊的区块链公链建设过程中,需要大量的矿机和电力加入。而EOS的网络建设,需要强大的社区运营以及资源支持。如果每一个DApp的出现,都要自己去建设公链,对开发者来说将是一个巨大的挑战。

原文地址:http://blog.51cto.com/14071992/2316427

时间: 2024-10-11 16:19:02

wwwwjs777net13094391112关于区块链,你该知道的事的相关文章

Ajax系列之一些你应该知道的事

mnesia在频繁操作数据的过程可能会报错:** WARNING ** Mnesia is overloaded: {dump_log, write_threshold},可以看出,mnesia应该是过载了.这个警告在mnesia dump操作会发生这个问题,表类型为disc_only_copies .disc_copies都可能会发生. 如何重现这个问题,例子的场景是多个进程同时在不断地mnesia:dirty_write/2 mnesia过载分析 1.抛出警告是在mnesia 增加dump

StackExchange:Web开发中你需要知道的事

在StackExchange上有人问了这样一个问题:What should every programmer know about web development?(关于Web开发,什么是所有程序员需要知道的?)里面给出的答案非常不错,所以,我翻译转载过来. 顺便说一下,StackExchange真是非常好,大家可以对同一个答案做贡献和修订,看看这个问题的修订过程你就知道了——专业的问答网站应该怎么去做.这就是我在这篇文章中也说过真正的用户体验是什么样的. 好了,下面是正文(我对原文做了一些批注

学习IOS需要知道的事

什么是iOS iOS是一款由苹果公司开发的操作系统(OS是Operating System的简称),就像平时在电脑上用的Windows XP.Windows 7,都是操作系统 那什么是操作系统呢?操作系统其实是一种软件,是直接运行在硬件(电脑.手机等)上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行. 按照运行系统的设备进行分类,可分为:电脑操作系统.手机操作系统. iOS与Win7等操作系统的差异 XP.Win7是PC操作系统,也就是运行在电脑上的操作系统 iOS是手持设备操

考虑做OTT-TV/IPTV电视系统运营商-你必须要知道的事

广播电教系统需求: – 整套系统稳定.可靠: – 支持主从设备堆叠部署,单台设备最大支持127台从机: – 支持RTSP/RTMP/HLS等标准的流媒体格式: – 可基于标准的流媒体协议,提供音视频的直播和点播服务: – 支持手机.平板电脑等多媒体设备的实时浏览和录像回放功能: – 单台设备支持600M码流转发能力: – 主机单级通过堆叠可实现4000路同时点播和直播: – 支持录像文件的转码和存储: – 支持对实时码流进行转码以满足移动客户端的浏览需求. 需求分析: 整个需求是一套完整的OTT

学javascript必须要知道的事

第一:变量声明 在使用javascript时使用变量时首先做的是声明变量,变量声明的关键字是var. 例子: var i; var sum; 也可以多个变量声明: var i,sum; 还可以在声明时赋值. var i=0; 如果没有给var声明的变量指定初始值,那么在给其初始值之前这变量一直是undefined. javascript是动态语言在运行期间才会去做数据类型检查,所以不需要给变量指定数据类型,它会在第一次赋值时把数据类型记录下来. 而c和java不一样,它们是静态语言,需要先定义好

文件名、、扩展名的截取你必须知道的事

js中substr,substring,indexOf,lastIndexOf等的用法 1.substrsubstr(start,length)表示从start位置开始,截取length长度的字符串. var src="images/off_1.png";alert(src.substr(7,3)); 弹出值为:off 2.substringsubstring(start,end)表示从start到end之间的字符串,包括start位置的字符但是不包括end位置的字符. var src

Android Notification自定义通知样式你要知道的事

本文将根据个人经验对Notification做个总结,以供参考! 什么是通知(Notification) 通知是一个可以在应用程序正常的用户界面之外显示给用户的消息. 通知发出时,它首先出现在状态栏的通知区域中,用户打开通知抽屉可查看通知详情.通知区域和通知抽屉都是用户可以随时查看的系统控制区域. 作为安卓用户界面的重要组成部分,通知有自己的设计指南.在Android 5.0(API level 21)中引入的 Material Design 的变化是特别重要的,更多信息请阅读 通知设计指南.

(转)Arrays.sort()你应该知道的事

Arrays.sort(T[], Comparator < ? super T > c) 是用来对用户自定义的对象数组排序功能的.Java 官方文档简单描述了它的作用,但不足以让我们深刻理解.为了更深入地理解它,这篇文章将梳理相关的关键点. 1.简单实例:如何使用Arrays.sort() 通过阅读下面代码,你能快速正确了解这个方法的用途.Comparator(比较器)用于根据Dogs的size比较其大小,并作为sort方法的参数. 1 2 3 4 5 6 7 8 9 10 11 12 13

安全用网,你应该知道的事

1.换手机号前,谨防泄密 ①修改支付宝账号绑定 登陆支付宝账户—点击账户设置—基本信息—手机—解绑. ②解绑微信账户 登陆微信,选择"我"—设置—账号与安全—手机号码—选择右上角菜单—解绑 ③解绑银行卡 一般可通过网银专业版或者柜台解绑,同时更换u盾,网上银行,手机银行,短信通知等业务 ④更改其他账号登陆设置 更改微博等社交网站的绑定手机 更改淘宝等购物网站的绑定手机 更改邮箱上面的绑定手机 更改证劵,基金的各项关联号码 更改12306等各网站的常用手机号 2.旧手机不要随便丢弃 ①将