Skip to content

Alchemint/goodsSolution

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CNEO

Release Note:

1.0.3

Script Hash: 0xc074a05e9dcf0141cbe6b4b3475dd67baf4dcb60

CNEO Contract Address: AQbg4gk1Q6FaGCtfEKu2ETSMP6U25YDVR3

Readme

English 简体中文

Overview:

CNEO refer to NEP-5 contract assets issued by NGD (NEO Global Development). CNEO can be exchanged for NEO at a 1:1 ratio and are fully refundable. The contract aims to map global assets NEO for the benefit of its internal transfer using the method of contract invocation.

NGD provides the community with a common contract for CNEO, which can be used by each project to its own project. We did not add Claim GAS function to the contract because of the contract limitation and the problem of centralization. If the project party wants to do the centralized claim GAS function, can fork the code to develop itself.

Descriptions:

Methods defined in NEP-5 standard:

Methods Parameters Return value Descriptions
balanceOf byte[] account int Get the CNEO balance of an account. The return value is the actual amount x 10⁸.
decimals --- int Get the decimals of CNEO. The return value is constant 8.
name --- string Get the contract name. The return value is constant NEP5 NEO.
symbol --- string Get the contract symbol. The return value is constant CNEO.
totalSupply --- int Get the total supply of CNEO. The return value is the actual amount × 10⁸. Given that CNEO is exchanged for NEO at a 1:1 ratio, the NEO amount retrieved from the contract address is equal to the total supply of CNEO.
transfer byte[] from, byte[] to, int amount bool A transfer method that transfers CNEO from the sender account to the recipient account. The transfer value is the "amount"; "from" and "to" are script hash value and "amount" is the actual transfer amount × 10⁸. This method supports both user invocation and contract invocation.

Additional methods other than NEP-5 methods used to support NEO-CNEO swap:

Methods Parameters Return value Descriptions
getRefundTarget byte[] txId byte[] Get the owner of the UTXO pending refund; the parameter is the TxId of the UTXO (confirm that a UTXO consists of TxId and output index; the output index takes the default value of 0); the return value is the account the UTXO is refunded to, whose owner can set the UTXO as a transaction input and send NEO from the CNEO address to his/her account.
getTxInfo byte[] txId TransferInfo Get detailed transfer info under a TxId. TxInfo will be recorded under the following 4 instructions: mintTokens, refund, transfer, transferAPP.
mintTokens --- bool A mintTokens method for CNEO users, who can transfer NEO to CNEO contract address by constructing InvocationTransaction and convert NEO to CNEO by invoking mintTokens method. Upon successful invocation, CNEO in the equal value of the NEO will be added to the user's asset account. NOTE
refund byte[] from bool It takes two steps to claim CNEO and convert it to NEO. First, construct an InvocationTransaction, including NEO transfer within the same CNEO address (the transfer amount should be the NEO amount users expect to get refunded) to invoke the refund method (set the parameter as the Script Hash of the refund account). Upon successful invocation, CNEO in the equal amount of the refunded NEO will be automatically destroyed and the No.0 output of the transaction will be marked with the ownership of the user. Second, the user may construct a transaction and set the UTXO marked in the first step as a transaction input and his/her account as the transaction output to get NEO from the CNEO address.
supportedStandards --- string NEP-10 standard for return contract; the return value is constant {"NEP-5", "NEP-7", "NEP-10"}.

Notification defined in NEP-5 standard:

Notification Parameters Descriptions
transfer byte[] from, byte[] to, int value Notification contains the three elements of transfer: sender (from), recipient (to) and transfer value (value). CNEO is the default type of assets for transfer.

Other notifications realized in the contract:

Notification Parameters Descriptions
refund byte[] txid, byte[] who Notification contains two elements of transfer: UTXO pending refund (txid) and Script Hash of refund account (who).

[NOTE]

In mintTokens, please note that the total count of InvocationTransaction Inputs and Outputs should not be more than 60, otherwise the cost of execution will exceed the free limit of 10 GAS. If a large number of NEO UTXO need to be exchange to CNEO, it is recommended to make a regular transfer, UTXO merge, and then Minttokens operation.

Examples

The following are the trading structures of mintTokens and refund and the application Log for developers' reference.

mintTokens transaction:

[NOTE]

Type: InvocationTransaction

Input: from user's address

Output: to CNEO contract address

Script: invoke mintTokens methods in CNEO contract

{
    "jsonrpc": "2.0",
    "id": 1,
    "result": {
        "txid": "0x109727713604e5c448de8eaea8708b8cabe0fe7c18296741be150b5cf30991c5",
        "size": 246,
        "type": "InvocationTransaction",
        "version": 1,
        "attributes": [],
        "vin": [
            {
                "txid": "0x852b636e3749635a212c7998a23a86f99a16937e8fc47666b31ab92237c8819f",
                "vout": 0
            }
        ],
        "vout": [
            {
                "n": 0,
                "asset": "0xc56f33fc6ecfcd0c225c4ab356fee59390af8560be0e930faebe74a6daff7c9b",
                "value": "1",
                "address": "AQbg4gk1Q6FaGCtfEKu2ETSMP6U25YDVR3"
            }
        ],
        "sys_fee": "0",
        "net_fee": "0",
        "scripts": [
            {
                "invocation": "40b830e229473454ad3048e844806d983913cf8cb57766453fd851d7c8fe737741f088a14a95dfc083b4434ad8d02de9b449c2e0b03ac79ff6857a546796d495cd",
                "verification": "21037ebe29fff57d8c177870e9d9eecb046b27fc290ccbac88a0e3da8bac5daa630dac"
            }
        ],
        "script": "000a6d696e74546f6b656e736760cb4daf7bd65d47b3b4e6cb4101cf9d5ea074c0f1663d18a12d30db8f30",
        "gas": "0",
        "blockhash": "0x014f9f9b5af29bf10b4108330f982914570d7ffcb4387ccb2251d3c1eb0396c9",
        "confirmations": 2,
        "blocktime": 1536916579
    }
}

mintTokens application log:

{
	"txid": "0x109727713604e5c448de8eaea8708b8cabe0fe7c18296741be150b5cf30991c5",
	"vmstate": "HALT, BREAK",
	"gas_consumed": "4.648",
	"stack": [],
	"notifications": [{
		"contract": "0xc074a05e9dcf0141cbe6b4b3475dd67baf4dcb60",
		"state": {
			"type": "Array",
			"value": [{
					"type": "ByteArray",
					"value": "7472616e73666572"
				},
				{
					"type": "ByteArray",
					"value": ""
				},
				{
					"type": "ByteArray",
					"value": "e8e3ce08268d16d867101feaf8c0ea130a923aba"
				},
				{
					"type": "Integer",
					"value": "100000000"
				}
			]
		}
	}]
}

refund 1st step transaction:

[NOTE]

Type: InvocationTransaction

Input: from CNEO contract address

Output: to CNEO contract address (same address to input)

Script: invoke refund methods in CNEO contract, and set the parameter as the Script Hash of the refund account

Scripts: need 2 witnesses: 1、witness of CNEO; 2、witness of user (additional witness)

