区块链 - 基本概念及理论

目录

一、区块链概念 - 分布式记账本(Distributed Ledger)技术

二、区块链的基本原理

三、NEO概念总结

四、NEO智能经济

4-1 数字资产

4-1-1 NEO中资产(Asset)

4-1-2 UTXO全局资产

4-2 数字身份

4-3 智能合约

五、小蚁(NEO)和以太坊的主要区别是什么?


一、区块链概念 - 分布式记账本(Distributed Ledger)技术

区块链技术中文社区 - 参考学习

区块链技术指南

比特币首次真正从实践意义上实现了安全可靠的非中心化数字货币机制,这也是它受到无数金融科技从业者热捧的根本原因。从应用角度讲,以比特币为代表的加密货币只是基于区块链技术的一种金融应用。区块链技术还能带来更通用的计算能力和更广泛的商业价值。

商业行为的典型过程为:交易多方通过协商确定商业合约,通过执行合约完成交易。区块链擅长的正是如何在多方之间达成合约,并确保合约的顺利执行。

根据类别和应用场景不同,区块链所体现的特点和价值也不同。

从技术角度,一般认为,区块链具有如下特点:

  • 分布式容错性:分布式账本网络极其鲁棒,能够容忍部分节点的异常状态;

  • 不可篡改性:共识提交后的数据会一直存在,不可被销毁或修改;

  • 隐私保护性:密码学保证了数据隐私,即便数据泄露,也无法解析。

随之带来的业务特性将可能包括:

  • 可信任性:区块链技术可以提供天然可信的分布式账本平台,不需要额外第三方中介机构参与;

  • 降低成本:跟传统技术相比,区块链技术可能通过自动化合约执行带来更快的交易,同时降低维护成本;

  • 增强安全:区块链技术将有利于安全、可靠的审计管理和账目清算,减少犯罪风险。

区块链并非凭空诞生的新技术,更是多种技术演化到一定程度后的产物,因此,其商业应用场景也跟促生其出现的环境息息相关。对于基于数字方式的交易行为,区块链技术能潜在地降低交易成本、加快交易速度,同时能提高安全性。笔者认为,能否最终提高生产力,将是一项技术能否被实践接受的关键

讨论区块链可以从狭义和广义两个层面来看待。

狭义上,区块链是一种以区块为基本单位的链式数据结构,区块中利用数字摘要对之前的交易历史进行校验,适合分布式记账场景下防篡改和可扩展性的需求。

广义上,区块链还指代基于区块链结构实现的分布式记账技术,包括分布式共识、隐私与安全保护、点对点通信技术、网络协议、智能合约等。

二、区块链的基本原理

区块链的基本原理理解起来并不复杂。首先来看三个基本概念:

  • 交易(Transaction):一次对账本的操作,导致账本状态的一次改变,如添加一条转账记录;

  • 区块(Block):记录一段时间内发生的所有交易和状态结果等,是对当前账本状态的一次共识;

  • 链(Chain):由区块按照发生顺序串联而成,是整个账本状态变化的日志记录。

如果把区块链系统作为一个状态机,则每次交易意味着一次状态改变;生成的区块,就是参与者对其中交易导致状态改变结果的共识。

区块链的目标是实现一个分布的数据记录账本,这个账本只允许添加、不允许删除。账本底层的基本结构是一个线性的链表。链表由一个个“区块”串联组成(如下图所示),后继区块中记录前导区块的哈希(Hash)值。某个区块(以及块里的交易)是否合法,可通过计算哈希值的方式进行快速检验。网络中节点可以提议添加一个新的区块,但必须经过共识机制来对区块达成确认。

图 1.5.1.1 - 区块链结构示例

三、NEO概念总结

官方文档 - 偏实际操作

官方阅读说明 - 偏理论

NEO 是一个社区化开源区块链项目,利用区块链技术和数字身份进行资产数字化,利用智能合约对数字资产进行自动化管理,实现“智能经济”的一种分布式网络。

NEO是一个非盈利的社区化的区块链项目,是利用区块链技术和数字身份进行资产数字化,利用智能合约对数字资产进行自动化管理,实现“智能经济”的一种分布式网络。

Neo区块链网络中,一切的事物操作都是通过交易完成。资产可以在不同账户之间通过交易(ContractTransaction)进行转账;用户也可以通过交易(ClaimTransaction)来提取应得的分红GAS;合约也是通过交易(InvocationTransaction)才实现其调用。

