主页 > imtoken冷钱包app > 区块链的8个特点,阅读《区块链实战》

区块链的8个特点,阅读《区块链实战》

imtoken冷钱包app 2023-06-10 05:33:42

本文将介绍区块链的8个特点

图 1-1 区块链的 8 个特点

分布式数据库

区块链是一个分布式数据库。大多数区块链技术使用传统数据库在底层在线存储数据。例如,维护比特币代码的Bitcoin Core团队使用LevelDB来索引和保存区块链的链状态信息,而比特币钱包使用Bekerly DB。不同的区块链可能使用不同的数据库系统来实现,同一个区块链的不同节点也可能使用不同的数据库。

数据库可以看作是一个电子文件柜——存储电子文件的地方,用户可以对文件中的数据进行添加、截取、更新、删除等操作。

分布式数据库是由多个物理上分散的数据库单元通过计算机网络连接而成的逻辑统一的数据库。每个链接的数据库单元称为站点或节点。分布式数据库由统一的数据库管理系统进行管理,称为分布式数据库管理系统。

区块链网络的每个节点都是一个复制和同步的分布式数据库。每个节点上的数据库都有完整区块链上的所有数据和历史信息。由于每个节点都有完整的检索数据,每个节点都可以直接查询区块链上的任何记录,无需依赖第三方。

图1-2 中心化账本与分布式账本对比

共识机制:保持各节点数据库一致

说到区块链,我们经常听到“共识”这个概念,各种共识算法的名称,比如工作量证明(Proof of Work,缩写为POW)、权益证明(Proof of Stake,缩写为POS)。

工作量证明 (POW) 是一种经济对策。一般要求用户进行一些耗时且恰当的复杂操作,而服务提供商可以快速查到答案。所消耗的时间、设备和能源作为保证成本,以确保服务和资源得到实际使用。

工作量证明现已成为以比特币为代表的加密货币或区块链的主流共识机制。

股权证明 (POS)(也称为股权证明)

权益证明(也称为权益证明)是 2012 年出现的一种共识机制。与工作量证明不同,权益证明需要一组验证者轮流对下一个区块提出提议和投票,每个验证者的投票权重取决于它持有多少权益证明。权益证明的显着优势是安全性、降低集中化风险和提高能源效率。

区块链是一个分布式数据库,是一个有很多节点的数据库,每个节点都可以独立验证数据,不依赖第三方。那么,一个问题就诞生了:如何保持这些节点的数据库一致?传统的分布式数据库有一个重要的假设,即分布式数据库的每个节点都是“友好的”。所以,要保持数据一致,主要是克服一些技术问题,比如网络延迟怎么办?网络暂时中断怎么办?如果不同节点上的用户想要篡改数据怎么办? ...但这些问题都不容忽视。此外,区块链的一个重要思想是每个节点都不能默认“友好”。有可能是某些节点故意“惹麻烦”。

“共识”的概念很容易理解。共识的本质是保持区块链各个节点上的数据一致。各种共识算法是用于此目的的不同技术方法。 “共识机制”的根本之母是保证区块链各个节点的数据是一致的。

达成共识是一个“慢”、“硬”的过程,而这就是代价——为了实现区块链系统分布式、去中心化、独立验证、数据难以篡改的特性。由于达成共识是一个“缓慢”和“艰难”的过程,因此可以肯定,区块链系统的性能总是会低于中心化系统。

共识算法对于公链(public blockchains)尤为重要。因为任何人都不需要获得许可才能加入这样的区块链网络,所以存在“恶意”区块链网络的可能性,这使得共识算法几乎成为保证这样一个区块链系统可靠性的唯一方法。另一方面,许可区块链,如联盟链,受到一定规则的约束,其成员从身份验证、加入网络、访问权限、参与活动等方面受到控制。在这种约束型区块链中,保证系统安全和数据一致性的不仅仅是共识机制。比如Practical Byzantine Fault Tolerance(简称PBFT),联盟链中不需要选择工作量证明机制(POW)。

P2P 通信

成为“共识”,可靠的分布式数据库,不依赖任何中介机构,解决这个问题的方法是P2P(点对点)通信。所谓点对点,即Point to Point,节点之间的通信不需要经过第三方。 P2P通信是最简单、直接和“原始”的通信方式,是任何网络通信的基础。这种通信方式可以减少网络对关键中间节点的依赖,防止部分节点恶意操纵整个区块链。由于使用了 P2P 通信,区块链更加“去中心化”。

P2P已广泛应用于对隐私要求较高的网络和文件共享领域。由于其点对点的特性,可以避免通过“中间人”。

图1-3 客户端-服务器架构与点对点架构对比

