# Register Pool with Hardware-Wallet

**URL:** <https://forum.cardano.org/t/register-pool-with-hardware-wallet/95833>\
**Category:** Setup a Stake Pool\
**Created:** [17 February 2022 14:13 UTC](https://forum.cardano.org/t/register-pool-with-hardware-wallet/95833 "2022-02-17T14:13:32Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![obi1337](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/obi1337/32/78871_2.png) [@obi1337](https://forum.cardano.org/u/obi1337)\
**Post date:** [17 February 2022 14:13 UTC](https://forum.cardano.org/t/register-pool-with-hardware-wallet/95833/1 "2022-02-17T14:13:32Z")

</div>

Hi Community,

i want to register my pool with metadata with created payment+stake keys as Operator and Hw-Wallet as Owner.

i followed this guide for instructions:

> **[Cardano Stake Pool Owners HW Support](https://adalite.medium.com/cardano-stake-pool-owners-hw-support-6d9278dba0ba)**
>
> Protect pool owner’s pledge with Ledger or Trezor.

issue1) alonzo era is not supported yet, so i had to add --mary-era in tx build → OK!  
issue2) when i now want to sign with the provided witness.json (from [adalite.io](http://adalite.io)) i get an era-error.

```auto
cardano-cli stake-pool registration-certificate \
--cold-verification-key-file cold.vkey \
--vrf-verification-key-file vrf.vkey \
--pool-pledge 10000000000 \
--pool-cost 340000000 \
--pool-margin 0.00 \
--pool-reward-account-verification-key-file stake.vkey \
--pool-owner-stake-verification-key-file stake.vkey \
--pool-owner-stake-verification-key-file owner_stake.vkey \
--mainnet \
--single-host-pool-relay relay1.xxx.xx \
--pool-relay-port 6001 \
--single-host-pool-relay relay2.xxx.xx \
--pool-relay-port 6002 \
--metadata-url https://tinyurl.com/xyz \
--metadata-hash <someHash> \
--out-file pool-registration.cert

```

```auto
cardano-cli transaction build-raw \
    --tx-in <tx>#0 \
    --mary-era \
    --tx-out $(cat payment.addr)+0 \
    --invalid-hereafter 0 \
    --fee 0 \
    --out-file tx.draft \
    --certificate-file pool-registration.cert

```

```auto
cardano-cli transaction calculate-min-fee \
    --tx-body-file tx.draft \
    --tx-in-count 1 \
    --tx-out-count 1 \
    --witness-count 4 \
    --byron-witness-count 0 \
    --mainnet \
    --protocol-params-file mainnet-protocol.json

```

```auto
cardano-cli transaction build-raw \
    --tx-in <tx>#0 \
    --mary-era \
    --tx-out $(cat payment.addr)+4797583 \
    --invalid-hereafter 53541664 \
    --fee 202417 \
    --out-file tx.raw \
    --certificate-file pool-registration.cert

```

```auto
cardano-cli transaction sign \
    --tx-body-file tx.raw \
    --signing-key-file payment.skey \
    --signing-key-file stake.skey \
    --signing-key-file witness.json \
    --signing-key-file cold.skey \
    --mainnet \
    --out-file tx.signed

```

Command failed: transaction sign Error: Error reading signing key: **witness.json** : TextEnvelope type error: Expected one of: PaymentSigningKeyByron\_ed25519\_bip32, PaymentSigningKeyShelley\_ed25519, PaymentExtendedSigningKeyShelley\_ed25519\_bip32, StakeSigningKeyShelley\_ed25519, StakeExtendedSigningKeyShelley\_ed25519\_bip32, StakePoolSigningKey\_ed25519, GenesisSigningKey\_ed25519, GenesisExtendedSigningKey\_ed25519\_bip32, GenesisDelegateSigningKey\_ed25519, GenesisDelegateExtendedSigningKey\_ed25519\_bip32, GenesisUTxOSigningKey\_ed25519 **Actual: TxWitness MaryEra**

i know it’s a sign/assemble topic but i cannot figure out, how to get my .skeys + witness files along in one signed transaction to submit.

Regards Patrick

---

<div class="post-metadata">

**Author:** ![Rafael\_Korbas](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/rafael_korbas/32/10395_2.png) [@Rafael\_Korbas](https://forum.cardano.org/u/Rafael_Korbas)\
**Post date:** [17 February 2022 16:22 UTC](https://forum.cardano.org/t/register-pool-with-hardware-wallet/95833/2 "2022-02-17T16:22:30Z")

</div>

I think this last command isn’t correct. You should “assemble” the transaction with the witness, not sign it

So instead of this

```auto
cardano-cli transaction sign \
    --tx-body-file tx.raw \
    --signing-key-file payment.skey \
    --signing-key-file stake.skey \
    --signing-key-file witness.json \
    --signing-key-file cold.skey \
    --mainnet \
    --out-file tx.signed

```

It should be something like this:

```auto
cardano-cli transaction assemble \
--tx-body-file tx.raw \
--witness-file operator.witness \
--witness-file pool.witness \
--witness-file owner.witness \
--out-file tx.signed

```

so you need to produce the respective witnesses for the other signing keys (stake.skey, payment.skey, cold.skey) using the `cardano-cli shelley transaction witness` command

These instructions can be found in the docs linked from the blog article: [cardano-hw-cli/poolRegistration.md at develop · vacuumlabs/cardano-hw-cli · GitHub](https://github.com/vacuumlabs/cardano-hw-cli/blob/develop/docs/poolRegistration.md#create-signed-transaction)

---

<div class="post-metadata">

**Author:** ![obi1337](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.cardano.org/obi1337/32/78871_2.png) [@obi1337](https://forum.cardano.org/u/obi1337)\
**Post date:** [17 February 2022 20:18 UTC](https://forum.cardano.org/t/register-pool-with-hardware-wallet/95833/3 "2022-02-17T20:18:00Z")

</div>

exactly what i needed - somehome i missread the documenation before - thank you for clarifying with your post - helped a lot!

Regards Patrick
