主页 > imtoken转币到交易所 > 什么是区块链?区块链详解

什么是区块链?区块链详解

imtoken转币到交易所 2023-02-11 07:50:49

区块链概念介绍

什么是区块链? 目前还没有很好的定义和介绍。 网上有一些关于区块链含义含糊不清的文章,比如“区块链技术颠覆谁谁谁”,或者“互联网颠覆了世界,区块链将颠覆互联网等等”,或者是满满的介绍比特币、矿机、挖矿等。 那么区块链到底是什么? 它与比特币有什么关系?

事实上,区块链本质上是一个去中心化的分布式账本数据库。 它本身是通过密码关联产生的一系列数据块,每个数据块都包含多个交易有效确认的信息。 比特币是一种基于区块链技术的应用。

要想快速了解区块链,应该从以下几个方面入手:

集权与分权

区块链本质上是一个去中心化的分布式账本数据库。 什么是去中心化分布式数据库?

我们先来看一个中心化和分布式的案例。 搞IT编程的都知道,最流行的版本控制软件是svn和git。 它们有什么区别,如下图所示:

区块链01

Svn 是一个集中式服务器。 代码的版本变更信息保存在svn server服务器上。 每个客户端磁盘只有众多版本中的一个。 如果服务器坏了,我们将丢失版本变更记录。

但是git不一样,它没有中央服务器,每台机器都有一个完整的库,里面有每个版本的变化信息,我们开发完代码后,先commit到本地仓库,然后再push到远程服务器。 如果远程服务器坏了,只需要重新推送本地仓库,版本变更记录还在。

区块链也是如此。 没有中心,是一个分布在世界各地,可以协同工作的数据库存储系统。 任何有能力架设服务器的人都可以参与其中。 来自世界各地的淘金者在本地部署自己的服务器,连接到区块链网络,成为这个分布式数据库存储系统中的一个节点。 一旦加入,该节点与所有其他节点享有完全相同的权利和义务(去中心化、分布式特性)。 同时,对于在区块链上开发服务的人来说,他们可以对系统中的任意节点进行读写。 最后,全球所有节点都会按照一定的机制依次完成同步,从而实现区块链网络中所有节点的数据完全一致。

块内部结构

数据块中有什么? 它是由什么数据组成的?

区块作为区块链的基本结构单元,由包含元数据的区块头和包含交易数据的区块体组成。 区块头包含三组元数据:

1. 用于连接前一个区块,从父区块的哈希值中索引数据。

2. 挖矿难度,Nonce(随机数,用于工作量证明算法的计数器),时间戳。

3. 可以汇总并快速汇总验证区块中所有交易数据的默克尔(Merkle)树根数据。

区块链02

大约每隔10分钟,就会出现一个新的页面(区块),所有参与者都可以在这个页面(区块)上记账。 块)到分类帐(主链)并获得奖励(例如比特币,称为挖矿)。 其他未完成的参与者手中的页(块)将作废,只能继续等待另一个块产生,然后重新开始记账。 每个挖出的区块还包含前一个区块的ID(识别码),使得每个区块都可以找到自己的前一个节点,这样一来就形成了一个完整的交易链。 从诞生之初到运行,全网形成了一条独一无二的主链。如下

区块链03

区块数据安全

既然区块链受到了如此多的关注,那么它的数据肯定是非常安全的,那么它是如何利用密码学来保证区块中的数据不被篡改的呢? 这里使用了密码学中的两个东西:哈希算法和非对称加密。

哈希算法有两个特点:不可逆和非碰撞。 所谓不可逆性,就是当你知道x的哈希值时,你就找不到x; 所谓不冲突就是知道x的时候找不到ay,这样x和y的哈希值 是一样的。 而且只要x稍有变化,计算出的哈希值就与x的哈希值完全不同。

常见的加密算法有两种:对称加密和非对称加密。

对称加密:该算法使用相同的密钥进行加密和解密。 常见算法有DES、AES等。 特点:加解密简单、快速,一般用于数据量大、不太注重安全的场景。

非对称加密:非对称加密需要两把密钥进行加密和解密,这两个密钥分别是公钥(public key什么是区块链和比特币,简称公钥)和私钥(private key,简称私钥)。 除了用户信息加密,非对称加密还有身份验证的作用。 过程如下。 消息发送方首先对消息进行哈希运算,然后用私钥加密。 最后将原始消息、加密消息和公钥发送出去。 消息的接收方首先对消息进行哈希运算,然后用公钥对消息进行解密,得到哈希值。 如果两个哈希值相同,则说明该消息没有加密。 篡改。 常用算法有RSA、DSA等。 特点:加密解密速度慢,但安全性高。 非对称加密最经典的应用就是数字签名。

以上内容属于密码学基础知识。 接下来我们看一下在区块链中的应用:

在创建第一个创世块之后,其中的内容并不重要。 从第二个区块开始,区块头包含前一个区块的哈希值,以及这段时间(约10分钟)全网索引的交易记录,每笔交易都有签名,可以保证没有被篡改,一旦区块被挖出,区块中的数据将不会改变。 否则,区块的哈希值会发生变化,如果哈希值发生变化,整个区块链将不再完整。

块如何在分布式环境中增长

区块数据在不断增加,如何保证新增的数据被其他节点识别? 区块链的逻辑很简单,就是要比谁都快。 谁先计算并加到张博,谁就得到奖励。 那么,如果有人做假账并进行破坏怎么办? 我们来看看区块链是如何解决作弊的:

1、交易数据校验:上面介绍了非加密算法,交易信息在节点间传输采用非对称加密算法,可以保证数据不被篡改。

2. 区块验证:区块来回连接。 修改前一个区块后,哈希值的变化无法接入主链。 如果最后一个被锻造,后面的所有区块都必须被锻造,工作量太大。

3、分布式存储:任何一个节点都拥有所有的交易数据,如果有人修改一页数据,必须得到51%以上节点的同意。

4、链有效性:如果两个节点同时计算,此时该区块的主链会分叉,但区块链规定谁先挖出6个区块谁为准,其他分叉无效。 比如下图中,下面的fork先计算6个block什么是区块链和比特币,下面的fork是主要的。

区块链04

总结

区块链是一种特殊的分布式数据库。 任何服务器都可以成为区块链中的一个节点,节点之间是平等的、去中心化的。 区块链中的数据是加密存储的。 数据不可修改,保证数据的准确性。

区块链的优缺点:

优势:

1.去中心化,不需要第三方授权。

2.数据不可篡改。 一旦数据存储在区块中,它将被永久存储。 数据具有极高的稳定性和可靠性。 (这个功能也是缺点,数据不能撤销。)

3、自主可控,算法公开透明,人为干预不起作用。

4. 开放性,数据完全公开,任何节点都可以查询区块链中的所有数据。 (这个功能也算缺点,一个账户的所有交易数据都可以查询。)

5、匿名性,交易时无需透露身份,让对方相信你。 (这个功能也算缺点,由于无需公开交易身份,交易过程无需担心,因此受到很多不法分子的喜爱。)

缺点:

1、效率低下。 每次向数据库添加数据,至少需要十几分钟。 首次使用时,必须下载所有历史交易数据。

2.延迟,由于交易数据需要其他节点认可,记账周期长,交易不及时。

根据以上特点,区块链应用场景不多:

1、金融、保险、征信系统等对信息安全要求高、速度要求低的领域。

2、在电子货币行业,比如比特币、火币,这些货币是不被央行认可的,不能兑换成人民币。 投资有风险,购买需谨慎。