【区块链与密码学】第2-6讲:区块链基础技术大剖析之共识算法(二)

CCR量化:什么是区块链共识算法? 区块链共识算法是指在网络用户之间建立协议并维护网络可操作性的一组特定数学规则和函数。 阅读详情

 

【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链与密码学》授课讲义、教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系,我们将及时处理。】

2.4.5 共识算法(二)

新一期区块链与密码学课堂来啦,这一期我们继续共识算法的学习,讲述在共识算法中独特的存在——BFT类算法和结合可信环境的共识算法。

BFT类算法

无论是PoW类算法还是Po*类算法,其中心思想都是将所有节点视作竞争对手,每个节点都需要进行一些计算或提供一些凭证来竞争出块的权利(以获取相应的出块好处)。BFT类算法则采取了不同的思路,它希望所有节点协同工作,通过协商的方式来产生能被所有(诚实)节点认可的区块。这就是我们俗话说的:有事好商量。

拜占庭容错问题最早由Leslie Lamport 等学者于1982年在论文《The Byzantine Generals Problem》中正式提出,主要描述分布式网络节点通信的容错问题。

从20世纪80年代起,提出了很多解决该问题的算法,这类算法被统称为BFT算法。实用拜占庭容错(Practical BFT,PBFT)算法是最经典的BFT算法,由 Miguel Castro和 Barbara Liskov 于1999年提出。PBFT算法解决了之前BFT算法容错率较低的问题,且降低了算法复杂度,使BFT算法可以实际应用于分布式系统。

那么为什么叫拜占庭问题呢?

拜占庭是东罗马帝国的首都,位于如今的土耳其的伊斯坦布尔。由于当时拜占庭罗马帝国国土辽阔,军队之间分隔很远,军队之间只能靠信差传消息。然而,当发生战争时,必须所有的拜占庭军队达成一致共识,才能决定是否去攻打敌人,任意部分军队攻打敌军,都无法取胜。如果军队中出现叛徒或间谍,左右各军队将军的决定,达成的共识可能不代表大多数人意见。这时,在已知有间谍的情况下,其余忠诚的将军在不受叛徒的影响下如何达成一致的协议,就是“拜占庭将军问题”。

拜占庭问题是一个协议问题,拜占庭军队必须全体一致决定是否攻击敌军。问题是:

  • 军队之间分隔远,无法同时一起商议,只能通过信使。

  • 信使或将军有可能存在叛徒,干扰共识过程。

叛徒可以任意行动达到以下目标:

  • 迷惑部分将军,使他们无法做出决定。

  • 欺骗将军,采取相反决定,如将军们不希望进攻,但叛徒促成进攻行动。

叛徒只要完成任意目标,都代表攻击行动的结果失败。

看似是一部谍战片,其背后却有深刻的数学原理。Leslie Lamport 证明了在将军总数n大于3m ,背叛者为m 或者更少时,忠诚的将军可以达成命令上的一致。

 拜占庭解决

BFT类算法一般有完备的安全性证明,能在算法流程上保证在群体中恶意节点数量不超过三分之一时,诚实节点的账本保持一致。然而,这类算法的协商轮次也很多,协商的通信开销也比较大,导致这类算法普遍不适用于节点数目较大的系统。业界普遍认为,BFT算法所能承受的最大节点数目不超过100。目前BFT算法被广泛用于以PoS为基础的共识算法组合中,代表基础设施有以太坊2.0、PlatON等。

结合可信环境的共识算法

可信计算是在计算和通信系统中广泛使用基于硬件安全模块支持下的可信计算平台,以提高系统整体的安全性。

早期可信计算的研究主要以国际可信计算工作组TCG(Trusted Computing Group)为主。可信计算最核心的就是TPM硬件芯片,其TPM(Trusted Platform Module)1.2规范是比较经典的,大多数厂家的芯片都以TPM1.2为标准,该规范已经升级到TPM 2.0。

国内对应的是TCM(Trusted Computing Module)芯片,可以参考“可信计算密码支撑平台功能与接口规范”,而且已经成为国家标准,即GB/T 29829-2013。

随着可信计算的发展,可信平台模块不一定再是硬件芯片的形式,特别是在资源比较受限的移动和嵌入式环境中,可信执行环境(TEE,Trusted Execution Environment)的研究比较热,如基于ARM TrustZone、智能卡等可以实现可信计算环境。

TEE可信硬件

2013年,Intel推出SGX(Software Guard Extensions)指令集扩展,旨在以硬件安全为强制性保障,不依赖于固件和软件的安全状态,提供用户空间的可信执行环境,通过一组新的指令集扩展与访问控制机制,实现不同程序间的隔离运行,保障用户关键代码和数据的机密性与完整性不受恶意软件的破坏。

