公链技术(公链项目)

文章前言

本系列文章将结合以太坊公链源码对公链设计进行深入剖析解读,涉及范围包括但不仅限于以下几点:

  • 公链设计架构

  • 公链启动过程

  • 公链交互工具

  • 公链接口设计

  • 公链区块设计

  • 公链交易处理

  • 公链智能合约

  • 公链虚拟机类

  • 公链P2P网络

  • 公链数据存储

  • 公链共识算法

  • 公链挖矿流程

区块链技术

区块链技术起源于2008年中本聪发表的名为《Bitcoin: A Peer-to-Peer Electronic Cash System》的论文,在这篇论文中提出了一种\\”点对点\\”的数字货币(BTC),该货币可以独立存在于任何国家、任何机构之外,不受任何第三方管控,其底层实现技术即为区块链技术。

如果要用一句话来概述什么是区块链,那么我们可以将其概括为——区块链是一个以\\”去中心化\\”、\\”去信任化\\”方式集体维护的\\”分布式\\”账本,该账本用于记录网络参与者之间的交易,比如资产或数据的交换。

区块链可以分为以下三个大类:

  • 公有链:无官方组织及管理机构、无中心服务器、参与的节点安装系统规则自由地接入网络,节点之间基于共识机制开展工作,比特币属于典型的共有链。

  • 私有链:建立在某个企业内部,系统运作规则根据企业要求进行设定,读写权限仅限于少数节点,但人保留这区块链的真实性和部分去中心化特性,全球 42 家银行组建的区块链联盟 R3 CEV 就是私有链。

  • 联盟链:由若干个机构联合发起,介于公链和私链之间,兼部分去中心化特性,网络中的节点部分可以任意接入,另一部分则必须通过授权才可以接入,比如:清算系统

区块链技术经历了以下几个阶段:

  • 区块链 1.0:数字货币的去中心化化,以比特币为代币的虚拟货币的时代

  • 区块链 2.0:智能合约与数字货币资产相结合,对金融领域体用了更加广泛的应用场景,代币产物有:以太坊、LISK等

  • 区块链 3.0:区块链在金融行业之外的各行业的应用场景,能够满足更加复杂的商业逻辑,代币产物有:EOS、ELA、DFINITY等

以太坊架构

以太坊是一个开源的有智能合约功能的公共区块链平台,其设计架构如下所示:

简单介绍如下:

  • Decentralized Application,即去中心应用(DApp),它通过Web3.js和智能合约层进行交互,DAPP之与区块链类似于APP之与Android或IOS

  • Smart  Contract:智能合约,通过编写和调用合约实现图灵完备的编程操作

  • EVM:以太坊虚拟机,是简历在区块链上的代码运行环境,其主要左右是处理以太坊系统内的智能合约

  • RPC:远程过程调用,为一个节点请求另一个节点提供的服务,提供外部访问能力

  • 核心层:区块链协议、共识算法、挖矿管理、分布式网络组件

  • 基础库:公链基础应用库,涉及P2P通信协议、加密酸防库、Http、Solidity语法支持、LevelDB数据库以及Math运算支持等

分层功能设计

以太坊和传统的去中心化系统一样都遵循分层的功能设计,按照不同的功能目标,以太坊的功能设计可以划分为如下几个层级:

各层简单介绍如下:

  • 数据层:数据区块、链式结构、交易池、Merkle Tree、非对称加密算法、Event事件

  • 网络层:P2P网络、数据传输机制、数据校验机制

  • 共识层:共识算法(POW、POS等)

  • 激励层:Token发行机制、Token分配机制

  • 合约层:智能合约、以太坊虚拟机(EVM)

  • 应用层:数字钱包、DAPP、以太坊应用

后续文章,敬请期待~

原创文章,作者:七芒星实验室,如若转载,请注明出处:https://www.sudun.com/ask/34344.html

(0)
七芒星实验室's avatar七芒星实验室
上一篇 2024年4月3日 下午7:01
下一篇 2024年4月3日 下午7:03

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注