区块链技术学习笔记-概述
由于最近几天在看区块链,今天时间实在有限,更新一篇区块链内容,后续继续更新虚拟机相关的知识。
首先明确一点,什么是区块链?
1. 直白的说,就是在互联网上有一块特殊的区域,每个人都能访问这块区域;
2. 然后在这个区域上又分成了很多区块,在区块上存储一些信息记录。
3. 一旦新发现了一个区块,就将这个区块添加到上一个发现的区块的末尾,链接在一起。
4. 只要是访问这块区域的计算机,当有新的区块被发现的时候,会得到通知,这些计算机会去区块的地址访问,并将这个区块上的信息同步的到本机上。
笔者理解的区块链的大致原理就是这样的,其中有两个问题(个人观点):
1. 互联网上这块特殊的区域是怎么产生的?
这就需要具体的区块链应用了,比如某个公司来提供这么一段特殊的区域,并制定产生或发现算法。
2. 计算机为什么要访问这块区域?
当某台计算机率先发现这块区域的时候,会得到这块区域对应的奖励(可以是金钱或者什么)。
知道了区块链大概是什么,下面我们再从技术层面做一个了解。
区块链是一种分布式数据库或者说是是一个分布式的公共账本,将各个区块连成一个链条,将数据信息所有加入到区块链网络的节点当中,且存储的信息的一致的,如果有一两台计算机坏掉了,信息也不会丢失,你还可以在其他计算机上查看到。
概念知道了,让我们再看看区块链技术在实际应用中由什么作用呢?
那就是消除中介信用问题!当其中两个节点发生交易时,这笔加密的交易会广播到其他所有节点(记账),目的是防止交易双方篡改交易信息。
由此引申出来的区块链的几个特点:
1. 去中心化。个体之间实现信息交换,也就是说没有中间方了。
2. 开放性。交易会广播到其他所有节点,区块链的系统数据是公开透明的,每个人都可以参与进来。但是这里就存在一个问题,那就是信息的保密是一个挑战,即使加密也存在被解密的风险。
3. 信息不可篡改。由于信息是分享到所有参与的计算机上的,如果想篡改,就需要改变所有计算机上的记录信息,这基本上是不可能的。
下面再简单介绍一下区块的概念。
如下图所示,每个区块包含两个部分: 区块头(Head),记录当前区块的元信息;区块体(Body),记录实际数据。
另外区块链技术现在还有一些问题需要解决。
其中比较主要的一个就是效率问题。区块链的交易是存在延迟性的,以比特币为例,每次确实需要大约10分钟,这是很大的一个问题。
喜欢文章或想一起学习的朋友可以关注我,给我点赞,我将会持续更新,有什么疑问或文中有不当之处请给我留言,真诚地希望能与大家一起交流探讨,学习进步。