《区块链安全技术》王剑锋,陈晓峰,王连海|(epub+azw3+mobi+pdf)电子书下载

图书名称:《区块链安全技术》

【作 者】王剑锋,陈晓峰,王连海
【丛书名】高等学校网络空间安全专业系列教材
【出版社】 西安:西安电子科学技术大学出版社 , 2022.05
【ISBN号】978-7-5606-6395-1
【价 格】66.00
【分 类】区块链技术-安全技术
【参考文献】 王剑锋,陈晓峰,王连海. 区块链安全技术. 西安:西安电子科学技术大学出版社, 2022.05.

图书封面:

图书目录:

《区块链安全技术》内容提要:

本书围绕区块链技术的基础密码理论和安全攻防技术展开论述。全书共6章,主要内容包括区块链的基本概念及安全问题、区块链的密码学技术、区块链共识机制、比特币和以太坊等密码货币系统、区块链系统的攻击与防御等。本书从区块链基础密码学原语和共识机制入手,采用区块链“六层结构(数据层、网络层、共识层、激励层、合约层和应用层)”+“应用演变(比特币—以太坊—其他区块链应用)”框架对区块链系统面临的安全问题进行系统化阐述,有助于帮助读者从宏观上掌握区块链系统安全技术体系。本书内容丰富,通俗易懂,可作为高等学校网络空间安全等专业的教材或者教学参考书,也可作为网络与信息安全从业人员的学习参考书。

《区块链安全技术》内容试读

第一章绪论

。1

第一章绪

区块链(Blockchain)是一种由多方共同维护,使用密码学技术保证数据安全传输和访问,保证数据存储完整性,具有可验证、防篡改、能溯源、去中心化等特性的记账技术,也称为分布式账本技术。从本质上讲,区块链是一种去中心化的分布式数据库,在增加数据价值实现过程的透明性方面具有天然的优势四,通过构建防篡改、可追溯的分布式账本,建立起新的网络信任机制,实现数字资产在互联网上的高效流通,从而实现信息互联网向价值互联网的转变。

2008年11月,区块链技术首次出现在中本聪(Satoshi Nakamoto)于密码学论坛上发表的比特币(Bitcoin)白皮书Bitcoin:A Peer-to-Peer Electronic Cash System一文。作为比特币的底层技术,区块链是一种将数据区块按照时间顺序相连的方式组合成块链式数据结构,并利用密码学方法保证数据的不可篡改和伪造的分布式账本)。它并不是一种单一的技术,而是多种技术整合的结果,主要包括分布式网络、共识机制、智能合约、哈希Has)算法、数字签名、隐私保护、跨链等关键技术。区块链以密码学基础理论技术为基础,同时与大数据、云计算、人工智能等新一代信息技术深度融合,采用新的信任机制构建安全数据计算环境,引发了数据工作模式的变革性发展。

如图1.1所示,相对于传统的分布式数据库,区块链主要的技术优势包括:

集中存储

分布式账本

分布存储

共识与激励

一方维护

多方维护

智能合约

外挂合约

内置合约

信息透明

缺乏信任

建立信任

链式结构

增删改查操作

难以篡改

基于数据库的传统记愿

基于区块链的分布式记账

图1.1区块链与传统数据库架构

一是从集中式存储账本演进到分布式共享账本。区块链打破了原有的集中式记账,变成“全网共享”的分布式账本,参与记账的各方之间通过同步协调机制,保证数据的一致性,提升了支付和清结算效率。

二是突破了传统中心化的信任机制问题。网络中不存在中心节点,所有节点地位平等,通过点对点传输协议达成整体共识。

。2

区块链安全技术

三是数据安全且难以篡改。每个区块的数据都会通过非对称密码算法加密,并分布式同步到所有节点,确保任何节点停止工作都不影响系统的整体运作。

1.1区块链的起源与发展

纵观人类历史发展进程,货币的出现起到了至关重要的作用,它使人类社会摆脱了物物交换的束缚,极大地促进了人类文明的发展。无论是最初的贝壳、布帛等实物,还是后来以金、银等为代表的金属货币,乃至再后来的纸币、数字货币等全新的货币形态,其本质都是建立价值交换与传递体系。

