主页 > 下载imtoken钱包官网苹果版 > 以太坊平台评估私有链和联盟链的机遇和挑战

以太坊平台评估私有链和联盟链的机遇和挑战

以太坊平台评估 私有链和联盟链的机会与挑战

以太坊平台的想法最早是在 2013 年 11 月提出的,当时的目标是创建一个更通用的区块链平台——通过工作量证明机制(或最终转化为权益机制)概念并将其与状态丰富的图灵完备虚拟机的抽象能力相结合,使应用程序开发人员更容易在区块链上创建应用程序并受益于区块链的去中心化和安全特性,尤其是避免了麻烦为每个新应用程序创建一个新的区块链。

之前出现的区块链协议可以看成是一个功能单一的工具,就像你口袋里的计算器,甚至更好的情况下,是一个像瑞士军刀一样的多功能工具;以太坊是区块链中的“智能手机”:它是一个通用平台,你可以在上面构建你需要实现的功能,就像构建一个“APP”一样,以太坊的用户可以即时访问它可以提供的东西。无需下载任何新软件即可获益。

虽然该项目最初是作为“Mastercoin 功能升级提案”(为金融合约提供支持)的一部分而提出的,但该项目的重点已经扩展到更广泛的应用领域,包括金融合约、投注、数字代币(资产) 发行、去中心化文件存储激励、投票、“去中心化自治组织”等。2014 年 8 月,通过众筹活动为以太坊平台的开发筹集资金。从那时起,平台上出现了 100 多个应用程序,包括从金融清算和结算,到保险、数字资产发行,甚至非金融应用(包括投票和物联网)。

以太坊八字

基本设计

一些区块链有一个“历史”的概念——所有以前的交易、转账和它们发生的顺序的集合,以及“状态”——它决定了一个给定的交易是否有效以及交易处理后的状态。 . 如何更改“当前相关”的数据。区块链协议还有一个“状态转换规则”的概念:基于之前的状态,以及给定的交易,(i)这个交易是否有效?还有,(ii)事务发生后,状态会是什么?

我们可以举一个比特币的例子 1。在比特币中,状态是账户余额的集合(例如地址 39BaMQCphFXyYAvcoGpeKtnptLJ9v6cdFY 有 522.11790015 BTC,地址 375zAYokrLtBVv6bY47bf2YdJH1EYsgyNR 有 375 BTC...)。状态转换函数获取发送者的地址、目的地址和一个值,并询问: (i) 发送者是否正确地加密签名了该交易?并且 (ii) 发送者的帐户有足够的比特用于此传输吗?如果这些问题之一的答案是否定的,那么交易是无效的并且不能被包含在一个区块中。如果一个块包含当前状态下的无效交易,则该块被网络忽略。如果两个问题的答案都是正确的,则从发送者那里提取交易的价值'

以太坊八字

在以太坊中,相关的设计会更加复杂。一个状态可以被认为是所有账户的集合,每个账户要么是一个“外部拥有的账户”(EOA),要么是一个合约。如果一个账户在 EOA 下,该州只是将账户的余额存储在 ether(以太坊的内部加密令牌,其功能类似于比特币或 XRP)和一系列用于防止双重支付攻击的序列号。如果账户是合约,状态会存储合约的代码,以及合约的存储空间——一个键值对数据库。

在以太坊中,一笔交易指定(连同一些其他需要的信息,后面会提到)一个目的地址、交易使用的以太币数量,以及一个理论上可以存储任何信息的“数据”域(此外,还有发件人的地址,但签名中已指定,因此此处不指定)。如果对 EOA 或尚不存在的帐户进行交易,则除了作为发送以太币的手段之外,它没有其他目的。如果将交易发送到合约,则会执行合约的代码。该代码能够:  读取交易数据。 读取交易中发送的以太币余额。 读取或写入合约自身的存储空间。 读取环境变量(例如时间戳、区块难度、前一个区块的哈希) 发送一个“

本质上,你可以把合约看成是一种存储在以太坊状态中的“虚拟对象”,它可以包含自己内部的永久存储空间,并且可以像外部用户一样操作其他合约。和关系。内部交易是由合约创建的交易;就像普通的“外部”交易一样,它也包含明确的发送者、目的地址、以太币数量和消息数据,如果内部交易被发送到合约,合约的代码就会运行;合约执行后,合约的代码将有能力返回 0 字节或更多字节的数据,内部交易可以利用这些数据向其他合约“询问”特定信息。一笔交易可以创建一个新的合约——通过放置合约'

