Skip to content

Instantly share code, notes, and snippets.

@marekyggdrasil
Last active December 20, 2020 04:08
Show Gist options
  • Save marekyggdrasil/b89cfc12cafe08dfe85c07f786df4cd8 to your computer and use it in GitHub Desktop.
Save marekyggdrasil/b89cfc12cafe08dfe85c07f786df4cd8 to your computer and use it in GitHub Desktop.

Test report

Reproducing the problem from case 17 reported in gist.

Prerequisites:

  • Wallet 1 (sender) : grin1l8elz69qrlpm9un53s5l365unt95sh5wmzz5kd57lzarh4aqvczsj3rham
  • Wallet 2 (receiver) : grin18yukg5gks9ly750c90ewly7w9uaj8w62wvd6qujeaqpvlckxleqsw2htq0

Step 1 (receiver side)

The invoice command sends an invoice transaction, in which the initiator requests an amount for payment and sends that request to another party. This command will create an encypted (since -d is provided) invoice, requesting a payment of 0.1 grin. The resulting slatepack can then be sent to the other party for them to pay.

grin-wallet -r "https://grinnode.live:3413" invoice -d grin1l8elz69qrlpm9un53s5l365unt95sh5wmzz5kd57lzarh4aqvczsj3rham 0.1

Following this command the user needs to enter his password wallet to get the slatepack message displayed on screen and also an output to a .slatepack file. he either have the choice to copy the slatepack message and send it to the receiver or provide him with the slatepack file.

20201220 04:54:23.852 ERROR grin_wallet_impls::node_clients::http - Error calling get_version: Request error: Cannot make request: error trying to connect: tcp connect error: Connection refused (os error 111)
20201220 04:54:23.852 ERROR grin_wallet_impls::node_clients::http - Unable to contact Node to get version info: Client Callback Error: Error calling get_version: Request error: Cannot make request: error trying to connect: tcp connect error: Connection refused (os error 111)
Password: 
/home/marek/wallets/wallet1/slatepack/88d67441-8c46-468f-9ed8-3ebccdd94504.I1.slatepack

Slatepack data follows. Please provide this output to the other party

--- CUT BELOW THIS LINE ---

BEGINSLATEPACK. mMkn3jvNVCzicQx PzBJcdAT3ypZPpb 9XsAqd8wA9F3Mnz nhfPbZFBuAvtPHx H1HuJrhY2zYQuFc oSWyWGD4geZp4Zr M4ybw8TwLrDp4ti BV61LkZCpifCHTt wBu5YkmouFvm6m5 KZk6wFkwaQGGiYg 9eAovmyNaaXc7Vi 8EoFEvDSUcRHquN zaQmfDBBDH55fbt 4L3t25ndyAFirRw jeMweFSYevjRDnr xVh88dvpsKXZxk8 6cQc2PStWmBQU1y 7xosofmuENfaQaN 5Qt1oeLi1vo5qRs 4B2qHyYaJpUaaWW jfthitrAQgjNZus EwTtkJu443c8hrD UALdqoSagfsbWHw y7Y8CGnnjahinuM G5TWSKsE867yUHb LqFqUDnYhr1Qp3Z SqZRLoGUr9LvipW Qz95kf9wM1WzY7K GcFF4xq3MSdHMGR DG6xwtbwcDSuxpg HrcbBnj5kdhZQYB 4UeraGxatYBFWh4 tTqE3iLKBgwgbQQ V36yNQegwGVSHWT m6cy7tPPUbhSLzS TZD1WYNJKwMJsbi jvsaAmwnr55mvPz m9yfXoqxmKY8JaZ aPk9Ra28bUe6i2b v7ZnqoYAB6aXCRM gV7TLjrj7KPJ3Qt DdC14goTD4sRqv6 v. ENDSLATEPACK.

--- CUT ABOVE THIS LINE ---

Slatepack data was also output to

/home/marek/wallets/wallet1/slatepack/88d67441-8c46-468f-9ed8-3ebccdd94504.I1.slatepack

The slatepack data is encrypted for the recipient only

Command 'invoice' completed successfully

Step 2 (sender side):

