データ改ざんや二重支払いを防止する仕組み
ビットコインの合意の方法は「仕事の量」であり、別々の場所にあるコンピュータで取引を検証、保存する共通ルールがあります。
「仕事量」により不正を行う動機を低減
ブロックチェーンは、分散された複数のコンピュータで処理を行っています。それぞれのコンピュータが同一のデータを保持しており、ハッキングなどがあった場合にもデータの不整合が起きないような仕組みがなされています。
このデータの一致の方法を「合意アルゴリズム」と言います。ここで言う「合意」とはあくまでもデータの値の一致のことです。ビットコインでは、改ざんを防止するためにコンピュータの「仕事量」を使います。
コンピュータの計算により、ある数字(ハッシュ値)を早く見つける競争をしているのです。世界中でコンピュータと電気代を使って単純計算を繰り返して当たりくじを探しているイメージです。
当たりくじを最初に探し当てた人が、新しいブロックを追加する権利と報酬をもらえます。そして、そのブロックに当たりくじを付けてほかのコンピュータに送り、ほかのコンピュータは当たりくじがあるのを確認して、そのブロックを自分の台帳に追加します。
こうして取引データが全コンピュータで共有されています。このように「仕事量」により改ざんを防止し、使ったコスト(仕事量)を参照して合意を形成します。このアルゴリズムを「プルーフ・オブ・ワーク(Proof of Work)」と呼びます。
別のブロックチェーンでは、また異なる改ざん防止の仕組みを採用することもあります。代表的なのが「プルーフ・オブ・ステーク(Proof of Stake)」です。これは、コインの保有割合に応じブロック承認の割合を決定する仕組みです。
ビットコインシステムの維持に欠かせない「プルーフ・オブ・ワーク」
「プルーフ・オブ・ワーク」とは、ビットコインで採用されている改ざんを抑止するための仕組みです。直訳すると「作業の証明」のことで、分散している各コンピュータに作業を行わせて、条件を満たす数値を導き出したものが生成するブロックを正しいとする仕組みです。
そして、条件を満たす数値を導き出したコンピュータに対して報酬としてコインを与えることになっています。このことにより、経済的なインセンティブ「ご褒美を貰えるから頑張って計算しよう」を与え、ビットコインのネットワークシステムの維持を行っています。
ただ、このプルーフ・オブ・ワークは、ナンスと呼ばれる値をひたすら変更し計算を行うのみで、それ自体の作業は実は何ら意味を持ちません。また、多数のコンピュータ(計算機)を用いて一斉に計算を行うので、多くの電気代も消費します。
そのため電気代が無駄にかかってしまうということ、さらに現在数社のマイナーが全マイニングの多くの割合を独占している状況であり、いわゆるマイニングの寡占化が進んでいます。このまま寡占化が進み、彼らの発言力が増してくると、非中央集権というビットコインの理想そのものも崩れてしまうと危惧されています。
これらの批判からプルーフ・オブ・ワークに変わる新しい改ざんを抑止するためのしくみ(プルーフ・オブ・ステークなど)も台頭してきており、こちらはアルトコインで採用されています。
勝手にコインを送金されない仕組み「マルチシグ取引」
コインの送金や管理をより安全に行えるように、現在さまざまな取り組みが進んでいます。代表的なのが、「マルチシグ取引」と呼ばれるものです。マルチシグ取引とは、マルチシグネチャ取引の略で、複数の署名が可能な取引のことです。
通常単独で行えるコインの送金ですが、これに複数人からの承認を要求することができ、安全性や利便性がより向上する技術です。たとえば、会社などがビットコインを保管する場合、1人だけで管理していると、横領などのリスクによってビットコインが流出する危険性があります。
このような危険性を避けるために、複数人の署名がないとコインの移動ができないようにするのです。この手法は「M-of-N マルチシグアドレス」という手法が一般的です。たとえば「2-of-3」の場合は、3個の秘密鍵を持っている人のうち2人の秘密鍵に対応する署名があればコインの移動が可能です。
また、「エスクロー(仲介者)取引」も注目されています。これは、ビットコインの移動に信頼の置ける第三者を仲介させる方法です。たとえば、オークションサイトで安全に引渡しを行うまでに3者間の共有アドレスに保管しておき、「2-of-3」形式でコインの移動を行う取り決めにします。
問題がなければ「購入者と出品者」の2者で送金が完了し、出品者が商品を渡してくれないなどの不測の事態であっても、購入者と仲介者間のみで返金手続きが可能です。まだまだ実例が少ないこれらの管理方法ですが、今後ブロックチェーンの普及に伴い、浸透していくかもしれません。