文档介绍:探索以太坊交易
0x9c81f44c29ff0226f835cd0a8a2f2a7eca6db52a711f8211b566fdl5d3e0e8d4 0x98beb27135aa0a25650557005ad962919d6a278c4b3dde7f4f6a3ale65aa746c 0x621de9a006b56c425d21ee0e04ab25866fff4cf606dd5d03cf677c5eb2172161 0xlclfb39d78d2ddfbbalebd38076ccf54b8aaf3910839e0d0d737c61ble264e00 0xb8ce46e64f5fbaec38073e592e00bce29f17cbcccc3e88e29c3f67163787e619 0xb9d70845c2abab8b548al568dlbef653904f3a48073ecla91e46cfe0414c286e 0xd90ce562962445bc66a7e0ce205219fcl307b4e577ff55f8728494a314fffc0a 0xcbl316911442ff0e9685a822d5a449eb875ad2d88al483ccbcle4c26c0be9f9e
0x75bd4a93c0c79b72eb6af8990b43bc3632599cf9d9fd9c3028f01283c9bO69f2 0x97cede8fa9f55e4417eb8129bdfe74e7d7dl669fl054c595a821be6621eec7c8
以太坊可被看做基于交易的状态机:交易可以改变状态机,状态机可以记录跟踪交 易。本文将在一个比较深入的层次考察以太坊交易的组成部分,解释大部分令人费 解的十六进制数是怎么确定的。
在本教程中,,所以我们首先从安装依赖关系开始。
$ npm install ******@ ethereumjs-******@ ethereumjs-******@
然后创建文件tx. js ,请求依赖关系。
var Web3 = require('web3');
var web3 = new Web3(new (' /'));
var util = require('ethereumjs-util');
var tx = require('ethereumjs-tx');
首先我们从理解一个私钥开始。以太坊通过公钥加密进行授权。具体来说,用椭圆 曲线数字加密算法,通过secp256kl标准生成公钥。除了有一些限制外,私钥只 是一个随机的256位的数。例如:
var privateKey = '0xc0dec0dec0dec0dec0dec0dec0dec0dec0dec0dec0dec0dec0d ec0dec0dec0de';
通过私钥导出相应的公钥:
var publicKey = ((privateKey));
如果你输出公钥,可以看到下面的16进制数:
0x4643bb6b393ac20a6175c713