Lección 1

イーサリアムの技術概要

1. イーサリアムは、ブロックチェーンテクノロジーに基づく分散型スマートコントラクトプラットフォームであり、アカウントモデルとイーサリアムをトランザクションの交換媒体として使用します。 スマートコントラクトは、データの透明性と不変性の特性を持ち、分散型で安全な実行環境を享受しています。 2.イーサリアムはスケーラビリティの問題に直面しており、開発コミュニティは、スケーラビリティを実現し、パフォーマンスを向上させるために、サイドチェーン、ロールアップ、シャーディングテクノロジーなどのさまざまなソリューションを提案しています。

序文

イーサリアムは、誰でも分散型アプリケーションを構築して使用できるオープンブロックチェーンプラットフォームです。 2013年、イーサリアムの創設者であるヴィタリック・ブテリンは、イーサリアムの設計と技術的側面の中核を概説したイーサリアムホワイトペーパーを発行し、将来のブロックチェーンアプリケーションとエコシステムの活発な開発の基礎を築きました。

イーサリアムの主な目標は、デジタル決済システムとしてだけでなく、ビットコインの機能を改善することでした。 2つの主な違いは、イーサリアムが実行できるコードを保存できることです。 このコアイノベーションはスマートコントラクトとも呼ばれ、開発者は誰でもイーサリアムブロックチェーン上に実行可能な分散型アプリケーション(dApps)を作成して、さまざまなビジネスニーズや社会契約を実装できます。

スマートコントラクトの出現により、ユーザーは信頼や仲介者を必要とせずに、安全で透過的で自動化されたトランザクションとコラボレーションを実行できます。 これにより、ブロックチェーンネットワークの有用性と機能が拡張されました。

ただし、イーサリアムの開発と実用化には必然的にいくつかの課題があり、最も重要なのはスケーラビリティの問題です。 暗号通貨市場が急速な成長と取引量の急増を経験したとき、イーサリアムブロックチェーンのパフォーマンスは需要を満たすには不十分になります。 したがって、イーサリアムは、成長するユーザーベースに対応するために、継続的な革新と進化を必要としています。

このレッスンでは、イーサリアムの技術的進化の包括的な概要を提供し、イーサリアムがブロックチェーンスペースのパイオニアとしてどのように浮上したかを探り、イーサリアムが直面しているスケーラビリティの課題と対応するソリューションを理解するためのガイドを提供します。

イーサリアムの技術アーキテクチャの概要

以前のテクノロジーの限界

イーサリアムが登場する前は、ブロックチェーン開発の焦点は主にデジタル通貨と支払いシステムに限定されており、分散型ブロックチェーン元帳を使用してトランザクションを記録していました。 ビットコインを例にとると、ビットコインネットワークは、未使用トランザクション出力(UTXO)モデルを使用する状態遷移システムと見なすことができます。 UTXOは、別のトランザクションで使用できるトランザクションからのトークンの残りの量を指します。 それは、誰かがあなたにいくらかの金額を与えた後の残りの未使用残高として解釈することができます。

マイナーが新しいブロックを生成するたびに、新しいブロックには既存のUTXOを消費して新しいUTXOを作成する有効なトランザクションが含まれているため、ビットコインネットワークの状態の変化を表します。 これらの新しいUTXOは、ビットコインネットワークの最新の状態になり、すべてのユーザーが所有するビットコインの数と分布を反映します。

以前の状態 + 新しいブロックの有効なトランザクション = 現在の状態

UTXOの状態遷移

日常生活では、ブロックチェーンアドレスがアカウントに対応する従来の銀行システムで使用されているアカウントモデルに精通しています。 各取引には、ある口座から別の口座への資金またはデータの転送が含まれ、口座残高はあなたが所有する資産です。 UTXOモデルを使用してトランザクションを行う場合、アドレスに制限がないため、トランザクションごとに異なるアドレスを使用できます。 あなたの資産は、特定のアドレスの残高ではなく、あなたに関連付けられているすべてのUTXOの合計です。 したがって、UTXOは並列化が優れていますが、アカウントモデルは順番に実行される可能性が高く、パフォーマンスが制限されます。 UTXOモデルはより優れたプライバシーとスケーラビリティを提供しますが、直感的ではなく、複雑な論理操作を実装するのは困難です。 たとえば、ビットコイン のプログラミング言語には次の制限があります。

  1. 非チューリング完全
    ビットコインスクリプト言語はさまざまな機能をサポートしていますが、すべての計算をサポートしているわけではなく、特にループはサポートされていません。 理論的には、IFステートメントの複数のレイヤーを介して基になるコードを繰り返し実行することで、ループ操作を実現できますが、これにより運用効率が非常に低くなります。

  2. 値を決定するのが難しい
    UTXOスクリプトは、引き出すことができる金額を細かく制御することはできません。 たとえば、ユーザー A は価格リスクをヘッジする必要があり、ユーザー B はカウンターパーティとして機能します。 両当事者は、1,000ドル相当の資産を契約に預け入れます。 30 日後、ユーザー A は $1,000 相当のビットコインを受け取り、残りの部分はユーザー B に送信されます。これには、オラクルが1ビットコインのドル価値を決定する必要があり、オラクルは異なる金種の多くのUTXOを保持する必要があります。

  3. 州の柔軟性の欠如
    UTXOは、使用することも使用しないこともできます。 オプション契約、分散型見積システム、暗号コミットメントプロトコル、および多段階状態(「使用中」など)を必要とするその他のアプリケーションを作成することは困難です。 したがって、UTXOは、分散型プロトコルのより複雑な「ステートフル」コントラクトではなく、単純な1回限りのコントラクトを構築するためにのみ使用できます。

  4. ブロックチェーンデータを表示できません
    UTXOモデルには、乱数、タイムスタンプ、前のブロックのハッシュなどのブロックチェーンデータを可視化できません。 この制限により、ゲームやその他の種類のdAppの開発が制限されます。

イーサリアムのアカウントモデル

スマートコントラクトアプリケーションのビットコインの欠点に対処するために、イーサリアムはUTXOモデルを放棄し、データベースが各アカウントの残高を記録し、トランザクションごとに自動的に更新する個人の銀行口座に似たアカウントモデルを採用しました。

