【区块链】区块链技术学习总结

news2024/11/16 22:25:34

文章目录

  • 一、区块链技术简介
    • 1.1 区块链概念
    • 1.2 区块链应用
      • 1.2.1 区块链1.0技术:比特币
      • 1.2.2 区块链2.0技术:以太坊
      • 1.2.3 区块链3.0技术:价值互联网
  • 二、区块链1.0技术比特币
    • 2.1 比特币
      • 2.1.1 比特币概念
      • 2.1.2 比特币性质
      • 2.1.3 比特币解决的问题
    • 2.2 去中心化模型
      • 2.2.1 去中心化的概念
      • 2.2.2 去中心化的实现
      • 2.2.3 去中心化的优点
    • 2.3 分布式账本
      • 2.3.1 隐私与快速对账
      • 2.3.2 账本一致性的保证
        • 2.3.2.1 双花问题
        • 2.3.2.2 矿工与挖矿
    • 2.4 工作量证明POW
      • 2.4.1 POW算法
      • 2.4.2 双花问题的解决
    • 2.5 比特币的分叉
      • 2.5.1 分叉概念
      • 2.5.2 分叉类型
  • 三、区块链2.0技术以太坊
    • 3.1 以太坊
      • 3.1.1 以太坊出现原因
      • 3.1.2 以太坊概念
    • 3.2 智能合约
      • 3.2.1 智能合约简介
      • 3.2.2 智能合约缔结过程
      • 3.2.3 智能合约的特点
    • 3.3 Ghost协议
      • 3.3.1 Ghost协议引入背景
      • 3.3.2 Ghost协议算法规则
    • 3.4 权益证明机制POS
      • 3.4.1 POS算法引入背景
      • 3.4.2 POS机制
      • 3.4.3 Casper协议
    • 3.5 以太坊分叉
  • 四、1.0技术与2.0技术总结
    • 4.1 1.0技术向2.0技术的演变
    • 4.2 区块链技术的应用
  • 五、Reference
  • 六、总结

一、区块链技术简介

1.1 区块链概念

区块链是一种按时间顺序将数据区块以顺序相连的方式组合而成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。

简而言之,区块链是一条链,链上链接了许多个不能修改的数据块。

1.2 区块链应用

1.2.1 区块链1.0技术:比特币

诞生于2009年1月,比特币区块链的贡献就是提供了一个新的记账方式——基于密码学的分布式账本。
比特币区块链的缺陷是,所有规则事先写好,无法在此基础上去发展、去拓展新的应用。

1.2.2 区块链2.0技术:以太坊

诞生于2015年7月,以太坊区块链支持在其基础上做其他应用开发,也就是在以太坊区块链当做底层,当做基础设施。 以太坊区块链首次提出“智能合约”。智能合约是一套计算机程序,保证你的合同在不借助于第三方的情况下得到执行。
以太坊区块链的缺点是不支持大规模商业应用开发,而且交易速度仍然很慢。

1.2.3 区块链3.0技术:价值互联网

区块链3.0是从2018年开始的,区块链能够对于每一个互联网中代表价值的信息和字节进行产权确认、计量和存储,从而实现资产在区块链上可被追踪、控制和交易主要解决技术上和性能上支持大规模商业应用的问题。
目前尚无真正的区块链3.0系统正式上线,像EOS、Dfinity等目前处于测试阶段。
在这里插入图片描述

二、区块链1.0技术比特币

2.1 比特币

2.1.1 比特币概念

比特币是一种虚拟货币,是一种加密货币,也是一种分布式数字货币。
在这里插入图片描述

2.1.2 比特币性质

1、去中心化:比特币是第一种分布式的虚拟货币,整个网络由用户构成,完全依赖P2P网络,没有中央银行。去中心化是比特币安全与自由的保证 。
比特币是完全去中心化的,意味着它不受任何政府或金融机构的控制,并且可以在互联网上以匿名方式进行交易。
2、匿名性
3、稀缺性
4、转账成本低
5、全球流通便捷

2.1.3 比特币解决的问题

1、高度自治
2、无国界贸易
3、不可篡改
4、隐私安全

2.2 去中心化模型

2.2.1 去中心化的概念

简单理解,从传统CS模式,过度到P2P模式。去中心,而各点皆为中心。
在这里插入图片描述

2.2.2 去中心化的实现

1、去中心化的点对点电子现金系统
比特币要做的是一个“点对点的电子现金系统”,发送方和接收方直接交易,它们之间不需要中介机构的介入。

2、分布式账本
比特币的区块链是基于工作量证明形成的带时间戳、存储数据的数据块和由哈希指针连接成的链条。
这个链条或者说账本以分布式的方式存储在比特币网络的各个节点上,因而也被称为分布式账本。