After receiving an invoice request, the payer can use the pay command to decode (also decrypt if possible) the slatepack and confirm the amount of coins being requested as payment. To confirm the payment, type the exact amount in decimal, 0.100000000 in this example, into the prompt.

$ grin-wallet -r "https://grinnode.live:3413" pay
20201220 04:55:41.433 ERROR grin_wallet_impls::node_clients::http - Error calling get_version: Request error: Cannot make request: error trying to connect: tcp connect error: Connection refused (os error 111)
20201220 04:55:41.433 ERROR grin_wallet_impls::node_clients::http - Unable to contact Node to get version info: Client Callback Error: Error calling get_version: Request error: Cannot make request: error trying to connect: tcp connect error: Connection refused (os error 111)
Password: 
Please paste your encoded slatepack message:
BEGINSLATEPACK. mMkn3jvNVCzicQx PzBJcdAT3ypZPpb 9XsAqd8wA9F3Mnz nhfPbZFBuAvtPHx H1HuJrhY2zYQuFc oSWyWGD4geZp4Zr M4ybw8TwLrDp4ti BV61LkZCpifCHTt wBu5YkmouFvm6m5 KZk6wFkwaQGGiYg 9eAovmyNaaXc7Vi 8EoFEvDSUcRHquN zaQmfDBBDH55fbt 4L3t25ndyAFirRw jeMweFSYevjRDnr xVh88dvpsKXZxk8 6cQc2PStWmBQU1y 7xosofmuENfaQaN 5Qt1oeLi1vo5qRs 4B2qHyYaJpUaaWW jfthitrAQgjNZus EwTtkJu443c8hrD UALdqoSagfsbWHw y7Y8CGnnjahinuM G5TWSKsE867yUHb LqFqUDnYhr1Qp3Z SqZRLoGUr9LvipW Qz95kf9wM1WzY7K GcFF4xq3MSdHMGR DG6xwtbwcDSuxpg HrcbBnj5kdhZQYB 4UeraGxatYBFWh4 tTqE3iLKBgwgbQQ V36yNQegwGVSHWT m6cy7tPPUbhSLzS TZD1WYNJKwMJsbi jvsaAmwnr55mvPz m9yfXoqxmKY8JaZ aPk9Ra28bUe6i2b v7ZnqoYAB6aXCRM gV7TLjrj7KPJ3Qt DdC14goTD4sRqv6 v. ENDSLATEPACK. 

This command will pay the amount specified in the invoice using your wallet's funds.
After you confirm, the following will occur: 

* 0.100000000 of your wallet funds will be added to the transaction to pay this invoice.
* The wallet will IMMEDIATELY attempt to send the resulting transaction to the wallet listening at: 'grin18yukg5gks9ly750c90ewly7w9uaj8w62wvd6qujeaqpvlckxleqsw2htq0'.
* If other wallet is not listening, the resulting transaction will output as a slatepack which you can manually send back to the invoice creator.

Please review the above information carefully before proceeding

To proceed, type the exact amount of the invoice as displayed above (or Q/q to quit) > 0.1
Please enter exact amount of the invoice as shown above or Q to quit

To proceed, type the exact amount of the invoice as displayed above (or Q/q to quit) > 0.100000000
20201220 04:56:28.884 WARN grin_wallet_api::owner - Attempting to send transaction via TOR
20201220 04:56:34.786 WARN grin_wallet_api::owner - Unable to send transaction via TOR
/home/marek/grin-wallet/target/release/slatepack/88d67441-8c46-468f-9ed8-3ebccdd94504.I2.slatepack

Slatepack data follows. Please provide this output to the other party

--- CUT BELOW THIS LINE ---