イーサリアムには、秘密鍵によって制御される外部所有のアカウントと、スマートコントラクトコードによって制御される契約アカウントの2種類のアカウントがあります。 イーサリアムは、イーサリアムネットワーク内の交換媒体として機能します。

  • アカウント
    イーサリアムのすべてのアカウントには、銀行口座のアカウント番号と同様に、一意の20バイトのアドレスがあります。 アカウントはEtherまたはデータを保存でき、Etherを転送したり、トランザクションを通じて相互にメッセージを送信したりできます。
  • 契約
    契約書は自動販売機のようなものです。 Etherをコントラクトに送信すると、コントラクト内のコードが実行され、コードで定義されたロジックに基づいて特定の操作が実行されます。 コントラクトは、データの格納、コードの実行、メッセージの送信、および他のコントラクトとの対話を行うことができます。
  • エーテル
    イーサリアムは、イーサリアムネットワークのガス料金の支払いに使用できるイーサリアムのネイティブ暗号通貨です。 銀行振込と同様に、取引を通じてEtherを送金し、契約内のサービスや製品を購入するために使用できます。

スマートコントラクト

ブロックチェーンの開発において、イーサリアムはスマートコントラクトとdAppの広範な採用を促進する最初のブロックチェーンネットワークでした。 イーサリアムのスマートコントラクトは通常、Solidity言語を使用してプログラムされています。 これらは、自動化、分散化、透明性、不変性などの機能を備えたブロックチェーン上で実行されるプログラムであり、さまざまなビジネスロジックやトランザクションルールの実装に適しています。 ユーザーは、第三者を信頼することなく、安全かつ確実に取引できます。

スマートコントラクトを使用してさまざまなタイプのdAppを開発できるため、イーサリアムネットワークは本質的にグローバルに共有されるコンピューターになります。 誰でもデータにアクセスし、このコンピューター上のさまざまな種類のアプリケーションを編集および操作して、ニーズを満たすことができます。

一見すると、ソフトウェアプログラムを実行しているだけなので、特にユニークに見えないかもしれませんよね? 集中型サーバーにデータを保存してWebアプリケーションコードを実行したり、パーソナルコンピューターにソフトウェアをインストールしたりすることで、スマートコントラクトと同じアプリケーション機能を実現できるように見えます。

ただし、このアプローチには、データの損失、改ざん、サービスの中断などの制限とリスクが伴います。 スマートコントラクトの出現は、従来のアプリケーションに対して前例のないセキュリティ、検証可能性、および検閲耐性を提供します。 具体的には、イーサリアムのスマートコントラクトには、一般的なWebアプリケーションやクライアント側のソフトウェアと比較して、いくつかの重要な違いがあります。

  • データストレージ
    スマートコントラクトデータはブロックチェーンに保存され、各ノードには完全なコピーがあります。 その結果、データは透過的で不変です。 対照的に、一般的なWebアプリケーションとクライアント側ソフトウェアのデータは、サーバー管理者または許可された個人のみがデータにアクセスして変更できる集中サーバーに保存されます。 これにより、データが不透明になり、変更可能になります。
  • プログラムロジック
    スマートコントラクトのプログラムロジックはブロックチェーン上に書かれており、一度デプロイすると変更または削除するのは困難です。 その結果、プログラムロジックは固定され、予測可能です。 対照的に、一般的なWebアプリケーションとクライアント側のソフトウェアは一元化されたサーバーに記述されているため、いつでも変更や削除が可能です。 これにより、プログラムロジックが柔軟になり、予測不可能になります。
  • 実行環境
    スマートコントラクトの実行環境はブロックチェーンネットワークによって提供され、各ノードはスマートコントラクトを検証して実行できます。 したがって、実行環境は比較的分散化されており、安全です。 対照的に、一般的なWebアプリケーションとクライアント側のソフトウェアは、サーバーのみがそれらのプログラムを実行できる実行環境を提供するために、集中サーバーに依存しています。 したがって、実行環境は集中型であり、比較的安全ではありません。
  • インタラクション方法
    スマートコントラクトはブロックチェーントランザクションを通じて相互作用し、各インタラクションにはトランザクション手数料として一定額のEtherが必要です。 したがって、相互作用方法ではコストと遅延が発生します。 一方、一般的なWebアプリケーションはHTTPリクエストを介して対話しますが、パーソナルコンピューター上のクライアント側ソフトウェアはオペレーティングシステム内で直接動作できます。 このような場合のインタラクションは通常、支払いを必要としないため、インタラクション方法はコストがかからず、即時に近くなります。

イーサリアム仮想マシン

イーサリアム仮想マシン(EVM)は、イーサリアムブロックチェーン上で動作するチューリングコンプリートコンピュータです。 スマートコントラクトのコードを実行し、ブロックチェーンの状態を変更します。 それを理解するためのアナロジーは、パーソナルコンピューターまたはスマートフォンで実行されているオペレーティングシステム(OS)であり、この特定の環境内でのみスマートコントラクトとイーサリアムアプリケーションを実行できます。

この EVM (評価基板) は、外部からの干渉の影響を受けず、基盤となるハードウェアに影響を与えることなく、絶縁された環境で動作します。 これは、通常はSolidity言語で記述されたスマートコントラクトのコードをEVMバイトコードと呼ばれるバイトコード命令セットにコンパイルすることによって機能します。 次に、EVM はこれらの命令をステップごとに実行します。

EVMを実行すると、トークンの転送、データの保存、イベントのトリガーなど、ブロックチェーンの状態が変化します。 悪意のあるスマートコントラクトコードが無限ループを引き起こしたり、イーサリアムネットワークをクラッシュさせたりするのを防ぐために、各命令は一定量のガスを消費します。 ガスが不足している場合、操作は実行できません。

ガス料金

ガス料金とは、スマートコントラクトの実行またはトークンの転送のためにイーサリアムネットワーク上のイーサリアム(ETH)で支払われる取引手数料を指します。 これは、ネットワークを維持する鉱夫に報酬を与えるために使用されます。 ガス料金のコストは、トランザクションの複雑さとネットワークの輻輳レベルに依存し、通常はGwei(1 Gwei = 0.000000001 ETH)で測定されます。

