K8000越野电动绞盘 G9000越野电动绞盘 N12000专业电动绞盘 N15000工业电动绞盘 H12000工业液压绞盘 H15000工业液压绞盘 K5000P便携式电动绞盘
K8000 越野绞盘 G9000 4WD绞盘 N12000 专业绞盘 N15000 救援绞盘 H12000 工业绞盘 H15000 工业绞盘 K5000P 便携式绞盘

区块链存在“不可能三角”悖论

排行榜 收藏 打印 发给朋友 举报 来源: 网络转载   发布者:网络转载
热度181票  浏览3次 时间:2018年3月17日 10:16
工业绞盘

区块链是比特币的一个重要概念,本质上是一个去中心化的数据库,同时作为比特币的底层技术。区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。


本文分为三个部分,分别是区块链技术原理和发展趋势、区块链产业生态和流程再造以及区块链存在问题和政策建议。



一、区块链技术原理和发展趋势


从技术上来讲,区块链是一种分布式的记账方法。说到记账,我们经历了从实物记账向电子记账的演变。实物记账分别经过泥板标记、甲骨刻字、竹板刻书、纸质账本5个阶段,在20世纪60年代半导体微处理器的诞生,打孔计算机的出现,代表着记账进入了电子化时代。随着20世纪70年代,IBM引领的大型计算机深入渗透至金融行业,7*24小时的批处理替代了朝九晚五的人工记账。20世纪80年代至90年代的个人PC和局域网的发展,实现了内部协同和远程服务。随着互联网在21世纪初的兴起,无国界的跨境业务开始繁荣,随着梦网、3G、4G的代际跃迁,我们现在都进入移动金融时代,开始用智能手机管理自己的电子银行。


与此同时,加密安全技术在20世纪80年代至21世纪初,也得到了广泛发展,其中的哈希加密、椭圆曲线密码学、HashCash工作量证明机制,以及P2P网络后来的发展,为区块链,也叫分布式总账技术,典型了坚实的技术基础。目前,区块链技术在金融科技(Fintech)领域里非常火爆,在CFA进行的调研中,区块链仅次于机器人顾问,排名第二。


区块链的定义是一种分布式数据库,通过去中心化、去信任的方式,集体维护一个可靠数据库。既然它是一种分布式数据库,与传统的集中式数据库有什么区别呢?我们知道,传统数据库的四种操作可以简写为CURD,C代表创建,U代表更新,R代表读取,D代表删除。分布式数据库相当于是放弃了UD操作,也就是放弃更新和删除,换来“无法篡改”和“不可抵赖”两个重要特点,依托P2P网络提供的分布式端对端网络的特点,我将之归结为CROSS原则。其中,R代表可追溯,依托区块彼此相连的链式结构,用户可以追溯至最初交易来查看整个交易过程。O代表开放,任何一个人都可以通过接入P2P网络来记账;第一个S代表安全,基于密码学的安全通信,以及工作量证明机制,无人可以篡改数据库中的数据;第二个S代表稳定。系统中任何节点的退出,都不会影响整个系统的稳定性,不会遇到中心化节点经常遇到的“单点故障”问题。因此,依托区块链技术,改变了现有的交易模式。在传统交易中,商家和消费者彼此不信任,因此需要国家信用背书(比如说央行)或企业背书(比如支付宝)的第三方机构,为了证明自己的合规,把自己所有隐私信息都汇聚到第三方机构,还交了很多手续费,忍受着低效率的交易时滞。基于区块链,逐步实现去中心化、去中介的过程,实现消费者和商家之间直接支付,极大地提升了交易效率,降低了交易成本。


区块链的特点包括去中心化、公开透明、安全可靠和开放共识。其中,去中心化是指区块链由众多节点共同组成一个端到端的网络,不存在中心化的设备和管理机构。公开透明是指区块链的所有数据信息也是公开的,每一笔交易都会通过广播的方式,让所有节点可见。安全可靠是指单个甚至多个节点对数据库的修改无法影响其他节点的数据库,除非能控制超过51%的节点同时修改。开放共识是指任何人都可以参与到区块链网络,每个节点都能获得一份完整的数据库拷贝。节点间基于一套共识机制,通过竞争计算共同维护整个区块链。


区块链是主要运用了四个基础技术,分别是哈希运算(SHA256)、数字签名、P2P网络和工作量证明(PoW)。


