Nothing came up for

Ethereum and Cardano Node Clients

Lend us your voice!
Audio recordings make content accessible to more people
Record Article
Cardano_and_Ethereum_Nodes_Clients_Lido_Nation

This article is part of a series sponsored by Cardano’s Project Catalyst to help folks already familiar with Cardano be more familiar with Ethereum and vice versa. Here's more articles in the series. For more information on our grant, see proposal.

Help Translate! login

Open English text in another tab. Open

Error! Try saving again
Translation saved

いくつかの基本的な定義

ブロックチェーンネットワークにおけるテクノロジースタックの中核となるのは、ノードと、人間がノードを操作するのを助けるクライアントです。今日は、これらの要素がイーサリアムとカルダノのネットワークでどのように機能するかを比較対照してみましょう。本題に入る前に、いくつかの基本的な定義を整理しておきましょう。

コンピュータサイエンスでは、ノードはネットワーク内の物理的なデバイスで、情報の送信、受信、転送を行うことができるものです。ブロックチェーンネットワークは、メッセージの交換と保存に関するルールの集合体に過ぎません。ブロックチェーン・ネットワーク上のノードの形や大きさはさまざまですが、いずれもコンピュータ・ネットワーク上のノードと同じように、他のノードに情報を送ったり、受け取ったり、転送したりすることができます。この一般的な考え方の周りにはもっとふわふわとした複雑なものがありますが、この記事の目的では、この基本的な定義で行きましょう。

コンピュータサイエンスにおけるクライアントは、外部またはリモートのリソースを使用するものを大まかに指します。たとえば、Chrome、Brave、SafariなどのブラウザはHTTPクライアントで、リモートのウェブサーバーと通信して、この記事やその他のウェブコンテンツを画面に表示します。 同様に、ブロックチェーンは、異なるインタラクションを実行できるように、異なるクライアントを提供します。例えば、ブロックチェーンウォレットクライアントでは、暗号を受け取ったり、他の人に送ったりすることができます。ノードクライアントは、技術者がコンピュータのハードウェアを設定して、ブロックチェーンネットワーク上で情報を送受信したり、転送したりするのを支援します。2 Adaや0.1 Ethを友人やeコマースサイトに送信する場合、そのメッセージは通常、ノードクライアントによって処理され、ブロックチェーンに記録されます。

ブロックチェーンノードクライアントは、例えば私たちのブラウザクライアントと比較して、小さな独自性があります。ブロックチェーンノードとそのクライアントは、通常、腰のところでくっついているので、時には互換的に呼ばれることがあります。ブラウザクライアントはブラウザの中にいて、地球の裏側にあるウェブサーバーと会話しています。しかし、ブロックチェーンノードとノードクライアントは、多くの場合、同じデバイスに住んでいます。しかし、その親密さにもかかわらず、ブロックチェーンノードとブロックチェーンノードクライアントは2つの別物です。

ブロックチェーンノードは、データを受信して検証し、メッセージを転送し、または検証されたデータを他のノードに送信します。 ブロックチェーンノードは、ブロックチェーンの中核となるルールが格納される場所です。

ブロックチェーンノードクライアントは、ブロックチェーンノードの監督者である。ブロックチェーンノードクライアントは、開発者がトランザクションを構築し、採掘作業を実行できるようにします。ブロックチェーンノードクライアントは、ブロックチェーンノードが稼働している環境に合わせた多くの追加機能を備えていることがあります。例えば、ノードから取得したブロックチェーンのコピーを、特定のソフトウェアが読むのに最適化された方法で保存することがあります。クライアントによっては、非ブロックチェーンシステムがクライアントの背後にあるブロックチェーンノードと対話するための複数のネットワークプロトコルを提供するものもあります。クライアントは、プログラミング言語に特化することができます。

イーサリアム上の ## ノードクライアント イーサリアムのノードは、設計・作成時に、正式な仕様書によって定義されました。形式仕様とは、何かを行う、あるいは構築するための指示が、数学を使って正確に定義されていることを、オタク的な言い方で表したものです。イーサリアムのノードは正式仕様であるため、他のクライアントと相互運用性を保ち、台帳の規則に従いながら、特定のタイプのユーザーに対応するさまざまなクライアントを構築することが可能です。 その結果、イーサリアムは2015年から存在しており、他のブロックチェーンネットワークと比較して、ノードクライアントの豊かなエコシステムを享受しています。

イーサリアム財団は、Go(Geth, Prysm ), .Net/C#, Java そして Rust など人気のプログラミング言語コミュニティ向けクライアントを保持しています。また、コンピュータのコマンドラインインターフェースだけで素早くノードを読み取り、イーサリアムのブロックチェーンと通信するためのイーサリアムクライアント(OpenEthereum )がある。

イーサリアムのノードクライアントは、フルノードクライアント、ライトクライアント、リモートクライアントのいずれにもなり得ます。 フルノードクライアントはブロックチェーン全体の履歴を保持し、ブロックチェーンがサポートする可能なすべてのアクションを実行できるようにします。 ライトクライアントは通常、ブロックチェーンデータの一部のみを保持し、特定の(そして限定的な)ことを実行できるようにします。 より高速で、より少ないリソースで実行できる傾向があります。 リモートクライアントは、データの保存やメッセージの検証を行いません。その代わり、リモートでフル/ライトクライアントに接続し、タスクを実行します。リモートクライアントは、通常、ウォレットアプリケーションを構築するために使用されます。リモートクライアントの利点は、ブラウザのような場所に埋め込んで、ユーザーが自分のキーフレーズを使ってブラウザで何かを構築したり、取引に署名したり、デコードしたりできるようにできることです。ただし、ブロックチェーンに提出したり検証したりする必要があるものは、その後、リモートフルクライアントまたはライトクライアントに送られて処理されます。