トレーダーは、独自のガス価格(ガスの単位あたりの価格)とガス制限(支払う意思のあるガスの最大量)を設定して、取引の速度とコストを調整できます。

イーサリアムのガス料金の計算式は次のとおりです。
ガス価格*ガス制限=ガス料金

ガス価格は、料金の単価を表します。 ガス価格が低すぎると、取引の優先順位が低くなり、鉱夫はそれを無視する可能性があります。
ガス制限とは、料金の量を指します。 ガス制限が低すぎる場合、トランザクションの優先度には影響しませんが、実行が不完全なためにトランザクションが失敗する可能性があり、支払われたガス料金は返金されません。

EIP-1559(イーサリアム改善提案)では、ガス価格には、ネットワークの需要とブロックサイズに基づいて動的に調整される基本料金が含まれています。 ガス価格が基本料金を超えて設定された取引は処理されることが保証されており、ETHはイーサリアムネットワークでのトークン供給を減らすためにバーンされます。

チップは、ユーザーが鉱夫やバリデーターに支払うことをいとわないオプションの追加料金です。 ユーザーはチップに独自の値を設定できるため、トランザクションの優先度を向上させたり、ネットワークの輻輳時にトランザクションの速度を速めたりするのに役立ちます。

イーサリアムのガスメカニズムにより、ブロックチェーンネットワークの計算リソースとストレージスペースを適切に価格設定することができ、スマートコントラクトが無限の間違ったループを実行したり、悪意のあるアクターに攻撃されたりするのを防ぐことができます。

マイニング

2022年9月のイーサリアムマージ以前は、イーサリアムとビットコインの両方が、ブロックチェーンネットワークの通常の運用を容易にするためにプルーフオブワーク(PoW)コンセンサスメカニズムに依存していました。

マイニングに参加するデバイスは、計算能力を使用して特定の要件を満たすハッシュ値を計算することにより、複雑な暗号パズルを解く必要がありました。 このプロセスは大量の計算リソースと電力を消費し、パズルの難易度はネットワークコンピューティング能力によって変化し続けました。 計算能力を提供するユーザーは、マイナーと呼ばれていました。

ハッシュ値の計算を継続的に試みることで、マイナーは要件を満たすハッシュ値を見つける機会がありました。 その後、マイナーは保留中のトランザクションをブロックにパッケージ化し、検証と確認のためにブロックをネットワーク全体にブロードキャストできます。 ブロックが確認された場合、マイナーはブロック報酬と取引手数料を受け取ります。

イーサリアム2.0のアップグレード後、イーサリアムはマイニングにプルーフオブステーク(PoS)コンセンサスメカニズムを採用しました。 トランザクションを検証するノードは、新しいブロックを生成する権利を競うために、担保として一定量のEtherを賭ける必要があります。

ステーキングの目的は、ノードに経済的リスクを課し、ネットワークを攻撃するノードがステーキングされた資産を削減し、損失につながるようにすることです。 これは、悪意のある動作に対する抑止力として機能します。 ノードがより多くのEtherを賭けるほど、新しいブロックを生成する権利を得る可能性が高くなります。

ブロックの生成を担当するノードは、保留中のトランザクションをパッケージ化し、新しいブロックを生成し、検証と確認のためにネットワークにブロードキャストする必要があります。 ブロックが確認されると、ノードはブロック報酬と取引手数料、およびステーキングされた資産の量に基づく特定のリターンを受け取ります。

マイニングメカニズムは、イーサリアムネットワークで重要な役割を果たし、主に次の側面に反映されます。

  1. トランザクションの信頼性とセキュリティの確保
    マイニングでは、ブロックチェーンに新しいトランザクションを追加し、ブロック数を増やし、プルーフオブワーク(現在はプルーフオブステーク)を取得してこれらのトランザクションの正当性を確認します。 マイニングにより、攻撃者が悪意を持ってトランザクションを改ざんすることが困難になり、トランザクションの信頼性とセキュリティが確保されます。

  2. ブロックチェーンの分散化の維持
    マイニングメカニズムは、マイニングにかなりの量の計算能力(現在ステークされているトークン)を必要とし、攻撃者が制御するためにかなりのリソースを必要とするため、単一のエンティティまたは組織がイーサリアムネットワーク全体を制御できないようにすることができます。 これにより、ネットワークの分散化が保証され、個人またはエンティティによる独占的な制御が防止されます。

  3. 参加インセンティブの提供
    マイニングでは、参加者はリソースを寄付することで報酬を獲得できます。 これにより、ユーザーはネットワークの構築と運用に従事するインセンティブが得られ、それによってネットワークの円滑な機能が保証されます。

PoWマイニングと比較して、PoSマイニングは必要なコンピューティングリソースと消費電力が大幅に少ないため、イーサリアムネットワークの開発とスケーラビリティのニーズを満たすのに適しています。

イーサリアムのアプリケーション