哈希加密算法,SHA256,是由美国国家安全局研发,由美国国家标准与技术研究院(NIST)在2001年发布,属于SHA-2分支。将任何一串数据输入到SHA256将得到一个256位的Hash值(散列值)。其特点:相同的数据输入将得到相同的结果。输入数据只要稍有变化(比如一个1变成了0)则将得到一个千差万别的结果,且结果无法事先预知。


数字签名,是基于椭圆曲线加密技术的公私钥来实现。有这么两个概念很重要,第一,公私钥是非对称加密技术,公钥和私钥不同,但是可以基于私钥生成公钥。第二是相关性,公钥加密的,对应的私钥才能解密。私钥加密的内容,对应的公钥才能解密。数字签名技术就是,我对传输文本进行摘要操作,也就是从“我爱北京天安门”这个字符串,使用哈希算法,抽取出例如“天”这个字作为文章摘要,我把“天”字用私钥加密,作为数字签名附在文本传输给对方。对方收到文件后,也对文本进行同样的哈希操作,得到“天”字,再用公钥对我的签名进行解密,如果也得出“天”字,那么说明,整个传输是可信的,如果不是,则传输过程有可能受到了篡改。


P2P网络,根据比特币协议,区块链采用一种无结构的P2P网络。P2P网络分为有结构和无结构两种,区别在于路由规则的制定方面。有结构的P2P网络,例如Chord,利用一致性哈希表(DHT)构建每个节点的路由表。无结构的P2P网络代表是努特拉(Gnutella),节点之间的路由靠广播的方式,也就是说,一个节点想查找一个文件,他就问他的邻居有没有这个文件,他的邻居再问各自的邻居有没有,如此迭代。这样容易形成广播风暴,因此,一般设置一个网络TTL,来限制广播传播的范围。


工作量证明机制,简单理解就是一份证明,用来确认你做过一定量的工作。工作量是信任产生的基础。在区块链中,通过解决一个数学难题来证明自己的工作量。这个数据难题就是,对一个数字串进行两次SHA256运算,如果得到的数,小于一个指定的值,就算是成功。否则,要通过不断的尝试试错(学术上叫暴力破解),来求解这个数。一般来说,指定的结果值,前面都是多个零开头。



区块链的数据结构,如右上图所示,一个区块链依托于一个P2P网络。节点可以有四种功能,钱包、完整的区块链拷贝、挖矿和路由。路由功能是每个节点必需的,前三个功能,根据节点自己的需求来定。对于一个区块链拷贝来说,它是记录了从2009年,中本聪创立创世区块以来,系统运行时记录的所有交易记录。区块链,分为区块头和区块体。区块头包含版本号、上一个区块的哈希值、Merkle根节点哈希值、时间戳、难度值、随机数和交易记录这些字段。区块与区块之间彼此相连,构成的一个链式结构,叫做区块链。这跟我们以前编写C语言,用指针实现链表是一个道理。不过,这里的指针,不是内存地址,二是将上一个区块的区块头,使用两次SHA256加密算法,得到的哈希值。


那区块头没有包含任何交易记录信息,怎么能保证交易记录不被篡改?答案是这样的,为了提高区块链的校验效率,把一个区块里的所有交易记录,构建成Merkle树这样的二叉树结构,如果交易记录是奇数,例如图中的3个记录,那么剩下的二叉树节点由自己填补:图中的交易2和自己构成了一个二叉树。以此类推,直到根节点。二叉树的两个交易记录哈希值直接串联,作为下一个二叉树的输入。通过这种方式,如果有人更改任何一个交易记录,按照前面SHA256加密哈希的特性,那么Merkle根节点就会变动很大,以致其他节点在验证区块链的哈希值时,能够很明显地发现问题。


区块体里记录了所有这个区块时间段里产生的交易记录,一个区块体至少包括一个交易,coinbase交易,就是创建这个区块,系统赠送给矿工的比特币交易。交易记录也是前后相连的链式结构,上一个交易记录的2次SHA256哈希值,说明了比特币的来源。如果需要交易,通过节点A的私钥,产生A的数字签名,和交易记录中的公钥相互验证,也就是授权,然后就可以按照节点B的地址,将比特币发送给节点B了。


由于都是这种链式结构,区块链可以按照哈希值,一直追溯到中本聪的“创世区块”,交易记录可以追溯到产生该比特币的“coinbase”交易。


