区块链之旅(三)智能合约与共识机制

简介: ​ 智能合约是一套以数字形式定义的约定,包括合约参与方可以在上面执行这些约定的协议。智能合约的基本思想是,各种各样的合约条款可以嵌入到我们使用的硬件和软件中,从而使得攻击者需要很大的代价去攻击。

智能合约

定义

智能合约是一套以数字形式定义的约定,包括合约参与方可以在上面执行这些约定的协议。智能合约的基本思想是,各种各样的合约条款可以嵌入到我们使用的硬件和软件中,从而使得攻击者需要很大的代价去攻击。


特点:


计算机程序的if-then语句

条约达成时自动执行

数字化的合同

计算系统自动执行条款

特征:


数据透明:区块链上的数据对参与方是公开透明的,数据处理也是公开透明的。

不可篡改:区块链本身的所有数据不可篡改,区块链上的智能合约代码以及运行产生的数据输出也是不可篡改的。

永久运行:支撑区块链网络的节点往往达到数百甚至上千,部分节点的失效并不会导致智能合约的停止,其可靠性理论上接近于永久运行。

构成

参与方:参与数字资产交易的人或是组织。

资产:具备一定价值而作为交易标得地事物,可以是具体的可以是抽象的。

交易:参与方对资产进行查询,转移等操作的过程。

账本:记录资产的归属及其交易事实的数据库。

设计流程

多方用户共同参与,制定智能合约。

合约通过P2P网络扩散并存入区块链。

区块链构建的智能合约自动执行。

编程语言

image.png


基础建构模型

image.png


运行机制


image.png

应用领域

image.png


问题挑战

image.png


共识机制

简介

拜占庭将军问题

一个关于分布式系统容错问题的故事。


背景:

在战争的时候,拜占庭军队内所有将军和副官必须达成一致的共识,决定是否有赢的机会才去攻打敌人的阵营。但是,在军队内有可能存有叛徒和敌军的间谍,左右将军们的决定又扰乱整体军队的秩序。在进行共识时,结果并不代表大多数人的意见。这时候,在已知有成员谋反的情况下,其余忠诚的将军在不受叛徒的影响下如何达成一致的协议,拜占庭问题就此形成。


解决方案:

每个节点给所有的其他节点发送消息


每个节点根据接受到的所有消息来决定最终的策略


缺点

每个节点先全网节点发送大量的消息。


概念

由于点对点网络下存在较高的网络时延,各个节点所观察到的事务先后顺序不可能完全一致。因此区块链系统需要设置一种机制对在差不多时间内发生的事务的先后顺序达成一致。这种对一个时间窗口内的事务的先后顺序达成共识的算法被称为共识机制。


共识算法:节点依据共识规矩达成共识的计算算法

共识规则:每个区块链里面都有经过精心设计的规则性协议,这些协议通过共识算法来保证共识规则得以正确执行。

作用

作用相当于是生活中的法律


概览

工作量证明PoW:比特币BTC、以太坊ETH、以太坊经典ETC

权益证明PoS:ADA艾达币、Peercoin点点币

授权工作证明DPoS:EOS、Asch、Steem

拜占庭容错算BFT:实用拜占庭容错PBFT、派生BFT

RAFT算法:ETCD

PoW

特点:

解决计算困难问题所需的计算代价作为新加入块的凭证和获得奖励受益。


过程:

image.png


缺陷:

image.png


由于PoW缺乏去中心化且消耗的资源太大,于是有了另一种的共识机制PoS


PoS

特点:

以权益证明代替工作量证明,由具有最高权益的节点实现新块加入和获得激励收益。


过程:

image.png


开始竞争出块记账前,拥有权益的节点将自己的权益放入PoS机制中,同时身份变为验证者,PoS机制根据验证者下注的多少,采用随机的方式选出一个记账者进行出块记账。


缺陷:

并不是完全的随机,而是权值越大会越由概率获取,还是没有解决资源算力浪费的问题,以及存在非完全对等的问题。


DPoS

特点:

首先通过PoS选出代表,进而从代表中选出块生成者并获得收益。


过程:

image.png


DPoS共识机制的基本思路类似于“董事会决策”,即系统中每个股东节点可以将其持有的股份权益作为选票授予一个代表,获得票数最多且愿意成为代表的前101个节点将进入“董事会”,按照既定的时间表轮流对交易进行打包结算并且签署(即生产)一个新区块。


缺陷:


BFT(拜占庭容错算法)

特点:

DBFT算法中参与记账的是超级节点,普通节点可以看到共识过程,并同步帐本信息,但不参与记账。总共n个超级节点分为一个议长和n-1和议员,议长会轮流当选。每次记账时,现有议长发起区块链提案(拟记账的区块内容),一旦有至少(2n+1)/3个记账节点(议长+议员)同意这个提案,那么就这个提案就成为最终发布的区块、并且该区块是不可逆的。