{
    "jsonrpc": "2.0",
    "id": 1,
    "result": {
        "txid": "0x243528748565671e8714d39cefebb9c4f136bfa11e99dab0ec4bd3a7aa940fcc",
        "size": 7145,
        "type": "InvocationTransaction",
        "version": 0,
        "attributes": [
            {
                "usage": "Script",
                "data": "e8e3ce08268d16d867101feaf8c0ea130a923aba"
            }
        ],
        "vin": [
            {
                "txid": "0x109727713604e5c448de8eaea8708b8cabe0fe7c18296741be150b5cf30991c5",
                "vout": 0
            }
        ],
        "vout": [
            {
                "n": 0,
                "asset": "0xc56f33fc6ecfcd0c225c4ab356fee59390af8560be0e930faebe74a6daff7c9b",
                "value": "1",
                "address": "AQbg4gk1Q6FaGCtfEKu2ETSMP6U25YDVR3"
            }
        ],
        "sys_fee": "0",
        "net_fee": "0",
        "scripts": [
            {
                "invocation": "4097b1e356ea575ec21c280d2d0ef60e5f447547f9fca4efd58f84e8c874d33ef0d6bd9f20511017f08ce6a968d0ac36df3ccdf9b2ef186765f52fa64e4cc59a91",
                "verification": "21037ebe29fff57d8c177870e9d9eecb046b27fc290ccbac88a0e3da8bac5daa630dac"
            },
            {
                "invocation": "520131",
                "verification": "012fc56b6c766b00527ac46c766b51527ac4616168164e656f2e52756e74696d652e47657454726967676572009c6c766b52527ac46c766b52c36418046161682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b53527ac46c766b53c36168194e656f2e5472616e73616374696f6e2e476574496e707574736c766b54527ac46c766b53c361681a4e656f2e5472616e73616374696f6e2e4765744f7574707574736c766b55527ac4616c766b54c36c766b59527ac4006c766b5a527ac4622b016c766b59c36c766b5ac3c36c766b5b527ac4616c766b5bc36168124e656f2e496e7075742e476574496e646578009c6c766b5c527ac46c766b5cc364de00616168164e656f2e53746f726167652e476574436f6e7465787406726566756e64617c6545176c766b5d527ac46c766b5dc36c766b5bc36168114e656f2e496e7075742e47657448617368617c6555176c766b5e527ac46c766b5ec3c000a06c766b5f527ac46c766b5fc3646f00616c766b54c3c051907c907c9e6310006c766b55c3c0519c009c620400516c766b60527ac46c766b60c3640f00006c766b0111527ac4620f076c766b55c300c36168184e656f2e4f75747075742e476574536372697074486173686c766b5ec39c6c766b0111527ac462dc0661616c766b5ac351936c766b5a527ac46c766b5ac36c766b59c3c09f63ccfe61682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173686c766b56527ac4006c766b57527ac4616c766b53c361681d4e656f2e5472616e73616374696f6e2e4765745265666572656e6365736c766b0112527ac4006c766b0113527ac462e9006c766b0112c36c766b0113c3c36c766b0114527ac4616c766b0114c36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59e6c766b0115527ac46c766b0115c3640f00006c766b0111527ac462d0056c766b0114c36168184e656f2e4f75747075742e476574536372697074486173686c766b56c39c6c766b0116527ac46c766b0116c3642c006c766b57c36c766b0114c36168134e656f2e4f75747075742e47657456616c7565936c766b57527ac4616c766b0113c351936c766b0113527ac46c766b0113c36c766b0112c3c09f630cff006c766b58527ac4616c766b55c36c766b0117527ac4006c766b0118527ac4628b006c766b0117c36c766b0118c3c36c766b0119527ac4616c766b0119c36168184e656f2e4f75747075742e476574536372697074486173686c766b56c39c6c766b011a527ac46c766b011ac3642c006c766b58c36c766b0119c36168134e656f2e4f75747075742e47657456616c7565936c766b58527ac4616c766b0118c351936c766b0118527ac46c766b0118c36c766b0117c3c09f636aff6c766b58c36c766b57c39c6c766b0111527ac4627c046168164e656f2e52756e74696d652e47657454726967676572609c6c766b011b527ac46c766b011bc3649e026161682b53797374656d2e457865637574696f6e456e67696e652e47657443616c6c696e67536372697074486173686c766b011c527ac46c766b00c30962616c616e63654f66876c766b011d527ac46c766b011dc36419006c766b51c300c36165f7036c766b0111527ac462e2036c766b00c308646563696d616c73876c766b011e527ac46c766b011ec3641200616570046c766b0111527ac462b3036c766b00c30f676574526566756e64546172676574876c766b011f527ac46c766b011fc36419006c766b51c300c361653b046c766b0111527ac46276036c766b00c3096765745478496e666f876c766b0120527ac46c766b0120c36419006c766b51c300c36165b1046c766b0111527ac4623f036c766b00c30a6d696e74546f6b656e73876c766b0121527ac46c766b0121c36412006165e6056c766b0111527ac4620e036c766b00c3046e616d65876c766b0122527ac46c766b0122c36412006165200a6c766b0111527ac462e3026c766b00c306726566756e64876c766b0123527ac46c766b0123c36419006c766b51c300c36165fc096c766b0111527ac462af026c766b00c30673796d626f6c876c766b0124527ac46c766b0124c36412006165f70e6c766b0111527ac46282026c766b00c312737570706f727465645374616e6461726473876c766b0125527ac46c766b0125c36412006165ca0e6c766b0111527ac46249026c766b00c30b746f74616c537570706c79876c766b0126527ac46c766b0126c36412006165bc0e6c766b0111527ac46217026c766b00c3087472616e73666572876c766b0127527ac46c766b0127c36441006c766b51c300c36c766b51c351c36c766b51c352c36c766b011cc361537951795572755172755279527954727552727565d60e6c766b0111527ac462b9016162a9016168164e656f2e52756e74696d652e47657454726967676572519c6c766b0128527ac46c766b0128c3647d016161682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173686c766b0129527ac461682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b012a527ac4616c766b012ac361681a4e656f2e5472616e73616374696f6e2e4765744f7574707574736c766b012b527ac4006c766b012c527ac462bb006c766b012bc36c766b012cc3c36c766b012d527ac4616c766b012dc36168184e656f2e4f75747075742e476574536372697074486173686c766b0129c3907c907c9e6347006c766b012dc36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59e620400006c766b012e527ac46c766b012ec3640f00006c766b0111527ac4623d00616c766b012cc351936c766b012c527ac46c766b012cc36c766b012bc3c09f633aff516c766b0111527ac4620f00006c766b0111527ac46203006c766b0111c3616c756654c56b6c766b00527ac4616c766b00c3c001149c009c6c766b52527ac46c766b52c36439003254686520706172616d65746572206163636f756e742053484f554c442062652032302d62797465206164647265737365732e6175f06168164e656f2e53746f726167652e476574436f6e74657874056173736574617c652f0f6c766b51527ac46c766b51c36c766b00c3617c65530f6c766b53527ac46203006c766b53c3616c756600c56b58616c756654c56b6c766b00527ac4616c766b00c3c001209c009c6c766b52527ac46c766b52c3643d003654686520706172616d6574657220747849642053484f554c442062652033322d62797465207472616e73616374696f6e20686173682e6175f06168164e656f2e53746f726167652e476574436f6e7465787406726566756e64617c657a0e6c766b51527ac46c766b51c36c766b00c3617c659e0e6c766b53527ac46203006c766b53c3616c756656c56b6c766b00527ac4616c766b00c3c001209c009c6c766b53527ac46c766b53c3643d003654686520706172616d6574657220747849642053484f554c442062652033322d62797465207472616e73616374696f6e20686173682e6175f06168164e656f2e53746f726167652e476574436f6e74657874067478496e666f617c65cd0d6c766b51527ac46c766b51c36c766b00c3617c65f10d6c766b52527ac46c766b52c3c0009c6c766b54527ac46c766b54c3640e00006c766b55527ac4622c006c766b52c36168174e656f2e52756e74696d652e446573657269616c697a656c766b55527ac46203006c766b55c3616c756653c56b6c766b00527ac4616c766b00c361681a4e656f2e426c6f636b636861696e2e476574436f6e74726163746c766b51527ac46c766b51c36424006c766b51c36168164e656f2e436f6e74726163742e497350617961626c65620400516c766b52527ac46203006c766b52c3616c75660114c56b6161682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b00527ac4006c766b51527ac46c766b00c361681d4e656f2e5472616e73616374696f6e2e4765745265666572656e6365736c766b52527ac4616c766b52c36c766b59527ac4006c766b5a527ac46210016c766b59c36c766b5ac3c36c766b5b527ac4616c766b5bc36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59c6c766b5c527ac46c766b5cc36434006c766b51c376632400756c766b5bc36168184e656f2e4f75747075742e476574536372697074486173686c766b51527ac46c766b5bc36168184e656f2e4f75747075742e4765745363726970744861736861682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173689c6c766b5d527ac46c766b5dc3640e00006c766b5e527ac462dd02616c766b5ac351936c766b5a527ac46c766b5ac36c766b59c3c09f63e7fe6c766b00c36168174e656f2e5472616e73616374696f6e2e476574486173686165dafc00a06c766b5f527ac46c766b5fc3640e00006c766b5e527ac46280026c766b00c361681a4e656f2e5472616e73616374696f6e2e4765744f7574707574736c766b53527ac4006c766b54527ac4616c766b53c36c766b60527ac4006c766b0111527ac46203016c766b60c36c766b0111c3c36c766b0112527ac4616c766b0112c36168184e656f2e4f75747075742e4765745363726970744861736861682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e6753637269707448617368907c907c9e6347006c766b0112c36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59c620400006c766b0113527ac46c766b0113c3642e00616c766b54c36c766b0112c36168134e656f2e4f75747075742e47657456616c7565936c766b54527ac461616c766b0111c351936c766b0111527ac46c766b0111c36c766b60c3c09f63f3fe6168164e656f2e53746f726167652e476574436f6e7465787408636f6e7472616374617c658b096c766b55527ac46c766b55c30b746f74616c537570706c79617c65030a6c766b56527ac46c766b56c36c766b54c3936c766b56527ac46c766b55c30b746f74616c537570706c796c766b56c361527265290a616168164e656f2e53746f726167652e476574436f6e74657874056173736574617c6514096c766b57527ac46c766b57c36c766b51c3617c6538096c766b58527ac46c766b57c36c766b51c36c766b58c36c766b54c39361527265260a61006c766b51c36c766b54c36152726596046161006c766b51c36c766b54c3615272087472616e7366657254c168124e656f2e52756e74696d652e4e6f7469667961516c766b5e527ac46203006c766b5ec3616c756600c56b084e455035204e454f616c75660111c56b6c766b00527ac4616c766b00c3c001149c009c6c766b59527ac46c766b59c36436002f54686520706172616d657465722066726f6d2053484f554c442062652032302d62797465206164647265737365732e6175f061682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b51527ac46c766b51c361681a4e656f2e5472616e73616374696f6e2e4765744f75747075747300c36c766b52527ac46c766b52c36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59e6c766b5a527ac46c766b5ac3640e00006c766b5b527ac46228036c766b52c36168184e656f2e4f75747075742e4765745363726970744861736861682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173689e6c766b5c527ac46c766b5cc3640e00006c766b5b527ac462bd026168164e656f2e53746f726167652e476574436f6e7465787406726566756e64617c65d5066c766b53527ac46c766b53c36c766b51c36168174e656f2e5472616e73616374696f6e2e47657448617368617c65df06c000a06c766b5d527ac46c766b5dc3640e00006c766b5b527ac4624b026c766b00c36168184e656f2e52756e74696d652e436865636b5769746e657373009c6c766b5e527ac46c766b5ec3640e00006c766b5b527ac4620f026168164e656f2e53746f726167652e476574436f6e74657874056173736574617c6528066c766b54527ac46c766b54c36c766b00c3617c654c066c766b55527ac46c766b52c36168134e656f2e4f75747075742e47657456616c75656c766b56527ac46c766b55c36c766b56c39f6c766b5f527ac46c766b5fc3640e00006c766b5b527ac46287016c766b55c36c766b56c39c6c766b60527ac46c766b60c36416006c766b54c36c766b00c3617c653f0761621f006c766b54c36c766b00c36c766b55c36c766b56c39461527265c606616c766b53c36c766b51c36168174e656f2e5472616e73616374696f6e2e476574486173686c766b00c3615272654007616168164e656f2e53746f726167652e476574436f6e7465787408636f6e7472616374617c6524056c766b57527ac46c766b57c30b746f74616c537570706c79617c659c056c766b58527ac46c766b58c36c766b56c3946c766b58527ac46c766b57c30b746f74616c537570706c796c766b58c361527265c205616c766b00c3006c766b56c3615272658c0061616c766b00c3006c766b56c3615272087472616e7366657254c168124e656f2e52756e74696d652e4e6f7469667961616c766b51c36168174e656f2e5472616e73616374696f6e2e476574486173686c766b00c3617c06726566756e6453c168124e656f2e52756e74696d652e4e6f7469667961516c766b5b527ac46203006c766b5bc3616c756656c56b6c766b00527ac46c766b51527ac46c766b52527ac46161682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726168174e656f2e5472616e73616374696f6e2e476574486173686c766b53527ac46153c5766c766b00c3007cc4766c766b51c3517cc4766c766b52c3527cc46c766b54527ac46168164e656f2e53746f726167652e476574436f6e74657874067478496e666f617c6587036c766b55527ac46c766b55c36c766b53c36c766b54c36168154e656f2e52756e74696d652e53657269616c697a6561527265470561616c756600c56b04434e454f616c756600c56b1c7b224e45502d35222c20224e45502d37222c20224e45502d3130227d616c756652c56b616168164e656f2e53746f726167652e476574436f6e7465787408636f6e7472616374617c65f3026c766b00527ac46c766b00c30b746f74616c537570706c79617c656b036c766b51527ac46203006c766b51c3616c756653c56b6c766b00527ac46c766b51527ac46c766b52527ac451616c75665fc56b6c766b00527ac46c766b51527ac46c766b52527ac46c766b53527ac4616c766b00c3c00114907c907c9e6311006c766b51c3c001149c009c620400516c766b57527ac46c766b57c3643e003754686520706172616d65746572732066726f6d20616e6420746f2053484f554c442062652032302d62797465206164647265737365732e6175f06c766b52c300a16c766b58527ac46c766b58c36433002c54686520706172616d6574657220616d6f756e74204d5553542062652067726561746572207468616e20302e6175f06c766b51c3616575f4009c6c766b59527ac46c766b59c3640e00006c766b5a527ac462a9016c766b00c36168184e656f2e52756e74696d652e436865636b5769746e6573736311006c766b00c36c766b53c39e620400006c766b5b527ac46c766b5bc3640e00006c766b5a527ac4625d016168164e656f2e53746f726167652e476574436f6e74657874056173736574617c6542016c766b54527ac46c766b54c36c766b00c3617c6566016c766b55527ac46c766b55c36c766b52c39f6c766b5c527ac46c766b5cc3640e00006c766b5a527ac462f7006c766b00c36c766b51c39c6c766b5d527ac46c766b5dc3640e00516c766b5a527ac462d2006c766b55c36c766b52c39c6c766b5e527ac46c766b5ec36416006c766b54c36c766b00c3617c65560261621f006c766b54c36c766b00c36c766b55c36c766b52c39461527265dd01616c766b54c36c766b51c3617c65bd006c766b56527ac46c766b54c36c766b51c36c766b56c36c766b52c39361527265ab01616c766b00c36c766b51c36c766b52c36152726517fc61616c766b00c36c766b51c36c766b52c3615272087472616e7366657254c168124e656f2e52756e74696d652e4e6f7469667961516c766b5a527ac46203006c766b5ac3616c756653c56b6c766b00527ac46c766b51527ac4616152c5766c766b00c3007cc4766c766b51c3517cc46c766b52527ac46203006c766b52c3616c756654c56b6c766b00527ac46c766b51527ac4616c766b00c351c301007e6c766b51c37e6c766b52527ac46c766b00c300c36c766b52c3617c680f4e656f2e53746f726167652e4765746c766b53527ac46203006c766b53c3616c756654c56b6c766b00527ac46c766b51527ac4616c766b00c351c301007e6c766b51c37e6c766b52527ac46c766b00c300c36c766b52c3617c680f4e656f2e53746f726167652e4765746c766b53527ac46203006c766b53c3616c756654c56b6c766b00527ac46c766b51527ac46c766b52527ac4616c766b00c351c301007e6c766b51c37e6c766b53527ac46c766b00c300c36c766b53c36c766b52c3615272680f4e656f2e53746f726167652e50757461616c756654c56b6c766b00527ac46c766b51527ac46c766b52527ac4616c766b00c351c301007e6c766b51c37e6c766b53527ac46c766b00c300c36c766b53c36c766b52c3615272680f4e656f2e53746f726167652e50757461616c756653c56b6c766b00527ac46c766b51527ac4616c766b00c351c301007e6c766b51c37e6c766b52527ac46c766b00c300c36c766b52c3617c68124e656f2e53746f726167652e44656c65746561616c756654c56b6c766b00527ac46c766b51527ac46c766b52527ac4616c766b00c351c301007e6c766b51c37e6c766b53527ac46c766b00c300c36c766b53c36c766b52c3615272680f4e656f2e53746f726167652e50757461616c7566"
            }
        ],
        "script": "14e8e3ce08268d16d867101feaf8c0ea130a923aba51c106726566756e646760cb4daf7bd65d47b3b4e6cb4101cf9d5ea074c0f1",
        "gas": "0",
        "blockhash": "0x60f6ac82f61cea065cc94f8c8030749a4914bdf0d1324d021d3d882554848c49",
        "confirmations": 1,
        "blocktime": 1536917208
    }
}

