一、比特币钱包
比特币(bitcoin)诞生于2008年的一篇论文。
一个署名为中本聪的人,提出了革命性的构想:让我们创造一种不受政府或其他任何人控制的货币!这个想法堪称疯狂:一串数字,背后没有任何资产支持,也没有任何人负责,你把它当作钱付给对方,怎么会有人愿意接受?
Merkle tree
跟二叉树长得很像,只是这个是下面两个节点取哈希值得到上面节点。只需要记住根节点,就可以检测整棵树有没有被篡改。
根哈希值存在block header里,交易过程存在block body里。全节点包括block header和block body,但是轻节点(比如手机上比特币钱包)只包括block header。这棵树可以证明包含某个交易已经被写进了区块链。
3.共识协议
去中心化的货币要注意的两个问题:
1.谁能发行数字货币:挖矿。
2.怎么验证交易的合法性:区块链。
双花攻击(double spending attack)
双花攻击是数字货币的一个主要挑战。
比特币中的交易都要有输入和输出,币从哪来,花到哪去。
正常情况也可能有两个分叉,因为两个节点同时获得记账权,两个节点打包的区块,同时计算出了那个随机数。此时会暂时两个分叉共存,直到其中某一个区块抢先找到了下一个区块,这条就成了最长合法链,另一个分叉就被丢弃。
女巫攻击(sybil attack)
某恶意节点不停产生账户,账户总数超过总账户的一半,则取得了区块链的控制权。
比特币中的共识协议(Consensus)
一些节点是有恶意的,大部分节点是好的。
想法1:把一些交易打包到区块里作为候选区块,让每个区块投票,如果通过就写入区块链。
不行,因为有的恶意节点一直发布一些含有恶意交易的区块,则一直投票,占用资源。而且有的节点不投票。
想法2:不按账户个数投票,而是按照计算力投票。每个节点都可以产生合法交易放入区块,这些节点就开始试随机数,直到找到H(block header)≤ target,则这个节点有记账权。
唯一产生比特币的途径
coinbase transaction。这个不用指出币的来源,有了记账权的节点(找到了随机数)会有出块奖励。
50BTC->25BTC->12.5BTC,每21万个比特币,奖励就减半。
比特币争夺记账权的过程叫挖矿。争夺记账权的节点叫矿工。
二、什么叫区块链拆分,区块链分叉
什么是“区块链”?
区块链有两个含义:
1、区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法。
2、区块链是比特币的底层技术,像一个数据库账本,记载所有的交易记录。这项技术也因其安全、便捷的特性逐渐得到了银行与金融业的关注。
狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。
广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。
区块链是什么意思,怎么理解?
区块链,分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。
区块链(Blockchain),比特币的一个重要概念,它本质上为一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
注意事项
1、区块链起源于比特币,2008年11月1日,一位自称中本聪(SatoshiNakamoto)的人发表了《比特币:一种点对点的电子现金系统》一文,阐述了基于P2P网络技术、加密技术、时间戳技术、区块链技术等的电子现金系统的构架理念,这标志着比特币的诞生。
两个月后理论步入实践,2009年1月3日第一个序号为0的创世区块诞生。几天后2009年1月9日出现序号为1的区块,并与序号为0的创世区块相连接形成了链,标志着区块链的诞生。
2、为了实现区块链金融大跨越大发展,为了推动中国经济新发展,加速全球资产流通,实现一代代人为之奋斗不已的复兴梦想,普银集团于2016年12月9日在贵州举行普银区块链金融贵阳战略发布仪式,会上将就区块链实现资产的数字化流通、区块链金融交易模式、并对区块链服务与社会公共产业的应用落地展开探讨。
参考资料来源:百度百科-区块链金融
参考资料来源:百度百科-区块链
什么是区块链?挖矿是做什么?详细介绍区块链和虚拟货币在比特币刚发行的时候人们发现了,它去中心化,不受任何中心管制;它完全开放,除了交易信息加密之外整个系统信息高度透明,技术都是开源的;安全性,只要不能控制全部节点的%51,就无法肆意修改数据,这使得它相对安全;独立性,整个模式和比特币不依赖任何第三方,所有节点都在系统内验证、交换数据,不受任何干预
我们这里详细解释什么是区块链技术,说白了就是区块+链,那什么是“区块”?什么又是“链”呢?
区块就是一个账本交易记账由分布在不同地方的多个节点共同完成,而且每一个节点记录的是完整的账目,因此它们都可以参与监督交易合法性,同时也可以共同为其作证
每一个区块包含了前一个区块的加密散列、相应时间戳记以及交易资料(通常用默克尔树(Merkletree)算法计算的散列值表示),这样的设计使得区块内容具有难以篡改的特性。用区块链技术所串接的分布式账本能让两方有效记录交易,且可永久查验此交易。
哈希函数h()的作用:将任意长度的字符串,转换成固定长度(例如256位)的输出。输出也被称为哈希值,这个输出不可逆
很难找到两个不同的x和y,使得h(x)=h(y),也就是说两个不同的输入,会有不同的输出。理论上说两个不同的输入可能会有不同的输出,但这几乎不可能,比方说一个无限的空间映射到一个有限的空间,肯定存在多对一的情况,理论存在,但没有任何规律,保证你无法通过数学上的任何推断来找到这个结果,为什么这里是256位呢?不是更长的呢?因为256位已经足够安全。
将账本拆分成块,比如一个本子的一张纸就是一个区块,每个区块记录一段时间内的交易,列如10分钟
我们把每张纸比作一个一个区块,在每个区块的上面增加一部分内容我们把它叫做区块头,其中记录父区块的哈希值,通过每个区块储存父区块的哈希值,将所有区块按顺利连接起来,形成区块链
把1区块的哈希值记录到2区块的区块头上,如此操作每个区块的区块头都记录父区块的哈希值,每个区块都按照顺序链接起来了,这就叫做区块链。第一个区块没有区块头,又被称之为创世区块
区块链是一个账本,在账本上只有发生了交易你的账户上的钱才会变多和变少,需要进行交易那么首先需要一个账号和密码,就像你的银行卡有账号和密码别人就可以对你进行一个转账,在区块账本上这个账号密码就是公钥和私钥
老王(已有私钥,公钥),想转给张10个BTC,需要一些操作
证明是老王本人发出转账签名函数Sign(老王的私钥+转账信息:老王转给张三10BTC)=本次专账签名
验证是老王本人发出转账验证函数Verify(老王的地址+转账详细:老王转给张三10BTC+本次转账签名)=true
一旦转账记录到区块从此谁也不能改变它,张三增加10BTC,老王则相应减少10BTC,整个操作都是自动的,比如你的钱包app它会帮你去做这样的事情,app知道你的私钥,你告诉钱包交易内容,钱包签名向全网公布,等待其他人来验证这笔交易
中心化记账效率会更高,银行、政府或者支付宝帮你记账,都很可靠,因为他们都无法动你的钱,除非它们有你的私钥
中心化记账存在一些缺点
去中心化人人都可以记账,每个人可以保留一个完整的账本。任何人都可以下载开源程序,参与比特币的p2p网络,监听来自全世界发送的交易,成为记账节点,参与记账,假设小逸发布了一笔交易向全网广播,A记账节点监听到了这笔交易,A验证了这笔交易位true之后放入交易池继续向其它节点传播,因为是网络传播,同一时间不同记账节点的交易池不一定相同,每10分钟,从所有记账节点当中,按照某个方式抽取一名,验证这个节点的交易为true之后,之后将这个选中的节点交易池中的交易记录与自己(A)节点的交易池中的交易记录对比一下,对比完之后会将自己交易池中已经被选中记账节点记录的交易删掉,别的不动继续记账等待下一次被选中,每隔10分钟就是一个循环,这个10分钟所有记账节点正常记账,10分钟之后再选出一个节点把它交易池当中的交易作为一个新的区块,这个区块来自所有记账节点中我任意选择的一个记账节点的交易池,如此不断循环往复
交易并不是被记录就完成,只有当这笔交易变成了某一个区块,这笔交易才算是真正的完成。这就是去中心化的一个记账的完整的流程,你的交易并不会第一时间被记录,因为p2p网络传播需要时间,如果被选中区块的节点还没有接受到你的交易,交易就没有完成。每10分钟产生一个区块,但不是所有在10分钟内的交易都能记录。10分钟只是一个平均值
去中心化记账的特点,有记账权的记账节点,每十分钟被选中的节点它会获得50BTC奖励,每21万个区块差不多4年,奖励减半,比特币自发行已经两次减半,那么每十分钟产生一个新的区块这个记账节点得到的奖励是10.5BTC,每隔4年减半那么可以算出BTC的总量大约为2100万枚,预计2040年开采完,记录一个区块的奖励也是比特币唯一的发行方式,当BTC开采完之后,记账节点可以获得的收益就只有交易的手续费了
记账节点通过题目来争夺记账权,
找到某位随机数使得等式不成立
SHA256哈希函数(随机数+父区块哈希值+交易池中的交易)某一指定值)
从0开始遍历随机数碰运气之外,没有其它解法,解题的过程,又叫做挖矿,所以解这个题目的记账节点又被称之为矿工,你遍历随机数越快你拿到这个记账权的可能性就越大,这个遍历速度就被矿老板们称之为算力,为了得到这个算力,矿老板们就会购买更多且更高算力的矿机
谁先解对,谁就得到记账权。A记账节点率先找到解,即向全网公布,其他节点验证无误之后,A节点就获得了这个区块,获得12.5个BTC的收益,在新区块之后重新开始新一轮计算。这个方式被称之为(POW)分配记账权
一般大约10分钟解出这个随机数,10并不绝对,因为解开这个题目的过程本就是个碰运气的过程,未来应对算力的变化,比特币每隔2016个区块,大约两周,会加大或减小难度,使得平均产生区块的时间是十分钟
每一个区块包含了前一个区块的加密散列、相应时间戳记以及交易资料(通常用默克尔树(Merkletree)算法计算的散列值表示),这样的设计使得区块内容具有难以篡改的特性。用区块链技术所串接的分布式账本能让两方有效记录交易,且可永久查验此交易。
和传统存储的数据不同的是,区块链每个节点都按照块链式结构存储完整的数据,区块链每个节点存储都是独立的、地位等同的,依靠共识机制保证存储的一致性,而传统分布式存储一般是通过中心节点往其他备份节点同步数据。
麻将作为中国传统的区块链项目,四个矿工一组,先碰撞出13个数字正确哈希值的矿工可以获得记账权并得到奖励。
很多人讲区块链是骗局比特币是骗局,这也许是个骗局,但是这个技术已经被广泛地承认和应用,区块链涉及的密码学知识一般人再借几个脑子给你你也搞不懂,在一个相对理性的角度看待问题最重要,千万别听风就是雨。
这门技术有着不可思议的地方在一个没有中心没有监管的情况下保持着绝对的秩序这个只需由大家的共识建立的信任,比特币创造了这个共识,在区块链的世界里每个人都是公平平等的。
三、比特币为什么要进行分叉
在区块链和比特币等数字货币的讨论中,我们经常听到“分叉”这个词,那么到底什么是分叉呢?分叉又会有什么影响呢?
区块链
在说分叉之前,先普及一点区块链的小知识,这样更容易帮助我们理解分叉是什么(如果你对区块链一点概念也没有,欢迎翻阅我以前的文章,都是些通俗的话语帮你了解什么是区块链)。
区块链,顾名思义,就是由区块组成的链条,当然这种链条只是一个形象比喻,说白了就是数据区块有序地连接起来。在比特币中,区块中存放的是比特币的交易记录,区块的大小和交易记录所占用的空间决定了一个区块能存放多少交易记录。这些交易记录被打包到区块中,然后区块一个个相连就构成了区块链。
为什么要分叉
我们知道,比特币软件像其他软件一样,需要定期更新和修改,以便让他更好。所以新的版本就会出现,但是由于不是所有人都即使下载了新版本,所以有个矿工就运行了旧版本,有的则运行了新版本,那么一旦新旧版本不兼容的话,区块链就会分叉。因为因版本的区块和旧版本的区块可能存在差异,所以他们不能被连接到同一个区块链上,所以就会出现两条链,甚至多条链,这就是分叉。
软分叉
软分叉指的是,当新共识规则发布后,没有升级的节点会因为不知道新共识规则下,而生产不合法的区块,就会产生临时性分叉。这种分叉会随着节点的升级而逐渐修复。
硬分叉
硬分叉指的是,区块链发生永久性分歧,在新共识规则发布后,部分没有升级的节点无法验证已经升级的节点生产的区块,通常硬叉就会发生。所以,在数字货币领域,硬分叉往往导致新的币种出现。例如以太坊的硬分叉就导致了 ETH的出现。
原文:什么是分叉?什么是比特币分叉?
本文来自用户投稿,不代表币大牛资讯立场,如若转载,请注明出处:https://www.98xmw.com/zhis/14970.html
发表回复
评论列表(0条)