Issues signing stake pool registration certs in alonzo (updating pool.cert)

I’ve signed these transactions to update my pool.cert many times in different eras so i’m pretty sure i’m generating the transactions for stake pool registration correctly. I haven’t had problems before in different versions. I’m using cardano-node and cardano-cli 1.33.0.

I’m signing with a hardware wallet.

Using cardano-hw-cli I get the following error when signing an alonzo era registration:
Error: Invalid raw transaction CBOR

I tried to it in with their advanced tab signing and I got this error:
Parser error: Invalid transaction format. Unsupported transaction era, preferably use TxBodyMary era.

Anyone else experiencing the same issue?
Was there a change to any procedures generating the registration transactions?

You are trying to update your pool.cert & deleg.cert correct? If yes, did you make sure that after updating your nodes to 1.33.0, you copied your cardano-cli and cardano-node off the block producer and into to the /usr/local/bin of the air gapped machine also? You will additionally need to make sure those files have permission to execute as a program.

Step 18.4 in CoinCashew may also provide some insight.

Hope this helps, but I’ve never completed the specific process you are referring to here.

I am trying to update my pool.cert can deleg.cert. Both my core and my air gapped machine have the cli version 1.33.0. I think the issue is that there isn’t support for hardware wallet signing these files yet. I may have to build them with an older executable.

1 Like

If you are trying to use cardano-hw-cli, then there is a bug:

Try to use --mary-era when you build the transaction. So if you are using coincashew manual then this is step where you need to add this:

cardano-cli transaction build-raw \
    ${tx_in} \
    --mary-era \
    --tx-out $(cat payment.addr)+${txOut} \
    --invalid-hereafter $(( ${currentSlot} + 10000)) \
    --fee ${fee} \
    --certificate-file pool.cert \
    --out-file tx-pool.raw

os11k posted a great easy solution to this problem. My solution using different CLIs isn’t needed

In Alonzo,there isn’t any current support or there are bugs when using hardware wallets to sign transactions. I tried to use an older cardano-cli for everything and it wasn’t working properly when interacting with the blockchain.

My solution:
You must generate the transaction and signatures using an older cardano-cli however you must also process the rest of the steps that need cardano-cli with the newest version of cardano-cli.

Similar steps will probably needed in the future if a similar issue occurss. So here’s exactly what I did.

cardano-cli (1.33.0 current version):
To get any information (slot, fee, submit, etc) or submit transactions to the blockchain

cardano-cli (1.27.0 older version)
To generate the raw transaction and generate signatures or signing that same transaction.

If there are similar issues in the future then reverting to an older cli will just mean use older the cli version for generating the raw transaction, generating signatures and signing.

This worked for me, thanks for sharing @os11k

1 Like

Yep, this worked for me too. This is an easier solution that using different versions of cardano-cli

1 Like

Also add --mary-era \ works for me.

Thanks a lot!!

1 Like