refund 1st step application log:

{
	"txid": "0x243528748565671e8714d39cefebb9c4f136bfa11e99dab0ec4bd3a7aa940fcc",
	"vmstate": "HALT, BREAK",
	"gas_consumed": "4.665",
	"stack": [],
	"notifications": [{
		"contract": "0xc074a05e9dcf0141cbe6b4b3475dd67baf4dcb60",
		"state": {
			"type": "Array",
			"value": [{
				"type": "ByteArray",
				"value": "7472616e73666572"
			}, {
				"type": "ByteArray",
				"value": "e8e3ce08268d16d867101feaf8c0ea130a923aba"
			}, {
				"type": "ByteArray",
				"value": ""
			}, {
				"type": "Integer",
				"value": "100000000"
			}]
		}
	}, {
		"contract": "0xc074a05e9dcf0141cbe6b4b3475dd67baf4dcb60",
		"state": {
			"type": "Array",
			"value": [{
				"type": "ByteArray",
				"value": "726566756e64"
			}, {
				"type": "ByteArray",
				"value": "cc0f94aaa7d34becb0da991ea1bf36f1c4b9ebef9cd314871e67658574283524"
			}, {
				"type": "ByteArray",
				"value": "e8e3ce08268d16d867101feaf8c0ea130a923aba"
			}]
		}
	}]
}

refund 2nd step transaction:

[NOTE]

Type: ContractTransaction

Input: from CNEO contract address

Output: to user's address

Scripts: witness of CNEO

