欢迎来到天天文库
浏览记录
ID:14702098
大小:247.00 KB
页数:4页
时间:2018-07-30
《分布式账本有何神奇之处?区块链就凭它搞定信任难题!》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、分布式账本有何神奇之处?区块链就凭它搞定信任难题!一、区块链定义区块链技术自身仍然在飞速发展中,目前还缺乏统一的规范和标准。wikipedia 给出的定义为:Ablockchain—originally,blockchain—isadistributeddatabasethatmaintainsacontinuously-growinglistofdatarecordshardenedagainsttamperingandrevision.Itconsistsofdatastructureblocks—whichholdexclusivelydataininitialblo
2、ckchainimplementations,andbothdataandprogramsinsomeofthemorerecentimplementations—witheachblockholdingbatchesofindividualtransactionsandtheresultsofanyblockchainexecutables.Eachblockcontainsatimestampandinformationlinkingittoapreviousblock.最早区块链技术出现在比特币项目。作为比特币背后的分布式记账平台,区块链在无集中式监管的情况下,稳定运
3、行了近八年时间,支持了海量的交易记录,并未出现严重的漏洞。注:比特币历史上唯一已知的漏洞事件曾导致比特币的恶意增发,但问题很快被发现并修正,相关非法交易被撤销。公认的最早关于区块链的描述性文献是中本聪所撰写的 比特币:一种点对点的电子现金系统,但该文献重点在于讨论比特币系统,实际上并没有明确提出区块链的定义和概念。在其中,区块链被描述为用于记录比特币交易的账目历史。记账技术历史悠久,现代复式记账系统(DoubleEntryBookkeeping)是由意大利数学家卢卡·帕西奥利,1494年在《Summadearithmetica,geometrica,proportionie
4、tproportionalità》一书中最早制定。复式记账法将对账验证功能引入记账过程,提升了记账的可靠性。从这个角度来看,区块链是首个自带对账功能的数字记账技术实现。更广泛意义地看,区块链属于一种去中心化的记录技术。参与到系统上的节点,可能不属于同一组织,彼此互不信任;区块链数据由所有节点共同维护,每个参与维护节点都能复制获得一份完整记录的拷贝。跟传统的数据库技术相比,其特点应该包括:●维护一条不断增长的链,只可能添加记录,而发生过的记录都不可篡改;●去中心化,或者说多中心化,无集中的控制,实现上尽量分布式;●可以通过密码学的机制来确保交易无法抵赖和破坏,并尽量保护用户信
5、息和记录的隐私性。更进一步的,还可以将智能合约跟区块链结合到一起,让其提供除了交易功能外更灵活的合约功能,执行更为复杂的操作(实际上,比特币区块链已经支持简单的脚本计算)。这样扩展之后的区块链,已经超越了单纯数据记录的功能了,实际上带有点“普适计算”的意味了。从技术特点上,可以看到现在区块链技术的三种典型应用场景:二、基本原理区块链的基本原理理解起来并不难。基本概念包括:●交易:对账本状态的改变,如添加一条记录;●区块:记录一段时间内发生的交易和状态,是对当前账本状态的一次共识;●链:由一个个区块按照发生顺序串联而成,是状态变化的日志记录。如果把区块链作为一个状态机,则每次
6、交易就是试图改变一次状态,每次生成区块就是参与者对于其中包括的所有交易改变状态的结果确认。在实现上,首先假设存在一个分布式的数据记录本(这方面的技术相对成熟),这个记录本只允许添加、不允许删除。其结构是一个线性的链表,由一个个“区块”串联组成,这也是其名字“区块链”的来源。新的数据要加入,必须放到一个新的区块中来加入。而这个块(以及块里的交易)是否合法,可以通过一些手段快速检验出来。维护节点都可以提议一个新的区块,然而必须经过一定的共识机制来对最终选择的区块达成一致。具体以比特币为例来看如何使用了区块链技术?客户端发起一项交易后,会广播到网络中并等待确认。网络中的节点会将一
7、些等待确认的交易记录打包在一起(此外还要包括此前区块的哈希值等信息),组成一个候选区块。然后,试图找到一个nonce串放到区块里,使得候选区块的hash结果满足一定条件(比如小于某个值)。一旦算出来这个区块在格式上就合法了,就可以进行全网广播。大家拿到提案区块,进行验证,发现确实符合约定条件了,就承认这个区块是一个合法的新区块,被添加到链上。当然,在实现上还会有很多的细节。比特币的这种基于算力的共识机制被称为ProofofWork(PoW)。目前,要让hash结果满足一定条件并无已知的启发式算法,只能进行暴力尝试。
此文档下载收益归作者所有