区块链之区块链是什么?图解区块链+技术要点+应用领域


在今天,无论商业圈、科技圈还是金融圈,最热的词汇无非只有一个,那就是“区块链”, 下面介绍一下区块链的当下现状、一些区块链基本词汇的扫盲讲解以及未来科技领域的新趋势和开发人员需掌握的知识体系。

1. 当下现状

1.1 国家直推

2018年3月12日,工信部宣布“区块链和分布式记账技术标准化委员会”成立。代表国家承认区块链技术本身,虽然现在区块链的概念被炒作的很神话,很多人用区块链行业的发行代币进行投资甚至投机,但是技术无罪!区块链是一种新型的解决数据安全的一种解决方案。
工信部成立区块链委员会

1.2 市场需求

在这里插入图片描述
一线城市岗位居多,北京为首。上海,深圳,杭州也在逐步增加。


2. 区块链-中心化与去中心化是什么意思?

既然区块链如此之火,那么它的概念到底是个啥呢,我们可以用几个场景给读者们还原一下。首先我们要了解两个词汇,“中心化”与“去中心化”。

2.1 信息公正问题

为了解释这两个词,我们先构建一个场景,如下图所示。
在这里插入图片描述
有一天一个男孩对一个女孩说,“愿意爱你一生一世”,这个誓言发送了给了女孩,女孩居然真信了。但是男孩过几天突然就变卦了。如下图所示。

在这里插入图片描述
当男孩提出说分手的时候,他之前承诺的誓言“愿意爱你一生一世”将毫无意义,而且对之前的誓言不需要承担任何的责任,因为“愿意爱你一生一世”这句话,没有任何人可以作证。那怎么去解决这个问题呢?有两种方式可以解决,一种是中心化的方式,另一种就是去中心化的方式。

2.2 “中心化”解决信息公正问题

我们可以通过传统的"中心化"方式解决以上问题。怎么解决,之前不是没有人证明么,我们找一个公认的公平人物不就可以了嘛,比如大公无私的包青天,在男孩向女孩表白的时候,让包青天证明不就可以了嘛~这样,当有一天男孩变心反悔,女孩可以找包青天爷爷作证,当然也可以找一些权威的机构去证明这件事。这就是用中心化解决了信息公正的问题。
在这里插入图片描述

2.3 “去中心化”解决信息公正问题

“中心化”方式虽然解决了信息公正的问题,但是也会有一系列的弊端。有啥弊端呢? 你把全部的依托都压在包青天爷爷身上,人家包青天也是人啊,他也会挂的。就是他长生不老,他也是人类,拥有七情六欲,他也会被男孩用200块钱买通,而说假话。所以将所有的公正权威交给某个中心化的体制管辖,是有一定风险的,而且维护这个体制的公正的成本也会越来越大

那么怎么解决这个问题呢?

我们可以用一种新的方式,叫做“去中心化”方式
在这里插入图片描述

如果男孩向女孩表白的时候,女孩将男孩的某事某刻“爱你一生一世的”聊天记录,转发到微博、朋友圈、QQZONE、抖音甚至是快手。那么这个誓言将被全世界的人所知道,那么所有的吃瓜群众可能都是你的证明人。

这样除非全世界的吃瓜群众同一时刻挂掉,或者男孩要买通所有的人,来更改他之前说过的誓言,但那几乎是不可能发生的事情。

综上, “去中心化” 彻底解决了“信息公正” 的安全问题!


3. 区块与区块链是什么?

那么,去中心化这个词,我们理解了,那么它和区块链又有啥关系呢?

我们通过去中心化解决的信息公正问题,可以打成一个包裹,里面包含(发出信息的人,收信息的人,需要被公正的信息,和发起的时间), 我们把这个包裹定义称作,叫一个"区块"。那么这个世界上,每天需要被公正的信息,不只有一个,很多通过去中心化得到的包裹,都会得到一个对应的“区块”。
在这里插入图片描述

这些区块会每时每刻在全世界各个地方被生成,如果将这些区块通过时间轴穿在一起,就会得到根据时间排序的区块集合,我们就称他们是一个“区块链”了
在这里插入图片描述

那么每个人都会拥有区块链,而且每个人手里的区块链都是一致的
在这里插入图片描述

这样,如果有一个区块,里面包含的事件是某日小One向小露借1000元。这个信息被公正,打包成一个区块,放在区块链中,然后每个人手里的区块链都会加入这个区块的信息。那么当有一天小One不想承认这个区块的信息,他可以销毁自己手里所对应的区块,但是他并不能够去修改其他人手里的区块链,这样小One无法在同一时刻篡改所有人手里的区块信息,信息得到了永远的公正
区块链不可篡改


4. 区块链有哪些可应用的领域呢?

4.1 金融领域

所有人的财产证明,将不只有银行说了算,你的个人价值将永远保值!

4.2 司法领域

每个人的不良记录将永远不能被销毁,树正公民良德!

4.3 社交领域

比如:恋爱表白区块链应用app。男生如何证明到底有多爱她,只要你敢把你的誓言,放在表白App里。

4.4 行政领域

比如:我们每个人的纳税。但是税到底花在什么地方,花多钱并不知道,让国家税透明化,每笔交易记录去中心化,有助于彻底解决腐败。

4.5 商业领域

双11商品限时秒杀!所有的秒杀记录在区块链里,防止内部员工内定。 区块链技术可以净化复杂不可信的世界!彻底解决人与人之前的信任问题!


5. 区块链开发技术包括哪些呢?

5.1 区块链技术岗位技能要求

我们再来看一组boss直聘上统计的数据,目前在招的区块链岗位主流的语言是Go和C++语言,早期的区块链系统和应用程序主要是以C++实现,现在多数公司在打造自己的公链系统都会选择Go语言作为实现。
在这里插入图片描述

5.2 Go语言与区块链

为什么Go语言会成为区块链的主流编程语言呢?Go语言来自Google,创建于2009年,英文名字叫Golang,中国人翻译的很直接,“够浪”(Golang)。Go语言的开发者被称作Gopher(地鼠), 当然也有很多开发者喜欢自嘲,直接称,“I am 够浪!”.
在这里插入图片描述

Go语言有三个特性,开发速度快,并发性好,编程简单。Google在创立Go语言的初衷就给Go语言定义为:“简单快乐的开发高性能程序。”
在这里插入图片描述

因为区块链系统开发涉及到算力及应用,这些C++语言自然可以解决,但是繁琐的开发成本过高,用其他上层语言,如java、python等虽然能降低开发成本,但是性能及区块链的算力又跟不上,所以很多企业在开发区块链技术的时候,就会选择开发成本低并且开发性能客观的Go语言作为首选语言。

我们发现,几乎大多数以上的岗位均需要掌握Go语言,并且区块链的体系多偏向后端编程语言体系,多数岗位要求具备密码学、安全协议及对安全认证算法有一定了解

5.3 区块链开发方向

目前市场对于区块链开发的技术方向已经逐步清晰,主要分为区块链上层应用开发区块链底层系统开发。上层应用开发涉及到的语言比较广泛,如Go、Solidity、Java、C++、Python、node.js等。但是有关区块链底层系统开发,多数Go语言为主,或者C++语言开发。
在这里插入图片描述

区块链架构
在这里插入图片描述

6. 结语

区块链的目的是构建一个点对点的生态,解构权力带来的不对称。它本身只是一个共享的总账本,不同于网络中多节点自己记账,再对账,这就瓦解了中心权力。






作者:黑马程序员
来源:https://zhuanlan.zhihu.com/p/35855357

猜你喜欢

转载自blog.csdn.net/baidu_34122324/article/details/84574645