事务流程
交易事务流程
交易字段详解
{ "txid": "", // 交易id "blockid": "", // 交易所在block的 blockid // 交易utxo input list "txInputs": [ { "refTxid": "08b2497436fdb07b6fbf902f81191f7e1d042c15ed436d91824e42ed5140eb72", // utxo所来源交易 "refOffset": 0, // utxo来源交易的offset "fromAddr": "dpzuVdosQrF2kmzumhVeFQZa1aYcdgFpN", // utxo 所属AK "amount": "100000" // utxo金额 } ], // 交易utxo output list "txOutputs": [ { "amount": "1000", // utxo金额 "toAddr": "S4Yburshd1qtzGLntNSRTDABqQW2oyaCw" // utxo接收者 }, { "amount": "99000", // utxo 金额 "toAddr": "dpzuVdosQrF2kmzumhVeFQZa1aYcdgFpN" // utxo接收者 } ], // 交易描述信息,用户自定义,用来描述交易详情 "desc": "Maybe common transfer transaction", // 交易nonce值 "nonce": "156438449819727887", // 交易发起时间戳 "timestamp": 1564384498055177000, // 交易version,当前系统仅支持1 "version": 1, // 交易是否为系统自动生成的tx标识, 客户端需要设置为 false, 否则交易失败 "autogen": false, // 交易是否为矿工奖励交易标识,客户端需要设置为 false, 否则交易失败 "coinbase": false, // 合约预执行生成的读集:使用预执行的结果中的读集进行回填 "txInputsExt": [ { "bucket": "contract", "key": "banned.desc", "refTxid": "111949af6bf48f61c51a8d3a93a22b8b7ed94dbf1a800f35674e3f2236410cb7", "refOffset": 3 }, { "bucket": "contract", "key": "complianceCheck.desc", "refTxid": "ad9a78ee67cbb6e2f1fff959dd3a9ca74b1a3106f3257e729ac04c5d5121866c", "refOffset": 3 }, { "bucket": "contract", "key": "identity.desc", "refTxid": "", "refOffset": 0 } ], // 合约预执行生成的写集: 使用预执行的结果中的写集进行回填 "txOutputsExt": null, // 合约请求详情: 使用预执行的结果中的请求进行回填 "contractRequests": [ { // 虚拟机类型 "moduleName": "wasm", // 调用合约名 "contractName": "banned", // 调用方法名 "methodName": "verify", // 合约方法参数 "args": { "contract": "" }, // 合约预执行资源消耗 "resource_limits": [ { "type": "CPU", "limit": 40997 }, { "type": "MEMORY", "limit": 16777216 }, { "type": "DISK", "limit": 0 }, { "type": "XFEE", "limit": 0 } ] }, { "moduleName": "wasm", "contractName": "identity", "methodName": "verify", "args": {}, "resource_limits": null }, { "moduleName": "wasm", "contractName": "complianceCheck", "methodName": "call", "args": {}, "resource_limits": [ { "type": "CPU", "limit": 32175 }, { "type": "MEMORY", "limit": 16777216 }, { "type": "DISK", "limit": 0 }, { "type": "XFEE", "limit": 0 } ] } ], // 交易提交者,只能是address,表示这个交易是由谁提交到区块链网络中 "initiator": "dpzuVdosQrF2kmzumhVeFQZa1aYcdgFpN", // 交易中所有涉及到的权限需求的地址或者账户下的身份,主要是转账和合约调用以及背书需求等, // 形式有两种 1)以地址的身份: address 2) 以某个账户下某个地址的身份:account/address1 "authRequire": [ "dpzuVdosQrF2kmzumhVeFQZa1aYcdgFpN" ], // 交易提交者签名 "initiatorSigns": null, // 交易中所有涉及到的权限需求的签名 "authRequireSigns": null, // 节点收到tx的时间戳,不参与签名 "ReceivedTimestamp": 0}