BEGINSLATEPACK. QacKaVRW5WQSGRk HR82oXhf7Ndc74E 469d6voXVtBfwDE 8hjTE1CKQxT49Wu A3GLbqdfwmEEjhY 4DeVWYJeNtsFRjb MNQTtcsWGHqEXRQ QNbraCEPwZczjCW q1mo39rCeWcJcWo WibKpumFkZcJ5Wh CwwhT9LTsNn4TXM 8SZNuk1L28qkymo h5WzFv3JhQqaGKR YBRrsEDkGuLfxjF 6SuWbVV15Mu6adR 2Q8AJZfkPD88RVC v9eWQaMqttxrDn9 urMjw5rT84fkpFf otZD5LEhNZmqf7h EHHNR6DAoZLrYRs UjPTxD1xJ4CZnzy 2puqNet9c4mzjif Cy9ZkrZRnwK5W6f NWax1Y298vQ7aFZ PQhT7UJGeRtEZcQ kjxZLg4ssHooLun tjxVaQauZiUoRK9 ptf6pVBTvEHRfZZ nVk6gzpfA6TCZoG syQ3nH2MccFd4sj n1htLtNmxxkuYKZ UGzxt1mUXrKovHP eWiQXEH6Qk5szVK gHuvCjbeH1XUCk2 mX7LM3fokV3fwmF 5k9GWmib6HBjyV2 ZeW9rtAKupfHXGJ pb9BsD1FzEwVgRh KTMSppYAZC7A8Fa 7HTbxtr55V3VPjk H7Xj1MLLV9CD7Hw AyZPsmR8RV2TtRQ 2aYNDg7Y2y8ee6k 7p1pFadDTXC7D2q vqS3JqbcyMHHwRg Lrt3ABd5yU3MN3s NSGMBVBTixy1QnB WqASkNEzChhgrWL pSn3sTaVUXAgrQs AeJbQ38Nf9JAPRc 13zGe8eVkaVhnRX E85ECfk5NkVmCzt 8HvGnemUyFhEhTj dpKT4aXA5Hfqwya YjGUF3EA3PisY6P jrP1eWvV8SBkuAi WNJLQtP1kawAPnf Qxbeqg2QBeUhZMC 6jv7M7EdjyLWjGb fdpXzCYqL6ipTrT R5R5qNM8p4rriFK UxQUAoHwegrctmb xhptNmMVC2GNkNP aEBmgXEm2NChiAo 6aS2XiawcXiFGME Avp4mQDtUhEaLcy M6kYMnEUrSUJPND 1xiJCjXNQbXtJwd PTdCcbLntu6yaR2 KDfbua4wteCLxLq rBd2wxYi1F8pBdw jr4L42DfTXUENqu 9EQcxiztUFokabj j1WXwnEJnbQobaQ MrcP8oxtcuRt5nm BBV3NtFN5AAwUMm vBTqKpXwA46eqpK k1mrDybFB1ko4k1 Y6m9nXgSxJ7jpT4 Ct5JQNfzqwFy6FC rz5s9hB3yUPwQDw wSiXs1aXZiCGpih U1wYoe2MToarXUq Zc3gpZFy2BKHiop tpyvLgcd4Cb2ohQ pyNsfgJG29GT5vg LAPHzwp2jGYUi1x UzoTnsDY5dMe9KC LmmqcxRnnWZDRY2 XmhuLjrJUrofg4K T6iBn1E4oPVVcUy QJgN9sWMPjx13aD TS5BSwZSUoPPdys 9aUsT6hmycGskcS jw6cSUZaGEjMH3f pi7ehpTJVAhiDxp 8GdpuLrimKvkgH4 eHJo3F2SyHSP81v D5rP6J65ygx4VMV bY7G3oGkrUywKfz EqbaqHNLPGkdW9W KyEP2ufYyBZ2aku Jmx7EN9vktLJouz 6jsn5RWumKPJbwA 9xwsLRt9EASBfys bjDvkGzC5mpgswg vVHy85w561AdFxP Sr7nrboEetLF4AF bqeZ84tjQYpySyH WSUhgS1TAjDAwL8 ZMKrjqd9b6nQs6P R7K217wye2BPev9 UNfMNC7dX6F1STv 4FqoW9dhu7Z33N2 4DHRM2uACzhijA9 RSWGPt2trD2BiJK 1JRSAt1u3w5pn5f B86JXsfrJ71. ENDSLATEPACK.

--- CUT ABOVE THIS LINE ---

Slatepack data was also output to

/home/marek/grin-wallet/target/release/slatepack/88d67441-8c46-468f-9ed8-3ebccdd94504.I2.slatepack

The slatepack data is encrypted for the recipient only

