区块链分布式账本,区块链反思第一问:为什么要采用分布式账本

个人观点:一.安全。即使其中一个账本丢失或被盗区块链分布式账本,篡改,还有其他多个账本证明账目有效。如银行,中心式记账,如果银行系统出现故障导致数据丢失,那我们存储在银行里的财产就无法证明。

二.分布式记账在应用场景上,点对点传输。如一个产业链,生产厂家,经销商,代理商,在到消费者手中,中间经过各个环节,层层加价,售价与成本不成正比。如果省去中间环节,在售价相同的情况下,是不是生产厂家利益得到提升。

分布式记账去的不是中心化,去的是第三方中介,实现利益最大化。

智能合约这一概念是由Nick Szabo于1994年提出,该合约被定义为“一套以数字形式定义的承诺,包括合约参与方可以在上面执行这些承诺的协议”。不同于传统合约,该合约基于区块链技术而发展、以数字为表现形式并主要通过计算机网络技术而自动执行。人们对其最为常见的认识就是将其视为是一段自动运行的代码,一段由计算机自动执行的程序,当预设的触发条件成就时合约即自动执行,相较于一般的电子合约来说更进一步。

区块链分布式账本,区块链反思第一问:为什么要采用分布式账本

但是,只有结合了区块链技术、分布式记账技术的代码合约才可以被视为真正的智能合约,而该合约的核心则是区块链技术。区块链技术具体表现为一种“开放的分布式数据库”,该技术使得该合约可以在一种完全公开、透明和不可被篡改的环境中运行。在这种环境的理想运作下,合约双方不再需要特定的企业来担任中间商或担保机构,所有交易都是公开透明的,即实现了“去中心化”、“去信任化”的目标。

区块链的提出使智能合约的执行获得了可信的环境,比特币交易中的输出条件是用脚本描述的,这也是智能合约的雏形。以太坊首先实现了区块链和智能合约的完美契合。

在智能合约的概念模式如图,一般而言,智能合约封装预定义的若干状态、转换规则、触发条件以及应对操作等,经各方签署后以程序代码的形式附着在区块链数据上,经对等计算机网络传播和节点验证后记入各个节点的分布式账本中,区块链可以实时监控整个智能合约的状态,在核查外部数据源确认满足特定的触发条件后激活并执行合约。

以太坊是目前开发智能合约最常用的平台,特定的基于堆栈的二进制字节码(即以太坊虚拟机字节码)组成了以太坊的智能合约。这个合约可以利用Solidity、Serpent、LLL等高级语言编写,然后编译为EVM字节码存储执行。

以太坊中智能合约是存储在以太坊区块链中特定地址的代码(功能)和数据(状态)的集合。智能合约以消息的形式在网络中传播,以太坊中合约则是存储于交易之中。EVM判断一个交易是否为合约类的依据是该交易中是否存在代码,若交易信息是代码则该合约得以执行。若在执行过程中发现某合约账户不存在则会自动创建合约地址,并将合约存入该账户。

虽然以太坊中智能合约可用于实现与比特币类似的账户余额认证方案,但其与比特币脚本程序存在显著差别:合约是图灵完备的;合约非无状态的,它们可以存储计算数据;任意合约杰克从其他合约处获取部分数据。

2022-06-11

2022-06-11