これらのノードとノードクライアントは、ほとんど交換可能です。ライトクライアントをフルノードに接続したり、フルノードクライアントをアーカイブノードに接続したりすることができます。通常、ノードクライアントは、接続されているノードの種類を測定し、それに応じて自分自身を構成する。

多くのクライアント、特にブロックチェーンのコアに近いクライアントを持つことのトレードオフの1つは、イーサリアムのコアシステムへのアップデートを調整し、リリースすることです。 これは難しいことかもしれません。コミュニティ全体からの調整がないと、クライアントがアップデートに対応できていない状況が発生し、ネットワーク上にメッセージを作成して問題を引き起こす可能性があります。 2021年8月、人気のあるクライアントノードの1つであるGethは、多くのユーザーが古いバージョンのクライアントを使用しており、これが原因でイーサリアムネットワークがフォークしてしまいました。ブロックチェーン上のフォークは、複数のバージョンの履歴が競合したときに起こります。それらのユーザーはノードクライアントを更新することができ、履歴は調整された。

カルダノのノードクライアント

カルダノのノードとクライアントに関しては、まだ始まったばかりである。この記事を書いている時点では、実運用されているノードとクライアントの実装は1つだけである。これはHaskellで書かれており、Cardanoの設立主体の1つであるIOGによってメンテナンスされている。つまり、ブロックチェーン層に密接に触れるリッチなアプリケーションを構築したい場合、アプリケーションがブロックを構築したり、他のCardanoノードからのブロックを処理したい場合は、Haskellで書かなければならないということである。 また、このクライアントは、ブロックの生成や中継に興味があることを想定しています。

IOGのノードとクライアントの実装は、ノードクライアントにトランザクションを送信し、基本的な質問をするためのCLIとRESTインターフェースの両方を提供します。

IOGは、Mithrilと呼ばれる別のノードとクライアントの実装を開発中です。これは現在テスト中で、今後数カ月でリリースされる予定です。Mithrilでは、完全なノードクライアントを作成し、ブロックチェーンと完全に同期させることができます hours rather than days. 将来的には、Mithrilはイーサリアム式のライトクライアントを開発するためのキーコンポーネントにもなるでしょう。

Project Catalystを通じて、カルダノコミュニティは、現在IOGノードとクライアントの実装がうまく機能していないユースケースとプログラミング言語コミュニティに対応するための代替ノードクライアントを夢見ているのです。

link model_type=CatalystUser id=2]Five Binaries[/link]のチームは、特にメタデータ・アプリケーションに対応するクライアントを開発したいと考えています。Metadata oracle nodeです。

TxPipesは、データや読み込みの多いアプリケーションに特化したRust node clientを開発したいと考えています。クラウドネイティブであり、現在のIOGノードクライアントのようにローカルサーバにではなく、クラウドに効率的にデータを保存できるようにしたいと考えています。TxPipeクライアントは、HTTP/JSONとgRPCネットワーク通信のサポートも提供します。

Ethereumと同様、Cardanoのノードとクライアントの実装は正式に規定されているため、現在のIOGのクライアントや将来のクライアントと相互運用性を持ちながら、これらをはじめとする多くのノードとクライアントのソフトウェアを特定の環境向けに記述することができる。

結論

ブロックチェーンネットワークは、立ち上げ後にどれだけコミュニティとグローバルな支持を集めることができるかによって生死を決します。ノードとクライアントの実装の豊かなエコシステムを持つことは、ブロックチェーンネットワークがビジネスコミュニティから支持されていることの良い兆候の1つです。

イーサリアムについては、この記事を読む前に、テレビやビルボード、あるいは何らかのスクリーンで何度も目にしたことがあるかもしれない。イーサリアムは、ビジネス界からの支持を獲得しています。

スマートコントラクト・ブロックチェーンアプリケーションのサポートを開始してからわずか1年で、すでに多くのノードとクライアントを実装するところまで来ていることは、Cardanoにとって良い兆候です。そのコミュニティは充実しており、今後作業が進めば、より広いビジネスコミュニティからどれだけの賛同が得られるかがわかるだろう。

Related Links

このような記事をメールで受け取る

Was the article useful?

Or leave comment
Share

Related Insights

Beans, Brains, & Blockchains:

The Avalanche Blockchain Platform

The Cost of Honesty

カルダノとイーサリアムのウォレット

No comments yet…

avatar
You can use Markdown

Support the Library

You can support the work we do by delegating to the LIDO pool, pickup a ware in our bazaar, or sponsor a podcast episode.

Lido Nation: Origin Story

The Lido Nation staking pool launched on the Cardano mainnet in December 2020. From there, a couple of dreamers started to talk about what our little corner of the network should look like. As a pair of curious birds, who get excited about learning and sharing knowledge, we noticed that there wasn’t enough of the kind of material we wanted to read about blockchain, and Cardano.

So we started to write it!
-
News Articles
-
Educational Articles
-
Minutes of audio readings
-
30-day Page Views
-
30-day Catalyst Queries
-
Hrs of twitter spaces/wk
EP1: 'd' Parameter
0:00
/
~1:00
1x