Problem signing transaction

#1

Hi,

I’m not sure am I doing something wrong here, but transaction signing doesn’t work for me. Please let me know if I’m doing something wrong here.

$ goal account list
Please enter the password for wallet ‘XXX’:
[offline] O2QVZMKATOIEU2OD4X42MLXAYVRXLRDKJTDXKBFCN3PCKN2Z3PUS5HKIVA O2QVZMKATOIEU2OD4X42MLXAYVRXLRDKJTDXKBFCN3PCKN2Z3PUS5HKIVA 100000000000
[offline] Unnamed-0 PC5EFLRFRZUP3SKBYKH2ZFDIDTZA4IBQB7RLAPNED4R2MU5OFWCGP7ZDVM 1000 *Default

$ goal account newmultisig O2QVZMKATOIEU2OD4X42MLXAYVRXLRDKJTDXKBFCN3PCKN2Z3PUS5HKIVA PC5EFLRFRZUP3SKBYKH2ZFDIDTZA4IBQB7RLAPNED4R2MU5OFWCGP7ZDVM --threshold 2
Please enter the password for wallet ‘XXX’:
Created new account with address XS4NCA7WAFZ2MUYX3JKNZRVPDFN5XILN3IXHJWJG6CYW6NII6GX2IFKPBI

$ goal account list
[offline] O2QVZMKATOIEU2OD4X42MLXAYVRXLRDKJTDXKBFCN3PCKN2Z3PUS5HKIVA O2QVZMKATOIEU2OD4X42MLXAYVRXLRDKJTDXKBFCN3PCKN2Z3PUS5HKIVA 100000000000
[offline] Unnamed-0 PC5EFLRFRZUP3SKBYKH2ZFDIDTZA4IBQB7RLAPNED4R2MU5OFWCGP7ZDVM 1000 *Default
[offline] Unnamed-1 XS4NCA7WAFZ2MUYX3JKNZRVPDFN5XILN3IXHJWJG6CYW6NII6GX2IFKPBI 1000

$ goal clerk send -a 500 -f XS4NCA7WAFZ2MUYX3JKNZRVPDFN5XILN3IXHJWJG6CYW6NII6GX2IFKPBI -t O2QVZMKATOIEU2OD4X42MLXAYVRXLRDKJTDXKBFCN3PCKN2Z3PUS5HKIVA -o ./Trans.tx
Automatically set fee to 1 Algos

$ goal clerk multisig sign -t ./Trans.tx -a O2QVZMKATOIEU2OD4X42MLXAYVRXLRDKJTDXKBFCN3PCKN2Z3PUS5HKIVA
Couldn’t sign tx with kmd: key does not exist in this wallet

I’ve tried to move tx fee up, tried to sign with second account but output is still the same. I’ve also tried to specify wallet -w but it’s still the same output. I guess that it have something to do with my wallet password, it doesn’t ask me for it and all other operations ask me for password. I haven’t tried to do it with wallet that doesn’t have password, but if that’s the solution will create one without pass.

Ah yes, I’m using testnet-v26.0 and kmd-v0.5. Thanks in advance for your help!

Regards,
Ivica

#2

Can you try to create a new wallet, add 2 regular accounts and then create a new multisig account in that wallet. Or use the -w to specific the current wallet when using clerk or account commands.

https://developer.algorand.org/docs/creating-new-wallet
https://developer.algorand.org/docs/goal-wallet

#3

BTW I think that error has to do with trying to sign with an account that does not exist in the wallet being used. Are you doing this on a private network?

#4

I had much the same issues this time around - all on TestNet

  • Created a new wallet
  • Created three new accounts tied to the wallet
  • Created a new multisig account with all three accounts and a threshold of 2
  • Added funds via the distributor to all accounts
  • Created a transaction from the multisig account TO the task account listed and outputted to a file

Every attempt to sign the transactions with the key results in the error “Couldn’t sign tx with kmd: key does not exist in this wallet”

The above was the second go around with a new install of Algod, after getting the error on an upgraded node with similar setup I wiped it and started over.

Node is up to date and online.

I can list the wallet accounts out with ./goal account list and am asked for the password for the wallet, and have set that wallet to be used in the signing procedure - so there is no question that the wallet owns the accounts and the accounts own the keys.

Any thoughts on how to troubleshoot?

#5

There’s currently a problem with goal clerk multisig sign where it will only know how to sign using a wallet that 1. has no password and 2. is named unencrypted-default-wallet. We’re going to release a patch for goal later today to fix this, and will update you when it’s ready

EDIT Patch has been released

2 Likes
#7

Got the same error as everyone, but tried the case you mentioned above and it worked.

Before, it was my bad … I got the following error because I was trying to send more tokens than in the balance of the account:

Couldn't broadcast tx with algod: HTTP 500 Internal Server Error: transaction was rejected by local pool