イーサリアムのスマートコントラクトは、次のような多くの重要なアプリケーションを可能にしました。

  1. DeFi(分散型金融)
    DeFiは、イーサリアムのスマートコントラクトの中で最も成功したアプリケーションの1つです。 スマートコントラクトを活用して、MakerDAO、コンパウンド、ユニスワップなどのさまざまな分散型金融プロトコルを確立します。 これらのプロトコルは、貸付、取引、保険、資産管理などの金融サービスを可能にします。

  2. NFT(非代替トークン)
    NFTは、イーサリアムのスマートコントラクトに基づくデジタル資産であり、スマートコントラクト機能を通じて独自性と不可分性を提供します。 NFTは、アート、音楽、ゲーム、仮想不動産など、さまざまな分野でアプリケーションを見つけます。

  3. DAO(分散型自律組織)
    DAOは、イーサリアムのスマートコントラクトに基づく分散型自律組織です。 これにより、メンバーは、予算配分、人事管理、投資決定など、投票を通じて内部事項に関する決定を下すことができます。 DAOは真に分散化された民主的な方法で運営されており、コミュニティ、企業、財団、その他の組織に適用できます。

  4. トークン発行
    イーサリアムのERC-20標準は、トークンの発行と取引を指定し、イーサリアムネットワークで取引できる独自のトークンの作成を可能にします。

  5. 分散型ストレージ
    イーサリアムのスマートコントラクトに基づくいくつかの分散ファイルストレージプロトコルもあります。 たとえば、Swarmプロトコルを使用すると、ユーザーはネットワーク上に分散してファイルを保存できるため、安全性と信頼性が向上します。

  6. クラウドコンピューティング
    ゴーレムやiExecなど、イーサリアムのスマートコントラクトに基づく分散型コンピューティングプラットフォームもあります。 これらのプラットフォームにより、ユーザーはコンピューティングリソースをレンタルしてさまざまなアプリケーションを実行できるため、より効率的なコンピューティングとデータ処理を実現できます。

  7. デジタルアイデンティティ
    EIP-4361は、イーサリアムでログインするための標準化されたフレームワークを導入し、ユーザーが従来のユーザー名とパスワードの代わりにイーサリアムアドレスを使用してdAppにログインできるようにします。 この認証メカニズムは、仲介者の関与を減らしながら、ユーザーのプライバシーとセキュリティを強化します。 \
    前述のアプリケーションに加えて、イーサリアムのスマートコントラクトは、ゲーム、ソーシャルネットワーキング、サプライチェーン管理など、他の幅広いユースケースを可能にします。 スマートコントラクトのプログラマビリティにより、イーサリアムプラットフォームのアプリケーションシナリオは拡大し続け、将来の開発に大きな可能性を提供します。

イーサリアムが直面するスケーラビリティの課題

イーサリアムは、分散化とセキュリティを追求するために、ある程度のパフォーマンスを犠牲にしてきました。 技術的な制限により、イーサリアムのブロック生成時間は約12〜15秒で、各ブロックのサイズ制限は15MBです。 その結果、イーサリアムは毎秒約15トランザクションしか処理できません。

ただし、エコシステムと開発コミュニティの面で最大のスマートコントラクトネットワークとして、イーサリアムはブロックチェーン上の残高がゼロ以外の一意のウォレットアドレスの数が大幅に増加し、過去5年間で10倍以上に成長しました。 さまざまなプロトコルとユーザーアクティビティの急増により、既存の設計が圧倒され、イーサリアムのスケーラビリティの課題が悪化しています。

イーサリアムのスケーラビリティを向上させるために、開発コミュニティは、サイドチェーン、ロールアップ、シャーディングテクノロジー、輻輳を緩和するための他のEVM互換ブロックチェーンネットワークへのトラフィックの迂回など、さまざまなソリューションを提案しています。

結論

このレッスンでは、イーサリアムの技術アーキテクチャと原則、およびスマートコントラクトの革新がブロックチェーンの可能性をどのように活用し、さまざまな分散型アプリケーションとエコシステムを可能にしてさまざまなビジネスニーズと社会契約を促進するかを掘り下げました。

しかし、イーサリアムの急速な成長により、スケーラビリティの低さの問題が浮き彫りになりました。 したがって、スケーラビリティの課題に対処することは、増大するユーザーの要求を満たすために最優先事項になっています。

次のレッスンでは、サイドチェーン、ロールアップ、EVMのさまざまな競合他社など、エコシステム内のさまざまなスケーラビリティソリューションとそのアプリケーションについて説明します。 また、それぞれの長所と短所を分析し、ブロックチェーン技術の現在の開発状況と将来の傾向をよりよく理解できるようにします。

ハイライト

  • イーサリアムは、アカウントモデルを使用するブロックチェーンテクノロジーに基づく分散型スマートコントラクトプラットフォームです。
  • イーサリアムはイーサリアムネットワークの交換媒体として機能し、取引手数料の支払いや契約内のサービスや製品の購入に使用されます。
  • イーサリアムのスマートコントラクトは、Solidity言語を使用してプログラムされており、さまざまなビジネスロジックとトランザクションルールを実装できます。
  • イーサリアム仮想マシン(EVM)は、スマートコントラクトのコードを実行し、ブロックチェーンの状態を変更するために使用されます。
  • イーサリアムの各命令は、一定量のガスを消費します。 十分なガスがないと、操作を実行できません。
  • イーサリアムのスマートコントラクトは、データの透明性、不変性、固定された予測可能なプログラムロジック、分散型で安全な実行環境、コストや遅延との相互作用などの特性を備えています。
  • スケーラビリティは、イーサリアムが現在対処する必要のある主要な問題の1つであり、開発コミュニティはサイドチェーン、ロールアップ、シャーディングテクノロジーなど、さまざまなソリューションを提案しています。
  • イーサリアムにはイーサリアム(ETH)と呼ばれる独自の暗号通貨があり、取引手数料の支払いと鉱夫への報酬に使用されます。 現在、プルーフオブステーク(PoS)コンセンサスメカニズムを利用しています。
  • イーサリアムのスマートコントラクトは、DeFi、NFT、DAO、トークン発行、分散型ストレージ、クラウドコンピューティングなど、多くの重要なアプリケーションの可能性をもたらしました。
  • 分散化とセキュリティを追求する中で、イーサリアムはパフォーマンスの尺度をある程度犠牲にし、スケーラビリティの課題に直面しています。 既存のソリューションには、サイドチェーン、ロールアップ、シャーディングテクノロジー、他のEVM互換ブロックチェーンネットワークへのトラフィックの迂回が含まれます。





🎥 ・メイン動画


いいえ

📄 ・関連記事


イーサリアムとは何ですか?


UTXOとは何ですか?


スマートコントラクトとは何ですか?


EVM(イーサリアム仮想マシン)とは何ですか?


ガス代とは何ですか?


ブロックチェーンコンセンサスアルゴリズムとは何ですか?

Descargo de responsabilidad
* La inversión en criptomonedas implica riesgos significativos. Proceda con precaución. El curso no pretende ser un asesoramiento de inversión.
* El curso ha sido creado por el autor que se ha unido a Gate Learn. Cualquier opinión compartida por el autor no representa a Gate Learn.
Catálogo
Lección 1

