区块链零基础学习线路

2023-11-22 12:40

本文主要是介绍区块链零基础学习线路,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题导读

1.你对区块链了解多少?
2.区块链与大数据、云计算是什么关系?
3.区块链原理是什么?
4.区块链该如何学习?
5.区块链有哪些应用?
6.区块链与我们普通开发有什么区别和相同之处?



1.区块链与比特币的关系
区块链想学习,相信或多或少都听说过。那么区块链是什么?是否等同于比特币?这是我们刚开始了解区块链,可能产生的困惑。即使你不是IT行业,相信也知道比特币,那么在网络上看到那么多的区块链,又是什么鬼?
比特币:是其中一种最火、最为人熟知的区块链的一种应用
区块链是一种技术,基于区块链的技术,可以有很多应用
也就是说,通过区块链技术可以实现比特币。那么同样它也开始有其它应用。比如现在的以太坊,以及超级账本Hyperledgar。

上面我们解除了比特币与区块链之间的混淆。

2.大数据、云计算与区块链之间的关系
在我们弄清楚上面问题之后,如果我们接触了大数据,可能还会有一些问题?区块链与大数据之间是什么关系?总结如下

 1、区块链使大数据极大降低信用成本

  我们未来的信用资源从何而来?其实中国正迅速发展的互联网金融行业已经告诉了我们,信用资源会很大程度上来自大数据。

  通过大数据挖掘建立每个人的信用资源是很容易的事,但是现实并没有如此乐观。关键问题就在于现在的大数据并没有基于区块链存在,这些大的互联网公司几乎都是各自垄断,导致了数据路孤岛现场。

  在经济全球化、数据全球化的时代,如果大数据仅仅掌握在互联网公司的话,全球的市场信用体系建立是并不能去中心化的,如果使用区块链技术让数据文件加密,直接在区块链上做交易,那么我们的交易数据将来可以完全存储在区块链上,成为我们个人的信用紫云,所有的大数据将成为每个人产权清晰的信用资源,这也是未来全球信用体系构建的基础。


  2、区块链是构建大数据时代信任基石

  区块链因其“去信任化、不可篡改”的特性,可以极大的降低信用成本,实现大数据的安全存储。将数据放在区块链上,可以解放出更多数据,使数据可以真正“流通”起来。基于区块链技术的数据库应用平台,不仅可以保障数据的真实、安全、可信,如果数据遭到破坏,也可以通过区块链技术的数据库应用平台灾备中间件进行迅速恢复。


  3、区块链促进大数据价值流通的管道

  “流通”使得大数据发挥出更大的价值,类似资产交易管理系统的区块链应用,可以将大数据作为数字资产进行流通,实现大数据在更加广泛的领域应用及变现,充分发挥大数据的经济价值。



上面无论是区块链,还是它们之间的关系,你觉得还是比较抽象,那么我们接着往下看。

区块链,到底是什么呢?


一幅漫画让你秒懂

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

区块链技术是指一种全民参与记账的方式。所有的系统背后都有一个数据库,你可以把数据库看成是就是一个大账本。目前是各自记各自的账。

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg


更多内容参考:彻底明白到底什么是区块链,与大数据,云计算的关系是什么
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23974

上面你是否懂得了区块链以及与其大数据,云计算的区别了。

那么我们就需要深入了解下:

  • 区块链到底有没有价值?

  • 区块链的本质是什么?

  • 区块链包含哪些内容?

  • 区块链包含哪些概念?

  • 区块链有哪些应用?

  • 区块链该如何实现?

  • 区块链可以应用于哪些行业?

上面一堆的问题,等待我们去解决。继续阅读下面内容。

3.区块链价值
也就是我们用区块链来干什么?就以我们当前使用的支付宝系统作为对比。我们平常的交易如下


640?wx_fmt=jpeg


