user2092: Before funding the payment address on my staking pool, I would like to make sure that the funds can be retrieved by me, as the process of air gapping to create these series of keys and addresses introduces many opportunities for human error.
Would you please let me know if I can use cardano-cli or some other method to ensure the funds won't be lost once sending?
As a sanity-check, I sent a 1 ADA transaction back to my funding source to ensure things were okay. But I would still like a simpler way of checking that my keys are all in line.

user1764: To make a long story short, in Cardano's environment, you will need 2 sets of keys. One set to control your funds (send and receive $ADA and tokens) and one other set to control your staking activities (to participate in the protocol delegating your ADA to a stake pool or to earn rewards by operating your own stake pool).
These 2 set of keys will allow you to generate a payment address or a stake address or both meaning a payment address with "staking capacity".
As long as you keep these 2 sets of keys (payment keys and stake keys) in a safe and secured place, it's OK you will be able to have access to your funds.
It is recommended to generate these 2 sets of keys on an offline machine to minimize the risk of hack.
Generate your payment keys pair (payment.skey and payment.vkey):
cardano-cli address key-gen \
--verification-key-file payment.vkey \
--signing-key-file payment.skey

Generate your stake keys pair (stake.skey and stake.vkey):
cardano-cli stake-address key-gen \
--verification-key-file stake.vkey \
--signing-key-file stake.skey

Now for your stake pool, you will need a "payment address with stake capacity" so first we will generate a stake address and then a payment address that can delegate to the stake address.
Generate your stake address from the stake address verification key and store it in stake.addr
cardano-cli stake-address build \
--stake-verification-key-file stake.vkey \
--out-file stake.addr \
--mainnet

Finally, create this "payment address with stake capacity"
cardano-cli address build \
--payment-verification-key-file payment.vkey \
--stake-verification-key-file stake.vkey \
--out-file payment.addr \
--mainnet

That's it, now you can do whatever you want with these addresses as long as you keep your 2 sets of keys safe just for you... (especially the payment keys)
However, if you are too stressed, you can send 1 ADA to this address and then send it back with a simple transaction to make sure you have mastered the process.
You can follow this tutorial to understand how to forge and sign a simple transaction by following the instructions in this official video.
Good luck.

2092: <p>Before funding the payment address on my staking pool, I would like to make sure that the funds can be retrieved by me, as the process of air gapping to create these series of keys and addresses introduces many opportunities for human error.</p>
<p>Would you please let me know if I can use <code>cardano-cli</code> or some other method to ensure the funds won't be lost once sending?</p>
<p>As a sanity-check, <strong>I sent a 1 ADA transaction back to my funding source to ensure things were okay</strong>. But I would still like a simpler way of checking that my keys are all in line.</p>
 1764: <p>To make a long story short, in Cardano's environment, you will need 2 sets of keys. One set to control your funds (send and receive $ADA and tokens) and one other set to control your staking activities (to participate in the protocol delegating your ADA to a stake pool or to earn rewards by operating your own stake pool).</p>
<p>These 2 set of keys will allow you to generate a payment address or a stake address or both meaning a payment address with &quot;staking capacity&quot;.</p>
<p><strong>As long as you keep these 2 sets of keys (payment keys and stake keys) in a safe and secured place, it's OK you will be able to have access to your funds.</strong></p>
<p><strong>It is recommended to generate these 2 sets of keys on an offline machine to minimize the risk of hack.</strong></p>
<p>Generate your payment keys pair (<strong>payment.skey</strong> and <strong>payment.vkey</strong>):</p>
<pre><code>cardano-cli address key-gen \
--verification-key-file payment.vkey \
--signing-key-file payment.skey
</code></pre>
<p>Generate your stake keys pair (<strong>stake.skey</strong> and <strong>stake.vkey</strong>):</p>
<pre><code>cardano-cli stake-address key-gen \
--verification-key-file stake.vkey \
--signing-key-file stake.skey
</code></pre>
<p>Now for your stake pool, you will need a <em>&quot;payment address with stake capacity&quot;</em> so first we will generate a stake address and then a payment address that can delegate to the stake address.</p>
<p>Generate your stake address from the stake address verification key and store it in stake.addr</p>
<pre><code>cardano-cli stake-address build \
--stake-verification-key-file stake.vkey \
--out-file stake.addr \
--mainnet
</code></pre>
<p>Finally, create this &quot;payment address with stake capacity&quot;</p>
<pre><code>cardano-cli address build \
--payment-verification-key-file payment.vkey \
--stake-verification-key-file stake.vkey \
--out-file payment.addr \
--mainnet
</code></pre>
<p><strong>That's it, now you can do whatever you want with these addresses as long as you keep your 2 sets of keys safe just for you... (especially the payment keys)</strong></p>
<p>However, if you are too stressed, you can send 1 ADA to this address and then send it back with a simple transaction to make sure you have mastered the process.</p>
<p>You can follow this tutorial to understand how to forge and sign a simple transaction by following the instructions in <a href="https://cardano-foundation.gitbook.io/stake-pool-course/lessons/lesson-2/transaction" rel="nofollow noreferrer">this official video</a>.</p>
<p>Good luck.</p>