公开可验证数据

区块链的节点是可见的。对于比特币、以太坊等典型的公链来说,链上的任何数据都是完全公开的,世界上任何人都可以看到,而且区块链上的数据很难删除或修改,所以数据一旦被公开就变成了公共信息。发布在区块链上。

区块链上的数据一般采用常用的加密和签名算法来保证数据的正确性和一致性。链上数据的正确性可以立即在每个区块链节点上得到验证。

区块链如何验证数据?这涉及到两项重要的计算机密码学相关技术:一是哈希算法,二是数字签名技术。

①哈希算法,又称散列算法、散列函数、哈希算法,其特点是原始数据的任何微小变化都会改变输出数的大变化,不可能对原始数据进行逆推。数据变化。

②数字签名是一种快速验证的算法。每个用户都有一对密钥:公钥和私钥。用户用私钥生成签名,用公钥验证签名。

难以篡改的数据记录

难以篡改的数据记录通常被理解为“不可篡改”的数据记录。严格来说,这不是真的,区块链上的记录不是一成不变的,而是“难以篡改”的。如前所述,区块链是一个分布式数据库,每个节点都有独立验证的能力,通过共识保证每个节点的数据一致。也就是说,为了“篡改数据”,你必须欺骗每个节点的验证算法,其次,你必须欺骗整个区块链的共识机制,让所有节点都发生变化,这变得更加困难。

区块链是一个“不支持删除操作”的数据库。区块链的数据只能不断增加,不会被删除。因为这个特性比特币的应用特征,区块链更适合需要留下记录的非常重要的场合。

虽然区块链的数据很难被篡改,但并不代表“不可变”或者“数据永远不会丢失”。一般来说,区块链的节点越多、越分散,数据就越难以被篡改或完全破坏。去中心化程度非常高的区块链上的数据很难篡改或破坏。

智能合约:链上的“代码逻辑”

继 1995 年 Nick Szabo 发明的“智能合约”一词之后,以太坊是第一个引入更复杂代码逻辑的区块链。从名字上看,它可能会“误导”部分公众。以太坊的智能合约没有人们所谓的“智能”(人工智能等),也不是大众所理解的“合约”(合同,法律条款),而是一种结合区块链的新型计算模型。图灵完备的虚拟机和新的编程语言。

1995 年,Nick Szabo 在他的论文《智能合约:数字市场的构建块》中首次提出了“智能合约”的概念。智能合约是一组数字定义的承诺,各方可以根据协议执行。基本思想是将合同条款嵌入到硬件和软件中。以太坊实现了智能合约的概念。

图灵机是为研究可计算问题而构想的抽象计算模型——对传统纸币计算过程的抽象和虚拟机器人进行的数学运算是现代计算机的原型。

虚拟机是一种特殊的架构软件,可以在计算机平台和最终用户之间创建一个环境,最终用户基于虚拟机创建的环境来操作其他软件。以太坊虚拟机(Ethereum Virtual Machine,简称 EVM)。

自主账户系统

没有“人”可以将区块链上的“账户”“分配”给你。这不同于传统的互联网服务比特币的应用特征,或者更传统的银行、证券公司等,当用户需要向对方提供服务时,首先要做的就是在自己的平台上申请开户。为什么在区块链上有一种有价值的数字货币,却不需要开户?所谓账本,就是一个机构在这个会计系统中分配给用户的一个指标,这个指标是属于用户的,受机构的账本记录监管。也就是说,用户必须先在银行或证券公司等平台“注册”一个账户,才能在这些平台上享受服务。在自治账户体系中,用户无需在任何平台“注册”账户。

所谓自治账户,是指账户的生成不是由他人分发或生成,而是由用户生成并自行声明。用户只需要遵循一种算法即可获得自己独特且安全的帐户。自治账户系统相当于——去中心化身份,人作为个体,身份是自治的,不需要向任何人证明自己的身份。

区块链并不是真正的匿名

区块链中常用的自治账户地址通常是长字符串或数字。除了少数私有区块链技术外,区块链上的大部分数据都是完全公开的,人们可以清楚地知道每一笔交易的相关账户。如果是转账,转账金额和交易账户都清楚。这个账号的一举一动都可以被全世界看到,一旦公开就无法抹去。

区块链之所以能保护用户隐私,是因为区块链账户无法对应用户的真实身份。如上一段所述,自治账户系统。自主账户不需要向任何个人或机构申请,因此当用户使用自主账户时,没有任何信息可以将账户与现实世界的个人信息联系起来。从这个角度来看,区块链的匿名性会优于互联网应用。这种“匿名”和“隐私”曾经为地下交易、暗网和洗钱提供了便利。