ZEEPIN Blockchain assets consist of:
-
Original Assets:
- ZPT: main token, governance, assets, etc.
- Gala: transactions, contract deployment, system fuel cost, etc.
-
Contract Assets:
- Tokens generated by contracts
- MOX, etc.
When the exchange is docked to the ZEEPIN Blockchain, it mainly deals with these two types of assets by enabling recharge, withdrawal, transaction inquiry, account creation and other operations.
- Obtaining from the Download Page
The directory structure is as follows
$ tree -L 1
.
├── zeepin
└── wallet.dat
Run Zeepin nodes
./zeepin
By default, the websocket and rest ports are closed. It is possible to start the ports configuring the following parameters:
RESTFUL OPTIONS:
--rest Enable restful api server
--restport value Restful server listening port (default: 20334)
WEB SOCKET OPTIONS:
--ws Enable websocket server
--wsport value Ws server listening port (default: 20335)
zeepin -h is for more commands, such as the parameter:
--loglevel=0 Logging Parameter
The whitelist and firewall are mandatory for the exchange in order to isolate external requests and avoid consequential severe security risks.
ZEEPIN CLI does not provide remote wallet switch functions, and there is no verification required when opening a wallet. Therefore, the exchange should set the security policy according to its specific situation. Since the wallet should remain open to process user withdrawals, from a security perspective, the wallet must be operating on a separate server and configured with a port firewall. The table below is for reference.
port type | Mainnet default port |
---|---|
Rest Port | 20334 |
Websorcket | 20335 |
Json RPC port | 20336 |
Node port | 20338 |
Creating a ZEEPIN wallet
./zeepin account add -d
Then enter the password, execute. The following will be displayed:
Use default setting '-t ecdsa -b 256 -s SHA256withECDSA'
signature algorithm: ecdsa
curve: P-256
signature scheme: SHA256withECDSA
Password:
Re-enter Password:
Index: 1
Label:
Address: ZT047K36grEi5H6BF7gLb2Z0JwBFMQRRCU
Public key: 02c7fed64a315c664034bae1257f45c9fdf8c24033f0904ce7b47b0090232323
Signature scheme: SHA256withECDSA
-
All ZEEPIN Wallets start with a “Z.” Please make sure to keep the wallet password and private key safe. Please note that the wallet address is case sensitive!
-
The generating algorithm of ZEEPIN Wallet private keys is the same as NEO. The same private key corresponds to different ZPT and NEO public keys.
-
It is not necessary for the exchange to create a wallet for every address. A wallet is able to store all user recharging addresses. In addition, an offline cold wallet is a safer storage.
-
Dynamic Generation: When the user creates an account, the ZPT/Gala address is dynamically generated and returned through the Java SDK (advantage: automatic maintenance / disadvantage: inconvenient backup)
-
Batch Generation: The exchange is generated in batches, and a ZPT address is assigned to the user once an account has been created (advantage: convenient backup / disadvantage: regular manual generations)
How to generate in batches: run ZEEPIN CLI:
./zeepin account add -d -n [number] -w [wallet name]
-d By default set as 1, calling default settings -n Number of addresses created in batches -w Specify wallet file, default is wallet.dat
For example, in order to generate 10 ZEEPIN addresses in a batch:
$ ./zeepin account add -d -n 10 -w walletEx.dat
Use default setting '-t ecdsa -b 256 -s SHA256withECDSA'
signature algorithm: ecdsa
curve: P-256
signature scheme: SHA256withECDSA
Password:
Re-enter Password:
Index: 1
Label:
Address: ZDahjrxYu2vFUPQMDZx6bRtF7RDJs4Xkxb
Public key: 03e38e4944da8a7bba7a12e88a679b0b0063e2362b4b82cf6bdfdc49b5c595418f
Signature scheme: SHA256withECDSA
Index: 2
Label:
Address: ZW7gQeK9o4Axs6Dg17E7yiBsUnnsRaGWbF
Public key: 03c86673df828cc90f03497dd72eb785daf5f0b1561e4d8250eea05114a6652343
Signature scheme: SHA256withECDSA
Index: 3
Label:
Address: ZEzF5pBkfamfHBSDYvLSJbatM4iSLsZF3c
Public key: 02f10b9250391a309e26481faa3b7c5f041dd0a7f62277cdd81527d8defce63e20
Signature scheme: SHA256withECDSA
....... .......
Index: 10
Label:
Address: ZQm7vGM5ezFdJhUigbLgv2ekzvxpCp3Eqv
Public key: 036220266424bcf381cfae8233e6422a9761ae05cd31036ede89301a940af3b353
Signature scheme: SHA256withECDSA
Create account successfully.
- Monitor new blocks with CLI or API
- User recharge based on transaction information
- Store related transaction records
Please pay attention to the following during user recharging:
-
There are two types of assets in ZEEPIN Wallets, namely ZPT and Gala. Registered users must clarify the asset type before recharging in order to avoid confusion.
-
ZEEPIN Wallet is a full-node wallet. Block synchronization is only possible when the wallet is online. Users can read node status via the current block height with the command of ZEEPIN CLI curblockheight:
./zeepin info curblockheight CurrentBlockHeight:5749
For example:
- A user is using ZEEPIN Wallet to recharge the wallet address in the exchange:
$ ./zeepin asset transfer --asset zpt --from ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz --to ZTSPC1PEhXHZZDTFtvRDjoKSZrgYboBwDM --amount 2
Password:
Transfer ZPT
From:ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz
To:ZTSPC1PEhXHZZDTFtvRDjoKSZrgYboBwDM
Amount:2
TxHash:2d2b866018c3d1572dd681f30d54ab2d982ece9c5915e3b778fc3d63cef66e4e
Tip:
Using './zeepin info status 2d2b866018c3d1572dd681f30d54ab2d982ece9c5915e3b778fc3d63cef66e4e' to query transaction status
-
The user monitors block information via ZEEPIN CLI
$ ./zeepin info curblockheight CurrentBlockHeight:5762 $ ./zeepin info block 5762 { "Hash": "553308eb7eb5769e2624d7164962157ab427c4f33ab7af542fc2a98c3e4c4409", "Size": 1375, "Header": { "Version": 0, "PrevBlockHash": "386c4251223e569ac34c76541c9d612b0d7ce20b4eb045d57368a8e4d6c1f5a7", "TransactionsRoot": "2d2b866018c3d1572dd681f30d54ab2d982ece9c5915e3b778fc3d63cef66e4e", "BlockRoot": "a0a96e1b97c248cc16bb893dcf78d85ea64748707925e8271825c9c71efe88ff", "Timestamp": 1535005866, "Height": 5762, "ConsensusData": 5950638681301161907, "ConsensusPayload": "7b226c6561646572223a31342c227672665f76616c7565223a22424c46497730747476712b68566e68537652394b6d366f6f77346a4b34473247345a4c71324f34707a4a7566557430716d65774d654337374833474e53363575583835716d2b5355336c6452522b3732773264627066513d222c227672665f70726f6f66223a226e427765362f74645a484b62416e6864705364636154466647417445346d315a623462546d38633331666b653779724e70534e42312f7174693443327a796674737a494667785347517133496f522b7a38776c4630413d3d222c226c6173745f636f6e6669675f626c6f636b5f6e756d223a333235372c226e65775f636861696e5f636f6e666967223a6e756c6c7d", "NextBookkeeper": "ZC3Fmgr3oS56Rg9vxZeVo2mwMMcTvb44rA", "Bookkeepers": [ "02dfb488eb1f0116bb099584b1f058c525db1b45b24378314ba7f5cc2da180d724", "037a53745eb295a6263d00e87b5f6641f22b44fc2436811a6415a69b816bea3571", "0203b36fa517ac4751b37652e0cef6b730cca8c5540d9cddfb469c26b78f7836e3", "023ea9e036521ed242c6102f8cdc112d901025ef3fb883213112e30da0590ab1fc", "02dfb488eb1f0116bb099584b1f058c525db1b45b24378314ba7f5cc2da180d724", "029c5ecc8400530cc410288496feda44542b6f5aaeff8b925d9b8c6d12a65d4bc3", "035ad9d8b8350b113cbb3d541e0a89dfd10c981702eb59bce4d1a2bbd13b103a39" ], "SigData": [ "a8d9dcc7cd3878122ca841efb60fd1c470a81b9a12c96c95c69cd9ce8876754db1d2c24ca9b592c525c5e98e3dc0df5aaf66278dae2b14679d80edd47953f66c", "9f372d29c829c88b8f0e55fa44cb1543fbe1f7042dbd55479fec5f3f47d10ebeb473a0d5fe41eda1f1510671706ef8b339117470fee6cffe9dfba150537ed2f5", "5b6a82c3591e17193d121f00dde54fe1e2fdf4640484e0d2201089f5df63157768383667a0bfb40c4c711d4e6a92a3ba75e6a8fd6c14c5c2257e7ae2fe75b090", "f177287021afe2b4393e52ff2b630cf1759b5800a6c7a41834d4febad83e506b0c5584895fcd5793c242b9124116d4dbdc87d3c3f86b1c15454be3d3a68ddc27", "28d18cf67db32d146b404b1b8507003ffa240f274abc96f36f6c58ede1043ba807d359346d32fc9ba7edc53841ebf7a102e6dce063bbfc48588ca1cbaed8daef", "81f338f39e76ef56e366c340f580ebc998a4063db39b939e890887c2f2bb49fd2d0a6d6fcc6845d771f9769a996ab9197c95c0fdd553ca603b956770bcc0759d", "955e9e348be138636c078d08f3cf7f350cf6021a1cefd03176dda9e459f1632234a71fc8fd2fe93dbe334bf5c98d08384541d63bfbe499efe2acfb0ab3e2d8ee" ], "Hash": "553308eb7eb5769e2624d7164962157ab427c4f33ab7af542fc2a98c3e4c4409" }, "Transactions": [ { "Version": 0, "Nonce": 1535005865, "GasPrice": 1, "GasLimit": 20000, "Payer": "ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz", "TxType": 209, "Payload": { "Code": "00c66b14a34d23aead66348272a8b5a6bdc235fd5a90ab5f6a7cc814a8e9a5aef175ccdd6503f0336701414a9c2009636a7cc802204e6a7cc86c51c1087472616e736665721400000000000000000000000000000000000000010068195a656570696e436861696e2e4e61746976652e496e766f6b65", "GasLimit": 0 }, "Attributes": [], "Sigs": [ { "PubKeys": [ "02c35cfe4126b7a56c63f75e89d8482bc2d7bdcda44c64172e829efe76d1f57295" ], "M": 1, "SigData": [ "bbdc4f00ed4d03905344b54ecdd657c73f530cf811e88299966d6f378fbfba517d4ca395a0fc323edac08338a7784d7942de68dede79582cd1aa18b158cedca4" ] } ], "Hash": "2d2b866018c3d1572dd681f30d54ab2d982ece9c5915e3b778fc3d63cef66e4e", "Height": 0 } ] }
-
Access transaction information of the block based on Transaction Hash
$ ./zeepin info status 2d2b866018c3d1572dd681f30d54ab2d982ece9c5915e3b778fc3d63cef66e4e
Transaction states:
{
"TxHash": "2d2b866018c3d1572dd681f30d54ab2d982ece9c5915e3b778fc3d63cef66e4e",
"State": 1,
"GasConsumed": 20000,
"Notify": [
{
"ContractAddress": "0100000000000000000000000000000000000000",
"States": [
"transfer",
"ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz",
"ZTSPC1PEhXHZZDTFtvRDjoKSZrgYboBwDM",
20000
]
},
{
"ContractAddress": "0200000000000000000000000000000000000000",
"States": [
"transfer",
"ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz",
"ZC3Fmgr3oS56Rg9vxZeVo2mwMMcUiYGcPp",
20000
]
}
]
}
- 1 stands for successful transaction
- 0 stands for failed transaction
- 0100000000000000000000000000000000000000 for ZPT
- 0200000000000000000000000000000000000000 for Gala
States:Array
transfer stands for the transaction
from sender address
to recipient address
The forth line is the transfer amount (Both ZPT and Gala have 4 decimal places, and the actual amount of ZPT and Gala should be divided by 10000)
Filtering the recipient address through the recharge address that the exchange generates for the user, one could access the user recharge record.
Based on the same principle as user recharge, the exchange needs to write code to monitor each transaction in each block, recording all recharge and withdrawal transactions in the database. When there is recharge transaction, the exchange modifies the user balance in the database.
When a user withdraws, the exchange needs to complete the following operations:
$ ./zeepin asset transfer --asset gala --from ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz --to ZTSPC1PEhXHZZDTFtvRDjoKSZrgYboBwDM --amount 100
Password:
Transfer GALA
From:ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz
To:ZTSPC1PEhXHZZDTFtvRDjoKSZrgYboBwDM
Amount:100
TxHash:00d9336a5e83754815fdd609f7ecce31135428d4fcc40469082658cfdb8b62c4
Tip:
Using './zeepin info status 00d9336a5e83754815fdd609f7ecce31135428d4fcc40469082658cfdb8b62c4' to query transaction status
The following is the command parameters for Zeepin Asset Transfer:
--wallet, -w
Wallet specifies the path to the sender’s wallet. The default is "wallet.dat" in the root directory.
--gasprice
In the Zeepin network, the minimum gasprice is 1;
gasprice * gaslimit is the actual Gala fuel cost the account has to pay (in each transaction, the minimum fuel cost is 2 Gala);
gasprice parameter specifies the gas price in the transaction. The gas price of the transaction cannot be less than the lowest gas price set by the trading pool of the receiving node, otherwise the transaction will be rejected. The default is 0.
The trading pool sorts transactions in accordance with the gas price, from highest to lowest, and transactions with a higher gas price will be prioritized.
--gaslimit
In the Zeepin network, gaslimit has a minimum of 20000 (4 decimal places, i.e., 2 Gala);
gaslimit parameter specifies the upper limit of gas usage. However, the actual gas cost is determined by the number of steps executed by the VM and the API, assuming the following two cases:
- gaslimit>=actual cost, the transaction will be executed successfully, and the unconsumed gas will be returned;
- gaslimt<actual cost, The transaction will fail to execute, and consume the gas that the VM has executed.
The minimum gaslimit in the zeepin network is 20000 (4-bit precision, ie 2 Gallas), and less than this amount of transactions will not be packaged.
--asset
asset The asset parameter specifies the asset type for the transfer, zpt for ZPT and gala for Gala. The default is zpt
--from
from The from parameter specifies the outgoing account address
--to
to To parameter specifies the transfer to the target account address
--amount
amount The amount parameter specifies the transfer amount
Note: Both ZPT and Gala have a 4-decimal precision. If the input exceeds 4 decimal places, the excess value will be discarded;
Confirm the transaction result:
- Use the returned transaction hash to directly query and filter the record of the exchange address to the user:
$ ./zeepin info status 00d9336a5e83754815fdd609f7ecce31135428d4fcc40469082658cfdb8b62c4
Transaction states:
{
"TxHash": "00d9336a5e83754815fdd609f7ecce31135428d4fcc40469082658cfdb8b62c4",
"State": 1,
"GasConsumed": 20000,
"Notify": [
{
"ContractAddress": "0200000000000000000000000000000000000000",
"States": [
"transfer",
"ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz",
"ZTSPC1PEhXHZZDTFtvRDjoKSZrgYboBwDM",
1000000
]
},
{
"ContractAddress": "0200000000000000000000000000000000000000",
"States": [
"transfer",
"ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz",
"ZC3Fmgr3oS56Rg9vxZeVo2mwMMcUiYGcPp",
20000
]
}
]
}
3. Extract the transaction ID record from the returned Json format transaction details in the database
Similar to the monitoring of the blockchain during recharge, the same is true. If a transaction ID in the block is found to be equal to the transaction ID in the withdrawal record during the monitoring, the transaction has been confirmed, that is, the withdrawal is successful.
5. If the transaction has not been confirmed, that is, the corresponding event log cannot be queried by the transaction hash, then
- Query whether the transaction is in the transaction pool through the rpc/SDK interface (refer to Java Sdk). If it is, wait for the consensus node to pack the block and then query.
- If not, the transaction can be considered to have failed and the transfer operation needs to be re-executed.
- If the transaction has not been packaged for a long time, it may be due to the gasprice setting being too low.
The exchange can choose whether to distribute the Gala to the user, Gala is used to pay for additional services such as transfer transactions, contract deployment, billing fees and networks for the zeepin blockchain.
In the Zeepin economic model, the total supply of the original token ZPT is 1 billion rounding to 4 decimal places. Correspondingly, the total supply of Gala is 20 billion, of which 2 billion has been airdropped to ZPT holders, and the remaining 18 billion will be gradually released to ZPT holders (the minimum unlock unit is 1 ZPT). A ZPT transaction generated on the blockchain triggers a Gala release. The smart contract automatically transfers the released Gala to the initiator and the receiver of the transaction, and the Gala incentive is directly proportional to the ZPT amount they hold. In case that transactions at a particular address are not triggered at all, Gala to the address will accumulate until a transaction is triggered, and the accumulated Gala will be issued at once. It is possible to obtain this part of Gala through Claim in the ZeeWallet application.
The release amount of the 18 billion Gala will be adjusted within time periods, the unit of which is year (31,536,000 seconds). The releasing rule is in accordance with the Fibonacci sequence. In order to compensate network nodes and early holders, the release amounts in the first two years are at the highest value. Afterwards, the release amounts will assume a degression tendency. The specific sequence is [89, 89, 55, 55, 55, 34, 34, 34, 21, 21, 21, 13, 13,13, 8, 8, 5, 5]. In about 18 years, all Gala will be released, and no more will be generated.
According to this rule of Gala release, the first two years will see a 31.18% release of the total Gala, and the released proportion will be 50.46% after the first four years, which greatly increases the revenue of early holders. Assuming a user holds 10,000 ZPTs, in the first year, he will receive 76.9 Gala daily, 2338.9 Gala monthly, and 28067.0 Gala annually.
For detailed unbinding rules, please refer to Zeepin Economic Model
View unposted Gala balances via the CLI:
$ ./zeepin asset unboundgala ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz
Unbound Gala:
Account:ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz
Gala:144521.6129
Extract the unlocked Gala from the CLI:
$ ./zeepin asset withdrawgala ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz
Password:
Withdraw GALA:
Account:ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz
Amount:144521.6129
TxHash:3612d3cbb4a58956258f0aa7dce35da673aedf3af3f5271ce68bcfb1ed2755d4
Tip:
Using './zeepin info status 3612d3cbb4a58956258f0aa7dce35da673aedf3af3f5271ce68bcfb1ed2755d4' to query transaction status
Query unbind status
$ ./zeepin info status 3612d3cbb4a58956258f0aa7dce35da673aedf3af3f5271ce68bcfb1ed2755d4
Transaction states:
{
"TxHash": "3612d3cbb4a58956258f0aa7dce35da673aedf3af3f5271ce68bcfb1ed2755d4",
"State": 1,
"GasConsumed": 20000,
"Notify": [
{
"ContractAddress": "0200000000000000000000000000000000000000",
"States": [
"transfer",
"ZC3Fmgr3oS56Rg9vxZeVo2mwMMcTzHMV8a",
"ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz",
1445216129
]
},
{
"ContractAddress": "0200000000000000000000000000000000000000",
"States": [
"transfer",
"ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz",
"ZC3Fmgr3oS56Rg9vxZeVo2mwMMcUiYGcPp",
20000
]
}
]
}
Query balance to see that Gala has been unbundled into the account:
$ ./zeepin asset balance ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz
BalanceOf:ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz
ZPT:9989996.9989
GALA:10143405.6129
Assume that the exchange distributes Gala clearing at 0:00 am every day. According to the user's position snapshot at 0:00 yesterday, the total amount of GalaGala_Unbound that should be distributed on the day before the unadjusted user is calculated, and the customer transaction and the punched currency are deducted or added. The total amount of impact of the position change caused by the operation Gala_Adj.
Calculated according to the customer transaction and the flushing currency record, according to the time span of the recording time from the clearing time (in seconds) Delta, the number of ZPTs in which the transaction occurred Amount and the distribution coefficient Beta in the time period Calculate the Gala allocation adjustment amount caused by the transaction flow. If the transaction is sold or transferred, the Gala will be deducted. If the transaction is a buyer or transfer, add this part of Gala:
Gala_Adj =(±)delta * Amount * Beta
The number of Galas that should be assigned is:
Gala_D = Gala_Unbound + Sum(Gala_Adj_1 , Gala_Adj_2 ... Gala_Adj_n)
The process of withdrawing Gala from the user is consistent with the process of withdrawing ZPT. Just specify the asset parameter as gala:
$ ./zeepin asset transfer --asset gala --from ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz --to ZTSPC1PEhXHZZDTFtvRDjoKSZrgYboBwDM --amount 10000
Password:
Transfer Gala
From:ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz
To:ZTSPC1PEhXHZZDTFtvRDjoKSZrgYboBwDM
Amount:10000
TxHash:3612d3cbb4a58956258f0aa7dce35da673aedf3af3f5271ce68bcfb1ed2755d4
Tip:
Using './zeepin info status 3612d3cbb4a58956258f0aa7dce35da673aedf3af3f5271ce68bcfb1ed2755d4' to query transaction status
Use the Java SDK to withdraw Gala, please refer toJava SDK:withdraw Gala
Contract name | Contract address |
---|---|
ZPT Token | 0100000000000000000000000000000000000000 |
Gala Token | 0200000000000000000000000000000000000000 |
Zeepin Network GID(Galaxy ID) | 0300000000000000000000000000000000000000 |
Global Environment | 0400000000000000000000000000000000000000 |
Oracle Machine | 0500000000000000000000000000000000000000 |
Authorization Contract | 0600000000000000000000000000000000000000 |
Governance(Consensus) | 0700000000000000000000000000000000000000 |
-
***How to connect to the TestNet? ***
Run the zeepin test node:
./zeepin --networkid 2
- More parameter settings can be queried via ./zeepin -h*
-
Node whitelist mode
In order to ensure the security of the exchange data and avoid malicious node interference, you can run the node in the specified peers whitelist mode. The content format of peer.rsv is consistent with peers.recent, dstartup mode is as follows:
./zeepin --reservedonly --reservedfile=./peers.rsv
If necessary, you can get the whitelist node address from the official contact.
-
Is there a Zeepin official blockchain browser?
-
What are the precision of ZPT and Gala?
Both ZPT and Gala have a 4-decimal precision. If the input exceeds 4 decimal places, the excess value will be discarded.
-
How much is the transfer charge?
gasprice * gaslimit = gala cost
--gasprice In the Zeepin network, the minimum gasprice is 1; gasprice * gaslimit is the actual Gala fuel cost the account has to pay (in each transaction, the minimum fuel cost is 2 Gala); gasprice parameter specifies the gas price in the transaction. The gas price of the transaction cannot be less than the lowest gas price set by the trading pool of the receiving node, otherwise the transaction will be rejected. The default is 0. The trading pool sorts transactions in accordance with the gas price, from highest to lowest, and transactions with a higher gas price will be prioritized.
--gaslimit In the Zeepin network, gaslimit has a minimum of 20000 (4 decimal places, i.e., 2 Gala); aslimit parameter specifies the upper limit of gas usage. However, the actual gas cost is determined by the number of steps executed by the VM and the API, assuming the following two cases:
- Gaslimit >= actual cost, the transaction will be executed successfully, and the unconsumed gas will be returned;
- Gaslimt<actual cost, The transaction will fail to execute, and consume the gas that the VM has executed.
The minimum gaslimit in the zeepin network is 20000 (4-bit precision, ie 2 Gallas), and less than this amount of transactions will not be packaged.
-
***During a transaction, how to identify transaction amount and gas? ***
The identification can be carried out is as follows: The transaction fee is directly marked in GasConsumed in Transaction states, and it is the last group in Notify. At the same time, the fee is transferred to the unique address corresponding to the governance contract: ZC3Fmgr3oS56Rg9vxZeVo2mwMMcUiYGcPp(Example is TestNet)
$ ./zeepin info status 00d9336a5e83754815fdd609f7ecce31135428d4fcc40469082658cfdb8b62c4 Transaction states: { "TxHash": "00d9336a5e83754815fdd609f7ecce31135428d4fcc40469082658cfdb8b62c4", "State": 1, "GasConsumed": 20000, "Notify": [ { "ContractAddress": "0200000000000000000000000000000000000000", "States": [ "transfer", "ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz", "ZTSPC1PEhXHZZDTFtvRDjoKSZrgYboBwDM", 1000000 ] }, { "ContractAddress": "0200000000000000000000000000000000000000", "States": [ "transfer", "ZSviKhEgka2fZhhoUjv2trnSMtjUhm3fyz", "ZC3Fmgr3oS56Rg9vxZeVo2mwMMcUiYGcPp", 20000 ] } ] }
-
How to convert ZPT from NEP 5 to ZPT on the MainNet?
Private Keys on NEP5 can be activated via SDK or ZeeWallet, and then a new Zeepin Wallet address will be generated. The same applies to Gala.