在比特币中,Script脚本承担了交易中签名验证的任务。在Neo系统中,由合约承担了此项任务。合约可以简单理解成比特币的 Script 脚本的升级。比特币的 Script 脚本不是图灵完备的,虽然能够完成交易的签名验证,但是能做到的功能有限。因此比特币只有UTXO模型,关注的就是交易本身。编写 Neo 智能合约的语言,比如 C# 和 Python 等,都是图灵完备的,可以满足现实世界中的丰富多彩的需要。而现实世界广泛采用的是账户余额(account balance)模型。以太坊就采用了账户余额模型。在 Neo系统中,UTXO 模型和账户余额模型同时存在:UTXO 模型主要用于NEO和GAS等原生代币,账户余额模型主要用于用户发行的NEP-5资产(如股权、代币等)。

在Neo系统中,资产都是以代币的形式存在。资产有很多种,可以是NEO、GAS和NEP-5等全局资产,也可以是股权等权益类资产。而存在钱包中的是并不是这些资产,而是存放这些资产的地址的私钥。在NeoTracker(https://neotracker.io/)中打开一个钱包再选择其中的一个地址,就会列出这个地址上的包括NEP-5资产在内的所有资产和相关交易信息。地址也被称为“账户”。一个地址可以是由一个私钥通过一系列加密算法和代码转换算得,直接在交易结账中使用。也可以是智能合约的地址,在调用智能合约时使用。计算地址的方法请见钱包中的地址部分。

四、NEO智能经济

4-1 数字资产

数字资产是以电子数据的形式存在的可编程控制的资产。用区块链技术实现资产数字化有去中心、去中介、免信任、可追溯、高度透明等特点。NEO 在底层支持多数字资产,用户可在 NEO 上自行注册登记资产,自由交易和流转,并且通过数字身份解决与实体资产的映射关系。用户通过合规的数字身份所注册登记的资产受到法律的保护。

4-1-1 NEO中资产(Asset)

  • UTXO全局资产 - NEO、GAS (存储在资产账户信息中)
  • 智能合约发布的非全局资产 - NEP-5 (存储在合约的存储空间中)

4-1-2 UTXO全局资产

NEO 中内置两种原生代币,NEO(缩写符号 NEO)和 NeoGas(缩写符号 GAS)。

  • NEO 是管理代币 - 在创世块中注册了NEO资产,并存放在备用共识节点的多方签名合约上
    • 总量 1 亿份,用于实现对 NEO 网络的管理权
    • 管理权包括投票进行记账人选举,NEO 网络参数更改等
    • NEO 的最小单位为 1,不可再分割。
  • GAS 是燃料代币 - 通过每个区块能提取的奖励发放
    • 最大总量上限为 1 亿,用于实现对 NEO 网络使用时的资源控制
    • NEO 网络对代币转账和智能合约的运行和存储进行收费,从而实现对记账人的经济激励和防止资源滥用
    • GAS 的最小单位为 0.00000001。

4-2 数字身份

数字身份是指以电子数据形式存在的个人、组织、事物的身份信息。目前较为成熟的数字身份体系是基于 PKI的 X.509 标准。在 NEO 中,我们将实现一套兼容 X.509 的数字身份标准。这套数字身份标准,除了兼容 X.509 的层级式的证书签发模式,还将支持 Web Of Trust 式的点对点的证书签发模式。

4-3 智能合约

NeoContract 智能合约体系的最大特点是无缝对接现有的开发者生态。开发者无需学习新的编程语言,就能用 C#、Java 等主流编程语言在熟悉的 IDE 环境(Visual Studio、Eclipse 等)中进行智能合约的开发、调试、编译。NEO 的通用轻量级虚拟机 NeoVM 具有高确定性、高并发性、高扩展性等优点。NeoContract 智能合约体系让全球百万级的开发者能够快速进行智能合约的开发。NeoContract 将有独立的白皮书描述实现细节。

五、小蚁(NEO)和以太坊的主要区别是什么?

1. 以太坊的智能合约只用以太坊自己的编程语言Solidity,而小蚁(NEO)能兼容所有的编码语言。NEO的智能合约比起以太坊,更能体现高确定性、高扩展性、高兼容性等特点,在小蚁上开发,智能合约的开发者不需要学习Solidity(以太坊平台开发要用的语言),就能使用熟悉的Java、C/C#、Go等编程语言编写智能合约,快速上手并融入区块链开发的世界。

2. NEO需要智能合约技术,但不如以太坊完善。以太坊以智能合约来创建数字资产的发行标准,但欠缺的是数字身份认证机制。 此外,在共识算法上也有不同。小蚁(NEO)采用独创的dBFT共识算法,而以太坊则采用“PoS”算法。

3. NEO项目的主要目标就是为“智能经济” 提供分布式网络的基础架构。那么 “智能经济” 又是什么呢?智能经济= 数字资产+数字身份认证+智能合约,这三者的结合也构建出了NEO的生态环境。

猜你喜欢

转载自blog.csdn.net/qq_33961117/article/details/88537443