主页 > 苹果怎么下载imtoken钱包 > 从1.0的比特币到2.0的以太坊,区块链经历了什么

从1.0的比特币到2.0的以太坊,区块链经历了什么

苹果怎么下载imtoken钱包 2023-04-17 05:38:28

不可错过的区块链覆盖

——

区块链1.0——比特币

区块链是一个分散的全球数据库,它将加密信息块链接在一起。

比特币是一个去中心化的计算网络,用户可以在比特币网络上保留账户。

比特币,将区块链的概念引入了我们的世界。比特币也是区块链技术中最广为人知的用例,其数字货币BTC也是当之无愧的币王。

比特币如何使用区块链?

比特币使用区块链存储比特币交易信息。每笔交易都通过区块链连接到前一笔交易。

在比特币中,共识机制是通过POW挖矿实现的,数据的不变性和完整性是通过哈希函数和UTXO来保证的。

1. POW(工作证明)

即工作量证明,也称为挖矿。比特币基于 PoW 算法实现其共识机制。也就是说,比特币的分配是根据挖矿贡献的有效工作量来确定的。

2. 哈希函数

也称为散列函数,它是一种密码函数和单向函数。也就是说,你可以从一个输入中得到一个输出,但是如果你只有一个输出,你是无法得到输入值的,每个输入只产生一个唯一的输出。

在挖矿过程中,比特币使用哈希函数将新交易写入区块链。

Hash(最后一个Hash值、序号X、记账时间、交易记录)=Hash值

每个区块都包含一个 Hash 值,该 Hash 值是根据上一个区块的 Hash 值和当前账户页面信息作为输入计算得出的。这确保了区块链:

比特币用什么app最好

验证与验证:只要验证了最后一个区块的哈希值,就相当于验证了整个账本。

不变性:交易信息的任何变化都会改变所有后续区块的哈希值。这使得无法回滚记录或删除过去的记录。

比特币的不可篡改性,用户无法回滚交易或删除过去的交易,避免“双花”,保证数字货币的可信度,最终让比特币变得有价值。

比特币没有账户,使用UTXO

UTXO(Unspent Transaction Output):指未使用的交易输出。它是比特币交易生成和交易验证的核心概念。

每笔比特币交易都有输入和输出,有人付给你的钱是“交易输入”,而你收到的钱是“交易输出”。一笔交易构成一条交易链。所有合法的比特币交易都可以追溯到一个或多个交易输出。这些链的来源当然是——挖矿奖励,最终是当前未花费的交易。输出。所有未使用的输出 - 整个比特币网络的 UTXO。

因此,在比特币网络中,没有账户的概念,也没有比特币余额之类的东西。整个网络的区块链上只有UTXO。

区块链2.0——以太坊

以太坊是一个去中心化的计算网络,允许用户在以太坊上运行智能合约和去中心化应用程序(DAPP Decentralized Applications)。这些应用程序将在没有中央服务器的情况下运行。

以太坊如何利用区块链?

以太坊使用区块链来存储有关在网络上运行的应用程序 (DAPP) 的信息。区块链网络跟踪代码的执行和所有应用程序的状态。

1. DAPP

以太坊网络就像一部手机的IOS系统和Android系统。它是一个平台系统和一个底层生态环境。DAPP是平台衍生的各种分布式应用,也是区块链世界基础服务的提供者。DAPP之于区块链就像APP之于IOS和Android。

2. 智能合约

智能合约是 DAPP 与区块链数据库之间的桥梁,起到区块链“api 连接器”的作用。例如,一个 Dapp 就像一个“支持区块链”的网站,智能合约允许它连接到区块链。

比特币用什么app最好

使用 HTML、CSS 和 JavaScript 呈现页面的传统 Web 应用程序。它还需要一个 API 从数据库中获取数据。当您打开 Facebook 页面时,该页面会通过 API 获取您的个人信息(姓名、性别等)并显示在页面上。结构如下:前端→API→数据库

虽然 Dapps 与传统的 Web 应用程序非常相似,但前端使用完全相同的技术来呈现页面。一个关键的区别是 DAPP 不使用 API 来访问数据库,而是通过智能合约来访问区块链数据库。结构如下:前端→智能合约→区块链

ETH 选择账户

账户余额系统

为了运行 DAPP,以太坊放弃了 UTXO比特币用什么app最好,选择了账户余额系统。因为使用帐户有以下好处:

节省大量空间,每笔交易只有一个输入、一个输出和一个签名。

