主页 > imtoken最新版官网 > 【白皮书系列】以太坊白皮书(比特币)

【白皮书系列】以太坊白皮书(比特币)

imtoken最新版官网 2023-09-24 05:09:12

本来想再看一遍《精通比特币》的,没想到打印出来的部分留在了公司也没找回来,只好看了以太坊的白皮书。 好在以太坊白皮书第一部分是历史回顾,主要讲比特币,所以趁着刚看完比特币白皮书,看了这部分,整理了一下。

[0。 概括]

[翻译] 两个未经检验的革命性新概念被引入了世界。 第一种是比特币,一种去中心化的点对点在线货币,无需任何资产支持、内在价值或中央发行人即可保持价值。

【注】线上发行,无资产担保,无中心化发行结构,无内在价值,但有价格,有交易,这本身就是一个奇迹。 感觉就像互联网刚刚起步的时候,当马云在宣传他的中国黄页时,人们大多不相信他。 虽然通过电脑看到一个页面可能要等上几个小时,但这是虚拟的,总让人觉得不真实。 区块链刚起步时也是如此。 只是区块上多了一笔交易,同样感觉不真实。 幸运的是,经过互联网和移动支付的洗礼,中国人还是很容易理解和信任的。

[翻译] 基于工作量证明的区块链概念允许人们就交易顺序达成共识。

【注意】交易记录存储在区块中。 并且区块头中有时间戳以太坊和比特币经典,所以区块链的区块是按时间顺序排列的。 但是交易也是有时间戳的以太坊和比特币经典,能否确认交易的顺序呢? 有两种情况:交易1:A发送比特币给B,而B在本次交易前没有比特币,则交易2:B正在发送比特币给C。两笔交易相互关联,容易确认此时的交易顺序。 但是A把所有的币都发给B,同时把所有的币都发给C。 那么这里如何确定双重支付问题的交易顺序呢? 是不是以广播的形式交给节点,节点之间是不是验证? 验证方法是交易收到时间?

比特币 莱特币 以太坊_比特币以太坊莱特币都开始下跌_以太坊和比特币经典

[翻译] 区块链如何在货币之外使用。

有人说以太坊的作用:它可以发行其他货币。 当然,通过区块链的功能,也有一些游戏,比如加密猫。 一些社交应用,比如群群。 基本例程是将一些信息应用于块。 当然也有一些东西的资产要上链,比如股票、房产等等,但是这样的应用还不够成熟。

[翻译] “智能合约”——一种根据任意预先制定的规则自动转移数字资产的系统。 以太坊的目标是提供一个内置成熟图灵完备语言的区块链。

【注】即以太坊可以执行比比特币更复杂的应用:编写智能合约。 这就是以太坊的核心点,以后慢慢学习理解。

[1. 历史]

[术语] 拜占庭问题

比特币以太坊莱特币都开始下跌_以太坊和比特币经典_比特币 莱特币 以太坊

[术语] 女巫攻击

【注】比特币通过工作量证明解决拜占庭问题:谁拥有最多的计算能力,谁先解决了计算问题,谁就有话语权。 比特币通过计算机算力而不是节点来解决女巫攻击问题,因为计算能力的成本高于创建节点的成本。

[2。 比特币作为状态转换系统]

【注】比特币只用于交易(即转账),这里抽象为状态开关。 它将UTXO集合看作一个状态,每笔交易都会引起这个状态的切换。 每个交易又是一个转换函数:

交易的每个输入:

. 如果引用的UTXO在当前状态(S)中不存在,则返回错误信息

比特币 莱特币 以太坊_以太坊和比特币经典_比特币以太坊莱特币都开始下跌

. 如果签名与 UTXO 拥有者的签名不一致,将返回错误信息。 如果所有UTXO输入面值的总和小于所有UTXO输出面值的总和,则返回错误信息返回新的状态S',其中所有输入的UTXO都被移除。 添加了所有输出 UTXO。

第一步的第一部分阻止交易的发送者花费不存在的比特币,第二部分阻止交易的发送者花费别人的比特币。 第二步确保价值守恒。 第三步是UTXO状态的转移。

【注意】由于UTXO不存储在区块链中,因此只会在节点中更新。 节点中的UTXO是通过遍历创世块获得的。 全网区块链是一致的,更新后的UTXO也是一致的。

[3. 矿业]

要检查一个块,节点必须完成以下操作:

检查块引用的前一个块是否存在且有效。 (这应该可以防止恶意节点广播一个不引用前一个块的块,比如创建一个类似于创世块的块,但它伪装成第 27,000 个块。或者将其打包在一个无效块上)检查是否该块的时间戳比前一个块的时间戳晚,并且在未来 2 个多小时 [2]。 (为了保证时间同步,这里使用节点时间的中位数)检查区块的工作量证明是否有效。 将前一个块的最终状态分配给 S[0]。 假设TX为该区块的交易列表,包括n笔交易。 对于所有属于 0...n-1 的 i,执行状态转换 S[i+1] = APPLY(S[i],TX[i])。 如果任何事务 i 在状态转换中出错,则退出程序并返回错误。 返回正确,状态S[n]就是这个块的最终状态。

比特币 莱特币 以太坊_比特币以太坊莱特币都开始下跌_以太坊和比特币经典

这里的状态S,也就是之前的UTXO,并没有保存在区块链中。 挖矿的过程是计算SHASH256的难题。 例如:把得到的hash看成一个长度为256位的值,这个值必须小于动态调整的目标值。 本书编写时,目标值约为 2190,这意味着平均需要 264 次尝试才能生成有效哈希。 块。 因为是遍历试错,而这里得到的哈希值与输入的交易价值有关,所以不能一直得到一个小的哈希值并一直使用。

[4. 默克尔树]

Merkle树的主要功能是SPV(Simplified payment confirmation)。 由于交易记录的存在,全节点需要存储所有交易记录,占用存储空间大,不利于手机等轻量级设备的存储。 那么轻量级设备只存储Merkle树的根,就可以验证交易是否正确。

[5. 其他区块链应用]

在以太坊之前,有一些山寨币或分叉币,例如莱特币、狗狗币、达世币和比特币现金。 之后,以太坊基于以太坊的ERC20协议创造了更多的币,据说有10万个级别。 感觉有点像早期联发科提供CPU硬件支持,提供各种山寨手机厂商做手机。 但是,联发科并没有强硬规定以太坊必须使用以太坊来设置交易费用。 哈哈,如果联发科制定类似于以太坊的规则,会发生什么? 但是类似以太坊的规定在手机行业是如何设置的呢? 版税? 手机出货量的类比不太恰当。 更贴切的类比应该是:联发科免费提供芯片,每次假冒手机交易(手机厂商卖给用户,用户买卖),就会消耗联发科库存(怎么消耗,将联发科股票出售给联发科)。 哈哈,天马行空还是挺搞笑的。

[6. 脚本]

以太坊和比特币经典_比特币以太坊莱特币都开始下跌_比特币 莱特币 以太坊

这一类主要说明了比特币的缺点,也是以太坊克服比特币缺点的优势:

. 缺乏图灵完整性(无循环)

. 价值盲点

. 缺乏状态(仅花费和未花费)

.区块链失明

由于我没有深入研究过以太坊,所以无法深入比较比特币和以太坊。 所以,这里不做进一步解释。 希望在学习了以太坊之后,能够清楚的理解这一部分的内容。