ブロックチェーンの理解に欠かせない!Ethereum(イーサリアム)とは【初心者向け】

ブロックチェーン初心者向けにEthereum(イーサリアム)とは何か詳しく解説しています。分散型アプリケーションのプラットフォームとして注目されているEthereumとはどんな仕組みなのか、ぜひ理解しておきましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

この記事では、Ethereum(イーサリアム)について解説します。

分散型アプリケーションを作る上では欠かせない知識になります。仮想通貨として持っている人もぜひ裏側の技術を理解しておきましょう。

 

なお本記事は、TechAcademyのブロックチェーンオンライン講座の内容をもとに作成しています。

 

田島悠介

ここではイーサリアムについて解説していこう。

大石ゆかり

田島メンター!イーサリアムというのは何ですか〜?

田島悠介

スマートコントラクトを実行する分散型プラットフォームのことを言うんだ。ブロックチェーンとスマートコントラクトについても一緒に説明しよう。

大石ゆかり

お願いします!

Ethereumとは

Ethereum(イーサリアム)は、分散型アプリケーションを実現するためのプラットフォームです。ブロックチェーンという技術を利用して中央に管理者が存在することなく、サービスが作れる環境を提供しています。

通貨単位はEtherと呼ばれ、ETHと省略されることが多いです。

 

Ethereumは、ビットコイン同様に、仮想通貨の送受金が可能です。また、マイニングを行う事で報酬を得る事ができます。

Ethereumはオープンソースプロジェクトとして、Ethereum自体のプログラムソースコードが無料で公開されているため、誰でもEthereumのブロックチェーンを利用した仮想通貨を作成することが可能です。

また、C++, Go, Rust等のプログラミング言語で実装されており、ブロックチェーン以外にもスマートコントラクトという技術を使用することができます。

 

Ethereumの仕組み

Ethereumはビットコイン同様、ブロックチェーン技術を採用することでデータを処理しており、アカウントに紐づくデータが分散台帳上で管理されます。

アカウントにより所有しているコイン量や送受金の情報を表すステート情報も履歴として把握する事ができます。

ビットコインと異なる点として、EthreumにはスマートコントラクトERC20という技術が使われています。それぞれ以下で詳しく見ていきましょう。

 

ブロックチェーンとは

ブロックチェーンは、世界中のユーザー全員で、利用する取引データを管理する仕組みです。

全ユーザーで管理していますが、取引データを改ざんすることが非常に難しい仕組みになっています。

ブロックチェーンでは、分散台帳にブロックと呼ばれる全取引データがチェーンのように連結された状態で保管してあります。

例えば、ブロックデータの中に、次のようなデータがあるとします。

ブロックデータ例

index:
timestamp:
transactions: [
 sender:
 recipient:
 amount:
]
previousHash:

ここでは、timestampの日時に、senderとrecipient間でamount分の取引が行われたことを示しています。

また、各ブロックには1つ前のブロックのハッシュ値(previousHash: )を保有していて、このハッシュ値がブロック同士をつなぐチェーンの役割を果たします。

 

スマートコントラクトとは

スマートコントラクトとは、ブロックチェーン上で実装する機能であり、アルトコインのEthereumに実装されている技術です。

スマートコントラクトでは、送金記録以外にも、契約に関する記録も保有することが可能です。

例えば、自動販売機を例に説明すると、「購入者がお金を投入→商品ボタンを押す」という契約条件が満たされた場合、商品を提供するという一連の流れ自体をスマートコントラクトで確実に取引できるよう担保することができます。

Ethereumではスマートコントラクトを実現することで、仮想通貨の取引だけでなく、通貨を通じ契約を行い、商品や役務の提供まで自動的に処理する事を目指しています。

こういった取引を実装している技術がSolidityというプログラム言語で、Solidityはコンパイル後、Ethereum(イーサリアム)上で実行可能な言語となっています。

Ethereum(イーサリアム)上で実行する場合、Ethereum(イーサリアム)ネットワーク上でコントラクトコードという状態でブロックチェーン上に記録されたコードが実行されることで処理することができます。

 

ERC20とは

