区块链技术的调研综述报告_第1页
区块链技术的调研综述报告_第2页
区块链技术的调研综述报告_第3页
区块链技术的调研综述报告_第4页
区块链技术的调研综述报告_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

区块链技术调研报告课程:老师:组号:组员:院系:计算机科学学院3月22日目录一、区块链的起源 1二、区块链的发展历程 1三、区块链原理 13.1什么是中心化? 23.2为什么要去中心化? 23.3谁还可以依靠? 4四、区块链技术 74.1技术特点 74.2公有链、私有链、侧链 84.3关键技术 94.3.1、采用工作量证明达到去中心化及公正性 104.3.2每笔交易采椭圆曲线数位签章演算法加密 114.3.3Hashcash演算法及多种Hash函数确保资料不被窜改 114.3.4经由MerkleTree将大量讯息缩短成一个Hash值 124.3.5用时间戳伺服器(TimestampServer)确保区块序列 12五、区块链存在的问题 12六、区块链的研究方向 13一、区块链的来源,区块链技术奠基性论文《比特币:一种点对点电子现金系统》横空出世,该文作者中本聪初次提出了区块链的概念。中本聪认为首先,在中心化的体系内,价值分散在各中心手中,由于各中心的系统不同,各中心的互通成本非常大;另首先,由于少数中心化的机构掌握了多数的价值,因此价值的流通受制于中心化机构的体系规定,造成了一种高成本、低效率的运作现状;最后,由于全部数据均存储于中心化机构中,更容易遭恶意破坏者的篡改。基于上述现存的问题,中本聪在区块链技术的基础上,创立了比特币,也正是比特币网络使得区块链进一步完善并正式进入了公众视野。现在,以太坊、超级账本Fabric等的许多应用已经开始出现在生活中。区块链技术是构建比特币数据构造与交易信息加密传输的基础技术,该技术实现了比特币的挖矿与交易。区块链技术是指通过去中心化的方式集体维护一种可靠数据库的技术方案。该技术方案重要让区块(Block)通过密码学办法有关联起来,每个数据块包含了一定时间内的系统全部数据信息,并且生成数字签名以验证信息的有效性并链接到下一种数据块形成一条主链。通过区块链技术,互联网上的各个顾客成为一种节点并互相连接起来,全部在此区块链架构上公布的内容都会在加密后被每一种节点接受并备份,换而言之每一种节点都能够查看历史上产生的任何数据。各节点将加密数据不停打包到区块中,再将区块公布到网络中,并按照时间次序进行连接,生成永久、不可逆向的数据链,这便形成了一种公开透明的受全部顾客的监督的区块链。二、区块链的发展历程-,经济形态以比特币及其产业生态为主;-,区块链随着比特币进入公众视野,新生的钱包支付和汇款公司出现,区块链经济扩散到金融领域。区块链底层技术创新不停。区块链技术从比特币系统中剥离出来。开始探索行业应用,出现了大量区块链创业公司。ICO的火热让区块链受到前所未有的关注。那么,产生的区块链含有什么价值呢?事实上这从区块链的特性上就能够得出结论:去中心化、交易点对点、不可篡改的特性能够实现机器信任;交易不可逆、信息加密的特性能够实现价值传递;另外信息点对点、不可篡改等还能够实现智能合约。三、区块链原理