イーサリアムの技術概要

1. イーサリアムは、ブロックチェーンテクノロジーに基づく分散型スマートコントラクトプラットフォームであり、アカウントモデルとイーサリアムをトランザクションの交換媒体として使用します。 スマートコントラクトは、データの透明性と不変性の特性を持ち、分散型で安全な実行環境を享受しています。 2.イーサリアムはスケーラビリティの問題に直面しており、開発コミュニティは、スケーラビリティを実現し、パフォーマンスを向上させるために、サイドチェーン、ロールアップ、シャーディングテクノロジーなどのさまざまなソリューションを提案しています。

序文

イーサリアムは、誰でも分散型アプリケーションを構築して使用できるオープンブロックチェーンプラットフォームです。 2013年、イーサリアムの創設者であるヴィタリック・ブテリンは、イーサリアムの設計と技術的側面の中核を概説したイーサリアムホワイトペーパーを発行し、将来のブロックチェーンアプリケーションとエコシステムの活発な開発の基礎を築きました。

イーサリアムの主な目標は、デジタル決済システムとしてだけでなく、ビットコインの機能を改善することでした。 2つの主な違いは、イーサリアムが実行できるコードを保存できることです。 このコアイノベーションはスマートコントラクトとも呼ばれ、開発者は誰でもイーサリアムブロックチェーン上に実行可能な分散型アプリケーション(dApps)を作成して、さまざまなビジネスニーズや社会契約を実装できます。

スマートコントラクトの出現により、ユーザーは信頼や仲介者を必要とせずに、安全で透過的で自動化されたトランザクションとコラボレーションを実行できます。 これにより、ブロックチェーンネットワークの有用性と機能が拡張されました。

ただし、イーサリアムの開発と実用化には必然的にいくつかの課題があり、最も重要なのはスケーラビリティの問題です。 暗号通貨市場が急速な成長と取引量の急増を経験したとき、イーサリアムブロックチェーンのパフォーマンスは需要を満たすには不十分になります。 したがって、イーサリアムは、成長するユーザーベースに対応するために、継続的な革新と進化を必要としています。

このレッスンでは、イーサリアムの技術的進化の包括的な概要を提供し、イーサリアムがブロックチェーンスペースのパイオニアとしてどのように浮上したかを探り、イーサリアムが直面しているスケーラビリティの課題と対応するソリューションを理解するためのガイドを提供します。

イーサリアムの技術アーキテクチャの概要

以前のテクノロジーの限界

イーサリアムが登場する前は、ブロックチェーン開発の焦点は主にデジタル通貨と支払いシステムに限定されており、分散型ブロックチェーン元帳を使用してトランザクションを記録していました。 ビットコインを例にとると、ビットコインネットワークは、未使用トランザクション出力(UTXO)モデルを使用する状態遷移システムと見なすことができます。 UTXOは、別のトランザクションで使用できるトランザクションからのトークンの残りの量を指します。 それは、誰かがあなたにいくらかの金額を与えた後の残りの未使用残高として解釈することができます。

マイナーが新しいブロックを生成するたびに、新しいブロックには既存のUTXOを消費して新しいUTXOを作成する有効なトランザクションが含まれているため、ビットコインネットワークの状態の変化を表します。 これらの新しいUTXOは、ビットコインネットワークの最新の状態になり、すべてのユーザーが所有するビットコインの数と分布を反映します。

以前の状態 + 新しいブロックの有効なトランザクション = 現在の状態

UTXOの状態遷移

日常生活では、ブロックチェーンアドレスがアカウントに対応する従来の銀行システムで使用されているアカウントモデルに精通しています。 各取引には、ある口座から別の口座への資金またはデータの転送が含まれ、口座残高はあなたが所有する資産です。 UTXOモデルを使用してトランザクションを行う場合、アドレスに制限がないため、トランザクションごとに異なるアドレスを使用できます。 あなたの資産は、特定のアドレスの残高ではなく、あなたに関連付けられているすべてのUTXOの合計です。 したがって、UTXOは並列化が優れていますが、アカウントモデルは順番に実行される可能性が高く、パフォーマンスが制限されます。 UTXOモデルはより優れたプライバシーとスケーラビリティを提供しますが、直感的ではなく、複雑な論理操作を実装するのは困難です。 たとえば、ビットコイン のプログラミング言語には次の制限があります。

  1. 非チューリング完全
    ビットコインスクリプト言語はさまざまな機能をサポートしていますが、すべての計算をサポートしているわけではなく、特にループはサポートされていません。 理論的には、IFステートメントの複数のレイヤーを介して基になるコードを繰り返し実行することで、ループ操作を実現できますが、これにより運用効率が非常に低くなります。

  2. 値を決定するのが難しい
    UTXOスクリプトは、引き出すことができる金額を細かく制御することはできません。 たとえば、ユーザー A は価格リスクをヘッジする必要があり、ユーザー B はカウンターパーティとして機能します。 両当事者は、1,000ドル相当の資産を契約に預け入れます。 30 日後、ユーザー A は $1,000 相当のビットコインを受け取り、残りの部分はユーザー B に送信されます。これには、オラクルが1ビットコインのドル価値を決定する必要があり、オラクルは異なる金種の多くのUTXOを保持する必要があります。

  3. 州の柔軟性の欠如
    UTXOは、使用することも使用しないこともできます。 オプション契約、分散型見積システム、暗号コミットメントプロトコル、および多段階状態(「使用中」など)を必要とするその他のアプリケーションを作成することは困難です。 したがって、UTXOは、分散型プロトコルのより複雑な「ステートフル」コントラクトではなく、単純な1回限りのコントラクトを構築するためにのみ使用できます。

  4. ブロックチェーンデータを表示できません
    UTXOモデルには、乱数、タイムスタンプ、前のブロックのハッシュなどのブロックチェーンデータを可視化できません。 この制限により、ゲームやその他の種類のdAppの開発が制限されます。

イーサリアムのアカウントモデル

スマートコントラクトアプリケーションのビットコインの欠点に対処するために、イーサリアムはUTXOモデルを放棄し、データベースが各アカウントの残高を記録し、トランザクションごとに自動的に更新する個人の銀行口座に似たアカウントモデルを採用しました。