3、工作量证明
比特币网络中的节点按照规则进行加密哈希计算,以竞争获得生成新区块的权利。节点在竞争获胜后就获得记账权,它生成区块成为最新区块后,就获得与新区块对应的挖矿奖励。
工作量证明也是区块链账本的安全机制。如果不重做“工作量证明”所需的大量计算则此链条不可修改,这一共识机制保证了区块链上的数据的可靠性。

4、最长链原则
在任何时刻,最长的链条是所有人都接受的最终记录。
由于最长链是由网络中的主要算力完成的,因而只要它们不都与攻击者合作,那么它们生成的最长链就是可信的。这个原则被称为“最长链原则”。

5、去中心网络
比特币的去中心网络的架构非常简洁,本身需要的基础设施很少。它可以在互联网网络上运行。计算机节点可以随时离开或加入这个去中心网络,在加入时它们只需遵守最长链原则即可。

2.2.3 去中心化的优点

1、容错性
2、抗攻击性
3、抗勾结性

2.3 分布式账本

2.3.1 隐私与快速对账

1、比特币系统利用HASH算法对交易信息(账户、交易内容)进行加密,保护隐私
2、比特币系统利用HASH值进行对账

在线哈希加解密网站:https://tool.oschina.net/encrypt?type=2

2.3.2 账本一致性的保证

2.3.2.1 双花问题

“双花”的意思就是双重支付,即为一笔资金被花费了两次。这也是数字货币领域中最大的难题。

2.3.2.2 矿工与挖矿

比特币系统规则:最长链为可信任的链条。
矿工:创造区块,使链增长。
矿工凭计算机处理能力进行挖矿。但因假链是由伪造者自己维护,而真链由网络中其他所有矿工维护,所以假链增速很难快于真链,假链很难长于真链,也就很难取代真链成为主链。
在这里插入图片描述

2.4 工作量证明POW

2.4.1 POW算法

比特币系统中,采用工作量证明POW的规则获取记账权。
POW的执行过程:
将不同的nonce值作为输入,尝试进行SHA256哈希运算,找出满足给定数量前导0的哈希值的过程。而要求的前导0的个数越多,难度越大。
在这里插入图片描述
来到在线挖矿网站进行模拟:https://andersbrownworth.com/blockchain
输入待测数据wyt,点击挖矿,得随机数6802,6802为Nonce。此操作意为6802与数据“wyt”经哈希,得值小于目标的哈希值,6802为挖矿次数。
在这里插入图片描述
在这里插入图片描述

2.4.2 双花问题的解决

1、比特币系统规则:最长链为可信任的链条。
2、采用工作量证明(POW)获取记账权。

2.5 比特币的分叉

2.5.1 分叉概念

在这里插入图片描述

2.5.2 分叉类型

1、硬分叉:因为系统更新导致出现分叉,且不可合并。如,比特币扩容。
在这里插入图片描述

2、软分叉:短暂分叉,可合并。如,篡改数据。
在这里插入图片描述

三、区块链2.0技术以太坊

3.1 以太坊

3.1.1 以太坊出现原因

比特币的不足以太坊解决方法
交易速度慢交易速度加快
POW算法,耗电POW+POS算法,逐步向POS算法过渡
仅完成了货币的去中心化智能合约

3.1.2 以太坊概念

以太坊本质上是一个保存了数字交易永久记录的去中心化的公共数据库。这个数据库不需要任何中央权威机构来维持和保护各方的权益。也就是你可以在不需要第三方的情况下进行点对点交易。
以太坊 = 区块链 + 智能合约。
在这里插入图片描述

3.2 智能合约

3.2.1 智能合约简介

智能合约事实上是由计算机代码构成的一段程序。规则明确,所有人必须遵守,无条件执行。

3.2.2 智能合约缔结过程

第一步,参与缔约的双方或多方用户商定后将共同合意制定成一份智能合约;
第二步,该智能合约通过区块链网络向全球各个区块链的支点广播并存储;
第三步,构建成功的智能合约等待条件达成后自动执行合约内容。

3.2.3 智能合约的特点

1、合约内容去信任化
2、合约内容不可篡改
3、经济、高效、无纠纷

3.3 Ghost协议

3.3.1 Ghost协议引入背景

与比特币系统相比,以太坊系统缩短了出块时间。
1、出块时间短的优点:
①交易更快捷,更快被写进区块链
②系统响应时间更快

2、缺点:
①分叉情况更频繁,不利于区块链的安全(算力分散了)
②加剧对个体矿工的不公平,造成挖矿集中化现象

为了解决出块时间短带来的挑战,以太坊采用GHOST协议(贪婪最重可见子树协议、最重合法链)

3.3.2 Ghost协议算法规则

