




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、区块链技术的起源、演进与发展,从比特币到区块链,1,2,3,从比特币到区块链,4,什么是比特币?,1.1比特币的起源,A purely peer-to-peer version of electronic cash would allow online payments to be sent directly from one party to another without going through a financial institution. Satoshi Nakamoto, “Bitcoin: a peer to peer electronic cash system”, 200
2、8,比特币采用密码技术来控制货币的产生和转移,因此被称为密码货币(Cryptocurrency)。比特币采用去中心化的发行方式,通过工作量证明计算产生,采用分布式账本技术(区块链)来确认并记录所有的交易过程,通常被认为是区块链的第一个成功应用案例。,什么是比特币?,1.1比特币的起源,BitCoin网络中的任意两个用户可在无可信第三方参与的情况下进行P2P交易,并将每笔交易计入总帐中。,如何解决信任问题?,在比特币出现之前,一般采用建立可信第三方机构的方法,对交易进行记录。这种情景下,数字货币的流通对第三方机构的依赖程度很高,所以要求第三方具有很强的可靠性,同时存在第三方作恶的可能性。,能不能
3、构建一个去中心化的可信的记账系统呢?,1.1比特币的起源,比特币的信任构建方法,1.1比特币的起源,1,2,3,从比特币到区块链,4,比特币中的区块链,1.2比特币中的区块链,BitCoin采用了去中心化的区块链技术来完成交易记账,比特币中的区块链,比特币网络,账本,. . .,区块,1.2比特币中的区块链,区块,区块是一种记录交易的数据结构。每个区块由区块头和区块主体组成。区块头包含了除了交易相关信息以外的所有信息,区块主体负责记录前一段时间内的所有交易信息。,区块整体结构,区块示意图,区块头结构,1.2比特币中的区块链,区块链,每个区块通过包含上一区块hash值的方式,使得区块“链接”起来
4、构成区块链。,1.2比特币中的区块链,1,2,3,从比特币到区块链,4,公钥、地址,公钥通过这样一个过程得到:K = k * G。其中k是私钥,G是椭圆曲线成点的常数点,K是所得公钥。 其反向运算, 被称为离散对数问题,即已知公钥 K 来求出私钥 k是常困难的。 比特币地址是由公钥经过哈希运算再经过Base58Check编码后生成的。它是系统中用户的身份标识。,1.3比特币中的交易,私钥,个特币地址中的所有资的控制权取决于相应私钥的所有权和控制权。在特币交易中,私钥于成付特币所必需的签名以证明资的所有权。 比特币私钥其实是随机生成的二进制随机数,有效私钥的范围取决于比特币使用的椭圆曲线数字签名
5、标准。 私钥必须保密和备份。,1.3比特币中的交易,交易,笔特币交易是个含有输值和输出值的数据结构。 创建交易的过程就是“填写”交易需要的数据。,交易结构,1.3比特币中的交易,交易的结构,特币交易的基本单位是未花费的交易输出,简称UTXO(Unspent Transaction Output)。比特币币值最小单位是聪,类似于人民币中的分,1聪为0.00000001个比特币,UTXO是一定数量的聪。 被交易消耗的UTXO称为交易输。 由交易创建的UTXO称为交易输出。,1.3比特币中的交易,交易过程,1.3比特币中的交易,交易示例,Alice下载一个比特币客户端。 客户端自动生成一个钱包,随机
6、生成一个私钥和对应的比特币地址。,1.3比特币中的交易,获取比特币,向朋友Joe现金购买。 按下发送键后 钱包创建一笔交易 Joe的私钥签名这笔交易 公告比特币全网 矿工通过“挖矿”,使交易包括在一个区块中 将区块存储到全网公开账本(区块链),交易示例,1.3比特币中的交易,Alice去Bob的咖啡店消费。,交易示例,1.3比特币中的交易,1,2,3,从比特币到区块链,4,挖矿(达成全网共识),验证交易 每个全节点依据统一的标准对每个交易进验证。验证交易通过后,将交易加入交易池中。 构建区块 矿交易池中的一组交易构建个候选区块的主题,再构建区块头。 校验并广播区块 矿工成功构建一个区块后,广播
7、该区块到邻近节点。其他节点接到区块后依据统一的标准对区块进独验证,验证通过后再广播该区块,并将区块组装到节点保存的区块链上。 将区块组装进区块链 因为区块链是去中化的数据结构,所以不同节点间的状态会有不一致,但组装区块时,所有的节点都遵从选择“最长”的区块链,这样整个特币络最终会收敛到致的状态。,1.4挖矿原理概述,1.4挖矿原理概述,POW 共识机制,POW(Proof Of Work),工作量证明。 核心思想是通过计算能力竞争的方式来保证数据一致性从而达成共识。 在比特币系统中,各节点 ( 即矿工 ) 基于各自的计算机算力的相互竞争来解决一个求解困难但验证容易的 问题,最快解决该难题 的节
8、点获得区块记账权,即该参与方创建了一个区块,所有其他参与方更新本地区块链。,1.4挖矿原理概述,区块头结构,版本号 区块版本号,表示本区块遵守的验证规则 时间戳 该区块产生的近似时间,精确到秒 前一区块hash值 前一区块的哈希值,使用SHA256(SHA256(父区块头)计算,1.4挖矿原理概述,区块头结构,Merkle根hash值 该区块中交易的Merkle树根的哈希值,用于验证交易是否存在, 同样采用SHA256(SHA256()计算 目标值 该区块工作量证明算法的目标值 目标值 = 最大目标值 / 难度值 新难度值 = 旧难度值 * ( 过去2016个区块花费时长 / 20160 分钟
9、 ) 其中最大目标值为一个恒定值: 0 x00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 随机数 为了找到满足目标值所设定的随机数,1.4挖矿原理概述,POW过程,创建交易列表,通过Merkle Tree算法生成Merkle根Hash Merkle 根Hash与其他相关字段组装成区块头,将区块头的80字节数据(Block Header)作为工作量证明的输入 不停的变更区块头中的随机数即nonce的数值,并对每次变更后的的区块头做双重SHA256运算(即SHA256(SHA256(区块头)),将结果值与当前网络的目
10、标值做对比,如果小于目标值,则解题成功,工作量证明完成。,1.4挖矿原理概述,POW,优点 算法简单,容易实现 节点间无需交换额外的信息即可达成共识 破坏系统需要投入极大的成本 缺点 浪费能源 区块的确认时间难以缩短,挖矿的作用,挖矿在构建区块时会创造新的比特币,类似中央银行印发新的纸币。比特币的总数是固定的,创建比特币的速度随时间下降。 挖矿创建信任。挖矿确保只有在包含交易的区块上贡献了足够的计算量后,这些交易才被确认。区块越多,花费的计算量越大,数据越难篡改,意味着更多的信任。 挖矿实现了在没有中机构的情况下, 也能使整个特币络达成共识。,1.4挖矿原理概述,区块链技术的演进,区块链的演进
11、,狭义来讲, 区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构, 并以密码学方式保证的不可篡改和不可伪造的分布式账本。 广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。 中国区块链技术和应用发展白皮书(2016),1. 技术来源,2. 区块链1.0数字货币,区块链就是一种无须中介参与,亦能在互不信任或弱信任的参与者之间维系一套不可篡改的账本记录的技术。,1、以区块为单位的链状数据块结构 2、
12、全网共享账本 3、非对称加密 4、源代码开源,3. 区块链2.0智能合约,智能合约 区块链系统中的应用,是已编码的、可自动运行的业务逻辑,通常有自己的代币和专用开发语言。 虚拟机EVM 用于执行智能合约编译后的代码。虚拟机是图灵完备的。 分布式应用(DAPP) 包含用户界面的应用,包括但不限于各种加密货币,如以太坊钱包。,典型特征:,4. 区块链类型,区块链2.0的典型案例 - 以太坊,以太坊的目的是基于智能合约、竞争币和链上元协议概念进行整合和提高,使得开发者能够创建任意的基于共识的、可扩展的、标准化的、特性完备的、易于开发的和协同的应用。以太坊通过建立内置有图灵完备编程语言的区块链,使得任
13、何人都能够在平台上创建合约和去中心化应用,并在其中设立他们自由定义的所有权规则、交易方式和状态转换函数。以太坊比比特币脚本所能提供的智能合约强大得多。,POS 共识机制,POS(Proof Of Stake),权益证明。 核心思想:持有的权益越大,挖到区块的概率越大。,2012年8月,“Sunny King”提出PeerCoin(PPC),首次采用PoW机制发行新币,采用PoS机制维护网络安全。只有持有PPC才能挖矿,参与网络安全的维护。,POS,挖矿方程 Hash(Kernel)Target*币龄 Kernel类似于POW中的区块头,Target类似于POW中的随机数。可以看到币龄(即权益)
14、越大,挖矿成功的概率越大,在PoS挖矿过程中,只需要客户端的PPCom钱包中有存储超过30天的PPC,就可以自 动开始PoS挖矿。当挖到一个Block后,系统会消耗掉币龄,按照消耗的币龄数量来获得挖矿奖励。,币龄(Coin Age) 货币的持有时间段。比如A从B那里收到了10个币,并且持有90天,那么A就收集到了900币天(coin-days)的币龄. 如果A使用了从B收到的这10个币,就认为A从这10个币上积累的币龄被消耗(销毁)了.,POS,优点 在一定程度上缩短了共识达成的时间 不再需要大量消耗能源挖矿 缺点 记账权利可能过度集中在首次发行者,安全性得不到保证 还是需要挖矿,本质上没有解
15、决商业应用的痛点,联盟链案例 Hyperledger,联盟链案例 Hyperledger Fabric 的组成,PBFT共识机制,拜占庭将军问题 拜占庭帝国军队的将军们必须全体一致的决定是否攻击某一支敌军。问题是这些将军在地理上是分隔开来的,并且将军中存在叛徒。叛徒可以任意行动以达到以下目标:欺骗某些将军采取进攻行动;促成一个不是所有将军都同意的决定,如当将军们不希望进攻时促成进攻行动;或者迷惑某些将军,使他们无法做出决定。如果叛徒达到了这些目的之一,则任何攻击行动的结果都是注定要失败的,只有完全达成一致的努力才能获得胜利。,拜占庭假设是对现实世界的模型化,由于硬件错误、网络拥塞或断开以及遭到
16、恶意攻击,计算机和网络可能出现不可预料的行为。,PBFT(Practical Byzantine Fault Tolerance),实用拜占庭容错算法。 在一个3f+1节点的分布式系统中, 可以允许有不超过f个节点失效。,PBFT,从全网节点选举出一个主节点(Leader),新区块由主节点负责生成 Pre-Prepare:每个节点把客户端发来的交易向全网广播,主节点0将从网络收集到需放在新区块内的多个交易排序后存入列表,并将该列表向全网广播,扩散至123 Prepare:每个节点接收到交易列表后,根据排序模拟执行这些交易。所有交易执行完后,基于交易结果计算新区块的哈希摘要,并向全网广播,1-0
17、23,2-013,3因为宕机无法广播 Commit:如果一个节点收到的2f(f为可容忍的拜占庭节点数)个其它节点发来的摘要都和自己相等,就向全网广播一条commit消息 Reply:如果一个节点收到2f+1条commit消息,即可提交新区块及其交易到本地的区块链。,PBFT,优点 系统运转可以脱离币的存在,可用性强 共识的时延短,基本达到商用实时处理的要求 共识效率高,可满足高频交易量的需求 缺点 当有1/3或以上节点失效后,系统将无法提供服务 不适合节点数量过多的场景,扩展性较差,fabric-ca,联盟链案例 Hyperledger Fabric1.0 体系架构,Fabric 1.0 提出
18、了将应用层共识同全局数据一致性算法相分离的设计逻辑。,区块链应用场景,区块链应用场景,区块链的应用场景,需要从区块链自身的特性出发进行分析。 区块链具有去中心化、不可篡改、安全可靠等特性。 未来几年内,可能深入应用区块链的场景将包括:,金融服务,主要是降低交易成本,减少跨组织交易风险等。 金融服务涉及的领域包括证券、货币、保险、捐赠等。 贵阳市的区块链精准扶贫项目是一个比较成功的案例,建立区块链扶贫诚信积分系统,实现扶贫工作的全流程精准管理,防止弄虚作假、徇私舞弊。,征信管理,目前的征信相关的大量有效数据主要集中在少数机构手中。 这些数据仍然存在数据量不足、相关度较差、时效性不足等缺陷。 区块链将可能提供前所未有规模的相关性极高的数据。 区块链存在着无法篡改、不可抵赖的特性。基于区块链的信用机制将天然具备稳定性和中立性。 包括 IDG、腾讯、安永、普华永道等都纷纷投资或进入基于区块链的征信管理领域,特别是跟保险和互助经济相关的应用场景。,跨境投资管理,在国际贸易活动,买卖双方可能互不信任。因此需要两家银行作为买卖双方的保证人,代为收款交单,并以银行信用代替商业信用。区块链可以为交易参与方提供共同账本,允许银行和其它参与方拥有经过
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建材库房拆除方案
- 消防材料库存管理方案
- 车间承包经营与品牌形象策划合同模板
- 玻璃幕墙工程劳务分包合同含材料供应
- 出租车公司驾驶员健康体检协议书
- 精密制造厂房租赁服务全面合作协议
- 肺炎的护理与治疗
- 车辆保险代理权转让及保险产品创新合作协议
- 普工应聘考试题及答案
- 天津工商面试题及答案
- 钢板仓施工方案
- DBJ50-112-2016 现浇混凝土桥梁梁柱式模板支撑架安全技术规范
- 北京福赛尔V6891、V6851控制器(联动型)的调试
- 中航信离港系统培训(3)
- 第九章 解析空中三角测量基础
- 汽车维修安全生产管理制度大全
- 晋江市劳动合同书
- 苏州园区时尚舞台二期项目(简介)
- 中国银行_境外汇款申请书样板(最新版)-带中行行标
- EVA交联度实验操作规程
- 压力管道安装竣工资料--特检所版式
评论
0/150
提交评论