Cardano Node が内蔵の UTxO RPC を開発者向けに公開

このインターフェイスは型付きのチェーンデータをストリーミングし、トランザクションを評価し、新しいブロックを cardano-node から直接追跡します。これにより、Cardano アプリケーションは標準化されたノード接続を得られ、別個のブリッジ基盤の必要性が減ります。

By SongMarketCap

Cardano News - Cardano Node が内蔵の UTxO RPC を開発者向けに公開

cardano-node は、cardano-rpc と呼ばれる統合 gRPC インターフェイスを通じて、構造化されたブロックチェーンデータを提供できるようになりました。開発者は UTxO の取得、トランザクションの評価と送信、さらにノードプロセス自体からのライブなブロックおよびロールバック更新を受け取れます。

このインターフェイスはバージョン 10.7.0 以降、ノード内部で開発が進められてきました。9 月 17 日に公開されたドキュメントには、Go、Haskell、Python、Rust、TypeScript 向けのクイックスタート例が含まれています。gRPC リフレクションを用いる現在のセットアップには、master ブランチのコミット e95d55e 以降でビルドされたノードが必要です。

Cardano Node は型付きチェーンデータをストリーミング

cardano-rpc は既定では無効で、ノード設定で有効化できます。

そのクエリ機能は、プロトコルパラメータ、UTxO レコード、ジェネシス情報、エラのサマリーを返します。送信機能はトランザクションの受け付けと評価を行い、同期サービスは現在のチェーン先端と個々のブロックを提供します。

FollowTip メソッドはノードとのライブ接続を維持し、チェーンの進行に合わせて完全にパース済みのブロックを配信します。このストリームにはロールバックも含まれ、Cardano が別の有効なチェーン継続を選択した際に、アプリケーションがローカル状態を更新できるようにします。

接続はローカルの Unix ソケット経由で動作するか、TLS 付きの TCP を使用できます。サーバーは gRPC リフレクションにも対応しており、grpcurlgrpcui といった標準ツールが利用可能なサービスを発見して呼び出せます。

UTxO RPC が Cardano にとって重要な理由

アプリケーションのバックエンドはしばしば、Cardano のノード対クライアントプロトコルのデータを、ウォレットや取引所、分散型アプリケーションに適した形式へ変換するために追加プロセスを使用します。

内蔵の RPC レイヤーは、その作業の一部をノード内に取り込みます。バックエンドは型付き protobuf インターフェイスを用いてチェーン状態を読み取り、ADA のトランザクションを評価して送信でき、基本的なノード操作のために独自のアダプターを保守する必要がありません。

cardano-rpc は、TxPipe の Catalyst Fund 11 による取り組みで作成されたオープンな UTxO RPC 仕様を実装しています。同じインターフェイスは Dolos、Blink Labs、Demeter に関連するインフラでもサポートされており、互換性のあるクライアントコードが異なるサーバーへ接続できます。

この実装は cardano-api の上に構築されており、Cardano のエラ、CBOR データ、台帳クエリ、トランザクション処理を扱います。したがって将来のハードフォークで導入されるプロトコル変更は、ノード開発の過程で RPC レイヤーにも反映される必要があり、新しいエラに対して外部統合が遅れるリスクを低減します。

インフラ運用者にとっては、別個のブリッジを使用している現在のデプロイメントからプロセスを一つ削減できる可能性があります。開発チームは ADA や Cardano ネイティブトークンを扱うサービスのための共通インターフェイスを得られます。

SDK とインデックス化の制約は依然として残る

この RPC インターフェイスが既存のあらゆるインフラコンポーネントを置き換えるわけではありません。Ogmios は UTxO RPC ではなく JSON-RPC を使用しているため、移行にはクライアント側の変更が必要です。Kupo などのインデクサは、資格情報やアセット、履歴アクティビティをカバーする追加インデックスに依存する検索のために引き続き必要です。

SDK の互換性も未完成です。MeshJS と Lucid Evolution の公開プロバイダーは依然として、旧来の v1alpha API を公開する古いパッケージに依存しています。新しいインターフェイスのサポートは UTxO RPC 仕様にマージされていますが、対応するパッケージのリリースは未定のままです。現時点のアクセス手段は、直接のクイックスタートと標準的な gRPC ツールです。 UTxO RPC specification update

今回の発表には本番性能のベンチマークは同梱されておらず、既存の Ogmios、Kupo、各種インデクサのデプロイメントは引き続きサポートされます。

差し当たりの変化は運用面です。cardano-node は今や、単一の型付きインターフェイスを通じてパース済みブロックとロールバックをストリーミングし、台帳クエリに応答し、トランザクションを評価して受け付けられます。次の拡張ポイントは SDK 層であり、更新された UTxO RPC パッケージが、このアクセスが一般的な Cardano アプリケーション開発にどれだけ速く届くかを左右します。