仮想通貨の仕組み【初心者向け図解】暗号技術と問題点について

仮想通貨の仕組み
暗号化技術と情報通信方式の進化
ハッシュ・P2Pなど、一般には知られていない技術よって支えられています。
秘密鍵は絶対に流出しないよう保管しよう
仮想通貨は、公開鍵と秘密鍵のペアによって守られています。秘密鍵だけは絶対に流出しないように気をつけましょう。
仮想通貨投資を始める前に、決済の流れを把握しておこう
図解付きで暗号化とP2Pの仕組みを解説しています。仮想通貨の投資を検討されている場合は、ニュースを理解するためにも仕組みを大まかに理解しておきましょう。
仮想通貨の仕組みについて、以下のことがわかります。
  1. 仮想通貨を支える技術(=ブロックチェーン)の仕組みがわかります
  2. 秘密鍵の保管が大切な理由がわかります
  3. 仮想通貨の保管にはハードウォレットが推奨される理由がわかります
重要キーワード
  • 暗号方式
  • ハッシュ
  • P2P
  • ブロックチェーン
  • マイニング
  • ウォレット

今話題のビットコイン(Bitcoin)。

職場や友人にも、仮想通貨を買ったという人は増えてきたのではないでしょうか。

仮想通貨をこれから手にする人も、すでに保有している人も、一度仮想通貨の仕組みについて見直す機会を持ってみて下さい。

目次
  1. 仮想通貨の仕組みについて
  2. ブロックチェーンを構成する技術
  3. ビットコインの仕組み
  4. まとめ

仮想通貨の仕組みについて

ビットコインは謎の開発者サトシ・ナカモトが開発した革新的な技術ブロックチェーンを元に作られました。

つまりビットコインの根幹にある技術はブロックチェーンです。

ブロックチェーンを知ることでビットコイン及び仮想通貨の仕組みを理解することになるでしょう。

また、仕組み以外の概要や歴史など詳しいことも知りたい方はこちらの記事をご覧ください。

ブロックチェーンを構成する技術

ブロックチェーンを理解するには、まず「暗号技術」「P2P」について知らなければなりません。なぜなら、これらが元になってブロックチェーンが開発されたからです。

それではこれらについて説明していきましょう。

暗号技術

暗号技術とは文章やデータをネットワーク間で送受信するときなどに使われるもので、簡単に言えば「安全にネットワーク間を通信するための技術」です。

例えばビットコインの取引の際に第三者にハッキングされてコインが盗まれたら大変ですよね?

そこで安全を保証してくれるのがこの暗号技術です。

この暗号技術を元にビットコインの取引の仕組みブロックチェーン開発されました。

つまり暗号技術はビットコインの根本となる技術なのです。

そのため、ビットコイン=暗号通貨と呼ばれています。

そこでビットコインの仕組みを理解する上で重要な暗号技術3つを理解しましょう。

仮想通貨の仕組みを支える3つの暗号技術
  1. 公開暗号方式
  2. 署名
  3. ハッシュ

公開暗号方式

公開暗号方式とはビットコインの運用を安全に行うために用いられている暗号技術です。

公開暗号方式を理解するには、まずこの技術が開発される以前に使われていた暗号方式「共通暗号方式」を理解するのがわかりやすいでしょう。

共通暗号方式は一言で言えば、暗号にする鍵と解読する鍵を一緒に使っている暗号方式です。例を挙げると、鍵つきの扉金庫などと一緒の仕組みです。

しかし、共通暗号方式は遠く離れた相手に安全に受け渡すのが困難という弱点があります。例えば、遠く離れた家族に金庫の鍵を渡すと考えたら、途中でひったくりにあったり電車に鞄を忘れたりとどうしても受け渡しの不安要素は消しきれませんよね?

しかもこれをネットで行うわけですから、通信傍受,やハッキングなどの不安要素も出てきます。

安全に鍵を受け渡さなければ、第三者に簡単に情報を漏れてしまいます。

共通鍵暗号の画像

その弱点を克服したものが公開暗号方式です。

公開暗号方式は「暗号にする鍵」と「暗号を解読する鍵」を分離して、より安全に暗号を管理できるようにしたものです。

公開暗号方式による通信は以下のようにして行われます。

  1. 暗号を受け取りたい人は「暗号にする鍵(公開鍵)」を送る
  2. 公開鍵を受け取った人は、それを使って暗号化して送り返す
  3. 暗号を受け取った人は自分の持っている「暗号を解読する鍵(秘密鍵)」を使って復号化する。
公開鍵暗号の画像

これにより、「暗号を解読するための鍵」を送信する必要がなくなったので通信傍受の危険がなくなったのです。

公開されている鍵では暗号は解読できず、その人しか持っていない秘密鍵でしか解読できません。

逆に秘密鍵を保有していれば誰でも解読できてしまいます。

このことから、公開鍵は受け渡しが容易で公開しても問題ないが秘密鍵は個人で厳重に保管する必要があることが分かります。

この仕組みを応用した署名(後述します)というシステムがビットコインの取引やブロックチェーンの運用で用いられています。