区块头里的字段,时间戳,记录了该区块的创建时间。有一个经常被诟病的地方就是,这些交易记录都是按照区块产生的时间记录的,而不是交易产生的时间,因此,这个对一些交易的追溯提出了相当的挑战。这里还要一个难度值,为了控制发行货币(也就是发行比特币的速率)速率,通过这个难度值来控制区块产生的速度为每10分钟一个区块。最后要看这个随机数,随机数是用来计算工作量证明的。前面的所有字段,都是有据可依,无法更改的,可以更改的就是这个随机数。通过更改这个随机数,来得到不同的计算结果,小于系统约定的数值,则为成功。


现在,我们看一个实际的流程。用户A想把比特币支付给用户B,首先要知道用户B的钱包地址。B可以通过钱包,产生一对公私钥,通过一些处理,得到新的私钥和钱包B的地址。通过数字签名,B将钱包地址发给A。A根据B的地址,发起一个交易,通过自己的数字签名授权,将这个交易发给B,这时,B已经收到了这些比特币,但是还不能用,因为,没有得到系统的确认。之后,A向全网内所有人广播,告诉其他节点有关交易的信息。类似的交易重复发生,直到区块确权时间到,矿工们开始竞争记账权。首先计算Merkle根节点的哈希值,然后不断调整区块头中的随机数,争取小于系统的设定值,此为工作量证明。第一个算出结果的矿工,得到系统给予的比特币奖励,也向全网广播这个消息。其他节点在收到该消息时,结束工作量证明,并对区块进行验证(随机数),如果验证合格,就将区块接入到区块链的末尾。


首先,如何利用公私钥产生相应的地址。B通过钱包,生成256位的私钥,基于椭圆曲线加密算法,得到有前缀的512位公钥哈希字符串,经过SHA256算法,得到256位的哈希加密字符串,通过RIPEMD160算法,得到160位的公钥哈希字符串,使用base58算法,将二进制字符串翻译成人眼可识别的字符串,也就是B钱包的地址。


其次,在发送真正的广播之前,用户A将用户B交易的真实ID,通过inv消息(inventory message)发送给用户A在P2P网络中的所有邻居节点,邻居节点在收到inv消息之后,会返回getdata消息至用户A,用来“拉取”交易ID对应的交易详情。在邻居节点收到交易的所有信息之后,他们验证交易的合法性。主要是看每个输入的比特是否是未使用的比特币,输入和输出的比特币必须相等。如果合法,他们就重复用户A的动作,实现交易消息的广播。值得注意的是,这里的消息刷新是每100ms刷新一次。而且,A并不是把所有的交易记录都发给B,而是随机选取1/4交易记录发给B,然后B再跟他的邻居或者A拉取剩下的3/4交易记录。本来这种设计是为了降低网络的负载,但是,根据一些研究结果显示,也没有起到太多的促进作用。


第三,上下文固定,只能通过随机数的不断尝试,来进行暴力破解,争取小于系统要求的门限值。最后的胜出者将区块链入区块链的末尾,这里一定要指出,只是链接到末尾,而不是确认。区块链为了防止51%攻击,延迟6个区块再对这个区块进行确认。


由于在计算小于系统要求的门限值时,随机数并不唯一。因此,同一时间段内全网不止一个节点能计算出随机数,即会有多个节点在网络中广播它们各自打包好的临时区块(都是合法的)。某一节点若收到多个针对同一前续区块的后续临时区块,则该节点会在本地区块链上建立分支。随着区块链的持续生成,系统会选择工作量最多,也就是区块链高度最高的区块链作为主链进行延续。


前面提到了一个区块链接到区块链的末尾,并不是最终的确认。要延迟6个区块,每个区块10分钟,也就是1个小时,才对这个区块进行确认,也就是最终写入区块链。这里主要涉及到双花问题和51%攻击。



双花问题,是双重支付问题,主要是指一笔钱同时用作不同交易。例如,A把100个比特币,拿去到4S店的B买辆车,同时,又拿去电脑城的C买个电脑。但是,一般来说,基于链式的区块链有效杜绝了这个问题。因为,在同一个区块时间里,矿工有全局所有的交易记录,能够轻松识别同一份比特币被用到了两个不同的地方;如果不在同一个区块时间,那么,经过一个区块的确认,权限已经转移,也就是说,本来属于A的比特币,被交易给了B或者C,只有B或者C的私钥才能进行授权了。所以,一般双花问题,会跟51%一起,被黑客用来进行撤销攻击。也就是说,黑客给B发送比特币,B收到比特币以后,开始向黑客发送货物或商品。但是黑客通过新建一个区块分支,其中将交易改为100比特币交易给自己,通过和系统产生区块链的速率进行竞争,当黑客篡改的区块链高度大于系统区块链高度时,系统认可黑客的区块链,达到了篡改交易数据的目的。这个过程,可以建模成二项式随机过程。