Ghost协议:根据主链出现分叉时,叔父块合并速度的快慢,设立不同级别的奖励促进合并,而不是让分叉在自己的分支上继续挖下去。
在这里插入图片描述
1、选取主链
每次分叉就选取最重子树,而非最长的,直到确定完主链的序。本图中,最终选取的主链是 0, 1B, 2C, 3D, 4B。
同时对于非主链上的块,允许他们被主链引用(主链块最多引用2个),被成功引用后这些块会成为叔块。
在这里插入图片描述

2、区块奖励
主链上的块,每引用一个叔块,奖励1/32的区块奖励。
被引用的叔块获得的奖励为正常奖励的2/8~7/8倍,离叔块越近(区块高度相差越小),奖励越高,最高为7/8。
在这里插入图片描述

3.4 权益证明机制POS

3.4.1 POS算法引入背景

在POW算法挖矿机制下,消耗大量能源,故引入POS算法。但POS算法尚处于实验阶段,故目前以太坊系统采用POW+POS组成Casper协议协议运作。
在这里插入图片描述

3.4.2 POS机制

在这里插入图片描述
在2000区块中A胜出,则在2001区块中B更有可能胜出。

3.4.3 Casper协议

1、规则:根据验证者保证金额占比换算成票数,投票选举区块。

2、相关术语:
·验证者,有资格出块和投票的完整节点。成为验证者需要付出代价。
· 押金,投票者需要放一些币在链上做押金,投票的权利和押金有关,奖金和罚款有关
· 提现的周期是4个月
· 投票其实是广播消息并决定下一个检查点
· 惩罚,没收验证者的押金
· 检查点,每过一个数量的区块是对于整个量进行检查,这个块高度就是检查点

3.5 以太坊分叉

在这里插入图片描述
在这里插入图片描述
· 以太坊系统中硬分叉出现原因:黑客攻击。为了保证投资人的合法权益,以太坊开发团队,更新了以太坊软件,而又因为部分矿工对规则上的分歧,选择不更新软件,最终导致永久的分叉。
在这里插入图片描述

四、1.0技术与2.0技术总结

4.1 1.0技术向2.0技术的演变

在这里插入图片描述

4.2 区块链技术的应用

1、区块连+金融: 构建新时期的信任体系
2、区块连+能源 :打通能源互联网的必由之路
3、区块连+医疗: 为患者打造完整的治疗体系
4、区块连+教育: 打造教育生态
5、区块连+版权: 三位一体保护著作人权益
6、区块连+农业 :让食物更纯净
7、区块连+公益: 让每一份爱心都有归宿
8、区块连+社交: 用户自己控制数据
9、区块连+物联网: 线上与线下完全融合
10、区块连+云存储: 颠覆存储市场
11、区块连+AI 人工智能: 重新定义世界黑科技

五、Reference

2小时学会区块链:https://www.bilibili.com/video/BV1gt411T7Tq

六、总结

2023年回归CSDN,重新出发,选择区块链技术进行学习,记录下自己每一步的成长。道阻且长,行则将至;行而不辍,未来可期。

2023年1月3日于家中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/136631.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Springboot扩展点之BeanDefinitionRegistryPostProcessor

前言通过这篇文章来大家分享一下,另外一个Springboot的扩展点BeanDefinitionRegistryPostProcessor,一般称这类扩展点为容器级后置处理器,另外一类是Bean级的后置处理器;容器级的后置处理器会在Spring容器初始化后、刷新前这个时间…

第二章 chrony服务器

文章目录第二章 chrony服务器1.1安装与配置1.2同步网络时间服务器1.3 配置时间服务器1.4 chronyc 命令1.5常见时区课后练习第一题:第一台机器从阿里云同步时间,第二台机器从第一台机器同步时间第二题:第一台服务器使用系统时间作为第二台服务…

jetson nano GPIO控制说明