ハッシュ値とハッシュ関数

ハッシュ値とは、与えられたデータに対して数学的処理を行って得られた「復元不可能な値」のことです。

ハッシュ関数とは、「復元不可能な値(ハッシュ値)を導くための関数」です。

ハッシュの画像

この「復元できない」という特性を活かしてデータの整合性をとることができます。

これは後に説明する「署名」や「ブロックチェーンの運用」で非常に重要な役割を果たします。

署名

署名とは、公開鍵と秘密鍵が対になっていることを利用して、ある文書(ビットコインだと取引)が本人(秘密鍵の保持者)であるか確認するシステムです。

厳密には「デジタル署名」と「電子署名」の意味は異なりますが、広義ではどちらも言葉どおり「データに電子的に署名すること」として使われているので、ここでは同義語として説明します。

ビットコインは「デジタル署名のチェーン(連鎖)」と定義されており、非常に重要な概念のひとつです。

デジタル署名はビットコインの取引において中核的な役割を果たしています。

デジタル署名には

  1. 鍵生成
  2. 署名生成
  3. 署名検証

3つの流れがあります。

ビットコインにおいては

  1. ビットコインアドレス(公開鍵)と秘密鍵を生成
  2. 送信者がビットコインのデータと送信先アドレス等を関連付けたデータを、ハッシュ関数を適用し、秘密鍵で署名(データ変換)して送信
  3. 送信者の公開鍵を利用して受信した署名を検証する

という流れになっています。

ここで秘密鍵の所有者=ビットコインの所有者か判別されます。

つまり、秘密鍵を持っているという事実だけがビットコイン所有者であることを証明してくれるのです。

署名の画像

P2P(ピアツーピア)

P2P(ピアツーピア)とは、特定の中央サーバーに接続してデータを受け取るのではなく、コンピューター同士で接続して情報を送り合う情報通信方式です。

P2Pの画像

あなたが普段利用しているインターネットサービスのほとんどは中央サーバーに接続して利用されています。

「webサイトを見ていたらサイトが落ちて見れなくなった」「ネットゲームをしていたら繋がらなくなった」のような障害は中央にあるのサーバーにみんながアクセスして繋いで、そのサーバーに何らかの異変が起きて障害が起きたということです。

しかしP2P方式を採用すると中央サーバーが存在しないので、1つのサーバーに異変が起きてネットワーク全体がダメになるということはありません。

ビットコインもP2P方式を採用しており、参加しているコンピューターはP2Pで作られたビットコインネットワークに接続して全体に情報を共有しています。

つまり特定の管理機関が存在してビットコインを運営しているのではなく、参加している全てのコンピューターによってビットコインネットワークが作られているのです。

ビットコインの仕組み

ここからはビットコインは「どのように取引されているのか?」「どのように生成されるのか?」などの仕組みを解説していきます。

取引(トランザクション)

ビットコインを送ったり受け取ったりすることを取引(トランザクション)といいます。

ここではAさんがBさんに20BTC(ビットコインの通貨単位)を送金する場合を例に解説します。

Aさんは過去の取引でCさんから15BTCDさんから10BTC受け取って現在25BTC持っているとします。

AさんがBさんに20BTCを送金するという取引(トランザクション)をデータにしてビットコインネットワークに送信します。

送信された取引データは以下のような内容になります。

取引データの中身の画像

上の画像を見ると、ビットコインは25BTCの中から20BTC送金するといった仕組みではなく、25BTC送って4.9…BTCお釣りが帰ってくるので実質20BTC送金といった仕組みになっています。

なぜ5BTCではなく4.9…BTCかというと、採掘者の報酬として最低0.0001BTCの手数料が取られるからです。(報酬に関しては後述)

ビットコインはこのような形で取引が行われているのです。

ビットコインは実態があってなんらかの方法で管理されているのではなく、この取引の履歴がビットコインの本体になっています。

つまり、「25BTC持っている」というのは「25BTC受け取った取引履歴がある」ということなのです。

この取引履歴の正当性を示すために、署名といったシステムを採用していたのです。

マイニング(発掘)とブロックチェーン

ビットコインは取引はP2Pネットワークに送信され、接続したコンピューター(採掘者)達によって過去の取引履歴参照されて不正が無いことが確認されます。

そして、不正が無いことが確認された取引データをいくつかにまとめて「ブロック」が作られます。

作られたブロックの中は以下のようになっています。

  • 一つ前のブロックのハッシュ値
  • いくつかの取引データをまとめたもの
  • ノンス値(意味のないある特定の数字)
[ブロックの画像]

採掘者は、この生成されたブロックのノンス値を見つけようとコンピューターで計算して探し出します。

そして、適切なノンス値を見つけた時にようやくブロックが完成するのです。

適切なノンス値を探し出すには、0から1ずつ数を増やして総当り的な手法で探しあてる必要があります。ここでコンピューターの計算力が必要になってくるわけです。

こうして適切なノンス値を最初に発見した採掘者がブロックの生成者になるのです。

ブロックの生成者には一定額のビットコインを与えるような取引を入れることになっています。