为何要延迟6个区块来确认呢?当攻击者哈希比率恒定,延迟确认区块数越多,双花攻击成功率越低,因为要证明的工作量越多。但是在延迟区块大于6之后,减少的概率明显越来越低,此外,还考虑到交易的延迟带来的用户体验差的因素,所以,比特币区块链把延迟确认区块数定为6。


这里问一个问题,如果攻击者不足网络全部算力的51%能进行有效攻击么?答案是可以,因为根据工作量证明机制,只要计算一个符合规则(例如小于前面连续6个零开头的数)的数就算是成功,答案并不唯一。有一点点运气成分在里面。


从区块链的发展来看,区块链经历了3个阶段,首先是记录价值信息,例如记录比特币的历史交易信息,记录山寨币的虚拟资产信息,其次是记录商品服务的交易和位置信息,例如为管理产品交易和服务开发应用程序,为共享经济的物权交易开发应用程序。第三是制定未来的规则,这个是智能合约的阶段。从智能合约以后,称之为区块链2.0时代,以前的称之为区块链1.0时代。从发展分类来看,一类是证明机制,例如,竖轴将证明机制从工作量证明机制,改为其他证明机制,例如,PoS股权证明机制,PBFT拜占庭容错机制等。一类是我们刚刚说的,记录对象的不同。还有一类是入网许可的变动,以前的区块链是共有链,允许所有人接入。现在发展成联盟链和私有链,只有加入联盟的,才能链入区块链,或者直接在一个公司内部,部署区块链,叫做私有链。最后,还有一种是混合链,即可以公有接入,也能够支持企业私有化。


区块链的演化方向,我觉得重点是2个。一个是侧链,通过SPV简单交易认证机制,让比特币和其他账簿资产在多个区块链之间转移。还有一个是智能合约。其实,以前区块链1.0也能使用脚本来实现一些逻辑,但是,这些脚本不是图灵完备的,不能进行循环和条件判断,所以,智能合约弥补了这个缺陷,是图灵完备的编程语言,开启了区块链的另一个浪潮。


区块链的意义,从三个方面来看。它的学术意义是,在无信任的环境下,在整个网络中的任意节点建立起共识机制,而无需担心数据被篡改。


它的应用意义是,随着数据库从集中式纵向扩展,向分布式横向扩展发展,纵向扩展就是通过添加内存、存储和CPU,增强单台机器的性能。这种纵向扩展会遇到吞吐量瓶颈等问题。分布式数据库通过横向扩展,提升了吞吐量和计算效率,也开启了大数据时代。分布式数据库主要分为以Storm为代表的流数据库,Hadoop为代表的批处理数据库,以Spark为代表的内存数据库和以Neo4j为代表的图形数据库。区块链的意义在于,增加了一个分支,基于时间轴的分布式数据库。


区块链的战略意义是,基于创建信任的机器,促进价值的全球流动。如果说基于TCP/IP的第一代互联网实现了信息的全球流动,像WWW和HTTP协议,区块链就是把各个机构和个人,映射到虚拟世界,基于数学这种人类文明的最大公约数,汇集世界上不同人群、不同权利群体的共识,实现了价值,或者说资产的全球实时流动。


二、区块链的产业生态和流程再造


全球已经有24多个国家正在投资区块链技术,80%的银行将在2017年前启动区块链项目,90多个中央银行加入了区块链讨论,90多个公司加入了区块链联盟。在过去三年里,区块链的风险投资超过了14亿美元,产生了2500+的区块链相关专利。


截至2016年9月26日,一共有682种加密货币,总市值为$11,962,051,199美元。其中,比特币占79%,以太坊占9%,Ripple和莱特币分别占2%,并列前三。区块链的风险投资在2015年第四季度出现了一个明显低谷,在2016年第一季度出现回升。在谷歌趋势里,区块链搜索热度区域排名为印度第一,依次是澳洲、印尼、加拿大、英国和美国。这里特别需要注意的是,谷歌目前没有中国的数据,暂时不知道中国和其他国家的搜索热度对比。因此,我们基于百度指数做了分析,发现区块链的热度从2015年8月开始,一直呈上升趋势,与2015年10月首届全球区块链峰会的宣传不无关联。到2016年1月,央行宣布推出数字货币,虽然央行早就对数字货币有专门团队研究,但仍然促使热词指数显著拉升。直至2016年6月,全球闻名的、也是最大的众筹项目DAO被黑客攻击,最后通过硬分叉解决。区块链的价值受到了大众质疑,热词指数明显下滑。2016年8月,工信部发布区块链的两年规划,指数又开始反弹。


