区块链工作原理(区块链治理系统、比特币、以太坊、智能合约)

news2024/11/27 6:22:15

文章目录

  • Blockchain Governance System
    • On-Chain Governance
    • Off-Chain Governance
  • BitCoin Blockchain
  • Ethereum Blockchain
  • Properties of Blockchain System
    • Smart Contracts
    • Scalability Issues in Blockchain Systems


Blockchain Governance System

每个国家或者城市都有自己的一套治理系统来创建、更新和执行法律。区块链也都有自己的治理系统。总的来说,区块链治理可分为两类:

  • On-Chain Governance
  • Off-Chain Governance

On-Chain Governance

链上治理是一个管理和实施加密货币区块链变化的系统。在这种类型的治理中,制定变化的规则被编码到区块链协议中。开发者通过代码更新,就可以做出相应变化,每个节点投票决定是否接受或拒绝该决定。

我们先大致回顾一下一个区块链的大致工作流程:

区块链网络是一个包含分布式账本的系统,类似于共享数据库。交易被记录在区块链上,并与所有参与者共享。每当进行一项新的交易时,需要在区块链上添加一个新的区块。然而,需要遵循一些共识协议才能使交易被视为有效。矿工(miner nodes)验证数据以确保它是准确的。

一旦矿工完成了他们的验证过程,结果就会提交给网络。在其他节点或参与者审查并达成共识后,一个新的区块被添加到网络中。矿工通常为他们的努力获得某种类型的补偿,这依赖于工作量证明(PoW)机制。

与非正式的治理系统不同,链上治理使用离线协调和在线代码修改的结合来实现变化,它仅在线上工作。对区块链的改变是通过代码更新提出的。对区块链进行修改的改进建议必须由开发者提交。一个主要由开发人员组成的核心小组负责协调和达成利益相关者之间的共识。通常情况下,区块链的治理涉及以下利益相关者(stakeholders):

  • Miners:参与共识、验证过程。矿工通过挖掘新区块和验证交易来赚取收入。基础区块链上的交易越多,矿工通过服务区块链所能获得的潜在收入就越多。
  • Developers:负责区块链的核心算法,开发者主要关心两件事,一是他们所研究的区块链被使用,二是基础资产的价格上涨。
  • Users or participants:使用和投资各种加密货币。

在这个过程中,利益相关者被提供经济激励(incentives)来参与。例如,每个节点可以通过投票获得整体交易费用的分成,而开发者则通过某种资金机制获得奖励。

如果提议的某个行为达成共识,那么区块链便会自动执行该变化。对于链上治理来说,天下兴亡、匹夫有责,区块链的治理是由每个利益相关者投票决定的,是相对去中心化的。

Off-Chain Governance

链下治理与 "链上治理 "不同,决策是在区块链的底层代码库之外非正式的进行的。

链下治理看起来与政治行为很相似。各种利益集团试图通过一系列的协调游戏来控制网络,他们试图说服其他人支持他们。并没有代码约束这些团体的具体行为,而是在其他利益相关者的已知偏好下,选择符合自己最佳利益的行为。

然而,链下治理是相对集中的,它会排除许多缺乏技术知识或财力的主流用户。


因此,总结一下,我们可以将链上治理理解为嵌入区块链协议本身的算法,而将链下治理理解为是在非正式的区块链协议之外进行的指导和监督,Tezos 是前者的一个例子,而比特币和以太坊则属于后者。


BitCoin Blockchain

与大多数货币不同,比特币不依靠特定货币机构发行,它依据特定算法,通过大量的计算产生,比特币经济使用整个 P2P 网络中众多节点构成的分布式数据库来确认并记录所有的交易行为,并使用密码学的设计来确保货币流通各个环节安全性。P2P 的去中心化特性与算法本身可以确保无法通过大量制造比特币来人为操控币值。基于密码学的设计可以使比特币只能被真实的拥有者转移或支付。这同样确保了货币所有权与流通交易的匿名性。

百度百科

比特币 (BTC) 是第一批公开的使用了区块链概念的加密货币平台之一。它有如下特性:

在这里插入图片描述

我们可以转账BTC 并记录这些比特币区块链的交易。 可以转移的最小 BTC 数额是0.00000001 BTC,这个数额叫作 Satoshi

1   S a t o s h i = 1 100000000 B T C 1\ Satoshi = \frac{1}{100000000} BTC 1 Satoshi=1000000001BTC

BTC 可以用来转移资产 “价值”,或者它可以作为奖励支付给矿工。

比特币区块链的工作流程:

  1. 某个节点向邻居节点发起一笔交易
  2. 邻居节点检查这笔交易
  3. 同时,包括矿工在内的所有节点都会把这个交易加入到未验证的交易池中
  4. 矿工节点收集一些类似交易后就开始挖矿(出块)
  5. 包括矿工在内的全节点检查该区块的不同字段及其有效性
  6. 节点将验证正确的区块添加到他们的账本副本中