つまり、ブロックの生成者はビットコインを手に入れる(発掘する)ことができます。これが取引の項目で話した報酬ですね。

そのため、多くの人がブロック生成に参加するようになり、取引の認証が盛んに行われているのです。

これがマイニング(発掘)の仕組みになります。

こうして採掘者達によって大量のブロックが次々に生成されていきます。

新しく生成されたブロックは上で解説したとおり「一つ前のブロックのハッシュ値」を含んでいます。

つまり、前のブロックと次のブロックが鎖のようにつながりながら保存されていくのです。

ブロックチェーンの画像

その様子からこの仕組みは「ブロックチェーン」と呼ばれています。

同時にブロックが作られたらどうなるの?

ビットコインには中央サーバーがないので、ネットワーク上で偶然複数のブロックがほぼ同時に生成される場合があります。

その場合採掘者が先に受け取った方に続くブロックを生成する決まりになっています。

しばらくして、より多くのブロックがつながっているブロックチェーンが正当なものとして認められることになります。

分裂したブロックチェーンの画像

51%攻撃

悪意のあるグループ(ビットコインを不正利用しようとする人達)がビットコインネットワーク全体の51%以上の計算能力をを保持してしまう状態です。

これはビットコインの特徴である、安全性公平性を揺るがすものになってしまいます。

51%以上の計算能力をを保持した時にできることは、

  • マイニングによって得られる報酬を全て自分のものにする
  • 自分の取引を取り消けせる(二重利用できる)
  • 特定の取引を承認させない(特定のユーザーではない)

などが挙げられます。

新しい送金が起こらないように妨害したり、自分が払ったはずの送金を取り消したりすることができるようになります。

逆にできないことは、

  • ブロック生成報酬以上のコインを手に入れる
  • 特定のユーザーの取引を承認させない
  • 過去の取引履歴を改ざんする
  • 他人のウォレットからビットコインを盗む

などが挙げられます。

51%攻撃が成功しても、あなたのウォレットに入っているビットコインが盗まれたり、過去の履歴を改ざんされたりはしません。攻撃者も0からビットコインを生み出して大儲けできるわけでもないのです。

しかし、ビットコインの二重利用や特定の取引を承認させないなんてことが多発してしまったら、ビットコインの信頼は低下し、価格は暴落してしまうでしょう。いくらウォレットにビットコインが残っていてもコインの価値が下がってしまっては意味がありません。

51%攻撃はコストに対するメリットが少なく、成功してもビットコインネットワークを支配できるわけではないので、起こる可能性は少ないとされています。

ただそうなってしまう状況はゼロではないので、注意しておいて損はありません。

ウォレット

ウォレットの画像

ビットコインは以上で説明したとおり、このような仕組みによって生まれた通貨です。

日本円などの紙幣通貨は金庫に入れておいたり、財布に入れて持ち歩いたりしておけば強盗にあうなどの物理的な影響が無いかぎり失うことはありません。

その点ビットコインはそのように物理的に管理することはできません。しかしそれに似た管理ができるシステムがあります。それが「ウォレット」です。

ビットコインは世界中に取引が公開されています。公開されている取引は匿名性を守るために公開鍵だけを公開し取引を識別しています。

取引は署名さえ行えれば誰でもできてしまいます。つまり、秘密鍵さえ入手してしまえは誰でもその人のビットコインが使い放題になっています。

そこで公開鍵とそれに対応する秘密鍵のペア(ビットコインアドレス)の束ウォレット(財布)管理できるのです。

ウォレットから秘密鍵を印刷して金庫に入れて、パソコンからデータを消してしまえば、ハッキングの被害にあっても秘密鍵を盗まれる事がありません。

こうやって秘密鍵を安全に管理することができるのです。

逆にこの秘密鍵自体を無くした上で、ウォレットに何かしらの不具合が生じたりウォレットを入れてある端末をなくして作動しなくなった場合その中に入っている通貨は消えてしまうというリスクもあります。

秘密鍵の保管をしっかり行うことが仮想通貨を取り扱う上で一番重要なことといっても過言ではありません。

まとめ

現在ビットコイン並びに仮想通貨に興味を持っている人は多くいると思います。

しかし、興味本位で儲かりそうだからといって手を出すのは危険です。きちんと仕組みを理解した上で運用するのが良いでしょう。

仮想通貨はまだ始まったばかりの通貨です。まだ確立されたものではないので不安要素もありますが、新技術新しい用途など期待できることも多いはずです。

今後の動向に注目が集まります。

ヒント : 仮想通貨の仕組みが難しいと感じたら
  1. 仮想通貨とは?
  2. ビットコインとは?
仮想通貨の仕組みを理解した後に読みたい記事
  1. 仮想通貨の購入方法
  2. 仮想通貨取引所の比較
  3. マイニングとは
  4. ブロックチェーンとは?
  5. 半減期とは?
  6. ハードフォークとは?

画像はShutterstockのライセンス許諾により使用

「LINE@」厳選情報を配信!

日本や海外の「重要ニュースまとめ」をいち早く入手したい方は、ぜひ登録してみて下さい。

友だち追加