Xmcm is an simple example of usage for the various components of the Mochimo ecosystem.
This project is for educational purpose only and should not be used in production
Documentation is available on the Mochimo wiki
The majority of the Mochimo tools are developed in Java. This allows for cross-platform support and server side finetuning. We recommend using the latest version of Java.
Mojo CLI features can be explored with the standard help
flag:
java -jar mojo.jar -h
Command information is also available via the standard help
flag:
java -jar mojo.jar [command] -h
example:
java -jar mojo.jar wots -h
The backend API features can be explored with the standard help
flag:
java -jar api.jar -h
Endpoints:
Endpoint | Description |
---|---|
/net/balance/[WOTS] |
balance of the address from the network |
/net/resolve/[tag] |
resolve the address attached to the tag from the network |
/net/nodes |
all network nodes |
/net/chains |
all chains/subnetworks |
/net/chain |
main chain/subnetwork |
/bc/balance/[WOTS] |
balance of the address from the local blockchain |
/bc/resolve/[tag] |
resolve the address attached to the tag from the blockchain |
/bc/block/[block number] |
details of the block |
/bc/raw/[block number] |
download block |
/balance/[WOTS] |
balance of the address from network and local blockchain |
/resolve/[tag] |
resolve the address attached to the tag from network and local blockchain |
/push |
push a transaction to the network. POST {"transaction": [base64 encoded transaction], "recipients": [number of nodes to send the transaction to (optional)]} |
Deterministic WOTS addresses can be generated with the wots
command:
java -jar mojo.jar wots --index 0 --count 100 --mnemonic-words "word1 word2 word 3" mywots.json
The above will generate 100 WOTS/secret pairs from index 0 to 99 using the mnemonic-words
as a seed and store them in mywots.json
WOTS addresses are a One-Time Signature. Signing more than one transaction with the same WOTS can compromise the security of the address. Mochimo uses an abstraction layer that simplifies this process by allowing the use of another address called a tag on top of the WOTS. In the Mochimo protocol, a WOTS address is 2208 bytes where the last 12 can be used to carry a tag. Even though the WOTS address must only be used once, the tag can be reused indefinitely. In order to do so, the tag is carried over from the source WOTS to an unused change WOTS every time a transaction occurs. From the user's point of view, the tag is their Mochimo address and it never changes.
Untagged WOTS:
3e3a699ced1eb77b201f32ec43ed02de67125c7eb2de45b12e4d4c624c0d5cc2fcddbc07ab670895e547393186ff8226ed52deb61d93f32da352400ac37ef25f7fcd0ed4fabd73318f2e48973ddb97027eefe154b9fe0f1b6f82e55693b534c6f1cedbfeed9a4bd2bbe61842c622d155f51dae69e372f3a5fa177ac64a69630cfbbeb734ca10d51b2cffb6b886845e8eec3f459620512ca7da54bc80e25c9499fcf4135c5461290c7f58f88ba85516d518a5389fd5a0cdc2353f2d3ac9c1251550da0f9b7f05afa19a87c76c248fa00e60a6b06f6490b28222d9f5ce58fd28eb0904492cb55591bf577c9d1e4d94b1b654dfc36d5c1bd66f86e153c4ed07b883af30da0351532e3c4d39130b29ec70f1ffa3673331f700006daf30df3153ec25380cdf91ff3ebc5c2661b04f37a8aa906e4b272449709dd4c2dc1aeaf4ed00168db0f7d52b9cd422baa2e09bb3eb52ad20fa48e795f7a02020a50d191fede108bc87b8ac5df6423bf17ed77793c2222f1654dcc42dc2cc74c7294a29e4127ff2589710d2fc2fb9b21e146076efd065a89558b55d0f8710d9a7275c56d7973608378c61feb0c4513e795bc5949149167b5c7324a43d76e048b06fc2e9fb8aed99dac017f3400d25da6462114726acf6acfb51d50b57758cb3e7106ae7957bb47d2bc4835ec128a6a0f38f536bc655bb87119d849a8b80a927a91adf75186fdae64a7e76e9a09953beee144a00d0e0b722e907ba7dd5c71b5c2b345d51c93a8252304a5ae5c760ea985c51f67e0feefe086274211a3f28713a3067e9ca30f6e0e4ed656b6b579d0609d537db6b8a4315de32a0f81a68c766e4f436e47c08554b9ffe4e10021f8e08b8694bdf6fcb26eec10141043567ce8cbbd57053bea00a5eaaa32a58dd6ab12ab1322d8fd92741ea14c6acef9a0d921312ff25d44b2956f2d911ef6a69b3e2abba3f07ce25c1ed822fb42b9b6b41da42652c183b1348bde0dacb0a779b501e7fe17b68bcfe32d39dea9e9bfcbfd2873e3cb4f4ee93e3af245f6a0a88a03a546e7788069069508f8668120a72d9886bc5ac579b959c40f06ca4dc885492b478c1ae634636dbac7a7b5a6df84cf35cfee5d5a547f378514fc3f5a05c3bab923a8653c9971eb14fbef622e06648881a88816d2f9770380c11f27886ad8561681b6bded09ba683b3f5b270601fea57d6b0012533ca87181424c1102e9ab41e76497119af2eed979db2728774fca8d8fb46d5f65c068120b2df7096ae64a535950ed35ecd7e25eb56304fefd9ab6e075fc66f1a73b8370b62d40dedd7075695d879fba9e52a9109b34e70d660c14d4ced3ea4489575917aca0c47f739f1daebea3a8d34114f764082ecd44ed88e41f6e65af21667f80d4027a101ac392d0c9f12cfd7960ae4fb8d67d64db6e78b0ad5673bf0c1b0cff74693bb0b9dd2e425ef1dd69c6c1f1bf9e779e6d6d53eb5f068914bdde51734d88ddcd6198867d83cc4439dc4a9f039cd22f10727997e54e1c73e7490f3d3b971d3dad5b618120d97e099a4dd717776eab8ffbcb5f9f97e90bef3ff6ee74cc522a035c2245301ed34defee78ecef2b03e0568be733eaf8003055d99a09f399856bd9b159365db951d9a10218d67cef5a2c63d1025b6904a22bfa4150b27e1186537ab7153c0d867561f5d3b50b5f39b1df791102c2362efbae742560525544ae3ea32a81e9cfe1aaa71b95ddf1787d75cb5bfe064badea0ef570cb9d4d513609bd930c38651a74d6d589d45f9c4422ff21be05e3fdfe75a2c5558b4aaa3a89f511b4555bd136bddcd0f873fa611c57d1c9fa148efbf38342505ff06c1bd564ff6b30dc3cf9de1c8a88e4cc72d1db2b8a488aa06a87b61e21f1cc1464b0797b12eafc9085f4e1484ada76a2f70cdd6933a771749b5fefa1af85a1f82cead8ae69d8e4aa685804a13f28a9eb68a0ee81b1f58ffdbaec322d94e56cba497770da24573074899257b0320de3742bfa6c66d2d89558caad2e076dff8eb66edbf5920f75fc975ce0bac76ee414ad2689cf8c0d304ebe8d5850959b8f4344ef4da676aec6ca0bb6877edf45fee3c7f3c45af6d3ecd690302df0c90aa091a5037ef0b9ed2cff31c684f4657897a27a6ee15bb58794f8e1713f2af9f36fd3523d87bc595149cb42466fdb4ddd178f91bdbcb0624ca081222b3e9ee009472c71161c8cb15dafb49dd9b9cd42133d0c29e4b159a6df2cc9f860339c915cb6a6faf3c4b571cb62fd24fbb479f13c7a1331a66fc195f31baef1e14cf71207b6a0fa72459b2b18f7820742da6053a7389a585b32acf40f654d1b538ac81b99a0b02458e402037fb400023c2ad49e880c96cfef863acf7d460f820108ab96fea3ec25edc6b9a368be4b99ae50f983548b0bf6ab138e19fdf55d9300bc3b803a9bb1b569c351fa296eaf4d2bc2bdbfd084bac840f472a6a12511ecde6bda0207cdc2a19ff7c9aa20e4d72f7065a3e6ffcd6a8cf12af90f138f51460c28f5c2de1b736933ec580e76de2f0bd6d2c59ea81bf105b21165e3d91ec9b70e9dd7ff1d1edeb63a36112728441bf3555acc8fefc166040a2c7ed47a778fe76e54bf55bf391350b220204f43a518fbb0a98a38a4263b2b7c7e11b52074d739c34ad1598e9ac3d939287b8869036ebb689bff8402f9484fa6772c917a9bf83eda0e1feca8f6cded4bf9c99d07eef14679fc0fdbc7b43d5c27c18ac2b9f29f94fb5874859f98907a4f4f33b8929c16f5da49a543d188099a104a53033b0ee2c79ea93829158e5eea18846644dfd37a54fecb63453e05f32d65bde364b839c4ff881b7896af2b84389647279d52dfb43eedff902fa9711d1693415fbc46c149a6eb8cc4350212f5d234dc3b15f76b1009ecb95938b4b4bbd2c82215f429bceaa073beca38262ecd02f1049e61c52153b8409e08b6f235bfe5af53df519545a9719b28f8b743f7e144a822bd6b10ac9fbf9d626514b6c959da6862e16df0b8f0ea2d18eb811a153faa424f3224d2bdc6d8d0b47d2fc467c03a53cf554d341e835ca65c3a53142ca579b409093e8e2d8cfab97049835c260dccc456eae3e5e1e01c91ba84bf6744f420000000e00000001000000
tag 014ac3ae580a105f942d212b
WOTS:
3e3a699ced1eb77b201f32ec43ed02de67125c7eb2de45b12e4d4c624c0d5cc2fcddbc07ab670895e547393186ff8226ed52deb61d93f32da352400ac37ef25f7fcd0ed4fabd73318f2e48973ddb97027eefe154b9fe0f1b6f82e55693b534c6f1cedbfeed9a4bd2bbe61842c622d155f51dae69e372f3a5fa177ac64a69630cfbbeb734ca10d51b2cffb6b886845e8eec3f459620512ca7da54bc80e25c9499fcf4135c5461290c7f58f88ba85516d518a5389fd5a0cdc2353f2d3ac9c1251550da0f9b7f05afa19a87c76c248fa00e60a6b06f6490b28222d9f5ce58fd28eb0904492cb55591bf577c9d1e4d94b1b654dfc36d5c1bd66f86e153c4ed07b883af30da0351532e3c4d39130b29ec70f1ffa3673331f700006daf30df3153ec25380cdf91ff3ebc5c2661b04f37a8aa906e4b272449709dd4c2dc1aeaf4ed00168db0f7d52b9cd422baa2e09bb3eb52ad20fa48e795f7a02020a50d191fede108bc87b8ac5df6423bf17ed77793c2222f1654dcc42dc2cc74c7294a29e4127ff2589710d2fc2fb9b21e146076efd065a89558b55d0f8710d9a7275c56d7973608378c61feb0c4513e795bc5949149167b5c7324a43d76e048b06fc2e9fb8aed99dac017f3400d25da6462114726acf6acfb51d50b57758cb3e7106ae7957bb47d2bc4835ec128a6a0f38f536bc655bb87119d849a8b80a927a91adf75186fdae64a7e76e9a09953beee144a00d0e0b722e907ba7dd5c71b5c2b345d51c93a8252304a5ae5c760ea985c51f67e0feefe086274211a3f28713a3067e9ca30f6e0e4ed656b6b579d0609d537db6b8a4315de32a0f81a68c766e4f436e47c08554b9ffe4e10021f8e08b8694bdf6fcb26eec10141043567ce8cbbd57053bea00a5eaaa32a58dd6ab12ab1322d8fd92741ea14c6acef9a0d921312ff25d44b2956f2d911ef6a69b3e2abba3f07ce25c1ed822fb42b9b6b41da42652c183b1348bde0dacb0a779b501e7fe17b68bcfe32d39dea9e9bfcbfd2873e3cb4f4ee93e3af245f6a0a88a03a546e7788069069508f8668120a72d9886bc5ac579b959c40f06ca4dc885492b478c1ae634636dbac7a7b5a6df84cf35cfee5d5a547f378514fc3f5a05c3bab923a8653c9971eb14fbef622e06648881a88816d2f9770380c11f27886ad8561681b6bded09ba683b3f5b270601fea57d6b0012533ca87181424c1102e9ab41e76497119af2eed979db2728774fca8d8fb46d5f65c068120b2df7096ae64a535950ed35ecd7e25eb56304fefd9ab6e075fc66f1a73b8370b62d40dedd7075695d879fba9e52a9109b34e70d660c14d4ced3ea4489575917aca0c47f739f1daebea3a8d34114f764082ecd44ed88e41f6e65af21667f80d4027a101ac392d0c9f12cfd7960ae4fb8d67d64db6e78b0ad5673bf0c1b0cff74693bb0b9dd2e425ef1dd69c6c1f1bf9e779e6d6d53eb5f068914bdde51734d88ddcd6198867d83cc4439dc4a9f039cd22f10727997e54e1c73e7490f3d3b971d3dad5b618120d97e099a4dd717776eab8ffbcb5f9f97e90bef3ff6ee74cc522a035c2245301ed34defee78ecef2b03e0568be733eaf8003055d99a09f399856bd9b159365db951d9a10218d67cef5a2c63d1025b6904a22bfa4150b27e1186537ab7153c0d867561f5d3b50b5f39b1df791102c2362efbae742560525544ae3ea32a81e9cfe1aaa71b95ddf1787d75cb5bfe064badea0ef570cb9d4d513609bd930c38651a74d6d589d45f9c4422ff21be05e3fdfe75a2c5558b4aaa3a89f511b4555bd136bddcd0f873fa611c57d1c9fa148efbf38342505ff06c1bd564ff6b30dc3cf9de1c8a88e4cc72d1db2b8a488aa06a87b61e21f1cc1464b0797b12eafc9085f4e1484ada76a2f70cdd6933a771749b5fefa1af85a1f82cead8ae69d8e4aa685804a13f28a9eb68a0ee81b1f58ffdbaec322d94e56cba497770da24573074899257b0320de3742bfa6c66d2d89558caad2e076dff8eb66edbf5920f75fc975ce0bac76ee414ad2689cf8c0d304ebe8d5850959b8f4344ef4da676aec6ca0bb6877edf45fee3c7f3c45af6d3ecd690302df0c90aa091a5037ef0b9ed2cff31c684f4657897a27a6ee15bb58794f8e1713f2af9f36fd3523d87bc595149cb42466fdb4ddd178f91bdbcb0624ca081222b3e9ee009472c71161c8cb15dafb49dd9b9cd42133d0c29e4b159a6df2cc9f860339c915cb6a6faf3c4b571cb62fd24fbb479f13c7a1331a66fc195f31baef1e14cf71207b6a0fa72459b2b18f7820742da6053a7389a585b32acf40f654d1b538ac81b99a0b02458e402037fb400023c2ad49e880c96cfef863acf7d460f820108ab96fea3ec25edc6b9a368be4b99ae50f983548b0bf6ab138e19fdf55d9300bc3b803a9bb1b569c351fa296eaf4d2bc2bdbfd084bac840f472a6a12511ecde6bda0207cdc2a19ff7c9aa20e4d72f7065a3e6ffcd6a8cf12af90f138f51460c28f5c2de1b736933ec580e76de2f0bd6d2c59ea81bf105b21165e3d91ec9b70e9dd7ff1d1edeb63a36112728441bf3555acc8fefc166040a2c7ed47a778fe76e54bf55bf391350b220204f43a518fbb0a98a38a4263b2b7c7e11b52074d739c34ad1598e9ac3d939287b8869036ebb689bff8402f9484fa6772c917a9bf83eda0e1feca8f6cded4bf9c99d07eef14679fc0fdbc7b43d5c27c18ac2b9f29f94fb5874859f98907a4f4f33b8929c16f5da49a543d188099a104a53033b0ee2c79ea93829158e5eea18846644dfd37a54fecb63453e05f32d65bde364b839c4ff881b7896af2b84389647279d52dfb43eedff902fa9711d1693415fbc46c149a6eb8cc4350212f5d234dc3b15f76b1009ecb95938b4b4bbd2c82215f429bceaa073beca38262ecd02f1049e61c52153b8409e08b6f235bfe5af53df519545a9719b28f8b743f7e144a822bd6b10ac9fbf9d626514b6c959da6862e16df0b8f0ea2d18eb811a153faa424f3224d2bdc6d8d0b47d2fc467c03a53cf554d341e835ca65c3a53142ca579b409093e8e2d8cfab97049835c260dccc456eae3e5e1e01c91ba84bf6744f014ac3ae580a105f942d212b
Note: the last 12 bytes of a non-tagged address are 420000000e00000001000000
A tag needs to be activated through a special transaction. It is recommended to use a fountain service to activate a new tag. Send an HTTP request to the fountain and the tag will be activated after a few blocks. A small amount of MCM will be sent to the tagged address uppon activation.
http://mochimofountain/fund/[tagged WOTS address]
Note: we recommend you run a dedicated fountain if you are planning to activate a large quantity of tags
The recommended monitoring method is via the backend API blockchain endpoint (/bc
). Alternative methods are the backend API network endpoint or the Mojo CLI.
Request:http://backendapi/bc/balance/[WOTS address (tag or not)]
Response:
{
"block": {
"difficulty": 35,
"height": "79349",
"hex": "135f5",
"weight": "64815887825358247574",
"hash": "4ee73ed97ab1aaa3f258f3f92096812266ec23bf2bb31a78bba7e27f34b37db8",
"previousHash": "b58b1bd487169ce7a363583958bb2391b3133c491c2daa83a9a8ccd829527e70"
},
"balance": "1285999000"
}
The tag can be monitored via the resolve
endpoint.
Request:http://backendapi/bc/resolve/c0ffeec0ffeec0ffeec0ffee
Response:
{
"block": {
"difficulty": 36,
"height": "79351",
"hex": "135f7",
"weight": "64815887928437462678",
"hash": "67d8908c7b9f2ea528d8e09c747a144e0ebdff5e623f443022e6810f36477ca5",
"previousHash": "2580689e04c3af9b5c965d4b322329e7231da02f99e28f9a395e76180f13dcef"
},
"address": "afb72fddb3bda620d2e1ddb6e32bc4abcbd456a8a92c6ef03de908a277ace16fbf5ef701544770a19852ce8d5d85c1b402c0eaeb37dd2a8802a9206be82db491b933417d2965f5a898b6707763fac91274ee7473fb34107bd2ae965ef926b3200480ff493d85ac8d281fc189765b739df755bf3ac3007241b43609437ebbce5e9705264cca4ed500d3de514b835f0519255dd3f44e635099d2b5ac565dcae9a1ddbb6b37b2427352dc9489ade92ae5bfc89975eb1d047712905020eeee03c2754c036297c0ce396756b2123a30fdd607cf113f7430bb0462519366a6736bdceae740b8286776f3656bd18e450af154130bd74141d95d861cc44de34630ce39421e6d4940f46392e7d6e64125e52db9408f1e5f8561ce5b5071777ab13d7aec787a79dd136a48b3b5ebf7eab56f70bfc60fde8e6f8c81176e3482e3b1b04073b9ea1969d1e3f6e7c689d516f0afcaa365386b5fbbb01b66e0b8fac60b51fbd1db4e117da06b047348ab17760d1552ad80aa5f44cee7144fff4c177c38ef27debba030e753c99b6f3b87fcf4297824157a70158bfe1b163e6a44228d658c978991de4c7030b58ac90d8cf9ebe089f8c6fdadfc609ae299643ade4e5d21d21ed0c3945e1dd1013403b23a80b4f5237d475fb022f1bdc7ba4e14c3c15cf38fe2e48a7bee4ed6bba3ae201f4f234a918bf3155b4f56fefef1bc85c4d1ffe9ed4d799b7459cc4bd06545fbaa658530a57162dad6417869cb7ab034a81a49dfe2c0d320877fbafd3024b2ab50e79302a8793f7faf7a43c872aeac8ce43d6707da7669030366b4e3ab747b39acd7355f93e733b610cab9598fe8fc20b98b2f8b8d4d286da646fc5ad0451d5d53f68cd3bebb502fe05fd43075c73e09ff8637e3435c553d0f26244e39b086e11bdb278c555f5f55345501865a2ebba07a146cfe5cf771f48af90abd67989b519a39b353be927bf640102e9ba5250178c0752896c7a1007a7524ff9966894967bf67af78816311231304e8a3aaccd79187ce68b215766ee00e4e09e8a6d64af01d1066edb28226ad9d911da73bdebaf393d0479877af3d050bbacd67a7fa69923ac2ab884297f38909929aa46db79db68a320ff4338a5824eab39fd1b0002396f4019b3585f8336c046683c90b462fd51134c4f3c80cc9ee27905e07c2a4474a4b6a852d65e6bf275a3d0926cb939dce42d4f39549f42dd573aaffac9816d8581ce2a956d9f6a5e7dcba065b6892cf39ce2972943849ecc085e62ad53b5bdadfab84516b1cd98ac44e4dd352ba574c2cbdcab52e5de4e53f374f7c1b037d746a3e61a6480043a7bcdf9c48b6930cc2fdf977af3b01d69ae19a69950eb15144d336ca308e3880b45f9861dad7fd705d8c8941698afe9f96bb97bbdae92aedab7ab654990fbffb248fbdcc1b7625613ef886178d8ccc5f37c3774706f4aa7f75070031c59c40e648be9d9e7c874d5ca98dcbfa850acc310948917e2c36b0a68dcac77a8fc9cbfb3069e2d85483633023207870ca62409ff3164c70c5529f24a353327e3a854c6a0a924dbaa40bc626fdbc7ec9758264aa1dd96519c9de7cfe2b7afc48ae6812eb95c649108f0c98bf3014c18e31fec127039220e00c7719c8310656ad4e229aec3ef839aa576ae8c201106ec97ab9aa95d4676d66e01d0065a75a0b8a6ec019b507194174de35af84bf3e18f5bc3e74db33f32224dd8a490dc7c8a726240537c670d3531c7da9e27b0fcf2509da2384c0c3814dd1fb4cbaa6586fcaf4316d7c85cb82cd573d130f8b109741eb138695f85592772cea9c383633418bb9286ef82fa280b4817710ce3a2cbbfb979133067b6888e256f5206eed45d922758d15125b5f5f5aba95aa9aca3e071cebbbf5506023cd93036a4240b554f281f8b075cb976cf5402ce4040e8e8d87ecb02f1099f81986ec3d437afa8221eda849e47ba2980c59b40de9faaef5866675dae8da45587d423270c4cfe7484bad1c76e4f76142fa383de102eb130a4ade2033e423f9451b5371f5dff91b8ee12efaabc72d85fb27300793d60b876e964df6c50217814ae7ecc52ac1aaebde93d948646f9e9464efff8e61865312bda225c1a151a9a2381e5f455aea881ec278706a9e024d64aa08eccad5235ab83e6314a0fae706ee7abbd956f0b56f56553f94a5482a7b22693736f270122b56ed04cb3610c75caa857c390a53681043007a2d426efe70bd14a871e1ad697006c49429b10191bcad51a8ffd9a2836b5f3fb3fe255da74e1f7cde02ecab73d365ebd79dfd0affbb79b3a1f337a7a0a2682f18cb3e07704e7f2f41181f700352d9299a6aa3da44309f248dd14afa41e55a0290b46b1b6bdf139924a442ebef9603ebbba66203d759e5f29eb56ddd32c2250302af4b4d3247864f7484c70aa5d225c7ba65df78751328f8cca23bdf3d5778d87adc5d23b538c6ea9945f4b7ee5f0e3aeb777bffdf12d9b1100f7634ad464f68891f070ba2e7013552ac6c354861c31ba8d0a4462d31f7646ec2f5cd354e23abb6ffa798c3e5e28f9b9929f3f6231745397b6d6290d582d1df7427190dd08ee51ebea022d9d2e084794f8b93618c8937d533d7b9a2bc7ae2b491b741876d67e20e95963c76d6b3d5fe87546e90052d8c8fb16a8da01e54e5025164de256e93c24ecd7906c2a0be7fbf860f2cf38f996257258e9cb7b0f5c402833d74497c3717dfdd55ecf8c328176fb5ed2606584b894f400c01a0fc90323f356da040e2a3013bdd078303dea27c179373448d60f89878e98fb3073b95914d3ff631565217c9ada8ac3f7591c53fa304a1b9e773a330f4b194541f80870680dbab397e52b73f02e4d8b94d3bc08b9b2630ac0287a3559804bb8f94901702fd2b67e4e360848edd1ed70409278a5aae07e6d06682c5d1d518c3777ac53bb4c5158318a92a1fe398dff214255713a9c6202996d2bd25dbe673e309255beb9733dd27b21f12880e2bc90db94287702177c4acccbe5d5f0a25b560dc63251701be51b14876e30e4da55817ab7f3ed0cbfe18f082f3d157ea1c43d0440586a014a1f85e74c25a9458795bdb4c982814c95a785abf9deac0ffeec0ffeec0ffeec0ffee",
"balance": "50891969349501"
}
Signing is done through Mojo CLI sign
:
java -jar mojo.jar sign \
--source-wots 3e3a699ced1eb77b201f32ec43ed02de67125c7eb2de45b12e4d4c624c0d5cc2fcddbc07ab670895e547393186ff8226ed52deb61d93f32da352400ac37ef25f7fcd0ed4fabd73318f2e48973ddb97027eefe154b9fe0f1b6f82e55693b534c6f1cedbfeed9a4bd2bbe61842c622d155f51dae69e372f3a5fa177ac64a69630cfbbeb734ca10d51b2cffb6b886845e8eec3f459620512ca7da54bc80e25c9499fcf4135c5461290c7f58f88ba85516d518a5389fd5a0cdc2353f2d3ac9c1251550da0f9b7f05afa19a87c76c248fa00e60a6b06f6490b28222d9f5ce58fd28eb0904492cb55591bf577c9d1e4d94b1b654dfc36d5c1bd66f86e153c4ed07b883af30da0351532e3c4d39130b29ec70f1ffa3673331f700006daf30df3153ec25380cdf91ff3ebc5c2661b04f37a8aa906e4b272449709dd4c2dc1aeaf4ed00168db0f7d52b9cd422baa2e09bb3eb52ad20fa48e795f7a02020a50d191fede108bc87b8ac5df6423bf17ed77793c2222f1654dcc42dc2cc74c7294a29e4127ff2589710d2fc2fb9b21e146076efd065a89558b55d0f8710d9a7275c56d7973608378c61feb0c4513e795bc5949149167b5c7324a43d76e048b06fc2e9fb8aed99dac017f3400d25da6462114726acf6acfb51d50b57758cb3e7106ae7957bb47d2bc4835ec128a6a0f38f536bc655bb87119d849a8b80a927a91adf75186fdae64a7e76e9a09953beee144a00d0e0b722e907ba7dd5c71b5c2b345d51c93a8252304a5ae5c760ea985c51f67e0feefe086274211a3f28713a3067e9ca30f6e0e4ed656b6b579d0609d537db6b8a4315de32a0f81a68c766e4f436e47c08554b9ffe4e10021f8e08b8694bdf6fcb26eec10141043567ce8cbbd57053bea00a5eaaa32a58dd6ab12ab1322d8fd92741ea14c6acef9a0d921312ff25d44b2956f2d911ef6a69b3e2abba3f07ce25c1ed822fb42b9b6b41da42652c183b1348bde0dacb0a779b501e7fe17b68bcfe32d39dea9e9bfcbfd2873e3cb4f4ee93e3af245f6a0a88a03a546e7788069069508f8668120a72d9886bc5ac579b959c40f06ca4dc885492b478c1ae634636dbac7a7b5a6df84cf35cfee5d5a547f378514fc3f5a05c3bab923a8653c9971eb14fbef622e06648881a88816d2f9770380c11f27886ad8561681b6bded09ba683b3f5b270601fea57d6b0012533ca87181424c1102e9ab41e76497119af2eed979db2728774fca8d8fb46d5f65c068120b2df7096ae64a535950ed35ecd7e25eb56304fefd9ab6e075fc66f1a73b8370b62d40dedd7075695d879fba9e52a9109b34e70d660c14d4ced3ea4489575917aca0c47f739f1daebea3a8d34114f764082ecd44ed88e41f6e65af21667f80d4027a101ac392d0c9f12cfd7960ae4fb8d67d64db6e78b0ad5673bf0c1b0cff74693bb0b9dd2e425ef1dd69c6c1f1bf9e779e6d6d53eb5f068914bdde51734d88ddcd6198867d83cc4439dc4a9f039cd22f10727997e54e1c73e7490f3d3b971d3dad5b618120d97e099a4dd717776eab8ffbcb5f9f97e90bef3ff6ee74cc522a035c2245301ed34defee78ecef2b03e0568be733eaf8003055d99a09f399856bd9b159365db951d9a10218d67cef5a2c63d1025b6904a22bfa4150b27e1186537ab7153c0d867561f5d3b50b5f39b1df791102c2362efbae742560525544ae3ea32a81e9cfe1aaa71b95ddf1787d75cb5bfe064badea0ef570cb9d4d513609bd930c38651a74d6d589d45f9c4422ff21be05e3fdfe75a2c5558b4aaa3a89f511b4555bd136bddcd0f873fa611c57d1c9fa148efbf38342505ff06c1bd564ff6b30dc3cf9de1c8a88e4cc72d1db2b8a488aa06a87b61e21f1cc1464b0797b12eafc9085f4e1484ada76a2f70cdd6933a771749b5fefa1af85a1f82cead8ae69d8e4aa685804a13f28a9eb68a0ee81b1f58ffdbaec322d94e56cba497770da24573074899257b0320de3742bfa6c66d2d89558caad2e076dff8eb66edbf5920f75fc975ce0bac76ee414ad2689cf8c0d304ebe8d5850959b8f4344ef4da676aec6ca0bb6877edf45fee3c7f3c45af6d3ecd690302df0c90aa091a5037ef0b9ed2cff31c684f4657897a27a6ee15bb58794f8e1713f2af9f36fd3523d87bc595149cb42466fdb4ddd178f91bdbcb0624ca081222b3e9ee009472c71161c8cb15dafb49dd9b9cd42133d0c29e4b159a6df2cc9f860339c915cb6a6faf3c4b571cb62fd24fbb479f13c7a1331a66fc195f31baef1e14cf71207b6a0fa72459b2b18f7820742da6053a7389a585b32acf40f654d1b538ac81b99a0b02458e402037fb400023c2ad49e880c96cfef863acf7d460f820108ab96fea3ec25edc6b9a368be4b99ae50f983548b0bf6ab138e19fdf55d9300bc3b803a9bb1b569c351fa296eaf4d2bc2bdbfd084bac840f472a6a12511ecde6bda0207cdc2a19ff7c9aa20e4d72f7065a3e6ffcd6a8cf12af90f138f51460c28f5c2de1b736933ec580e76de2f0bd6d2c59ea81bf105b21165e3d91ec9b70e9dd7ff1d1edeb63a36112728441bf3555acc8fefc166040a2c7ed47a778fe76e54bf55bf391350b220204f43a518fbb0a98a38a4263b2b7c7e11b52074d739c34ad1598e9ac3d939287b8869036ebb689bff8402f9484fa6772c917a9bf83eda0e1feca8f6cded4bf9c99d07eef14679fc0fdbc7b43d5c27c18ac2b9f29f94fb5874859f98907a4f4f33b8929c16f5da49a543d188099a104a53033b0ee2c79ea93829158e5eea18846644dfd37a54fecb63453e05f32d65bde364b839c4ff881b7896af2b84389647279d52dfb43eedff902fa9711d1693415fbc46c149a6eb8cc4350212f5d234dc3b15f76b1009ecb95938b4b4bbd2c82215f429bceaa073beca38262ecd02f1049e61c52153b8409e08b6f235bfe5af53df519545a9719b28f8b743f7e144a822bd6b10ac9fbf9d626514b6c959da6862e16df0b8f0ea2d18eb811a153faa424f3224d2bdc6d8d0b47d2fc467c03a53cf554d341e835ca65c3a53142ca579b409093e8e2d8cfab97049835c260dccc456eae3e5e1e01c91ba84bf6744f014ac3ae580a105f942d212b \
--source-secret 60d451db33b3d7bc58038593e58648d4cb706eb069ede41bc92c2f078288b0e2 \
--change-wots fe19242b77d4a9ea1310df343565e6ed47aa61d56605d1c86642141067f5fc8a47702a080fd0cb205463a2681d16e4de6f31167b47730b09a0c2c8b972d8f4fa66699f8b5716567965d048e45b9e899c526f000957cf2ee1167b0e4dd99c404f3a93b440e8a8e340adc1ad503b7fd34f0e5254d5f6fc9a4f7abff6383c1da7a2d847c91c323eeeda12cda3ba19ee828cf68e44e1532481fa6b5533081dd3807f96e260ebe05bc43f2f769b545f0a98231d55f0b6381016431d250da3d78ca2e4a382142266c64b3da8e4d58e0dc5aa9471588d286249e05be15dca1e845840a48dc917f9911de258873ba1307c574ea31e933b97ab7249c4f7c312a8a2ad0fa59f0ccebc3e6577fe866af38d6573e722b28d7557af464ac4e5f5519ba6b69cf3120c4c880248b61d936e3df4295e9c6200c465577279262d5896f016f3e6b77fc1c837282d93e9cb3e59d2809e36ca21a8ce8d951595901dd6b8014856e6bd0c6c36d0dfdc15188ab97ba12335037dbf60a539ad5b9ded7ec446269ea74efc003f00ab2e1bd8fbf521b31f4da89eccd4c181058a44643f87bdc0d5b499b3af16d6f171301bdfd434101bed33926401bf9e3ab66d5c31e73250ac5dd87bc37e53ec134247bb089564c1853f2fd287cc5f33ab27783f297c73692f7b32cd3436153222119e7b488228aa8b7f658387cbaeda7f8ca14c844e85429faac2f03b6d60abdc5e6fb8faa32f0e59ce702f5d27049971e43985ab6bfe7489795064cf7a9b575a2f1b8b07d5ed4675c40a534cc4a17a8982be91e1244770af31a8a797dbb0f6e38cc2609a76723e49f42f46d30fefb0565afb10ebd77d52c60fcb59e8b608e9ff15332b004d9f3ba0cbb9c089f302da50a0c7f72c2777cfeb9a9e45caa17f36b84fa82934f0da943aa78f7140cd5eb3c08018ada808d7bf7d56e649bc32e5d17014b7c493181dc2d3fdced97a2a1892b99d387bdf35ae5e1ef81303c0195f2d137bafce249a0b43ed3ce1ac74e465a8518cc4b72573e88656c4e50c6ec47c330cc7ab96ea9ed14b7e13433f462928f44d6231e2a45de79ee754b5dfd6bf9338ecc028085628f0ae12e68a10734cd70850313460034a326489fc095363022d52c36cf82a1ff733aef02f7f191d3f745ef40641a3c884765515c0de2c5f0fdec2301ad4f5c5eeee67565e9fd9087bf0840171013ff0cb9127a193e4afed1027bc30e0fc226390078235e852f7614a83b0a1a6ca4e8b7186e4490fa90ebe27231659de5ea180e3cad26eb072cc39524a90caf88883c2061ac41c2314e0b6548857a947b0d26d5ce92be44549ab6282548b8f369d600f1f36a3ac380b9071a6e7d73706bafd0229ed8a9ea174baa52034d9f273c2bc456cb67d181246836bd24cbac185ccd580bc6cf41398ec2d6555c0208645fe1241b6a414472c83dccf9762bd31af3fe2981dbab2c13bebc1a4c78f8587336d0d4dc161ebebf9ccf92ea9711825bd71663ca3c6132553ea7649b2b1f8f3b135999c1a3466ec09dd0fc944418cfc6d54d67b711f8824bb9eacb8f93dbca9f42c6499c6a442465a6716d8e6d3a133a46443d31ffa4ffce5cd734a6d7f65c9d5d2d9f1755777606220e1cd0a1d49404696eed5d6843695dd95fec9feb39e9edfe275db44f3bd9b6672705252eeb34cd2eead4118fb942186ae722cf2ea7537b44937744ffb86e7f17511c66a4daaf298ae1cf1d462678f66e363bd029749a8a251e15e4b0e3971892401484964d9505c6d1c68c30b6863645aadf1303be8245c1ce5f0e9c241cb87b8231dca3e3086363821883d8e1a140b11fd7d0c747ca3ecb7b3ee90456fa2e71ebe8ec269913b91aed5a0da02493a5a6b374295ba24cbc087c7b9fc70145901e2b82c453363e34863c209887baca9c8144f581576ffe298cc56daa18f156d7ec45020f3cccfc3b1b5d83989bbd5f70645d34af49c68dc0fe99e51b252ba08f50d559d0853242284653876048db464124e870b670dc323973eeb77a7fc31ae31f5d57b563cd03ffb329030623dbb79c6247f689d5da7b80d56473cec464ffe8d3a54ebd98d9e7c7daae1e5407e957505cba9c306e77c41f6bb110d148c43f57487047a5954649b963803aa35750a3686edede459441ed382c70d85b7c81b27c1557165109039148996b4a78e47a3c1a187fbc1aae5ec7ff6346e21078a636dde7fe0a6a01fdb8163a829919452d7e1383cd2353853b8789761439ec6d62de2f88cdb92f268dffc353481aca68943221758c2132a966fce086c0f5c9922c129e398f301a2df487920b687a5b75a47caba786e4b4573a80700ee27b5397d605e88f36fdce543c033a9b7fdce7ebde2e23ca69954ec36c528e6c369e34337ebf6445050bcad0296179b853118cd8219cb26d850c35c1fb2964c3becac3a7e20b223e787c9612a8216d8cb5931c4f0de0b8cb9e701f664f42e58c13b26ac84694aab758508ea35c554017ac44d7ea6db8c5026d64ab42ff5a2821a35f2db8f9b65f8f741cea8c2c19611d07cdf853789b8f56c97272aaa1ec2d6c05c199025bcf9c3a79cc869dd8df06bc3d949a6f8c47dcc194b65ff5aa09272a4098412979eb1fa4d23d3c51f48f28a918b58e95609110c756721255b79d526c6ddb74b9356c35df0c5d6e342c91fb7b51d7a290449a142840a26019effa021df33f56141c48e5e28b50bde6ae66c91541498bdd0077ac47616082a3c0549ea36785a3548ba261a7ff899863f1eaa86b9e55e59a1d0521442ef1770a5a0100cf49c441233143175210256df22840221e75bf46d9feddb732a72e41921b22bb267ae8c526852a71356f40838f74efece9ea636695bfa999d407fbb75ab7070261d5f7f5c99e9bded57f5221cefd6ee92b5184993d49745d591f8343b2ab1ed51b0fc95b59681b2be39fd93cf561196372e54fabec53517b9252a33b7438fafe42561b1d02c1c52b77b282dbb2ecdb65f13986520880f8f9129d177ba15ab5ddb5668e64b2473a63226e99d8f67439168b9819ff50458c5cc79eeaf16bc16980d4966bb21af151b78a356c00e1e67fe48e6542bafd02472e02620fd2b415a9264f0014ac3ae580a105f942d212b \
--destination-wots afb72fddb3bda620d2e1ddb6e32bc4abcbd456a8a92c6ef03de908a277ace16fbf5ef701544770a19852ce8d5d85c1b402c0eaeb37dd2a8802a9206be82db491b933417d2965f5a898b6707763fac91274ee7473fb34107bd2ae965ef926b3200480ff493d85ac8d281fc189765b739df755bf3ac3007241b43609437ebbce5e9705264cca4ed500d3de514b835f0519255dd3f44e635099d2b5ac565dcae9a1ddbb6b37b2427352dc9489ade92ae5bfc89975eb1d047712905020eeee03c2754c036297c0ce396756b2123a30fdd607cf113f7430bb0462519366a6736bdceae740b8286776f3656bd18e450af154130bd74141d95d861cc44de34630ce39421e6d4940f46392e7d6e64125e52db9408f1e5f8561ce5b5071777ab13d7aec787a79dd136a48b3b5ebf7eab56f70bfc60fde8e6f8c81176e3482e3b1b04073b9ea1969d1e3f6e7c689d516f0afcaa365386b5fbbb01b66e0b8fac60b51fbd1db4e117da06b047348ab17760d1552ad80aa5f44cee7144fff4c177c38ef27debba030e753c99b6f3b87fcf4297824157a70158bfe1b163e6a44228d658c978991de4c7030b58ac90d8cf9ebe089f8c6fdadfc609ae299643ade4e5d21d21ed0c3945e1dd1013403b23a80b4f5237d475fb022f1bdc7ba4e14c3c15cf38fe2e48a7bee4ed6bba3ae201f4f234a918bf3155b4f56fefef1bc85c4d1ffe9ed4d799b7459cc4bd06545fbaa658530a57162dad6417869cb7ab034a81a49dfe2c0d320877fbafd3024b2ab50e79302a8793f7faf7a43c872aeac8ce43d6707da7669030366b4e3ab747b39acd7355f93e733b610cab9598fe8fc20b98b2f8b8d4d286da646fc5ad0451d5d53f68cd3bebb502fe05fd43075c73e09ff8637e3435c553d0f26244e39b086e11bdb278c555f5f55345501865a2ebba07a146cfe5cf771f48af90abd67989b519a39b353be927bf640102e9ba5250178c0752896c7a1007a7524ff9966894967bf67af78816311231304e8a3aaccd79187ce68b215766ee00e4e09e8a6d64af01d1066edb28226ad9d911da73bdebaf393d0479877af3d050bbacd67a7fa69923ac2ab884297f38909929aa46db79db68a320ff4338a5824eab39fd1b0002396f4019b3585f8336c046683c90b462fd51134c4f3c80cc9ee27905e07c2a4474a4b6a852d65e6bf275a3d0926cb939dce42d4f39549f42dd573aaffac9816d8581ce2a956d9f6a5e7dcba065b6892cf39ce2972943849ecc085e62ad53b5bdadfab84516b1cd98ac44e4dd352ba574c2cbdcab52e5de4e53f374f7c1b037d746a3e61a6480043a7bcdf9c48b6930cc2fdf977af3b01d69ae19a69950eb15144d336ca308e3880b45f9861dad7fd705d8c8941698afe9f96bb97bbdae92aedab7ab654990fbffb248fbdcc1b7625613ef886178d8ccc5f37c3774706f4aa7f75070031c59c40e648be9d9e7c874d5ca98dcbfa850acc310948917e2c36b0a68dcac77a8fc9cbfb3069e2d85483633023207870ca62409ff3164c70c5529f24a353327e3a854c6a0a924dbaa40bc626fdbc7ec9758264aa1dd96519c9de7cfe2b7afc48ae6812eb95c649108f0c98bf3014c18e31fec127039220e00c7719c8310656ad4e229aec3ef839aa576ae8c201106ec97ab9aa95d4676d66e01d0065a75a0b8a6ec019b507194174de35af84bf3e18f5bc3e74db33f32224dd8a490dc7c8a726240537c670d3531c7da9e27b0fcf2509da2384c0c3814dd1fb4cbaa6586fcaf4316d7c85cb82cd573d130f8b109741eb138695f85592772cea9c383633418bb9286ef82fa280b4817710ce3a2cbbfb979133067b6888e256f5206eed45d922758d15125b5f5f5aba95aa9aca3e071cebbbf5506023cd93036a4240b554f281f8b075cb976cf5402ce4040e8e8d87ecb02f1099f81986ec3d437afa8221eda849e47ba2980c59b40de9faaef5866675dae8da45587d423270c4cfe7484bad1c76e4f76142fa383de102eb130a4ade2033e423f9451b5371f5dff91b8ee12efaabc72d85fb27300793d60b876e964df6c50217814ae7ecc52ac1aaebde93d948646f9e9464efff8e61865312bda225c1a151a9a2381e5f455aea881ec278706a9e024d64aa08eccad5235ab83e6314a0fae706ee7abbd956f0b56f56553f94a5482a7b22693736f270122b56ed04cb3610c75caa857c390a53681043007a2d426efe70bd14a871e1ad697006c49429b10191bcad51a8ffd9a2836b5f3fb3fe255da74e1f7cde02ecab73d365ebd79dfd0affbb79b3a1f337a7a0a2682f18cb3e07704e7f2f41181f700352d9299a6aa3da44309f248dd14afa41e55a0290b46b1b6bdf139924a442ebef9603ebbba66203d759e5f29eb56ddd32c2250302af4b4d3247864f7484c70aa5d225c7ba65df78751328f8cca23bdf3d5778d87adc5d23b538c6ea9945f4b7ee5f0e3aeb777bffdf12d9b1100f7634ad464f68891f070ba2e7013552ac6c354861c31ba8d0a4462d31f7646ec2f5cd354e23abb6ffa798c3e5e28f9b9929f3f6231745397b6d6290d582d1df7427190dd08ee51ebea022d9d2e084794f8b93618c8937d533d7b9a2bc7ae2b491b741876d67e20e95963c76d6b3d5fe87546e90052d8c8fb16a8da01e54e5025164de256e93c24ecd7906c2a0be7fbf860f2cf38f996257258e9cb7b0f5c402833d74497c3717dfdd55ecf8c328176fb5ed2606584b894f400c01a0fc90323f356da040e2a3013bdd078303dea27c179373448d60f89878e98fb3073b95914d3ff631565217c9ada8ac3f7591c53fa304a1b9e773a330f4b194541f80870680dbab397e52b73f02e4d8b94d3bc08b9b2630ac0287a3559804bb8f94901702fd2b67e4e360848edd1ed70409278a5aae07e6d06682c5d1d518c3777ac53bb4c5158318a92a1fe398dff214255713a9c6202996d2bd25dbe673e309255beb9733dd27b21f12880e2bc90db94287702177c4acccbe5d5f0a25b560dc63251701be51b14876e30e4da55817ab7f3ed0cbfe18f082f3d157ea1c43d0440586a014a1f85e74c25a9458795bdb4c982814c95a785abf9deac0ffeec0ffeec0ffeec0ffee \
--offline \
--source-balance 1000000000 \
1000 \
mytransaction.tx
Note: source
and change
WOTS both carry the same tag 014ac3ae580a105f942d212b
Pushing transactions to the network can be done via the backend API or Mojo CLI
POST http://backendapi/push
:
{
"transaction": [base64 encoded bytes transaction],
"recipients": 5
}
POST http://backendapi/pushes
:
[
{
"transaction": [base64 encoded bytes transaction],
"recipients": 5
},
{
"transaction": [base64 encoded bytes transaction],
"recipients": 5
},
{
"transaction": [base64 encoded bytes transaction],
"recipients": 5
},
]
where recipient
is the number of nodes to send the transaction to (optional).
java -jar mojo.jar push --network-nodes "34.94.69.50;35.246.31.140;34.87.39.69" mytransaction.tx