联合国社会发展部(UNRISD)在2016年初发布《加密货币以及区块链技术在建立稳定金融体系中的作用》报告,提出了关于利用区块链技术构建一个更加稳固的金融体系的想法,并认为区块链技术在改善国际汇兑、国际结算、国际经济合作等领域有着很大的应用发展空间;国际货币基金组织也针对各国关注的数字货币问题发布《关于加密货币的探讨》报告,对基于区块链技术的加密货币的未来发展进行了具体的分析和阐述。


目前,我国的区块链产业主要围绕算力基础设施,辐射数字货币,衍生至区块链应用这样一个渗透过程。基础设施包括芯片矿机、矿池和云算力,数字货币、钱包和交易所构成货币体系,资产鉴证、金融服务、慈善等形成了丰富的应用生态。从发展趋势来说,矿机经历了CPU、GPU、FPGA,直至现在通过ASIC芯片来定制挖矿,可以从矿机算力曲线图看出,矿机的算力一直处在飙升的趋势。数字货币中,美籍华人李启威是莱特币的创始人。我国还有其他7余种国产数字货币,但都不太普及。应用生态中,我国正从区块链1.0时代逐步跨入区块链2.0时代,智能合约将得到广泛地应用。


三、区块链的存在问题和政策建议


区块链也会遇到分布式系统中的CAP原理,也就是,在可分区、一致性、可及性三者间只能满足其二。中国人民银行的陈一希这篇文章提出了,区块链在高效率低能耗、去中心化和安全三个方面,也能只选其二,存在“不可能三角”悖论。


面对“代码即标准”的产业现实,对比特币区块链的开源贡献进行了分析,发现在贡献代码最多的7个人中,没有一个是中国人。在Others门类里,200多位开源贡献者中,也没找到一个中国人。比特币区块链技术实现运行时“去中心”的同时,也强化了设计时的“中心化”。一旦代码形成了规模,控制权将掌握在少数程序员手中,到时候就该担忧我国在该领域是否具有话语权了。


此外,当比特币区块链的挖矿成为一种产业,或者当有国家力量参与时,其网络中“每个矿工机会均等”的假设不再成立,例如目前比特币的“矿池”和“矿场”掌握了绝大部分的算力,一台普通PC 机的算力从概率上来说要200 年才能挖到一次矿,已经有向中心化发展的趋势。


区块链是多种已有技术(例如私钥加密算法、P2P网络、工作量证明机制PoW等)集成创新的结果,这些技术从诞生至今已经十余年,虽然发现并改进了不少弊端,但仍存在很多难以解决的问题,需要谨防这些弊端综合起来产生的严重后果。


尚未成熟的区块链技术,也面临着平台安全、应用安全的严峻形势。2011年6月,Allinvain被盗走了25000个比特币,成为比特币历史上第一个因为黑客攻击而遭受重大损失的玩家。2012年9月,比特币平台Bitfloor被一个黑客成功攻破,损失24000个比特币,Bitfloor平台也于2013年4月被迫关闭。2016年6月,基于区块链技术的全球最大众筹项目The Dao被黑客攻击,导致价值6000万美元的360多万以太币被劫持,引起业内震动和高度关注。


除此之外,依托区块链技术的比特币,由于其匿名特性,曾被广泛用于洗钱、恐怖活动、毒品交易等非法活动,例如“丝绸之路”网站,不仅仅允许用户使用比特币匿名交易,还采用“洋葱路由”(Tor)让追踪更加困难。这种超级安全性滋生了诸如黑枪、毒品、信用卡资料、色情服务和黑客服务等众多非法交易,最终被美国联邦调查局于2013年2月捣毁。

顶:23 踩:4
对本文中的事件或人物打分:
当前平均分:-1.52 (56次打分)
对本篇资讯内容的质量打分:
当前平均分:-1.6 (53次打分)
【已经有45人表态】
21票
感动
5票
路过
2票
高兴
3票
难过
4票
搞笑
6票
愤怒
2票
无聊
2票
同情
上一篇 下一篇
工业电动绞盘液压绞盘汇总

欣宇时代

    消防绞盘

欣宇时代

    拓松汽车户外网


    中国汽车绞盘网


    中国宠物医师网