以太坊八字

简单来说,在以太坊公链上,合约机制有以下几种形式:  作为追踪用户发行人资产的数据库; 作为一个“智能合约”,可以控制其他资产”(下面详细介绍这个概念),并将根据特定条件将这些资产发送给特定的各方;这通常进一步细分为几个子类别,包括 (i) 金融合约(例如 CFD、二元期权)、衍生品),(ii) 担保交易(实施“数字资产的去信任原子交换”),(iii) 多当事人协议,如拍卖、保险合同、鼓励披露特定信息的经济游戏等;区块链域名系统的注册备案管理; 作为代表用户或组织的账户,但具有复杂的访问控制,例如多重签名; 作为“软件库”,允许将代码编写并发布到链上区块,供他人使用;

“智能合约”的概念通常被简单地定义为“直接控制数字资产的计算机程序”3,这一点尤为重要。合约有自己的地址,因此可以像用户一样充当数字资产的持有者。如果合约真的“拥有”数字资产,这意味着(i)只有合约本身的执行才能将资产发送给另一方,并且(ii)区块链上的每个参与者都可以看到并验证资产的真实性在程序的控制下。

例如,您可以在不信任的情况下将资产 A 与资产 B 交易 - 通过资产 A 的所有者将资产发送到代码定义为“如果我在 24 小时内收到资产 B,那么我会将资产 A 发送到发件人的地址”的程序并将资产 B 发送给我的创建者,否则我会将资产 A 发回给我的创建者”。资产 B 的所有者可以看到合约确实控制了资产 A,并且知道一旦他们将资产 B 发送到合约的账户,合约就会进行公平正确的交易。合同没有“所有者”的概念;当资产 A 的原始所有者将资产发送给合约时,他们无法通过操纵合约来取回资产,只能等待交易成功完成并收到交换的资产 B 后,或者 24 小时后以太坊八字

以太坊八字

以太坊区块链在高层次上有点像比特币的区块链。主要的也是最重的——区块链由一系列块组成,每个块包含一个指向前一个块的指针,以及一个有序的交易列表。区块由工作量证明维护,“最长链”(由整体难度决定)定义了确认交易的序列及其执行顺序。

为到达以太坊区块链上的“当前状态”以太坊八字,节点可以从“初始状态”(嵌入在每个以太坊客户端并得到所有人同意的初始状态)开始处理每笔A交易,并依次执行余额事务处理和代码执行过程带来的/序列号/代码/存储变化。比特币也存在同样的过程;而以太坊对交易执行过程的“状态变化”模型的强调是独一无二的(在比特币中,交易通常被视为花费历史上先前交易的“输出”,而不是状态中的对象)。但在以太坊、比特币、瑞波币、狗狗币等协议中,这部分工作的代码运行模式基本相同。

以太坊使用了对内存要求高的哈希函数、叔叔激励机制、难度调整算法、gas limit调整算法等等,这些都是以太坊一些值得注意的不同,但是这些都是优化工作,可以说不是很核心以太坊的本质。

以太坊八字

以太坊的另一个显着特性(比特币中没有)是对默克尔树的深度使用,允许“轻客户端”仅下载和验证区块头,同时还可以决定何时需要并安全地验证区块链状态的任何特定部分。在比特币中,区块头只存储包含交易的默克尔树的根哈希。在以太坊中,每个区块头都包含一个“状态根”,它本质上包含了整个当前状态(长账户余额、序列号、代码、存储)的加密哈希树的根哈希。

因此,如果轻客户端需要知道状态中的某个值(例如“账户 0x124b6f72 的余额是多少?”或“账户存储什么? data 空间中键值为 178233 的记录是否对应?”),它可以请求网络中的任何“全节点”提供一个“分支”——(Merkle)树结构中的一系列数据块的哈希值指定直到树根的具体信息,轻客户端可以自行验证分支的完整性。如果分支正确,则接受答案。“轻客户端”模式适用于使用智能手机和物联网/嵌入式设备的以太坊用户,以及计算机性能较低和网络带宽较差的用户。

以太坊平台评估 私有链和联盟链的机会与挑战

今天的okex以太坊市场