身在东京,心在上海。

身在東京,心在上海。

こじらせ女子大生が暗号通貨・ブロックチェーンや中国についてゆるーく語ります。

中国検索エンジン大手Baiduが手掛けるXuperChainを大解剖!

※この記事はこれから始まる!仮想通貨に寄稿した記事の転載です。

こんにちは。こじらせ東大女子(@icotaku_utgirl)です。
本日は中国検索エンジン大手Baiduが手掛けるXuperChainについて解説していきたいと思います。

英語でプレスは出てはいるものの、ホームページやホワイトペーパーはまだ中国語版しか公開されていないため、XuperChainの実態を把握し切れていない方がほとんどではないかと思います。そこで、この解説記事が少しでも参考になれば幸いです!

※中国語のソースに挑戦してみたい方はXuperChain公式サイトや、ホワイトペーパーをご覧ください。

Baidu(百度)とは

Baidu(百度、ばいvどぅ↘︎と読む)は、北京市海淀区に拠点を置き、検索エンジン(百度)や地図アプリ(百度地図)、クーポン共同購入サイト(百度糯米)、掲示板(百度贴吧)、インターネット百科事典(百度百科)等多角的なサービス提供するIT企業です。特に検索エンジンで有名で、世界の検索エンジン市場シェアではGoolgeに次ぐ2位につけています。
中国国内でも、BAT(Baidu, Alibaba, Tencentの頭文字を取ったもの)という言葉が象徴するように、AlibabaやTencentと肩を並べる巨大IT企業として、名を馳せています。
f:id:korilakkuma123:20190119161448p:plain
中国のIT企業でブロックチェーンというと、特許の申請数の多さで知られるAlibabaを思い浮かべる方が多いと思いますが、Baiduもその研究開発力を入れています。18年9月にはブロックチェーンの研究開発を行う新会社・度链网络科技有限公司(Dulian Network Technology)を海南省に設立しています。 百度のブロックチェーン領域における取り組みについては、こちら記事が詳しいです。

chinapass.jp

f:id:korilakkuma123:20190119161740p:plain

XuperChain(超级链)効率の良いコンセンサスアルゴリズムを採用したハイスループットのブロックチェーンです。現時点ではBaiduのグループ企業とその提携企業にのみ公開されていますが、2019年Q1にはオープンソース化され、より多くの企業にBaaS(Blockchain as a Service)として提供される予定です。Baiduは現時点で、XuperChainに関わる特許を50以上保有しており、知的財産権も100%所有しています。

Baiduは今年1月、独自のプロトコルを実装したBaaSプラットフォームをリリースし、4月にはそのプラットフォームを活用した写真の著作権保護・管理サービスTotem(图腾、PIC-CHAINとも呼ばれる)をローンチ、5月には中国版Wikipedia・百度百科と連携し、そのブロックチェーンでの運用を開始しました。そのプロトコルであるXuperChainのホワイトペーパーが最近公開された、というのが、一連の流れです。

XuperChainは9月末現在ですでに、ノード数27、ブロック高1050万以上、TPS350、累計トランザクション数1億4000千万を記録しています。

XuperChainの技術的特徴

それではXuperChainの技術的特徴を詳しく解説していきます。

UTXOベースでありながらスマートコントラクトをサポート

ビットコインと同じくブロックチェーン上での残高管理がUTXO(未使用残高)で行われつつも、EVM(Ethereum Vitrual Machine、プログラム実行環境)WebAssembly(Webブラウザで実行できるバイナリ)でのスマートコントラクト実装もサポートしています。

※EVMとWebAssemblyの詳細はGunosyさんのブログが詳しいです。

blockchain.gunosy.io
他にも残高管理がUTXOベースでありながらスマートコントラクトにも対応しているブロックチェーンには、QTUMがあります。(ちなみにQTUMも中華系。)

よって、UTXOベースにより匿名性と安全性を保ちながらスマートコントラクトを実行できること、EVMとの互換性によりEthereum上で実装したDappsのXuperChain上への移行が容易にできることが、期待されます。

DAG・サイドチェーン・パラレルチェーンで高TPSを実現