数字货币依托计算机和互联网技术进行存储、支付和流通,具有使用简便、可靠、安全等优点。现阶段数字货币通常以银行为媒介,集金融储蓄、信贷和非现金结算等多种功能为一体,可广泛应用于生产、交换、分配和消费领域。然而,设计一种实用化的数字货币绝非易事,其中面临的一个核心问题是如何完成价值转移。由于数字货币可以轻而易举地进行复制,因此,简单地发送数字货币无法实现价值转移(这一点不同于纸币的流通)。为了防止同一个数字货币被重复使用,银行往往要作为可信第三方出现。在去中心化的应用场景下,设计一个安全的数字货币系统仍然是一个难题

2008年11月1日,中本聪提出了第一个完全去中心化的数字货币系统一比特币。比特币是根据特定的算法计算产生的,不依靠特定的货币机构发行,它通过分布式数据库确认并记录所有交易行为,确保无法通过大量制造比特币造成币值混乱。比特币使用密码学来保证货币流通的安全性,确保比特币只能被真实用户使用,保证了货币所有权和交易匿名性。

1.1.1区块链简介

区块链技术最早出现于比特币中,作为比特币系统的重要支撑技术,用于实现分布式记账功能。令人惊讶的是,比特币看似简单的系统结构在无中心模式下一直保持稳定运行,从未发生严重的系统事故。随着比特币的流行,其背后的区块链技术受到了越来越多的关注,并引发了分布式账本技术的革新浪潮。

首先,区块链采用独特的“块+链”式数据结构,按照时间顺序,将特定时间内的全部交易单组合成一个个数据块,并通过哈希运算形成有序的链表结构,从而保证了链上数据的不可篡改性。其次,区块链系统中的账本在整个网络的(完整)节点之间进行同步共享,系统中每产生一笔交易,都会被广播至各个节点,并由节点上的矿工进行验证和更新记录。再次,区块链系统是公开透明的。系统中节点之间的关系是完全对等的,可以自由加入或者离开,不存在任何中心化的管理节点或者第三方仲裁,从而使得系统不会因为少数节点的崩溃而影响账本信息的完整性。最后,区块链引入了共识机制,通过采用工作量证明(Proof of Work,PoW)、权益证明(Proof of Stake,,PoS))、拜占庭容错(Byzantine Fault

Tolerance,.BFT)等共识机制使所有节点严格按照事先约定的合约或者规则执行并最终达成共识,解决了互不信任节点之间的信任问题。

区块链给人们提供了一种在开放的不可信环境下进行价值传递的新型机制,是构建未来价值互联网的基础性技术。它被认为是人类历史上继蒸汽机、电力、互联网之后的下一

第一章绪论

…3·

代具有颠覆性的核心技术。随着云计算、大数据、物联网等新一代信息技术的发展融合,区块链在金融、医疗、司法存证、供应链等行业中的应用正在加速推进。区块链特有的去中心化等优势将有助于企业降低成本,不断催生新的商业模式。不久的将来,区块链将深入人们生活的方方面面,为人们的生活带来更多的便利。

1.1.2区块链的发展历程

区块链技术的诞生最早可以追潮到公钥密码学和分布式计算理论,其底层的核心技术包括哈希函数、数字签名、点对点网络、共识算法和智能合约等。在区块链技术兴起之前,这些技术已经被广泛应用于互联网环境。区块链看起来似乎是已有技术的简单组合,但这并不能削弱区块链技术的贡献,其原创性的去中心化思想彻底颠覆了人们之前对电子货币的认知,引起了学术界和工业界的广泛关注。

区块链作为比特币的底层技术进入公众视野以来得到了迅猛发展,其发展历程可分为可编程密码货币、可编程金融和可编程社会3个阶段,也分别称为区块链1.0时代、区块链2.0时代、区块链3.0时代。

1.区块链1.0时代(2009一2012年)

2009年1月,比特币系统正式上线,标志着比特币网络的正式诞生。简单来讲就是将区块式交易数据按照时间顺序进行哈希运算并广播给全网用户,从而保证了数据的公开透明且防篡改。随着第一批比特币被挖出来,区块链1.0时代正式开启。

在区块链1.0时代,区块链的应用主要聚焦在密码货币领域,典型代表包括比特币、莱特币Litecoin)等,因此也被称为可编程密码货币时代。比特币的出现带来了数字支付系统的革新,它是一种全新的、低成本的、去中心化的数字支付系统,使货币交易不再受时间、地点、国家的限制。2010年5月22日,程序员Laszlo Hanyec用1万个比特币购买了2个价值25美元的披萨,这是史上首笔比特币与实物的交易,具有重要意义可。