上面我们看到,我们的交易是通过第三方机构,支付宝。也就是我们的交易都是由支付宝记录的。我们不想通过支付宝,直接交易是否可以。在没有区块链之前,两个人交易是存在很大风险的。比如赖账怎么办?如果通过支付宝,那肯定是有记录的。但是支付宝,也存在一个风险,支付宝服务器坏掉了,那么记录就全没了。虽然这种情况不可能出现。但是如果使用区块链,比如比特币,是全球性的,而且如果你篡改记录,需要修改51%的机器,这样几乎是不可能的。如果是区块链交易如下图


640?wx_fmt=jpeg


其实在从一个方面来讲,如果只有区块链,支付宝、银行等其实是可以不能存在的。这些机构就已经成为了冗余。虽然实际中可能不完全这样,但是理论上这些都是可以省去的。

上面只是区块链的一个应用,区块链的应用是非常广泛的,比如区块链已经可以用来保存党员信息,用于医疗记录等,这些都是非常有价值的。
更多参考
认识区块链:到底有没有价值
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24399

区块链价值,还可以应用于物联网、身份管理、供应链、金融服务、医疗保健、保险、政府等等。更多参考
区块链有哪些应用场景
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24109

通过上面,或许你已经看到了区块链还是有点用的。但是对区块链认识还是有些模糊的,比如

  • 金融领域为什么要使用区块链技术?有什么实质性的好处?

  • 所有的区块链都需要挖矿吗?

  • 区块链是软件吗?是用什么程序写的?

  • 什么是公有链?什么是私有链?什么是联盟链?


等等,更多参考下面文章
你想知道区块链问题总结
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24513


4.该如何学习
那么接着你可能想已经认识了区块链,或则想接下来改如何学习,该如何从整体了解区块链开发。

如何学习
当我们学习一门知识的时候,经常会不知道该如何下手。该如何入门区块链,该如何操作。下面文章交给你了,不止入门区块链可以这么做,入门其它技术也是可以借鉴的。更多参考下文
新手该如何学习区块链的
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24207



5.区块链常识
我们知道了如何学习,下面我们正式进入区块链的一些概念、常识。比如该如何理解区块链,区块链有哪些分类,区块链的特征



什么是区块链?

区块链定义方式很多:
比如
1.区块链是一个分布式数据库
2.区块链是一块一块的数据,一个一个的数据块。将具体的数据打包在一个区块里。
3.区块链,是实现了数据公开、透明、可追溯的产品的架构设计方法。
4.区块链是由一连串使用密码学方法产生的数据块组成的分布式账簿系统,每个数据块都包含大量的交易信息,用于验证其信息的有效性并生成下一个区块.

哪些分类:
公有链,私有链,联盟链,甚至还有侧链。等更多参考:
相关概念推荐
从技术角度和应用角度思考区块链
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24321


区块链包含术语概念【27术语整理汇总】
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24152


区块链哈希SHA256介绍包括如何计算的
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24105


区块链概念1:Hash 算法
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24082


区块链有哪些分类及哪些适合场景
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24067


通过上面你可能对区块链有了一些感性的认识。明白哦区块链是这样的。

我们当前都是停留于对于区块链的认识,理论方面的知识,接着我们来看看区块链机制

6.区块链机制

区块链产业链主要包括基础网络层、中间协议层及应用服务层。


640?wx_fmt=png 


1)   基础网络层

基础网络层由数据层、网络层组成,其中数据层包括了底层数据区块以及相关的数据加密和时间戳等技术;网络层则包括分布式组网机制、数据传播机制和数据验证机制等。

2)   中间协议层

中间协议层由共识层、激励层、合约层组成,其中共识层主要包括网络节点的各类共识算法;激励层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等;合约层主要包括各类脚本、算法和智能合约,是区块链可编程特性的基础。

3)   应用服务层

应用服务层作为区块链产业链中最重要的环节,则包括区块链的各种应用场景和案例,包括可编程货币、可编程金融和可编程社会。

当然还有其它层,这里主要介绍三层
区块链技术:指多个参与方之间基于现代密码学、分布式一致性协议、点对点网络通信技术和智能合约编程语言等形成的数据交换、处理和存储的技术组合。


640?wx_fmt=png 

