区块链简介

一、区块链是什么

区块链不是一门具体技术,而是一个系统框架的设计,通过一系列技术组合从而实现的一个去中心化存储数据库。区块链是加密货币底层的技术,无需中心服务器,可实现各类存储数据公开、透明、可追溯。区块链技术最早是通过比特币底层技术抽象出来的,原本是比特币等加密货币存储数据的一种独特方式,是一种自引用的数据结构,用来存储大量交易信息,每条记录从后向前有序链接起来,具备公开透明、无法篡改、方便追溯的特点。
当大家单独说到区块链的时候,就是指的区块链技术,是实现了数据公开、透明、可追溯的产品的架构设计方法,算作广义的区块链。而当在具体产品中谈到区块链的时候,可以指类似比特币的数据存储方式,或许是数据库设计,或许是文件形式的设计,这算作狭义的区块链。广义的区块链技术,必须包含点对点网络设计、加密技术应用、分布式算法的实现、数据存储技术的使用等4个方面。

什么是去中心化存储

去中心化是相对于中心化而言的,我们以淘宝买东西为例:
区块链简介_第1张图片
网购夹克的整个流程依托于支付宝展开,因此,这个买卖过程是中心化的。无论是PG TWO还是卖家君,在这点上只能完全信任支付宝和它背后的马云。往大了说,中心化系统由资金雄厚和技术实力强大的机构、企业做信任背书,银行正是因为国家信任进行背书。
中心化体系具备管理高效的优势,但它的不足也比较明显。仍以支付宝为例,全部交易记录和账本都存储在支付宝服务器上,假设某天所有相关的服务器不幸被坏蛋捣毁,那么PG TWO付的款(或卖家君还没有到手的夹克钱),还有其他买家、卖家的资金,甚至你我存在余额宝的钱,都会消失在这个互联网世界里,连灰都不剩。
而去中心化的处理方式就要显得简单很多,你只需要和卖家交换钱和手机,然后双方都声称完成了这笔交易,就OK了。
可以看出在某些特定情况下,去中心化的处理方式会更便捷,同时也无须担心自己的与交易无关的信息泄漏。
去中心化是区块链技术的颠覆性特点,它无需中心化代理,实现了一种点对点的直接交互,使得高效率、大规模、无中心化代理的信息交互方式成为了现实。

通过A借钱给B为例来说明去中心化:
区块链简介_第2张图片

如果A借了B 100块钱,这个时候,A在人群中大喊“我是A,我借给了B 100块钱!”,B也在人群中大喊“我是B,A借给了我100块钱!”,此时路人甲乙丙丁都听到了这些消息,因此所有人都在心中默默记下了“A借给了B100块钱”。你看,这个时候一个去中心化的系统就建立起来了,这个系统中不需要银行,也不需要借贷协议和收据,严格来说,甚至不需要人与人长久的信任关系(比如B突然又改口说“我不欠A钱!”,这个时候人民群众就会站出来说“不对,我的小本本上记录了你某天借了A100块钱!”)。这就是一个去中心化的模型,每个人都是一个账本。

二、区块链的发展历史

在区块链出现之前,加密技术和p2p网络等区块链底层技术经过了较长时间的发展。

区块链简介_第3张图片

比特币项目运行之后,区块链技术也得到了迅速的发展。
(1)区块链1.0
以比特币为代表的加密货币。
(2)区块链2.0
以以太坊为代表的加密货币,通过智能合约,实现可编程的区块链。
(3)区块链3.0
目前来说区块链3.0有比较大的争议,可能会是DAG技术,也有说是超越货币和金融范围的其他应用。目前比较成熟的项目有IOTA。

三、区块链的特点

1. 去中心化

区块链技术通过p2p网络实现了分布式数据存储,网络中所有的节点都有相同的区块数据,每个加入网络中的账户都能成为一个节点,都有记账权利,理论上都处于平等地位。

2. 不可篡改性

由于区块在存储过程中是通过链式结构存储的,而且每个区块都是通过存储前一个区块节点的hash值来实现链式存储。而区块链的hash是和交易有关,根据交易和其他数据通过hash算法计算出来的,当交易数据发生篡改时,它的hash值也会跟着发生改变,因此链式结构也会发生破坏。所以区块链具有不可篡改的特性。

3.不可伪造性

由于区块链技术里面有一些结构,如:UTXO结构,“UTXO”意思是未花费的交易输出。在比特币的世界里,每一笔转账,都能追溯到上一笔交易。每一笔付款都能追溯到上一笔收款,一直往上直到追溯到矿工挖出这块区块。

四、区块链的结构

(1) 层次结构

比特币系统将区块链分成6层结构:数据层、网络层、共识层、合约层、激励层、应用层。其架构图如下:
区块链简介_第4张图片

也可分为存储层、基础区块链层、缓存层、API层、链上代码层、应用层。其架构图如下:
区块链简介_第5张图片

(2) 数据结构

区块链中每一个区块的结构如下图所示,由区块头和区块体构成。
区块头中包含以下信息:

  • 版本号:用于跟踪软件/协议的更新
  • 父区块的哈希:引用区块链中父区块的哈希值
  • 时间戳:该区块产生的时间
  • 目标哈希:当前区块的哈希值
  • 随机数(Nonce):用于工作量证明算法的技术器
  • Merkle根:该区块中交易的merkle树根的哈希值
  • 区块高度:记录该区块在区块链中位置

区块体中保存的是自上一个区块以来的交易数据。
区块链简介_第6张图片

然后每个区块通过连接上一个区块,最终形成一条长链,如下图所示:
区块链简介_第7张图片

你可能感兴趣的:(区块链基础,区块链,区块链结构,区块链介绍)