Command 'pay' completed successfully

Step 3 (receiver side) :

The finalize command is the final step to any slatepack transaction. After entering the command, the sender will be prompted to input the slatepack message provided by the receiver to finalize the transaction

$ grin-wallet -r "https://grinnode.live:3413" finalize
20201220 04:57:54.487 ERROR grin_wallet_impls::node_clients::http - Error calling get_version: Request error: Cannot make request: error trying to connect: tcp connect error: Connection refused (os error 111)
20201220 04:57:54.487 ERROR grin_wallet_impls::node_clients::http - Unable to contact Node to get version info: Client Callback Error: Error calling get_version: Request error: Cannot make request: error trying to connect: tcp connect error: Connection refused (os error 111)
Password: 
Please paste your encoded slatepack message:
BEGINSLATEPACK. QacKaVRW5WQSGRk HR82oXhf7Ndc74E 469d6voXVtBfwDE 8hjTE1CKQxT49Wu A3GLbqdfwmEEjhY 4DeVWYJeNtsFRjb MNQTtcsWGHqEXRQ QNbraCEPwZczjCW q1mo39rCeWcJcWo WibKpumFkZcJ5Wh CwwhT9LTsNn4TXM 8SZNuk1L28qkymo h5WzFv3JhQqaGKR YBRrsEDkGuLfxjF 6SuWbVV15Mu6adR 2Q8AJZfkPD88RVC v9eWQaMqttxrDn9 urMjw5rT84fkpFf otZD5LEhNZmqf7h EHHNR6DAoZLrYRs UjPTxD1xJ4CZnzy 2puqNet9c4mzjif Cy9ZkrZRnwK5W6f NWax1Y298vQ7aFZ PQhT7UJGeRtEZcQ kjxZLg4ssHooLun tjxVaQauZiUoRK9 ptf6pVBTvEHRfZZ nVk6gzpfA6TCZoG syQ3nH2MccFd4sj n1htLtNmxxkuYKZ UGzxt1mUXrKovHP eWiQXEH6Qk5szVK gHuvCjbeH1XUCk2 mX7LM3fokV3fwmF 5k9GWmib6HBjyV2 ZeW9rtAKupfHXGJ pb9BsD1FzEwVgRh KTMSppYAZC7A8Fa 7HTbxtr55V3VPjk H7Xj1MLLV9CD7Hw AyZPsmR8RV2TtRQ 2aYNDg7Y2y8ee6k 7p1pFadDTXC7D2q vqS3JqbcyMHHwRg Lrt3ABd5yU3MN3s NSGMBVBTixy1QnB WqASkNEzChhgrWL pSn3sTaVUXAgrQs AeJbQ38Nf9JAPRc 13zGe8eVkaVhnRX E85ECfk5NkVmCzt 8HvGnemUyFhEhTj dpKT4aXA5Hfqwya YjGUF3EA3PisY6P jrP1eWvV8SBkuAi WNJLQtP1kawAPnf Qxbeqg2QBeUhZMC 6jv7M7EdjyLWjGb fdpXzCYqL6ipTrT R5R5qNM8p4rriFK UxQUAoHwegrctmb xhptNmMVC2GNkNP aEBmgXEm2NChiAo 6aS2XiawcXiFGME Avp4mQDtUhEaLcy M6kYMnEUrSUJPND 1xiJCjXNQbXtJwd PTdCcbLntu6yaR2 KDfbua4wteCLxLq rBd2wxYi1F8pBdw jr4L42DfTXUENqu 9EQcxiztUFokabj j1WXwnEJnbQobaQ MrcP8oxtcuRt5nm BBV3NtFN5AAwUMm vBTqKpXwA46eqpK k1mrDybFB1ko4k1 Y6m9nXgSxJ7jpT4 Ct5JQNfzqwFy6FC rz5s9hB3yUPwQDw wSiXs1aXZiCGpih U1wYoe2MToarXUq Zc3gpZFy2BKHiop tpyvLgcd4Cb2ohQ pyNsfgJG29GT5vg LAPHzwp2jGYUi1x UzoTnsDY5dMe9KC LmmqcxRnnWZDRY2 XmhuLjrJUrofg4K T6iBn1E4oPVVcUy QJgN9sWMPjx13aD TS5BSwZSUoPPdys 9aUsT6hmycGskcS jw6cSUZaGEjMH3f pi7ehpTJVAhiDxp 8GdpuLrimKvkgH4 eHJo3F2SyHSP81v D5rP6J65ygx4VMV bY7G3oGkrUywKfz EqbaqHNLPGkdW9W KyEP2ufYyBZ2aku Jmx7EN9vktLJouz 6jsn5RWumKPJbwA 9xwsLRt9EASBfys bjDvkGzC5mpgswg vVHy85w561AdFxP Sr7nrboEetLF4AF bqeZ84tjQYpySyH WSUhgS1TAjDAwL8 ZMKrjqd9b6nQs6P R7K217wye2BPev9 UNfMNC7dX6F1STv 4FqoW9dhu7Z33N2 4DHRM2uACzhijA9 RSWGPt2trD2BiJK 1JRSAt1u3w5pn5f B86JXsfrJ71. ENDSLATEPACK.
Transaction posted
Transaction finalized successfully
/home/marek/wallets/wallet1/slatepack/88d67441-8c46-468f-9ed8-3ebccdd94504.I3.slatepack