更多参考:
区块链系统入门【推荐】
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24512
更多相关内容推荐:
Fabric架构深度解读:从技术方面解决区块链信任问题
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24300


从架构师角度解读区块链技术?
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24229


区块链不可篡改性详解
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24088


区块链架构设计|语言实现等介绍
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24024




7.区块链开发

了解了那么多我们该如何开发区块链。区块链开发平台有三个:
1.比特币
2.以太坊
3.IBM HyperLedger
上面三个平台似乎以太坊更多一些。当然三个都是可以选择的,看你想做什么。

目前区块链分为区块链1.0,区块链2.0,区块链3.0

1.区块链1.0:数字货币
2.区块链2.0:以太坊
3.区块链3.0:智能社会


区块链3.0
区块链3.0是价值互联网的内核。区块链能够对于每一个互联网中代表价值的信息和字节进行产权确认、计量和存储,从而实现资产在区块链上可被追踪、控制和交易 。
价值互联网的核心是由区块链构造一个全球性的分布式记账系统,它不仅仅能够记录金融业的交易,而是几乎可以记录任何有价值的能以代码形式进行表达的事物:对共享汽车的使用权、信号灯的状态、出生和死亡证明、结婚证、教育程度、财务账目、医疗过程、保险理赔、投票、能源。
因此,随着区块链技术的发展,其应用能够扩展到任何有需求的领域,包括审计公证、医疗、投票、物流等领域,进而到整个社会。


目前我们还处于第二阶段。所以区块链可能还有段路需要走。但是这并不耽误我们开发。

开发入门的详细更多参考:
彻底搞懂区块链开发入门
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24239

技术汇总
我们知道了开发平台,那么区块链有哪些开发技术,有没有统计区块链都是使用哪些技术,答案是有的,看下文。介绍了整个技术大全?什么是技术大全,这些技术你可能用不到,但是他可以用来开发区块链。区块链就好比一个项目,实现的语言有多种。如同我们开发,会Java可以开发,会Python可以开发,但是你无需Java和Python都学习,当然你都学习了也是可以的。这里面介绍了区块链的技术比如共识算法、密码学、Ethereum智能合约开发等。
里面包含了5大部分:
1.编程基础

2.区块链基础

3.区块链进阶

4.区块链高级

5.区块链实战


区块链工程师学习大纲【线路指导】
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24168


区块链开发go语言
上面介绍了技术汇总,这里重点介绍下区块链开发语言go语言,为啥重点介绍它那?go语言由于并发能力比较好,最好使用go来实现区块链。那么区块链该如何学习,下面详细介绍了。而且包括书籍,视频等。
区块链开发语言之go语言学习线路指导
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24344


开发环境搭建
上面学习了那么多,可是没有实践还是为0,我们需要切实的实践。


这里主要以以太坊的环境搭建:
以太坊有许多不同语言的客户端实现(即多种与以太坊网络交互的方法),包括C++, Go, Python, Java, Haskell等等。为什么需要这么多实现?不同的实现能满足不同的需求(例如Haskell实现的目标是可以被数学验证),能使以太坊更加安全,能丰富整个生态系统。


我使用的是Go语言实现的客户端geth,该客户端也是官方推荐使用的客户端,稳定性较好,并且资料相对较多。


安装命令:
打开终端窗口,依次输入以下命令:
640?wx_fmt=png 

安装测试:
安装完成后在终端输入:

[Bash shell] 纯文本查看 复制代码

?

1
geth -help


如果显示出各种参数提示信息,则说明安装成功。
更多参考


链接: https://pan.baidu.com/s/1MumCfAJQU642l3VPuLhjvg 密码: 9qz1
更多资料大家可搜索

代码实现

我们会搭建环境,想了解更多的代码实现,可参考下面内容
一个简单的区块链代码实现讲解及下载
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24016


手把手叫你用Python创建区块链包括链流程,代码实现等
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24001

基于Docker容器百行代码实现自己的分布式区块链【python版】
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24347


8.区块链技术应用

