区块链制作,什么是区块链技术如何学习区块链

这个问题我不确定您在问“区块链”这个技术是什么区块链制作?定义方面的?

区块链制作,什么是区块链技术如何学习区块链

区块链制作,什么是区块链技术如何学习区块链

还是在问区块链,它的技术是什么?用到哪些技术?

我的头条号:熊GGGGGG 倒是都写过上述2问题,有兴趣可以关注看看下面就姑且当做是在问定义,来回答下这个问题

区块链技术是什么?简单地说,这个技术可以理解为一个全民参与的、去中心化的、分布式记账的“账本”,所有的系统背后都是一个数据库(大账本)。

还是太抽象?下面就 全民参与的、去中心化的、分布式记账 展开说明

1、要了解“去中心化”,先了解什么是中心化今天我要网上买件衣服应有的操作是:

逛*宝→下单→支付给*宝→卖家发货→买家收到货→*宝把钱给卖家。

发现没有:本来是2个人之间的交易硬是有个第三者(也就是中心)介入,多麻烦啊。

那为什么这么麻烦还要继续呢?

因为这个小三(中心),后台硬(银行),又很有钱(*宝),值得“信任”。有他们为我们担保,我们放心,不怕钱被卖家吞了。

所以只要解决信任问题,就可以去掉这个“中心”咯

这时候区块链就可以解决“信任”问题。

只要你和卖家交易并且付钱了,每个人都会在她的小本本上记下来,这时候如果商家想要赖账就得干掉所有人的账本,相比于只要干掉一个人(中心)的账本,安全可靠多了。

扯了这么多都是为了下面做铺垫

2、全民参与

全民参与就很好理解了,区块链让人信任的基础就是建立在全民参与的基础上,每个人都是中心,每个人都发一个小本本记账,人人做公正人,想赖都赖不掉。

3、分布式记账

理解了去“去中心化”就不难理解分布式记账了。

中心化对应“中心式记账”

例如:今天我吃了顿饭,用支付宝付款,支付宝在我的账上做了一笔减20元的记录,在店家的账上做了一笔加20元的记录,整个过程并没有发生真的现金交易,而是数据的变化。

而所有的数据,统统保存在了支付宝的数据库当中,通过一个巨大的数据库来记录我们的电子交易过程,这整个过程,就叫做——中心式记账。

通俗讲就是:有且只有一个“大账本”

去中心化对应“分布式记账”

分布式记账即是说:全世界千千万万台计算机共同去参与这一记账过程。每台计算机都能有一份一模一样的账本,每台计算机都能拥有一个汇聚所有交易记录的数据库。

通俗讲就是:人人都有一本一样的“大账本”

以上就是很通俗的介绍了下区块链技术,网络上关于“区块链技术”的定义都是围绕着“区块链”所采用到的技术及特点为其定义的。这篇也是利用几个浅显的特点为其定义,希望对您有所帮助。

想要做区块链开发首先要明白区块链的定义、分类和不同类型区块链的架构特点:

区块链制作,什么是区块链技术如何学习区块链

区块链的定义:

区块链制作,什么是区块链技术如何学习区块链

(1)维基百科给的定义:区块链是一个分布式的账本,区块链网络系统无中心地维护着一条不停增长的有序的数据区块,每一个数据区块内都有一个时间戳和一个指针,指向上一个区块,一旦数据上链之后便不能更改。该定义中,将区块链类比为一种分布式数据库技术,通过维护数据块的链式结构,可以维持持续增长的、不可篡改的数据记录。(2)中国区块链技术与产业发展论坛给的定义为:区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。(3)数据中心联盟给出的定义为:区块链是一种由多方共同维护,使用密码学保证传输和访问安全,能够实现数据一致存储、无法篡改、无法抵赖的技术体系。区块链的类型:

区块链制作,什么是区块链技术如何学习区块链

(1)公有链:

公有链是指全世界任何人都可读取、任何人都能发送交易且交易能获得有效确认,任何人都能参与共识过程的区块链——共识过程决定哪个区块可被添加到区块链中,同时明确当前状态。

(2)私有链:

私有链是指其写入权限仅在一个组织手里的区块链,目的是对读取权限或者对外开放权限进行限制。

(3)联盟链:

联盟链是指其共识过程受到预选节点控制的区块链。例如,对由15个金融机构组成的共同体而言,每个机构都运行着一个节点,为了使每个区块生效需要获得其中半数以上也就是8家机构的确认。

当今流行的区块链系统基本分属以上三大类链的种类。

其中公有链典型的是比特币(1.0代表)、以太坊(2.0代表)、EOS(3.0代表)都算是公链:比特币的主体以C++为主,但比特币基本不支持智能合约。

以太坊有四种专用语言可以用来开发智能合约: · Solidity ,受JavaScript 启发

· Serpent ,受Python启发

· Mutan,受Go 启发

· LLL 受Lisp 启发

EOS的主体是用C++,它的智能合约用的也是C/C++,后续可能也会支持其他语言。

联盟链主要以Fabric框架为代表,可以使用go、java或者nodejs来开发智能合约,不过支持最好的还是go语言。

希望以上可以给希望踏入区块链领域的同仁以参考。

2022-06-11

2022-06-11