区块链基础知识1-3
笔记总结于区块链基础知识25讲–作者丹尼尔·德雷舍
第一讲 理解分层的概念
我们使用两种方法来对软件系统进行分割。
1.应用层和实现层
主观上对系统按照用户需求和内在技术原理进行划分,其实是在区分应用层和实现层。应用层是从用户需求出发的。实现层中的一切都是使得这些需求落地实现的内容,实现层中的所有内容本质上都是技术性的,并且都会被当作达到目标的方法。
2.功能性和非功能性
考虑一个系统能够做什么和这个系统做的怎么样是由区别的,这就是对系统功能性和非功能性划分的基础。
对于一个软件系统,我们可以再识别其技术性特征和非技术性特征的同时识别应用层与实现层。
完备性
完备性在任何软件系统中都是重要的非功能性特征
1.数据完备性:软件系统中的数据要完整,正确切无冲突。
2.行为完备性:软件系统要可以顺利运行,并且保证不存在逻辑错误。
3.安全性:软件系统只对认证用户授权有限的数据访问和使用功能。
第二讲 两种系统架构
两种软件系统,现代化系统主要采用两种架构
1.中心化架构
在一个中心化系统中,一个中心化系统连接了其他所有的模块。
2.去中心化架构
去中心化系统中没有任何一个节点可进行节点间协调和控制。
左半部分是一个去中心的系统,其中的各个节点彼此相连,没有一个中心节点同时连接其余的节点。右半部分的中心化系统中,除了中心节点之外都不和其余节点直接相连,他们只与中心节点直接相连。
去中心系统具有如下优势
- 更强的计算能力:计算能力表现为所有互联计算机的计算能力之和。
- 更低的成本:一台超级计算机的搭建维护和运营成本远远高于相同计算能力的去中心化系统。
- 更高的可靠性:即使一个节点计算机宕机,整个系统依旧可以正常工作,相比之下一台超级计算机的可靠性就相形见绌了。
- 自增长的能力:通过向系统中加入新的计算机,去中心化系统的计算能力能够得到进一步的提升。
去中心系统具有如下劣势
- 节点间的协调:没有中心节点协调,系统协作需要其中的成员节点自己来完成。
- 节点间的冗余通信:节点间的协作需要通过通信交流来完成,因此系统中的成员节点需要和其它的节点频繁的进行通信。
- 对网络的过度依赖:任何形式的通信都需要媒介,媒介为节点间的整个通信过程负责,而系统的通信过程正是网络,因此对网络的选择和依赖将影响整个去中心化系统。
- 系统编程的较高复杂度:我们通过编写程序或软件来解决各类问题,前面的三个劣势,任何一个都需要解决,所以带来了较高的编程复杂度。
- 安全问题:任何计算任务都需要直接在网络上进行通信协调与数据传递,通过任何网络传递数据与信息都存在可靠性的问题。
去中心化的点对点网络系统
点对点网络是一种特殊的去中心化系统,该系统由很多台计算机组成,每台计算机在没有任何中心节点的情况下向系统中的其他计算机直接提供相关的资源。任意一个节点即是系统资源的提供者也是使用者。
具有中心化与去中心化优势的混合系统
工程师设计出两种原型来结合中心化与去中心化系统的架构,在现实世界中的区块链应用会用到这两种混合架构设计方法。
1.拥有中心节点的去中心化系统
2.去中心化系统作为中心节点的中心化系统
左边展示的是一个拥有中心节点的去中心化系统的架构图,由于所有的小圆圈均与中间的大圆圈相连,因此表面上看起来是一个去中心化的系统,实际上是一个中心化系统。右边展示的是一个完全相反的系统架构,中间的大圆圈包含了一个去中心化的子系统,外围的所有圆圈可能都无法感知到中间的圆圈实际上是一个去中心化的系统。
这两种架构系统有一个共同点:难以定义它们的本质是去中心化的还是中心化的。
如何识别去中心化系统?
如果你对与一个系统属于中心化还是去中心化心存疑虑,那么:在系统中尝试寻找是否有一个组成部分可以直接关闭这个系统,如果你找到了,就说明这个系统是中心化的,要是没找到就是去中心化的。
区块链的作用
两种系统在确保完备性上拥有完全不同的方式,而这就是区块链引起人们注意的关键点:区块链是去中心化系统中用来实现并确保系统完备性的工具。
第三讲 去中心化的潜力
点对点系统为什么可能改变世界?
通过使用Napster,人们不再依赖唱片公司获取最新的音乐资源,并可以与世界各地的人分享自己的音乐文件,无需购买CD。Napster的点对点的架构方式,实际上创建了一个音乐文件的分享集市。它使消费者能够获得比以往任何时候更丰富的音乐产品,也使得唱片公司变得不被需要,并给他们造成了巨大的经济损失。
点对点系统的潜力
Napster的出现告诉我们,点对点系统有可能根据一个简单的想法重塑整个行业,通过点对点的直接互动来取代中间人。在音乐产业中,作为艺术家和消费家之间中间人的传统唱片公司及其营销和分销渠道已被点对点文件共享系统代替。而唱片公司如此容易受到点对点系统替代的主要原因使音乐产品可数字化的本质,以及互联网上复制和传输数据的低成本特征。点对点系统的应用并不局限于音乐产业,每一个数字资源的生产者和消费者之间扮演中间人角色的传统产业里的公司都容易被点对点系统所取代。
点对点系统相对与去中心化系统的优势在于其直接在交易双方进行交互,而不需要中间人,因此处理时间更短,成本更低。点对点系统的倡导者认为,我们生活的各个方面几乎都将受到数字化技术和点对点系统的影响,如支付,储蓄,贷款,保险,出生证明,驾驶证,护照,身份证,教育证书,专利和劳动合同等。
术语介绍及其与区块链之间的联系
1.点对点系统的定义:
点对点系统是由若干节点(个人计算机)组成的分布式软件系统,系统中单一节点的计算资源可直接被其他节点所调用。当加入点对点系统时,用户按照其权限和角色将其计算机转换为系统的节点。尽管贡献的资源有所不同,但系统中所有节点具有相同的功能和责任。
2.点对点系统的架构:
点对点系统是分布式计算机系统。他们由共享计算资源的各个节点组成。中心化系统通过维护中心节点以促进系统成员之间的交互,同时维护描述不同节点提供的服务目录,或执行节点的查找和标识等任务。完全分布式的点对点系统没有中央节点进行控制和协调,所有的节点执行相同的任务,即作为资源和服务的提供者也同样是消费者。
3.点对点系统和区块链之间的关系:
完全分布式的点对点系统可使用区块链技术来实现和维护系统的完备性。
区块链的潜力
完全去中心化的点对点系统具有极大的商业潜力,因为它们可以取代中心化系统下靠信息中介建立起来的商业模式。区块链令人着迷的地方在于,在完全去中心化的点对点系统中。它是能保持系统完备性的工具,而且因为“脱媒现象”的存在,具有了改变各个行业的潜力。
后续笔记会逐步更新,内容都是在本人学习并理解的前提下通过自己的语言总结给整理出来的,内容简洁易懂,挑重点,供大家学习区块链的基础入门知识的使用。