- イーサリウムの基本
- Etherの発行方法
- イーサリウムの始め方
- スケーラビリティ、ETH2.0などイーサリウムのこれから
- イーサリウムと分散型金融(DeFi)
- イーサリウムネットワークへの参加
コンテンツ
イーサリウムは分散型コンピューティングプラットフォームです。ノートPCやPCを思い浮かべてみてください。ただし、イーサリウムは1つのデバイス上で稼働しているわけではないです。その代わりに、イーサリウムは数千台もの、世界中の機械の上で同時に稼働しています。つまり、イーサリウムのオーナーは存在しないということです。
ビットコインや他の仮想通貨と同様にイーサリウムはデジタルマネーの移転を可能にします。しかし、イーサリウムの機能はそれだけに留まらず、独自のコードのデプロイや他のユーザーが作ったアプリケーションとのやり取りなどが可能になっています。イーサリウムの汎用性が高いので、洗練されたあらゆるプログラムはイーサリウム上でローンチすることができます。
簡潔に言うと、イーサリウムの背景にあるアイデアは既存の中央集約型サーバ上ではなく、分散型ネットワーク全体で実行されるコードを開発者が作成し、ローンチできるようにすることです。これによって、理論上はこれらのアプリを遮断したり、検閲したりすることができなくなります。
直感的ではないかもしれないですが、イーサリウムで使われている単位はイーサリウムではありません。イーサリウムはプロトコル自体のことを指しますが、それを活用するための通貨は単純にイーサもしくはETHとして知られています。
イーサリウムは分散化されたシステムでコードを実行できることについては述べました。そのようなプログラムは外部によって改ざんや修正することができます。これらのコードはイーサリウムのデータベース(いわゆる、
ブロックチェーン)に追加され、そしてコードを編集できないようにプログラムすることができます。さらに、このデータベースは公開されているので、ユーザーはプログラムを使う前にそのコードを監査することができます。
つまり、これによって誰でも、どこからでもオフラインにすることができないアプリをローンチできるということです。さらに面白いことに、イーサリウムのネイティブ通貨であるETHが価値を保存するので、これらのアプリケーションはどのように価値が移転するのかの条件を設定することができます。アプリケーションを構成するプログラムのことを
スマートコントラクトと呼んでいます。それらはほとんどの場合、人の手を介さずに動作するように設定することができます。
当然ながら、プログラム可能なお金というアイデアは世界中の開発者や事業者を惹きつけてきました。
ブロックチェーンはイーサリウムの核となっており、これがプロトコルによって使われた情報を保有します。もしも、バイナンスアカデミーの
ビットコインとは?の記事を読んでいたら、
ブロックチェーンの仕組みについての基本的なことは理解できていると思います。イーサリウムブロックチェーンはビットコインのものと似ていますが、保存するデータとその保存方法が違います。
イーサリウムのブロックチェーンはページを追加していく本のようなものだと考えると理解しやすくなります。それぞれのページは
ブロックと呼ばれており、トランザクションに関する情報が記載されています。新しいページを追加したい時、ページのトップに特別な数字を含める必要があります。この数字は、ただ無造作に本の中に追加されるのではなく、新しいページが
前のページの後に追加されたことを誰にでもわかるようにしなければなりません。
実質的に、以前のページを産所うするページ番号に似ています。新しいページを見ることで、そのページが以前のページから続くものと確信できます。このために、ブロックチェーンでは
ハッシュ化と呼ばれるプロセスを使っています。
ハッシュ化はデータの一部を受け取り、一意の識別子(
ハッシュ)を返します。2つのデータが同じハッシュを与える確率は天文学的に低いです。ハッシュを簡単に計算することはできますが、ハッシュを逆にして作成に使用した情報を取得することは事実上不可能です。これがなぜマイニングに重要なのかについては、後の章で説明します。
これで、正しい順番でページを紐づけることができます。順番を変更したり、ページを取り除いたりしようとするとハッシュによって、この本が改ざんされたことがすぐにわかります。
ビットコインはブロックチェーンテクノロジーとグローバルなデジタルキャッシュシステムを生み出すための金銭的インセンティブに頼っています。ビットコインによって、中央集権的な存在なしで、世界中のユーザーが協力するためのイノベーションが誕生しました。それぞれの参加者がコンピュータ上でプログラムを実行することで、ビットコインはトラストレスで、分散型の環境で、金融データベースの状態について、ユーザー同士が合意することを可能にしました。
ビットコインはよくブロックチェーンの第一世代と呼ばれます。ビットコインは全体としては複雑なシステムとして生まれましたが、そのおかげでセキュリティ的には非常に強固となりました。ベースレイヤーにおけるセキュリティを優先させるために、ビットコインは意図的に柔軟性を持たないようになっています。実際、ビットコインのスマートコントラクト言語は非常に制約が多く、取引以外のアプリケーションにはあまり適していません。
一方、ブロックチェーンの第二世代はより多くの機能を実行できます。金融取引に加えて、これらのプラットフォームはかなりの範囲のプログラムを実行可能にしています。イーサリウムは開発者に、独自のコードと
分散型アプリケーション(Dapps)と呼ばれるアプリを作ることに関して、大幅な自由を提供しています。
イーサリウムは初めて誕生した第二世代のブロックチェーンで、いまだにその中で最も有望なものです。ビットコインと似ている部分もあり、多くの同様の機能を実行することができます。しかし、詳しく見てみると、ビットコインとイーサリウムは大きく違っており、それぞれの特徴には一長一短があります。
イーサリウムのことは
ステートマシンと定義することができます。ステートマシンとは、いつでも、その時点での全てのアカウントとスマートコントラクトの残高の
スナップショットを持っているということです。一定の行動によって、ステート(状態)は更新されるため、変更を反映するために全てのノードは、そのノードが保有しているスナップショットをアップデートする必要があります。
イーサリウムのステートにおけるトランザクション
イーサリウム上で実行する
スマートコントラクトはユーザー、もしくは他のコントラクトによるトランザクションによって開始されます。ユーザーがトランザクションをあるコントラクトに送った場合、ネットワーク上でそのコントラクトのコードを実行している全てのノードがその結果を記録します。これは
イーサリウム仮想マシン(EVM)を使って実行されます。EVMでは、スマートコントラクトをコンピュータが読める指示に変換しています。
マイニングと呼ばれる、ステート(状態)をアップデートするための特別なメカニズムが今のところは使用されています。マイニングはビットコインのような
Proof of Workアルゴリズムで行われています。これについてはもう少し後で詳しく説明します。
スマートコントラクトはただのコードです。このコードはスマートでもなく、いわゆる契約でもありません。しかし、このコードは一定の条件で実行されるためスマートと言われており、さらに当事者間の合意を実行するという点では契約とみなすこともできます。
コンピュータ科学者のニック・サボ氏は、1990年代後半に提案したスマートコントラクトというアイデアは、彼の功績として認められています。彼は、自動販売機を例にこのコンセプトを説明し、現代のスマートコントラクトの前身と見なすことができると述べています。自動販売機の場合、単純な契約が行われており、ユーザーはコインを投入し、その代わりに自動販売機から好きな商品が出てきます。
スマートコントラクトはデジタルにおける自動販売機のようなロジックに適用されます。両当事者がこのコントラクトに送信したら、Hello, World!と返信するようなシンプルなコードを指定することができます。
イーサリウムでは、開発者はEVMが読み込めるようにするためにこれをコーディングします。そうしたら、コントラクトを登録する特別なアドレスにそのコードを送信して、公開します。その時点で、誰でも使うことができます。そして、そのコントラクトは、開発者がコーディングした特別な条件を満たさない限りは、削除することはできません。
これによって、コントラクトに
アドレスが割り当てられました。そのアドレスとのやり取りを行うためには、ユーザーはそのアドレスに2ETHを送ることだけが必要です。これによって、そのコントラクトのコードが実行され、ネットワーク上の全てのコンピュータがコードを実行し、支払いがそのコントラクトに行われたことを確認し、そのアウトプットを記録します(
Hello, World!)。
これまで紹介してきたのはイーサリウムでできる最もベーシックな例の1つかもしれません。多くのコントラクトをつなぐ、より洗練されたアプリケーションも作成可能で、実際に存在しています。
2008年に正体不明の開発者(もしくは、開発者たち)が
サトシナカモトの仮名を使って、
ビットコインのホワイトペーパーを公開しました。このホワイトペーパーがデジタルマネー分野に大きな変化をもたらしました。その数年後、ヴィタリック・ブテリンと呼ばれる、若いプログラマーがこのアイデアをさらに推し進め、様々なアプリケーションに適用する方法を考えました。このコンセプトが最終的にイーサリウムになりました。
2013年にブテリンによって、イーサリウムは
「Ethereum: The Ultimate Smart Contract and Decentralized Application Platform」(和訳 イーサリウム:究極のスマートコントラクトと分散型アプリケーションプラットフォーム)という題名の
ブログポストで提案されました。彼の投稿では、彼は
チューリング完全なブロックチェーンのアイデアを説明し、十分な時間とリソースさえあれば、分散型コンピュータであらゆるアプリケーションを実行することができると提案しました。
その時点では、ブロックチェーン上にデプロイできるアプリケーションの種類はビットコインの開発者の想像の範囲内に留まっていました。イーサリウムは、ブロックチェーン技術が
ビットコインが使われている目的以外の分野においてもブロックチェーンに有効な用途があるのかを調べることを目的としています。
イーサリウムは2015年にローンチされ、その時は7200万ETHが発行されました。このうち、5000万枚以上のトークンはパブリック
トークンセール、いわゆる
イニシャルコインオファリング(ICO)で配布されました。ICOでは、参加者はETHをビットコイン、もしくは法定通貨と交換で手に入れることができました。
イーサリウムによって、まったく新しい方法でのインターネットを使った、オープンコラボレーションが可能になりました。コンピュータプログラムのように、コンピュータコードによって完全に統治される、DAO(
分散型自立組織)などがその代表例です。
最初期のそのような考えを持っていた、最も野心的な試みの1つはThe DAOでした。この組織は、イーサリウム上で実行されている複雑なスマートコントラクトによって構成されており、自律型のベンチャーファンドとして機能していました。DAOトークンは
ICOで配布され、トークンホルダーには議決権とともにステーキング用の所有権も与えられました。
しかしながら、そのローンチからほどなくして、悪意のあるハッカーが脆弱性を発見して、DAOの資金の1/3を引き出しました。この時点では、ETHの発行枚数のうちの14%がDAOにロックされていました。言うまでもなくこれはまだ立ち上がったばかりのイーサリウムネットワークにとっては壊滅的な出来事でした。
議論の結果、このチェーンは2つのチェーンに
ハードフォークしました。そのうちの1つでは、この不正なトランザクションは効率的に巻き戻され、盗まれた資金は返還されました。このチェーンが現在イーサリウムブロックチェーンと呼ばれているチェーンです。オリジナルのチェーンでは、トランザクションは巻き戻されず、
改ざん不可能という面が維持されました。このチェーンを現在では、
イーサリウムクラシックと呼んでいます。
このイベントは、この技術のリスクと、自律的なコードに多額の資金を預けることがいかに裏目に出るかを厳しく思い知らされるものでした。また、オープンな環境で集団的な意思決定を行うことがいかに大きな課題をもたらすかを示す興味深い例でもあります。しかし、セキュリティ上の脆弱性を考慮しなければ、The DAOは、
インターネット上で
トラストレスで、大規模なコラボレーションを可能にするスマートコントラクトの可能性を完璧に示しています。
コンテンツ
ここまでで簡単にマイニングについては説明しました。もしも、
ビットコインについて知っている場合はこのマイニングプロセスはブロックチェーンに
セキュリティとアップデートに不可欠であることを理解できるでしょう。イーサリウムでも、同じ原則を採用しており、コストのかかるマイニングを行うユーザーへの報酬として、このプロトコルはユーザーにetherという形で報酬を発行します。
ビットコインと違い、イーサリウムのトークンの発行スケジュールはローンチ時には決定されていませんでした。ビットコインは、その供給を制限することで価値を維持し、
新しいコインの発行枚数をゆっくりと減らすことで価値を維持することを目指しました。一方、イーサリウムは分散型アプリケーション(DApps)の基盤を提供することを目的としています。どのようなタイプのトークンの発行スケジュールがこの目的に最も適しているのかはまだ不明です。
マイニングはネットワークのセキュリティにとって非常に重要です。マイニングは、ブロックチェーンが公平に更新されることを保証し、単一の意思決定者なしでネットワークが機能することを可能にします。マイニングでは、ノードのサブセット(マイナーと呼ばれる)が暗号パズルを解くために計算能力を消費します。
マイナーが実際にやっていることは、他のデータと一緒に保留中のトランザクションのセットをハッシュ化しています。ブロックが有効とみなされるためには、ハッシュ値がプロトコルで設定された値を下回る必要があります。失敗した場合は、データの一部を修正して再試行することができます。
他のマイナーに勝つために、マイナーはできる限り早くハッシュをする必要があります。そして、マイナーの計算能力は
ハッシュレートで測ります。ネットワークにより多くのハッシュレートがある場合、パズルはより難しくなります。マイナーは実際の解を見つけるだけで良く、一回発見されたら、他の参加者はその解が正しいかを確認するのは簡単です。
思っている通り、高速でハッシュをし続けるためのコストは高額です。ネットワークをセキュアにするためのインセンティブとして、マイナーはブロック報酬を稼ぎます。
ブロックに含まれるトランザクションの全手数料がブロック報酬となります。また、新しく発行されたETHも受け取ることができ、この記事の執筆時点では報酬として発行される新しいETHは2ETHとなっています。
上記で説明した、Hello, World!コントラクトを覚えていますか。これは実行するのが簡単なプログラムです。このコントラクトはシンプルなので計算コストはほぼ不要です。しかし、スマートコントラクトを実行するということは、自分のPC上だけでなく、イーサリウムエコシステム上で稼働している全員のPC上で実行を依頼するということです。
それでは、たくさんの人が複雑なコントラクトを実行したらどうなるのでしょうか。もしも、誰かが同じコードをループし続けるコントラクトを設定したら、全てのノードがそのコントラクトをずっと実行し続けないといけないのでしょうか。そうすると必要となるリソースが大きすぎて、結果的にシステムが崩壊してしまう恐れがあります。
このようなリスクを軽減するために、イーサリウムは
ガスのコンセプトを導入しました。自動車が燃料なしでは走れないように、コントラクトもガスなしでは実行することができません。コントラクトは、ユーザーが正常に動作するために支払わなければならないガスの量を設定します。十分なガスがない場合、コントラクトは停止します。
実質的に、ガスは手数料メカニズムです。同じコンセプトはトランザクションにも適用され、マイナーは主に利益によるインセンティブが与えられているので、低い手数料のトランザクションは無視される可能性があります。
ETHとガスは違うものであることはご注意ください。ガスの平均価格は変動し、その価格は大きくはマイナーによって決定されています。トランザクションを行った時、ETHでガス代を支払います。そういう観点では、
ビットコインの手数料と似ていて、もしもネットワークが混雑し、多くのユーザーがトランザクションを行うとしたら、ガスの平均価格は上昇します。その一方、もしもあまり活動が行われていない場合は下落します。
ガスの価格は変動しますが、どのオペレーションにも必要なガスの量は決まっています。つまり、複雑なコントラクトは単純なトランザクションよりも多くの量を消費することになります。このため、ガスは計算能力の指標とも言えます。これは、システムがユーザーのイーサリウムのリソースの利用状況に応じて、適切な料金をユーザーに提供できるようにするためのものです。
ガスは一般的にETHの何分の一かのコストがかかります。そのため、より小さな単位(
gwei)を使って表現します。
gweiはETHの10億分の1に相当します。
長々と説明してきましたが、短くまとめると長期間ループし続けるプログラムを実行することは可能です。しかし、すぐにそのコストは高騰します。そのため、イーサリウムネットワーク上のノードはスパムを軽減することができます。
アリスがコントラクトのためにトランザクションを行おうとしているとします。彼女は
ETHガスステーションのようなサイトを使って、どれだけのガス代を支払わないといけないかを確認します。確認した価格よりも高いガス代を設定することで、マイナーにトランザクションをできる限り早く取り込んでもらうインセンティブとすることも可能です。
しかし、彼女はまた、彼女を保護するために役立つ
ガスリミットを設定します。コントラクトに何らかの不具合が発生して、彼女が計画しているよりも多くのガスを消費してしまう可能性があります。ガスリミットは、ガスとして
xを使い切ると、動作が停止することを保証するために設定されています。コントラクトは失敗しますが、アリスは最初に支払うことに合意した以上のガス代を支払わずに済みます。
最初は分かりにくいコンセプトのように思われるかもしれませんが心配する必要はありません。なぜなら、手動でガス代(およびガスリミット)を設定することもできますが、ほとんどのウォレットは自動でガス代などを設定してくれる機能がついています。要するに、ガス代はマイナーがどれだけ早くあなたのトランザクションを取り込むかを定義し、ガスリミットはあなたがガスのために支払う最高額を定義します。
新しいブロックがチェーンに追加されるのに必要な平均時間は12~19秒の間です。この時間は
Proof of Stakeへネットワークが移行することによって大幅に変わると思われています。この移行は多くの目的がありますが、その1つはより速いブロック時間を実現することがです。この移行について、詳しく知りたい場合は
イーサリウムキャスパーの説明の記事をご覧ください。
イーサリウムの魅力の大きな部分は、ユーザーが独自の資産をオンチェーンで作成し、それをETHのように保存したり、転送したりできることです。この資産を管理するルールはスマートコントラクトによって定められており、開発者はトークンに関する特定のパラメータを設定することができます。これには、発行する数、発行方法、分割可能かどうか、それぞれが
代替可能性などが含まれます。イーサリウム上でのトークンの作成を可能にする技術基準の中で最も有名なものは
ERC-20と呼ばれており、これがそういったトークンがERC-20トークンとして一般的に知られている理由です。
トークン機能は、金融とテクノロジーの最先端のアプリケーションを実験するための広大な遊び場をイノベーターに提供します。アプリ内通貨として機能する均一なトークンの発行から、現物資産に裏付けされたユニークなトークンの作成まで、設計の柔軟性は非常に高いものです。簡単で合理的なトークン作成のための最良のユースケースのいくつかは、まだ知られていない可能性があります。
コンテンツ
クレジットカード/デビットカードでのイーサリウムの購入方法
Binanceを使用することで、ブラウザ上でシームレスにイーサリウムを購入することができます。必要な操作は以下の通りです。
- 仮想通貨を売買する為のポータルにアクセスします。
- 購入を希望する仮想通貨(ETH)と支払いに使用する通貨を選択します。
- バイナンスにログインするか、まだアカウントを持っていない場合は登録してください。
- 支払い方法を選択します。
- 次に、カードの詳細を入力し、本人確認プロセスを完了します。
- それで完了です。すぐに、ETHがバイナンスアカウントに入金されます。
P2Pマーケットでのイーサリウムの購入方法
P2PマーケットでETHの売買をすることも可能です。P2Pマーケットでは、
バイナンスモバイルアプリから直接、他のユーザーとコインの売買を行うことができます。
- アプリ起動後、ログインまたは新規登録をします。
- One click buy sellを選択し、インタフェースの左上隅にあるBuyタブを選択します。
- 表示されている複数のオファーの中から購入したいオファーでBuyを選択します。
- 他の仮想通貨(the By Crypto tab)またはフィアット通貨(the By Fiat tab)で支払うことができます。
- 支払い方法について確認が行われます。希望する支払い方法を選択します。
- Buy ETHを選択します。
- お支払い完了後、Mark as paidの選択を行い確認します。
- 売り手がコインの送信を実行することによって、トランザクションは完了します。
ビットコインと違い、イーサリウムは仮想通貨ネットワークとして使われることは意図していません。イーサリウムは
分散型アプリケーションを構築するためのプラットフォームで、トレード可能なトークンであるETHはこのエコシステムの燃料です。そのため、原則的にETHのユースケースはイーサリウムネットワーク内で提供されるユーティリティです。
とはいえ、ETHは従来の通貨と同様に使用することができ、他の通貨と同様にETHで商品やサービスを購入することができます。
ETHを決済方法として受け入れる小売店の地図 出典元: cryptwerk.com/coinmap
イーサリウムのネイティブ通貨であるETHをデジタルマネーや
担保として使うことができます。多くの人がビットコインと同様にイーサリウムを
価値の保存の手段としても活用しています。しかしながら、
ビットコインと違って、イーサリウムブロックチェーンはよりプログラマブルなので、ETHでできることはより多様です。分散型金融アプリ、分散型マーケット、取引所、ゲームをはじめとした
多くのものの血液としても使うことができます。
銀行が関わっていないので、自分の資産は自分で責任を持って管理しなければいけません。資産を
取引所に預けたり、自分の
ウォレットに保管したりすることもできます。自分のウォレットを使う場合は
シードフレーズを忘れないように、安全に保管してください。なぜなら、ウォレットへアクセスできなくなった時、資産を取り戻すのにシードフレーズが必要となるからです。
イーサリウムブロックチェーンにデータが追加されたら、それを変更、もしくは削除することはほぼ不可能です。つまり、トランザクションを行ったら、二度とやり直すことができないと考えた方が良いということです。なので、正しい
アドレスに資産を送っているかは常にダブルチェックするようにしてください。もしも、大きな額を動かす場合、正しいアドレスに送っているかを確認するために小額をまず送ってみるのも便利かもしれません。
とはいえ、スマートコントラクトへのハッキングによって、イーサリウムは2016年に
ハードフォークし、不正なトランザクションは効率的にやり直しとなりました。しかしながら、これは一般的な対応ではなく、非常に例外的なイベントに対する対策でした。
違います。イーサリウムブロックチェーンに追加される全てのトランザクションは公開されています。イーサリウムアドレスにあなたの実名は載っていなくても、他の方法によってあなたの個人情報と関連を見つける人が出るかもしれません。
ETHは価格が
変動する資産なので、ETHで稼ぐことも、損することも可能です。一部の人たちはイーサリウムネットワークがグローバルなプログラム可能な決済レイヤーになることに賭けて、長期的にETHを保有しています。それ以外の人は、他の
アルトコインとトレードすることを選択しています。ただ、このどちらの戦略をとってもそれぞれ独自の
金融リスクがあります。
投資家の中には長期的なポジションとしては
ビットコインのみ保有し、他の一切のデジタル資産をポートフォリオに入れない人もいます。その一方で、ETH、もしくは他のアルトコインをポートフォリオに組み込んだり、デイトレやスイングトレードなどの短期的なトレードのためにいくらかを
割当する投資家もいます。つまり、このマーケットで稼ぐための必勝法はなく、投資家はそれぞれ自分自身の資産や状況を考慮しながら、どの戦略が最も適しているかを自分で決めなければいけません。
コインを保管する方法には多くの選択肢がありますが、それぞれにメリットとデメリットがあります。
リスクのあることに関しては、最も良い手は様々な利用可能な選択肢によって
分散させることでしょう。
一般的に、ストレージソリューションは
カストディアル(信託)か
非カストディアル(非信託)のどちらかになります。
カストディアルソリューションは、コインを第三者(例えば、取引所)などに保管を任せることを意味します。この場合、暗号資産のトランザクションを行うためには、カストディアンのプラットフォームにログインする必要があります。
非カストディアンソリューションは逆で、自分の資産の管理は、仮想通貨ウォレットを使って、自分で行います。財布と違って、ウォレットはコインを保有するのではなく、ブロックチェーン上の保有している資産へのアクセスを認める暗号鍵を保有しています。大事なことなのでもう一回言っておくと、
非カストディアン ウォレットを使用する際には必ずシードフレーズをバックアップしてください。。
ETHをすでに持っていて、バイナンスに入金したい場合は以下の簡単な手順を行うだけです。
- バイナンスにログインするか、まだアカウントを持っていない場合は登録してください。
- 「Spot Wallet」へ行き、「Deposit」を選択してください。
- コイン一覧からETHを選択してください。
- ネットワークを選択し、表示されたバイナンスのアドレスにETHを送ってください。
- これで終わりです。トランザクションが承認されたら、ETHはあなたのバイナンスのアカウントに入金されます。
ETHで積極的にトレードをしたい場合、バイナンスのアカウントで保管する必要があります。バイナンスでETHを保管するのは簡単、かつ安全です。また、レンディング、
ステーキング、
エアードロッププロモーションやギブアウェイを通じて、バイナンスエコシステムのメリットを簡単に享受することができます。
ETHをすでに持っていて、バイナンスから出金したい場合は以下の簡単な手順を行うだけです。
- バイナンスにログインします。
- 「Spot Wallet」へ行き、「Withdraw」を選択してください。
- コイン一覧からETHを選択してください。
- ネットワークを選択してください。
- 受取アドレスと送金額を入力してください。
- メールでプロセスを承認してください。
- これで終わりです。トランザクションが承認されたら、ETHはあなたが提供したアドレスに入金されます。
ETHを自分のウォレットに保管したい場合には、ホットウォレットとコールドウォレットの2つの選択肢があります。
ホットウォレット
インターネットに何らかの方法でつながっている仮想通貨ウォレットをホットウォレットと呼びます。一般的に、ホットウォレットは残高を確認したり、トークンの入出金を行ったりすることができる、モバイルやデスクトップアプリケーションです。ホットウォレットはオンラインなので、攻撃に対してはより脆弱ですが、日常の支払いにはより便利です。
トラストウォレットは簡単に使えて、多くのコインをサポートしているモバイルウォレットの1例です。
コールドウォレット
コールドウォレットはインターネットに一切接続していないウォレットです。オンラインから
攻撃する方法がないので、全体的に攻撃のチャンスはより低いです。同時に、コールドウォレットは一般的にホットウォレットよりも使い勝手は悪いです。コールドウォレットの例としては、
ハードウェアウォレットや
ペーパーウォレットなどがありますが、しかし、多くの人がペーパーウォレットは時代遅れでリスクが高いと考えているため、ペーパーウォレットの使用は推奨されていません。
ヴィタリック・ブテリンが初期のイーサリウムのエンブレムをデザインしました。そのエンブレムは 、2つの回転した和算記号Σ(ギリシャ語のアルファベットから来たシグマ)で構成されていました。このエンブレムを元にした最終的なロゴのデザインは、4つの三角形で囲まれた八面体と呼ばれる菱形で構成されています。 他の通貨と同様に、アプリやウェブサイトでETHの値を簡単に表示できるように、標準的なユニコード記号があると便利かもしれません。USDの$ほど広く使われているわけではありませんが、ETHのシンボルとして最も一般的に使われているのはΞです。
コンテンツ
最も単純に説明をすると、スケーラビリティはシステムの成長能力を測るためのものです。例えば、コンピューティングでは、ネットワークやサーバーは、さまざまな方法でより多くの需要に対応できるように拡張することができます。
仮想通貨では、スケーラビリティはより多くのユーザーに対応するためにどのようにブロックチェーンが成長できるかを指します。より多くのユーザーとは、より多くのオペレーションとトランザクションがあり、ブロックチェーンに取り込まれるための競争がより激しくなるということです。
イーサリウムの支持者は次世代のインターネットはこのプラットフォーム上で構築されると信じています。いわゆる、
ウェブ3.0は仲介者不要、プライバシー重視、自分のデータは自分で管理することを特徴とした分散型トポロジーをもたらすかもしれません。この基盤は
スマートコントラクトと分散型ストレージ/コミュニケーションプロトコルの形式で分散型コンピューティングを使って構築されるでしょう。
しかし、これを実現するにはイーサリウムはネットワークの分散性を損なうことなく、大量のトランザクションを処理するために処理能力を大幅に引き上げる必要があります。現状では、イーサリウムは
ビットコインのように
ブロックサイズを制限することでトランザクション量を制限することはしていません。その代わりに、
ブロックガスリミットがあり、1つのブロックに入れられる
ガスに制限があります。
例えば、ブロックのガスリミットが 100,000 gwei で、10,000 gwei のガスリミットで 10 回のトランザクションを行うことは可能です。また、50,000 gweiの取引を2回行うことも可能です。しかし、これらと一緒に提出された他のトランザクションは、次のブロックを待つ必要があります。
これは誰もが使うシステムにとっては理想的ではありません。もしも、ブロックの利用可能な容量よりも多くの保留中のトランザクションがある場合、すぐにバックログで終わってしまいます。ガス価格は上昇し、ユーザーは他の人よりも早くトランザクションをブロックチェーンに取り込んでもらうために他のユーザーとガス代の競争をしないといけなくなります。ネットワークの混雑さによっては、特定のユースケースにおいてはブロックチェーンを活用した運用のコストが大きくなりすぎる可能性もあります。
この分野におけるイーサリウムの限界のわかりやすい例が
クリプトキティーズの流行です。2017年に、イーサリウムベースのゲームによって、デジタル猫(
非代替可能トークンで発行)を育成するために多くのユーザーがトランザクションを行いました。このゲームはとても有名になり、保留中のトランザクション数は急増し、その結果ネットワークは異常に混雑することもありました。
全てのスケーラビリティ問題に対して、ブロックガスリミットの上限を引き上げれば解決するようにも思えます。上限が高ければ高いほど、より多くのトランザクションを同一時間内に処理できますよね。
残念ながら、その解決策はイーサリウムの大きな特徴を犠牲にすることなしでは、実現できません。ヴィタリック・ブテリンはブロックチェーンに必要な繊細なバランスを説明するために、ブロックチェーンのジレンマ(以下の図で説明)を提案しました。
ブロックチェーンのジレンマ:スケーラビリティ(1)、セキュリティ(2)、そして分散性(3)
上記の3つの特徴のうち、2つを最適化することを選択することで、3つ目の特徴が不足することになります。イーサリウムやビットコインのようなブロックチェーンは、
セキュリティと分散性を優先しています。イーサリウムやビットコインの
コンセンサスアルゴリズムは、数千のノードで構成されたネットワークによってセキュリティを確保していますが、これはスケーラビリティの低さにつながります。非常に多くのノードがトランザクションを受信して検証するため、システムの処理速度は中央集権型のものよりもはるかに遅くなります。
別のシナリオとしては、ブロックガスリミットの上限を引き上げることも考えられます。この場合、ネットワークはセキュリティとスケーラビリティを実現できますが、分散性は犠牲となります。
これは、ブロック内のトランザクションの数が多ければ多いほど、より大きなブロックが必要になるからです。それでも、ネットワーク上のノードは定期的に元帳をダウンロードして伝播する必要があります。そして、このプロセスはハードウェア上で集中的に行われます。ブロックガスリミットの上限を引き上げると、ノードがブロックを検証し、保存し、ブロードキャストするのが難しくなります。
その結果、そのサイズのブロックに対応できないノードはネットワークから脱落していくと思われます。この方法を続けることで、一部の強力なノードだけがネットワークに参加できるようになり、中央集権化が進むと予想されます。このブロックチェーンは安全でスケーラブルなものになるかもしれませんが、それは分散化されたものではありません。
最後に、私たちは分散性とスケーラビリティにフォーカスしたブロックチェーンを想像することはできます。高速、かつ分散型の場合、使用されるコンセンサスアルゴリズムにおいてなんらかの妥協が必要となるため、セキュリティが弱くなります。
スケーリングソリューションは長年イーサリウムの
ロードマップの一部となってきていました。
プラズマはそのようなスケーリングソリューションの一例です。この技術はイーサリウムの効率性を向上させることを目的としていますが、技術自体は他のブロックチェーンネットワークに適用することも可能でしょう。
イーサリウムは、大きな可能性を秘めていますが、現状ではかなりの限界があります。スケーラビリティの問題についてはすでに述べました。つまり、もしイーサリウムが新しい金融システムのバックボーンとなることを目指すのであれば、1秒間により多くのトランザクションを処理できるようにしなければなりません。ネットワークの分散性を考えると、この問題を解決するのは非常に難しい問題であり、イーサリウムの開発者たちは何年も前からこの問題について考えてきました。
一つには、ネットワークを十分に分散化しておくためには、制限を設ける必要があります。ノードを運営するための要件が高ければ高いほど、参加者が少なくなり、ネットワークの中央集権化が進みます。そのため、イーサリウムが処理できるトランザクションの数を増やすとノードへの負担も増えるため、システムの整合性が脅かされる可能性があります。
イーサリウムや他の
Proof of Workを採用している仮想通貨に対する批判としては資源の無駄遣いというのもあります。ブロックチェーンへのブロックの追加を成功させるには、マイニングを行う必要があります。この方法でブロックを発行するには、大量の電気を消費する計算を高速で行わなければいけません。
上記の限界に取り込むため、いくつかの大きなアップグレードが提案されており、それらはまとめてイーサリウム2.0(もしくは、ETH2.0)として知られています。これらが完全に展開されると、ETH2.0ではネットワークの性能は大きく向上するでしょう。
上記で説明した通り、全てのノードはブロックチェーン全体のコピーを保有しています。ブロックチェーンが拡張されたら、全てのノードはアップデートをしなければならず、これによって通信帯域と利用可能なメモリが消費されます。
シャーディングと呼ばれる方法を使うと、これはもはや必要ないかもしれません。シャーディングという名前は、ネットワークをノードのサブセットに分割するプロセスを指し、分割されたサブセットをシャードと呼びます。これらのシャードはそれぞれ独自のトランザクションとコントラクトを処理します。さらに、必要に応じてより広範なシャードネットワークと通信することもできます。各シャードは独立して検証するので、他のシャードからのデータを保存する必要はありません。
2020年3月時点のネットワークvsシャーディングが実装されたネットワーク
シャーディングは設計と実装に多くの作業が必要となる、最も複雑なスケーリングアプローチの1つです。 しかし、もし実装に成功すれば、ネットワークのスループット能力を桁違いに向上させ、最も効果的なものの一つとなるでしょう。
イーサリウムプラズマとは、私たちが
オフチェーンスケーラビリティソリューションと呼ぶものです。オフチェーンスケーラビリティソリューションはトランザクションをブロックチェーン
外にすることでトランザクションスループットを向上させようとしています。そのため、
サイドチェーンとペイメントチャネルと似ている点もあります。
プラズマでは、セカンダリーチェーンはメインのイーサリウムブロックチェーンにアンカーされていますが、最小限のコミュニケーションは行い続けます。セカンダリーチェーンは多かれ少なかれ独立して運営されていますが、ユーザーは紛争の解決やセカンダリーチェーンでの活動の完了をメインチェーンに依存していることに変わりはありません。
ノードが保存しないといけないデータ量を削減することは、イーサリウムのスケーリングの成功に必須です。プラズマアプローチによって、開発者はメインチェーン上のスマートコントラクト内で子チェーンの機能を概略を行うことができます。それから、メインチェーン上では実行/保存するにはコストが大きすぎるプロセス、もしくは情報を使ったアプリケーションを自由に作成することができます。
ロールアップは
プラズマとメインブロックチェーンからトランザクションを移行させることで、イーサリウムをスケールアップさせようとしている観点では似ています。以下では、このロールアップの仕組みについて説明していきます。
メインチェーン上の単一のコントラクトがセカンダリーチェーン上の全ての資産とセカンダリーチェーンの現在の状態の暗号的証明を保有します。このセカンダリーチェーンのオペレーターは有効な状態遷移のみがメインネットコントラクトにコミットされるために、メインネットコントラクトにボンドを設置します。このアイデアでは、状態はオフチェーンで維持されるので、メインのブロックチェーン上でデータを保存する必要がなくなります。しかしながら、プラズマとロールアップの大きな違いはトランザクションがメインチェーンに提出される方法にあります。特別な遷移タイプを使って、大量のトランザクションをロールアップして、それらをロールアップブロックと呼ばれる特別なブロックにまとめることができます。
ロールアップにはOptimisticとZKロールアップの2種類があります。両方とも、それぞれの方法で状態遷移の正確さを保証します。
ZKロールアップは、
ゼロ知識証明と呼ばれる暗号検証手法を用いてトランザクションを提出します。より具体的には、
zk-SNARKと呼ばれるアプローチです。ここではその仕組みの詳細には触れませんが、ロールアップに使用できる方法を紹介します。これは、保有している情報が何であるかを他人に明らかにすることなく、異なる当事者が特定の情報を持っていることをお互いに証明するための方法です。
ZKロールアップの場合、この情報はメインチェーンに提出された状態遷移です。この方法の素晴らしいアドバンテージはこのプロセスはほぼ一瞬で行うことができ、理論上は不正な提出を行えるチャンスがないことです。
Optimisticロールアップはさらなる柔軟性のために、スケーラビリティを一部犠牲にしています。Optimistic仮想マシン(OVM)と呼ばれる仮想マシンを使うことで、スマートコントラクトがセカンダリーチェーンで実行できるようにします。一方で、メインチェーンに提出された状態遷移が正確かどうかの暗号的証明は行われません。この問題を軽減するために、メインチェーンに提出された無効なブロックに対してのチャレンジと拒絶をユーザーができるため、若干の遅延が発生します。
Proof of Stake (PoS)は1>Proof of Workに代わるブロック検証のための方法です。Proof of Stakeシステムでは、ブロックは
掘られず、その代わりに
ミント(他には、
フォージとも呼ばれます。)が行われます。マイナーがハッシュパワーで競争する代わりに、あるノード(もしくは、
バリデーター)は候補ブロックを検証するために定期的にランダムに選ばれます。正しく検証された場合、バリデーターはそのブロックのトランザクション手数料をすべて受け取り、さらにプロトコルによっては
ブロック報酬を受け取ることもできます。
マイニングがないので、Proof of Stakeは環境により優しいと考えられています。バリデーターはマイナーほど電力を消費することはないので、消費者向けのハードウェアでブロックをミントすることが可能です。
イーサリウムは、イーサリウム2.0の一環として、
Casperとして知られているアップグレードで、PoWからPoSへの移行が予定されています。移行の日付はまだ正式には決まっていませんが、最初の実装は2020年に開始される可能性が高いです。
Proof of Workプロトコルでは、ネットワークのセキュリティはマイナーによって保証されています。マイナーは電力を無駄にし、貰えたはずの報酬を失うので不正を行わないです。Proof of Stakeでは、このような
ゲーム理論はなく、違う
クリプトエコノミクスの方法によってネットワークのセキュリティを確保しています。
Proof of Stakeでは、損失のリスクの代わりに、不正な行為を防ぐのは、資金を失うリスクです。バリデーターは、バリデーションを受ける資格を得るために、ステーク(トークンを保有していることを意味する)によって、自分が保有している資産の一部をロックする必要があります。イーサリウムの場合だと、設定された量のETHをロックし、ノードが不正行為をしようとした場合にはその分のETHが没収されたり、ノードが応答しなかったりオフラインになったりした場合にゆっくりと枯渇したりします。しかし、バリデーターが追加のノードを実行すると、より多くの報酬を得ることができます。
イーサリウムでステーキングをするために必要となるETHはどれぐらいですか?
イーサリウムのステーキングに必要と予想される最小保有ETHはバリデーター毎に32ETHです。この最小保有枚数は
51%攻撃を行うためのコストが非常に高くなるように設定されています。
イーサリウムでステーキングをするとどれぐらいETHを稼ぐことができますか?
これは答えるのが簡単な質問ではないです。もちろん、どれぐらい稼げるかはステーク量によりますが、ネットワークでステークされているETHの量とインフレーション率によっても変わります。 大まかな見積もりとして、現在の計算では年間約6%のリターンを予測しています。これはあくまでも推定であり、将来的には変更される可能性があることを覚えておいてください。
ステーキングをした場合、どれぐらいの期間ETHがロックアップされますか?
バリデータからETHを引き出すための列があります。列がない場合、最低出金時間は18時間ですが、ある時間に何人のバリデータが出金しているかに基づいて動的に調整されます。
ETHをステーキングするリスクはありますか?
バリデーターはネットワークのセキュリティを維持する責任があるので、考慮すべきリスクがいくつかあります。バリデーターノードがオフラインになって、一定期間を過ぎてしまうと、デポジットしているETHのかなりの部分を失う可能性があります。また、どこかの時点でデポジットが16ETHを下回った場合、バリデーターから除外されます。
また、システマティックなリスク要素についても考慮すべきです。
Proof of Stakeはこれほどの規模のネットワークに実装されたことはないので、何らかの方法で失敗する可能性がないと断言することはできません。ソフトウェアには常にバグと脆弱性があり、特に何千億円もの価値の資産がステークされている場合は、これらが破滅的な効果を持つこともあります。
コンテンツ
分散型金融(DeFi)は分散化された金融アプリケーションを目指す動きのことです。DeFiはパブリックな
オープンソースブロックチェーン上で構築され、
インターネットへの接続さえあれば、誰でも(
パーミッションレス)自由にアクセスすることができます。DeFiはこの新しい、グローバルな金融システムに何十億人もの人が参加する可能性を持っている、重要な要素です。
要約すると、分散型金融(DeFi)は現在ある制限のない新しい金融システムを作り上げようとしています。現状では、イーサリウムは比較的分散化されており、多くの開発者がいるので、多くのDeFiはイーサリウム上で構築されています。
もうご存じかもしれないですが、
ビットコインの大きなアドバンテージの1つはネットワークのオペレーションを行うのに中央集権的な存在が不要なことです。しかし、このアイデアを核として、その上にプログラム可能なアプリケーションを構築した場合どうなるでしょうか。中央集権的な存在や仲介者、単一障害点が総菜しないことがDeFiアプリケーションのポテンシャルです。
上記の通り、DeFiの大きなアドバンテージの1つはオープンアクセスです。世界には何十億人ものあらゆる金融サービスへのアクセスがない人たちがいます。金融関連のサービスなしでどのように毎日の生活を行っているか想像できますか。そのような人たちが何十億人もいて、これこそがDeFiがサービスを提供しようとしている層です。
DeFiは聞いている限りは素晴らしいですが、なぜ世界中で使われるようになっていないのでしょうか。現状、大半のDeFiアプリケーションは使うのが難しく、詰まらなく、頻繁に壊れ、まだ実験的なものばかりです。このエコシステムのためのフレームワークを設計することさえ、特に分散開発環境では非常に難しいことがわかりました。
DeFiエコシステムを構築するためのすべての課題を解決することは、ソフトウェアエンジニア、
ゲーム理論家、
機構設計者、その他多くの人にとって長い道のりです。そのため、DeFi アプリケーションが主流になるかどうかは、まだわかりません。
分散型金融(DeFi)の最も一般的なユースケースの1つは
ステーブルコインです。これらのブロックチェーン上のトークンは実質的に、実世界の資産、例えば
法定通貨の価値とペッグされています。例えば、
BUSDは米ドルの価値とペッグされています。これらのトークンがブロックチェーン上にあるので保存と転送が簡単にできるのが、これらのトークンがブロックチェーン上にあって使いやすい理由です。
このような種類のアプリケーションで一般的なもう一つのものはレンディングです。
ピアツーピア(P2P)で資産を他人に貸して、その代わりに利子を得るサービスがたくさんあります。実際、
バイナンスレンディングは最も簡単にレンディングを行うことができるプラットフォームです。バイナンスレンディングでレンディングを行うためには、資産をレンディングウォレットに転送するだけで、その次の日から利子を得ることができます。
しかし、DeFi の最もエキサイティングな部分は、分類するのが難しいアプリケーションです。これには、あらゆる種類のピアツーピア、分散型マーケットプレイスが含まれ、ユーザーはユニークな
クリプトコレクタブルズやその他のデジタルアイテムを取引することができます。また、誰でも価値のあるものなら何でも市場を作ることができる合成資産の作成を可能にします。その他の用途としては、
予測市場、デリバティブなどがあります。
分散型取引所(DEX)はユーザーのウォレット間で直接トレードができるところです。
バイナンスのような中央集権型の取引所でトレードをする場合、バイナンスに資産を送ってから、その内部システムを通じてトレードを行います。
分散型取引所の良い例が
Binance DEXです。他のイーサリウム上の有名なDEXとしてはUniswap、Kyber NetworkやIDEXなどがあります。多くのDEXでは、最大限のセキュリティを実現するために
ハードウェアウォレットからのトレードさえも可能になっています。
中央集権型取引所vs分散型取引所
上の図では、中央集権型取引所と分散型取引所の違いを示しました。左では、バイナンスがユーザー間のトランザクションの中間に入っています。そのため、アリスがトークンAをボブのトークンBとトレードしたい場合、まず取引所に資産をデポジットする必要があります。トレードの後、
バイナンスはトレードの結果に基づいて、アリスとボブのアカウントの残高を修正します。
一方で、右の図は分散型取引所を示しています。トランザクションに第三者が関与していないことがわかります。その代わりに、アリスのトークンはスマートコントラクトを使って、ボブのトークンと直接スワップされています。この方法では、どちらの当事者も仲介者を信頼する必要がないです。なぜなら、当事者間のコントラクトは自動で執行されるからです。
2020年2月時点では、DEXはイーサリウム上で最も使用されているアプリケーションとなっています。しかしながら、中央集権型の取引所と比べた
取引高はいまだに小さいです。それにも関わらず、DEX開発者と設計者がより使いやすいユーザーエクスペリエンスを磨き上げたら、将来的には中央集権型の取引所のライバルになることもありえます。
コンテンツ
イーサリウムノードは何らかの方法でイーサリウムネットワークとやり取りをするプログラムを説明するために使うことができる用語です。イーサリウムノードはシンプルなモバイル用ウォレットアプリからブロックチェーン全体のコピーを保存しているコンピュータまでの全てを指します。
全てのノードはなんらかのコミュニケーションポイントで機能しますが、イーサリウムネットワークには様々な種類のノードがあります。
イーサリウムには、
ビットコインとは異なり、その参照実装としての単一のプログラムを持っていません。ビットコインエコシステムにはプライマリーノードソフトウェアとして
ビットコインコアがありますが、イーサリウムにはその
イエローペーパーに基づく、競合する様々な個別のプログラムがあります。有名なオプションとしては
Gethと
Parityなどがあります。
ブロックチェーンデータを独立して検証できるような方法でイーサリウムネットワークとインターフェースするには、上記のようなソフトウェアを使用してフルノードを実行する必要があります。
このソフトウェアは他のノードからブロックをダウンロードし、含まれているトランザクションが正しいかを検証します。また、他のピアと同じ情報を受信していることを確認するために呼び出されたすべてのスマートコントラクトを実行します。すべてが意図した通りに動作していれば、すべてのノードが自分のマシン上にブロックチェーンの同一のコピーを持つことが期待できます。
フルノードはイーサリウムが機能するのに必須です。世界中にいくつものノードが分散しないとこのネットワークは検閲耐性と分散型という特徴を失います。
フルノードを実行することで、ネットワークのセキュリティと健全に直接貢献することができます。しかし、フルノードはたいてい独自のマシンが要求され、また頻繁なメンテナンスが必要となります。ライトノードはフルノードを実行できない、もしくはしたくないユーザーにとってより良い選択肢となるでしょう。
名前が示す通り、ライトノードは軽く、必要なリソースは少なく、容量も最小限しか占めません。そのため、電話やノートパソコンなどの低スペックデバイスでも実行することができます。しかし、これらのライトノードは完全に自立しているわけではなく、このローオーバーヘッドはコストがかかります。ライトノードはブロックチェーン全体を同期するわけではないので、フルノードが関連情報を提供する必要があります。
ライトノードはビジネス、サービス、そしてユーザーから人気があります。ライトノードはフルノードは不要で、実行するにはコストがかかりすぎる場合に決済を行うために広く使われています。
マイニングはフルクライアント、ライトクライアントのどちらでも行うことができます。マイニングノードという用語はビットコインエコシステムではあまり使われていないですが、これらの参加者について説明にする価値はあります。
イーサリウムをマイニングするには、ユーザーは追加のハードウェアが必要となります。一般的には、マイニングリグの建設が行われています。これらによって、ユーザーは複数のGPUを接続して、データのハッシュを高速化します。
マイナーにはソロマイニングか、マイニングプールを使うかの2つの選択肢があります。
ソロマイニングとは、マイナーが単独で
ブロックを発行することを意味します。ブロックの発行に成功した場合、誰ともマイニング報酬を共有しません。その一方、
マイニングプールに参加した場合は他のユーザーとハッシュパワーを統合します。これによって、ブロックを発見できる可能性が高くなりますが、報酬はプールメンバーとシェアしないといけません。
ブロックチェーンのメリットの1つはオープンアクセスです。つまり、誰でもイーサリウムノードの実行やトランザクションとブロックの検証によってネットワークの強化ができるということです。
ビットコインと同様にプラグインプレイイーサリウムノードを提供する会社はたくさんあります。利便性のために追加のコストを支払わないといけないですが、ノードを手に入れて、稼働させたいだけならばこれらを使うのが最も良い選択肢でしょう。
前述したように、イーサリウムには
Gethや
Parityなど、多くの異なるノードソフトウェアの実装があります。もし、あなた自身のノードを実行したい場合は、実行するために選択した実装のセットアッププロセスに慣れる必要があります。
アーカイブノードと呼ばれる特別なノードを実行したい場合を除けば、コンシューマ向けのノートパソコンでもイーサリウムフルノードを実行することはできます。同時に、普段使っているパソコンをノードにすると性能が著しく悪化するので止めておいた方が良いです。
ノードを実行するには、常にオンラインのデバイス上で行う方が良いです。ノードがオフラインになった場合、再びオンラインになったらネットワークと同期するのにかなりの時間がかかってしまうかもしれません。そのため、安価に構築できて、簡単に維持できるデバイスがベストソリューションです。例えば、ラズベリーパイでさえもライトノードを実行することができます。
ネットワークがまもなく
Proof of Stakeに移行するため、イーサリウムのマイニングは最も安全な長期的な投資ではありません。移行後、イーサリウムのマイナーはマイニング機器を別のネットワーク用に使うか、完全に売却することになるでしょう。
それでも、イーサリウムのマイニングに参加したい場合、GPUや
ASICのような特化したハードウェアが必要になります。合理的なリターンを期待している場合、専用のマイニングリグと安価な電力へのアクセスが必須です。さらに、イーサリウムウォレットを設定し、マイニングソフトウェアを使うための設定をしないといけません。これら全てを行うにはかなりの時間と資金の投資が必要となります。そのため、イーサリウムのマイニングに挑戦するかは慎重に検討してください。
ProgPoWは
プログラマティック(Programmatic)Proof of Workを意味します。これはイーサリウムのマイニングアルゴリズムであるEthhashを拡張として提案されたもので、GPUを
ASICとより競争力のあるものにするために設計されています。
ビットコインとイーサリウムコミュニティの両方で、
ASIC耐性は長年議論されてきたトピックです。ビットコインの場合、
ASICはネットワーク上でのマイニングにおいて支配的な地位を占めるようになっています。
しかし、イーサリウムでは、ASICを使うマイナーもいますがあまり目立っておらず、マイナーのかなりの割合がまだGPUを使用しています。しかし、より多くの企業がイーサリウム用のASIC マイナーを市場に投入するようになれば、この状況はすぐに変わるかもしれないです。しかし、なぜASICが問題になるのでしょうか。
問題点の1つとしてはASICはネットワークの分散性を大幅に減少させるかもしれません。もしも、GPUでのマイニングで稼げなくなったら、マイナーはマイニングを止めるしかなく、そうなった場合
ハッシュレートは少数のマイナーに集約することになってしまいます。さらに、ASICチップの開発はコストがかかるため、その開発を行う能力とリソースを持っている会社の数は非常に少ないです。これにより、イーサリウムのマイニングが一部の企業の手に集約化される可能性があり、マイニング機器を作成する会社の独占が起きてしまう可能性があります。
ProgPoWの実装は2018年から議論が行われてきました。ProgPoWがイーサリウムエコシステムをより健全にすると思っている人たちもいますが、これによって
ハードフォークが発生する可能性があるため反対している人たちもいます。
Proof of Stakeへの移行が迫る中、ProgPowがネットワーク上に実装されることがあるかどうかは、まだわかりません。
ビットコインと同様にイーサリウムは
オープンソースです。このプロトコル自体の開発やその上でのアプリケーションの開発には誰でも自由に参加することができます。実際、イーサリウムは現在のブロックチェーン業界においては最大のディベロッパーコミュニティを持っています。
Andreas AntonopoulosとGavin Woodによる
マスタリングイーサリウムとEthereum.orgの
ディベロッパーリソースは、イーサリウムの開発などに参加したい開発者にとって最初に目を通してみると良いリソースです。
スマートコントラクトは1990年代に提案されましたが、ブロックチェーン上でそれを実現するのはまったく新しい課題を提起しました。ソリディティは2014年にGavin Woodによって提案され、それ以来イーサリウム上でのスマートコントラクトの開発のための主流のプログラミング言語となりました。構文的にはJava、JavaScript、C++に似ています。
実質的に、ソリディティはイーサリウム仮想マシン(EVM)が理解することのできる指示を開発者がコードで書けるようにするものです。ソリディティの仕組みについてさらに理解したい場合はぜひ
Solidity GitHubをご覧ください。
ちなみにイーサリウム開発者にとって利用可能な言語はソリディティだけではないです。他によく使われるものとしては、
Vyperがあり、これは構文的にはPythonにより近しいです。