ERC20とは、(Ethereum Request for Comments: Token Standard #20)の略で、イーサリアム(Ethereum)が定義するトークンの名称です。

トークンとは、ブロックチェーン上の資産やユーティリティの総称です。

ERC20というEthereumが定義した統一された規格を利用することで、多くの仮想通貨が誕生し、多くのトークンも発行されているのです。

 

田島悠介

イーサリアムの構成と、それに関連する技術についての概要だね。

大石ゆかり

スマートコントラクトがイーサリアムの主な特色なんですね。

田島悠介

次にICOというものについても見てみよう。

[PR]ブロックチェーンで挫折しない学習方法を動画で公開中

ICO上場の流れ

Ethereumがオープンソースで公開しているソースコードを利用して、Ethereumのブロックチェーン技術を利用する事ができます。

このことは、だれでも仮想通貨を作成することができる事を意味します。

そして、Ethereumのブロックチェーンを利用するということは、Solidityを利用したスマートコントラクトの実装も可能だということです。

さらに、Ethereumを利用することでERC20という規格に基づいたトークンの利用も可能となります。

つまり、Ethereumの既存技術を再利用するだけで、アイデアによってはICOすることで多額の資金調達が可能となります。

 

ICOとは

ICOとは、Initial Coin Offeringの略称で、日本語で言えば、「新規仮想通貨公開」と言います。

簡単に言えば、仮想通貨に対して株式公開のような形で、資金を募る事です。

調達方法は、各企業が独自の仮想通貨(トークン)を販売し、一般ユーザーが仮想通貨でトークンを購入することで資金調達を行います。

 

ICOへの参加方法

1.情報収集

各仮想通貨の公式サイトでICOに関する情報を集めます。

メールアドレスを登録することでICOする際の情報を素早く得る事ができます。

 

2.KYCとAMY

KYCとは、Know Your Customerの略で、日本語で言えば本人確認です。

免許証等を画像ファイルで送ることで本人確認が可能です。

AMYとは、Anti Money rounderingの略で、マネーロンダリングを行わない事への同意です。

これはWeb上にある同意書にチェックする事で同意することが可能です。

 

3.仮想通貨の送金

仮想通貨のプロジェクトから送金先アドレスの連絡があるため、ウォレットから送金します。

この際、取引所からの送金をしてはいけません。

 

4.トークンの受け取り

トークンを受け取る方法は次の3種類あります。

この方法はICOする際に仮想通貨側が決めています。

  • 送金と同時にウォレットにトークンが送られる。
  • 送金後、決められた期日になると、ウォレットにトークンが送られる。
  • 送金後、改めてトークンを受け取る自分のアドレスを知らせる事で、そのアドレスに対してトークンが送られる。

 

今回は、Ethereum(イーサリアム)について解説しました。

Ethereum(イーサリアム)とは何なのか、なぜ注目されているのか仕組みを知ることで理解できるはずです。分散型アプリケーション自体も増えてきているので、ぜひ使ってみてください。

 

田島悠介

ICOの仕組みと、その参加方法について説明したよ。

大石ゆかり

ICOはトークンを利用した資金調達方法のことを指すんですね。

田島悠介

イーサリアムを理解する上に重要な、ブロックチェーンとスマートコントラクトについてはそれぞれ別のところで詳しく解説しよう。

大石ゆかり

了解です。ありがとうございます!

また、オンラインのプログラミングスクールTechAcademyでは、ブロックチェーンオンライン講座を開催しています。

ブロックチェーン技術の仕組みを理解し、実際に分散型アプリケーションを開発することができます。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間で習得することが可能です。

この記事を監修してくれた方

中本賢吾(なかもとけんご)
アジマッチ有限会社 代表取締役社長

開発実績:PHPフレームワークを利用した会員制SNS・ネットショップ構築、AWSや専用サーバー下でLinuxを使用したセキュアな環境構築、人工知能を利用したシステム開発、店舗検索スマホアプリ開発など。

その他にも地域の職業プログラマー育成活動を行い、2018年には小学生がUnityで開発したオリジナルAndroidアプリをGooglePlayでリリース。ゲームで遊ぶより作ろうぜ!を合言葉に、小学生でも起業できる技術力を育成可能で有ることを証明し続けている。