電子マネーサービス「point+plus(ポイントプラス)」の運営などを手掛けるアララは2016年10月11日、ブロックチェーン技術の電子マネーへの適用可能性を実証する実験の報告書を公開した(同社サイト)。

図●ブロックチェーン実証実験の概要
(出所:アララ)
[画像のクリックで拡大表示]

 この実験は、同年6月~8月に実施したもの。アララの出資先であるテックビューロが開発するブロックチェーンソフト「mijin」を使って独自のトークン「アララコイン」を発行し、電子マネーに多い多対1の取引を中心に、耐障害試験や負荷試験を実施した。

 主なシステム構成は、ブロックチェーンを管理するmijinサーバー4台と、決済用クライアント(スマホアプリやWebサーバーなど)とmijinサーバーとの通信を仲介するアプリケーション(AP)サーバー1台。いずれもAmazon Web Services上に構築した。

 この実験の結果、アララは「課題はいくつかあるものの、不整合性が発生することなく、1分間に3000以上の取引が可能であり、データの改ざんが困難かつデータ消失を防止する仕組みに実用性、容易性が高いことが証明された」(報告書)との結論を得たという。

 アララの実証実験は、自社内でのみ運用する「プライベートブロックチェーン」について、一般的なリレーショナルデータベースシステム(RDBMS)と比べた利点・欠点を考える上で貴重な材料を提供している。以下、アララの報告書と担当者への取材を通じ、RDBMSと比較したプライベートブロックチェーンの特性を読み解きたい。

重複取引の検知に課題

 報告書の結論にある「不整合が発生することなく」とは、同一の電子マネートークンで多重に取引が成立するような不整合がなかったことを指す。

 例えば、あるユーザーの電子マネーに100円の残高がある場合、この100円を支払う取引が何度も成立してしまうようなら、トークン残高に不整合が発生する。こうした不整合を起こさないことは、電子マネーの基本要件だ。

 RDBMSであれば、ある一連の取引(トランザクション)を実行中はDBの該当項目にロックがかかるため、こうした重複取引の問題は起こらない。1回の取引で残高データは100円から0円になるため、次の取引では100円をもう一度支払うことはできない。

 今回の実証実験では、各ユーザーのトークン残高は、4台のmijinサーバーがそれぞれ個別にブロックチェーン上で管理し、互いに同期を取っている。このため残高100円のユーザーについて、100円を使う二つの取引記録をほぼ同時に発生させ、それぞれ異なるmijinサーバーに送信すると、mijinサーバーは取引をいったん受領してしまう。

 最終的に、mijinサーバーが複数の取引記録を「ブロック」と呼ばれるデータに取り込み、過去のブロックに連結する際、残高がマイナスにならないよういずれかの取引記録が排除される。このため、全体としての整合性は保たれる。

 ただ、最新のブロックが作成されるまでの間(mijinの場合、設定にもよるが数秒間)は、決済端末側では重複取引を検知できない。10分たたないと検知できないビットコインよりは「まし」だが、これはロック機構を持つRDBMSと比べた一つの欠点といえる。

 この欠点をカバーするには、アプリケーション(AP)サーバー側からmijinサーバーに問い合わせ、取引が正しくブロックに取り込まれたかを確認する必要がある。ただ今回の負荷実験では、mijinサーバーからの返答を処理するため、APサーバーの負荷が高まりすぎる課題も見つかったという。

 今回の実証実験では、APサーバーは取引記録を作成する際の暗号処理のため、mijinサーバーと比較して常に高い負荷が発生していたという。電子マネーの運用において、決済端末とmijinサーバーを仲介するAPサーバーに高い負荷が求められるとすれば、運用コストの面では不利になってしまう。

この先は会員の登録が必要です。有料会員(月額プラン)は申し込み初月無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら