智能合约是部署在区块链的代码,区块链本身不能执行代码,代码的执行是在本地的EVM中,实际上,部署在区块链上代码是能够在本地产生原智能合约代码的代码,可以理解区块链为一个数据库,而客户端从数据库中读取了存储的运行代码,并在本地运行后,将结果写入到了区块链这个数据库中。
调用合约函数
TO:目标合约账户地址
DATA:包含函数名称和参数-标识如何调用智能合约函数
FROM:谁调用
AMOUNT:可以是零或任意数量的以太,例如可以支付合约服务费用。
5.1价值传递
{
to:'0x687422eEA2cB73B5d3e242bA5456b782919AFc85',
value:0.0005
data:‘0x’//也可以附加消息
}
非常简单,就是转移一定数量的以太到某个地址,如果我们愿意也可以向交易添加消息。
5.2创建智能合约
{
to:'',
value:0.0
data:‘0x6060604052341561000c57xlb60405160c0806……………’
}
如上所述,TO为空表示创建智能合约,DATA包含编译为字节码的智能合约代码。
5.3调用合约方法
{
to:'0x687422eEA2cB73B5d3e242bA5456b782919AFc85’,//合约
value:0.0
data:‘0x6060604052341561000c57fe5b60405160c0806……………’
}
6、代币(Token)
数字代币代表区块链总账上的记账权
代币的作用:
一个区块链项目往往就是一个程序,而且是开源程序。免费的开源程序没人干,必然需要商业利益驱动。代币数量往往是有限的,需求增加,代币则会增值。为了让代币增值,开发者就必须不断完善及优化相关技术;而每个使用该区块链网络服务的用户,则需要向以太坊矿工支付一定费用,以激励其继续参与整个网络的维护。
以太坊的代币:以太币(ETH)
作为一种燃料。以太坊用户运行以太坊的智能合约需要“消耗”对应的以太币。消耗指的是支付给了维持以太坊网络的矿工。
同样具备货币这样的支付属性。
也同样可视作为持有以太坊这种”世界计算机“的股票。
ETH和Gas的关系:以太网每天的Gas价格不同,因此两者之间的转换率也不同。