一个区块主要包含三部分:

  • Outer header:由区块大小和区块识别信息组成
  • Block header:由区块版本、时间戳、散列目标、父区块散列和 Merkle 树根等信息组成
  • Block body:所有的交易与交易计数器都被集成在 Block body 中

Ethereum Blockchain

以太坊(Ethereum)是一个开源的有智能合约功能的公共区块链平台,通过其专用加密货币以太币(Ether,简称“ETH”)提供去中心化的以太虚拟机(Ethereum Virtual Machine)来处理点对点合约。

百度百科

  • 公共可用的加密货币
  • 以智能合约的形式将业务逻辑纳入区块链网络
  • 使用工作证明(PoW)共识算法的变体,名为 Ethash(以太坊 2.0 使用 PoS)
  • 参与节点需要安装以太坊虚拟机(EVM)来执行智能合约
  • 建立在 P2P 网络之上

以太坊中有三种类型的用户:

  • Contract Account (CA):普通用户,可以在彼此之间进行交易
  • Miners:负责挖矿
  • Externally Owned Account (EOA):EOA 可以与另一个 EOA 进行交易,它们可以调用 CA 的功能,也可以创建一个新的智能合约

Properties of Blockchain System

Smart Contracts

智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。它是编程在区块链上的汇编语言。通常人们不会自己写字节码,但是会从更高级的语言来编译它。

智能合约可以被大致分为两类:

  • Deterministic smart contracts:智能合约的执行不依赖于外部数据或事件。
  • Non deterministic smart contracts:智能合约的执行依赖于外部数据

Scalability Issues in Blockchain Systems

我们可以从许多方面来考虑可扩展性的问题:

  • 当我们增加区块链节点的数量时,区块链系统的可扩展性有多大?
  • 当交易数量增加时,区块链系统表现如何?
  • 当账本的存储量增加时,区块链系统表现如何?

随着时间的推移,新的区块不断增加,账本的规模会不断扩大,当把区块链应用于某些没有高存储容量节点的通信网络时,保存账本的完整副本可能是个很棘手的问题。

区块链系统的性能可以用区块链每秒钟处理的交易数量来衡量。有几个因素影响它的交易处理能力:

  • 每个区块包含的交易数量,数量越多,吞吐量越大
  • 交易速度,需要高效和快速响应的共识算法。
  • 区块的相互到达时间,块之间的到达时间尽可能短

增加交易容量的另一个可能的方法是将交易从主区块链搬移到侧链上。

为方便数字资产在不同区块链间互相转移,侧链(Sidechain)技术应运而生。简单地说,侧链就像是一条条通路,将不同的区块链互相连接在一起,以实现区块链的扩展。侧链完全独立于比特币区块链,但是这两个账本之间能够“互相操作”,实现交互。

百度百科

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/51766.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

我的第一个网页之----使用HTML编辑器编写HTML文档

HTML篇_三、使用HTML编辑器编写HTML文档 为了满足使用HTML语言进行学习、开发需求我们还需要选择使用一款开发工具来使用。我们可以选择更专业的开发工具来使用,在这里简单介绍几款本人使用过的开发工具,选择你的趁手武器。 一、简述几款HTML编辑器 1…

Proxmox VE 彻底删除本地存储

作者:田逸(formyz) 问题描述 从Proxmox VE web管理后台添加本地存储,如LVM、LVM-Thin(精简逻辑卷)等,有时候可能需要删除这些存储,但其Web管理后台却没有提供菜单或者按钮。要删除这…

手把手教你写Linux线程池

手把手教你写Linux线程池 如果需要线程池源码,关注Linux兵工厂,并由大量Linux资料赠送。 线程池 顾名思义,存储线程的池子。线程池是线程的一种使用模式。在平常业务开发中常规的逻辑是遇到任务然后创建线程去执行。但是线程的频繁创建就类…

NR小区搜索(五)S准则

微信同步更新欢迎关注同名modem协议笔记 UE根据支持的频段进行小区搜索过程,检测PSS/SSS->PBCH,然后就可以读到MIB,根据MIB中的pdcch-ConfigSIB1,可以找到CORESET0 和SearchSpace0的信息,进而可以确定一块时频域资…

软件测试 -- 进阶 6 软件缺陷

上工治未病之病,中工治欲病之病,下工治已病之病。-- 孙思邈 .《千金方药方》 释译:未病之病:未病,未发之病(及早干预,防止病发);欲病之病:小病&#xff0…

MIR7创建预制发票BAPI

1、事务代码MIR7 前台输入采购订单等相关字段进行开票 2、代码实现 调用BAPI:BAPI_INCOMINGINVOICE_PARK创建发票 "--------------------斌将军-------------------- DATA:ls_headerdata TYPE bapi_incinv_create_header,lv_invoicedocnumber LIKE ba…