更大的可替代性、编码简单性和轻客户端。

BTC和ETH最大的区别

它是——BTC 使用区块链记账并使用 UTXO,而 ETH 使用区块链运行程序代码并使用账户余额系统。

为什么blockchain1.0不能运行程序

而区块链2.0 可以吗?

区块链2.0,是可编程的区块链,我们可以在区块链2.0上运行智能合约、DAPP(去中心化应用),而区块链1.0是不行的。那么,为什么区块链1.0,不能运行程序呢?

因为区块链 1.0 使用的脚本语言不是图灵完备的。

什么是图灵完备性

如果一种编程语言,给定足够的时间,可以使用计算机完成任何计算任务并解决任何计算问题,那么该语言就是图灵完备的。如果需要解决任何问题,需要使用-“循环”、“条件控制”等语句。

比特币用什么app最好

什么是循环

循环是计算机科学中的一种常见控制流,它告诉计算机重复执行一项任务。

例如:“就像一百万次!” 点赞是一项任务。循环:

……

总共一百万次。

什么是条件控制语句

仅当满足某些条件时才执行任务。

比如点赞数小于100,就会被点赞。

这里的条件是:点赞数

没有循环和条件控制语句的比特币脚本语言

因此,我们说:比特币脚本语言不是图灵完备的。这导致比特币脚本语言具有一定的局限性。

比特币用什么app最好

当然,由于这些限制,黑客无法使用这种脚本语言,编写一些无限循环(这会导致网络瘫痪),或者一些可能导致 DOS 攻击的恶意代码,从而避免对比特币网络进行 DOS 攻击。比特币的开发者也认为,核心区块链不应该具有图灵完整性,以避免一些攻击和网络拥塞。

然而,正是由于这些限制,比特币网络无法运行其复杂的程序。但是,ETH 使用的语言具有图灵完备性。

例如:

Blockchain1.0 就像一部古老的电话,只有拨打和接听电话的核心功能。

区块链2.0就像一部智能手机,可以运行各种APP、游戏APP、微信,极大地影响着人们的生活。

在区块链上运行程序究竟意味着什么?

我们知道,在计算机上运行程序是由 CPU 执行的一系列任务。在区块链上运行程序就是在区块链网络上运行各种任务。

需要注意的是,区块链网络的每个节点都会记录:

1. 所有交易的历史

2. 所有智能合约的历史

3. 所有智能合约的现状

什么是状态?

如果您在淘宝上购买产品,会显示如下状态,已下单,已出库,已发货。您的购买进度是一一对应的状态。

在区块链上运行程序,所有节点都会同步,保持智能合约的状态一致。

DAPP到底是什么?

比特币用什么app最好

DAPP是去中心化应用程序(decentralized application)的缩写,是指运行在去中心化网络上的应用程序。

以太坊网络就像一部手机的IOS系统和Android系统。它是一个平台系统和一个底层生态环境。DAPP是平台衍生的各种分布式应用,也是区块链世界基础服务的提供者。

DAPP之于区块链就像APP之于IOS和Android。

DApp = 前端 + 智能合约

DApp 的前端可以是用任何语言编写的前端代码和用户界面(就像应用程序一样)。前端可以调用后端。

前端 → 智能合约 → 区块链

智能合约是 DAPP 与区块链数据库之间的桥梁,起到区块链“api 连接器”的作用。

例如,Dapp 就像一个“支持区块链”的网站,智能合约允许它连接到区块链。

使用 HTML、CSS 和 JavaScript 呈现页面的传统 Web 应用程序(前端)。它还需要一个 API 从数据库中获取数据。例如,当您打开 Facebook 页面时,该页面会通过 API 获取您的个人信息(姓名、性别等)并显示在页面上。结构如下:前端→API→数据库

虽然 Dapps 与传统的 Web 应用程序非常相似,但前端使用完全相同的技术来呈现页面。

一个关键的区别是 DAPP 不使用 API 来访问数据库,而是通过智能合约来访问区块链数据库。结构如下:前端→智能合约→区块链

DAPP的特点

首先,用户的隐私得到很好的保护,信息被加密存储在区块链上。

其次,网络节点以去中心化的方式运行比特币用什么app最好,所有节点同步DAPP的各种状态。

第三,通过标准算法产生代币,根据应用场景使用代币,贡献的用户可以获得代币奖励。

前段时间,以太坊流行的云养猫应用 CyptoKitties 是一款 DAPP!

-结尾-