【浅谈】区块链的工作原理

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

文章目录


前言

本文将介绍区块链的工作原理请reader带着如下几个问题进行阅读

  1. 什么是区块链
  2. 区块链是如何工作的
  3. 如何确保区块链的安全性
  4. 区块链可以应用在什么地方

一、什么是区块链

区块链是一个链式存储结构区块就是链式存储结构中的数据元素区块链由区块相互连接形成单向链式结构其中第一个区块被称为创始区块。
请添加图片描述
区块链的成长过程如下图。
在这里插入图片描述

二、区块链是如何工作的

区块链是一种分布式账本对任何人都是开放的。

分布式账本指的是交易记账由分布在不同地方的多个节点共同完成而且每一个节点记录的是完整的账目因此它们都可以参与监督交易合法性同时也可以共同为其作证。

它们有一种有趣的性质一旦数据被记录在区块链中日后将很难被修改。这是如何做到的呢我们首先了解一下区块的组成。

1.数据块的组成

在这里插入图片描述
每个数据块都含有三种元素。分别是数据Data、Hash值、前一个区块的Hash值。

1.1数据(Data)

存储于块中的数据取决于块的类型。例如比特币的区块链记录了交易的细节。如发送人、接收者、钱币数量。
在这里插入图片描述

1.2 Hash值

每个块本身有一个Hash值该值是独一无二的就好比每个人都有自己独一无二的指纹。它用于鉴定一个块和块的内容。当一个数据块被制作出来它的Hash值同时也被计算出来了。

如果想修改一个数据块的数据就会同时改变其Hash值。换而言之当你想检测数据库是否有变化时Hash值就非常有用了。若一个数据块的Hash值发生了变动那该块就不再是原来的自己。
在这里插入图片描述

1.3 前一个区块的Hash值

该性质有效的建立了块与块之间的链接性也正是这种性质保证了区块链的安全性。
在这里插入图片描述

三、区块链的安全性

安全性保障经历了如下过程。
在这里插入图片描述

1. Hash值形成链式

如下图我们现在有一条包含三个块的区块链可知每个块有一个独立的Hash值和前一个块的Hash值。块3记录块2的Hash值块2记录块1的Hash值。若黑客想篡改块2的Hash值则依次导致块3以及之后每一个块无效因为它们不再存储前一个块有效的Hash值。

换言之修改任意一个块的Hash值都将导致后面所有块无效。由此Hash值形成的链式结构使得区块链有一定的安全性。

缺点如今计算机的计算速度之快可以每秒计算成千上万个Hash值若仅依靠哈希值是不足以防范篡改数据的问题的。
在这里插入图片描述

2.共识机制

区块链共识机制的目标是使所有的诚实节点保存一致的区块链视图同时满足两个性质
1一致性。所有诚实节点保存的区块链的前缀部分完全相同。
2有效性。由某诚实节点发布的信息终将被其他所有诚实节点记录在自己的区块链中。

常见的共识就机制包括POW工作量证明机制、POS权益证明机制、POW+POS混合共识机制、DPOS股份授权证明等。

此篇仅介绍其中一种共识机制PoW(Proof of Work)即工作量证明技术。因为它需要比特币网络中的节点矿工以计算处理的形式进行某种类型的工作。

矿工是比特币网络的参与者矿工需要检查和证明提交的交易的准确性。通常费用最高的交易先进行。验证过程类似于解决一个非常复杂的数学问题。关于挖矿过程的另一个重要细节是难度调整。为了保持两个区块之间的时间不变难度会在每 2016 个区块之后进行调整。通常每 10 分钟600 秒就会发现一个新块。

当添加一个新块时它还必须配备一个随机数“数字仅使用一次”的缩写用于进一步的加密目的。矿工改变随机数直到找到一个值使块的哈希具有所需的难度级别——一旦满足要求就无法在不重新计算所有先前块的情况下更改块。

之后节点对所选数据进行哈希处理这基本上意味着数据被“切成小块”。在此过程中散列函数一种算法转换选定的数据集并将其转换为固定大小的输出。该输出称为哈希值用作原始值的掩码。

一个非常重要的事实是哈希函数无法进行逆向工程——这意味着您无法从哈希值中找出原始数据。哈希值是一种指纹确保一切都已正确完成。每个哈希值都包含有关所有先前进行的交易的信息。

矿工生成许多具有不同随机数的散列直到找到适合的散列。这个重复的过程被称为挖矿。当然这需要大量的精力因为 ASIC 矿工需要它来尝试许多不同的组合来找到合适的组合。然而这就是比特币网络如此安全的原因。在这里插入图片描述

3. 对等网络P2P network

参考博客区块链之p2p网络

4. 智能网络协议

简单来说人与人之间的纸质版合同形式换成程序的if-else语句执行。

举例来说

智能合约是基于这些可信的不可篡改的数据可以自动化的执行一些预先定义好的规则和条款。以保险为例如果说每个人的信息包括医疗信息和风险发生的信息都是真实可信的那就很容易的在一些标准化的保险产品中去进行自动化的理赔。
——引用 百度百科

在这里插入图片描述

四、区块链的应用

参考博文区块链的应用领域
基于区块链的优点结合应用领域中目前存在的隐患缺点进而推广区块链的使用。
在这里插入图片描述

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: 区块链