Slatepack data follows.

--- CUT BELOW THIS LINE ---

BEGINSLATEPACK. JsXUnmEiHuVhE4d KtCg3Z6TWLed7hR wAGnf8JFui7AYdx Dv72EBH66bHNDeM JtYFFXBSqdQikbs dKqUQwxxrXi6nMc Pg5taqxpfHTFKbE agDLyjojhDxrdtD 6wwREZexHiFwH1L HCSsYhwaekYB6Y5 ZCmacfVhNZ55UnC BFymBWQnV6M4hdb szruuJxKrQ1NvDn uw4Z2fh9eg7tqFd f7m21TzCioi1uEu Usa9Y89iyVHy2cM qeYbpjDd83aJK3Y SPfZLXy3ZCpR1BU Bx6YJEYwJS7apEX Db6zpcNxahnHcxb P3QNSFScnsg9VWT cgJowozmkJ6kJEQ kpeR2aVpwGysSD9 DcGHyp82b7cQEut uwssAiheeBfCJGf RmGXGJf8FJMy2fe McYQLmsRVKZNaBu EuybeiCemcJj6hf n2aakzLucXiLwcE aX4URqTmuP5EeN4 X68BmtJ79yQKHFv EjhtcP4SkymzSX8 c228EXmd24Ueeoj FBKNTAabGkqaHuD J7C4Kryg6BmnV7K d3appgwBaQUPfZD HNY8CpRsfkYNfL1 KiXndGZpyi7QDZB C9C1nYyof1LBLjf tuE88DjaF4WVgmJ aEjt1BdqtyZGDp3 9zKFcYGF1FSjdpE rmra9uRnCfnHPZ5 LqfQbYLpWgQ3GFy o3bfB28yyJP3rbD yXxpDqpCsThnh2W RWxyg2gqFNPckz2 21eBeDF2jjJav4p pnxpHq8cR8eVfn5 EhDLDS8hk8pr298 CzUE4qvAfLAHCEv PwUA5sNWVbfqpib GedjhQo1qQ7CcDq kpkAFgXVNYvVwgq u7NRYWMgyKEcbao d9AEssvVjxUwW2f r1BiyYQugktdGWP 82FE1gFrYcDXT3E Ghor7fH888aY4uE zffHRdvmBVFAudd MqSaLabsURFYWKE bd4FRXbSAYhgiiu W6YTd1oBzdya2Ke XjQxw8suU7zVneb dekQJiYxbtrU9hN n4v98hFdQS7Bxjt K4V7ae4NXni61k6 BQkuq2fXDGKJscf qvJx8Nt3qpumHo9 2C4UAxhFf2YFnT4 W48oSP8yuLeAytx Y94Cn84wopT9qaa RdhvwThXjeDeGV9 BQUGxwdQmMyUvLh NaJhZrwgJ5dDJkF aVa9odEnvD5TRym pUJMiuR89iht9wB bVNVXRdPCoHjh66 bKn68vbX5aezMxi cRhiHFMm5iVYJoc 2hcPDwBtuP8Doak co88uHTxTYK71r8 LTuAmqqsWJX3JrR 8p8BcMD6RuCdBcJ xUx659KA3Nv7cWK sUwNfAK5U55rb7B VF8F3xz7BxDtw9s 4TQzPkR8ChuCwnt N3pqPcvgqNDjCX7 hrhRB1MwP6jWY8n STQo3aiQ5L4fPD5 uQNzrugMhfx7R7B JBefSBM4MaDWB5X zqBe8eNretfoVZ2 oYQNrYfNbrH2bkC gLXrkmSxo3VQVUi SVNK2ne1dC3fwfg 52V2wrBkVKd6PQR A4ht4JypS5VTb3E KKECoYX5jSHFGHr RAvnzLTYdXGsA5z zaBoQZQEfAtt9hM 87YEXBcWzHWzN7J X64g6VhZw84ZqEq Ar4aURmJhCtpbUN tSHStYx6Rtqq6QY E4du8mdp9uBpGmq mxXudEuTXPHi7kU PWpNC5rBrRJNfxk eaGM47WHumJj2ge ZQcN2H1Y47StZTb ebiAur6y5ne3Tkf CNW24gzPxu94Cuc k9VXMtxDibpwrrC oaPKukhVmS8cMtF HYzgsLzLQjMBHSG GUtoCn3iGj1CgQG YecQohzc8oWyBbF WpjUbGXkxypiJN9 3CKXty5ufNLyUXH V7YYxZvbNQFHeyh HP5D2SxsTnhHZ7c H6pJMG24LkVMo7P s4BCBncajS18Cex ZUhir8Ch83J8wDW DnZFqhNj1Q3YDTc PSSEiPNDRwGFvg3 MMTxWsFDBkEKdBP JWvEamrX3b9iFEk eR2L8BiGLtsCuAR ZUigvTAvDSUPkuT PmhPEkXvn4ebned jgqNY6nYgv3Yo1F FyMXUj4o6pJT3Vt 25JvKfeKAE9JQYt fVVTd6kN6wHz26g HxjagpjVDMjMGZ4 ehhHFeT5zmEKodq h3QSohdvFm2Su9v C55niTQ2ZxvT4T7 kh8LyjP4RYXGxDN 1fbUStZdoya4ZLY vJNq8YRsFNJowuB G5e1wwwRzg33v66 hDS8wqp5WifeYpe m6XnZjFsUQ1VSFx TQcs98kc4pjQVfn mxVjdtNgPiPbQcR Gwx1zETfe8fc7km RGJ8V3yMsG9EDzv RQBVwMaBxkbr3W5 z28srWKLiLMAoYa 9QUkLwAffDRuXDR UngzCr9fzsdnqrf afkYGNbt66fXgeC 3Q3nXpaK39zTq96 YK5MBUqYoRB3pfV yAN1QaoVyq4xSKv FFTRWV7zC9tmtsp BpvwDbqab53yvx6 rpidsyL1rasHTfa qu9esWkK9wbW9cv KP4uUdN5WRXRGcf gNYZRt2RxjQq94p 2aRmdDNJH9Sy6CK BD6jf1Y5AvMBX8g LCYKrBCsbi5qGht EFb63egbLSfjLvJ R1SRdQenJ51UZMv 2DVL9XCKXyRdP3w phcCD2FzCETZNmP vvkhcJqq. ENDSLATEPACK.

--- CUT ABOVE THIS LINE ---

Slatepack data was also output to

/home/marek/wallets/wallet1/slatepack/88d67441-8c46-468f-9ed8-3ebccdd94504.I3.slatepack

The slatepack data is NOT encrypted

Command 'finalize' completed successfully

Result

The problem from case 17 reported in gist has not been reproduced on the following setup.

$ grin-wallet -V
grin-wallet 5.1.0-alpha.1

system

$ uname -a
Linux student02.grinnode.live 4.19.0-12-amd64 #1 SMP Debian 4.19.152-1 (2020-10-18) x86_64 GNU/Linux
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment