マルチシグ

技術は価値や思想を内包しない、ただ美しさがあるだけだ。

なんて誰かが言ったか言わないか。ここ数日の取引所と仮想通貨財団の動きには色々考えさせられます。

マルチシグとは、マルチシグネーチャー(multi signature)の略語です。直訳すると、複数の署名。

ブロックチェーン上の、私の通貨

ビットコインをはじめとする、取引台帳をブロックチェーン技術により構築している暗号通貨は、未使用トランザクションアウトプット(UXTOUnspent Transaction Output)により、自分が使うことができるコインを把握できます。ブロックチェーンには有史以来の取引記録が存在します。自分のビットコインアドレスのうち、まだ送金につかっていない、要は受け取ったままのトランザクション情報をかき集めることで、私の通貨残高を知ることができます。

秘密鍵

このUXTOを他の誰かに送金するとき、これは確かに私のものですよと証明するために用いられるのが、秘密鍵です。これは概念としては、銀行のキャッシュカードと暗証番号をセットにしたものです。つまり盗まれたら最後です。

ビットコインなどを取引所で売買したり、送金したりする場合、この秘密鍵は取引所が所有しています。秘密鍵は、取引所のサイトにログインするためのアカウントとパスワードとは、全く別物で、取引所によって厳重に管理されているはずです。

暗号通貨はあまりに新しい仕組みであり、その取り扱いについて、銀行における現金のような歴史もなければ規制もありません。

かつ、インターネット接続が前提の技術です。インターネットは物理的な距離の概念がほとんどありません。たとえば、日本に住む私が、ブラジルのサンパウロにある銀行の裏口の暗証番号を知っていたとしても、「じゃあ地球の裏側まで空き巣にいこうか」とはとうてい思えません。しかし、世界のどこかで開設されているネット銀行の脆弱性をしっていたら、自宅のリビングから、その銀行への不正侵入を試みることができます。

つまり、秘密鍵をしっかり守ろうと思ったら、リスクをしっかりと推し量る必要があります。

マルチシグネーチャー

UXTOを使う時、複数の秘密鍵を必要とする仕組みが、マルチシグネーチャーです。よく映画で、核ミサイル発射のシーンで見る、二人の鍵を別々の穴に挿して、同時に回す、あのイメージです。マルチシグネーチャーはもう少し柔軟で、例えば、3つの秘密鍵のうち2つ揃えばOKというような使い方ができます。

例えば、2つの秘密鍵を用意して、1つを取引所に、もう1つを自分のスマホに格納したとします。そして、送金には両方の秘密鍵が必要とします。すると、もし取引所において顧客の秘密鍵が盗難されたとしても、スマホに格納したもう一方の鍵が同じ人物に盗まれない限り、侵入者は不正な送金ができません。

もっとも、スマホを水没させてしまったり、無くしてしまったときは大変です。秘密鍵を失ったら、自分でも送金ができなくなります。しかし、そんな時にはもう一つ秘密鍵を作っておけば安心!3つの秘密鍵を、取引所・スマホ・自宅に保管しておいて、いずれか2つの秘密鍵があれば取引できるようにしておきます。すると、スマホが水没しても、取引所と自宅にある秘密鍵で、送金ができます。n個の秘密鍵のうち、m個必要という状態を、m of nと表現します。つまり先の例では、2 of 3と表現できます。