当前位置:网站首页>08-BTC-分叉
08-BTC-分叉
2022-07-17 00:07:00 【晏日雨】
目录
前言
学习肖臻老师的《区块链技术与应用》公开课笔记,供学习参考。
比特币分叉
区块链由一条链变为两条链就叫分叉。
state fork(临时性的分叉)
假如两个节点同一时间段挖到了矿,就会出现一个临时性的分叉,但是随着时间的推移,分叉会随着最长合法链的出现消失。分叉攻击(forking attack)也属于state fork,也是对比特币这个区块链当前的状态产生的意见分歧,但是这个分叉是故意造成的,所以也叫deliberate fork。
protocol fork(协议分叉)
协议分叉是由于比特币的协议发改变,但是有一部分的节点没有升级软件引起的分叉,根据对协议修改的内容的不同,将其进一步分成硬分叉和软分叉。
硬分叉
如果对比特币协议增加一些新的特性,扩展一些新的功能,但是这时没有升级的较小部分的旧节点不会认可这些新特性,所以旧的节点认为包含新特性的新发布的区块是不合法的区块。这时旧的节点会选择沿着之前的区块继续往下挖,而新的节点虽然认可旧的节点发布的区块,但是新的节点的算力较大会导致存在包含新特性区块的那条链会成为新节点中的最长合法链,就导致了区块链的分叉。如果旧的节点一直不更新软件,这种分叉就会一直存在,这种永久性的分叉就是硬分叉。
软分叉
如果对比特币协议加一些限制,加入限制之后原来合法的交易或区块在新的协议当中有可能变的不是合法了,没有升级的较小部分的旧节点旧的节点也会认可增加限制后发布的区块,但是由于新区块的占比较多,增加限制后发布的区块会构成当前的最长合法链,旧节点会沿着新的区块往下挖,但是新的节点不会认可旧的节点发布的区块,所以这种分叉在一段时间后会自己消失,这种由协议改变引起的临时性的分叉就是软分叉。
边栏推荐
猜你喜欢

Uni app wechat official account (4) - address management page

uniapp开发App中上传图片直传oss

深拷贝与浅拷贝

Summary of XML external entity injection (xxE target recurrence)
![Understand PHP from [Fifth space 2021] easycleanup_ session](/img/fc/95332d488dd6096f3a3f6a9fb11644.png)
Understand PHP from [Fifth space 2021] easycleanup_ session

uni-app微信小程序——商城(7)——商品详情

单页面应用 SPA 和多页面应用 MPA

PCRE bypasses regular

网站如何统计访问人数?51LA如何安装使用?

NodeJS 跨域 CORS
随机推荐
02_数据绑定
当 std::bind 遇上 this
Use leaflet to copy the original shentiwa Mega map to make a diary
promise
Express中间件的分类及使用
今天的码农女孩总结了关于npm包管理和url模块的笔记
自己封裝的風格化的開關卡片組件
elemtnui 表格如何修改某行文字颜色(elemtnui table 修改某行文字颜色)
js获取一个文件名的后缀格式
Deep copy and shallow copy
Differences between let and const, let, const and VaR
Uni app wechat applet - Mall (3) - Mall Homepage
Summary of Applied Cryptography
Promise的基本使用
How to install the pagoda panel on the server? (pagoda panel installation tutorial)
2022.7.7 一些错误总结
js替换字符串某个字符,js修改字符串中指定字符
Page layout - three column layout solution
Record buuctf [netding Cup 2018] unfinish1 problem solving ideas
Uniapp calls the map to query the location and mark the location