桌面画图工具:Pointofix(fertig)

Pointofix桌面画图工具 Pointofix - der virtuelle Textmarker fr Ihren Bildschirm - Freeware 一、软件下载 官方网址https://www.pointofix.de/ 二、进入下载页面,需要下载安装文件和语言包两个文件 三、网站还提供了一个语言设置小程序,但我没用 …

JavaSE笔记——抽象类和接口

文章目录前言一、抽象类和方法二、接口创建1.默认方法2.多继承3.接口中的静态方法三、抽象类和接口四、完全解耦五、使用继承扩展接口六、接口适配七、接口字段八、接口和工厂方法模式总结前言 接口和抽象类提供了一种将接口与实现分离的更加结构化的方法。 一、抽象类和方法 …

传奇外网架设教程

外网架设前需准备: 准备工具:传奇版本源码,服务器,备案域名,DBC数据库,周年客户端 服务器和备案域名需要自备或者租用,这东西自己造不出来!!! 其他的工具,…

Flink被阿里收购4年,最开心的却是Spark背后的Databricks

最近,Flink Forward Asia(FFA)峰会成功举行,有关Flink的讨论,又开始在国内热闹起来。 2022 年,Apache Flink 社区保持快速发展:GitHub Star 数突破 2 万,单月下载量突破 1400 万次&…

学习总结 | 下一代人工智能

文章目录 一、前言二、底层逻辑三、六大维度今后发展的方向是第三代人工智能,最主要的措施就是把第一代人工智能知识驱动的方法和第二代人工智能数据驱动的方法结合起来,发展安全、可信、可靠和可扩展的人工智能技术,从而推动人工智能的创新应用。 一、前言 中国科学院院士…

iTOP3A5000开发板多路PCIE、SATA、USB3.0等

iTOP3A5000开发板多路PCIE、SATA、USB3.0等 桥片:支持PCIE3.0、USB3.0、SATA3.0、显示接口2路、HDMI和1路VGA、可直接连显示器,另外内置一个网络PHY,片内集成了自研GPU、搭配32位DDR4显存接口,支持16GB显存容量。 底板引出多路PCI…

第3关:添加数据、删除数据、删除表

为了完成本关任务,你需要掌握:1.如何使用HBase shell命令添加数据、2.如何使用命令删除表。 首先启动HBASE 启动HBASEshell 添加数据 我们来给上一关创建的test表的列data添加一些数据: hbase(main):002:0> create test,data Created t…

在 Python 中构建一体化音频分析工具包,在一个地方分析您的音频文件

语言构成了人类之间每次对话的基础。因此,自然语言处理(或简称 NLP)领域无疑在帮助人类日常生活方面具有巨大潜力。 简而言之,NLP 领域包含一组旨在理解人类语言数据并完成下游任务的技术。 NLP 技术涵盖许多领域,例如问答 (QA)、命名实体识别 (NER)、文本摘要、自然语言…

0111 栈与队列Day1

剑指offer09.用两个栈实现队列 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 示例 1&#x…

音视频开发入门小知识

什么是视频 视频就是由一系列图片构成的,当画面快速切换时,人眼看起来就感觉是连贯的动作。 视频帧 帧,表示一张画面,就是一帧。一个视频就是由许许多多帧组成的。 帧率 帧率,表示单位时间内帧的数量,…

KingbaseES数据库 kdb_schedule 自动定时任务

KingbaseES数据库 kdb_schedule 自动定时任务 文章目录KingbaseES数据库 kdb_schedule 自动定时任务前言一 安装插件 kdb_schedule1. 添加kdb_schedule2. 修改kdb_schedule所需参数:3. 重启数据库4. 加载kdb_schedule插件二 dbms_scheduler2.1 创建program创建progr…

(四) 共享模型之管程【Monitor 概念】

一、Java 对象头(P75) 二、原理之 Monitor(锁) Monitor 被翻译为监视器或管程。 每个 Java 对象都可以关联一个 Monitor 对象,如果使用 synchronized 给对象上锁(重量级)之后,该对象头的 Mark Word 中就被设…

Cookie Session JSP

这里写目录标题1 Cookie1.1 会话介绍1.2 Cookie 介绍1.3 Cookie 属性1.4 Cookie 方法1.4.1 Cookie 添加和获取1.5 Cookie 的使用1.6 Cookie 的细节2 Session2.1 HttpSession 介绍2.2 HttpSession 常用方法2.3 HttpSession 获取2.4 HttpSession 的使用2.5 HttpSession 的细节3 J…

高压功率放大器在超声驻波声场的听声器中的应用

实验名称:高压功率放大器在超声驻波声场的听声器声压测量中的应用 研究方向:3D打印 测试目的:利用听声器对声场的测量是一种基于对声压的采集,利用CPB分析及FFT分析处理,得到涉入点声压的方法。介于听声器采集信号为时…