ImageVerifierCode 换一换
格式:PPTX , 页数:28 ,大小:3.34MB ,
资源ID:1545428      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/1545428.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(区块链和比特币.pptx)为本站上传会员【可****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

区块链和比特币.pptx

1、区区块链技技术知知识分享分享2018年6 6月9 9日Agenda区块链和比特币以太坊(Ethereum)及智能合约介绍超级账本(Hyperledger)项目和fabric区块链和比特币概述起源BTC诞生BTC交易原理UXTO区块脚本地址生成Merkel Tree工作量证明最长链规则挖矿分叉扩展性安全性发展方向区块链和比特币(1)-概述去中心化的账本,一种使用密码学的方法相关联产生的数据块匿名性+专属所有权难以篡改具有自治的能力区块链和比特币(2)-起源1976年,Bailey W.Diffie和Martin E.Hellman密码学的新方向发表(公钥加密理论),次年RSA算法诞生1980年,

2、Merkle Ralf提出Merkle-Tree数据结构和算法(区块中交易校验的手段)1982年,Leslie Lamport等人提出拜占庭将军问题(共识的基础)1985年,椭圆曲线加密(ECC)算法诞生(加密的基础)1990年,David Chaum创立Digital Cash,第一种中心化不可追踪的加密数字现金系统1992年,Scott Vanstone等人提出椭圆曲线加密数字签名算法(ECDSA)1997年,Adam Back发明Hashcash技术,为一种工作量证明算法(Proof of Work,POW),此算法依赖哈希函数的不可逆特性,达到容易被验证,但很难被破解的特性1998年,

3、戴伟发布匿名分布式电子现金系统B-money,Nick Szabo提出去 中心化货币Bit Gold的理论2005年,Hal Finney提出可重复使用的工作量证明机制(RPOW),结合B-money 与Adam Back提出的Hashcash算法进行数字货币试验区块链和比特币(3)-BTC诞生2008年11月1日,一个署名中本聪(Satoshi Nakamoto)的人在一个小型 密码学讨论组中发表了论文比特币:一种点对点的电子现金系统2009年1月3日,中本聪在位于芬兰赫尔辛基的一个小型服务器上挖出了第 一笔50个比特币(创世区块)区块链和比特币(4)-BTC交易原理区块链和比特币(5)-U

4、TXO和传统account based支付系统不同,比特币系统中使用区块来记录交易往来,本质为一种UXTO(Unspent Transaction Output)方案、区块账本记录的是交易(日志),而不是 货币;每一笔交易都要消耗(spend)N笔 输入,产生N笔输出;但输入总量和输出 总量需要保持相等区块链和比特币(6)-区块完整的区块结构名称字节字段说明Magic NO4魔数表征网络协议,0 xD9B4BEF9表示主网,0 xDAB5BFFA表示testnetBlocksize4区块大小用字节表示的该字段之后的区块大小Blockheader80区块头组成区块头的几个字段Transactio

