仮想通貨で知っておきたい!タイムラグ問題|DApps(ブロックチェーンを活用したアプリケーション)のことなら

TOP  コラム  仮想通貨で知っておきたい!タイムラグ問題

仮想通貨で知っておきたい!タイムラグ問題

2019.01.28

コラム

仮想通貨で知っておきたい!タイムラグ問題

寄せられる期待の大きさと課題
現在、AIやブロックチェーンといった先端技術には、世界中の高い関心が集まり、積極的に関連開発も進んでいます。ブロックチェーンを基盤技術とする仮想通貨(暗号資産)の市場は、中でもいち早く活況化し、いまや一般を含め多くの人々が参加するものとなりました。

非中央集権的な仕組みで、応用範囲も広く、世の中に革新をもたらせる可能性を秘めたブロックチェーンは、今後さらなる発展を遂げるでしょう。仮想通貨もまた、その利便性と独自経済圏の創出による社会問題解消への寄与といった観点から、普及が期待されており、将来性のあるものといえます。

一方で、その技術概念と仕組みについては、まだ発展途上、議論の残るところがあるのも事実です。現時点では、本格的な実用化と浸透への道のりとして、寄せられる期待値の高さの方が先走り、課題・問題点が見過ごされている面もあるでしょう。

どんなに優れた仕組みや技術であっても、最終的には使い方次第であり、その時々の課題を認識した上で活用していくことこそ重要です。そこで今回は、仮想通貨のトランザクションに関連し、知っておきたいタイムラグの問題について解説します。

全世界から次々に投函されるトランザクション、承認・成立までには時間がかかる!
仮想通貨におけるトランザクションというのは、簡単にいうと(送金)取引およびその記録データのことです。送金時の支払い元となる側は、まず新規でトランザクションを生成し、「アドレスAからアドレスBにX量のコインを送金する」といった意思表明を行います。

この時点でX量のコインと指定された分は、支払い元に所有権があることが確かでなければなりませんから、支払い元である人物が自らの秘密鍵によって電子署名を行う必要があり、その上でネットワークに確認を求めます。この段階では未承認状態としてプールされ、内容の検証にかかるマイニングが成功して承認となり、ブロックチェーンに記録されることが決定されれば、晴れて取引も成立となる仕組みになっています。

トランザクションのたどる流れは、要約するとこのようになりますが、ひとつひとつステップがあることからうかがわれるように、トランザクションの作成から承認され、ネットワークの合意を得て成立となるまでには、一定の時間を要します。

つまり取引としてデータ作成を行ってから、正式に実行されるまでには、ある程度のタイムラグが発生することになるのです。たとえばビットコインの場合、PoWと呼ばれる方式が採られており、マイナーらは膨大な計算処理を行って、トランザクションの検証作業を担い、条件に合う結果を出力、成功すると報酬が得られるようになっています。

このマイナーらの活動を受け、新たなブロックが生成されるほか、トランザクションのチェック・承認が広がり、合意が形成されて正しさが保証されていきますが、このマイニングと呼ばれる作業、ブロック生成に、約10分かかるといわれており、トランザクションの承認は、すぐ次のブロックで反映されたとしても、10分程度後にならざるを得ないのです。

さらにスケーラビリティの問題として、ネットワークに参加する人数・ノードが増加・拡大していくことで、処理が遅くなり、かかる時間が延びてくることも指摘されています。マイナーがどのトランザクションの作業にとりかかるかは、自由に決定できるため、なかなか選択されない場合やブロックチェーンネットワークに混雑が発生している場合、承認までに数時間から数日かかることもあります。

その期間、取引の確認依頼を受けてプールされ、トランザクションとして存在していますから、送金手続きに失敗してはいませんが、承認待ちの状態で完了できてはいないということに注意が必要です。

6承認以上が必要?分岐の問題
トランザクションがブロックチェーンに記録される、承認を得てブロックへの帰属が決まるまでに時間がかかることはすでに述べましたが、記録されても、まだ完全な決着とはみなさない方が良いともされています。具体的にいうと、ビットコインの例では、6ブロック目が続くまで、つまり6つの承認が重なる時点を目安にすることが推奨されています。

その理由は、チェーンで分岐が発生するリスクがあるからです。同時にマイニングが成功してしまった場合や、ソフトフォークが行われた場合など、ブロックチェーンには、時折分岐してしまうことがあります。

分岐が永続することはなく、正しい方に多くのノードが参加することで、もう一方はすぐにチェーンが伸びなくなり、自動的に廃棄されて無効化されますが、数ブロックはその切り捨てられるチェーンも続く可能性が否定できません。

こうした分岐が起こり、合意がひっくり返る可能性があると、ちょうどそのタイミングで実行した取引が無効とみなされ、二重支払いのリスクが生じるといったこともあり、一般にそれを防ぐ仕組みは用意されていますが、完全な決着、いわゆるファイナリティといえる状態が実現するまでに、より長い時間がかかってしまうのです。

推奨される6承認には、10分程度×6で、単純計算でも60分、1時間程度がかかることになります。確かな合意を得た取引とその記録になるまでには、少なからずタイムラグがあり、それを踏まえた利用を考えなければならないことが分かります。

タイムラグに伴う問題
こうした一定以上のタイムラグが発生することで、どのような問題が生じるでしょうか。たとえばマイナーに選ばれるまでに時間がかかり、時間的な順序が生成順と記録順で異なってしまうケースもあり得ます。株式や証券取引のようなフィンテック領域をはじめ、正確な順序が重要な意味をもつユースケースでは、大きな問題になってしまいます。

ブロックチェーンでは、これをデータに含まれるタイムスタンプを活用し、先着順に管理するシステムを別連携で実装させることで解決させるといった手法などが用いられるようになっています。他に、正しい順序によるトランザクションの成立、ファイナリティを確立させるため、PBFTと呼ばれるコンセンサスアルゴリズムを導入する手法もありますが、部分的に中央集権的設計を含むものとなるため、こちらには議論もあります。

タイムラグを軽減する仕組みや技術は多く誕生してきていますが、現時点で根本的な解決にはいたっていません。問題が生じた際の救済措置や、取引所が採用する対策など、最新の動向にも関心をもちながら、利用スタイルを考えていきましょう。

▼DApps総研
https://dapps-info.com/

(画像は写真素材 足成より)