以太坊- Ethereum

以太坊开发(十一)Mist使用:Transaction详解

2018-03-05  本文已影响129人  yuyangray

这篇文章来自以太中文网:区块链学堂(19):Mist 5–Transaction,我会对使用过程中自己遇到的问题进行补充。

Mist中的基本概念回顾

以太坊账户体系

Transactions

账户和账户之间的交易,都是通过Transactions来执行的,例如eth.accounts[0]要发送100以太币给eth.accounts[1], 这个时候所执行的Transaction如下所示

又比如我们执行Token合约中的mint()方法,从区块链底层看来就是从msg.sender给智能合约地址,发送一个transaction, 只不过这个transaction的地址是智能合约的地址,同时还带上了一个RawData罢了。如图所示:

Blocks

Blocks也就是区块,区块链区块链,顾名思义,就是由区块链接起来的一个分布式数据库。任何账户之间的变动,都必须被新挖出的Blocks计入他们的账本,且被多个区块所认可,那么此时这个交易才算真正生效。否则是无效的。

普通账户之间以太币转移的Transaction

我们可以重复一遍之前的操作,从Main Account再转100 以太币到Account 1。然后立刻打开Main Account的页面,我们看到的Latest Transactions是这样的。

过了一段时间之后变成了下图所示:

image

点击该Transaction可以看到Transaction的细节

可以很清晰的看到对于一个Transactions来说,他也有自己的地址,也需要被挖矿挖掘出来并记账,并被多个区块所确认。

智能合约调用的Transaction

我们可以打开Token合约,重新调用token合约中的mint()方法,然后打开transaction,查看细节如图:

从上图我们可以很清晰的看到调用智能合约,就是给智能合约的地址发送transaction。除此之外,还需要给到rawdata, 从而实现调用智能合约中的方法的功能,例如mint()

参考:区块链学堂(19):Mist 5–Transaction
作者:以太中文网

上一篇 下一篇

猜你喜欢

热点阅读