过程:

PBFT过程:

image.png



image.png


RAFT

特点:

是对PAXOS算法的一种简单实现,核心思想是如果数个数据库的初始状态一致,只要之后及逆行的操作一致,就能保证之后的数据一致。


过程:

image.png



image.png

评价标准


image.png

共识机制的对比

image.png

image.png


相关文章
|
6月前
|
人工智能 算法 Java
Java与AI驱动区块链:构建智能合约与去中心化AI应用
区块链技术和人工智能的融合正在开创去中心化智能应用的新纪元。本文深入探讨如何使用Java构建AI驱动的区块链应用,涵盖智能合约开发、去中心化AI模型训练与推理、数据隐私保护以及通证经济激励等核心主题。我们将完整展示从区块链基础集成、智能合约编写、AI模型上链到去中心化应用(DApp)开发的全流程,为构建下一代可信、透明的智能去中心化系统提供完整技术方案。
433 3
|
11月前
|
传感器 人工智能 算法
聚焦“以技术集成支撑单亩价值创造”与“增加值分配机制区块链存证确权”两大核心本质
“振兴链-技术集成科技小院”以技术集成与区块链为核心,推动农业现代化。通过多维度技术整合(如精准农业、物联网等),突破资源约束,最大化单亩产值;同时利用区块链确权存证,建立透明分配机制,解决传统农业中收益不均问题。技术赋能生产,制度重塑分配,实现效率与公平的平衡,助力乡村振兴与产业升级。典型场景显示,该模式可显著提升单亩价值并确保增值公平分配。
|
6月前
|
监控 安全 测试技术
区块链共识机制对公链性能的影响解读
本文系统解析公链共识机制对性能的影响,围绕TPS、延迟与安全性三重权衡,拆解核心概念,梳理高可信度证据链,并揭示常见设计误区。结合跨链互操作与高可用架构实践,提出分层应用策略,助力开发者与决策者在不同场景下实现性能与安全的最优平衡。(238字)
|
9月前
|
人工智能 运维 安全
区块链开发协作工具全景图:从智能合约管理到去中心化治理
区块链开发面临版本混乱、节点运维低效及安全漏洞三大挑战。新一代协作工具如Chainloop、Alchemy Supernode、板栗看板和Quantstamp Security Hub,通过智能合约全生命周期管理、多链节点协同、DAO治理引擎及安全审计平台,提升开发效率与安全性。工具选型需结合团队类型与核心需求,构建覆盖版本控制、节点运维、治理执行与安全闭环的能力矩阵,助力区块链项目高效落地。
|
11月前
|
Java 区块链 网络架构
酷阿鲸森林农场:Java 区块链系统中的 P2P 区块同步与节点自动加入机制
本文介绍了基于 Java 的去中心化区块链电商系统设计与实现,重点探讨了 P2P 网络在酷阿鲸森林农场项目中的应用。通过节点自动发现、区块广播同步及链校验功能,系统实现了无需中心服务器的点对点网络架构。文章详细解析了核心代码逻辑,包括 P2P 服务端监听、客户端广播新区块及节点列表自动获取等环节,并提出了消息签名验证、WebSocket 替代 Socket 等优化方向。该系统不仅适用于农业电商,还可扩展至教育、物流等领域,构建可信数据链条。
|
供应链 算法 安全
探索区块链技术中的隐私保护机制
探索区块链技术中的隐私保护机制
562 27
|
存储 供应链 安全
智能合约与区块链技术的融合:重塑数字信任###
本文深入探讨了智能合约与区块链技术融合的现状、挑战与未来趋势。不同于传统摘要,本文以高度概括的形式,聚焦于两大核心要点:一是智能合约作为区块链上的自执行协议,如何通过代码自动化地促进信任最小化的交易;二是这种融合如何推动数字经济向更加透明、高效、安全的方向发展。全文围绕智能合约的工作原理、区块链提供的底层支持、以及两者结合所面临的技术与非技术挑战展开讨论,旨在为读者提供一个关于这一前沿技术领域的全面而深入的视角。 ###
|
供应链 算法 安全
深度解析区块链技术的分布式共识机制
深度解析区块链技术的分布式共识机制
864 0
|
供应链 区块链
探索区块链技术的未来:从数字货币到智能合约的演变
探索区块链技术的未来:从数字货币到智能合约的演变
315 0
|
供应链 区块链 数据安全/隐私保护
区块链技术基础:从去中心化到智能合约
区块链技术基础:从去中心化到智能合约
315 0
下一篇
开通oss服务