アーキテクチャから考えるブロックチェーン検証3つのステップブロックチェーンの検証現場で何が起きているのか(1)(2/2 ページ)

» 2016年07月27日 05時00分 公開
[中野猛リクルートテクノロジーズ]
前のページへ 1|2       

本連載の流れと現在のステータス

 以下、本連載では、実際にATLが検証を進めたステップとは若干異なる順序で説明していきます。これは、そのままの流れで説明してしまうと、迷路を探索しているようになり、「今何について書いてあるのか」が理解しづらい状態になってしまうためです。

第1フェーズ

 2016年の4月時点で、いったんの目標としていた、「転職者から応募を受けた企業が、学歴や職歴についてその人が詐称をしていないことを保証することができる」という部分を満たした検証用アプリを作ることができました。(もちろんこれは、転職者も企業も大学も、皆がこの仕組みを使っていなくては成り立たないのですが、「どのようにしてサービスを普及させるか」は今回の技術検証では考慮していません)。

 ここでは、ドイツのベルリンに拠点を持つスタートアップ、Ascribeと共同で検証する形をとり、彼らが提供している(ビットコインのブロックチェーンに)証跡ログを残してゆくWeb APIや、証明書をアップロードする機能などを活用して実装しています。

 これにより、詐称ができない形での機能提供を実現できるようになり、「ブロックチェーン上に正しくログが残っているか」についても確認、整理できるようになりました。

 しかし振り返ると、アーキテクチャ自体は従来の一般的なWebサイトそのものであり、ブロックチェーンの持つもう1つの特徴である「分散によるデータの保全」という効能は得られていないことが分かります(一部、証明書などのデータは最終的にAmazon S3に格納されているために「分散配置されている」といえますが、AWSに依存しているという意味では「1つのエンティティに依存している」という問題は解消されていません)。

第2フェーズ

 このため、次のフェーズとして、証跡ログだけではなく、サービスの実現に必要となるデータも分散させることを考えました。具体的には、第1フェーズを共同検証したAscribeが開発しているオープンソースのブロックチェーンデータベース「BigchainDB」を基盤に、AscribeのAPIと同じインタフェースを持つWeb APIを開発し、フロント側は変えずに切り替えることにトライしました。

 BigchainDBは、ブロックチェーンが持つ特徴の1つである「信頼関係のない複数のエンティティがそのサービスを維持する」構成を取ることができます。これはすなわち、第1フェーズで指摘していた「AWSなど1つのエンティティに依存する」という課題が解消され得ることを意味します。

 これらを通じて、今後のBigchainDBの完成度が上がっていくことを考慮すると(*1)、想定していた各種データを分散配置した構成をとることができると確認できました。

*1:現状では、ユーザー管理情報などは従来通り通常のデータベースを使って管理しており、単一エンティティに依存している状態ですが、これを将来的にBigchainDBに移すことは可能です。

第3フェーズ

 ビットコインの仕組みではそのログやデータだけではなく、さらに取引ルールなどのロジックまでも、自律的な仕組みにより分散的に維持しています。

 具体的には、ビットコインは1つのWebサイトなどに縛られることなくサービスが維持されており、それ自体は、例えば「1つのサイトが落ちていても問題なく利用が継続できる」状態にあります。

 実際にビットコインを使う場合には何かしらのウォレット(財布)を使いますが、この際、利便性からオンラインWebサイトを利用することが多いため、「そのサイトの継続性に依存しているのでは?」と感じます。しかし、こうしたウォレットは自らのデスクトップマシンなどで直接ビットコインのやりとりをする方法をとることもでき、その場合、特定のサイトに依存しないようになります。

 ATLは「履歴書公証データベースについても、そのような状態にまで引き上げることができないか」と考えました。これが第3フェーズです。

 ここでは最近、技術系のニュースサイトで見掛けるようになったスマートコントラクト(※2)を利用しました。実際に使用できるレベルまで実装が進んでいる「Ethereum」を使い、設計と開発を行っています。

※2:スマートコントラクトとは、ブロックチェーン技術を応用して、「契約」という行為を自動化すること

 なお、この図自体の詳細説明は次回以降に行いますが、ポイントは先述の通り、皆が1つのWebサーバにアクセスする形式ではなく、それぞれの人がそれぞれのデバイスから、直接インターネット上に展開されているEthereumのネットワークに接続する形でシステム全体が構成されており、1つのWebサイトなどに依存しているわけではないという点です。

現在の検証状況

 現在、ATLでは、この第3フェーズにおけるより具体的な利用シーンを想定した検証を行っています。例えばスマートフォンを端末としてEthereumのネットワークに接続するなど、

  • 必要となるであろう機能をどのように実現していくべきか
  • ここで生まれてきている技術、進化している技術はどのようなものがあるか

という観点を中心に検証を進めています。また、日々改善されてゆくEthereumへの追随や広い観点ではスマートコントラクトを実現できる別の仕組みである「Counterparty」や「Eris Industories」も視野に入れた活動を行っています。

 少し長くなりましたが、本連載はこのような流れに沿う形で、3つのフェーズをそれぞれ説明していく予定です。

 これらを通じて、ブロックチェーンをより身近な業務と比較しながら、何がすごいのか(すごそうなのか)を感じ取っていただければとお思います。さらに、これからも出続けるであろう、さまざまな切り口でのブロックチェーン関係の話題を、自らの中で位置付ける軸となり得るように理解を深めていただけると幸いです。

筆者紹介

中野 猛(なかの たけし)

リクルートテクノロジーズ ITソリューション統括部 アドバンスドテクノロジーラボ

シニアリサーチエンジニア。リクルートテクノロジーズの技術開拓&検証機関であるATLで、主に欧州、イスラエルのテクノロジースタートアップとの提携および共同開発を推進中。

これまでに日本では検索エンジン(Apache Solr)やビッグデータ処理(Hadoop)などでの共著、ベルリンでは某スタートアップハブ、イスラエルではテクニオン大学でのメンタリングなど、積極的な対外活動を行う。

現在、技術カテゴリとしてはブロックチェーンにフォーカス。


前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。