书签 分享 收藏 举报 版权申诉 / 32
上传文档赚钱

类型谈谈区块链(02):精通比特币.pptx

  • 上传人(卖家):罗嗣辉
  • 文档编号:2046264
  • 上传时间:2022-01-21
  • 格式:PPTX
  • 页数:32
  • 大小:101.58KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《谈谈区块链(02):精通比特币.pptx》由用户(罗嗣辉)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    谈谈 区块 02 精通 比特
    资源描述:

    1、区块链技术分享-精通比特币-作者:谈国鹏课程安排 精通比特币 玩转以太坊 搞定hyperledger比特币起源 一种点对点的电子现金系统 中本聪(satoshi) 日裔美国人,物理学学士,隐居于洛杉矶某山脚下,不愿谈及和承认与比特币有关。 创世区块:“ The Times 03/Jan/2009 Chancellor on brink of second bailout for banks ” (2009 年 1 月 3 日,财政大臣正处于实施第二轮银行紧急援助的边缘)创世交易 Block0 :https:/blockchain.info/block/000000000019d6689c085

    2、ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f Block443222: https:/blockchain.info/block/000000000000000001b2a29dc4e088ab46deffc8c58ed365b1a71e921376028c现有银行系统的缺点 中心化(数据中心、异地备灾):缺点:易篡改、易产生灾难、易无法服务; 有账户系统:缺点:易篡改; 货币发行:货币即数字,想发多少发多少(央行发行)- 货币超发是政府对人民财富掠夺最简单快捷有效的方法; 隐私性:无政府主义者想拥有更好的财富隐私性;比特币的优点 去中心化,数万(甚至

    3、更多)个节点上运行完整数据拷贝; 无账户系统,发明UTXO,了不起的发明! 发行机制:通过coinbase交易发行,每4年减半,从50,目前已减至12.5。上限:2100万个,永不超发,且无法超发! 隐私性:强。你只知道某个地址拥有多少比特币,但并不知道它是谁的。但从监管角度来说可能是一个缺点。比特币的缺点 隐私性强,成为犯罪分子的结算工具,目前贩毒、洗钱等大量采用比特币; 分布式系统,软件更新困难,目前的扩容之争就是个典型的例子。交易 Transaction 设想一个典型的银行交易; 比特币的交易: confidence: Appeared in best chain at height 4

    4、38889, depth 1. in PUSHDATA(71)30440220428401ac86cb8db137b994a284ff9f4e7d79560c98f4873a19517ef01212dcba022023e6a4ac9f26ba40e3e29bd35994f835f9b59b527aa41336e6fbca8d2cd31cc601 PUSHDATA(33)03a081d66a312d9ff080b55c75b6bed1f06ef41eb822880e3321dab98db2b86631 outpoint:61ad817969055ccfa374c7806e18574062e110

    5、0ab72e393bc216f1d8e6ff3042:1 out DUP HASH160 PUSHDATA(20)f3ab1573aa9b9ae55597a430f8a3ef2de23554c7 EQUALVERIFY CHECKSIG 0.00041339 BTC out DUP HASH160 PUSHDATA(20)3eaa9a51dbc9c091e1436154c5865dc4c3468298 EQUALVERIFY CHECKSIG 0.00264682 BTC prps UNKNOWNTransaction details 每个transaction 拥有一个hash,算法:dSH

    6、A256 = SHA256(SHA256(transactionbytes) Why dSHA256? About hash: MD5、SHA-1、SHA-2(比特币采用)、SHA-3(以太坊、hyperledger采用) Transaction包含n个input, m个output N,m 可以无限大吗? Input包含:之前一个output的引用(通过txid和output index(从0开始计数))以及SigScript(签名) Output包含:pubScript(地址脚本),比特币数量UTXO Output分为两种: UTXO:还没有被花费的output STXO:已经被花费掉的o

    7、utput 每个完整节点维护一份完整的UTXO索引,不在UTXO中的交易将被拒绝; 每个地址的余额由它拥有的所有UTXO累加计算而得;Transaction fee 所有input btc总和都多于output btc总和,多余的部分即为transaction fee; 一个交易最少的交易费用为0.0001BTC,低于此将被矿工拒绝; 交易费用将被矿工获得(通过把它们加入coinbase交易中); 矿工按fee/kbyte,来决定优先打包哪些交易; Why transaction fee? 防攻击 奖励矿工矿工 比特币节点分为:普通完整节点(peer)、矿工节点(miner)和SPV节点; 由

    8、矿工打包交易,形成区块链: Transaction - block - blockchain 矿工的3个问题: 问题1:由谁来打包交易?(因为有很多矿工) 问题2:何时打包交易? 问题3:如何打包交易?问题1:由谁打包交易? PoW:Proof of work 规则:每个区块生成的hash值小于目标值,谁快谁来打包。 Hash的生成: 算法:dSHA256(headerbytes) Header字段:version(4)、prev_block_hash(32)、merkle_root_hash(32)、time(4)、bits(4)、nonce(4):共字节问题2:何时打包交易? 平均每10分

    9、钟出一次块; 矿工算出符合条件的hash就立即出块; 每生成1026块时根据平均出块时间调整一次目标值; 历史最快出块时间为几秒、最慢出块时间为1个多小时; 同时算出如何解决? 维护2条以上blockchain 对比以太坊的叔块(uncle bock)问题3:如何打包交易? 矿工会包含尽量多的交易;按交易给予的fee/kb来排序; 交易数量有上限,每个block不能超过1MB; 每个块的第一个交易为coinbase交易,没有input,output的地址是矿工的地址,数量是区块奖励(当前为12.5)和所有交易费用的总和; 用每个交易的txhash生成merkle tree,并生成merkle

    10、root hash放在header中;Merkle树 神器:merkle树; Merlke树在比特币中的应用:Merkle树() 为什么merkle树? 支持SPV SPV: Simple Payment Verification 区块太大,超过几十G、未来更大; 区块header很小,每个byte,目前总大小M+ 通过区块头和交易的merkle树来验证交易的一种方式 如何实现: 客户端持续从连接的节点上获取新区块的头部,并加入到本地区块链中; SPV客户端从节点上获取到一个跟自己相关的交易hash值; SPV客户端从节点上下载包含该交易hash的完整交易merkle树; 重新计算并验证mer

    11、kle root和头部中的是否一致,若一致则验证通过;() 如何从节点上获取和自己相关的交易hash? Bloom filter Bloom filter SPV节点在相连节点上注册自己感兴趣的地址(可多个) 当节点通过bloom filter发现和该地址相关交易的时候便通知该SPV节点密码学原理 私钥(prikey)的生成: 随机数,或者通过随机数seed生成; 公钥(pubkey)的生成: Pubkey=椭圆曲线函数(prikey,p,q),不可逆; 比特币地址的生成: Address=BASE58(RIPEMD160(SHA256(pubkey),不可逆;签名原理 RSA非对称加密原理:

    12、 公私钥对; 公钥加密仅私钥能解;私钥加密仅公钥能解; 比特币交易签名:SigScript 源数据hash; 私钥加密后的密文; 公钥解密密文,与源数据hash比较;散列算法 256个灯泡,开关两种状态,一共有多少种组合? 2256 是多大的一个数字? Hash函数特点: 单向,不可逆; 输入改动一点,输出面目全非; 存在碰撞几率; 比特币中发生碰撞怎么办? 不同公钥地址映射到同一比特币地址安全性 攻击: 攻击是无解攻击; 目前算力分布: http:/ 交易深度: Depth: 0,状态为:PENDING; 已处于矿工们的mempool中,即将被打包入块; 何时被打包入块?取决于给交易给的fe

    13、e,从几秒到天以上时间不等; Fee的入块速度参考:http:/bitcoinfees.21.co/ Depth: 1-n ,状态为BUILDING;已经入块,且深度为1-n,n值越大越安全; 官方建议信任depth为及以上的确认;到达后要想再被推翻需要攻击;黑客与攻击()攻击交易所(示例流程): 注册某交易所A,并买入BTC; 探测到该交易所当前连接的节点:k、p、m 发起提币请求,交易所地址x转入你的地址y 5BTC,该交易信息被广播至k、p、m 同时、立即、或提前向k、p、m发起DDOS攻击,恰好让k、p、m收到来自交易所A的转帐交易,同时来不及向其它节点转发该交易; 打电话给交易所妹子

    14、,说提币失败,要求帮忙处理; 妹子查询交易所交易记录(txhash),发现没有记录,答应补发; 解除对k、p、m的DDOS攻击,让其正行工作,地址y收到x的5BTC 交易所妹子通过后台处理系统向地址y补发5BTC,到此攻击完成,非法取得BTC黑客与攻击() 电商双花攻击(示例流程): 打开某电商(支持比特币支付),进入付款页面; 将比特币客户端连接至美国某节点(制造网络延迟);转账5BTC至个人另一个账户; 用该账户(当前可用余额已为零)向电商支付5BTC,显示为支付成功,状态:PEDING,depth:0,因为网络延迟该电商支付环境中UTXO还未同步; 若该电商信任depth为的交易(大部分

    15、信任),并且立即发货(尤其是数字产品)则攻击成功; 很快,电商会收到状态:DEAD的消息,若其不做处理,则双花攻击成功;黑客与攻击(3) 侵入交易所/在线钱包网站 入侵到交易所网站后台,获取访问数据库权限,搜索并下载比特币公私钥对; 或者搜索钱包文件,获取并下载公私钥对; 在本地重新构建钱包,转移比特币 历史上发生的比特币黑客事件: http:/ Bitcoin core 与 Bitcoin Unlimited之争: Core代表广大客户端,无政府主义者; Unlimited代表广大矿工,商人性质; Core力推隔离验证:segwit 将交易签名部分拿出来; 通过P2SH来欺骗旧节点; Unl

    16、imited支持硬分叉:简单扩容至MB 你是否支持隔离验证? 反对软分叉,软分叉欺骗旧节点; 违背了比特币节点完整验证的原则;彩色币利用比特币实现数字化资产发行、转让、管理等类以太坊的功能;利用比特币交易中暂未使用的字段: OP_RETURN 实现染色功能;例子: inputs: 17ztLiaGdWcWFX8CgYqWGQPEizepPLsSrb : 500000, 19GAFukX9ixSDLy1p2UEed2mpDQ69QPUXr : 2125735, 1MyK5te6U6zGoom68nVEzTU2x949ReNySN : 2500000 outputs: 1LQhUnH2UY9cuL

    17、h8qvHUNPL3GgLVWU5ziD : 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

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:谈谈区块链(02):精通比特币.pptx
    链接地址:https://www.163wenku.com/p-2046264.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库