イーサリアムには、秘密鍵によって制御される外部所有のアカウントと、スマートコントラクトコードによって制御される契約アカウントの2種類のアカウントがあります。 イーサリアムは、イーサリアムネットワーク内の交換媒体として機能します。

  • アカウント
    イーサリアムのすべてのアカウントには、銀行口座のアカウント番号と同様に、一意の20バイトのアドレスがあります。 アカウントはEtherまたはデータを保存でき、Etherを転送したり、トランザクションを通じて相互にメッセージを送信したりできます。
  • 契約
    契約書は自動販売機のようなものです。 Etherをコントラクトに送信すると、コントラクト内のコードが実行され、コードで定義されたロジックに基づいて特定の操作が実行されます。 コントラクトは、データの格納、コードの実行、メッセージの送信、および他のコントラクトとの対話を行うことができます。
  • エーテル
    イーサリアムは、イーサリアムネットワークのガス料金の支払いに使用できるイーサリアムのネイティブ暗号通貨です。 銀行振込と同様に、取引を通じてEtherを送金し、契約内のサービスや製品を購入するために使用できます。

スマートコントラクト

ブロックチェーンの開発において、イーサリアムはスマートコントラクトとdAppの広範な採用を促進する最初のブロックチェーンネットワークでした。 イーサリアムのスマートコントラクトは通常、Solidity言語を使用してプログラムされています。 これらは、自動化、分散化、透明性、不変性などの機能を備えたブロックチェーン上で実行されるプログラムであり、さまざまなビジネスロジックやトランザクションルールの実装に適しています。 ユーザーは、第三者を信頼することなく、安全かつ確実に取引できます。

スマートコントラクトを使用してさまざまなタイプのdAppを開発できるため、イーサリアムネットワークは本質的にグローバルに共有されるコンピューターになります。 誰でもデータにアクセスし、このコンピューター上のさまざまな種類のアプリケーションを編集および操作して、ニーズを満たすことができます。

一見すると、ソフトウェアプログラムを実行しているだけなので、特にユニークに見えないかもしれませんよね? 集中型サーバーにデータを保存してWebアプリケーションコードを実行したり、パーソナルコンピューターにソフトウェアをインストールしたりすることで、スマートコントラクトと同じアプリケーション機能を実現できるように見えます。

ただし、このアプローチには、データの損失、改ざん、サービスの中断などの制限とリスクが伴います。 スマートコントラクトの出現は、従来のアプリケーションに対して前例のないセキュリティ、検証可能性、および検閲耐性を提供します。 具体的には、イーサリアムのスマートコントラクトには、一般的なWebアプリケーションやクライアント側のソフトウェアと比較して、いくつかの重要な違いがあります。

  • データストレージ
    スマートコントラクトデータはブロックチェーンに保存され、各ノードには完全なコピーがあります。 その結果、データは透過的で不変です。 対照的に、一般的なWebアプリケーションとクライアント側ソフトウェアのデータは、サーバー管理者または許可された個人のみがデータにアクセスして変更できる集中サーバーに保存されます。 これにより、データが不透明になり、変更可能になります。
  • プログラムロジック
    スマートコントラクトのプログラムロジックはブロックチェーン上に書かれており、一度デプロイすると変更または削除するのは困難です。 その結果、プログラムロジックは固定され、予測可能です。 対照的に、一般的なWebアプリケーションとクライアント側のソフトウェアは一元化されたサーバーに記述されているため、いつでも変更や削除が可能です。 これにより、プログラムロジックが柔軟になり、予測不可能になります。
  • 実行環境
    スマートコントラクトの実行環境はブロックチェーンネットワークによって提供され、各ノードはスマートコントラクトを検証して実行できます。 したがって、実行環境は比較的分散化されており、安全です。 対照的に、一般的なWebアプリケーションとクライアント側のソフトウェアは、サーバーのみがそれらのプログラムを実行できる実行環境を提供するために、集中サーバーに依存しています。 したがって、実行環境は集中型であり、比較的安全ではありません。
  • インタラクション方法
    スマートコントラクトはブロックチェーントランザクションを通じて相互作用し、各インタラクションにはトランザクション手数料として一定額のEtherが必要です。 したがって、相互作用方法ではコストと遅延が発生します。 一方、一般的なWebアプリケーションはHTTPリクエストを介して対話しますが、パーソナルコンピューター上のクライアント側ソフトウェアはオペレーティングシステム内で直接動作できます。 このような場合のインタラクションは通常、支払いを必要としないため、インタラクション方法はコストがかからず、即時に近くなります。

イーサリアム仮想マシン

イーサリアム仮想マシン(EVM)は、イーサリアムブロックチェーン上で動作するチューリングコンプリートコンピュータです。 スマートコントラクトのコードを実行し、ブロックチェーンの状態を変更します。 それを理解するためのアナロジーは、パーソナルコンピューターまたはスマートフォンで実行されているオペレーティングシステム(OS)であり、この特定の環境内でのみスマートコントラクトとイーサリアムアプリケーションを実行できます。

この EVM (評価基板) は、外部からの干渉の影響を受けず、基盤となるハードウェアに影響を与えることなく、絶縁された環境で動作します。 これは、通常はSolidity言語で記述されたスマートコントラクトのコードをEVMバイトコードと呼ばれるバイトコード命令セットにコンパイルすることによって機能します。 次に、EVM はこれらの命令をステップごとに実行します。

EVMを実行すると、トークンの転送、データの保存、イベントのトリガーなど、ブロックチェーンの状態が変化します。 悪意のあるスマートコントラクトコードが無限ループを引き起こしたり、イーサリアムネットワークをクラッシュさせたりするのを防ぐために、各命令は一定量のガスを消費します。 ガスが不足している場合、操作は実行できません。

ガス料金

ガス料金とは、スマートコントラクトの実行またはトークンの転送のためにイーサリアムネットワーク上のイーサリアム(ETH)で支払われる取引手数料を指します。 これは、ネットワークを維持する鉱夫に報酬を与えるために使用されます。 ガス料金のコストは、トランザクションの複雑さとネットワークの輻輳レベルに依存し、通常はGwei(1 Gwei = 0.000000001 ETH)で測定されます。

