Cardano Node 1.34.0

ステークプールのアップグレード前に、内容をきちんと理解するためにまとめております。内容の保証はできかねるため、あくまで原文の補助としてお使いください。

Nodeバージョン1.34では、ステイクプールオペレーターやその他のユーザーにとって有益な、以下のような重要な新機能が追加されています。

  • 新しいトレースメカニズム

  • ローカルのmempoolを問い合わせる新しいコマンド

  • ステークプールオペレーターにリーダーシップスケジュールを提供する新しい

  • ステークプールの運用証明書の有効性を確認するコマンドを追加(KES期間の確認も含む)

  • トランザクションビルドコマンドでCBORエンコーディングをサポート

  • トランザクションのボディを元帳に準拠したCDDL形式で出力するオプション

  • Plutusスクリプトの実行コストを計算するためのオプション

  • インクリメンタル・トランザクション署名

また、多くの安定性の向上とPlutusスクリプトのパフォーマンスの向上が含まれています。

既知の問題点

同期時間の増加を避けるため、Windowsユーザーはノードバージョン1.34.0にアップグレードしないことをお勧めします。代わりに、ノード1.33.0を継続して実行することをお勧めします。今後のリリースでは、Windowsに特有のこの問題に対処する予定です。

技術仕様

Minimum System Requirements
  • 2 コア以上のIntelかAMD x86プロセッサで1.6GHz以上 (ステークプール、リレーノードは2GHz 以上)

  • 12GBのRAM

  • 50GBのディスク空きスペース

Platforms
  • Linux 64-bit (Ubuntu 18.04 LTS, 20.04 LTS; Mint 19.3, 20; Debian 10.3)

  • Windows 64-bit (8.1, 10, 11)

  • MacOS 10.13, 10.14, 10.15, 11

Supported roles

ドキュメンテーション

変更履歴