比特币等密码货币的流行使人们开始关注区块链,这对于区块链技术的传播起到了极大的促进作用。然而,比特币系统是一个专为密码货币设计的专用系统,其对于密码货币之外的应用场景支持有限,在一定程度上限制了区块链技术的普及。

2.区块链2.0时代(2013一2017年)

2013年起,随着以太坊(Ethereum)8]平台的兴起,区块链的应用范围得到了极大的拓展,其本质是将区块链当作一个可编程的分布式信用基础设施,对金融领域更广泛的应用场景进行优化,使得区块链的应用范围从单一的密码货币领域拓展到了金融领域的方方面面,比如股票、保险、清算等。因此,区块链2.0时代也被称为可编程金融时代。

区块链2.0时代最大的标志是智能合约的引入,极大地拓展了区块链的应用领域,降低了社会生产环节的信任建立与协作成本,提高了行业间的协同效率。同时,众多新的共识机制的提出,使得区块链性能得到了极大的提升。例如,以太坊采用的PoS共识算法将出块时间降低到了秒级,为区块链走向实用奠定了基础。

3.区块链3.0时代(2018年至今)》

随着智能合约的加入,区块链在社会生活各方面的应用潜力被不断发掘,人们把超越

4

区块链安全技术

密码货币和金融范畴的区块链应用统称为区块链3.0时代,'也叫作可编程社会时代。区块链3.0时代可以为各种行业提供去中心化解决方案,不再依靠第三方机构获取信任或者建立信任,可实现信息的共享,包括在司法、医疗、物流等各个领域,可以解决信任问题,提高整个系统的运转效率。需要说明的是,到目前为止,区块链3.0时代对区块链各方面性能的要求均远高于前两个时代,尚未出现一个相对成熟的区块链3.0平台。但是,区块链3.0时代未来的发展必将改变人类社会的各个方面,对整个世界发展产生重大影响。

1.2区块链的分类

根据区块链网络中心化程度的不同,分化出三类不同应用场景下的区块链:(I)公有链(Pubic Blockchain):全网公开,无用户授权机制的区块链。

(2)联盟链(Consortium Blockchain)9或行业链:允许授权的节点加入网络,可根据权限查看信息,往往被用于机构间的区块链。

(3)私有链(Private Blockchain)o:所有网络中的节点都掌握在一家机构中。

联盟链和私有链统称为许可链,公有链称为非许可链。区块链的分类及各类区块链的结构如图1.2所示。

区块链

公有链

联盟链

私有链

公开节点

公开节点

授权节点

公开节点

授权节点

授权节点

权节

·任何节点都是向任何人开放的

·介于公有链和私有链之间

·单机构享有使用权和控制权

·任何人均可自由加入和退出

·加入和退出需经过联盟授权

·权利完全控制在一个组织中

图1.2区块链的分类及各类区块链的结构示意图

1.公有链

公有链是任何人都可读取、发送交易且交易能获得有效确认的、任何人都能参与共识过程的区块链。公有链作为中心化或者准中心化信任的替代物,通常被认为是完全去中心化的区块链形式。公有链适用于密码数字货币、金融交易系统等需要公众参与、保证数据公开透明的系统。公有链的安全通过PoW机制、PoS机制或授权权益证明(Delegated Proofof Stake,DPoS)等方式维护,遵循每个人可从中获取与共识过程作出贡献成正比的经济奖励的一般原则,有效结合了密码学和激励机制,保证了公有链的安全。目前典型的公有链平台有比特币和以太坊。

第一章绪论

·5

公有链保护用户免受开发者的影响,其开放性可应用于多个领域,但公有链在某些特定环境下(如需保护数据隐私等)具有一定的局限性,例如其完全透明公开导致无法保护数据隐私,其不可更改性将降低一定的灵活性。同时,公有链存在公共区块交易费用较高、确认速度慢等弊端。

2.联盟链

联盟链是指由若干利益相关的组织或机构组成联盟,共同参与管理的区块链,每个组织或机构都可以管理一个或多个节点。例如,15个金融机构组成的共同体构建了联盟链,每个机构运行一个节点,且为使每个区块生效,区块链系统需要获得其中10个机构的确认,即达到23确认率才可确认区块。联盟链介于公有链和私有链之间。联盟链采用多中心化,可以极大改善系统信任问题,可以联合多企业共存的行业,对产业或国家的特定清算、结算有较大改善,可以降低两地结算的成本和时间,比现有的系统简单且效率更高。同时,联盟链继承中心化的优点,易进行控制权限设定,具有更高的可扩展性。

