尽管比特币()和以太坊()是通常一起提到的两个词,但实际上,比特币与以太坊大不相同。他们唯一的共同点是以太坊也是一个在区块链上运行的加密资产。
与比特币只是一种加密货币不同,以太坊具有许多其他功能。正是这些特征使以太坊成为分散的超级计算机。
在了解以太坊之前,我们必须了解区块链的工作原理。如果您已经了解了区块链,或者已经阅读了理解区块链的最终指南,则可以直接转到下一节。
什么是区块链?
简而言之,区块链是数据库。这是一个不断增长的数据库,它存储特定类型的数据并具有一些独特的属性:
一旦数据存储在数据库中,就永远无法修改或删除。区块链上的每个记录都是永久的。该数据库不受一个个人或组织的维护,而是由成千上万的人维护,每个人都有数据库的副本。
要了解为什么几个人可以握住副本并与他人同步,让我们假设现在网络上有10个人,每个人都有一个空的文件夹和一个空纸。每当网络上的任何人做某事(例如转移资金)时,他们都必须告诉网络上的其他人。
每个人都会在纸上记录下来,直到纸张填充为止。目前,每个人都必须通过解决数学问题来封装此页面。通过解决数学问题,可以确保每个人手中的论文具有相同的内容,并且不能修改。首先解决问题的人将获得一定数量的加密货币奖励。可以看到更多内容:指南。
封装完成后,此页面将添加到文件夹中,然后将输入一个新页面,并重复上述过程。
随着时间的流逝,这些页面(即块,块)包含重要记录(即交易),不断添加到文件夹(链)中,最后形成数据库(区块链)。
区块链存储了什么?
区块链可用于存储各种类型的数据,并且它存储的数据给出了区块链值。比特币区块链存储了金融交易,因此看起来像美元或英镑这样的货币。比特币没有其他功能,除了美元携带的功能。但是,以太坊是不同的。
以太坊不仅是美元,英镑或比特币这样的货币。以太坊的目标不仅是成为一种货币,而且要成为下图中的事物:
以太坊实际上是一台巨型计算机!但是,这是一台非常慢的计算机 - 比当今普通计算机慢100倍,而且非常昂贵。 “以太坊计算机”与1990年代的智能手机相似。除了非常简单的事情之外,它几乎无法做任何事情。
这听起来不是很吸引人,所以为什么有这么多的人急于以太坊?这是一个很好的问题。说以太坊正在席卷整个世界并不夸张,因为它是一款在世界各地分发的完全分散的计算机。了解以太坊区块链的工作方式将表明它如何扮演世界计算机的角色。
以太坊如何工作?
像所有其他区块链一样,以太坊要求成千上万的人在其个人计算机上运行软件来支持整个网络。网络中的每个节点(计算机)运行称为以太坊虚拟机(EVM)的东西。将EVM视为一种操作系统,该操作系统理解和执行以太坊上特定编程语言编写的软件。 EVM执行的软件或应用程序称为“智能合约”。
为了在这台世界计算机上做某事,您必须支付一定的费用。但是,您没有支付普通货币,例如美元或英镑。相反,它通过以太坊网络(ETHER(ETH))本地的加密货币支付相关费用。 Ether几乎与比特币完全相同,唯一的区别是它用于为以太坊上执行智能合约。
无论是个人还是智能合约,它都被视为以太坊的用户。一个人可以在以太坊上做什么,以及智能合同可以做什么。
智能合约看起来像互联网上的其他任何人。就像其他货币一样,它们都可以发送或接收以太。
但是智能合约与人类并不完全相同。与人类用户不同,智能合约还可以执行预定义的计算机程序来执行各种操作,并且可以根据事件触发执行的操作。要感受智能合约的力量,让我们考虑一个例子:
智能合约的力量
假设您和我在明天的天气下打赌,我敢打赌明天的阳光明媚,但是您在下雨天打赌。双方都同意,失败者必须给获胜党100美元。那么,我们如何做到这一点,并确保失败者不会作弊?我可以想到三种不同的方式:
1。相信对方
最简单的方法是信任对方。如果我们是老朋友,那很容易互相信任。我知道你住在哪里,你知道关于我的各种令人尴尬的事情。但是,如果我们是我们根本不认识的陌生人,事情将会变得更加复杂。我没有理由相信您,您没有理由相信我。
2。签署法律协议
另一个看似可行的选择是正式与我们的赌注形成法律上有效的协议。我们俩都签署了定义BET的所有细节的协议,包括如果失败者违反该协议会发生什么。
该协议将使我们有义务支付获奖方,但它没有实用性,因为通过法律手段执行协议的成本比BET更有价值。
3。请一个共同的朋友帮助
我们可以找到一个双方都可以信任的朋友,并给他们每一个100美元以保留。第二天,他将检查天气,并向赢得赌注的聚会全部200美元。除了一件事外,非常简单和方便:如果双方都信任双方的朋友拿走了钱怎么办?
现在,我们有三个不同的选择来实施BET,但是每个选择都有其缺点:
以太坊的智能合约是为了节省这个问题。智能合约就像是一个值得信赖的共同朋友,刚刚用代码写。我们可以在以太坊上写一份合同,该合同从我们俩那里获得100美元的投入,然后在第二天,通过开放天气API检查天气,然后将所有以太转移到获奖方。
合同书写后,无法对其进行编辑或修改。因此,您可以保证,无论合同是什么,它将无条件执行。
但是如何执行智能合约?与区块链有什么关系?
智能合约如何与区块链相关联?
每当执行智能合约时,它将被记录为块上的交易。总而言之,以太坊的交易看起来像这样:
除了最后一个数据外,我相信每个人都可以看出其他领域在做什么。正是这个数据字段使以太坊与众不同。数据用于记录智能合约的创建和执行,就像记录交易一样。在以太坊区块链上,任何区块都可以包含以下三个交易:
1。从一个人到另一个人的普通交易
这些普通交易就像比特币交易。如果您将以太直接发送给朋友,则数据字段为空,而这样的交易是正常的交易。
2。只有发件人,但没有接收器
如果交易中没有接收器,则意味着交易是使用数据字段的内容在网络中创建智能合约。数据字段包含与网络上其他用户一样的代码。
3。将以太转移到智能合同中
每当用户(或智能合约)想要执行智能合约时,他/她/她将创建智能合约事务并将执行说明放置在数据字段中。
像其他区块链一样,无论上述三个事件发生在何时发生,它们都将在网络上发布,网络中的每个人都会记录下来。除记录外,每个节点还执行智能合约,以将其EVM状态与网络的其他部分同步。
每个节点都执行软件的一部分,从而使整个网络像巨大(但缓慢)的分布式计算机一样。每当执行多么小时,它都会记录在区块链上并永远存在。
等等,什么是汽油?
如果用户想使用并执行智能合约,则他或她必须支付一定的费用才能执行智能合约。这笔费用是将实际花费资源(例如内存,存储,计算和功率)来执行合同的节点。
为了计算智能合约的费用,合同中的每个说明都有一个费用标准。例如,如果执行的语句使用节点的内存,则此语句将具有价格。如果使用节点的硬盘存储执行语句,则这些语句是另一个价格。在这里,定义成本的单位称为气体。最终,气体将通过汇率转换为以太(ETH)。
每当执行智能合约时,您都必须定义可以花费的最大气体值。当智能合约的执行完成或达到气体限制时,将停止执行。这是为了避免智能合约中的无限循环,并防止对导致该程序停滞不前的陈述重复执行。
由于程序员的某些错误,可能会发生这种情况。因此,每次重复执行时,都会消耗一些分配的气体,因此不会有无限的循环。由于程序员的错误,执行时无需导致节点崩溃。使用气体解决了这个问题。
这是以太坊
以太坊不仅是交易的加密货币,其实际价值在于其目的 - 以太坊的目的是使人们能够使用数千个节点支持的分布式世界计算机。
当然,由于每个语句必须由网络中的每个节点执行,因此分散的分布式计算机可能会变得缓慢而昂贵。但是,您比较谁在这里提到的慢呢?它更快,但中央控制的服务器。
为了享受集中计算机带来的低成本,我们移交了控制。但是,如果集中式服务器下降或被黑客入侵,则所有连接到它的客户端都会挂断。分散的分布式计算机只有在每个节点停止工作时才会挂断。换句话说,这使它永远不会失败。无论您身在何处,只要有一个网络,就有以太坊。
原始文字:WTF是?为什么不只是。