【从零开始学习计算机科学】信息安全(十三)区块链
【从零开始学习计算机科学】信息安全(十三)区块链
- 区块链
-
- 区块链概述
- 区块链的主要特性
-
- 开放,共识
- 交易透明,双方匿名
- 不可篡改,可追溯
- 区块链的主要类别
-
- 公有链
- 私有链
- 联盟链
- 区块链核心技术
-
- Hash指针
- Merkle(梅根)树
- SPV交易验证过程
- 区块链网络
-
- 分叉解决机制
- 51%攻击问题
- 基于比特币的区块链的优势与不足
- 常用的区块链
区块链
区块链概述
能否在互联网环境(开放环境)下,创造一种技术,使得在无法保证人们相互信任的前提下,还能从事价值交换的活动?其核心是开放环境下安全问题(信任问题、交易问题、存储问题、计算问题)。
什么是区块链(Blockchain)?去中心化的、分布式的、区块化存储的链式共享数据库。区块链起源于Bitcoin(比特币),区块链是比特币的支撑技术,比特币是区块链的第一个应用。2008年11月1日,Satoshi Nakamoto(中文译名:中本聪)的人发表了一篇名为《Bitcoin: A Peer-to-Peer Electronic Cash System》的研究报告,并于2009年1月3日首次挖出比特币。从此比特币就诞生了。2014年后,比特币背后的技术区块链技术得到广泛重视。
比特币/区块链解决的核心问题是去中心化。比特币诞生之前,人们已经开始广泛探讨在互联网环境下如何保护个人信息与隐私(密码朋克cypherpunk,硅谷)等问题。在1990年,密码朋克成员大卫·乔姆发明了密码学匿名现金支付系统,即Ecash,在1997年,密码朋克成员亚当·贝克发明了哈希现金,用到了工作量证明系统(proof of work)。在2004年,密码朋克成员哈尔芬妮提出了电子货币和加密现金。上述技术和系统都是中心化的,但是都失败了。
中心就是中介,基于中心就增加了各种成本,如交易成本;多中心环境下,信息分散在各中心,打通成本个非常大,不易共享;运行效率受制于中心化机构的效率,普遍低下;无法有效抵御内部人员的篡改、黑客攻击、自然灾害等;无法有效防止信息与隐私泄露;对虚拟资产的保护也存在很大问题。
去中心化(分布式)的特点是每个节点都具有高度自治的特征;节点之间彼此可以自由连接;任何一个节点都可能成为阶段性的中心,但不具备强制性的中心控制功能;节点与节点之间的影响,会通过网络而形成非线性因果关系,这种开放式、扁平化、平等性的系统现象或结构,我们称之为去中心化。
区块链的主要特性
开放,共识
任何人都可以参与到区块链网络,每一台设备都能作为一个节点,每个节点都允许获得一份完整的数据库拷贝。节点间基于一套共识机制,通过竞争计算共同维护整个区块链。任一节点失效,其余节点仍能正常工作。
交易透明,双方匿名
区块链的运行规则是公开透明的,所有的数据信息也是公开的,因此每一笔交易都对所有节点可见。节点与节点之间是去信任的,因此节点之间无需公开身份,每个参与的节点都是匿名的。
不可篡改,可追溯
单个甚至多个节点对数据库的修改无法影响其他节点的数据库