文章目录一.GPIO介绍二.安装GPIO库python库C库三.几种常用的通信协议UARTPWMI2CI2SSPI四.控制函数说明python([参考](https://pypi.org/project/Jetson.GPIO/))C五.例程一.GPIO介绍 GPIO(General Purpose Input Output)通用输入输…

干货 | Web自动化测试中显式等待与隐式等待该怎么用?

在实际工作中等待机制可以保证代码的稳定性,保证代码不会受网速、电脑性能等条件的约束。等待就是当运行代码时,如果页面的渲染速度跟不上代码的运行速度,就需要人为的去限制代码执行的速度。在做 Web 自动化时,一般要等待页面元素…

高压放大器在电子束增材制造聚焦消像散控制技术研究的应用

实验名称:高压放大器在电子束增材制造聚焦消像散控制技术研究的应用 研究方向:增材制造 实验目的: 电子束选区熔化技术,即电子束3D打印技术,属于金属增材制造的分支。该技术以电子束为热源,在计算机控制下以…

华为防火墙配置笔记

防火墙(Firewall)也称防护墙,是由Check Point创立者Gil Shwed于1993年发明并引入国际互联网(US5606668(A)1993-12-15)防火墙是位于内部网和外部网之间的屏障,它按照系统管理员预先定…

实战工作十年的Code Review方法论与实践总结

作为卓越工程文化的一部分,Code Review其实一直在进行中,只是各团队根据自身情况张驰有度,松紧可能也不一,这里简单梳理一下CR的方法和团队实践。 一、为什么要CR 提前发现缺陷 在CodeReview阶段发现的逻辑错误、业务理解偏差、…

CleanMyMac2023Mac下载排行最好的清理工具

CleanMyMac是Mac清理工具,具有很多功能。例如‬,删除大量不可见的缓存文件,可以批量删除未使用的DMG、不完整的下载以及其余的旧包。不过由于MAC系统不像windows那样会产生缓存或系统垃圾, 使用Win电脑很多人会下载各类系统优化软…

MQ面试题总结

✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:Java面试题…

【流行框架】Zookeeper

🌟个人博客:www.hellocode.top🌟 🌟Java知识导航:Java-Navigate🌟 ⭐想获得更好的阅读体验请前往Java-Navigate 🔥本文专栏:《流行框架》 🌞如没有JavaWEB基础&#xff0…

Linux文件目录结构详解

Linux文件目录结构 Linux文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录 Linux系统下一切硬件皆文件 具体的目录结构 /bin ->存放最经常使用的指令/sbin ->存放系统管理员使用的系统管理…

从Redis、HTTP协议,看Nett协议设计,我发现了个惊天大秘密

1. 协议的作用 TCP/IP 中消息传输基于流的方式,没有边界 协议的目的就是划定消息的边界,制定通信双方要共同遵守的通信规则 2. Redis 协议 如果我们要向 Redis 服务器发送一条 set name Nyima 的指令,需要遵守如下协议 // 该指令一共有3…

第一章 R语言介绍

1.为何使用R 与起源于贝尔实验室的S语言类似,R也是一种为统计计算和绘图而生的语言和环境,它是一套开源的数据分析解决方案,由一个庞大且活跃的全球性研究型社区维护。但是,市面上也有许多其他流行的统计和制图软件,如…

NLP自然语言处理NLTK常用英文功能汇总

自然语言处理 (NLP) 是一门研究如何让计算机程序理解人类语言的学科。NLTK (Natural Language Toolkit) 是一个 Python 包,可以用于 NLP 的应用开发。 很多数据都是非结构化的,而且包含可以被人类读懂的文本。在用编程方式分析这些数据之前,我们需要对它们进行预处理。在本…

Allegro174版本新功能介绍之背景颜色设置

Allegro174版本新功能介绍之背景颜色设置 Allegro升级到了174的时候,打开的时候默认是黑色的背景,如下图 选择界面 工作界面 和166以及172版本不一样,174支持切换成白色的背景,具体操作如下 选择setup

Java--基础语法

文章目录一、输出hello world二、示例说明三、基本语法三、标识符规则四、注释一、输出hello world public class Helloworld {/*第一个java程序*输出Hello world!!!*/public static void main(String[] args) {//输出Hello world!!!System.out.println("Hello world!!!&…

如何使用Git同时绑定Github以及Gitee

今天接到一项任务,是需要clone一个github上面的项目,正兴高采烈的git clone的时候,git bash框框报错,突然一想,我貌似一直用的Gitee,绑定的也是Gitee,并没有绑定Github,于是就有了这篇博客记录如何使用Git同时绑定Gite…

CTF压轴题解题思路和过程

前言 压轴题难度极大。我在这里详细的记录一下解题思路和过程 题目初探 拿到题目,为三个文件,其中mem_secret-963a4663.vmem为常见内存镜像文件,另外两个文件格式未知。 使用volatility进行分析无法识别profile。 接着分析分析Encryption.…

探索云原生技术之容器编排引擎-Kubernetes/K8S详解(6)

❤️作者简介:2022新星计划第三季云原生与云计算赛道Top5🏅、华为云享专家🏅、云原生领域潜力新星🏅 💛博客首页:C站个人主页🌞 💗作者目的:如有错误请指正,将…

Day 19-Vue3 技术_其它

1.全局API的转移 Vue 2.x 有许多全局 API 和配置。例如&#xff1a;注册全局组件、注册全局指令等。 //注册全局组件 Vue.component(MyButton, {data: () > ({count: 0}),template: <button click"count">Clicked {{ count }} times.</button> })//注…