トレーダーは、独自のガス価格(ガスの単位あたりの価格)とガス制限(支払う意思のあるガスの最大量)を設定して、取引の速度とコストを調整できます。

イーサリアムのガス料金の計算式は次のとおりです。
ガス価格*ガス制限=ガス料金

ガス価格は、料金の単価を表します。 ガス価格が低すぎると、取引の優先順位が低くなり、鉱夫はそれを無視する可能性があります。
ガス制限とは、料金の量を指します。 ガス制限が低すぎる場合、トランザクションの優先度には影響しませんが、実行が不完全なためにトランザクションが失敗する可能性があり、支払われたガス料金は返金されません。

EIP-1559(イーサリアム改善提案)では、ガス価格には、ネットワークの需要とブロックサイズに基づいて動的に調整される基本料金が含まれています。 ガス価格が基本料金を超えて設定された取引は処理されることが保証されており、ETHはイーサリアムネットワークでのトークン供給を減らすためにバーンされます。

チップは、ユーザーが鉱夫やバリデーターに支払うことをいとわないオプションの追加料金です。 ユーザーはチップに独自の値を設定できるため、トランザクションの優先度を向上させたり、ネットワークの輻輳時にトランザクションの速度を速めたりするのに役立ちます。

イーサリアムのガスメカニズムにより、ブロックチェーンネットワークの計算リソースとストレージスペースを適切に価格設定することができ、スマートコントラクトが無限の間違ったループを実行したり、悪意のあるアクターに攻撃されたりするのを防ぐことができます。

マイニング

2022年9月のイーサリアムマージ以前は、イーサリアムとビットコインの両方が、ブロックチェーンネットワークの通常の運用を容易にするためにプルーフオブワーク(PoW)コンセンサスメカニズムに依存していました。

マイニングに参加するデバイスは、計算能力を使用して特定の要件を満たすハッシュ値を計算することにより、複雑な暗号パズルを解く必要がありました。 このプロセスは大量の計算リソースと電力を消費し、パズルの難易度はネットワークコンピューティング能力によって変化し続けました。 計算能力を提供するユーザーは、マイナーと呼ばれていました。

ハッシュ値の計算を継続的に試みることで、マイナーは要件を満たすハッシュ値を見つける機会がありました。 その後、マイナーは保留中のトランザクションをブロックにパッケージ化し、検証と確認のためにブロックをネットワーク全体にブロードキャストできます。 ブロックが確認された場合、マイナーはブロック報酬と取引手数料を受け取ります。

イーサリアム2.0のアップグレード後、イーサリアムはマイニングにプルーフオブステーク(PoS)コンセンサスメカニズムを採用しました。 トランザクションを検証するノードは、新しいブロックを生成する権利を競うために、担保として一定量のEtherを賭ける必要があります。

ステーキングの目的は、ノードに経済的リスクを課し、ネットワークを攻撃するノードがステーキングされた資産を削減し、損失につながるようにすることです。 これは、悪意のある動作に対する抑止力として機能します。 ノードがより多くのEtherを賭けるほど、新しいブロックを生成する権利を得る可能性が高くなります。

ブロックの生成を担当するノードは、保留中のトランザクションをパッケージ化し、新しいブロックを生成し、検証と確認のためにネットワークにブロードキャストする必要があります。 ブロックが確認されると、ノードはブロック報酬と取引手数料、およびステーキングされた資産の量に基づく特定のリターンを受け取ります。

マイニングメカニズムは、イーサリアムネットワークで重要な役割を果たし、主に次の側面に反映されます。

  1. トランザクションの信頼性とセキュリティの確保
    マイニングでは、ブロックチェーンに新しいトランザクションを追加し、ブロック数を増やし、プルーフオブワーク(現在はプルーフオブステーク)を取得してこれらのトランザクションの正当性を確認します。 マイニングにより、攻撃者が悪意を持ってトランザクションを改ざんすることが困難になり、トランザクションの信頼性とセキュリティが確保されます。

  2. ブロックチェーンの分散化の維持
    マイニングメカニズムは、マイニングにかなりの量の計算能力(現在ステークされているトークン)を必要とし、攻撃者が制御するためにかなりのリソースを必要とするため、単一のエンティティまたは組織がイーサリアムネットワーク全体を制御できないようにすることができます。 これにより、ネットワークの分散化が保証され、個人またはエンティティによる独占的な制御が防止されます。

  3. 参加インセンティブの提供
    マイニングでは、参加者はリソースを寄付することで報酬を獲得できます。 これにより、ユーザーはネットワークの構築と運用に従事するインセンティブが得られ、それによってネットワークの円滑な機能が保証されます。

PoWマイニングと比較して、PoSマイニングは必要なコンピューティングリソースと消費電力が大幅に少ないため、イーサリアムネットワークの開発とスケーラビリティのニーズを満たすのに適しています。

イーサリアムのアプリケーション