{
    "jsonrpc": "2.0",
    "id": 1,
    "result": {
        "txid": "0x64a36c933acc0350ac8c76e05c0e7000816102d4865a250bc9b13fbb67061fac",
        "size": 6969,
        "type": "ContractTransaction",
        "version": 0,
        "attributes": [],
        "vin": [
            {
                "txid": "0x243528748565671e8714d39cefebb9c4f136bfa11e99dab0ec4bd3a7aa940fcc",
                "vout": 0
            }
        ],
        "vout": [
            {
                "n": 0,
                "asset": "0xc56f33fc6ecfcd0c225c4ab356fee59390af8560be0e930faebe74a6daff7c9b",
                "value": "1",
                "address": "Ad1HKAATNmFT5buNgSxspbW68f4XVSssSw"
            }
        ],
        "sys_fee": "0",
        "net_fee": "0",
        "scripts": [
            {
                "invocation": "520131",
                "verification": "012fc56b6c766b00527ac46c766b51527ac4616168164e656f2e52756e74696d652e47657454726967676572009c6c766b52527ac46c766b52c36418046161682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b53527ac46c766b53c36168194e656f2e5472616e73616374696f6e2e476574496e707574736c766b54527ac46c766b53c361681a4e656f2e5472616e73616374696f6e2e4765744f7574707574736c766b55527ac4616c766b54c36c766b59527ac4006c766b5a527ac4622b016c766b59c36c766b5ac3c36c766b5b527ac4616c766b5bc36168124e656f2e496e7075742e476574496e646578009c6c766b5c527ac46c766b5cc364de00616168164e656f2e53746f726167652e476574436f6e7465787406726566756e64617c6545176c766b5d527ac46c766b5dc36c766b5bc36168114e656f2e496e7075742e47657448617368617c6555176c766b5e527ac46c766b5ec3c000a06c766b5f527ac46c766b5fc3646f00616c766b54c3c051907c907c9e6310006c766b55c3c0519c009c620400516c766b60527ac46c766b60c3640f00006c766b0111527ac4620f076c766b55c300c36168184e656f2e4f75747075742e476574536372697074486173686c766b5ec39c6c766b0111527ac462dc0661616c766b5ac351936c766b5a527ac46c766b5ac36c766b59c3c09f63ccfe61682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173686c766b56527ac4006c766b57527ac4616c766b53c361681d4e656f2e5472616e73616374696f6e2e4765745265666572656e6365736c766b0112527ac4006c766b0113527ac462e9006c766b0112c36c766b0113c3c36c766b0114527ac4616c766b0114c36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59e6c766b0115527ac46c766b0115c3640f00006c766b0111527ac462d0056c766b0114c36168184e656f2e4f75747075742e476574536372697074486173686c766b56c39c6c766b0116527ac46c766b0116c3642c006c766b57c36c766b0114c36168134e656f2e4f75747075742e47657456616c7565936c766b57527ac4616c766b0113c351936c766b0113527ac46c766b0113c36c766b0112c3c09f630cff006c766b58527ac4616c766b55c36c766b0117527ac4006c766b0118527ac4628b006c766b0117c36c766b0118c3c36c766b0119527ac4616c766b0119c36168184e656f2e4f75747075742e476574536372697074486173686c766b56c39c6c766b011a527ac46c766b011ac3642c006c766b58c36c766b0119c36168134e656f2e4f75747075742e47657456616c7565936c766b58527ac4616c766b0118c351936c766b0118527ac46c766b0118c36c766b0117c3c09f636aff6c766b58c36c766b57c39c6c766b0111527ac4627c046168164e656f2e52756e74696d652e47657454726967676572609c6c766b011b527ac46c766b011bc3649e026161682b53797374656d2e457865637574696f6e456e67696e652e47657443616c6c696e67536372697074486173686c766b011c527ac46c766b00c30962616c616e63654f66876c766b011d527ac46c766b011dc36419006c766b51c300c36165f7036c766b0111527ac462e2036c766b00c308646563696d616c73876c766b011e527ac46c766b011ec3641200616570046c766b0111527ac462b3036c766b00c30f676574526566756e64546172676574876c766b011f527ac46c766b011fc36419006c766b51c300c361653b046c766b0111527ac46276036c766b00c3096765745478496e666f876c766b0120527ac46c766b0120c36419006c766b51c300c36165b1046c766b0111527ac4623f036c766b00c30a6d696e74546f6b656e73876c766b0121527ac46c766b0121c36412006165e6056c766b0111527ac4620e036c766b00c3046e616d65876c766b0122527ac46c766b0122c36412006165200a6c766b0111527ac462e3026c766b00c306726566756e64876c766b0123527ac46c766b0123c36419006c766b51c300c36165fc096c766b0111527ac462af026c766b00c30673796d626f6c876c766b0124527ac46c766b0124c36412006165f70e6c766b0111527ac46282026c766b00c312737570706f727465645374616e6461726473876c766b0125527ac46c766b0125c36412006165ca0e6c766b0111527ac46249026c766b00c30b746f74616c537570706c79876c766b0126527ac46c766b0126c36412006165bc0e6c766b0111527ac46217026c766b00c3087472616e73666572876c766b0127527ac46c766b0127c36441006c766b51c300c36c766b51c351c36c766b51c352c36c766b011cc361537951795572755172755279527954727552727565d60e6c766b0111527ac462b9016162a9016168164e656f2e52756e74696d652e47657454726967676572519c6c766b0128527ac46c766b0128c3647d016161682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173686c766b0129527ac461682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b012a527ac4616c766b012ac361681a4e656f2e5472616e73616374696f6e2e4765744f7574707574736c766b012b527ac4006c766b012c527ac462bb006c766b012bc36c766b012cc3c36c766b012d527ac4616c766b012dc36168184e656f2e4f75747075742e476574536372697074486173686c766b0129c3907c907c9e6347006c766b012dc36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59e620400006c766b012e527ac46c766b012ec3640f00006c766b0111527ac4623d00616c766b012cc351936c766b012c527ac46c766b012cc36c766b012bc3c09f633aff516c766b0111527ac4620f00006c766b0111527ac46203006c766b0111c3616c756654c56b6c766b00527ac4616c766b00c3c001149c009c6c766b52527ac46c766b52c36439003254686520706172616d65746572206163636f756e742053484f554c442062652032302d62797465206164647265737365732e6175f06168164e656f2e53746f726167652e476574436f6e74657874056173736574617c652f0f6c766b51527ac46c766b51c36c766b00c3617c65530f6c766b53527ac46203006c766b53c3616c756600c56b58616c756654c56b6c766b00527ac4616c766b00c3c001209c009c6c766b52527ac46c766b52c3643d003654686520706172616d6574657220747849642053484f554c442062652033322d62797465207472616e73616374696f6e20686173682e6175f06168164e656f2e53746f726167652e476574436f6e7465787406726566756e64617c657a0e6c766b51527ac46c766b51c36c766b00c3617c659e0e6c766b53527ac46203006c766b53c3616c756656c56b6c766b00527ac4616c766b00c3c001209c009c6c766b53527ac46c766b53c3643d003654686520706172616d6574657220747849642053484f554c442062652033322d62797465207472616e73616374696f6e20686173682e6175f06168164e656f2e53746f726167652e476574436f6e74657874067478496e666f617c65cd0d6c766b51527ac46c766b51c36c766b00c3617c65f10d6c766b52527ac46c766b52c3c0009c6c766b54527ac46c766b54c3640e00006c766b55527ac4622c006c766b52c36168174e656f2e52756e74696d652e446573657269616c697a656c766b55527ac46203006c766b55c3616c756653c56b6c766b00527ac4616c766b00c361681a4e656f2e426c6f636b636861696e2e476574436f6e74726163746c766b51527ac46c766b51c36424006c766b51c36168164e656f2e436f6e74726163742e497350617961626c65620400516c766b52527ac46203006c766b52c3616c75660114c56b6161682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b00527ac4006c766b51527ac46c766b00c361681d4e656f2e5472616e73616374696f6e2e4765745265666572656e6365736c766b52527ac4616c766b52c36c766b59527ac4006c766b5a527ac46210016c766b59c36c766b5ac3c36c766b5b527ac4616c766b5bc36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59c6c766b5c527ac46c766b5cc36434006c766b51c376632400756c766b5bc36168184e656f2e4f75747075742e476574536372697074486173686c766b51527ac46c766b5bc36168184e656f2e4f75747075742e4765745363726970744861736861682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173689c6c766b5d527ac46c766b5dc3640e00006c766b5e527ac462dd02616c766b5ac351936c766b5a527ac46c766b5ac36c766b59c3c09f63e7fe6c766b00c36168174e656f2e5472616e73616374696f6e2e476574486173686165dafc00a06c766b5f527ac46c766b5fc3640e00006c766b5e527ac46280026c766b00c361681a4e656f2e5472616e73616374696f6e2e4765744f7574707574736c766b53527ac4006c766b54527ac4616c766b53c36c766b60527ac4006c766b0111527ac46203016c766b60c36c766b0111c3c36c766b0112527ac4616c766b0112c36168184e656f2e4f75747075742e4765745363726970744861736861682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e6753637269707448617368907c907c9e6347006c766b0112c36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59c620400006c766b0113527ac46c766b0113c3642e00616c766b54c36c766b0112c36168134e656f2e4f75747075742e47657456616c7565936c766b54527ac461616c766b0111c351936c766b0111527ac46c766b0111c36c766b60c3c09f63f3fe6168164e656f2e53746f726167652e476574436f6e7465787408636f6e7472616374617c658b096c766b55527ac46c766b55c30b746f74616c537570706c79617c65030a6c766b56527ac46c766b56c36c766b54c3936c766b56527ac46c766b55c30b746f74616c537570706c796c766b56c361527265290a616168164e656f2e53746f726167652e476574436f6e74657874056173736574617c6514096c766b57527ac46c766b57c36c766b51c3617c6538096c766b58527ac46c766b57c36c766b51c36c766b58c36c766b54c39361527265260a61006c766b51c36c766b54c36152726596046161006c766b51c36c766b54c3615272087472616e7366657254c168124e656f2e52756e74696d652e4e6f7469667961516c766b5e527ac46203006c766b5ec3616c756600c56b084e455035204e454f616c75660111c56b6c766b00527ac4616c766b00c3c001149c009c6c766b59527ac46c766b59c36436002f54686520706172616d657465722066726f6d2053484f554c442062652032302d62797465206164647265737365732e6175f061682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b51527ac46c766b51c361681a4e656f2e5472616e73616374696f6e2e4765744f75747075747300c36c766b52527ac46c766b52c36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59e6c766b5a527ac46c766b5ac3640e00006c766b5b527ac46228036c766b52c36168184e656f2e4f75747075742e4765745363726970744861736861682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173689e6c766b5c527ac46c766b5cc3640e00006c766b5b527ac462bd026168164e656f2e53746f726167652e476574436f6e7465787406726566756e64617c65d5066c766b53527ac46c766b53c36c766b51c36168174e656f2e5472616e73616374696f6e2e47657448617368617c65df06c000a06c766b5d527ac46c766b5dc3640e00006c766b5b527ac4624b026c766b00c36168184e656f2e52756e74696d652e436865636b5769746e657373009c6c766b5e527ac46c766b5ec3640e00006c766b5b527ac4620f026168164e656f2e53746f726167652e476574436f6e74657874056173736574617c6528066c766b54527ac46c766b54c36c766b00c3617c654c066c766b55527ac46c766b52c36168134e656f2e4f75747075742e47657456616c75656c766b56527ac46c766b55c36c766b56c39f6c766b5f527ac46c766b5fc3640e00006c766b5b527ac46287016c766b55c36c766b56c39c6c766b60527ac46c766b60c36416006c766b54c36c766b00c3617c653f0761621f006c766b54c36c766b00c36c766b55c36c766b56c39461527265c606616c766b53c36c766b51c36168174e656f2e5472616e73616374696f6e2e476574486173686c766b00c3615272654007616168164e656f2e53746f726167652e476574436f6e7465787408636f6e7472616374617c6524056c766b57527ac46c766b57c30b746f74616c537570706c79617c659c056c766b58527ac46c766b58c36c766b56c3946c766b58527ac46c766b57c30b746f74616c537570706c796c766b58c361527265c205616c766b00c3006c766b56c3615272658c0061616c766b00c3006c766b56c3615272087472616e7366657254c168124e656f2e52756e74696d652e4e6f7469667961616c766b51c36168174e656f2e5472616e73616374696f6e2e476574486173686c766b00c3617c06726566756e6453c168124e656f2e52756e74696d652e4e6f7469667961516c766b5b527ac46203006c766b5bc3616c756656c56b6c766b00527ac46c766b51527ac46c766b52527ac46161682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726168174e656f2e5472616e73616374696f6e2e476574486173686c766b53527ac46153c5766c766b00c3007cc4766c766b51c3517cc4766c766b52c3527cc46c766b54527ac46168164e656f2e53746f726167652e476574436f6e74657874067478496e666f617c6587036c766b55527ac46c766b55c36c766b53c36c766b54c36168154e656f2e52756e74696d652e53657269616c697a6561527265470561616c756600c56b04434e454f616c756600c56b1c7b224e45502d35222c20224e45502d37222c20224e45502d3130227d616c756652c56b616168164e656f2e53746f726167652e476574436f6e7465787408636f6e7472616374617c65f3026c766b00527ac46c766b00c30b746f74616c537570706c79617c656b036c766b51527ac46203006c766b51c3616c756653c56b6c766b00527ac46c766b51527ac46c766b52527ac451616c75665fc56b6c766b00527ac46c766b51527ac46c766b52527ac46c766b53527ac4616c766b00c3c00114907c907c9e6311006c766b51c3c001149c009c620400516c766b57527ac46c766b57c3643e003754686520706172616d65746572732066726f6d20616e6420746f2053484f554c442062652032302d62797465206164647265737365732e6175f06c766b52c300a16c766b58527ac46c766b58c36433002c54686520706172616d6574657220616d6f756e74204d5553542062652067726561746572207468616e20302e6175f06c766b51c3616575f4009c6c766b59527ac46c766b59c3640e00006c766b5a527ac462a9016c766b00c36168184e656f2e52756e74696d652e436865636b5769746e6573736311006c766b00c36c766b53c39e620400006c766b5b527ac46c766b5bc3640e00006c766b5a527ac4625d016168164e656f2e53746f726167652e476574436f6e74657874056173736574617c6542016c766b54527ac46c766b54c36c766b00c3617c6566016c766b55527ac46c766b55c36c766b52c39f6c766b5c527ac46c766b5cc3640e00006c766b5a527ac462f7006c766b00c36c766b51c39c6c766b5d527ac46c766b5dc3640e00516c766b5a527ac462d2006c766b55c36c766b52c39c6c766b5e527ac46c766b5ec36416006c766b54c36c766b00c3617c65560261621f006c766b54c36c766b00c36c766b55c36c766b52c39461527265dd01616c766b54c36c766b51c3617c65bd006c766b56527ac46c766b54c36c766b51c36c766b56c36c766b52c39361527265ab01616c766b00c36c766b51c36c766b52c36152726517fc61616c766b00c36c766b51c36c766b52c3615272087472616e7366657254c168124e656f2e52756e74696d652e4e6f7469667961516c766b5a527ac46203006c766b5ac3616c756653c56b6c766b00527ac46c766b51527ac4616152c5766c766b00c3007cc4766c766b51c3517cc46c766b52527ac46203006c766b52c3616c756654c56b6c766b00527ac46c766b51527ac4616c766b00c351c301007e6c766b51c37e6c766b52527ac46c766b00c300c36c766b52c3617c680f4e656f2e53746f726167652e4765746c766b53527ac46203006c766b53c3616c756654c56b6c766b00527ac46c766b51527ac4616c766b00c351c301007e6c766b51c37e6c766b52527ac46c766b00c300c36c766b52c3617c680f4e656f2e53746f726167652e4765746c766b53527ac46203006c766b53c3616c756654c56b6c766b00527ac46c766b51527ac46c766b52527ac4616c766b00c351c301007e6c766b51c37e6c766b53527ac46c766b00c300c36c766b53c36c766b52c3615272680f4e656f2e53746f726167652e50757461616c756654c56b6c766b00527ac46c766b51527ac46c766b52527ac4616c766b00c351c301007e6c766b51c37e6c766b53527ac46c766b00c300c36c766b53c36c766b52c3615272680f4e656f2e53746f726167652e50757461616c756653c56b6c766b00527ac46c766b51527ac4616c766b00c351c301007e6c766b51c37e6c766b52527ac46c766b00c300c36c766b52c3617c68124e656f2e53746f726167652e44656c65746561616c756654c56b6c766b00527ac46c766b51527ac46c766b52527ac4616c766b00c351c301007e6c766b51c37e6c766b53527ac46c766b00c300c36c766b53c36c766b52c3615272680f4e656f2e53746f726167652e50757461616c7566"
            }
        ],
        "blockhash": "0x8d2b4d0b4c16294e733a54f2adc29e05442fced393fd4161fa728aabf8be9520",
        "confirmations": 2,
        "blocktime": 1536917432
    }
}

refund 2nd step application log:

refund 2nd step is a ContractTransaction, so no application log.

合约说明:

CNEO 是由 NGD(NEO Global Development)发布的符合 NEP-5 规范的合约资产,CNEO 可由 NEO 一比一地对换,并且支持退回操作。该合约的目的是将 NEO 进行全局资产的合约映射,使全局资产 NEO 可以方便地在合约内部流转,支持由合约调用转账。