可信执行环境是一类能够保证在该类环境中执行的操作绝对安全可信、无法被外界干预修改的运行环境,它与设备上的普通操作系统(Rich OS)并存,并且能给Rich OS提供安全服务。可信执行环境所能够访问的软硬件资源是与Rich OS完全分离的,从而保证了可信执行环境的安全性。利用可信执行环境,可以对区块链系统中参与共识的节点进行限制,很大程度上可以消除恶意节点的不规范或恶意操作,从而能够减少共识算法在设计时需要考虑的异常场景,一般来说能够大幅提升共识算法的性能。但其也有劣势,性能的提升会削弱隐私保护的能力。

关于共识算法的知识就讲到这里啦,下节课我们继续解析区块链基础技术,将登场的是对区块链具有颠覆性的技术——智能合约。敬请期待!同学们可以关注点宽学园公众号,持续学习哦。我们下节课见啦。

区块链最全线上培训大纲——尹成学院 区块链乃大势所趋,尹成学院联合微软加清华名师打造最强教学团队。传播智慧我们用心,人生冲锋你们用力第一阶段 区块链与Go编程第1天区块链与Go语言区块链的前世今生区块链现状与就业区块链前景区块链与go语言go语言开发环境的搭建 第2天 Go语言基础标识符关键字字面量操作符表达式 第3天 Go基本类型和高级类型基本类型数组切片字典函数和方法接口结构体 第4天 Go流程控制代码块和作用域If语句Swit... 阅读详情

相关推荐

数学与加密货币:区块链技术的数学基础

《数学与加密货币:区块链技术的数学基础》 关键词 数学基础 加密货币 区块链技术 密码学 分布式账本 摘要 本文旨在探讨数学在加密货币和区块链

AI天才研究院 1482

计算机密码学pdf脚本之家,区块链中的密码学技术.pdf

第37卷第6期 南京邮电大学学报(自然科学版) Vol.37 No.62017年12月 JournalofNanjingUniversityofPostsandTelecommunications(NaturalScienceEdition)   Dec2017doi:10.14...

weixin_34441588的博客 421

密码学与共识算法

本节为密码学与共识算法,主要讲解go中的加密算法和共识算法,如dpos、pos等。

区块链共识协议中的密码学敌手,Part-1

假设我们生活在一个没有谎言的世界里,那么一群人之间是否更容易达成共识?乌托邦毕竟是脱离现实的,这就是为什么会出现计算机安全技术、密码学原语,以及最近的区块链协议。 人类本质上是复杂的,我们的行为也是如此。因此,要创建多人交互的协议是个极具挑战性的任务。每个人都会受到一组特定因素的激励,因此对激励的反应也不同。因此,要设计一种能够符合普遍世界观的算法(即共识协议),最关键的是找到一组适用于绝大...

跨链技术践行者 1万+

倾斜摄影与激光点云融合建模:Photoscan+ContextCapture避坑指南

本文详细解析了倾斜摄影与激光点云融合建模的技术流程,重点介绍了使用Agisoft Metashape(原Photoscan)与ContextCapture进行数据融合的实战指南。文章深入探讨了数据预处理、坐标系统一、空三计算策略及在ContextCapture中进行点云配准等关键步骤,旨在帮助从业者规避常见陷阱,高效构建兼具高精度几何与真实纹理的三维实景模型。

weixin_29062613的博客 250

西门子1200PLC编程实战:OB、FC、FB与DB的深度解析与应用技巧

本文深度解析西门子1200PLC编程中OB、FC、FB与DB四大核心功能块的应用技巧。通过工厂化比喻,阐明OB作为程序总调度、FC作为可重用函数、FB作为带记忆的智能设备以及DB作为数据仓库的角色与关系,并提供实战技巧,帮助工程师构建结构清晰、易于维护的高效PLC程序。

weixin_29280657的博客 442

区块链的数学基础:核心原理与应用解析

区块链技术作为分布式账本系统,成功地解决了传统中心化系统中的信任问题。其背后隐藏着复杂而精妙的数学原理,包括密码学、哈希函数、数字签名、椭圆曲线、零知识证明等。这些数学工具不仅为区块链提供了安全保障,也为智能合约和去中心化应用(DApps)的开发奠定了基础。本文将深入剖析区块链中的核心数学基础,帮助读者理解其工作原理与实际应用。

fudaihb的博客 3592

三维重建之条纹投影结构光(一)

该系列为条纹投影结构光学习笔记,一共分为四篇。第一篇记录文献阅读的笔记,对重要知识点进行摘录介绍。 本篇以理论知识推导为主,主要从以下三个方面进行介绍,首先介绍条纹投影的三角测量原理;然后介绍相位主值的求解和相位展开;最后介绍相位和高度的模型,即相高模型。本篇博文不涉及具体的代码实现。 条纹投影结构光测量原理 ...