5、n counter1-9交易计数器该区块包含的交易数量,包含coinbase交易Transactions不定交易记录在区块里的交易信息,使用原生的交易信息格式,并且交易在数据流中的位置必须与Merkle树的叶子节点顺序一致区块头(Blockheader)结构名称名称字字节数据数据类型型描述描述Version4int32_t版本号表示所遵循的规则PreBlockHeaderHash32char32SHA256(SHA256()前一块头部的哈希MerkleRootHash32char32这块中所有交易的哈希Time4uint32_tUnix时间戳Bits4uint32_t难度系数Nonce4uin

6、t32_t随机数区块链和比特币(7)-区块Transactions 结构Input结构名称名称字字节数据数据类型型描述描述Version4int32_t交易版本Inputs Counter1-9可变integer输入单数量Inputs Detail-array输入单列表Outputs Counter1-9可变integer输出单数量Outputs Detail-array输出单列表Lock Time4uint32_t锁定时间名称名称字字节数据数据类型型描述描述Previous tx hash32char32引用前一交易的hashPrevious Output Index4uint32_t被引用

7、交易的Output的索引Input Script Length1-9可变integer输入单列表Input Script/scriptSig-输入脚本Sequence Number4uint32_tOutput结构名称名称字字节数据数据类型型描述描述Amount/Value8uint32_t比特币数量Input Script Length1-9uint32_t输出脚本长度Output Script/scriptPubKey-输出脚本区块链和比特币(8)-脚本Hash:9c50cee8d50e273100987bb12ec46208cb04a1d5b68c9bea84fd4a04854b5eb1

8、输入交易:前导输入的Hash:437b95ae15f87c7a8ab4f51db5d3c877b972ef92f26fbc6d3c4663d1bc750149输入脚本 scriptSig:3045022100efe12e2584bbd346bccfe67fd50a54191e4f45f945e3853658284358d9c062ad02200121e00b6297c0874650d00b786971f5b4601e32b3f81afa9f9f8108e93c752201038b29d4fbbd12619d45c84c83cb4330337ab1b1a3737250f29cec679d7551

9、148a输出交易:转账值:0.05010000 btc输出脚本 scriptPubKey:OP_DUP OP_HASH160 be10f0a78f5ac63e8746f7f2e62a5663eed05788 OP_EQUALVERIFY OP_CHECKSIG区块链和比特币(9)-脚本P2PKH例子交易b中有一个输入交易引用了交易a的输出交易,它们的脚本是一对题与解:题:交易a的输出脚本,若干个脚本指令和转账接收方的公钥哈希OP_DUP OP_HASH160 be10f0a78f5ac63e8746f7f2e62a5663eed05788 OP_EQUALVERIFY OP_CHECKSIG解

10、交易b的输入脚本,包含两个元素,交易发起方的签名和公钥(sig&pubkey)3046022100ba1427639c9f67f2ca1088d0140318a98cb1e84f604dc90ae00ed7a5f9c61cab02210094233d018f2f014a5864c9e0795f13735780cafd51b950f503534a6af246aca30103a63ab88e75116b313c6de384496328df2656156b8ac48c75505cd20a4890f5ab+区块链和比特币(10)-地址生成BTC地址生成过程ECDSA Public KeyRIPE16

11、0 MD(SHA256(Public Key)Public Key HashRIPE160 MD(SHA256(version+Public Key hash)Check SumVersionBase58 EncodeBitCoin Address区块链和比特币(11)-Merkel Tree区块链和比特币(12)-工作量证明区块的Hash=SHA256(SHA256(区块头内容)一段时间内(平均10分钟左右,具体时间会与记账难度相互影响),只有1个节点可以记账成功通过不断计算寻找合适的区块HASH使之小于给定的目标HASH(目标HASH值的压缩格式是一个特殊 的浮点编码类型,首字节是指数(仅

12、使用了5个最低位)表示右移的位数,后3个字节是有效值,该目标 HASH能表示256位的数值),通过竞争获得唯一记账权记账被证实后,其余节点复制记账结果每产生2016个区块之后,会根据实际产生的区块和目标区块数做对比,进行难度调整区块链和比特币(13)-工作量证明区块链和比特币(14)-工作量证明难度计算公式:difficulty=difficulty_1_target/current_target,目标(target)是一个256位长的数值。有许多不同测量难度的方法,得到的difficulty_1_target可能不同。传统地,它表示一个HASH值,前32位为0,后续部分为1(称之为:矿池难度

13、或pdiff),比特币协议把目标HASH表示成一个固定精度的自定义浮点类型,因而,比特币客户端用该值来估计难度(称之为:bdiff)。难度经常被存贮在区块中,每个块存贮一个十六制的目标HASH的压缩表达式(称之为:Bits),目标HASH可以以预先定义的公式计算出来。例如:如果区块中压缩的目标HASH为0 x1b0404cb,那十六进制的目标HASH如下所示此时的难度值为区块链和比特币(15)-最长链规则累计了最多难度的区块链,也是包含最多区块的那个链称为主链,每一个节点总是选择试图延长主链当有两名矿工在几乎在相同的时间内,各自都算得了POW解,便立即传播自己的“获胜”区块到网络中,一些节点首

14、先收到#3458A,一些节点首先收到#3458B,这两个候选区块(通 常这两个候选区块会包含几乎相同的交易)都是主链的延伸,分叉就会产生,这时分叉出有竞 争关系的两条链,如图:收到#3458A和#3458B的节点,各自开始进行计算POW解,总会有一方抢先发现,比如收到#3458B 的节点,成功打包形成了#3459区块,并向全网广播后,网络中的节点会把#3458B#3459B的链作为 最长链。BTC规定,交易被成功打包之后,还需要6个以上的区块延伸,才算成功(确认为主链)区块链和比特币(16)-挖矿SETGENERATE协议:CPU时代挖矿时代的协议。构造区块,初始化区块头各个字段,计算Hash

15、并验 证区块,不合格则nNonce 自增,再计算并验证,如此往复。在CPU挖矿时代,nNonce提供的4字节 搜索空间完全够用(4字节即4G种可能,单核CPU运算SHA256D算力一般是2M左右),一般情况nNonce 只遍历完2个字节就返回去重构块。区块链和比特币(17)-挖矿Getwork协议代表了GPU挖矿时代,需求主要源于 挖矿程序与节点客户端分离,区块链数据与挖矿部件 分离。使用客户端节点直接挖矿,需要同步完整区块 链,数据和程序紧密结合,也就是说,如果有多台 电脑进行挖矿,需要每台电脑都单独同步一份区块链 数据。这其实没有必要,对于矿工来说,最少只需 要一个完整节点就可以。区块链和

16、比特币(18)-挖矿Getblocktemplate协议让矿工自行构造区块。如此 一来,节点和挖矿完全分离。对于getwork来说,区 块链是黑暗的,getwork对区块链一无所知,其只知 道修改data字段的4个字节。对于getblocktemplate 来说,整个区块链是透明的,getblocktemplate掌 握区块链上与挖矿有关的所有信息,包括待确认交易 池。矿池通过getblocktemplate协议与网络节点交互,以获得区块链的最新信息,通过stratum协议与矿工 交互。此外,为了让之前用getwork协议挖矿的软件 也可以连接到矿池挖矿,矿池一般也支持getwork协 议,通

17、过阶层挖矿代理机制实现(Stratum mining proxy)。stratum与矿池采用TCP方式通信,数据使 用JSON封装格式。区块链和比特币(19)-分叉硬分叉 如果区块链软件的共识规则被改变,并且这种规则改变无法向前兼容,旧节点无法认可新节点产生的区块,即为硬分叉。这时候旧节点会拒绝新规则的区块,于是新节点和旧节点会开始在不同的区块链上运行 (挖矿、交易、验证等)软分叉 如果区块链的共识规则改变后,这种改变是向前兼容的,旧节点可以兼容新节点产生的区块,即为软分叉。软分叉通常刚开始并不会产生两条区块链,因为新规则下产生的块会被旧节点接受,旧节点只是无法识别 新规则的真实意义。所以新旧

18、节点仍然处于同一条区块链上,对整个系统的影响也就较小。区块链和比特币(20)-扩展性不断增长的比特币交易量区块链和比特币(21)-扩展性隔离见证(Segregated Witness,已启动)为闪电网络的前置方案。软分叉方案,一方面是解决比特币存在的一个安全漏洞(延展攻击),一个是用于扩容。其基本思想是将原来的交易数据结构里的签名从区块里移出,仅保留1个指向 这个签名的指针。区块链和比特币(22)-扩展性闪电网络(Lighting network,未启动)本质就是安全地链下交易。其原理上基于BOLT(Basic of Lightning)协议实现的链下交易网络,主要由RSMC(Revocabl

19、e Sequence Maturity Contract)和HTLC(Hashed TimeLock Contract)两个智能合约组成,翻译过来分别是序列到期可撤销合约和哈希时间锁定合约 其出现的主要理由就是为了应对链上的高额手续费和小额支付交易。其特点是:1.闪电网络没有区块链结构;2.闪电网络不依赖某个公链,不是Dapp。只要能实现BOLT协议,无论 比特币、以太坊,都可以用上闪电网络;3.闪电网络支持代币原子互换(Atomic Swap),也就是跨链(cross-chain)操作区块链和比特币(23)-安全性51%算力攻击 掌握51%以上算力的节点统一行为,可以随意生成最长链,伪造区块

20、重放攻击 这里的“攻击”不是黑客发起的某种侵略或偷盗行为。而是因为区块链分叉后的两个分支链,都有相同的 地址、私钥和交易格式。在分叉点前出现的UTXO,在分叉后引出的交易,如果分叉时未加入防御重放攻击 的代码,自动会被分叉后的两条链都确认,从而构成双花。延展性(Transaction Malleability)攻击 延展性攻击者侦听比特币P2P网络中的交易,利用交易签名算法的特征修改原交易中的input 签名,生成拥有一样input和output的新交易,然后广播到网络中形成双花,这样原来的交易将有一定的 概率不能被确认,造成不可预料的后果量子计算威胁 比特币的POW和授权/验证交易所用的签名是量子计算利用强大算力进行攻击的两大弱点。区块链和比特币(24)-发展方向吞吐量和存储带宽 通过改变共识比如采用DPOS改善性能可能加剧中心化的风险智能合约(Smart Contract)DAG区块链 有向无环图,目前已经实现的如BYTEBALL和IOTA跨链技术 公证人机制、侧链/中继、哈希锁定预言机(Oracle)预言机提供了智能合约在合约条款得到满足时运行的必要条件,这些条件可以是与智能合约有关的任何 东西-温度,支付完成,价格变化等。这些预言机是智能合约与外部进行数据交互的唯一途径。Q&A

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服