NGD 为社区提供了 CNEO 这样一个公用的合约,各项目方均可将其用到自己的项目中。因为智能合约底层限制、也为了去中心化和防止权力滥用,我们没有在 CNEO 中添加提取 GAS 的功能,如果项目方有中心化提取 GAS 的需求,可以 Fork 该代码,然后自行开发。

技术介绍:

NEP-5 规范中的方法:

方法 参数 返回值 描述
balanceOf byte[] account int 获得某个账户 CNEO 的余额,返回结果为真实值 × 10⁸
decimals --- int 获得 CNEO 精度,返回值为常量 8
name --- string 获得合约名称,返回值为常量 NEP5 NEO
symbol --- string 获得合约符号,返回值为常量 CNEO
totalSupply --- int 获得 CNEO 总发行量,返回结果为真实值 × 10⁸。因为 CNEO 与 NEO 为一比一兑换,所以合约地址中 NEO 的数量等于 CNEO 的总发行量
transfer byte[] from, byte[] to, int amount bool 转账方法,将 CNEO 从发送者(from)账户,转到接收者(to)账户,转账金额为 amount;from 与 to 为 Script Hash,amount 为实际转账金额 × 10⁸。该方法同时支持用户调用和合约调用。

该合约为了支持 NEO 与 CNEO 互换,除了满足 NEP-5 规范中的方法其它方法:

方法 参数 返回值 描述
getRefundTarget byte[] txId byte[] 获得某个 UTXO 是谁待退回的,参数为 UTXO 中的交易 ID(确定一个 UTXO 由 txId 和 output 索引共同完成,这里 output 索引默认为 0),返回值为这个 UTXO 的退回者,他可以将这个 UTXO 作为交易输入,将 NEO 从 CNEO 地址中取走。
getTxInfo byte[] txId TransferInfo 获得某个交易 ID 的详细转账信息,在以下 4 种情况中可记录 TxInfo:mintTokens, Refund, transfer, transferAPP。
mintTokens --- bool CNEO 的铸币方法。用户通过发起 InvocationTransaction,将 NEO 转给 CNEO 合约地址,并且调用 mintTokens 完成 NEO 到 CNEO 的转换工作。合约调用成功后,用户资产中将会增加与兑换的 NEO 数额相等的 CNEO。注意事项
refund byte[] from bool 用户将 CNEO 提取,变成 NEO 总共分两步。第一步,发起一笔 InvocationTransaction 其中包含一笔从 CNEO 地址到 CNEO 地址的 NEO 转账(转账金额为用户想退回的 NEO 的数量),并调用 refund 方法(参数为退回者的 Script Hash)。合约调用成功后,将自动销毁与退回数量相等的 CNEO,并把该交易的第 0 号 output 标记为所属于该用户。第二步,用户构造一个交易将第一步标记过的 UTXO 作为交易输入,交易输出为用户自己的地址,从而将 NEO 从 CNEO 地址中取走。
supportedStandards --- string NEP-10 规范,返回合约所支持的 NEP 标准,返回值为常量:"{"NEP-5", "NEP-7", "NEP-10"}"

NEP-5 规范中的通知:

通知 参数 描述
transfer byte[] from, byte[] to, int value 通知中包含转账的 3 个要素,发送者 (from),接收者 (to) ,转账金额 (value), 转账资产默认为 CNEO

该合约实现的其它通知:

通知 参数 描述
refund byte[] txid, byte[] who 通知中包含转账的 2 个要素,待退回的 UTXO(txid),退回者的 Script Hash(who)

[注意]

在 mintTokens 的时候请注意,InvocationTransaction 的 Inputs 和 Output 加起来不应该超过60个,否则在执行时所需的手续费会超过 10 NEO 的免费额度。如果有大量 NEO 的 UTXO 需要换成 CNEO,建议先进行一个普通转账,将 UTXO 合并,然后再进行 mintTokens 操作。

示例

以下是 mintTokensrefund 的交易结构以及 Application Log,供开发者参考。

mintTokens 交易结构:

[说明]

Type: InvocationTransaction

Input: 来自用户的地址

Output: CNEO 合约地址

Script: 调用 CNEO 合约的 mintTokens 方法

{
    "jsonrpc": "2.0",
    "id": 1,
    "result": {
        "txid": "0x109727713604e5c448de8eaea8708b8cabe0fe7c18296741be150b5cf30991c5",
        "size": 246,
        "type": "InvocationTransaction",
        "version": 1,
        "attributes": [],
        "vin": [
            {
                "txid": "0x852b636e3749635a212c7998a23a86f99a16937e8fc47666b31ab92237c8819f",
                "vout": 0
            }
        ],
        "vout": [
            {
                "n": 0,
                "asset": "0xc56f33fc6ecfcd0c225c4ab356fee59390af8560be0e930faebe74a6daff7c9b",
                "value": "1",
                "address": "AQbg4gk1Q6FaGCtfEKu2ETSMP6U25YDVR3"
            }
        ],
        "sys_fee": "0",
        "net_fee": "0",
        "scripts": [
            {
                "invocation": "40b830e229473454ad3048e844806d983913cf8cb57766453fd851d7c8fe737741f088a14a95dfc083b4434ad8d02de9b449c2e0b03ac79ff6857a546796d495cd",
                "verification": "21037ebe29fff57d8c177870e9d9eecb046b27fc290ccbac88a0e3da8bac5daa630dac"
            }
        ],
        "script": "000a6d696e74546f6b656e736760cb4daf7bd65d47b3b4e6cb4101cf9d5ea074c0f1663d18a12d30db8f30",
        "gas": "0",
        "blockhash": "0x014f9f9b5af29bf10b4108330f982914570d7ffcb4387ccb2251d3c1eb0396c9",
        "confirmations": 2,
        "blocktime": 1536916579
    }
}

mintTokens application log:

{
	"txid": "0x109727713604e5c448de8eaea8708b8cabe0fe7c18296741be150b5cf30991c5",
	"vmstate": "HALT, BREAK",
	"gas_consumed": "4.648",
	"stack": [],
	"notifications": [{
		"contract": "0xc074a05e9dcf0141cbe6b4b3475dd67baf4dcb60",
		"state": {
			"type": "Array",
			"value": [{
					"type": "ByteArray",
					"value": "7472616e73666572"
				},
				{
					"type": "ByteArray",
					"value": ""
				},
				{
					"type": "ByteArray",
					"value": "e8e3ce08268d16d867101feaf8c0ea130a923aba"
				},
				{
					"type": "Integer",
					"value": "100000000"
				}
			]
		}
	}]
}

refund 第一步时的交易结构:

[说明]

Type: InvocationTransaction

Input: 来自 CNEO 合约地址

Output: 转到 CNEO 合约地址 (与 input 相同)

Script: 调用 refund 方法,设置参数为退回者的 Script Hash

Scripts: 需要两个 witness: 1、CNEO 合约的 witness; 2、用户的 witness(附加见证人)