beyond951的博客 3万+

【区块链与密码学】第2-5讲:区块链基础技术大剖析之共识算法(一)

【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链与密码学》授课讲义、教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系,我们将及时处理。】 2.4.4共识算法 新一期点宽课堂来啦!在上一期我们讲到数字签名,这一期我们将细说区块链的“灵魂”——共识算法,顾名思义,共识算法的作用就是用算法产生共识。 要熟悉共识算法,首先我们要了解区块链为什么需要共识? 之前的课堂中讲到比特村通过村民记账来解决信任问题,但是所...

Digquant的博客 695

告别FreeRTOS?手把手带你用NuttX在STM32F4-Discovery上跑起第一个Shell

本文详细介绍了如何在STM32F4-Discovery开发板上从FreeRTOS迁移到NuttX,并运行第一个Shell。NuttX以其完整的POSIX兼容性和模块化架构优势,特别适合复杂网络应用的开发。通过环境搭建、移植配置、调试技巧及POSIX开发实践,帮助开发者高效构建嵌入式系统。

weixin_42526417的博客 302

【ENVI初学】查看影像空间分辨率及重采样

例如,如果线段长度为900米,对应的像素数量为30个,那么影像的空间分辨率为30米。通过计算长度与像素数量的比值,即可得到影像的空间分辨率。,在弹出的对话框中,输入重采样后输出文件的xy分辨率大小。在测量结果窗口中,可以看到该线段的长度以及角度。在影像上点击并拖动鼠标,绘制一条直线段。工具,选择要重采样的影像后点击ok。,避免了插值过程中光谱信息的改变。:最近邻插值法通过选择原始影像中。在ENVI中打开影像后右键选择。指示了每个像素的地理跨度(聚合为一个新像素,通常通过。方法一:查看影像的元数据。

weixin_41619112的博客 5573

区块链技术:深入共识算法、智能合约与DApps的架构奥秘

区块链技术正在经历从"加密货币"到"可信互联网基础设施"的认知转变。共识算法的不断创新将平衡"不可能三角"的约束,智能合约的形式化验证可能成为标准实践,而DApps将逐步突破早期采用者圈子走向主流。尽管面临扩展性、监管和用户体验等挑战,区块链构建的无需信任的信任机制,正在为数字时代的新型协作模式奠定基础。

2501_91516851的博客 2109

用Docker-Compose三节点部署生产级Doris集群:从配置文件到故障转移

本文详细介绍了如何使用Docker-Compose部署一个生产级的三节点Apache Doris集群。内容涵盖从核心架构理解、配置文件编写到集群初始化验证的全过程,并重点讲解了如何实现高可用、数据持久化、健康检查以及故障转移等生产级运维关键点,为中小团队提供了一种在容器化便利性与系统稳定性间取得平衡的可靠部署方案。

kkk56的博客 857

【区块链与密码学】第2-3讲:区块链基础技术大剖析之哈希函数

【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链与密码学》授课讲义、教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系,我们将及时处理。】 2.4.1 哈希函数 区块链作为一个诞生刚到十几年的技术,的确算是一个新兴的概念,但是它所用到的基础技术全是当前非常成熟的技术。可以说是一个技术的“结晶体“。 区块链的基础技术如哈希运算、数字签名、P2P网络、共识算法以及智能合约等,在区块链兴起之前,很多技术已经在各...

Digquant的博客 1600

结构力学本构模型:复合材料模型:复合材料热力学行为技术教程_2024-08-07_06-54-53.Tex

热塑性复合材料是一种由热塑性树脂基体和增强纤维组成的复合材料。与热固性复合材料不同,热塑性复合材料在加热时可以软化,冷却时硬化,这一过程可以重复进行,因此它们具有可回收和可再加工的特性。热塑性树脂,如聚酰胺(尼龙)、聚碳酸酯、聚醚醚酮(PEEK)等,与碳纤维、玻璃纤维等增强材料结合,可以制备出具有高强度、高刚度和良好耐热性的复合材料。热粘弹性理论是研究材料在温度变化和时间依赖性载荷作用下的变形和应力响应。复合材料,由于其独特的微观结构,展现出复杂的热粘弹性行为。

809

虚幻商城 Fab 免费资产自动化入库

Fab 商城的所有的免费资产自动化入库

一碗清深的博客 3647

区块链技术深度剖析课程大纲

课程名称:区块链技术深度剖析 课程编码: 课程学分:2学分 课程学时:32学时 适用专业:网络空间安全,信息安全        《区块链技术深度剖析》          The Depth of Analysis Blockchain Technology                  教学大纲 一、课程性质与教学目标   性质:本课程属于网络空间安全专业的兴趣选修课程。本课...

bjgpdn的专栏 2292

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

区块链深度剖析:从技术原理到核心价值

区块链是使用密码学链接,将数据区块以顺序相连的方式组合成的一种链式数据结构去中心化、不可篡改、可追溯、集体维护。一句话收束:区块链通过经济激励(代币)+ 密码学(哈希/签名)+ 博弈论(共识),在无需信任任何人的前提下,实现了“全球可验证的状态机”。适合场景:多方不信任、需审计追溯、抵抗单点霸权。不适合场景:高频微支付、大数据存储、隐私原生数据(需依赖L2或ZK)。未来5年,区块链将像TCP/IP一样成为底层协议——看不见,但无处不在。参考文献Bitcoin白皮书(2008)

✨ 欢迎来到【Seal ^_^ 的优快云博客】!✨ 958

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

区块链工作机制剖析:从密码学原理到分布式共识

区块链技术作为一种去中心化的分布式账本,通过密码学、共识机制和智能合约等核心技术,实现了无需中介的信任机制。其链式结构和哈希算法确保了数据的不可篡改性,P2P网络和共识机制解决了双花问题。然而,区块链仍面临51%攻击、智能合约漏洞等安全威胁,以及可扩展性、能耗和隐私保护等挑战。当前,分层架构、分片技术和新型共识算法等创新正推动区块链向更高效安全的方向发展。该技术在金融、公共服务等领域展现出巨大潜力,其工作机制为构建数字时代的可信价值网络提供了全新思路。

I am “技术科普侠”! 1151

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Raft毕业设计——基于Raft+区块链的共识算法Raft设计与实现(毕业论文+程序源码)——共识算法Raft

区块链,作为目前火热的比特币的底层支撑技术,融合了分布式数据存储,P2P传输,共识算法,加密等各种计算机技术。这其中最为重要的就是共识算法,对于共有链等开放的网络环境往往使用PoW,而对于私有链等相对封闭的网络环境,由于所有节点都是可信任的,往往使用Raft或者Paxos。本文就主要围绕区块链共识算法这一点来对比常用算法的异同以及使用场景,并就Raft给出具体实现以便于理解区块链在分布式环境下如何达成共识。其中实现了Raft的两个核心模块:领导选举和日志复制。

m0_66238867的博客 3577

区块链技术汇总

文章目录闪电网络 闪电网络 《闪电网络》

yhc166188的博客 705

如何系统学习区块链技术-干货来袭

区块链术涉及面很广,很多开发人员看了一些资料后,感觉似懂非懂。 如何系统的学习区块链技术,是很多想从事区块链开发的程序员的疑问,本文内容有点多,一次吸收不完可以收藏以后再用。 苦口婆心写在前面: 从事区块链开发有很多方向,如:区块链应用开发人员、区块链架构师、底层核心开发、共识算法研究等等。 方向不同,需要学习的内容就不一样,如果基于区块链应用开发,只需要了解一门编程语言(nodejs, Go,...

blockchain_s的博客 4134

区块链架构剖析

区块链的基本定义 #定义1:区块链 1.一个分布式的链接账本,每个账本就是一个“区块”; 2.基于分布式的共识算法来决定记账者; 3.账本内交易由密码学签名和哈希算法保证不可篡改; 4.账本按产生时间顺序链接,当前账本含有上一个账本的哈希值,账本间的链接保证不可篡改; 5.所有交易在账本中可追溯。 #定义2:分布式 分布式 是一种计算模式,指在一个网络中,各节点通过相互传送消息来通信和协调行动,以...

Depressiom的博客 1552

什么是正经的区块链

什么是正经的区块链 区块链回来了 区块链两大误区 区块链的特征 区块链的核心技术 公有链、联盟链、私有链 重要的开源项目 BaaS 阿里云BaaS 华为云BaaS 百度云BaaS 腾讯云BaaS

sky_micro的博客 1251

区块链基础与网络安全

区块链基础与网络安全区块链定义什么是比特币比特币信任来源比特币原理比特币->区块链区块链核心技术区块链的特征区块链核心技术区块链攻击对象1. 数据层2.网络层3.激励层4.共识层5.合约层6.业务层区块链安全解决方案1.区块链底层安全2.区块链业务安全3. 交易平台安全4. 矿池与矿机安全5. 用户安全5. 安全企业责任区块链与网络安全结合的未来前景区块链总结与展望 区块链定义 区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链( Blockchain),它本质上

weixin_44515089的博客 3906
上一篇: 【区块链与密码学】第2-5讲:区块链基础技术大剖析之共识算法(一)
下一篇: 【区块链与密码学】第2-7讲:区块链基础技术大剖析之智能合约
Dig Quant
博客等级 码龄7年 124粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值