前言
区块链技术被誉为当今最具革命性和颠覆性的创新之一。区块链技术最初是在世界上最受欢迎的数字货币比特币中发现的,但现在已经改变了一些组织的看法,并使他们能够使用它来存储和转移价值。本书将首先向您介绍常见的网络威胁形势和常见的攻击,如恶意软件、网络钓鱼、内部威胁和 DDoS。接下来的章节将帮助你理解区块链技术、以太坊和 Hyperledger 架构的工作原理,以及它们如何融入网络安全生态系统。这些章节也将帮助你在以太坊区块链和 Hyperledger Fabric 框架上编写你的第一个分布式应用程序。稍后,您将了解安全三元组及其与区块链的适配。最后一章将带你了解网络安全的核心概念,如 DDoS 保护、基于 PKI 的身份、2FA 和 DNS 安全。您将了解区块链如何在从根本上转变网络安全解决方案方面发挥至关重要的作用。
在本书的结尾,你将了解区块链在安全案例中的真实部署示例,并了解区块链的短期挑战和网络安全的未来。
这本书是给谁的
这本书的目标读者是网络安全专业人士,或任何处理网络安全问题的利益相关者,他们希望了解使用区块链保护基础设施的下一个级别。对区块链有基本的了解会是一个额外的优势。
这本书涵盖的内容
第 1 章、网络威胁格局和安全挑战,涵盖了新兴的全球网络威胁格局,是什么让威胁变得更强大、更复杂,以及防御方的观点,包括政府、国际安全联盟(ISA)、行业联盟、企业、高管、首席安全官(CSO)和安全分析师。
第 2 章,安全必须进化,描述了安全思维模式中一些严重而紧迫的变化,如零信任方法、接受漏洞以及安全基础的变化。
第三章,介绍区块链和以太坊,讲述了区块链从诞生到在各个行业和垂直领域的不断适应。我们还将了解组织如何使用区块链解决他们的问题。
第四章,Hyperledger——商业区块链,向您介绍 Hyperledger 项目,及其开源合作,并开发了跨行业的区块链技术。它还提供了 dApp 与 Hyperledger 对等机的演示和部署。
第 5 章,CIA 安全三要素上的区块链解释了任何安全措施都旨在保护 CIA 三要素的一个或多个方面,因此,在底层安全基础上采用区块链是一种明智的方式,如企业密钥和证书管理、加密和访问控制。
第 6 章,用区块链部署基于 PKI 的身份,涵盖了区块链在安全案例中的真实部署,包括当前状态审查、协议实现、架构、结构和 API 客户端集成。
第 7 章,区块链双因素认证,包含对双因素认证的组件和工作方式的深入了解。最后,我们将了解如何使用以太坊区块链实现分散式双因素身份认证系统。
第 8 章,基于区块链的 DNS 安全平台,讨论了现有的 DNS 基础设施、挑战,以及区块链如何帮助构建一个更强大、更安全的分散式 DNS 基础设施。
第 9 章,部署基于区块链的 DDoS 保护,涵盖 DDoS 攻击的影响、DDoS 攻击的剖析、现有 DDoS 保护解决方案的挑战以及以太坊区块链如何转变您的 DDoS 保护平台。
第 10 章、关于区块链和网络安全的事实,涵盖了区块链系统的一些潜在挑战,如节点盗窃、分布式节点的可用性、恶意代码注入分布式账本、声誉风险、目标侦察以及绕过离线和在线程序。
从这本书中获得最大收益
硬件要求如下:
- Ubuntu 16.04
软件要求如下:
- Linux 操作系统
- 节点. js
- 松露
- Ganache-CLI
下载彩色图像
我们还提供了一个 PDF 文件,其中有本书中使用的截图/图表的彩色图像。可以从https://www . packtpub . com/sites/default/files/downloads/handsoncybersecuritywith block chain _ color images . pdf下载。
使用的惯例
本书通篇使用了许多文本约定。
CodeInText
:表示文本中的码字、数据库表名、文件夹名、文件名、文件扩展名、路径名、伪 URL、用户输入和 Twitter 句柄。下面是一个例子:“这个文件夹包括我们的智能合同,TwoFactorAuth.sol
”
代码块设置如下:
forward-zones=bit.=127.0.0.1:5333,dns.=127.0.0.1:5333,eth.=127.0.0.1:5333,p2p.=127.0.0.1:5333
export-etc-hosts=off
allow-from=0.0.0.0/0
local-address=0.0.0.0
local-port=53
当我们希望将您的注意力吸引到代码块的特定部分时,相关的行或项目以粗体显示:
$ node registerAdmin.js
//File Structure Tuna-app/tuna-chaincode.go
任何命令行输入或输出都按如下方式编写:
sudo apt-get update
sudo apt-get install git npm
sudo apt-get install nodejs-legacy
Bold** :表示一个新术语、一个重要单词或您在屏幕上看到的单词。例如,菜单或对话框中的单词出现在文本中,如下所示。下面是一个例子:“我们需要将环境字段设置为 Web3 Provider 选项。”
警告或重要提示如下所示。
提示和技巧是这样出现的。
取得联系
我们随时欢迎读者的反馈。
总体反馈:发送电子邮件feedback@packtpub.com
,在邮件主题中提及书名。如果您对本书的任何方面有疑问,请发邮件至questions@packtpub.com
联系我们。
勘误表:虽然我们已经尽力确保内容的准确性,但错误还是会发生。如果你在这本书里发现了一个错误,请告诉我们,我们将不胜感激。请访问 www.packtpub.com/submit-errata,选择您的图书,点击勘误表提交表格链接,并输入详细信息。
盗版:如果您在互联网上遇到我们作品的任何形式的非法拷贝,如果您能提供我们的地址或网站名称,我们将不胜感激。请通过copyright@packtpub.com
联系我们,并提供材料链接。
如果你有兴趣成为一名作家:如果有你擅长的主题,并且你有兴趣写书或投稿,请访问 authors.packtpub.com。
复习
请留下评论。一旦你阅读并使用了这本书,为什么不在你购买它的网站上留下评论呢?潜在的读者可以看到并使用您不带偏见的意见来做出购买决定,我们 Packt 可以了解您对我们产品的看法,我们的作者可以看到您对他们的书的反馈。谢谢大家!
更多关于 Packt 的信息,请访问packtpub.com。
放弃
本书中的信息仅用于符合道德的目的。如果没有设备所有者的书面许可,不要使用书中的任何信息。如果你从事非法行为,你很可能会被逮捕并受到法律最大限度的起诉。如果您误用了书中包含的任何信息,Packt Publishing 不承担任何责任。此处的信息必须仅在测试环境时使用,并获得相关负责人的适当书面授权。