Use the node’s RPC interface synchronize blocks and transactions, then save all the received blocks and transactions. This process requires dealing with temporary fork blocks. If the blocks acquired by the height can’t be connected with the local stored best chain, the highest local block should be regained until they’re connected. The original block with the same height will be discarded.
To prevent the issue of temporary forking, it is recommended that more than 16 confirmations be considered as available transactions.
The exchange maintains the UTXO set of every address to generate the currency transaction. The withdrawal transaction can be generated by the transaction utility.
https://github.com/elastos/Elastos.ELA
Standalone server to run a Elastos mainchain node.
https://github.com/elastos/Elastos.ELA/blob/master/docs/mainnet_config.json.sample
Download this file to the ELA node directory and rename it to mainnet_config.json
https://github.com/elastos/Elastos.ELA/blob/master/docs/testnet_config.json.sample
Download this file to the ELA node directory and rename it to testnet_config.json
./ela –datadir data_mn –conf mainnet_config.json
or
./ela –datadir data_tn –conf testnet_config.json
datadir is the output folder in which your node will store its files.
https://github.com/elastos/Elastos.ELA.Utilities.Java
Java service that runs on exchange servers or wallets that manage users private keys on the server side. Used to make and sign Elastos transactions, get and create private and public keys.
https://github.com/elastos/Elastos.ELA/blob/master/docs/jsonrpc_apis.md
Get blocks and transactions
Send raw transaction
https://github.com/elastos/Elastos.ELA/blob/master/docs/cli_user_guide.md
This is a command line tool. Used for testing.
https://github.com/elastos/Elastos.ELA/blob/master/docs/Locking_transaction_recognition.md
In case of recharged utxo can’t be spended