目前,几乎所有的科技巨头或多或少地都采用了一体化模式,并将之应用到企业的服务上。一旦企业建立自己的私链、行业之间建立联盟链,企业之间的交流、合作将会更简单。但行业不同可能存在需求不同,导致实现难度非常大。例如,金融行业既要在各个企业之间建立信息互通机制,又要使企业的金融交易信息和数据得到有效的安全保障。一些安全风险需要有效过滤,敏感信息需要有效保护,此时私有链与联盟链就具有很大作用。典型的联盟链平台有超级账本(Hyperledger)、Quorum和R3CEV等。

3.私有链

私有链对数据的写入权限仅掌握在一个私有组织内部,其数据的读取权限不对外公开或者由组织来控制开放程度。私有链具有较强的灵活性,节点之间可以很好地连接,故障可以迅速通过人工干预来修复,并允许使用共识算法减少区块上链时间,从而达到节省交易时间、降低交易成本的目的。此外,私有链节点均已知,攻击风险较低,且其读取权限受到限制,可以提供更好的隐私保护,但同时存在一定的中心化系统的弊端。私有链通常是个人或公司内部搭建的链,典型的私有链平台有ydrachain、Eris Industries等。公有链、联盟链和私有链的对比如表1.1所示。

表1.1公有链、联盟链和私有链的对比

项目

公有链

联盟链

私有链

参与者

任何人自由进出

联盟成员

链的私有者

共识机制

PoW/PoS/DPoS等

PBFT等

Raft等

记账人

所有参与者

联盟成员协商确定

链的所有者自定义

激励机制

需要

可选

不需要

中心化程度

去中心化

多中心化

(多)中心化

突出特点

信用的自创建

效率高、成本优化

内部透明、安全、可追溯

承载能力(笔/秒)

3~20

100010000

1000~200000

典型场景

加密数字货币

交易支付、结算等

内部审计和管理

代表项目

比特币、以太坊

Hyperledger、R3CEV、QuorumHydrachain,Eris Industries

·6.

区块链安全技术

1.3区块链的层次结构

一般来说,区块链系统是由数据层、网络层、共识层、激励层、合约层和应用层6个部分组成的(见图1.3),各层相互配合以实现去中心化的信任机制。其中,数据层、网络层、共识层是构建区块链系统的必要元素,缺少任何一层都不能称之为真正意义上的区块链。

应用层

数字钱包

可编程货币、可编程金融、可偏程社会

合约层

运行环境

脚本语言

合约脚本

激励层

代币发行机制

代币分配机制

共识层

PoW

PoS

DPoS

PBFT

其他工作量证明

网络层

P2P网格

访问控制

广播传输机制

育签名

坏签名

同态加密

数据层

零知识证明

Merkle树

书对称加密

图13区块链的层次结构

1.数据层

数据层是区块链最底层的数据结构,旨在规范各分布式节点生成结构一致的区块,并形成特定的链式区块账本,从而保证存储数据的完整性、用户账户与交易的安全性等。在区块生成过程中,每个节点通过一致的哈希算法和Mkle树数据结构,将一段时间内接收到的交易数据和代码封装到一个带有时间戳(Timestamp)的数据区块中,并链接到当前最长的主链上。同时,该过程还涉及账户模型、数字签名、非对称加密等多种密码学算法和技术,以保证交易在去中心化的情况下能够安全地进行。

2.网络层

网络层的本质是P2 P(Peer to Peer)网络2,主要通过P2P技术实现分布式网络的机制。

网络层包括P2组网机制、数据传播机制和数据验证机制。网络层中的节点既接收信息,

也产生信息,节点间通过维护共同的区块链以保持通信。网络层的每个节点都可创造新区块,新区块以广播形式通知其他节点,其他节点收到新区块并验证该区块,当区块链网络中超过一半用户验证通过后,新区块可被添加至主链,从而达到全网共同维护同一个“账本”的效果。

3.共识层

共识层主要包含共识算法以及共识机制。针对区块数据,能让高度分散的节点在去中心化的区块链网络中高效地达成共识,是区块链的核心技术之一,也是区块链社群的治理机制。现有的共识算法已超过数十种,其中较为出名的有工作量证明、权益证明、权益授

···试读结束···

阅读剩余
THE END