我们对开发有了一定了解和实践之后,我们可以进一步了解区块链可以用来做哪些项目。比如可以用来构建电商平台。那么用区块链该如何实现电商平台。它有哪些功能。比如我们需要在项目中考虑实现主要功能:

640?wx_fmt=png

  • 商品上架:应用应该支持卖家上架商品进行销售。我们将实现让任何人自由上架商品的功能。

  • 商品浏览与搜索:应用应该支持买家方便地浏览商品列表。我们会实现浏览商品的功能,以及 基于商品类别、拍卖时间等条件进行查询的功能。

  • 商品拍卖:跟eBay一样,我们会实现维科瑞拍卖方式的商品竞价销售。由于以太坊 上的一切交易都是公开的,因此我们的实现将会与中心化环境下有所不同。

  • 资金托管:一旦出价结束,商品拍卖有了赢家以后,我们会创建由胜出的买方、卖方和任意 第三方参与的托管合约,由托管合约来管理交易资金。

  • 托管资金保护:为了保护托管资金,我们将采用多重签名(2/3)来实现防欺诈保护,即三个参与者有两个同意时, 才会将托管资金释放给卖方,或是将托管资金返还给买方。


更多可参考下文
用区块链构建电商平台
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24252

相关推荐
区块链详解及在教育行业的应用
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23937

9.区块链产品

如果我们只是看文章,那怕是看了开发相关内容,其实还是不太明白区块链产品到底是什么样子的?
其实个人认为区块链与我们所接触的项目没有什么区别?主要是实现技术,比如在我们交易过程中,我们通过web转账,区块链外部操作方面没有什么区别,同样徐亚输入金额,需要输入转账给谁。也就是说技术和实现是有区别的,但是业务差别是不大的。


对区块链的认知,可以进入比特币官网
https://bitcoin.org/zh_CN/getting-started

下载钱包
640?wx_fmt=png 

选择钱包

640?wx_fmt=png 


选择Bitcoin Core,进行安装,然后同步,当然网络比较慢一些。

更多相关内容大家可查看下面视频
链接: https://pan.baidu.com/s/1LF7Pd1A9GurWTUbS0Hkyig 密码: e3w5

10.学习资料推荐


区块链项目开发指南【两本书籍经典推荐】
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24293


区块链原理、设计与应用
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24497


京东区块链技术实践白皮书下载【3月份最新】
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24146


美国政府发布区块链医疗研究论文下载【15篇】
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24053


解码区块链书籍【1215页】
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23892


Go并发编程实战
http://www.aboutyun.com/forum.php?mod=viewthread&tid=20649


区块链技术指南
http://www.aboutyun.com/forum.php?mod=viewthread&tid=24519




如果你想学习更多区块链相关视频和资料,大家可关注公众号

640?wx_fmt=jpeg

回复888,获取5阶段区块链视频。部分内容如下:


640?wx_fmt=png


如果你也是区块链爱好者,可以加微信w3aboutyun,进入about云技术讨论铁粉群。


这篇关于区块链零基础学习线路的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/410224

相关文章

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

MySQL中my.ini文件的基础配置和优化配置方式

《MySQL中my.ini文件的基础配置和优化配置方式》文章讨论了数据库异步同步的优化思路,包括三个主要方面:幂等性、时序和延迟,作者还分享了MySQL配置文件的优化经验,并鼓励读者提供支持... 目录mysql my.ini文件的配置和优化配置优化思路MySQL配置文件优化总结MySQL my.ini文件

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

【区块链 + 人才服务】可信教育区块链治理系统 | FISCO BCOS应用案例

伴随着区块链技术的不断完善,其在教育信息化中的应用也在持续发展。利用区块链数据共识、不可篡改的特性, 将与教育相关的数据要素在区块链上进行存证确权,在确保数据可信的前提下,促进教育的公平、透明、开放,为教育教学质量提升赋能,实现教育数据的安全共享、高等教育体系的智慧治理。 可信教育区块链治理系统的顶层治理架构由教育部、高校、企业、学生等多方角色共同参与建设、维护,支撑教育资源共享、教学质量评估、

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss