Skip to main content

支払いとステークキーの設定

まず、プロトコルパラメータを取得します。

info

このエラーメッセージが表示された場合は、ブロック生成ノードが同期を開始するまで待ってから続行してください。

cardano-cli: Network.Socket.connect: : does not exist (No such file or directory)

cd $NODE_HOME
cardano-cli latest query protocol-parameters \
--socket-path $NODE_HOME/db/socket \
${NODE_NETWORK} \
--out-file params.json
tip

支払いキーは支払いの送受信に使用され、ステークキーはステーク委任の管理に使用されます。

支払いとステークのキーペアを作成します。

🔥 重要な運用セキュリティに関するアドバイス

支払いキーとステークキーは、エアギャップオフラインマシンでトランザクションを構築するために生成され、使用される必要があります。
cardano-cliバイナリをエアギャップにコピーし、CLIメソッドを実行します。
BPで実行する手順は、ライブデータが必要な場合のみです。

つまり、ホット環境(BP)では次の手順を実行するのみです。

  • 現在のスロットチップを照会する
  • アドレスの残高を照会する
  • 取引の提出
  1. 支払いアドレスキーの生成

新しい支払いキーペア(payment.skeypayment.vkey)を作成します。

cd $NODE_HOME
cardano-cli latest address key-gen \
--verification-key-file payment.vkey \
--signing-key-file payment.skey
  1. ステークアドレスキーの生成

新しいステークアドレスキーペア(stake.skeystake.vkey)を作成します。

cardano-cli latest stake-address key-gen \
--verification-key-file stake.vkey \
--signing-key-file stake.skey
  1. ステークアドレスの生成

ステークアドレス検証キーからステークアドレスを作成し、stake.addrに保存します。

cardano-cli latest stake-address build \
--stake-verification-key-file stake.vkey \
--out-file stake.addr \
${NODE_NETWORK}
  1. 支払いキーアドレスの生成

支払いキーpayment.vkeyの支払いアドレスを構築し、ステークアドレスstake.vkeyに委任します。

cardano-cli latest address build \
--payment-verification-key-file payment.vkey \
--stake-verification-key-file stake.vkey \
--out-file payment.addr \
${NODE_NETWORK}
  1. パーミッションの変更

生成したファイルのパーミッションを変更します。

chmod 400 payment.vkey
chmod 400 payment.skey
chmod 400 stake.vkey
chmod 400 stake.skey
chmod 400 stake.addr
chmod 400 payment.addr
🔥 重要なバックアップのアドバイス

支払いキーとステーキングキーのコピーをUSBキー等に格納し、オフラインで複数バックアップをとっておくこと。
キーが破損または紛失した場合、プール報酬や誓約金が引き出せなくなります。

次のステップは、支払い先アドレスに資金を入金することです。

ファイル転送

エアギャップのpayment.addrstake.addrをBPのcnodeディレクトリにコピーします。

支払い先アドレスを見つけるには、以下を実行します。

支払い先アドレスへは、ご利用しているCardano WalletからADAを入金してください。

echo "$(cat $NODE_HOME/payment.addr)"

アカウントに資金を入金した後、支払いアドレスの残高を確認してください。

事前確認

続行する前に、ノードをブロックチェーンに完全に同期する必要があります。そうしないと、資金が表示されません。

cardano-cli latest query tip ${NODE_NETWORK} | grep syncProgress

以下の表示であれば同期しています。
"syncProgress": "100.00"

cardano-cli latest query utxo \
--address $(cat payment.addr) \
${NODE_NETWORK}

次のような出力が表示されます。これが未使用のトランザクション出力 (UXTO) です。

                           TxHash                                 TxIx        Lovelace
----------------------------------------------------------------------------------------
100322a39d02c2ead.... 0 1000000000