1比特币与区块链介绍

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

比特币与区块链浅析什么是比特币理念共识性—分布式数据库开源软件--开放性有限性—总量2100万匿名性—无须身份证明哈希散列加密-安全性比特币是用户自治的、全球通用的加密电子货币,2008年由中本聪提出P2P对等网络--对等性比特币的发展历史及现状起源2000年以前现状2013年-至今2010-2012发展创立2008-2009电子货币与传统电子货币的差异比特币等电子货币传统电子货币去中心化需要中心服务商匿名的实名的存量有限、不能随意增发可以无限增发代码开放封闭的价值来源于用户逐步增多法币背书比特币受到各方的关注赞成派美国:承认比特币合法暂不监管德国:作为记账单位可用于缴税沉默派爱尔兰:推出比特币价差期权印度:继续持袖手旁观的态度监管派中国:不是货币不能线下流通法国:有金融风险非可信任投资交易方式比特币的交易方式与传统电子货币十分类似。首先都需去相关网站下载客户端:比特币钱包电子银行的客户端比特币地址银行卡号比特币密钥银行卡密码交易方式-电子货币的来源用户间的转账网上交易平台钱的来源“挖矿”--每创造一个区块可以获得25个比特币。交易货币创造货币交易方式-交易的确认与维护交易确认—交易记录的保存对于传统的电子货币,交易记录保存在银行中,但是由于比特币是去中心化的,所以需要所有用户共同维护一个全球统一的交易记录,并将数据储存在每个客户端中。如何维护一个全球统一的交易记录呢?1将每笔未保存的交易记录串联起来,并加密2将交易记录打包加密,“挖矿”,系统每十分钟会选出一个幸运的“矿工”3将此幸运矿工打包加密的数据放入全球统一的区块链中,所有客户端实时更新数据,返回1许多交易单组成了账簿,账簿有很多本,每本只记录比特币全世界10分钟内的交易信息交易单记录一笔交易的具体信息,例如付款人帐号、收款人帐号、付款金额、付款人密钥、收款人公钥等将账簿(区块)串联起来的双向链表,比特币全世界只有唯一一条区块链工作原理交易单区块(账簿)区块链工作原理-如何保证安全性加密1.散列算法2.数字签名安全的保障排序工作量证明机制工作原理-区块链示例第1个区块区块ID上一个区块ID下一个区块ID交易内容….第2个区块区块ID上一个区块ID下一个区块ID交易内容….第N个区块区块ID上一个区块ID下一个区块ID交易内容….……作用:记录全部电子货币的全部交易信息,并可以通过回溯查询货币的交易历史。(可类比如下运维系统中的一个数据提取运维流程,每个流程相当于一个电子货币,在处理意见中记录了这个流程的流转,可以进行回溯)工作原理-区块和交易单结构示例区块ID上一区块ID下一区块ID交易单1交易单2……交易单n其他信息1.交易单ID2.资金来源—上一交易单ID3.上一交易单付款人签字4.资金去向—收款人地址5.付款金额6.付款人签字—用于全世界鉴别,不能伪造(签字由付款人密钥、收款人公钥和上一交易单签字加密得来)区块结构交易单结构工作原理-安全散列算法SHA256Sha256散列算法任意数据256bit的定长字符串Sha256函数不可逆性相同数据结果相同,不同数据结果不同。易于验证数据的准确性,但无法反推。Python中的sha256函数可以得到数据的哈希值。以“IamSatoshiNakamoto”为例:5d7c7ba21cbbcd75d14800b100252d5b428e5b1213d27c385bc141ca6b47989e改变原句中的任何一个字母、标点,都会产生不同的哈希值IamSatoshiNakamoto1=f7bc9a6304a4647bb41241a677b5345f...IamSatoshiNakamoto2=ea758a8134b115298a1583ffb80ae629...IamSatoshiNakamoto3=bfa9779618ff072c903d773de30c99bd...IamSatoshiNakamoto4=bce8564de9a83c18c31944a66bde992f...工作原理-数字签名交易单签名过程1.收款人的公钥2.上一交易单数据3.利用1和2的数据得出散列值x4.付款人私钥对x加密,得到付款人签名5.将付款人签名附加在交易单中,发给收款人交易单验证过程1.付款人A的公钥,用于解密A的私钥2.解密付款人的签名,获得散列值x3.收款人利用自己的公钥和上一交易单的数据,得到另一个散列值y4.如果x=y,交易单有效工作原理-工作量证明机制工作量证明的含义工作量证明需要由工作者和验证者两方共同完成。包含两层含义:1、工作者需要完成的工作必须有一定的量,这个量由工作验证者给出。2、验证者可以迅速的检验工作量是否达标,注意这里的检验完成过程必须简单。在区块链中的工作量证明在区块链中,矿工为了挖掘新的block(数据区块)必须进行并完成工作量证明过程。矿工计算每个数据区块头部信息的sha256值,如果比前一个数据区块的sha256值小,那么区块链中就接受这个新的数据区块。每个数据区块的头部信息中都含有一个随机数,当计算出来的sha256值不满足要求时,那么这个随机数(nonce)便增加一个单位,直到满足要求为止。现在没有发现预测sha256值的方法,所以矿工需要大量的计算来找到符合要求的头部sha256值。但是一旦找到答案,验证信息的sha256值是非常容易的。因此,区块链的数据区块生成的过程便成为了矿工工作量的证明。工作原理全世界所有用户可以简单的对任何交易单进行验证签字不仅与一张交易单相关,还跟和这笔钱相关的所有交易内容相关一个用户,用同样的私钥签署不同的内容的交易单,签名也会不同交易单很难伪造和篡改建立全世界统一的有前后次序的交易记录挖矿后将交易记录存在区块中工作原理—区块链的工作流程否是工作量证明结束计算世界中已经创建好的区块链中最后一个区块的散列值不断接收这个世界被广播出来,且没有被放入区块链的交易。检验这些交易,去掉不合理的。猜一个幸运随机数n(比如从0一直到999999....)把1-3步骤得到的数据都送入sha256散列函数,得到一个256bit的散列值x检查x这个整数,前面若干bit(比如96bit)是否都是0?这个x符合“工作量证明难度”吗?工作原理—区块链的工作流程工作量证明结束,创建临时区块,打包广播世界中所有节点检测重复支付区块链分支判断,最终创建账簿全网账簿创建速度控制,平均每十分钟一个工作原理—总结非对称加密保证无法伪造别人支付给作弊者的交易单工作量证明机制,保证数量占优的诚实节点产生的统一交易记录内容与次序真实散列函数保证创建合法账簿极难,检验账簿合法性极其容易时间戳保证交易顺序,无法修改区块链所有网络用户监督交易,保存全局统一交易记录备份区块链的优点去中心化:整个网络没有中心化的硬件或者管理机构,任意节点之间的权利和义务都是均等的,且任一节点的损坏或者失去都会不影响整个系统的运作。因此也可以认为区块链系统具有极好的健壮性。去信任:参与整个系统中的每个节点之间进行数据交换是无需互相信任的,整个系统的运作规则是公开透明的,所有的数据内容也是公开的,因此在系统指定的规则范围和时间范围内,节点之间是不能也无法欺骗其它节点。集体维护:系统中的数据块由整个系统中所有具有维护功能的节点来共同维护的,而这些具有维护功能的节点是任何人都可以参与的。可靠数据库:整个系统将通过分数据库的形式,让每个参与节点都能获得一份完整数据库的拷贝。开源:由于整个系统的运作规则必须是公开透明的,所以对于程序而言,整个系统必定会是开源的。匿名性:由于节点和节点之间是无需互相信任的,因此节点和节点之间无需公开身份,在系统中的每个参与的节点都是匿名的。应用场景可能的应用场景1、私募股权,债券交易系统2、清算系统3、优惠券,点卡,Q币等电子货币和券发行与流通区块链介绍::基于区块链的私募股权市场才是未来参考资料:ThankYouP2P对等网络对等网络(peer-to-peer,简称P2P),又称点对点技术,是无中心服务器、依靠用户群(peers)交换信息的互联网体系。与有中心服务器的中央网络系统不同,对等网络的每个用户端既是一个节点,也有服务器的功能,任何一个节点无法直接找到其他节点,必须依靠其户群进行信息交流。有中心服务器的中央网络系统无中心服务器的对等网络系统工作原理-数字签名数字签名—非对称加密算法假设有三个交易单,代表用户1给用户2支付钱款“交易单1”,用户2给用户3支付钱款“交易单2”,用户3给用户4支付钱款“交易单3”。交易单1用户2的公钥算出散列值用户1的签名用户1的私钥交易单2用户3的公钥算出散列值用户2的签名用户2的私钥交易单3用户4的公钥算出散列值用户3的签名用户3的私钥上一个交易单

1 / 26
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功