{
    "jsonrpc": "2.0",
    "id": 1,
    "result": {
        "txid": "0x243528748565671e8714d39cefebb9c4f136bfa11e99dab0ec4bd3a7aa940fcc",
        "size": 7145,
        "type": "InvocationTransaction",
        "version": 0,
        "attributes": [
            {
                "usage": "Script",
                "data": "e8e3ce08268d16d867101feaf8c0ea130a923aba"
            }
        ],
        "vin": [
            {
                "txid": "0x109727713604e5c448de8eaea8708b8cabe0fe7c18296741be150b5cf30991c5",
                "vout": 0
            }
        ],
        "vout": [
            {
                "n": 0,
                "asset": "0xc56f33fc6ecfcd0c225c4ab356fee59390af8560be0e930faebe74a6daff7c9b",
                "value": "1",
                "address": "AQbg4gk1Q6FaGCtfEKu2ETSMP6U25YDVR3"
            }
        ],
        "sys_fee": "0",
        "net_fee": "0",
        "scripts": [
            {
                "invocation": "4097b1e356ea575ec21c280d2d0ef60e5f447547f9fca4efd58f84e8c874d33ef0d6bd9f20511017f08ce6a968d0ac36df3ccdf9b2ef186765f52fa64e4cc59a91",
                "verification": "21037ebe29fff57d8c177870e9d9eecb046b27fc290ccbac88a0e3da8bac5daa630dac"
            },
            {
                "invocation": "520131",
                "verification": "012fc56b6c766b00527ac46c766b51527ac4616168164e656f2e52756e74696d652e47657454726967676572009c6c766b52527ac46c766b52c36418046161682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b53527ac46c766b53c36168194e656f2e5472616e73616374696f6e2e476574496e707574736c766b54527ac46c766b53c361681a4e656f2e5472616e73616374696f6e2e4765744f7574707574736c766b55527ac4616c766b54c36c766b59527ac4006c766b5a527ac4622b016c766b59c36c766b5ac3c36c766b5b527ac4616c766b5bc36168124e656f2e496e7075742e476574496e646578009c6c766b5c527ac46c766b5cc364de00616168164e656f2e53746f726167652e476574436f6e7465787406726566756e64617c6545176c766b5d527ac46c766b5dc36c766b5bc36168114e656f2e496e7075742e47657448617368617c6555176c766b5e527ac46c766b5ec3c000a06c766b5f527ac46c766b5fc3646f00616c766b54c3c051907c907c9e6310006c766b55c3c0519c009c620400516c766b60527ac46c766b60c3640f00006c766b0111527ac4620f076c766b55c300c36168184e656f2e4f75747075742e476574536372697074486173686c766b5ec39c6c766b0111527ac462dc0661616c766b5ac351936c766b5a527ac46c766b5ac36c766b59c3c09f63ccfe61682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173686c766b56527ac4006c766b57527ac4616c766b53c361681d4e656f2e5472616e73616374696f6e2e4765745265666572656e6365736c766b0112527ac4006c766b0113527ac462e9006c766b0112c36c766b0113c3c36c766b0114527ac4616c766b0114c36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59e6c766b0115527ac46c766b0115c3640f00006c766b0111527ac462d0056c766b0114c36168184e656f2e4f75747075742e476574536372697074486173686c766b56c39c6c766b0116527ac46c766b0116c3642c006c766b57c36c766b0114c36168134e656f2e4f75747075742e47657456616c7565936c766b57527ac4616c766b0113c351936c766b0113527ac46c766b0113c36c766b0112c3c09f630cff006c766b58527ac4616c766b55c36c766b0117527ac4006c766b0118527ac4628b006c766b0117c36c766b0118c3c36c766b0119527ac4616c766b0119c36168184e656f2e4f75747075742e476574536372697074486173686c766b56c39c6c766b011a527ac46c766b011ac3642c006c766b58c36c766b0119c36168134e656f2e4f75747075742e47657456616c7565936c766b58527ac4616c766b0118c351936c766b0118527ac46c766b0118c36c766b0117c3c09f636aff6c766b58c36c766b57c39c6c766b0111527ac4627c046168164e656f2e52756e74696d652e47657454726967676572609c6c766b011b527ac46c766b011bc3649e026161682b53797374656d2e457865637574696f6e456e67696e652e47657443616c6c696e67536372697074486173686c766b011c527ac46c766b00c30962616c616e63654f66876c766b011d527ac46c766b011dc36419006c766b51c300c36165f7036c766b0111527ac462e2036c766b00c308646563696d616c73876c766b011e527ac46c766b011ec3641200616570046c766b0111527ac462b3036c766b00c30f676574526566756e64546172676574876c766b011f527ac46c766b011fc36419006c766b51c300c361653b046c766b0111527ac46276036c766b00c3096765745478496e666f876c766b0120527ac46c766b0120c36419006c766b51c300c36165b1046c766b0111527ac4623f036c766b00c30a6d696e74546f6b656e73876c766b0121527ac46c766b0121c36412006165e6056c766b0111527ac4620e036c766b00c3046e616d65876c766b0122527ac46c766b0122c36412006165200a6c766b0111527ac462e3026c766b00c306726566756e64876c766b0123527ac46c766b0123c36419006c766b51c300c36165fc096c766b0111527ac462af026c766b00c30673796d626f6c876c766b0124527ac46c766b0124c36412006165f70e6c766b0111527ac46282026c766b00c312737570706f727465645374616e6461726473876c766b0125527ac46c766b0125c36412006165ca0e6c766b0111527ac46249026c766b00c30b746f74616c537570706c79876c766b0126527ac46c766b0126c36412006165bc0e6c766b0111527ac46217026c766b00c3087472616e73666572876c766b0127527ac46c766b0127c36441006c766b51c300c36c766b51c351c36c766b51c352c36c766b011cc361537951795572755172755279527954727552727565d60e6c766b0111527ac462b9016162a9016168164e656f2e52756e74696d652e47657454726967676572519c6c766b0128527ac46c766b0128c3647d016161682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173686c766b0129527ac461682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b012a527ac4616c766b012ac361681a4e656f2e5472616e73616374696f6e2e4765744f7574707574736c766b012b527ac4006c766b012c527ac462bb006c766b012bc36c766b012cc3c36c766b012d527ac4616c766b012dc36168184e656f2e4f75747075742e476574536372697074486173686c766b0129c3907c907c9e6347006c766b012dc36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59e620400006c766b012e527ac46c766b012ec3640f00006c766b0111527ac4623d00616c766b012cc351936c766b012c527ac46c766b012cc36c766b012bc3c09f633aff516c766b0111527ac4620f00006c766b0111527ac46203006c766b0111c3616c756654c56b6c766b00527ac4616c766b00c3c001149c009c6c766b52527ac46c766b52c36439003254686520706172616d65746572206163636f756e742053484f554c442062652032302d62797465206164647265737365732e6175f06168164e656f2e53746f726167652e476574436f6e74657874056173736574617c652f0f6c766b51527ac46c766b51c36c766b00c3617c65530f6c766b53527ac46203006c766b53c3616c756600c56b58616c756654c56b6c766b00527ac4616c766b00c3c001209c009c6c766b52527ac46c766b52c3643d003654686520706172616d6574657220747849642053484f554c442062652033322d62797465207472616e73616374696f6e20686173682e6175f06168164e656f2e53746f726167652e476574436f6e7465787406726566756e64617c657a0e6c766b51527ac46c766b51c36c766b00c3617c659e0e6c766b53527ac46203006c766b53c3616c756656c56b6c766b00527ac4616c766b00c3c001209c009c6c766b53527ac46c766b53c3643d003654686520706172616d6574657220747849642053484f554c442062652033322d62797465207472616e73616374696f6e20686173682e6175f06168164e656f2e53746f726167652e476574436f6e74657874067478496e666f617c65cd0d6c766b51527ac46c766b51c36c766b00c3617c65f10d6c766b52527ac46c766b52c3c0009c6c766b54527ac46c766b54c3640e00006c766b55527ac4622c006c766b52c36168174e656f2e52756e74696d652e446573657269616c697a656c766b55527ac46203006c766b55c3616c756653c56b6c766b00527ac4616c766b00c361681a4e656f2e426c6f636b636861696e2e476574436f6e74726163746c766b51527ac46c766b51c36424006c766b51c36168164e656f2e436f6e74726163742e497350617961626c65620400516c766b52527ac46203006c766b52c3616c75660114c56b6161682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b00527ac4006c766b51527ac46c766b00c361681d4e656f2e5472616e73616374696f6e2e4765745265666572656e6365736c766b52527ac4616c766b52c36c766b59527ac4006c766b5a527ac46210016c766b59c36c766b5ac3c36c766b5b527ac4616c766b5bc36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59c6c766b5c527ac46c766b5cc36434006c766b51c376632400756c766b5bc36168184e656f2e4f75747075742e476574536372697074486173686c766b51527ac46c766b5bc36168184e656f2e4f75747075742e4765745363726970744861736861682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173689c6c766b5d527ac46c766b5dc3640e00006c766b5e527ac462dd02616c766b5ac351936c766b5a527ac46c766b5ac36c766b59c3c09f63e7fe6c766b00c36168174e656f2e5472616e73616374696f6e2e476574486173686165dafc00a06c766b5f527ac46c766b5fc3640e00006c766b5e527ac46280026c766b00c361681a4e656f2e5472616e73616374696f6e2e4765744f7574707574736c766b53527ac4006c766b54527ac4616c766b53c36c766b60527ac4006c766b0111527ac46203016c766b60c36c766b0111c3c36c766b0112527ac4616c766b0112c36168184e656f2e4f75747075742e4765745363726970744861736861682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e6753637269707448617368907c907c9e6347006c766b0112c36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59c620400006c766b0113527ac46c766b0113c3642e00616c766b54c36c766b0112c36168134e656f2e4f75747075742e47657456616c7565936c766b54527ac461616c766b0111c351936c766b0111527ac46c766b0111c36c766b60c3c09f63f3fe6168164e656f2e53746f726167652e476574436f6e7465787408636f6e7472616374617c658b096c766b55527ac46c766b55c30b746f74616c537570706c79617c65030a6c766b56527ac46c766b56c36c766b54c3936c766b56527ac46c766b55c30b746f74616c537570706c796c766b56c361527265290a616168164e656f2e53746f726167652e476574436f6e74657874056173736574617c6514096c766b57527ac46c766b57c36c766b51c3617c6538096c766b58527ac46c766b57c36c766b51c36c766b58c36c766b54c39361527265260a61006c766b51c36c766b54c36152726596046161006c766b51c36c766b54c3615272087472616e7366657254c168124e656f2e52756e74696d652e4e6f7469667961516c766b5e527ac46203006c766b5ec3616c756600c56b084e455035204e454f616c75660111c56b6c766b00527ac4616c766b00c3c001149c009c6c766b59527ac46c766b59c36436002f54686520706172616d657465722066726f6d2053484f554c442062652032302d62797465206164647265737365732e6175f061682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b51527ac46c766b51c361681a4e656f2e5472616e73616374696f6e2e4765744f75747075747300c36c766b52527ac46c766b52c36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59e6c766b5a527ac46c766b5ac3640e00006c766b5b527ac46228036c766b52c36168184e656f2e4f75747075742e4765745363726970744861736861682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173689e6c766b5c527ac46c766b5cc3640e00006c766b5b527ac462bd026168164e656f2e53746f726167652e476574436f6e7465787406726566756e64617c65d5066c766b53527ac46c766b53c36c766b51c36168174e656f2e5472616e73616374696f6e2e47657448617368617c65df06c000a06c766b5d527ac46c766b5dc3640e00006c766b5b527ac4624b026c766b00c36168184e656f2e52756e74696d652e436865636b5769746e657373009c6c766b5e527ac46c766b5ec3640e00006c766b5b527ac4620f026168164e656f2e53746f726167652e476574436f6e74657874056173736574617c6528066c766b54527ac46c766b54c36c766b00c3617c654c066c766b55527ac46c766b52c36168134e656f2e4f75747075742e47657456616c75656c766b56527ac46c766b55c36c766b56c39f6c766b5f527ac46c766b5fc3640e00006c766b5b527ac46287016c766b55c36c766b56c39c6c766b60527ac46c766b60c36416006c766b54c36c766b00c3617c653f0761621f006c766b54c36c766b00c36c766b55c36c766b56c39461527265c606616c766b53c36c766b51c36168174e656f2e5472616e73616374696f6e2e476574486173686c766b00c3615272654007616168164e656f2e53746f726167652e476574436f6e7465787408636f6e7472616374617c6524056c766b57527ac46c766b57c30b746f74616c537570706c79617c659c056c766b58527ac46c766b58c36c766b56c3946c766b58527ac46c766b57c30b746f74616c537570706c796c766b58c361527265c205616c766b00c3006c766b56c3615272658c0061616c766b00c3006c766b56c3615272087472616e7366657254c168124e656f2e52756e74696d652e4e6f7469667961616c766b51c36168174e656f2e5472616e73616374696f6e2e476574486173686c766b00c3617c06726566756e6453c168124e656f2e52756e74696d652e4e6f7469667961516c766b5b527ac46203006c766b5bc3616c756656c56b6c766b00527ac46c766b51527ac46c766b52527ac46161682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726168174e656f2e5472616e73616374696f6e2e476574486173686c766b53527ac46153c5766c766b00c3007cc4766c766b51c3517cc4766c766b52c3527cc46c766b54527ac46168164e656f2e53746f726167652e476574436f6e74657874067478496e666f617c6587036c766b55527ac46c766b55c36c766b53c36c766b54c36168154e656f2e52756e74696d652e53657269616c697a6561527265470561616c756600c56b04434e454f616c756600c56b1c7b224e45502d35222c20224e45502d37222c20224e45502d3130227d616c756652c56b616168164e656f2e53746f726167652e476574436f6e7465787408636f6e7472616374617c65f3026c766b00527ac46c766b00c30b746f74616c537570706c79617c656b036c766b51527ac46203006c766b51c3616c756653c56b6c766b00527ac46c766b51527ac46c766b52527ac451616c75665fc56b6c766b00527ac46c766b51527ac46c766b52527ac46c766b53527ac4616c766b00c3c00114907c907c9e6311006c766b51c3c001149c009c620400516c766b57527ac46c766b57c3643e003754686520706172616d65746572732066726f6d20616e6420746f2053484f554c442062652032302d62797465206164647265737365732e6175f06c766b52c300a16c766b58527ac46c766b58c36433002c54686520706172616d6574657220616d6f756e74204d5553542062652067726561746572207468616e20302e6175f06c766b51c3616575f4009c6c766b59527ac46c766b59c3640e00006c766b5a527ac462a9016c766b00c36168184e656f2e52756e74696d652e436865636b5769746e6573736311006c766b00c36c766b53c39e620400006c766b5b527ac46c766b5bc3640e00006c766b5a527ac4625d016168164e656f2e53746f726167652e476574436f6e74657874056173736574617c6542016c766b54527ac46c766b54c36c766b00c3617c6566016c766b55527ac46c766b55c36c766b52c39f6c766b5c527ac46c766b5cc3640e00006c766b5a527ac462f7006c766b00c36c766b51c39c6c766b5d527ac46c766b5dc3640e00516c766b5a527ac462d2006c766b55c36c766b52c39c6c766b5e527ac46c766b5ec36416006c766b54c36c766b00c3617c65560261621f006c766b54c36c766b00c36c766b55c36c766b52c39461527265dd01616c766b54c36c766b51c3617c65bd006c766b56527ac46c766b54c36c766b51c36c766b56c36c766b52c39361527265ab01616c766b00c36c766b51c36c766b52c36152726517fc61616c766b00c36c766b51c36c766b52c3615272087472616e7366657254c168124e656f2e52756e74696d652e4e6f7469667961516c766b5a527ac46203006c766b5ac3616c756653c56b6c766b00527ac46c766b51527ac4616152c5766c766b00c3007cc4766c766b51c3517cc46c766b52527ac46203006c766b52c3616c756654c56b6c766b00527ac46c766b51527ac4616c766b00c351c301007e6c766b51c37e6c766b52527ac46c766b00c300c36c766b52c3617c680f4e656f2e53746f726167652e4765746c766b53527ac46203006c766b53c3616c756654c56b6c766b00527ac46c766b51527ac4616c766b00c351c301007e6c766b51c37e6c766b52527ac46c766b00c300c36c766b52c3617c680f4e656f2e53746f726167652e4765746c766b53527ac46203006c766b53c3616c756654c56b6c766b00527ac46c766b51527ac46c766b52527ac4616c766b00c351c301007e6c766b51c37e6c766b53527ac46c766b00c300c36c766b53c36c766b52c3615272680f4e656f2e53746f726167652e50757461616c756654c56b6c766b00527ac46c766b51527ac46c766b52527ac4616c766b00c351c301007e6c766b51c37e6c766b53527ac46c766b00c300c36c766b53c36c766b52c3615272680f4e656f2e53746f726167652e50757461616c756653c56b6c766b00527ac46c766b51527ac4616c766b00c351c301007e6c766b51c37e6c766b52527ac46c766b00c300c36c766b52c3617c68124e656f2e53746f726167652e44656c65746561616c756654c56b6c766b00527ac46c766b51527ac46c766b52527ac4616c766b00c351c301007e6c766b51c37e6c766b53527ac46c766b00c300c36c766b53c36c766b52c3615272680f4e656f2e53746f726167652e50757461616c7566"
            }
        ],
        "script": "14e8e3ce08268d16d867101feaf8c0ea130a923aba51c106726566756e646760cb4daf7bd65d47b3b4e6cb4101cf9d5ea074c0f1",
        "gas": "0",
        "blockhash": "0x60f6ac82f61cea065cc94f8c8030749a4914bdf0d1324d021d3d882554848c49",
        "confirmations": 1,
        "blocktime": 1536917208
    }
}

