区块链技术与应用.ppt_第1页
区块链技术与应用.ppt_第2页
区块链技术与应用.ppt_第3页
区块链技术与应用.ppt_第4页
区块链技术与应用.ppt_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

区块链技术与应用 郑相涵 博士 副教授网络安全与信息工程系副主任IEEE区块链专委会理事 教育背景与工作经历 教育经历2001 09 2005 07本科计算机科学与技术武汉理工大学2005 08 2007 6硕士信息通信技术 ICT 挪威Agder大学 UIA 获奖 挪威国家奖学金全奖 导师 爱立信德国公司前亚太区总裁 挪威Agder大学现任校长Prof FrankReichert 研究领域 移动分布式系统协议与通信 2007 8 2011 03博士信息通信技术 ICT 挪威Agder大学 UIA 获奖 挪威国家奖学金全奖 导师 爱立信公司前亚太区总裁 挪威Agder大学现任校长Prof FrankReichert 研究领域 分布式系统安全框架 工作经历2006 06 2007 8网络设计师德国亚琛爱立信研究院2011 09 现副研究员福州大学 目录 一 区块链概念二 核心技术三 以太坊 区块链2 0四 区块链应用五 现存问题六 总结 2017新兴技术成熟度曲线 Gartner 区块链市场价值 Gartner 我们应如何学习区块链知识 技术人员 创业人员 其他 决策者 区块链 YOURSITEHERE 1 Whyis区块链 2 Whatis区块链 3 ChallengersForward 4 总结 3 How区块链does 区块链概念 从两个经典案例说起 津巴布韦货币贬值 津巴布韦一度是世界上通货膨胀率最高的国家 根据2008年7月官方公布的统计数据 当时该国通货膨胀率高达2 31亿 2009年1月16日 津巴布韦储备银行发行了面值为100万亿的津元纸币 创下了人类历史的货币面值纪录 据报道 按照2009年1月15日自由市场的兑换价格 10万亿津元约合30美元 从两个经典案例说起 麦道夫世纪骗局 2008年12月 美国华尔街传奇人物伯纳德 麦道夫因涉嫌证券欺诈遭警方逮捕 检察人员指控他利用 庞氏 骗局给投资者造成损失约500亿美元 随后 麦道夫被叛150年监禁 麦道夫当年70岁 庞氏骗局是一种最古老和最常见的投资诈骗 是金字塔骗局的变体 很多非法的传销集团就是用这一招聚敛钱财的 庞氏骗局在中国又称 借新债还旧债 债债不还 拆东墙补西墙 墙墙不倒 简言之就是利用新投资人的钱来向老投资者支付利息和短期回报 以制造赚钱的假象进而骗取更多的投资 麦道夫的声望 麦道夫公司是美国最大的可独立从事证券交易的交易商 伯纳德 麦道夫是美国华尔街传奇人物 1991年成为纳斯达克董事会主席 在其带领下 纳斯达克成为足以和纽交所分庭抗礼的证券交易所 正因为这样 人们才如此的相信他 相信他的基金 麦道夫的诈骗手段 财务状况秘而不宣 所有账目 文件都被麦道夫 锁在保险箱里 金字塔式骗局 用高额回报引诱投资者 同时用后来投资者资金偿付前期投资者 从两个经典案例说起 问题出在哪 为什么出现了区块链 中心化的信用体系问题积重难返 信用是什么 所谓信用 是指依附在人之间 单位之间和商品交易之间形成的一种相互信任的生产关系和社会关系 来自百度百科信用的分类 商业信用 银行信用 国家信用 货币 国债 消费信用 信托 麦道夫的基金 等 人类以往的信用都需要通过一个中心去建立和维护 例如货币基于央行这个中心 企业 个人信用基于若干个征信巨头这样的中心 甚至QQ币也要依赖腾讯这个中心 中心化信用体系存在着巨大的问题 最大问题在于 一旦这个中心出现问题 这个信用体系就彻底崩塌 无法挽救 就如同津巴布韦货币的破产 中心化信用体系有不透明 缺少监管的问题 麦道夫案是最典型的的例证 中心化信用体系还有成本高的问题 所有人之间的交易都要基于对方的信用 比如房产交易需要房产中介 房管所等众多组织和中介来介入 区块链的核心是建立去中心化的信用 区块链的出现建立了完全分布式的信用体系 1 Whyis区块链 2 Whatis区块链 3 ChallengersForward 4 总结 3 How区块链does 区块链的工作原理 区块 简单地说 区块链就是不再依赖中心化的记账 而是通过一种密码学计算让全网节点随机争夺记账权 争夺到记账权的节点就会被奖励比特币 而记完后的账本发布给全网所有节点保存 区块链的重要概念 原始社会的共识机制 区块链的重要特性 分布式记账 1 2 中央电脑VS分布式节点 分布式记账 会计责任的分散化分布式传播 每一次交换都传播到网络中的所有节点分布式存储 数据信息的可容错性极高 区块链技术的本质是通过密码学建立了一个不依赖任何中心的 完全分布式的数据库 区块链的重要特性 分布式记账 2 2 对一个分布式系统来说 存在CAP定理 CAPtheorem 又被称作布鲁尔定理 Brewer stheorem 它指出一个分布式系统不可能同时满足以下三点 一致性 Consistence 在分布式系统中的所有数据备份 在同一时刻是否同样的值 可用性 Availability 在集群中一部分节点故障后 集群整体是否还能响应客户端的读写请求 分区容忍性 Partitiontolerance 集群中的某些节点在无法联系后 集群整体是否还能继续进行服务 由于当前的网络硬件肯定会出现延迟丢包等问题 所以分区容忍性是我们必须需要实现的 换句话说 CAP定理表明我们必须在一致性 C 和可用性 A 之间进行权衡 具体到区块链和大数据来说 大数据是以牺牲一致性 C 来换取可用性 A 和分区容忍性 P 的 而区块链却优先保证了一致性 C 区块链的网络架构 区块链的应用分类 区块链1 0应用 数字货币区块链2 0应用 智能合约 数字货币 例如 跨境支付 反洗钱 证券发行与交易 数字化资产等 区块链3 0应用 扩展到金融行业以外其他行业隐私数据存储 区块链的高冗余存储 去中心化 高安全性和隐私保护等特点 使其特别适合存储和保护重要隐私数据 防伪溯源 善款进入系统后 整个生命周期都将记录在区块链上 没有人工拨付等环节 每一笔款项的去向很难人工更改 这样就可以促进公益捐款全过程的开放和透明 身份认证 区块链数字身份识别证书能源管理 去中心化网络 让网内用户在其屋顶太阳能发电超过需求时 可卖给社区的邻居 可以彼此互通有无 并以区块链虚拟货币来结算 投票 开源在线投票 区块链的优点 完全分布式 任意节点宕机不会导致网络崩溃 去信任性 每一笔交易都由全网节点共同背书 所以不需要知道对方的身份 可以接受对方的交易 解决了数字货币的 双花 问题 大大降低交易成本 因为不需要查清对方的信用 也就不需要征信 所以大大降低交易成本大大提高了可靠性和不可篡改性 只有全网51 的节点被攻破才能篡改账本 作假成本极高 需要很大的算力 瞬间公证 清算 审计 财务公开 由于所有数据全网都有 所以随时随刻可以清算 审计 完全公开 这解决了人类财务体系的痛点 私密性 由于不需要对方的信用 所以可以匿名交易 交易的数据也可以加密 所以交易的私密性可以得到保障 私密性 区块链的局限性 性能与容量问题 去中心化程度与共识机制效率的矛盾 去中心化程度越高 共识机制效率越低 交易时延越长 交易吞吐越低 因此两者必须平衡 账本存储容量和处理性能的矛盾 账本规模的增长 会带来节点的硬件资源门槛的提高 安全性局限51 攻击 需要引入大量节点 如果节点太少 51 攻击很容易 私钥与终端安全 私钥存储在用户终端本地 如果私钥被窃取 就会出现资金损失 共识机制安全 PoW PoS的共识机制是否真正安全 缺乏严格的证明和试验 区块链的国际联盟和重点关注公司 区块链主要联盟R3联盟 全球最大的区块链联盟 2015年9月 甶9家银行创建成立 但现在有多家银行退出 Hyperleger联盟 Linux基金会发起 IBM捐献的源码 非盈利 目标是共同建立并维系一个跨产业的 透明公开 去中心化的超级账本项目 EEA 企业以太坊联盟 2017年2月28日 甶摩根大通等银行 intel 微软等30多家企业宣布成立 以开发相关的标准和技术 让企业更加便利使用新崛起的以太坊区块链技术 区块链重点关注公司 IBM IBM把Blockchain的所有源代码 约44000行 捐给了Linux基金会的Hyperledger项目 成为了开源代码的主要组成部分 IBM的公有云和私有云都有对于区块链的技术支持 英特尔 Hyperledger早期成员之一 为Hyperledger提供各种选项和共识算法 早期还开发比特币的挖矿机芯片 微软 在它的Azure云上提供了BaaS 区块链即服务 区块链的中国联盟和重点关注公司 中国三大区块链联盟ChinaLedger 2016年4月19日 中国首个区块链联盟成立 全称是中国分布式总账基础协议联盟 主要任务研究开源的分布式总账系统及衍生技术 金链盟 2016年5月31日 由微众锒行 平安银行等发起成立 有腾讯 华为 京东金融等知名企业 金链盟的成员中 七成是金融机构 三成是金融科技企业和互联网企业 金链盟是非盈利性联盟体 以技术标准为纽带 区块链研究联盟 乐视金融任理事长 万向控股也是发起人之一 是一个学术研究平台 尤其强调推动整个区块链应用的规范化 标准化 打造区块链技术的市场应用 值得关注的中国企业万向集团中国最早开始关注和布局区块链技术的大型企业之一 从2014年开始关注 2015年9月 万向成立了万向区块链实验室 建立了国内首个区块链云平台万云 Wancloud 截至2016年8月 万向已在全球范围内投资29个区块链初创公司累计投资超2000万美金 2016年3月 万向集团也开始提供区块链即服务 Baas 平台 2016年9月 万向集团宣布未来7年还将投资2000亿人民币在杭州建设以新能源汽车为核心产业的 万向创新聚能城 该项目将全方位大规模应用区块链技术 成为迄今为止全球最大的区块链应用项目 乐视金融2016年3月 乐视金融发起区块链实验室项目 2016年10月 乐视金融区块链实验室与Stellar基金会正式签约 使用Stellar技术建立一套独特的区块链网络进行跨境付款 监控各个设备及平台上的用户信用 以支持乐视生态多个商圏应用和交易的运行 微众银行 由腾讯 百业源和立业等多家知名企业发起设立的民营银行 2014年12月正式上线 区块链和比特币的区别 比特币是应用 是一种数字货币 可以看做和QQ币其实差不多 只不过是完全分布式发行的 不依赖任何中央银行 而区块链是一系列技术的统称 区块链技术是随着比特币诞生的 比特币是区块链的第一个应用 但绝不是唯一的应用 区块链作为互联网的革命性技术 可能对世界的影响要远大于比特币本身 目录 一 区块链概念二 核心技术三 以太坊 区块链2 0四 区块链应用五 现存问题六 总结 对等网络结构 区块链的底层结构是对等网络 Kademlia 简称Kad Kad属于一种典型的结构化P2P覆盖网络 StructuredP2POverlayNetwork 在Kademlia网络中 所有信息均以的哈希表条目形式加以存储 这些条目被分散地存储在各个节点上 从而以全网方式构成一张巨大的分布式哈希表 我们可以形象地把这张哈希大表看成是一本字典 只要知道了信息索引的key 我们便可以通过Kademlia协议来查询其所对应的value信息 而不管这个value信息究竟是存储在哪一个节点之上 Kad网络中每个节点都有一个160bit的ID值作为标志符 Key也是一个160bit的标志符 每一个加入Kad网络的计算机都会在160bit的key空间被分配一个节点ID nodeID 值 可以认为ID是随机产生的 对的数据就存放在ID值最接近key值的节点上 所有节点都被当作一颗二叉树的叶子每一个节点位置都由其ID值的最短前缀唯一的确定判断两个节点x y的距离远近是基于数学上的异或运算d x y x ye g d 010101b 110001b 100100b d 2110 4910 3610 对等网络结构 30 对于任意一个节点 都可以把这颗二叉树分解为一系列连续的 不包含自己的子树 每个节点至少知道子树中的一个节点 方框部分就是各子树 由上到下各层的前缀分别为1 01 000 0010 图2 节点0011的子树划分 只有第一步查询的节点101 是节点0011已经知道的 后面各步查询的节点 都是由上一步查询返回的更接近目标的节点 这是一个递归操作的过程 节点0011通过连续查询来找到节点1110 对等网络结构 挖矿 所谓挖矿 实际上是穷举随机数算法 把上一个区块的哈希值加上10分钟内的全部交易打包 再加上一个随机数 算出一个256位的字符哈希值 输入的随机数Nonce使哈希值满足一定条件就获得这个区块的交易记账权 交易 区块链中节点之间相互发生的支付就是交易 在比特币系统中 某笔交易的输入必须是另一笔交易未被使用的输出 同时这笔交易也需要上一笔输出地址所对应的私钥进行签名 共识机制就是所有分布式节之间怎么达成共识 通过算法来生成和更新数据 去认定一个记录的有效性 这既是认定的手段 也是防止篡改的手段 以比特币为例 采用的是 工作量证明 ProofOfWork 简称POW 工作量是需要算力的 通过工作量证明 有效的防止了篡改和伪造 因为如果要达到伪造和篡改的工作量 大概需要上亿元成本跟的算力 名词解释 名词解释 工作量证明 工作量证明系统主要特征是客户端需要做一定难度的工作得出一个结果 验证方却很容易通过结果来检查出客户端是不是做了相应的工作 这种方案的一个核心特征是不对称性 工作对于请求方是适中的 对于验证方则是易于验证的 它与验证码不同 验证码的设计出发点是易于被人类解决而不易被计算机解决 交易过程 第2步 A将交易单广播至全网 比特币就发送给了B 每个节点都将收到的交易信息纳入一个区块中 第1步 所有者A利用他的私钥对前一次交易 比特货来源 和下一位所有者B签署一个数字签名 并将这个签名附加在这枚货币的末尾 制作成交易单 要点 B以公钥作为接收方地址 要点 对B而言 该枚比特币会即时显示在比特币钱包中 但直到区块确认成功后才可用 目前一笔比特币从支付到最终确认成功 得到6个区块确认之后才能真正确认到帐 交易过程 交易过程 第3步 每个节点通过解一道数学难题 从而去获得创建新区块权利 并争取得到比特币的奖励 新比特币会在此过程中产生 要点 节点反复尝试寻找一个数值 使得将该数值 区块链中最后一个区块的Hash值以及交易单三部分送入SHA256算法后能计算出散列值X 256位 满足一定条件 比如前20位均为0 即找到数学难题的解 由此可见 答案并不唯一 第4步 当一个节点找到解时 它就向全网广播该区块记录的所有盖时间戳交易 并由全网其他节点核对 要点 时间戳用来证实特定区块必然于某特定时间是的确存在的 比特币网络采取从5个以上节点获取时间 然后取中间值的方式作为时间戳 交易过程 交易过程 第5步 全网其他节点核对该区块记账的正确性 没有错误后他们将在该合法区块之后竞争下一个区块 这样就形成了一个合法记账的区块链 要点 每个区块的创建时间大约在10分钟 随着全网算力的不断变化 每个区块的产生时间会随算力增强而缩短 随算力减弱而延长 其原理是根据最近产生的2016年区块的时间差 约两周时间 自动调整每个区块的生成难度 比如减少或增加目标值中0的个数 使得每个区块的生成时间是10分钟 区块链分类 联盟链 ConsortiumBlockChains 由若干机构联合发起 介于公有链和私有链之间 兼具部分去中心化的特性 私有链 PrivateBlockChains 建立在某个企业内部 系统的运作规则根据企业要求进行设定 修改甚至是读取权限仅限于少数节点 同时仍保留着区块链的真实性和部分去中心化的特性 公有链 PublicBlockChains 无官方组织及管理机构 无中心服务器 参与的节点按照系统规则自由接入网络 不受控制 节点间基于共识机制开展工作 数据区块 数据区块比特币的交易记录会保存在数据区块中 每个区块一般包括区块头 Header 和区块体 Body 两部分 区块头部信息 区块形成过程 在当前区块加入区块链后 所有矿工就立即开始下一个区块的生成工作 把在本地内存中的交易信息记录到区块主体中在区块主体中生成此区块中所有交易信息的Merkle树 把Merkle树根的值保存在区块头中把上一个刚刚生成的区块的区块头的数据通过SHA256算法生成一个哈希值填入到当前区块的父哈希值中把当前时间保存在时间戳字段中难度值字段会根据之前一段时间区块的平均生成时间进行调整以应对整个网络不断变化的整体计算总量 如果计算总量增长了 则系统会调高数学题的难度值 使得预期完成下一个区块的时间依然在一定时间内 区块链网络 节点网络 节点网络 任何机器都可以运行一个完整的比特币节点 一个完整的比特币节点包括如下功能 钱包 允许用户在区块链网络上进行交易完整区块链 记录了所有交易历史 通过特殊的结构保证历史交易的安全性 并且用来验证新交易的合法性矿工 通过记录交易及解密数学题来生成新区块 如果成功可以赚取奖励路由功能 把其它节点传送过来的交易数据等信息再传送给更多的节点 区块链网络 同一时间段内全网不止一个节点能计算出随机数 即会有多个节点在网络中广播它们各自打包好的临时区块 都是合法的 分叉 某一节点若收到多个针对同一前续区块的后续临时区块 则该节点会在本地区块链上建立分支 多个临时区块对应多个分支 该僵局的打破要等到下一个工作量证明被发现 而其中的一条链条被证实为是较长的一条 那么在另一条分支链条上工作的节点将转换阵营 开始在较长的链条上工作 其他分支将会被网络彻底抛弃 区块链网络 交易过程的公钥 私钥应用 交易过程的公钥 私钥应用 1 交易的原始数据包括 转账数额 和 转入钱包地址 但是仅有这些是不够的 因为无法证明交易的生成者对 转出钱包地址 余额有动用的权利 所以需要用 私钥 对原始数据进行签名 2 生成 转出钱包公钥 这一过程与生成 钱包地址 的第2步是一样的 3 将 转出签名 和 转出公钥 添加到原始交易数据中 生成了正式的交易数据 这样它就可以被广播到比特币网络进行转账了 目录 一 区块链概念二 核心技术三 以太坊 区块链2 0四 区块链应用五 现存问题六 总结 比特币作为一种数字货币 是区块链1 0的应用 以太坊作为一个基础架构 是在数字货币的基础上加上了智能合约 是区块链2 0的应用 相同点 1 作为一条区块链2 公开并且无需许可的3 工作量证明 POW 挖矿4 有一种内置的数字货币 以太坊 区块链2 0 不相同点 1 以太坊的区块时间更短2 以太坊有更小的区块3 以太坊虚拟机上可以运行智能合约 智能合约 智能合约是一个运行在安全环境下的计算机程序 可以控制数字资产 法律合约 我承诺X发生的话 就给你1000元 智能合约 我将1000元发送给一个计算机程序 如果X发生了 这个程序会把1000元给你 否则就返回给我 优点 1 自动处理 2 扩展到非金融领域 3 一定程度人工智能 以太坊 区块链2 0 智能合约部署流程 总的来说 在以太坊上部署和运行智能合约需要以下几个步骤 1 启动一个以太坊节点 如geth 2 使用智能合约语言编写智能合约 如Solidity 3 使用solc编译器将编写好的合约代码转换成以太坊虚拟机位码 4 将编译好的合约代码部署到网上 5 使用web3 js库所提供的JavaScriptAPI接口来调用合约 以太坊的gas 合约执行会在所有节点中被多次重复 这个事实得使得合约执行的消耗变得昂贵 所以这也促使大家将能在链下进行的运算都不放到区块链上进行 对于每个被执行的命令都会有一个特定的消耗 用单位gas计数 以太坊 区块链2 0 创建一个Hellomshk top的合约并编译 1 在contracts目录中新建一个Hello mshk top sol文件 以太坊部署实例 创建一个Hellomshk top的合约并编译 2 在geth私链中部署 使用RPC方式运行Geth 以太坊部署实例 创建一个Hellomshk top的合约并编译 3 解锁账号并进行挖矿来得到以太币 以太坊部署实例 创建一个Hellomshk top的合约并编译 4 geth中进行部署 将编译的json文件中的abi部分进行转义 并且赋值给私链中的账户 以太坊部署实例 创建一个Hellomshk top的合约并编译 5 geth中再次开启挖矿 以进行合约交付 将花费部署合约的账户中的以太币 将其赋给将合约公布到链上的用户 以太坊部署实例 目录 一 区块链概念二 核心技术三 以太坊 区块链2 0四 区块链应用五 现存问题六 总结 区块链产业分布 区块链产业应用 ICO金融 ICO是最近从加密货币及区块链行业衍生出的众筹项目概念 ICO全称InitialCoinOffering 我们将之称为首次代币公开预售 当某公司以融资为目的 发行加密货币 通常会发行一定数量的加密代币 接着向参与项目的人出售这些代币 并且通常这些代币被用于兑换比特币 当然也可以兑换法币 区块链产业应用 ICO最大的特点即 非股非债 无关所有权 仅和使用权相关 无收益分配权和剩余价值追索权 ICO金融 ICO在一定范围公开项目 玩家以比特币 以太币认购某新型币 ICO发布者获取的比特币 以太币变现 一般通过新加坡 美国等地 换成美金存入在国外设立的公益基金账户内 再通过国内合法成立的SPV公司或贸易公司 将美金或在离岸市场换成人民币流回中国实际经营ICO所称项目的公司或公司群 资金流向如上 合同关系不赘述 其实 ICO的重要功能就是为了创业者使用众筹而来的社会各类资金 而设计出来的渠道 区块链产业应用 供应链管理 区块链产业应用 新能源模式 区块链产业应用 智能社区 区块链产业应用 区块链产业应用 区块链的发展进程 1 区块链1 0应用 数字货币2 区块链2 0应用 智能合约 数字货币 例如 跨境支付 反洗钱 证券发行与交易 数字化资产等 3 区块链3 0应用 扩展到金融行业以外其他行业隐私数据存储 区块链的高冗余存储 去中心化 高安全性和隐私保护等特点 使其特别适合存储和保护重要隐私数据 防伪溯源 善款进入系统后 整个生命周期都将记录在区块链上 没有人工拨付等环节 每一笔款项的去向很难人工更改 这样就可以促进公益捐款全过程的开放和透明 区块链产业应用 从2008年的比特币开始 区块链经历了可编程货币 可编程金融与可编程社会三大应用时代 其应用范围逐步扩展到社会生活的方方面面 从需求端来看 金融 医疗 公证 通信 供应链 域名 投票等领域都开始意识到区块链的重要性并开始尝试将技术与现实社会对接 从投资端来看 区块链的投资

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论