欢迎来到环境100文库! | 帮助中心 分享价值,成长自我!

环境100文库

换一换
首页 环境100文库 > 资源分类 > PPTX文档下载
 

精通比特币.pptx

  • 资源ID:4613       资源大小:101.58KB        全文页数:32页
  • 资源格式: PPTX        下载权限:游客/注册会员/VIP会员    下载费用:5碳币 【人民币5元】
快捷注册下载 游客一键下载
会员登录下载
三方登录下载: 微信开放平台登录 QQ登录   微博登录  
下载资源需要5碳币 【人民币5元】
邮箱/手机:
温馨提示:
支付成功后,系统会自动生成账号(用户名和密码都是您填写的邮箱或者手机号),方便下次登录下载和查询订单;
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

精通比特币.pptx

区块链技术分享,精通比特币 作者谈国鹏,课程安排,精通比特币 玩转以太坊 搞定hyperledger,比特币起源,一种点对点的电子现金系统 中本聪(satoshi) 日裔美国人,物理学学士,隐居于洛杉矶某山脚下,不愿谈及和承认与比特币有关。 创世区块“ The Times 03/Jan/2009 Chancellor on brink of second bailout for banks ” (2009 年 1 月 3 日,财政大臣正处于实施第二轮银行紧急援助的边缘),创世交易,Block0 https//blockchain.info/block/000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f Block443222 https//blockchain.info/block/000000000000000001b2a29dc4e088ab46deffc8c58ed365b1a71e921376028c,现有银行系统的缺点,中心化(数据中心、异地备灾)缺点易篡改、易产生灾难、易无法服务; 有账户系统缺点易篡改; 货币发行货币即数字,想发多少发多少(央行发行)- 货币超发是政府对人民财富掠夺最简单快捷有效的方法; 隐私性无政府主义者想拥有更好的财富隐私性;,比特币的优点,去中心化,数万(甚至更多)个节点上运行完整数据拷贝; 无账户系统,发明UTXO,了不起的发明 发行机制通过coinbase交易发行,每4年减半,从50,目前已减至12.5。上限2100万个,永不超发,且无法超发 隐私性强。你只知道某个地址拥有多少比特币,但并不知道它是谁的。但从监管角度来说可能是一个缺点。,比特币的缺点,隐私性强,成为犯罪分子的结算工具,目前贩毒、洗钱等大量采用比特币; 分布式系统,软件更新困难,目前的扩容之争就是个典型的例子。,交易 Transaction,设想一个典型的银行交易; 比特币的交易,confidence Appeared in best chain at height 438889, depth 1.in PUSHDATA71[30440220428401ac86cb8db137b994a284ff9f4e7d79560c98f4873a19517ef01212dcba022023e6a4ac9f26ba40e3e29bd35994f835f9b59b527aa41336e6fbca8d2cd31cc601] PUSHDATA33[03a081d66a312d9ff080b55c75b6bed1f06ef41eb822880e3321dab98db2b86631]outpoint61ad817969055ccfa374c7806e18574062e1100ab72e393bc216f1d8e6ff30421out DUP HASH160 PUSHDATA20[f3ab1573aa9b9ae55597a430f8a3ef2de23554c7] EQUALVERIFY CHECKSIG 0.00041339 BTCout DUP HASH160 PUSHDATA20[3eaa9a51dbc9c091e1436154c5865dc4c3468298] EQUALVERIFY CHECKSIG 0.00264682 BTCprps UNKNOWN,Transaction details,每个transaction 拥有一个hash,算法dSHA256 SHA256SHA256transactionbytes Why dSHA256 About hash MD5、SHA-1、SHA-2(比特币采用)、SHA-3(以太坊、hyperledger采用) Transaction包含n个, m个output N,m 可以无限大吗 包含之前一个output的引用(通过txid和output index从0开始计数)以及SigScript(签名) Output包含pubScript(地址脚本),比特币数量,UTXO,Output分为两种 UTXO还没有被花费的output STXO已经被花费掉的output 每个完整节点维护一份完整的UTXO索引,不在UTXO中的交易将被拒绝; 每个地址的余额由它拥有的所有UTXO累加计算而得;,Transaction fee,所有 btc总和都多于output btc总和,多余的部分即为transaction fee; 一个交易最少的交易费用为0.0001BTC,低于此将被矿工拒绝; 交易费用将被矿工获得(通过把它们加入coinbase交易中); 矿工按fee/kbyte,来决定优先打包哪些交易; Why transaction fee 防攻击 奖励矿工,矿工,比特币节点分为普通完整节点peer、矿工节点miner和SPV节点; 由矿工打包交易,形成区块链 Transaction - block - blockchain 矿工的3个问题 问题1由谁来打包交易(因为有很多矿工) 问题2何时打包交易 问题3如何打包交易,问题1由谁打包交易,PoWProof of work 规则每个区块生成的hash值小于目标值,谁快谁来打包。 Hash的生成 算法dSHA256headerbytes Header字段version4、prev_block_hash32、merkle_root_hash32、time4、bits4、nonce4共80字节,问题2何时打包交易,平均每10分钟出一次块; 矿工算出符合条件的hash就立即出块; 每生成1026块时根据平均出块时间调整一次目标值; 历史最快出块时间为几秒、最慢出块时间为1个多小时; 同时算出如何解决 维护2条以上blockchain 对比以太坊的叔块uncle bock,问题3如何打包交易,矿工会包含尽量多的交易;按交易给予的fee/kb来排序; 交易数量有上限,每个block不能超过1MB; 每个块的第一个交易为coinbase交易,没有,output的地址是矿工的地址,数量是区块奖励(当前为12.5)和所有交易费用的总和; 用每个交易的txhash生成merkle tree,并生成merkle root hash放在header中;,Merkle树,BT神器merkle树; Merlke树在比特币中的应用,Merkle树(2),为什么merkle树 支持SPV SPV Simple Payment Verification 区块太大,超过几十G、未来更大; 区块header很小,每个80byte,目前总大小30M 通过区块头和交易的merkle树来验证交易的一种方式,SPV,SPV如何实现 SPV客户端持续从连接的节点上获取新区块的头部,并加入到本地区块链中; SPV客户端从节点上获取到一个跟自己相关的交易hash值; SPV客户端从节点上下载包含该交易hash的完整交易merkle树; 重新计算并验证merkle root和头部中的是否一致,若一致则验证通过;,SPV(2),如何从节点上获取和自己相关的交易hash Bloom filter Bloom filter SPV节点在相连节点上注册自己感兴趣的地址(可多个) 当节点通过bloom filter发现和该地址相关交易的时候便通知该SPV节点,密码学原理,私钥prikey的生成 随机数,或者通过随机数seed生成; 公钥pubkey的生成 Pubkey椭圆曲线函数prikey,p,q,不可逆; 比特币地址的生成 AddressBASE58RIPEMD160SHA256pubkey,不可逆;,签名原理,RSA非对称加密原理 公私钥对; 公钥加密仅私钥能解;私钥加密仅公钥能解; 比特币交易签名SigScript 源数据hash; 私钥加密后的密文; 公钥解密密文,与源数据hash比较;,散列算法,256个灯泡,开关两种状态,一共有多少种组合 2256 是多大的一个数字 Hash函数特点 单向,不可逆; 输入改动一点,输出面目全非; 存在碰撞几率; 比特币中发生碰撞怎么办 不同公钥地址映射到同一比特币地址,安全性,51%攻击 51%攻击是无解攻击; 目前算力分布 http// Depth 0,状态为PENDING; 已处于矿工们的mempool中,即将被打包入块; 何时被打包入块取决于给交易给的fee,从几秒到1天以上时间不等; Fee的入块速度参考http//bitcoinfees.21.co/ Depth 1-n ,状态为BUILDING;已经入块,且深度为1-n,n值越大越安全; 官方建议信任depth为6及以上的确认;到达6后要想再被推翻需要51%攻击;,黑客与攻击(1),攻击交易所(示例流程) 注册某交易所A,并买入5BTC; 探测到该交易所当前连接的节点k、p、m 发起提币请求,交易所地址x转入你的地址y 5BTC,该交易信息被广播至k、p、m 同时、立即、或提前向k、p、m发起DDOS攻击,恰好让k、p、m收到来自交易所A的转帐交易,同时来不及向其它节点转发该交易; 打电话给交易所妹子,说提币失败,要求帮忙处理; 妹子查询交易所交易记录(txhash),发现没有记录,答应补发; 解除对k、p、m的DDOS攻击,让其正行工作,地址y收到x的5BTC 交易所妹子通过后台处理系统向地址y补发5BTC,到此攻击完成,非法取得5BTC,黑客与攻击(2),电商双花攻击(示例流程) 打开某电商(支持比特币支付),进入付款页面; 将比特币客户端连接至美国某节点(制造网络延迟);转账5BTC至个人另一个账户; 用该账户(当前可用余额已为零)向电商支付5BTC,显示为支付成功,状态PEDING,depth0,因为网络延迟该电商支付环境中UTXO还未同步; 若该电商信任depth为0的交易(大部分信任),并且立即发货(尤其是数字产品)则攻击成功; 很快,电商会收到状态DEAD的消息,若其不做处理,则双花攻击成功;,黑客与攻击(3),侵入交易所/在线钱包网站 入侵到交易所网站后台,获取访问数据库权限,搜索并下载比特币公私钥对; 或者搜索钱包文件,获取并下载公私钥对; 在本地重新构建钱包,转移比特币 历史上发生的比特币黑客事件 http// core 与 Bitcoin Unlimited之争 Core代表广大客户端,无政府主义者; Unlimited代表广大矿工,商人性质; Core力推隔离验证segwit 将交易签名部分拿出来; 通过P2SH来欺骗旧节点; Unlimited支持硬分叉简单扩容至2MB 你是否支持隔离验证 反对软分叉,软分叉欺骗旧节点; 违背了比特币节点完整验证的原则;,彩色币,利用比特币实现数字化资产发行、转让、管理等类以太坊的功能; 利用比特币交易中暂未使用的字段 OP_RETURN 实现染色功能; 例子 s [ 17ztLiaGdWcWFX8CgYqWGQPEizepPLsSrb 500000, 19GAFukX9ixSDLy1p2UEed2mpDQ69QPUXr 2125735, 1MyK5te6U6zGoom68nVEzTU2x949ReNySN 2500000 outputs [ 1LQhUnH2UY9cuLh8qvHUNPL3GgLVWU5ziD 1000000, 1PEFUd66e2Q7w4w4KisZRSaupNJz7K7dpL 1000000, 1PmqmJGRxpKx45FHLTBmteKQxViHgm4Mxi 1000000, 1DCo3v1gSqU6g2GGDz9d4BD35h9cARe5dy 2000000, OP_RETURN [ 0 67 67 80 0 0 0 255 255 ] [0] * 71 1MyK5te6U6zGoom68nVEzTU2x949ReNySN 115735 白皮书 http// 莱特币、狗狗币等; 瑞波币 和比特币同时期的专注于银行/个人间转账、清算的项目 首次提出共识机制方案,PBFT - XRP 侧链 闪电网络,比特币开发,比特币源码(bitcoin core源码) https// (C) SPV钱包、支付源码 https//bitcoinj.github.io/ (java),QA,

注意事项

本文(精通比特币.pptx)为本站会员(罗比斯克)主动上传,环境100文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知环境100文库(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017 环境100文库版权所有
国家工信部备案号:京ICP备16041442号-6

收起
展开