XuperChainは、厳密に言うとブロックチェーンではないDAG(有向非循環グラフ)を採用しています。DAGは一般的なブロックチェーンよりもトランザクションの処理が速い上に手数料も安く、マイクロペイメントやIoT等のプロジェクトでよく採用されています。DAGを採用している主要なプロジェクトとしてはByteballIOTAが挙げられます。
また、XuperChain上ではDappsごとにサイドチェーンを構築する仕様になっており、異なるサイドチェーン上で構築されているアプリ同士が計算能力をシェアすることがないため、ある特定のアプリのパフォーマンス低下がXuperChain全体の性能の低下に響くことがありません。サイドチェーンでは、各Dappsに合わせて任意のコンセンサスアルゴリズムを設定することができます(後述)。
さらに、サイドチェーンで二次元でのスケーリングを実現するだけでなく、立体的に張り巡らされたパラレルチェーンを用意することで、三次元でのスケーリングも実現しています。これらのパラレルチェーンは一本のルートチェーンで管理され、それぞれがサイドチェーンを持つことができます。サイドチェーンと同様に、パラレルチェーンもコンセンサスアルゴリズムを任意に設定できます(後述)。
f:id:korilakkuma123:20190119162242p:plain
以上のような仕組みにより、ルートチェーン・パラレルチェーン単体では最大で10万TPS、サイドチェーンも合わせると1000万TPSに到達できるとされています。

多様なコンセンサスアルゴリズムを選択可能

XuperChainのパラレルチェーンやサイドチェーンでは、PoW・PoS・PBFT・Raft・TDPoSといったコンセンサスアルゴリズムを任意に選択できます。中でもTDPoSはDPoSを改良したXuperChain独自のコンセンサスアルゴリズムで、任意に定義されたパラメータ(Delegate数・ラウンドごとのDelegateによるブロック生成数・ブロックタイム)に従い、バリデーションが進みます。例えば、Delegate数=21、ブロック生成数=200、ブロックタイム=3秒とすると、21×200×3/60=210分ごとにラウンドが進んでいくことになります。
また、一度選択したコンセンサスアルゴリズムを、参加ノードの投票によりアップデートしていくことも可能です。例えばブロック200までは完全に中央集権的なバリデーションを行っていたものの、DPoSへの切替提案がなされ、それが投票で認められると、ブロック201からはDPoSにアップデートされます。
f:id:korilakkuma123:20190119162345p:plain

XuperChainで構築されるアプリケーション

それではXuperChainで構築されるDappsを三つ紹介します。

度宇宙

f:id:korilakkuma123:20190119162444p:plain:w400
今年6月にローンチした、ユーザーが稀有元素を組み合わせて唯一無二の惑星を作り、宇宙旅行に出掛けて他の惑星を探索することができるSFゲームです。惑星を作るための元素や引力は、バウンティプログラム参加や友人招待の報酬として獲得できますが、これらの情報は全てXuperChainに記録されユーザーの投票によって選ばれた「宇宙理事会」と呼ばれるDelegatesが記録を監督しています。 ERC721を使っている訳ではありませんが、ブロックチェーンに記録された自分独自のアセットを保有できるという点ではCryptoKittiesと似た発想です。

百度百科

f:id:korilakkuma123:20190119162751p:plain:w600
2018年7月時点で1500万以上の項目を持つ、中国版Wikipediaです。今年5月からXuperChainを活用し、編集内容・編集者・編集時間をリアルタイムでXuperChainに記録し、コンテンツの質の向上を計っています。

PIC-CHAIN(百度图腾、Totem)

f:id:korilakkuma123:20190119162927p:plain
今年4月にローンチした写真の著作権保護・管理サービスです。Totemは「图腾」の拼音読み(とぅ↗︎たん↗︎)に由来しているようです。作品の著作権情報をXuperChainに記録し、AIによる画像認証技術も活用しながら、作品の無断利用や転載がないか監視を行い、その著作権保護に役立てています。著作権情報の記録はDPoSでバリデートされ、膨大な著作権情報はBaiduの分散型クラウドに保存されています。

総括

いかがでしたでしょうか? XuperChainの特色は以下の2点に集約されるのではないでしょうか:

  • 他プロジェクトの優れた構造を欲張りなほどに盛り込んでいる
    • UTXOベースのスマートコントラクト(QTUMが採用)
    • DAG(IOTA等が採用)
    • Dappsごとのサイドチェーン(Liskが採用)など
  • カスタマイズ性が高い
    • コンセンサスアルゴリズムが選択可能
    • TDPoSでは各パラメータを任意に定義可能
    • 一度選択したコンセンサスアルゴリズムの変更が可能

大手IT企業によるプロジェクトでは珍しく、2019年Q1にはオープンソースになる予定なので、今後どのようなDappsがXuperChainで開発されていくのか、今後も注目していきたいところです。