refund 第一步的 application log:

{
	"txid": "0x243528748565671e8714d39cefebb9c4f136bfa11e99dab0ec4bd3a7aa940fcc",
	"vmstate": "HALT, BREAK",
	"gas_consumed": "4.665",
	"stack": [],
	"notifications": [{
		"contract": "0xc074a05e9dcf0141cbe6b4b3475dd67baf4dcb60",
		"state": {
			"type": "Array",
			"value": [{
				"type": "ByteArray",
				"value": "7472616e73666572"
			}, {
				"type": "ByteArray",
				"value": "e8e3ce08268d16d867101feaf8c0ea130a923aba"
			}, {
				"type": "ByteArray",
				"value": ""
			}, {
				"type": "Integer",
				"value": "100000000"
			}]
		}
	}, {
		"contract": "0xc074a05e9dcf0141cbe6b4b3475dd67baf4dcb60",
		"state": {
			"type": "Array",
			"value": [{
				"type": "ByteArray",
				"value": "726566756e64"
			}, {
				"type": "ByteArray",
				"value": "cc0f94aaa7d34becb0da991ea1bf36f1c4b9ebef9cd314871e67658574283524"
			}, {
				"type": "ByteArray",
				"value": "e8e3ce08268d16d867101feaf8c0ea130a923aba"
			}]
		}
	}]
}

refund 第二步的交易结构:

[说明]

Type: ContractTransaction

Input: 来自 CNEO 合约地址

Output: 转到用户自己的地址

Scripts: CNEO 合约的 witness

