LINEで送る
Pocket

bitcoimpulse

ビットコイン決済代行サービス企業BitPayは、業界標準を目指すオープンなゼロ承認取引プロトコル「Impulse」のホワイトペーパーを公開した。BitPayは2of2マルチシグネチャを用い複数の支払いチャネルを設定することで、信用のいらないゼロ承認取引を実現可能であるという。

取引が抱える問題点

ビットコイン決済の採用を検討する人々にとって、ビットコインの承認時間は少なからず悩みの種だ。通常、ビットコインを送信する場合、ビットコインの取引を検証するマイナーが新しいブロックを見つけるまでのおよそ10分間を待たなくてはならない。ネット通販であれば10分程度の承認時間は些細なものであるが、店頭販売を行うような場合にはこの時間がネックとなる可能性がある。

現状、店舗決済にビットコイン決済を採用している店舗は前払いのイートイン形式であるか、無条件に取引相手を信用しているかのどちらかだ。お互い既に信頼できる関係性を築いている場合はその限りではないが、通常のトランザクションをゼロ承認で受け入れた場合、二重支払いの可能性が潜在する。

二重支払いとは、あるビットコインを手数料を含めずAに送信した後、即座に同じビットコインを含めたトランザクションを作成しBに送信すると、Aに送信したビットコインが棄却され、Bに送信されたことになるという状況である。現状、店舗は10分程度経過し1承認されたことを確認してから確定することが殆どであるため二重支払いの可能性はないということを書き加えておく。

これがビットコイン取引で10分待たなければならない理由であり、ビットコイン決済がクレジットカードのように高速ではなく使いにくいと言われる理由だ。

BitPayはこの問題に対処すべく、Impulseという解法を提案した。

解法:Impulse

Impulseは、不特定多数の取引相手に対し信用のいらないゼロ承認取引に必要なバックエンドを構築するプロトコルだ。このプロトコルに必要なのは、購入者、販売者、そしてオペレーターという三すくみのスキームである。

購入者からオペレーター、オペレーターから販売者へと、2of2マルチシグネチャアドレスを仲介することで、信頼出来る第三者のオペレーターはトランザクションが正しい形式で記述されているかを確認し、不正なトランザクションならば棄却し(=署名を行わないことで)、販売者へ損害を与える可能性を事前に取り除くことができる。加え、Impulseは購入者と販売者の間で何らかの食い違いがあった場合に対応可能なよう、一定のロック時間(BitPayは30日間を推奨)が経過すると、自動的に顧客へと払い戻されるようになっている。

また、オペレーターがロックしたビットコインをロストしたり、盗んだりすることに対しても、巧妙な仕組みで顧客資産は守られているため安全だ。支払いチャネル内の各当事者は、取引の度に新たに鍵を生成するため、オペレータキーは常に異なる仕組みとなっている。

先日アムステルダムで行われたビットコインハッカソンにおいて、セバスチャン・ロバト氏によりNoRiskWalletというImpulseのプロトコルを利用したモックアップが公開された。ここに示されている図はImpulseプロトコルを理解する上で最も適しているため、是非参考にしてほしい。

transactions

(image by Github)
※ A:バイヤー B:Operator C:セラー
※ M1:バイヤー用2of2マルチシグネチャ M2:セラー用2of2マルチシグネチャ
※ アルファベット(赤):段階ごとの署名手順

おそらくは、ここに示されるオペレーターの役割はビットコイン決済代行サービスが担っていくことになるであろうと推測している。ビットコインのコアプログラムを変更せず、ビットコイン取引の承認時間というボトルネックを解消する糸口を見つけ実装可能であるという事実は、ビットコインが究極的にプログラマブルな通貨であることの革新性を改めて認識させるニュースであろう。そして、忘れてはならないのは、BitPayがこの技術をオープンにしたことである。ビットコインのオープンマインドな精神は、これからも産業の発展とイノベーションに寄与することだろう。

この記事を書いた人

ざきやま(山崎大輔)
ざきやま(山崎大輔)from Cryptocurrency world
ビットコイン専門記者 BTCN編集長
ブロックチェインの可能性を、知的財産の保護やゲーミングカルチャーへ応用できないかと考えてます。
monacoin:MTn7hiNovBHyN7gjtvD1Hh7W96Zmghp41B
bitcoin:1NK8S4ep9ZUZ9H9AmTAfvrCVVAKLbpmi36