区块链(BlockChain)是指通过去中心化和去信任的方式集体维护一种可靠数据库的技术方案。该技术方案让参加系统中的任意多个节点(电脑),把一段时间系统内全部信息交流的数据,通过密码学算法计算和统计到一种数据块(block),并且生成该数据块的指纹用于链接(chain)下个数据块和校验,系统全部参加节点来共同认定统计与否为真。区块链的概念初次于年11月1日在论文《比特币:一种点对点的电子现金系统(Bitcoin:APeer-to-PeerElectronicCashSystem)》中提出,作者为自称中本聪(SatoshiNakamoto)的个人(或团体)。上面听起来是不是很拗口?这样体现会不会好点:区块链本质上是一种去中心化的分布式账本数据库,其本身是一串使用密码学有关联所产生的数据块,具体来讲:一种随机哈希算法的成果,它唯一做的事情就是获得某些输入然后进行计算,并得到一串64位的随机数字和字母的字符串,每一种数据块中包含了多次比特币网络交易有效确认信息,区块链就是由一连串、不重复、的数据块构成的。3.1什么是中心化?要在淘宝上买一台电脑,交易流程是:你将钱打给支付宝-支付宝收款后告知卖家发货-卖家发货-你确认收货-支付宝把钱打给卖家。在这个过程中,即使你是在和卖家交易,但是这笔交易还牵扯到了除了你和卖家的第三方,即支付宝,你和卖家的交易都是围绕支付宝展开。因此,如果支付宝系统出了问题便会造成这笔交易的失败,因此考虑极端状况,如果支付宝跑路了或者是拿了钱不却不承认你的交易或者是支付宝所在的都市由于开G20把全部人都赶走了,那么就。。。在金融领域中,中心化的例子就更多了:1、银行作为中心平台嫁接借贷双方2、交易所作为中心平台嫁接投资人和上市公司3、SWIFT作为中心平台嫁接A国家的支付机构和B国家的支付机构这样不是挺好的嘛?为啥要去中心化?3.2为什么要去中心化?(1)心化的解决方式就要显得简朴诸多,就拿你在淘宝上买电脑的事情举例,你只需要和卖家交换钱和电脑,然后双方都声称完毕了这笔交易,结束。其实如果只考虑两个人的交易并不能把去中心化的好处完全展示出来,构想如果有成千上万笔交易在进行,去中心化的解决方式会节省诸多资源,使得整个交易自主化、简朴化。(2)安全可靠。在区块链系统中,整个网络没有中心化的硬件或者管理机构,任意节点之间的权利和义务都是均等的,全部的节点都有能力去用计算能力投票,从而确保了得到承认的成果是过半数节点公认的成果。即使遭受严重的黑客攻击,只要黑客控制的节点数不超出全球节点总数的二分之一,系统就仍然能正常运行,数据也不会被篡改。(3)去信任化,公开透明。传统的交易建立在信任的基础之上,尽管信任中心平台获取了大量信息,但是从中流出的、披露的信息却极为有限,造成大量数据被浪费和隐藏。参加区块链系统的每个节点之间进行数据交换则无需互相信任。在区块链系统中,由于整个系统的运作规则是透明的,全部的数据内容也是公开的,因此在系统指定的规则范畴和时间范畴内,节点之间不能也无法互相欺骗。(4)集体维护,减少成本。在中心化网络体系下,系统的维护和经营依赖于数据中心等平台的运维和经营,成本不可省略。区块链则构建了一整套合同机制,系统中的数据块由整个系统中全部含有维护功效的节点来共同维护的。这些含有维护功效的节点是任何人都能够参加的,每一种节点在参加统计的同时也来验证其它节点统计成果的对的性,维护效率提高,成本减少。(5)排除了被中心化代理控制的风险。图23.3谁还能够依靠?但是如果没有了中心监管平台支付宝、银行、交易所、SWIFT等权威机构,怎么能确保每笔交易的精确性和有效性呢?你付了钱收不到货怎么办?或者你借给张三钱,张三后来不承认怎么办?这就引出来一种出名的难题:拜占庭将军问题(Byzantinefailures),简朴来讲,拜占庭帝国军队的将军们必须全体一致的决定与否攻击某一支敌军。问题是这些将军在地理上是分隔开来的,并且将军中存在叛徒。叛徒能够任意行动以达成下列目的:欺骗某些将军采用攻打行动;促成一种不是全部将军都同意的决定,如当将军们不但愿攻打时促成攻打行动;或者困惑某些将军,使他们无法做出决定。如果叛徒达成了这些目的之一,则任何攻击行动的成果都是注定要失败的,只有完全达成一致的努力才干获得胜利。这个难题也被称为“拜占庭容错”或者“两军问题”,(百度百科有具体解释,此处就不赘述了)此问题是由莱斯利·兰伯特提出的点对点通信中的基本问题,含义是在存在消息丢失的不可靠信息通道上试图通过消息传递的方式达成一致性是不可能的。因此对一致性的研究普通假设信息通道是可靠的,或不存在本问题,但事实上,信息通道往往是不可靠的,怎么来解决这个问题呢??。。简朴答案就是“群众一起监管”但是群众监管怎么来实现呢?举个“栗子”我们先来建立一种去中心化的借贷系统:1、如果A借了B100块钱,这个时候,A在人群中大喊“我是A,我借给了B100块钱!”,B也在人群中大喊“我是B,A借给了我100块钱!”,此时路人甲乙丙丁都听到了这些消息,因此全部人都在心中默默记下了“A借给了B100块钱”。请注意:这个时候一种去中心化的系统就建立起来了,这个系统中不需要银行,也不需要借贷合同和收据,严格来说,甚至不需要人与人长久的信任关系(例如B忽然又改口说“我不欠A钱!”,这个时候群众就会站出来说“不对,我的小本本上统计了你某天借了A100块钱!”)。2、在上述的模型中,所谓的“100块钱”已经不重要了。换句话说,任何东西都能够在这个模型中交换,甚至A能够凭空发明一种东西,只要大家承认,A就能够让这个东西流通。例如:A在人群中高喊一声“我发明了50个DX!”,A甚至不需要懂得DX是什么,也不需要关心世界上是不是真的有DX,只要大家都听到,然后在自己的小本本上记下“A有50个DX”,于是A就真的有50个DX了。从此后来,A便能够声称A给了某人1个DX,只要路人甲乙丙丁都收到并且承认了这一信息,那A就算完毕了这次交易,哪怕世界上没有DX。你现在脑海中是不是出现出了三个字——“比特币”3、假设过了很长一段时间,A凭空发明的DX已经在这个系统中流通了起来,大家都开始承认了DX。但是这个系统中一共就只有50个DX,于是有人动了坏心思,他在人群中高呼“我有10个DX!”怎么办?大家是直接在本本上记下他有10个DX么,这样不是人人都能够伪造DX了么?4、为了避免这种现象发生,A决定在A发明DX的时候打上标记(更精确地说,A是给A喊的那句“我发明了50个DX”打上标记,例如标记为001),这样后来在每一笔交易的时候,A在高喊“A给了某某1个DX!”的时候,会附加上额外的一句话:“这1个DX的来源是记为001的那条统计,A的这句话标记为002!”。我们再抽象一点,某人喊话的内容的格式就变成了:“这句话编号xxx,上一句话的编号是yyy,再上句话编号是zzz...我给了某某1个DX!”,这样就解决了伪造的问题。其实上述模型就变成一种简化的中本聪第一版比特币区块链合同。也就是说在群中的监督下,交易发生并且不可被逆转。但是为什么群众乐意帮忙统计呢?5、为什么群众会听话记账?为了激励群众帮A传话和记账,A决定给第一种听到他喊话并且统计在小本本上的人奖励:1个DX,这个DX是整个系统对你幸苦记账的酬劳,而你统计了这句话之后,要立刻告诉其它人你已经统计好了,让别人放弃继续统计这句话,并给你自己的统计编号让别人有据可查,然后你再把A的话加上你的统计编号一起喊出来,供下一种人记账。当这个规则定下后来,这个系统中一定会出现一批人,他们开始竖着耳朵监听周边发出的声音,以抢占第一种记账的权利。对的,你脑海中是不是又出现出了“比特币挖矿”的字眼?有关比特币挖矿,有个很形象的例子:单身汪们要找女票,国民岳母说我有好多女儿,这样吧我给你们出点题目,解出一种就给其中一种姑娘的微信号。单身汪们疯狂竞争,想破脑袋去解题。只要其中一只汪解出一道题,就立马得意洋洋地昭告天下,示威全部单身汪,这个姑娘是我的啦,你们放弃吧。其它单身汪们即使不服也没有方法,惆怅懊恼也不是个事儿啊,还是麻溜地立马去解下一道题目吧。这只喜赢姑娘的幸运小汪被岳母承认后还能得到25个货币单位的彩礼,简直人生赢家。6、群众听谁的?在这个系统中,如果A和另一种人C几乎同时地喊出一句:“我看到了!”。由于听众所处的位置不同,一定会有人先听到A说的那句话,而另外某些人则先听到C的那句话,如果我们规定只能有一种人说出这句话,那终究这句话是谁说的?如果不加任何条件,那么上述的状况一定会这样发展:一部分人认为这句话是A说的,在听到这句话之后开始记账,之后他们所做的全部事情都是基于这个事实,并且随着这个信息一次次的传下去,这条信息链会越来越深;而另外一群认为是C先说这句话的人,也会按照这样的趋势发展。这样,原本是一条唯一的信息链,在我们喊出“我看到了”这句话之后,就分叉了!?这会造成如何的状况呢?按照我们的构想,应当每个人的小本本上统计的东西都是同样的,都是一条能够把全部信息串联起来的链条。但是在这一刻,他们小本本上统计的东西不同了!这还怎么玩?后来还怎么拟定交易和信息的真实性!?为理解决这个问题,A又追加了新的规则:每个人在统计小本本的时候,需要脱鞋然后用脚拿笔,在小本本上用正楷体书写(即加入:工作量证明ProveofWork,一种哈希算法)!有了这个规定,由于用脚写字难度很大,每个人最少需要10分钟才干写完,并且由于每个人用脚写字的纯熟度不通,写完这句话所用的时间也不同,因此一定会有人先写完然后高呼“我写完了!那句话是A喊的!”,这样其它正在写这句话的人便会停笔,然后在小本本上重新开始写“那句话是A写的,上一句的编号是xxx...”,然后系统继续周而复始重复此动作。下面是一种有趣的比方:“群众听谁的”——中本聪破解“拜占庭将军问题”的算法“在小本本上统计”——比特币挖矿“脱鞋用脚写字”——比特币挖矿难度“脱鞋写字速度”——算力“脱鞋子鞋子规则”——工作量证明链看完这个例子,让我们再回到理论的高度,无论多大的系统或者多小的网站,普通在它背后都有数据库。那么这个数据库由谁来维护?在普通状况下,谁负责运行这个网络或者系统,那么就由谁来进行维护。如果是微信数据库必定是腾讯团体维护,淘宝的数据库就是阿里的团体在维护。大家一定认为这种方式是天经地义的,但是区块链技术却不是这样。如果我们把数据库想象成是一种账本:例如支付宝就是很典型的账本,任何数据的变化就是记账型的。数据库的维护我们能够认为是很简朴的记账方式。在区块链的世界也是这样,区块链系统中的每一种人都有机会参加记账。系统会在一段时间内,可能选择十秒钟内,也可能十分钟,选出这段时间记账最快最佳的人,由这个人来记账,他会把这段时间数据库的变化和账本的变化记在一种区块(block)中,我们能够把这个区块想象成一页纸上,系统在确认统计对的后,会把过去账本的数据链接(chain)在这张纸上,然后把这张纸发给整个系统里面其它的全部人。然后周而复始,系统会寻找下一种记账又快又好的人,而系统中的其它全部人都会获得整个账本的副本。这也就意味着这个系统每一种人都有一模同样的账本,这种技术,我们就称之为区块链技术(Blockchain),也称为分布式账本技术。由于每个人(计算机)都有一模同样的账本,并且每个人(计算机)都有着完全相等的权利,因此不会由于单个人(计算机)失去联系或宕机,而造成整个系统崩溃。既然有一模同样的账本,就意味着全部的数据都是公开透明的,每一种人能够看到每一种账户上终究有什么数字变化。它非常有趣的特性就是,其中的数据无法篡改。由于系统会自动比较,会认为相似数量最多的账本是真的账本,少部分和别人数量不同的账本是虚假的账本。在这种状况下,任何人篡改自己的账本是没有任何意义的,由于除非你能够篡改整个系统里面大部分节点。如果整个系统节点只有五个、十个节点可能还容易做到,但是如果有上万个甚至上十万个,并且还分布在互联网上的任何角落,除非某个人能控制世界上大多数的电脑,否则不太可能篡改这样大型的区块链。该部分总结因此,区块链解决的核心问题不是“数字货币”,而是在信息不对称、不拟定的环境下,如何建立满足经济活动赖以发生、发展的“信任”生态体系。四、区块链技术4.1技术特点 区块链是一种共享的分布式数据库技术。尽管不同报告中对区块链的一句话介绍措辞都不相似,但下列4个技术特点是共识性的。1.去中心化(Decentralized):图1的左侧描述了当今金融系统的中心化特性,右侧描述的是正在形成的去中心化金融系统,其没有中介机构,全部节点的权利和义务都相等,任一节点停止工作都会不影响系统整体的运作;图1,出自花旗报告DigitalDisruption:HowFinTechisForcingBankingtoaTippingPoint2.去信任(Trustless):系统中全部节点之间无需信任也能够进行交易,由于数据库和整个系统的运作是公开透明的,在系统的规则和时间范畴内,节点之间无法欺骗彼此;3.集体维护(CollectivelyMaintain):系统是由其中全部含有维护功效的节点共同维护的,系统中全部人共同参加维护工作;4.可靠数据库(ReliableDatabase):系统中每一种节点都拥有最新的完整数据库拷贝,修改单个节点的数据库是无效的,由于系统会自动比较,认为最多次出现的相似数据统计为真。图2,出自高盛报告Blockchain:PuttingTheoryintoPractice图2为简化起见,仅展示了6处保存数据库副本的节点;在3个交易序列中,前2个交易的数据和签名得到了全部6个节点的验证,但第三个交易的位置5没有通过验证,将被其它节点的“一致意见”更改。4.2公有链、私有链、侧链区块链按照访问和管理权限能够分为公有链(PublicBlockchain)和私有链或联盟链(PrivateBlockchain)。公有链是完全开放的区块链,全世界的人都能够参加系统维护工作,这使得公有链还含有下列2个特点。1.开源(OpenSource):由于整个系统的运作规则公开透明,这个系统是开源系统;2.匿名(Anonymity):由于节点之间无需信任彼此,全部节点也无需公开身份,系统中每一种节点的匿名和隐私都受到保护。私有链或联盟链在开放程度和去中心化程度方面有所限制,参加者需要被提前筛选,数据库的读取权限可能是公开的,也可能像写入权限同样只限于系统的参加者。公有链的典型代表是比特币区块链,任何人都能够通过交易或挖矿读取和写入数据。私有链或联盟链的典型案例是Ripple和R3CEV,前者现在为属于联盟组员的银行类金融机构提供跨境支付服务,但愿取代环球同业银行金融电讯协会(SWIFT)的跨境转账平台,打造全球统一的网络金融传输合同;后者旨在推动制订适合金融机构使用的区块链技术原则。侧链(Sidechains)是用于确认来自于其它区块链的数据的区块链,通过双向挂钩(TwoWayPeg)机制使比特币、Ripple币等多个资产在不同区块链上以一定的汇率实现转移。侧链进一步扩展了区块链技术的应用范畴和创新空间,使区块链支持涉及股票、债券、金融衍生品等在内的多个资产类型,以及小微支付、智能合约、安全解决机制、真实世界财产注册等;侧链还能够增强区块链的隐私保护。所谓“多个资产在不同区块链上转移”其实并不会实际发生。以比特币为例,侧链的运作机制是,将比特币临时锁定在比特币区块链上,同时将辅助区块链上的等值数字货币解锁;当辅助区块链上的数字货币被锁定时,原先的比特币就被解锁。4.3核心技术比特币区块链的核心核心技术,涉及用Hashcash演算法来进行工作量证明,且交易过程采用椭圆曲线数位签章演算法来确保交易安全,并在每笔交易与每个区块中使用多次Hash函数以及MerkleTree,同时也使用时间戳来确保区块序列比特币区块链的核心核心技术,涉及采用Hashcash演算法来进行工作量证明,让区块链中的各节点有机会参加验证,达成公正性,且交易过程采用椭圆曲线数位签章演算法来确保交易安全,并在每笔交易与每个区块中使用多次Hash函数以及MerkleTree,不只是为了节省储存空间,更重要的是藉由将前一种区块的Hash值加入新区块中,让每个区块环环相扣,也因此做到所谓的可追踪且不可窜改的特性,同时也使用时间戳来确保区块序列,下列便依序解释这些核心技术。4.3.1、采用工作量证明达成去中心化及公正性首先,最核心的便其工作量证明机制(ProofofWork,POW),这是一种能够让每个参加的节点可共同参加交易验证的方式,来实现一种能多方共同维护的单一系统,并共享同一份统计交易的帐本,以形成一种基于零信任基础,却能实现去中心化的P2P网路系统。工作量证明是让任一运算节点,耗费时间和运算资源来计算出一组数学公式的成果,且要完毕一次有效的工作量证明,需通过一连串地尝试与失败。但是,一旦这个数值被算出来后,其它参加节点也可用有关的数学公式,便能很容易去验证这个值与否有效。比特币区块链采用Hashcash演算法(杂凑现金演算法)作为工作量证明,让各节点经由POW计算来产生每一种有效的新区块,再经由其它节点验证并接受。进行POW计算的过程也被称作挖矿,诸多人用解一道数学题、或是解一种数独来形容,但是,如何才是真的算出一种有效的新区块,这些节点终究在算什么?由于每个区块中BlockHeader会包含许多固定的值,其中只有Nonce值为一随机值,因此每个节点进行POW计算时要算的就是,藉由不停替代这个Nonce值,来让这个区块的BlockHeaderHash值,不大于一种被设定好的难度目的值(DifficultyTarget),至于为什么要不大于这个目的值,则是由于这个难度值意味着每个区块在理论上应当要被产生完毕。这里提到的难度值(Difficulty)是指,节点要运算出低于困难度目的值的Hash值,平均需花多久时间,也就是平均要完毕一次POW的时间。而比特币区块链现在设定为,大概每10分钟会有节点成功算出新的区块,但是这10分钟只是基于理论值,实际每个新区块产生的时间,有可能只需要17秒(第407062个区块的实际产生时间),也有可能需要20分钟以上(第407068个区块的实际产生时间)。Difficulty可动态调节,现在每产生个区块会调节一次难度,以每10分钟产生一区块估算,大概是每两周会调节一次Difficulty。由于POW含有一定的难度,因此无法预期哪个运算节点能够最快算出新区块,藉此来确保交易验证的公正性。4.3.2每笔交易采椭圆曲线数位签章演算法加密比特币区块链便采用椭圆曲线数位签章演算法(ECDSA),与另一种RSA演算法,都属于公开金钥加密演算法(PublicKeyCryptography),公开金钥加密技术在1970年代被发明,也称为双金钥密码安全系统,每个使用者会拥有公开金钥(PublicKey)与私密金钥(PrivateKey)这两把钥匙,公开金钥可让其别人懂得,而私密金钥则只有本人懂得。当A要传送一笔讯息或交易给B时,需使用B的公开金钥来将这份交易加密,而这个加密过的讯息或交易,只有使用B的私密金钥才干解开。在比特币区块链中,比特币区块链便采用椭圆曲线数位签章演算法,每一种比特币区块链中的节点使用者,会同时拥有这两把金钥,以及一次性使用的比特币位址(Address),公开金钥可让区块链网络中的其别人懂得,而私密金钥则须自行保管,可用来接受货币、进行电子签章或是发送货币,而Address就像电子邮件同样可用来当作存取比特币的地址,使用者可重复获得新的Address,且能够在离线状态下产生,但是,每个Address只能使用一次。在比特币区块链中,每一枚电子货币被视为一串数位签章,使用者要进行比特币交易时,必须将前一笔交易以及收款方的公开金钥经由Hash产生数位签章,加到电子货币那串数位签章的后方。RSA加密演算法是一种非对称的加密演算法,运用两个质数作为加密与解密用的两把钥匙,金钥长度约在40个位元到1024位元。但是比特币所采用的ECDSA能算出更短的金钥长度,也就是能够使用相对较少的资源,做到与RSA相似的安全性。在ECDSA演算法中,由私密金钥算出公开金钥很容易,但要从公开金钥推回私密金钥却很困难。4.3.3Hashcash演算法及多个Hash函数确保资料不被窜改前面提到比特币区块链采用Hashcash演算法来进行工作量证明,Hashcash可将任意长度的资料经由Hash函数转换为一组固定长度的代码,原理是基于一种密码学上的单向杂凑函数(OneWayHashFunction),这种函数很容易被验证,但是却很难破解,还回推出原本的值。先前Hashcash演算法也被用来做阻挡垃圾邮件的机制。常使用的单向杂凑函数涉及MD5、SHA-1、SHA-256、SHA-384及SHA-512等,MD5的Hash值长度为128位元,即使广为使用,但因长度不够较容易破解,SHA-1的Hash值长度有160位元,虽比MD5好但仍然不够安全,因此美国国家安全局(NSA)又提出多个更复杂的SHA-2演算法,涉及224、256、384、512位元长度的Hash值算法。Hashcash最早在1997年由AdamBack提出,并于正式发表一篇描述杂凑现金系统的论文。比特币区块链采用Hashcash来建立一套几乎无法被窜改的电子现金系统,每个区块的BlockHeader都会被Hash成一串很难被回推的代码后,放进下一种区块中,来确保区块的对的性。4.3.4经由MerkleTree将大量讯息缩短成一种Hash值在比特币区块链中,每笔交易产生后,都已经被Hash成一段代码才广播给各节点,但是这样做还不够,由于在各节点的区块中,可能包含数百笔到数千笔的交易,因此,为节省储存空间并减少资源耗费,比特币区块链的设计原理采用MerkleTree机制,让这些数百到数千笔的交易Hash值,经由两两一组形成一种新Hash值的方式,不停重复进行,直到最后产生一组最后的Hash值,也就是MerkleTreeRoot,这个最后的Hash值便会被统计到BlockHeader中,只有32Bytes的大小。MerkleTree机制可大幅减少资料传输量与运算资源消耗,验证时,只需验证这个MerkleTree的Root值即可。4.3.5用时间戳伺服器(TimestampServer)确保区块序列比特币采用时间戳伺服器机制(TimestampServer),将每个区块Hash后加上一种时间戳(Timestamp)并公布出去,这个时间戳用来证明资料在特定时间的有效性,每一种时间戳章会与前一种戳章一起进行Hash,这个Hash值会在与下一种时间戳章进行Hash,因此而形成一种用来确保区块序列的链条。五、区块链存在的问题区块链重要要解决的问题分为以下三个:交易性能、隐私、监管,现在存在的问题具体可分为以下五点:一、难以修正,由于区块链中的交易统计是永久有效的,错误一旦造成就无法修正,只能通过修改区块链规则或者建立反向的交易来抵消,造成资源的浪费。因此,在实际的区块链应用时应考虑通过设立外部机制来解决修正问题。二、泄露隐私,由于区块链中的信息是共享透明的,交易中涉及的隐私存在被泄露的风险,个人信息的保护受到极大的挑战。如果这些数据被非法使用,将会产生诸多社会信用问题。在确保金融应用安全的前提下,应对隐私保护采用必要的方法,通过改善匿名账户算法,既要对信息追溯成功可控制,也要对敏感数据采集负责任。三、性能局限,非中心化的构造造成区块链的运行效率受限于网络的最弱节点。即使现在的区块链应用对网络容量和响应速度的规定都不高,但是随着交易规模提高、交易信息增多、交易频率加紧,区块链技术对存储资源和计算能力都将产生巨大的压力。区块链技术能否承载更加进一步的商业应用,取决于硬件水平的改善、网络性能的优化和算法效率的提高。四、原则各异,现在区块链的实施原则因应用场景的差别而不尽相似,将来区块链的应用范畴进一步扩大时,多区块链之间的互联可能会受阻于不统一的原则。另外,区块链的金融应用也亟待更加成熟的监管制度来进行规范。五、干扰市场,由于区块链允许交易自动执行,触发条件可能会不停产生正向反馈,造成价格波动的加速,从而扰乱市场的稳定。另外,过高的交易频率可能会进入交易循环而无法自动终止。六、区块链的研究方向金融区块链应用金融领域的核心价值:增进反洗钱和顾客身份审查。在区块链的创新和应用探索中,金融是最重要的领域,区块链技术在数字货币、支付清算、智能合约、金融交易、物联网金融等多个方面存在广阔的应用前景。支付环节需要可信任担保交易,如果有一种“可信任的超级系统”,让交易变得直观而安全,也就不需要第三方担保了,区块链的出现正好能够让这个想法变成现实。比特币是现在区块链技术最广泛、最成功的运用,由于其含有不可篡改的时间戳和全网公开的特性,得到了银行、证券、保险等金融行业的广泛信赖,近些年更是疯狂暴涨,甚至在许多国家比特币已经成为了正当货币。游戏区块链应用游戏领域的核心价值:把游戏权利交还给游戏玩家。区块链技术去中心化、智能合约、资产交

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论