{
    "jsonrpc": "2.0",
    "id": 1,
    "result": {
        "txid": "0x64a36c933acc0350ac8c76e05c0e7000816102d4865a250bc9b13fbb67061fac",
        "size": 6969,
        "type": "ContractTransaction",
        "version": 0,
        "attributes": [],
        "vin": [
            {
                "txid": "0x243528748565671e8714d39cefebb9c4f136bfa11e99dab0ec4bd3a7aa940fcc",
                "vout": 0
            }
        ],
        "vout": [
            {
                "n": 0,
                "asset": "0xc56f33fc6ecfcd0c225c4ab356fee59390af8560be0e930faebe74a6daff7c9b",
                "value": "1",
                "address": "Ad1HKAATNmFT5buNgSxspbW68f4XVSssSw"
            }
        ],
        "sys_fee": "0",
        "net_fee": "0",
        "scripts": [
            {
                "invocation": "520131",
                "verification": "012fc56b6c766b00527ac46c766b51527ac4616168164e656f2e52756e74696d652e47657454726967676572009c6c766b52527ac46c766b52c36418046161682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b53527ac46c766b53c36168194e656f2e5472616e73616374696f6e2e476574496e707574736c766b54527ac46c766b53c361681a4e656f2e5472616e73616374696f6e2e4765744f7574707574736c766b55527ac4616c766b54c36c766b59527ac4006c766b5a527ac4622b016c766b59c36c766b5ac3c36c766b5b527ac4616c766b5bc36168124e656f2e496e7075742e476574496e646578009c6c766b5c527ac46c766b5cc364de00616168164e656f2e53746f726167652e476574436f6e7465787406726566756e64617c6545176c766b5d527ac46c766b5dc36c766b5bc36168114e656f2e496e7075742e47657448617368617c6555176c766b5e527ac46c766b5ec3c000a06c766b5f527ac46c766b5fc3646f00616c766b54c3c051907c907c9e6310006c766b55c3c0519c009c620400516c766b60527ac46c766b60c3640f00006c766b0111527ac4620f076c766b55c300c36168184e656f2e4f75747075742e476574536372697074486173686c766b5ec39c6c766b0111527ac462dc0661616c766b5ac351936c766b5a527ac46c766b5ac36c766b59c3c09f63ccfe61682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173686c766b56527ac4006c766b57527ac4616c766b53c361681d4e656f2e5472616e73616374696f6e2e4765745265666572656e6365736c766b0112527ac4006c766b0113527ac462e9006c766b0112c36c766b0113c3c36c766b0114527ac4616c766b0114c36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59e6c766b0115527ac46c766b0115c3640f00006c766b0111527ac462d0056c766b0114c36168184e656f2e4f75747075742e476574536372697074486173686c766b56c39c6c766b0116527ac46c766b0116c3642c006c766b57c36c766b0114c36168134e656f2e4f75747075742e47657456616c7565936c766b57527ac4616c766b0113c351936c766b0113527ac46c766b0113c36c766b0112c3c09f630cff006c766b58527ac4616c766b55c36c766b0117527ac4006c766b0118527ac4628b006c766b0117c36c766b0118c3c36c766b0119527ac4616c766b0119c36168184e656f2e4f75747075742e476574536372697074486173686c766b56c39c6c766b011a527ac46c766b011ac3642c006c766b58c36c766b0119c36168134e656f2e4f75747075742e47657456616c7565936c766b58527ac4616c766b0118c351936c766b0118527ac46c766b0118c36c766b0117c3c09f636aff6c766b58c36c766b57c39c6c766b0111527ac4627c046168164e656f2e52756e74696d652e47657454726967676572609c6c766b011b527ac46c766b011bc3649e026161682b53797374656d2e457865637574696f6e456e67696e652e47657443616c6c696e67536372697074486173686c766b011c527ac46c766b00c30962616c616e63654f66876c766b011d527ac46c766b011dc36419006c766b51c300c36165f7036c766b0111527ac462e2036c766b00c308646563696d616c73876c766b011e527ac46c766b011ec3641200616570046c766b0111527ac462b3036c766b00c30f676574526566756e64546172676574876c766b011f527ac46c766b011fc36419006c766b51c300c361653b046c766b0111527ac46276036c766b00c3096765745478496e666f876c766b0120527ac46c766b0120c36419006c766b51c300c36165b1046c766b0111527ac4623f036c766b00c30a6d696e74546f6b656e73876c766b0121527ac46c766b0121c36412006165e6056c766b0111527ac4620e036c766b00c3046e616d65876c766b0122527ac46c766b0122c36412006165200a6c766b0111527ac462e3026c766b00c306726566756e64876c766b0123527ac46c766b0123c36419006c766b51c300c36165fc096c766b0111527ac462af026c766b00c30673796d626f6c876c766b0124527ac46c766b0124c36412006165f70e6c766b0111527ac46282026c766b00c312737570706f727465645374616e6461726473876c766b0125527ac46c766b0125c36412006165ca0e6c766b0111527ac46249026c766b00c30b746f74616c537570706c79876c766b0126527ac46c766b0126c36412006165bc0e6c766b0111527ac46217026c766b00c3087472616e73666572876c766b0127527ac46c766b0127c36441006c766b51c300c36c766b51c351c36c766b51c352c36c766b011cc361537951795572755172755279527954727552727565d60e6c766b0111527ac462b9016162a9016168164e656f2e52756e74696d652e47657454726967676572519c6c766b0128527ac46c766b0128c3647d016161682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173686c766b0129527ac461682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b012a527ac4616c766b012ac361681a4e656f2e5472616e73616374696f6e2e4765744f7574707574736c766b012b527ac4006c766b012c527ac462bb006c766b012bc36c766b012cc3c36c766b012d527ac4616c766b012dc36168184e656f2e4f75747075742e476574536372697074486173686c766b0129c3907c907c9e6347006c766b012dc36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59e620400006c766b012e527ac46c766b012ec3640f00006c766b0111527ac4623d00616c766b012cc351936c766b012c527ac46c766b012cc36c766b012bc3c09f633aff516c766b0111527ac4620f00006c766b0111527ac46203006c766b0111c3616c756654c56b6c766b00527ac4616c766b00c3c001149c009c6c766b52527ac46c766b52c36439003254686520706172616d65746572206163636f756e742053484f554c442062652032302d62797465206164647265737365732e6175f06168164e656f2e53746f726167652e476574436f6e74657874056173736574617c652f0f6c766b51527ac46c766b51c36c766b00c3617c65530f6c766b53527ac46203006c766b53c3616c756600c56b58616c756654c56b6c766b00527ac4616c766b00c3c001209c009c6c766b52527ac46c766b52c3643d003654686520706172616d6574657220747849642053484f554c442062652033322d62797465207472616e73616374696f6e20686173682e6175f06168164e656f2e53746f726167652e476574436f6e7465787406726566756e64617c657a0e6c766b51527ac46c766b51c36c766b00c3617c659e0e6c766b53527ac46203006c766b53c3616c756656c56b6c766b00527ac4616c766b00c3c001209c009c6c766b53527ac46c766b53c3643d003654686520706172616d6574657220747849642053484f554c442062652033322d62797465207472616e73616374696f6e20686173682e6175f06168164e656f2e53746f726167652e476574436f6e74657874067478496e666f617c65cd0d6c766b51527ac46c766b51c36c766b00c3617c65f10d6c766b52527ac46c766b52c3c0009c6c766b54527ac46c766b54c3640e00006c766b55527ac4622c006c766b52c36168174e656f2e52756e74696d652e446573657269616c697a656c766b55527ac46203006c766b55c3616c756653c56b6c766b00527ac4616c766b00c361681a4e656f2e426c6f636b636861696e2e476574436f6e74726163746c766b51527ac46c766b51c36424006c766b51c36168164e656f2e436f6e74726163742e497350617961626c65620400516c766b52527ac46203006c766b52c3616c75660114c56b6161682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b00527ac4006c766b51527ac46c766b00c361681d4e656f2e5472616e73616374696f6e2e4765745265666572656e6365736c766b52527ac4616c766b52c36c766b59527ac4006c766b5a527ac46210016c766b59c36c766b5ac3c36c766b5b527ac4616c766b5bc36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59c6c766b5c527ac46c766b5cc36434006c766b51c376632400756c766b5bc36168184e656f2e4f75747075742e476574536372697074486173686c766b51527ac46c766b5bc36168184e656f2e4f75747075742e4765745363726970744861736861682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173689c6c766b5d527ac46c766b5dc3640e00006c766b5e527ac462dd02616c766b5ac351936c766b5a527ac46c766b5ac36c766b59c3c09f63e7fe6c766b00c36168174e656f2e5472616e73616374696f6e2e476574486173686165dafc00a06c766b5f527ac46c766b5fc3640e00006c766b5e527ac46280026c766b00c361681a4e656f2e5472616e73616374696f6e2e4765744f7574707574736c766b53527ac4006c766b54527ac4616c766b53c36c766b60527ac4006c766b0111527ac46203016c766b60c36c766b0111c3c36c766b0112527ac4616c766b0112c36168184e656f2e4f75747075742e4765745363726970744861736861682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e6753637269707448617368907c907c9e6347006c766b0112c36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59c620400006c766b0113527ac46c766b0113c3642e00616c766b54c36c766b0112c36168134e656f2e4f75747075742e47657456616c7565936c766b54527ac461616c766b0111c351936c766b0111527ac46c766b0111c36c766b60c3c09f63f3fe6168164e656f2e53746f726167652e476574436f6e7465787408636f6e7472616374617c658b096c766b55527ac46c766b55c30b746f74616c537570706c79617c65030a6c766b56527ac46c766b56c36c766b54c3936c766b56527ac46c766b55c30b746f74616c537570706c796c766b56c361527265290a616168164e656f2e53746f726167652e476574436f6e74657874056173736574617c6514096c766b57527ac46c766b57c36c766b51c3617c6538096c766b58527ac46c766b57c36c766b51c36c766b58c36c766b54c39361527265260a61006c766b51c36c766b54c36152726596046161006c766b51c36c766b54c3615272087472616e7366657254c168124e656f2e52756e74696d652e4e6f7469667961516c766b5e527ac46203006c766b5ec3616c756600c56b084e455035204e454f616c75660111c56b6c766b00527ac4616c766b00c3c001149c009c6c766b59527ac46c766b59c36436002f54686520706172616d657465722066726f6d2053484f554c442062652032302d62797465206164647265737365732e6175f061682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726c766b51527ac46c766b51c361681a4e656f2e5472616e73616374696f6e2e4765744f75747075747300c36c766b52527ac46c766b52c36168154e656f2e4f75747075742e4765744173736574496461209b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc59e6c766b5a527ac46c766b5ac3640e00006c766b5b527ac46228036c766b52c36168184e656f2e4f75747075742e4765745363726970744861736861682d53797374656d2e457865637574696f6e456e67696e652e476574457865637574696e67536372697074486173689e6c766b5c527ac46c766b5cc3640e00006c766b5b527ac462bd026168164e656f2e53746f726167652e476574436f6e7465787406726566756e64617c65d5066c766b53527ac46c766b53c36c766b51c36168174e656f2e5472616e73616374696f6e2e47657448617368617c65df06c000a06c766b5d527ac46c766b5dc3640e00006c766b5b527ac4624b026c766b00c36168184e656f2e52756e74696d652e436865636b5769746e657373009c6c766b5e527ac46c766b5ec3640e00006c766b5b527ac4620f026168164e656f2e53746f726167652e476574436f6e74657874056173736574617c6528066c766b54527ac46c766b54c36c766b00c3617c654c066c766b55527ac46c766b52c36168134e656f2e4f75747075742e47657456616c75656c766b56527ac46c766b55c36c766b56c39f6c766b5f527ac46c766b5fc3640e00006c766b5b527ac46287016c766b55c36c766b56c39c6c766b60527ac46c766b60c36416006c766b54c36c766b00c3617c653f0761621f006c766b54c36c766b00c36c766b55c36c766b56c39461527265c606616c766b53c36c766b51c36168174e656f2e5472616e73616374696f6e2e476574486173686c766b00c3615272654007616168164e656f2e53746f726167652e476574436f6e7465787408636f6e7472616374617c6524056c766b57527ac46c766b57c30b746f74616c537570706c79617c659c056c766b58527ac46c766b58c36c766b56c3946c766b58527ac46c766b57c30b746f74616c537570706c796c766b58c361527265c205616c766b00c3006c766b56c3615272658c0061616c766b00c3006c766b56c3615272087472616e7366657254c168124e656f2e52756e74696d652e4e6f7469667961616c766b51c36168174e656f2e5472616e73616374696f6e2e476574486173686c766b00c3617c06726566756e6453c168124e656f2e52756e74696d652e4e6f7469667961516c766b5b527ac46203006c766b5bc3616c756656c56b6c766b00527ac46c766b51527ac46c766b52527ac46161682953797374656d2e457865637574696f6e456e67696e652e476574536372697074436f6e7461696e65726168174e656f2e5472616e73616374696f6e2e476574486173686c766b53527ac46153c5766c766b00c3007cc4766c766b51c3517cc4766c766b52c3527cc46c766b54527ac46168164e656f2e53746f726167652e476574436f6e74657874067478496e666f617c6587036c766b55527ac46c766b55c36c766b53c36c766b54c36168154e656f2e52756e74696d652e53657269616c697a6561527265470561616c756600c56b04434e454f616c756600c56b1c7b224e45502d35222c20224e45502d37222c20224e45502d3130227d616c756652c56b616168164e656f2e53746f726167652e476574436f6e7465787408636f6e7472616374617c65f3026c766b00527ac46c766b00c30b746f74616c537570706c79617c656b036c766b51527ac46203006c766b51c3616c756653c56b6c766b00527ac46c766b51527ac46c766b52527ac451616c75665fc56b6c766b00527ac46c766b51527ac46c766b52527ac46c766b53527ac4616c766b00c3c00114907c907c9e6311006c766b51c3c001149c009c620400516c766b57527ac46c766b57c3643e003754686520706172616d65746572732066726f6d20616e6420746f2053484f554c442062652032302d62797465206164647265737365732e6175f06c766b52c300a16c766b58527ac46c766b58c36433002c54686520706172616d6574657220616d6f756e74204d5553542062652067726561746572207468616e20302e6175f06c766b51c3616575f4009c6c766b59527ac46c766b59c3640e00006c766b5a527ac462a9016c766b00c36168184e656f2e52756e74696d652e436865636b5769746e6573736311006c766b00c36c766b53c39e620400006c766b5b527ac46c766b5bc3640e00006c766b5a527ac4625d016168164e656f2e53746f726167652e476574436f6e74657874056173736574617c6542016c766b54527ac46c766b54c36c766b00c3617c6566016c766b55527ac46c766b55c36c766b52c39f6c766b5c527ac46c766b5cc3640e00006c766b5a527ac462f7006c766b00c36c766b51c39c6c766b5d527ac46c766b5dc3640e00516c766b5a527ac462d2006c766b55c36c766b52c39c6c766b5e527ac46c766b5ec36416006c766b54c36c766b00c3617c65560261621f006c766b54c36c766b00c36c766b55c36c766b52c39461527265dd01616c766b54c36c766b51c3617c65bd006c766b56527ac46c766b54c36c766b51c36c766b56c36c766b52c39361527265ab01616c766b00c36c766b51c36c766b52c36152726517fc61616c766b00c36c766b51c36c766b52c3615272087472616e7366657254c168124e656f2e52756e74696d652e4e6f7469667961516c766b5a527ac46203006c766b5ac3616c756653c56b6c766b00527ac46c766b51527ac4616152c5766c766b00c3007cc4766c766b51c3517cc46c766b52527ac46203006c766b52c3616c756654c56b6c766b00527ac46c766b51527ac4616c766b00c351c301007e6c766b51c37e6c766b52527ac46c766b00c300c36c766b52c3617c680f4e656f2e53746f726167652e4765746c766b53527ac46203006c766b53c3616c756654c56b6c766b00527ac46c766b51527ac4616c766b00c351c301007e6c766b51c37e6c766b52527ac46c766b00c300c36c766b52c3617c680f4e656f2e53746f726167652e4765746c766b53527ac46203006c766b53c3616c756654c56b6c766b00527ac46c766b51527ac46c766b52527ac4616c766b00c351c301007e6c766b51c37e6c766b53527ac46c766b00c300c36c766b53c36c766b52c3615272680f4e656f2e53746f726167652e50757461616c756654c56b6c766b00527ac46c766b51527ac46c766b52527ac4616c766b00c351c301007e6c766b51c37e6c766b53527ac46c766b00c300c36c766b53c36c766b52c3615272680f4e656f2e53746f726167652e50757461616c756653c56b6c766b00527ac46c766b51527ac4616c766b00c351c301007e6c766b51c37e6c766b52527ac46c766b00c300c36c766b52c3617c68124e656f2e53746f726167652e44656c65746561616c756654c56b6c766b00527ac46c766b51527ac46c766b52527ac4616c766b00c351c301007e6c766b51c37e6c766b53527ac46c766b00c300c36c766b53c36c766b52c3615272680f4e656f2e53746f726167652e50757461616c7566"
            }
        ],
        "blockhash": "0x8d2b4d0b4c16294e733a54f2adc29e05442fced393fd4161fa728aabf8be9520",
        "confirmations": 2,
        "blocktime": 1536917432
    }
}

refund 第二步的 application log:

refund 第二步为普通的合约交易,没有 application log.

Releases

No releases published

Packages

No packages published

Languages