イーサリアムのスマートコントラクトは、次のような多くの重要なアプリケーションを可能にしました。

  1. DeFi(分散型金融)
    DeFiは、イーサリアムのスマートコントラクトの中で最も成功したアプリケーションの1つです。 スマートコントラクトを活用して、MakerDAO、コンパウンド、ユニスワップなどのさまざまな分散型金融プロトコルを確立します。 これらのプロトコルは、貸付、取引、保険、資産管理などの金融サービスを可能にします。

  2. NFT(非代替トークン)
    NFTは、イーサリアムのスマートコントラクトに基づくデジタル資産であり、スマートコントラクト機能を通じて独自性と不可分性を提供します。 NFTは、アート、音楽、ゲーム、仮想不動産など、さまざまな分野でアプリケーションを見つけます。

  3. DAO(分散型自律組織)
    DAOは、イーサリアムのスマートコントラクトに基づく分散型自律組織です。 これにより、メンバーは、予算配分、人事管理、投資決定など、投票を通じて内部事項に関する決定を下すことができます。 DAOは真に分散化された民主的な方法で運営されており、コミュニティ、企業、財団、その他の組織に適用できます。

  4. トークン発行
    イーサリアムのERC-20標準は、トークンの発行と取引を指定し、イーサリアムネットワークで取引できる独自のトークンの作成を可能にします。

  5. 分散型ストレージ
    イーサリアムのスマートコントラクトに基づくいくつかの分散ファイルストレージプロトコルもあります。 たとえば、Swarmプロトコルを使用すると、ユーザーはネットワーク上に分散してファイルを保存できるため、安全性と信頼性が向上します。

  6. クラウドコンピューティング
    ゴーレムやiExecなど、イーサリアムのスマートコントラクトに基づく分散型コンピューティングプラットフォームもあります。 これらのプラットフォームにより、ユーザーはコンピューティングリソースをレンタルしてさまざまなアプリケーションを実行できるため、より効率的なコンピューティングとデータ処理を実現できます。

  7. デジタルアイデンティティ
    EIP-4361は、イーサリアムでログインするための標準化されたフレームワークを導入し、ユーザーが従来のユーザー名とパスワードの代わりにイーサリアムアドレスを使用してdAppにログインできるようにします。 この認証メカニズムは、仲介者の関与を減らしながら、ユーザーのプライバシーとセキュリティを強化します。 \
    前述のアプリケーションに加えて、イーサリアムのスマートコントラクトは、ゲーム、ソーシャルネットワーキング、サプライチェーン管理など、他の幅広いユースケースを可能にします。 スマートコントラクトのプログラマビリティにより、イーサリアムプラットフォームのアプリケーションシナリオは拡大し続け、将来の開発に大きな可能性を提供します。

イーサリアムが直面するスケーラビリティの課題

イーサリアムは、分散化とセキュリティを追求するために、ある程度のパフォーマンスを犠牲にしてきました。 技術的な制限により、イーサリアムのブロック生成時間は約12〜15秒で、各ブロックのサイズ制限は15MBです。 その結果、イーサリアムは毎秒約15トランザクションしか処理できません。

ただし、エコシステムと開発コミュニティの面で最大のスマートコントラクトネットワークとして、イーサリアムはブロックチェーン上の残高がゼロ以外の一意のウォレットアドレスの数が大幅に増加し、過去5年間で10倍以上に成長しました。 さまざまなプロトコルとユーザーアクティビティの急増により、既存の設計が圧倒され、イーサリアムのスケーラビリティの課題が悪化しています。

イーサリアムのスケーラビリティを向上させるために、開発コミュニティは、サイドチェーン、ロールアップ、シャーディングテクノロジー、輻輳を緩和するための他のEVM互換ブロックチェーンネットワークへのトラフィックの迂回など、さまざまなソリューションを提案しています。

結論

このレッスンでは、イーサリアムの技術アーキテクチャと原則、およびスマートコントラクトの革新がブロックチェーンの可能性をどのように活用し、さまざまな分散型アプリケーションとエコシステムを可能にしてさまざまなビジネスニーズと社会契約を促進するかを掘り下げました。

しかし、イーサリアムの急速な成長により、スケーラビリティの低さの問題が浮き彫りになりました。 したがって、スケーラビリティの課題に対処することは、増大するユーザーの要求を満たすために最優先事項になっています。

次のレッスンでは、サイドチェーン、ロールアップ、EVMのさまざまな競合他社など、エコシステム内のさまざまなスケーラビリティソリューションとそのアプリケーションについて説明します。 また、それぞれの長所と短所を分析し、ブロックチェーン技術の現在の開発状況と将来の傾向をよりよく理解できるようにします。

ハイライト

  • イーサリアムは、アカウントモデルを使用するブロックチェーンテクノロジーに基づく分散型スマートコントラクトプラットフォームです。
  • イーサリアムはイーサリアムネットワークの交換媒体として機能し、取引手数料の支払いや契約内のサービスや製品の購入に使用されます。
  • イーサリアムのスマートコントラクトは、Solidity言語を使用してプログラムされており、さまざまなビジネスロジックとトランザクションルールを実装できます。
  • イーサリアム仮想マシン(EVM)は、スマートコントラクトのコードを実行し、ブロックチェーンの状態を変更するために使用されます。
  • イーサリアムの各命令は、一定量のガスを消費します。 十分なガスがないと、操作を実行できません。
  • イーサリアムのスマートコントラクトは、データの透明性、不変性、固定された予測可能なプログラムロジック、分散型で安全な実行環境、コストや遅延との相互作用などの特性を備えています。
  • スケーラビリティは、イーサリアムが現在対処する必要のある主要な問題の1つであり、開発コミュニティはサイドチェーン、ロールアップ、シャーディングテクノロジーなど、さまざまなソリューションを提案しています。
  • イーサリアムにはイーサリアム(ETH)と呼ばれる独自の暗号通貨があり、取引手数料の支払いと鉱夫への報酬に使用されます。 現在、プルーフオブステーク(PoS)コンセンサスメカニズムを利用しています。
  • イーサリアムのスマートコントラクトは、DeFi、NFT、DAO、トークン発行、分散型ストレージ、クラウドコンピューティングなど、多くの重要なアプリケーションの可能性をもたらしました。
  • 分散化とセキュリティを追求する中で、イーサリアムはパフォーマンスの尺度をある程度犠牲にし、スケーラビリティの課題に直面しています。 既存のソリューションには、サイドチェーン、ロールアップ、シャーディングテクノロジー、他のEVM互換ブロックチェーンネットワークへのトラフィックの迂回が含まれます。





🎥 ・メイン動画


いいえ

📄 ・関連記事


イーサリアムとは何ですか?


UTXOとは何ですか?


スマートコントラクトとは何ですか?


EVM(イーサリアム仮想マシン)とは何ですか?


ガス代とは何ですか?


ブロックチェーンコンセンサスアルゴリズムとは何ですか?

Descargo de responsabilidad
* La inversión en criptomonedas implica riesgos significativos. Proceda con precaución. El curso no pretende ser un asesoramiento de inversión.
* El curso ha sido creado por el autor que se ha unido a Gate Learn. Cualquier opinión compartida por el autor no representa a Gate Learn.