ノードのoperational certificateとKES期間(ステークプール)
block producingノードには、さまざまなキーのセットが必要です。
- Cold key pair: このキーペアは「コールド」と呼ばれます。理想的には、ノードに接続されているコンピューターはもちろん、インターネットに接続されているコンピューターではなく、オフラインで作成および保存されるからです。このキーのセットを使用すると、KES期間ごとに新しいoperational certificateを生成できます。
- KES key pair: 「ホット」キーとも呼ばれ、自分が誰であるかを認証するノード操作キーです。開始時刻と鍵期間のパラメーターを使用してKES keyの有効性を指定します。このKES keyは90日ごとに更新する必要があります。
- VRF key pair and: スロットリーダーの選択プロセスへの参加をコントロールします。
- Operational node certificate: オペレーターのオフラインキーと操作キーの間のリンクを表します。certificateの役割は、悪意のある干渉を防ぐために、操作キーが有効かどうかを確認することです。 certificateは現在の操作キーを識別し、オフラインキーによって署名されます。
ステークプールのoperational certificateを作成する前に、KESの有効期間の開始を把握する必要があります。 ジェネシスファイルから次のことがわかります:
cat ff-genesis.json | grep KESPeriod
> "slotsPerKESPeriod": 3600,
したがって、1周期は3600スロット続きます。 そして現在どのスロットにいるのかを確認します。
export CARDANO_NODE_SOCKET_PATH=node1-db/node-socket
cardano-cli shelley query tip --testnet-magic 42
> Tip (SlotNo {unSlotNo = 432571}) ...
unSlotNo
値を探します。 したがって、この例では、スロット432571にいます。現在の期間では、次のようになります。
expr 432571 / 3600
> 120
したがって、この例ではKesPeriodは120です。
次に、operational certificate(node.cert)を次のように発行します。
cardano-cli shelley node issue-op-cert \
--kes-verification-key-file kes.vkey \
--cold-signing-key-file cold.skey \
--operational-certificate-issue-counter cold.counter \
--kes-period 120 \
--out-file node.cert
詳細はこちらのGithubのページをご確認ください。
Key Evolving Signature and KES period