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

这篇具有很好参考价值的文章主要介绍了【浅谈】区块链的工作原理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

本文将介绍区块链的工作原理,请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语句执行。

举例来说:

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

区块链原理,区块链

四、区块链的应用

参考博文:区块链的应用领域
基于区块链的优点,结合应用领域中目前存在的隐患(缺点),进而推广区块链的使用。
区块链原理,区块链文章来源地址https://www.toymoban.com/news/detail-779286.html

到了这里,关于【浅谈】区块链的工作原理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 简易区块链的搭建(2)——工作量证明

    1. big.Int 的一些常见方法和属性: SetInt64(x int64) :将一个 int64 类型的整数赋值给 big.Int 。 SetString(s string, base int) :将一个字符串表示的整数按照指定的进制转换为 big.Int 。 Add(x, y *big.Int) *big.Int :将两个 big.Int 相加,并返回结果。 Sub(x, y *big.Int) *big.Int :将一个 big.Int 减去另

    2024年04月25日
    浏览(46)
  • 区块链的原理和发展

    区块链是一种分布式数据库技术,具有去中心化、不可篡改、安全可信等特点,被广泛应用于加密货币、智能合约、数字资产等领域。本文将介绍区块链的原理和发展历程。 区块链是一种基于密码学技术、分布式系统和共识机制的去中心化数据库。它采用了一种先进的数据结

    2024年02月11日
    浏览(41)
  • 一文读懂:区块链的原理、技术、应用领域

    引言 在当今数字化时代,区块链技术已经成为全球范围内备受瞩目的话题。从金融到供应链,从物联网到数字身份,区块链正在以惊人的速度渗透到各个行业,并在重塑着我们的社会和经济格局。 区块链最初因其作为比特币背后技术的而引起人们的关注。但现在,它已经远

    2024年04月23日
    浏览(62)
  • 【区块链 | IPFS】浅谈 | IPFS数据存储原理

    IPFS在数据存储方面采用的是分散式的文件存储,区别于HTTP协议的位置寻址,IPFS是基于内容寻址,当文件上传到IPFS节点存储时,节点会对文件进行Merkle DAG(默克尔有向无环图)的格式组织分块存储,在存储完毕后,文件将以Merkle DAG的根哈希数来表示该文件,用户可以从IPF

    2024年02月10日
    浏览(36)
  • 浅谈路由器基本结构与工作原理

    目录 一、结构 1.1 输入端口 1.2 交换结构 1.3 输出端口 1.4 路由选择处理器 二、输入端口处理和基于目的地转发 三、交换 四、输出端口处理 五、何时出现排队 5.1 输入排队 5.2 输出排队         下图是一个通用路由器体系结构的总体试图视图,其主要由输入端口、交换结构

    2024年03月19日
    浏览(57)
  • 区块链工作原理,工作机制和详细概念

     各位小伙伴想要博客相关资料的话,关注公众号:chuanyeTry即可领取相关资料! 工作原理         区块链是一种去中心化的分布式账本技术,它的工作原理可以简单概括为以下几个步骤:         1. 交易:区块链中的交易可以是任何数字化的价值交换,例如加密货币

    2024年02月09日
    浏览(53)
  • 区块链基础原理和以太坊工作原理

    当我们谈论区块链的基础原理时,我们指的是一种分布式账本技术,它采用去中心化的方式记录和验证交易。区块链的核心概念包括分布式账本、区块、共识机制和加密算法。 1.分布式账本: 2.区块链是一种分布式账本,它将数据存储在多个计算机节点上,而不是集中存储在

    2024年02月20日
    浏览(54)
  • 区块链工作原理(节点、层)

    在某个节点被当作区块链网络的一部分之前,它必须要完成以下的要求: 节点需要为认证过程生成公钥/私钥对 节点需要与区块链网络中的其他一部分节点建立直接连接(peer connection),如果仅仅与一个节点连接,那么这个节点并不能享受到区块链带来的好处 区块链节点的类

    2024年02月22日
    浏览(41)
  • 区块链工作原理(区块链治理系统、比特币、以太坊、智能合约)

    每个国家或者城市都有自己的一套治理系统来创建、更新和执行法律。区块链也都有自己的治理系统。总的来说,区块链治理可分为两类: On-Chain Governance Off-Chain Governance 链上治理是一个管理和实施加密货币区块链变化的系统。在这种类型的治理中,制定变化的规则被编码到

    2024年02月02日
    浏览(56)
  • 浅谈 Python中if __name__ == ‘__main__‘:的工作原理

    为了理解 if __name__ == \\\'__main__\\\': 的工作原理,我们需要先了解Python中的特殊变量 __name__ 。 每个Python模块都有一个内置的变量 __name__ 。这个变量的值取决于如何执行模块: 如果模块是被直接运行的 (例如,你使用命令 python myscript.py 在命令行中执行脚本),那么模块的 __name

    2024年02月14日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包