ノード
  • IPC経由のシャットダウンと指定スロット到達時のシャットダウンのロジックを分離。 (#3320, #3508)

  • Plutusスクリプトの認証と引き出しに関するテスト (#3318)

  • 各種ドキュメントを更新 (#2875, #2884, #2839, #2904, #3476, #3482, #3486, #3500, #3502, #3542, #3553, #3573, #3603)

  • cardano-node に新しいトレースシステムを統合(#3450, #3496, #3497, #3498, #3570)

  • ステークレデンシャル履歴ツールに、プロトコルのバージョンが追加表示されるようになりました。(#3409)

Consensus

Ledger

Network
  • ローカルmempoolを問い合わせるための新しいミニプロトコルを追加 (#3404)

  • ミニプロトコルがタイムアウトした場合、MUXを停止するようにしました。これは、ピアがコールドに降格した場合に発生する可能性があり、ピアが再び昇格した場合にミニプロトコルが不明な状態で長引く可能性があります。(#3575, #3580)

  • ブロックフェッチにおいて、ピアIDに基づくピアの順序付けを回避。ピア ID に基づいて順序付けすると、すべてのノードが同じ 2 番目、3 番目のピアを選択することになりがちです。現在は、ノードローカルなランダムな順序に基づいています。(#3535)

Cardano-cli
  • アップデート提案のレンダリングをより美しくする。 (#3208)

  • transaction buildtransaction build-raw コマンドで、CBORエンコードされたブロブのサポートを追加しました。 (#3483)

  • leadership-schedule の実装。これは、現在と次のエポックにおけるステーク・プールのリーダーシップ・スケジュールを計算することができます。そのステイクプールの VRF 署名キーにアクセスする必要があります。(#3464, #3494)

    > cardano-cli query leadership-schedule \
       --testnet-magic 42 \
       --genesis example/shelley/genesis.json \
       --stake-pool-id  pool12t0y7agkqct89pf00eeytkvfjlquv76tjy27duannan9w63ckxv \
       --vrf-signing-key-file example/node-pool1/shelley/vrf.skey
       --current
    
       SlotNo                          UTC Time
       --------------------------------------------------------
       4073                   2021-12-29 17:26:54.998001755 UTC
       4126                   2021-12-29 17:27:00.298001755 UTC
       4206                   2021-12-29 17:27:08.298001755 UTC
       4256                   2021-12-29 17:27:13.298001755 UTC
       4309                   2021-12-29 17:27:18.598001755 UTC
       4376                   2021-12-29 17:27:25.298001755 UTC
       4423                   2021-12-29 17:27:29.998001755 UTC
       4433                   2021-12-29 17:27:30.998001755 UTC
  • CLIは、 transaction buildtransaction build-raw コマンドで元帳に準拠したCDDLでトランザクションボディを出力することをサポートするようになりました。これは、--cddl-format フラグを使用して指定します。(#3505)

  • CLIでkes-period-infoコマンドを実装。これは、運用証明書が正しいかどうかをチェックするものです。チェックされます。

    • カウンターは、ノードのプロトコル状態にあるものと一致します

    • 運用証明書のKES期間が正しいこと (現在のスロットに基づき). (#3459, #3572, #3599)

    > cardano-cli query kes-period-info --testnet-magic 42  \
      --op-cert-file example/node-pool1/shelley/node.cert
    ✓ The operational certificate counter agrees with the node protocol state counter
    ✓ Operational certificate's kes period is within the correct KES period interval
    {
        "qKesNodeStateOperationalCertificateNumber": 6,
        "qKesCurrentKesPeriod": 404,
        "qKesOnDiskOperationalCertificateNumber": 6,
        "qKesRemainingSlotsInKesPeriod": 3760228,
        "qKesMaxKESEvolutions": 62,
        "qKesKesKeyExpiry": "2022-03-20T21:44:51Z",
        "qKesEndKesInterval": 434,
        "qKesStartKesInterval": 372,
        "qKesSlotsPerKesPeriod": 129600
    }
  • CLIで担保入力をよりきれいに表示するようにしました。(#3463)

  • transaction sign コマンドは、--tx-fileを介して署名済みのトランザクションを提供することにより、インクリメンタル署名を可能にしました。これにより、より簡単にトランザクションに複数の署名を追加できるようになりました。(#3549)

  • transaction build コマンドに、含まれるスクリプトのコストを計算するオプション (--calculate-plutus-script-cost) が追加されました。(#3589)

    cardano-cli transaction build \
    --alonzo-era \
    --cardano-mode \
    --testnet-magic "$TESTNET_MAGIC" \
    --change-address "$utxoaddr" \
    --tx-in "$plutusutxotxin" \
    --tx-in-collateral "$txinCollateral" \
    --tx-out "$dummyaddress+10000000" \
    --tx-in-script-file "$plutusscriptinuse" \
    --tx-in-datum-file "$datumfilepath"  \
    --protocol-params-file "$WORK/pparams.json" \
    --tx-in-redeemer-file "$redeemerfilepath" \
    --calculate-plutus-script-cost "$WORK/create-datum-output.scriptcost"
    
    > cat $WORK/create-datum-output.scriptcost
    [
      {
          "executionUnits": {
              "memory": 1700,
              "steps": 476468
          },
          "lovelaceCost": 133,
          "scriptHash": "67f33146617a5e61936081db3b2117cbf59bd2123748f58ac9678656"
      }
    ]
Cardano-api
  • lovelaceToTxOutValue の公開(#3381)

  • 現在のエポックと次のエポックのリーダーシップスロットをそれぞれ取得するために、2つの機能を実装: currentEpochEligibleLeadershipSlotsnextEpochEligibleLeadershipSlots (#3464, #3494)

  • 他のソフトウェアで C ライブラリとして cardano ノードを使用することをサポートするためcapi ライブラリの追加 (#3501)

  • fromShelleyAddrは、時代を決定するために明示的なShelleyBasedEraパラメータを取るようになりました。以前の動作(暗黙のIsShelleyBasedEra制約付き)は、fromShelleyAddrIsSbeで取得することができます。 (#2253, #3606)

Plutus
  • Plutusスクリプトのパフォーマンス向上

Deprecated features

Fixed issues
  • CLIのヘルプテキストにあるスペルミスを修正。(#3499)

  • 降格したホットピアーに関して見られる、偽のアサーションの失敗を修正しました。 (#3588)

Last updated