作:アンドレア・ロヴァイ
先週の水曜日に会計士の友人とコーヒーを飲んでいたとき、話題がプライバシーになった。
「誰にも追跡されないなんて、もうありえないよ」とデイブ(仮名)。 「でも、追跡されるのは嫌だよね」
「そんなこと言っても、もうどうしようもないんじゃない?そもそも隠さなきゃいけないことなんて何もないし」
「それはどうかな、デイブ。ちょっと違わないかい?もちろん僕も隠すことは何もないけど、じゃあ自分の寝室にカメラを設置するかい?」
「え?」
「僕が言いたいのは」
と僕はコーヒーを飲みながら、考えを整理して彼に言った。
「寝室にカメラを設置して、他の人に配信したいと思うかい?」
「もちろん、そんなことしたいと思うわけないじゃないか。あり得ないだろ」
「じゃあ、リビングルームはどうだ?そんなカメラは置かないだろう?」
「そりゃそうだけど、まるで話についていけないよ。いったい誰がそんなことをするんだ」
「問題はそこだよ。それが嫌だと思うなら、なぜ君は自分のデータを簡単に提供してもいいと思ってるんだい?」
「それって、グーグルとかフェイスブックとかのこと?」
「そうだ」
「いや、それは同じことじゃないだろう」デイブは答えた。「だって、そういうプラットフォームでは、きちんと自分のデータを管理できてると思うけど」
「本当にそう言えるのかい、デイブ?」
「リビングルームにカメラがあるのとは全然違うよ」
「彼らは確かに君のリビングルームの映像を全て見ているわけではないかもしれない。ただ、彼らは君が自分のことを知っている以上に、君のことをすべて知っている。例えば君がいまどこにいるか。君の趣味。君の友達はだれか。君の政治的思想。好きな音楽、食べ物、付き合う相手の好み。君が読む本、観る映画。一言一句、何について話しているか。彼らは、君が寝て起きる時間まで知ってるんだ。君がどこに住んでいるか。君の写真に写っているすべての人の身元、ひょっとしたらプロファイルを公開していない人の身元までね。君の言うとおりだよ、デイブ。確かに君のリビングルームにカメラがあるのとはとは違う。ただ、ひょっとするとそれよりももっととんでもないことなのかもしれない。」
「でも、それが今の世の中の流れなんじゃないの?いいか、だってサービスはどれもみんな無料なんだぜ。僕は無料で受けられるサービスが好きだな」
「無料、確かにそうだ。君が自分自身のデータで支払う限りは、ね」
「そうかもね。確かに自分のデータで支払っていると言えるかもしれない」
デイブは、その後につづく話を強調するように繰り返した。
「でもね」
デイブは微笑んだ。
「本当のお金を払ってまでは買わないよ、わかる?」
「でも、もしその必要がなかったら?」
「なんだって?」
「つまり、データ以外のもの、つまりプライバシーを尊重する別の支払いかたがあったらどうなんだい?」
「考えてもみなよ。彼らは君のプライバシーを尊重すると言っている。口ではそう言ってはいても、実際にこの世で生きていくとなると、全くと言ってもいいくらい、そういうサービスに依存しないで生きていく方法なんかないんだ。」
「性悪説に立つかどうかはともかくとして、残念ながらこの世界はそこまで美しいところではなく、特にこの手のことに関しては、信頼できる人たちなんて誰もいないのさ」
「でも、誰も信用しなくても、データを安全に保つ方法があると言ったら?」
「ハードディスクみたいに?」
「いや、ハードディスクではなくオンラインでさ。だってそうだろ?ハードディスクが家にあるのに、どうやって外から自分のデータにアクセスするんだ?いつも肌身は出さず持っているのか?」
「それってNASじゃない?」デイブは、私の質問に耳を貸さずに言った。
「ポーラがこの前教えてくれたんだ。インターネットに接続されたハードディスクのようなものなんだろ?」
「NASはね、あくまで箱に入ったモノなんだよ。そしてモノは壊れる。それに、停電になったらNASはオフラインになって、全く使い物にならなくなってしまう」
「何が言いたいんだ?何かのソフトウェアだって言いたいのかい?」
「まあ、そんな感じかな」
「だとしたら、そんなものは存在しないと言い切れるよ。」
それは、私が待ち望んでいた、おとりのワナだった。
「本当にそう思うかい?デイブ」私は喜こびを隠しきれずに言った。
「僕はそれが存在することを知っている。だって僕が働いているのは、それを作っている会社だからね」
「もし僕が君のことをよく知っているとすれば、相当複雑なものなんじゃないか?」
「ところが、その想像とは真逆で、かなりシンプルな仕組みなんだ。暗号化についてはある程度知ってるよね?」
「ほらきた。やっぱり複雑じゃないか」
「わかった。それじゃあ簡単に復習しよう。どうやったら自分のメッセージが、誰にも見られずに届いたことがわかると思う?」
「全然わからないけど、それを教えてくれるんだろ?」
「小学校で、暗号通信ごっこをして遊んだことはなかった?BはA、CはB。だから「BCCB」といったら「ABBA」のこと、みたいなやつ」
「何となく覚えているような。。」
「これは、『シーザー暗号』とか『シフト暗号』」と呼ばれているものさ。シーザー暗号を使ってメッセージを暗号化すると、盗聴しようとする人は暗号鍵を推測するだけで簡単にメッセージを理解することができてしまう。それだけでなく、自分と相手の両方があらかじめ暗号鍵を知っていなければいけないんだ。つまり、暗号鍵は絶対に秘密でなければならず、暗号鍵が復号鍵はも兼ねるということさ。」
「あんまり素晴らしい仕組みには聞こえないね」
「その通り!そこで現代で使われているのはAES(Advanced Encryption Standard)と呼ばれているものなんだ。」
「それは一体どういうものなんだい?」
「そうだね、言ってみれば超複雑なシーザー暗号のようなもので、暗号の数独と言ってもいいかな。現在のコンピュータでは解読できないほど難しいものなんだ」
「ふーん」コーヒーを飲みながら、デイブは上の空で聞いていた。
「でも、それが君の勤めている会社とどう関係があるんだい?そもそも、何の会社なんだ?」
「クラウドストレージさ」
「それって...Dropboxのようなやつかい?」
「そう、まさにDropboxのようなものだ。ただ、大事なのは多くのクラウドサービスはデータを全く暗号化していないんだよ。中には暗号化していても、鍵をサーバーに保管しているところもある」
「なんで?」
「その方が簡単だからさ。そうすることで、何百万人もの人々のデータを採掘し、集約された情報を広告会社に売ることができるからね。今や、データという言葉は、お金とほぼ同じ意味と言ってもいいのかもしれない」
「で、どうやってやるの?」
「何をだい?」
「だから、どうやってこの問題を解決するんだい?データを解読する鍵は僕だけが持っていて、データセンターが僕のファイルを保存している間、彼らはその中身を知ってはいけないということだろ?」
「そうだ。ただ決定的に違うのは、我々はデータセンターを持っていないということさ。」
「じゃあ、僕のデータはどこにあるんだい?」
「他のユーザーのサーバーの中さ。大事なのは、これらのサーバーがどこか遠く離れたデータセンターにあるのではなく、ユーザー一人一人が持っているということなんだ」
「赤の他人が僕のプライベートな写真を見ることができるということかい?何を馬鹿げたことを言ってるんだ!?」
「まあまあ、落ち着いて」私は微笑んだ。
「誰も君のファイルを見ることはできないんだ。説明しよう」と、私はポケットからティッシュと鉛筆を取り出した。
「僕がここでいうサーバーは、Cubbit Cellと呼ばれている。その一つ一つがネットワークのノードになってるんだ。そしてこのネットワークの上に、AIがいる。」
「ルンバみたいな?」
「いや、ルンバとは違う」
「そうか」
「そのAIは機械学習アルゴリズムの集合体で、AIコーディネータと呼ばれている。オーケストラの指揮者のように、ネットワークを最適化しているんだ。細かい仕組みはともかく、Cubbit Cellにファイルをアップロードすると、ファイルは暗号化され、チャンクと呼ばれる単位に分割される。そして、それぞれのチャンクは両端が暗号化されたチャネルを介して別のCubbit Cellに送られるんだ」
「ちょっと待って...暗号化キーはどこに保存されているんだい?」
「AIコーディネータの上さ。ただ、その暗号化キーそのものが君のパスワードから作られたマスターキーで暗号化されているんだ」
「ということは、もし僕がデバイスを失っても、万事休すにはならない。そういうこと?」
「その通り」
「じゃあ、マスターキーはどうなっているんだい?どこに保存されているんだ?」
「どこにもないのさ。マスターキーは、パスワードを入力するたびに、コンピュータの非可逆的な機能によって、その場で生成される。つまり、一過性のものなんだ」
「もし、パスワードを誰かと共有していたら?困ったことになるってこと?」
「それは大変なことになるね!ここで大事なのは、パスワードを誰にも教えないことさ。Cubbitの特徴のひとつは、サービス自体が誰のパスワードも知らないということなんだ。パスワードを自分から共有しない限り、君は完全に守られている。これはゼロ知識暗号と呼ばれるもので、「知らないから、忘れない」ということ。
「忘れるって、何を?」
「誰のデータも忘れることがないのさ」
「そういうことか!じゃあ、本当に誰も僕のデータを解読できないんだね?テレビで見たことのある、馬鹿でかいスーパーコンピュータとかでも僕のパスワードを解読できないってことかい?」
「ビッグバンから今までの宇宙の年月よりも長い時間がかかるだろうね」
デイブはぽかんとした顔をしていた。
「なあに、僕を信じる必要なんかない。デイブ、これは数学だ。僕たちが使っているAES暗号化技術は、アメリカ政府が極秘データを保護するために使っているものと同じなんだ」
「それで?」
「つまり、Cubbitでファイルにリモートアクセスするとき、実際に行われているのは、AIコーディネーターにそれぞれのチャンクの場所を聞いているってことなんだ」
「それは大問題なんじゃないか?AIコーディネーターはすべてを知っているってことだろ!」
「いやいや、そういうことじゃないんだ」私は念を押す。
「AIコーディネーターは、それぞれのチャンクがネットワーク上のどこにあるかを知っているだけで、そのチャンクが何についてのものかは知らないんだ。覚えておいてほしいのは、暗号化キーを持っているのは君だけで、他の誰も持っていないということ」
「そうか」
とデイブはうなずいた。
「確かによく考えられているようだね」
私はこう続けました。
「自分のチャンクがどこでホストされているかが分かったら、P2Pの両端の暗号化されたチャンネルを通じて、対応する複数のCubbit Cellに接続する。これだけさ。チャンクをダウンロードし、ファイルを再構築し、自分だけが知っている鍵で復号化する」
「では、僕の理解が正しければ、何て言ったっけ?Cubbit Cell?1つでもCubbit Cellがオフラインになると、僕のファイルもオフラインになってしまうということか」
「おっと、確かにそう聞こえてしまうね」
私は赤面しました。
「大事なことを言い忘れていたよ。冗長性のことをね」
「おかしいと思ったよ!で、その冗長性というのは?」
「Cubbitはリード・ソロモン誤り訂正符号をベースにした冗長化手順を実装しているんだ」
「それ、今適当な名前を作ったんだろ?」
「そんなことはない。前に話したように、各暗号化ファイルはチャンクに分割される。そして、さらに冗長性のあるシャードに処理されるんだ。例えば、24個のチャンクと12個の追加シャードの割合で使用するとしよう。36個のシャードのうち、元の暗号化されたファイルを取り出すのに必要なのはそのいずれかの24個のシャードだけだ」
「24個しか必要ないというのはどういうことだい?」デイブは顔をしかめた。
「最初に分割した24個のチャンクが全て必要っていうことなんじゃないのか?」
この時点で私は、小説家がいよいよ自分の物語のオチを書こうと、とんでもないどんでん返しを仕込んでいるようにワクワクしていました。
「そう、デイブ。これは魔法だ。もう一度言うよ。24のチャンクならどれでもいいんだ」
「どうしてそうなるんだ?」
「ガロア表現に基づいているんだが、心配しないでいい。例えを使おう」私はペンを持って言いました。
「君のファイルを直線だと想像してみてくれ。その傾きを表現するには、いくつの点が必要になるかな?」
「2つ、かな?」
「実は、この線は無限の点でできているんだ。不思議かい?ただ、考え方はほとんど同じさ。ファイルを記述して再構成するには、一定数のシャードが必要なだけだ。言い換えれば、ファイルを再構成するのにいずれの特定のCellも必要ないということなんだ。例えば先ほどの例では、36個のセットのうち、24個のランダムなCellがオンラインになっていればいいのさ」
「そこは理解できたけど、正直に言って、全く見ず知らずの人たちに依存しているというのは安心できないな。ダウンタイムの確率はどのくらいなんだい?」
「悲観的に見つもっても100万分の1程度かな。さらに言うと、AIがそれぞれのCellの稼働状況を監視していて、オンラインになっているシャードの総数が一定の閾値まで減少すると、自動的に復旧手順が発動されるんだ」
「とってもすごい仕組みに聞こえるけど、僕にはなぜNASでは不十分なのかがまだ理解できないな」
「確かにNASで十分かもしれないね、君にとっては。ごく限定された時間軸の中ではそうかもしれないけど、この会社が作ろうとしているものは、もっと大きなものなのさ。はばからずに言うと、これは新しいインターネットといえるかもしれない。」
デイブが額に皺を寄せた。彼の頭の中には、疑問が渦巻いているようだった。
「今のところは、Cubbitはクラウドストレージのプラットフォームさ」と私は説明します。
「新しいインターネット、ということか」
コーヒーを飲み終えて、私は言った。
「誰もコントロールできない、新しいインターネットさ」
※これは一部フィクションを含みます。