This repository was archived by the owner on Nov 15, 2021. It is now read-only.
This repository was archived by the owner on Nov 15, 2021. It is now read-only.
Cannot sign multisig tx #697
Closed
Description
Current behavior
NOTE: This is a continuation of an unresolved discussion from Discord.
I was trying to build a test for parse_and_sign in Send.py but I can't seem to successfully sign a transaction from a multisig address using sign
in prompt.py.
Expected behavior
I should be able to use sign
(parse_and_sign
) in prompt.py to add a signature to a tx, and allow it to be relayed.
How to reproduce
First I used:
import multisig_addr 031a6c6fbbdf02ca351745fa86b9ba5a9452d785ac4f7fc2b7548ca2a46c4fcf4a 2 031a6c6fbbdf02ca351745fa86b9ba5a9452d785ac4f7fc2b7548ca2a46c4fcf4a 025c5941f0d344673e32875bb3f2893e5403988ce9d460709482a5ccfbf92b0a80
to yield
Added multi-sig contract address AN7FbCF4Zcn8NCjQ4gFAkyMdHFqueJAQw4 to wallet
Then I sent some neo to it and tried to send it back
send neo AcGMj7SBEDM4xXc7VJp6vG1ko2xTAAUvC9 1 --from-addr=AN7FbCF4Zcn8NCjQ4gFAkyMdHFqueJAQw4
[Password]> ***
Transaction initiated, but the signature is incomplete
{"type":"Neo.Core.ContractTransaction","hex":"800000015409d813c8d3dc8e6fd3a2fe5d4284c5351a2e1340c3c04bff46cb0c2a3aa85b0000019b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc500e1f50500000000e0c59a2b8753324dfd36b7d80fb915f02d46e670","items":{"0x56fab8dd27f7934cf85d04e51ca9a36ba0f97a45":{"script":"5221031a6c6fbbdf02ca351745fa86b9ba5a9452d785ac4f7fc2b7548ca2a46c4fcf4a21025c5941f0d344673e32875bb3f2893e5403988ce9d460709482a5ccfbf92b0a8052ae","parameters":[{"type":"Signature"},{"type":"Signature"}],"signatures":{"031a6c6fbbdf02ca351745fa86b9ba5a9452d785ac4f7fc2b7548ca2a46c4fcf4a":"88d1ab40c5a73dee59abb4f9c0874b020bd750ac7a981570a85dc65ec90de7202d3f7c9971dabc3ccb53a611c08681638416543a48969958caa3a63d59e88ca6"}}}}
so I switched to the wallet with the other required publickey and tried to sign the tx
neo> sign {"type":"Neo.Core.ContractTransaction","hex":"800000015409d813c8d3dc8e6fd3a2fe5d4284c5351a2e1340c3c04bff46cb0c2a3aa85b0000019b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc500e1f50500000000e0c59a2b8753324dfd36b7d80fb915f02d46e670","items":{"0x56fab8dd27f7934cf85d04e51ca9a36ba0f97a45":{"script":"5221031a6c6fbbdf02ca351745fa86b9ba5a9452d785ac4f7fc2b7548ca2a46c4fcf4a21025c5941f0d344673e32875bb3f2893e5403988ce9d460709482a5ccfbf92b0a8052ae","parameters":[{"type":"Signature"},{"type":"Signature"}],"signatures":{"031a6c6fbbdf02ca351745fa86b9ba5a9452d785ac4f7fc2b7548ca2a46c4fcf4a":"88d1ab40c5a73dee59abb4f9c0874b020bd750ac7a981570a85dc65ec90de7202d3f7c9971dabc3ccb53a611c08681638416543a48969958caa3a63d59e88ca6"}}}}
Transaction initiated, but the signature is incomplete
{"type":"Neo.Core.ContractTransaction","hex":"800000015409d813c8d3dc8e6fd3a2fe5d4284c5351a2e1340c3c04bff46cb0c2a3aa85b0000019b7cffdaa674beae0f930ebe6085af9093e5fe56b34a5c220ccdcf6efc336fc500e1f50500000000e0c59a2b8753324dfd36b7d80fb915f02d46e670","items":{"0x56fab8dd27f7934cf85d04e51ca9a36ba0f97a45":{"script":"5221031a6c6fbbdf02ca351745fa86b9ba5a9452d785ac4f7fc2b7548ca2a46c4fcf4a21025c5941f0d344673e32875bb3f2893e5403988ce9d460709482a5ccfbf92b0a8052ae","parameters":[{"type":"Signature"},{"type":"Signature"}],"signatures":{"031a6c6fbbdf02ca351745fa86b9ba5a9452d785ac4f7fc2b7548ca2a46c4fcf4a":"88d1ab40c5a73dee59abb4f9c0874b020bd750ac7a981570a85dc65ec90de7202d3f7c9971dabc3ccb53a611c08681638416543a48969958caa3a63d59e88ca6"}}}}
The only signature of 031a6c6fbbdf02ca351745fa86b9ba5a9452d785ac4f7fc2b7548ca2a46c4fcf4a successfully added occurred when the transaction was initially sent because the sending wallet was a signer.
Your environment
- OS: Windows 10
- neo-python version: v0.8.2-dev (privatenet)
- Python version: Python 3.7.0b3