区块链中账户是什么

熟悉区块链的朋友都知道,自己有一个地址,有一个私钥,而且可以通过这个地址来进行代币的转账,那么这个账户到底存在吗?

在比特币中,账户的转账是有输入输出的。首先大家要知道比特币中币是如何出现的,在挖矿时都有 Coinbase 交易,也就是说生成了新的比特币,目前一次挖矿得到的比特币除了手续费应该是12.5个比特币。这些币就可以在每个账户之间转账了。那么系统是如何确定某个账户是有比特币的呢?就是靠交易的输入、输出(这里不对比特币进行过多的介绍,以后有机会会更加详细的和大家分享),简而言之,我当前这笔转账交易的比特币的来源可以通过上一个交易的输出溯源,一直可以找到这些比特币的来源,那么这些比特币就是合法的了。但是对于某个账户,我们是不存这个账户对应的余额有多少比特币的。

在以太坊中则不然,以太坊中使用账户的概念,也就是说对于某个账户有多少个币,都是存在数据库的。当某个账户转账时,就会判断这个账户中是否有对应代币,以及具体的余额是多少。这样就可以决定这笔交易是否合法了,当然是否合法的概念并不是简单一个余额问题,但是这里主要还是说一说账户,以太坊更多的内容以后也会和大家分享的。

这个两种最明显的区别,说到这里大家可能会想,这种账户和目前中心化的有什么区别?放心,区别还是有的,这个大家可以放心,即使账户的形式,同样也是分布式的。

那么这两种方式有什么好处呢?

UTXO 好处

  1. 安全。对于任何的比特币都可以溯源,找到最初的出生地。
  2. 隐私。比特币不会存在任何账户,所以可以使用任何账户转账。很难被追踪。
  3. 不关心事务。关心的只有交易的输入输出。

Account 好处

  1. 节省空间。对于账户主要存储的就是余额,而不需要存所有的交易输入输出数据。
  2. 更多状态。有了账户概念,我们可以对去进行更多的操作,不会向 UTXO 一样只有花费或者未花费两个状态。
  3. 更加容易实现智能合约。这点和第二点很像,有了更多的状态,我们就有了更多的玩法。

但是,如果从长期来看,UTXO 的数据库会小很多,因为账户是无限扩大的。存在即合理,不要想着到底哪种方式是对的,要想哪种方式是适合你的。

相关推荐