このページの本文へ

前へ 1 2 3 次へ

ロードマップでわかる!当世プロセッサー事情 第461回

いまさら聞けないIT用語集 ビットコインの根幹となるブロックチェーン

2018年06月04日 12時00分更新

文● 大原雄介(http://www.yusuke-ohara.com/) 編集●北村/ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

 今回のお題は、ブロックチェーン。ジサトライッペイ氏が帰省の折にご母堂より御下問され、答えられなかった用語その2である。

最近よく聞くブロックチェーンってなに?

 ブロックチェーンそのものは、仮想通貨であるビットコインを成立させるための重要な技術であって、ブロックチェーンなしではビットコインは成立しない。

 逆にブロックチェーン自身はビットコインと結びついた技術ではないので、ビットコイン以外への適用が始まりつつある。トラの被り物(ブロックチェーン)はジサトラメンバー(ビットコイン)には欠かせないが、世界中でトラの被り物をしている人が全員ジサトラメンバーか? というとそういうわけではないのと同じだ。

改竄をどう防ぐかが
ブロックチェーンの肝

 ブロックチェーンとは、簡単に言えば「あるデータが改竄されていないことを証明する手段」である。たとえばイッペイ氏が見栄を張りたくて、本当は1つしか買ってないCore i9-7980XEを「2つ買った」と主張したとしよう。

 もちろんその場合、Core i9-7980XEが手元に2つないとおかしいのだが、どこかからもう1つ借りて「ほら2つあります」と見せることは不可能ではない。

 したがって、見分ける方法としては、ショップの領収書に「2つ買った」と書いてあるかどうかがポイントになる。ただし、これも白で塗りつぶしたり、写真を撮って画像を加工するなど、いろいろ手はある。

 確実なのはショップが保管しているレシートのコピーと比べることだが、税務署でもないかぎりそう簡単にコピーの比較はできない。かくして、その気になれば簡単に改竄ができることになる。この改竄をどう防ぐかがブロックチェーンの肝である。

 さてそのブロックチェーン、構造そのものはデータとハッシュ(Hash)から構成される。データそのものは、上の例で言えばレシートに記された情報そのものである。一方のハッシュ、正確にいえばハッシュ関数であるが、これは「任意のデータを、ほぼ一意に決まる固定長の値に変換するもの」かつ「逆方向の変換はできない」ものである。具体的には以下のような形だ(値は適当なので真剣に検証しないように)。

Core i9-7980XE 1個→(ハッシュ変換)→0x00123515
Core i9-7980XE 2個→(ハッシュ変換)→0x805A2013

 ハッシュ関数はその性質上、元の値が変わっただけで大きく結果が変わる。これを利用して、ハッシュの値を比較することで、元の値が同じか違うかを簡単に判断できる。また、変換後の値から元の値が推察できない。例えば「0x00123515」というハッシュの値を知っても、これを「Core i9-7980XE 1個」には戻せない。

データを改竄すると
ハッシュ値が変わるのでバレる

 ブロックチェーンでは、毎回データとハッシュを計算するのだが、おもしろいのは「あるブロックのハッシュが、次のブロックに記録される」ということだ。

DATA1のハッシュは、DATA2のハッシュに記載される。DATA2のハッシュはDATA3のハッシュへと続いていく

 上の例で言えば、イッペイ氏のレシートの情報を元にしたハッシュは、イッペイ氏のレシートではなく、次のジサトラハッチ氏のレシートに記載される。ハッチ氏のレシートのハッシュは、その次のジサトラショータ氏のレシートに、という具合に1つづつずれる形で記録される。

 これは、改竄をしにくくするためだ。仮にここでイッペイ氏がレシートのデータを改竄したとする。すると、図のHash #1の値が変化してしまう。

 改竄をばれないようにするためにはハッチ氏のデータも変更しないといけない。ところがハッチ氏のデータを変更すると、今度はショータ氏、つばさ氏……とつながっているデータ全部を変更しない限り、つじつまが合わなくなる。

 もちろんこの図のように4件程度であればまだ改竄は不可能ではないだろうが、これが百万件になると、現実問題として改竄は限りなく困難になる。

 この改竄の難しさをさらに担保するのが、「すべての利用者が」データを共有することだ。イッペイ氏がレシートを改竄するとハッシュの値が変わるが、そのデータをイッペイ氏が隠してしまえば外からそれを見られない。

 ところがブロックチェーンではP2P(Peer to Peer)の形ですべてのユーザーがデータを保持して共有する仕組みが整えられている。つまりデータを隠せないため、イッペイ氏がデータを改竄してしまうと、イッペイ氏の持っているデータが他のユーザーの持っているデータと一致しなくなることで、改竄が発覚するというわけだ。

前へ 1 2 3 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン