(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-05
(45)【発行日】2024-09-13
(54)【発明の名称】仮想通貨を用いたエスクロー処理方法、システムおよびプログラム
(51)【国際特許分類】
G06Q 20/38 20120101AFI20240906BHJP
G06Q 20/02 20120101ALI20240906BHJP
【FI】
G06Q20/38 318
G06Q20/02 300
(21)【出願番号】P 2020111999
(22)【出願日】2020-06-29
【審査請求日】2022-08-29
(73)【特許権者】
【識別番号】518172509
【氏名又は名称】株式会社STANDAGE
(74)【代理人】
【識別番号】100120581
【氏名又は名称】市原 政喜
(72)【発明者】
【氏名】足立 彰紀
(72)【発明者】
【氏名】テジャ ブライアント
(72)【発明者】
【氏名】大森 健太
【審査官】田上 隆一
(56)【参考文献】
【文献】国際公開第2020/040070(WO,A1)
【文献】国際公開第2020/079534(WO,A1)
【文献】特開2020-077347(JP,A)
【文献】国際公開第2011/108629(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
Peer-to-Peerネットワーク上で処理される分散処理プラットフォームによる仮想通貨を用いたエスクロー処理方法であって、
前記分散処理プラットフォームにより、エスクローコントラクトに決済を実行させるための、買手から売手に送金する送金額に対応する仮想通貨を振替える支払トランザクションを生成し、前記買手用および前記売手用に生成された買手秘密鍵および売手秘密鍵並びに管理者用に生成された、3以上の整数nについてn-1個の管理者秘密鍵のうちのn-2個を用いて署名するトランザクション生成ステップと、
前記分散処理プラットフォームにより、前記買手から支払の指示を受信すると、前記署名された支払トランザクションを前記エスクローコントラクトに送信して、当該送信された支払トランザクションを実行させるトランザクション実行ステップと
を備え、
前記予め送金された仮想通貨のうち、所定の管理者手数料を管理者口座に決済する手数料徴収ステップをさらに備えることを特徴とする方法。
【請求項2】
前記送金額に対応する仮想通貨を、送金を実行するエスクローコントラクトのアドレスに該買手から予め送金するデポジットステップをさらに備えることを特徴とする請求項1に記載の方法。
【請求項3】
前記所定の管理者手数料は、前記送金額に応じて定められることを特徴とする請求項1または2に記載の方法。
【請求項4】
前記支払トランザクションは、前記エスクローコントラクトのアドレスから前記売手へ前記送金額を振替えるトランザクションであることを特徴とする請求項1ないし3のいずれかに記載の方法。
【請求項5】
前記エスクローコントラクトを生成して、分散処理プラットフォームにデプロイするコントラクト生成ステップをさらに備えることを特徴とする請求項1ないし4のいずれかに記載の方法。
【請求項6】
前記分散処理プラットフォームは、Ethereumであることを特徴とする請求項5に記載の方法。
【請求項7】
前記エスクローコントラクトは、前記
支払トランザクションを受信すると、ブロードキャストして実行することを特徴とする請求項1ないし6のいずれかに記載の方法。
【請求項8】
前記トランザクション生成ステップは、前記買手から送信された保存されないパスフレーズに基づいて前記買手秘密鍵を暗号化し、および前記売手から送信された保存されないパスフレーズに基づいて前記売手秘密
鍵を暗号化して保存することを特徴とする請求項1ないし7のいずれかに記載の方法。
【請求項9】
コンピュータに仮想通貨を用いたエスクロー処理方法を実行させるプログラムであって、該エスクロー処理方法は、
エスクローコントラクトに送金を実行させるための、買手から売手に送金する送金額に対応する仮想通貨を振替える支払トランザクションを生成し、前記買手用および前記売手用に生成された買手秘密鍵および売手秘密鍵を用いて分散処理プラットフォームにより前記買手および前記売手に署名させ、並びに管理者用に生成された、3以上の整数nについてn-1個の管理者秘密鍵のうちのn-2個の管理者秘密鍵を用いて署名するトランザクション生成ステップと、
前記買手から支払の指示を受信すると、前記署名された支払トランザクションを前記エスクローコントラクトに送信して、当該送信された支払トランザクションを実行させるトランザクション実行ステップと
を備え、
前記予め送金された仮想通貨のうち、所定の管理者手数料を管理者口座に決済する手数料徴収ステップをさらに備えることを特徴とするプログラム。
【請求項10】
仮想通貨を用いてエスクロー処理を行うシステムであって、
エスクローコントラクトに送金を実行させるための、買手から売手に送金する送金額に対応する仮想通貨を振替える支払トランザクションを生成し、前記買手用および前記売手用に生成された買手秘密鍵および売手秘密鍵並びに管理者用に生成された、3以上の整数nについてn-1個の管理者秘密鍵のうちのn-2個を用いて署名するトランザクション生成手段と、
前記買手から支払の指示を受信すると、前記署名された支払トランザクションを前記エスクローコントラクトに送信して、当該送信された支払トランザクションを実行させるトランザクション実行手段と
を備える、
前記予め送金された仮想通貨のうち、所定の管理者手数料を管理者口座に決済する手数料徴収手段をさらに備えことを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は仮想通貨を用いたエスクロー処理方法、システムおよびプログラムに関し、より具体的には、仮想通貨を用いてトランザクションを処理し、高度なセキュリティを有する所定のエスクローサービスを提供するための、仮想通貨を用いたエスクロー処理方法、システムおよびプログラムに関する。
【背景技術】
【0002】
近年、貿易ビジネスの決済システムにおいても取引の安全を図るため売手、買手および管理者の間で預託金を管理するエスクローサービスの導入が提案されており、仮想通貨の取り込みも要望されている。一方、仮想通貨を使用したエスクローサービスの提供においては、決済に関するトランザクション処理が必要となるが、セキュリティ向上を目的にトランザクションの署名に複数の秘密鍵を必要とするマルチシグネチャーの技術が提案されている。マルチシグネチャー技術においては、必要な署名の数は「n/m」のように分数で表され、事前に生成されたm個の秘密鍵のうち、n個の鍵での署名を行うことを示す。例えば、2/3のマルチシグネチャーを用いたビットコインのトランザクション処理の場合、トランザクションの生成、発行等には2つの秘密鍵が必要になるので、3つの秘密鍵のうち1つが漏洩しても、もう一つの秘密鍵がなければビットコインの処理が出来ないことから高セキュリティのウォレットを構築することができる。また、攻撃者が2つ以上の別々の設計のプラットフォームに同時に侵入することは非常に困難でもある。
【0003】
このようなマルチシグネチャー技術としては、例えばマルチシグトランザクションの信頼性を向上可能な新たな署名システムを提供することを目的とし、事業者システム50が秘密鍵542によって署名して発行したトランザクション80に対して、秘密鍵542に対応する秘密鍵342によって署名し、利用者端末40からのトランザクション参照依頼をトリガーとして、秘密鍵342による署名が必要なマルチシグトランザクション80Mを収集し、利用者端末40から、収集したマルチシグトランザクション80Mの署名承認を受信すると、署名承認されたマルチシグトランザクション80Mに対して秘密鍵342によって署名する技術が提案されている(特許文献1を参照)。
【文献】特開2019-161302号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、一般的な仮想通貨を用いたエスクローサービスの提供において、単に高セキュリティのためには、マルチシグネチャーを用いる従来技術は有効であるが、特に貿易向けエスクローシステムでは、従来のマルチシグネチャー技術を取り入れるだけでは様々なシステムの要請に対応しきれないという問題がある。
【0005】
本発明は上記従来の問題に鑑みてなされたものであり、貿易向けビジネスに最適な仮想通貨によるエスクローサービスを提供することが可能な仮想通貨を用いたエスクロー処理方法、システムおよびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
請求項1に記載の発明は、Peer-to-Peerネットワーク上で処理される分散処理プラットフォームによる仮想通貨を用いたエスクロー処理方法であって、分散処理プラットフォームにより、エスクローコントラクトに決済を実行させるための、買手から売手に送金する送金額に対応する仮想通貨を振替える支払トランザクションを生成し、買手用および売手用に生成された買手秘密鍵および売手秘密鍵並びに管理者用に生成された、3以上の整数nについてn-1個の管理者秘密鍵のうちのn-2個を用いて署名するトランザクション生成ステップと、分散処理プラットフォームにより、買手から支払の指示を受信すると、署名された支払トランザクションをエスクローコントラクトに送信して、送信された支払トランザクションを実行させるトランザクション実行ステップとを備え、予め送金された仮想通貨のうち、所定の管理者手数料を管理者口座に決済する手数料徴収ステップをさらに備えることを特徴とする。
【0007】
請求項2に記載の発明は、請求項1に記載の方法において、送金額に対応する仮想通貨を、送金を実行するエスクローコントラクトのアドレスに買手から予め送金するデポジットステップをさらに備えることを特徴とする。
【0009】
請求項3に記載の発明は、請求項1または2に記載の方法において、所定の管理者手数料は、送金額に応じて定められることを特徴とする。
【0010】
請求項4に記載の発明は、請求項1ないし3のいずれかに記載の方法において、支払トランザクションは、エスクローコントラクトのアドレスから売手へ送金額を振替えるトランザクションであることを特徴とする。
【0011】
請求項5に記載の発明は、請求項1ないし4のいずれかに記載の方法において、エスクローコントラクトを生成して、分散処理プラットフォームにデプロイするコントラクト生成ステップをさらに備えることを特徴とする。
【0012】
請求項6に記載の発明は、請求項5に記載の方法において、分散処理プラットフォームは、Ethereumであることを特徴とする。
【0013】
請求項7に記載の発明は、請求項1ないし6のいずれかに記載の方法において、エスクローコントラクトは、支払トランザクションを受信すると、ブロードキャストして実行することを特徴とする。
【0014】
請求項8に記載の発明は、請求項1ないし7のいずれかに記載の方法において、トランザクション生成ステップは、買手から送信された保存されないパスフレーズに基づいて買手秘密鍵を暗号化し、および売手から送信された保存されないパスフレーズに基づいて売手秘密鍵を暗号化して保存することを特徴とする。
【0015】
請求項9に記載の発明は、コンピュータに仮想通貨を用いたエスクロー処理方法を実行させるプログラムであって、エスクロー処理方法は、エスクローコントラクトに送金を実行させるための、買手から売手に送金する送金額に対応する仮想通貨を振替える支払トランザクションを生成し、買手用および手用に生成された買手秘密鍵および売手秘密鍵を用いて分散処理プラットフォームにより買手および売手に署名させ、並びに管理者用に生成された、3以上の整数nについてn-1個の管理者秘密鍵のうちのn-2個の管理者秘密鍵を用いて署名するトランザクション生成ステップと、買手から支払の指示を受信すると、署名された支払トランザクションをエスクローコントラクトに送信して、送信された支払トランザクションを実行させるトランザクション実行ステップとを備え、予め送金された仮想通貨のうち、所定の管理者手数料を管理者口座に決済する手数料徴収ステップをさらに備えることを特徴とする。
【0016】
請求項10に記載の発明は、仮想通貨を用いてエスクロー処理を行うシステムであって、エスクローコントラクトに送金を実行させるための、買手から売手に送金する送金額に対応する仮想通貨を振替える支払トランザクションを生成し、買手用および売手用に生成された買手秘密鍵および売手秘密鍵並びに管理者用に生成された、3以上の整数nについてn-1個の管理者秘密鍵のうちのn-2個を用いて署名するトランザクション生成手段と、買手から支払の指示を受信すると、署名された支払トランザクションをエスクローコントラクトに送信して、送信された支払トランザクションを実行させるトランザクション実行手段とを備え、予め送金された仮想通貨のうち、所定の管理者手数料を管理者口座に決済する手数料徴収ステップをさらに備えることを特徴とする。
【発明の効果】
【0017】
本発明によると、Peer-to-Peerネットワーク上で処理される分散処理プラットフォームによる仮想通貨を用いたエスクロー処理方法であって、分散処理プラットフォームにより、エスクローコントラクトに決済を実行させるための、買手から売手に送金する送金額に対応する仮想通貨を振替える支払トランザクションを生成し、買手用および売手用に生成された買手秘密鍵および売手秘密鍵並びに管理者用に生成された、3以上の整数nについてn-1個の管理者秘密鍵のうちのn-2個を用いて署名するトランザクション生成ステップと、分散処理プラットフォームにより、買手から支払の指示を受信すると、署名された支払トランザクションをエスクローコントラクトに送信して、送信された支払トランザクションを実行させるトランザクション実行ステップとを備え、予め送金された仮想通貨のうち、所定の管理者手数料を管理者口座に決済する手数料徴収ステップをさらに備えるので、貿易向けビジネスに最適な仮想通貨によるエスクローサービスを提供することが可能になる。
【図面の簡単な説明】
【0018】
【
図1】本発明の一実施形態の全体のシステム構成図である。
【
図2】本発明の一実施形態のエスクローコアの機能ブロック図である。
【
図3】本発明の一実施形態で使用するトランザクションの一例を示す図である。
【
図4】本発明の一実施形態の貿易関連取引の全体のフローを説明するための図である。
【
図5】本発明の一実施形態で使用するトランザクションの一例を示す図である。
【
図6】本発明の一実施形態で使用するトランザクションの一例を示す図である。
【
図7】本発明の一実施形態の高セキュアな暗号化を説明するための図である。
【
図8】本発明の一実施形態のトランザクション生成処理を示すフローチャートである。
【
図9】本発明の一実施形態のトランザクション実行処理を示すフローチャートである。
【
図10】本発明の一実施形態のブロックチェーンの一例を示す図である。
【
図11】本発明の一実施形態の分散処理ネットワークを説明するための図である。
【発明を実施するための形態】
【0019】
以下、本発明の仮想通貨を用いたエスクロー処理方法、システムおよびプログラムについて、図面を参照して実施形態を説明する。なお、異なる図面でも、同一の処理、構成を示すときは同一の符号を用いる。
【0020】
本実施形態は、貿易関連ビジネスを行った当事者がその対価などの支払を仮想通貨で行うものであり、あくまで取引が成立した状態以降の金銭のやり取り部分の処理であるが、これに限られることなく、取引の当初からの処理を含めたシステムとすることもできる。例えば、海外の商品をネット経由で購入したり、逆に海外の輸入業者に商品を輸出して送金を受け取ったりする場合などに適用することができるが、これに限られず様々な取引における送金のシーンに適用することができる。すなわち、一般に貿易関連ビジネスにおいては、先ずマーケットプレイスにて自社製品やサービスを簡単にリスティングするといった顧客開拓プロセスから始まり、具体的な買手と売手とのビジネスの交渉や契約の締結、その結果必要な資金調達や配送書類等のやり取りおよび追跡システムに関連する配送手配などが行われ、最終的に決済処理を行うが、このような決済処理以外の各種処理に関連した処理も本実施形態の処理に含めることができる。この場合、貿易関連のポータルサイトにおいて、送金に必要な情報の取得をした後、本実施形態のエスクローシステムに情報が渡されて処理を進めることもできるし、別途設けられた本実施形態のエスクローシステムに接続され、以降決済に必要な情報を入力したり、買手や売手との情報のやり取りをしたりすることもできる。
【0021】
より具体的に、全体の流れを説明すると、
図4は、本発明の一実施形態の貿易関連取引の全体のフローを説明するための図である。
図4に示すように売手が製品をリスティンすると(ステップ401)、買手がマーケットプレイスを通じて製品を閲覧し、マッチングが開始される。その後、売手が買手へコンタクトし、交渉がスタートする(ステップ402)。スタートした交渉完了後、売買契約が締結され、その後システム上で売手から発注依頼が行われる(ステップ403)。発注を受けた後、マルチシグエスクローを生成するために、売手が自身のウォレットの秘密鍵を用いてトランザクションに署名する(ステップ404)。売手が自身のウォレットの秘密鍵を用いてさらに署名する(ステップ405)。(エスクローエージェントの保有する2つの鍵のうち1つは自動署名され)マルチシグエスクローが生成される(ステップ406)。買手が貿易代金をエスクローへ、暗号通貨でデポジットを行う。デポジットが行われたのを確認し、売手が製品を出荷する(ステップ407)。
【0022】
製品納品後、売手がマルチシグエスクローより出金を依頼する(ステップ408)。売手と買手が許可した時点で、エスクローより資金が売手の指定ウォレットへ払いだされる(ステップ409)。このタイミングで、エージェントの保有する鍵のうち自動署名する方の鍵のウォレットへ、例えば決済額の0.7%の手数料がエスクローエージェントに払い出される(ステップ4010)。本説明では、成功報酬として0.7%の手数料を徴収するが、これに限られず、適切な比率の成功報酬とすることができる。すなわち、一般に手数料F=基本手数料B+比率R×取引総額Tとなり、比率Rを数量に依存して変化、例えば最低保証額までは0とし、徐々に大きな値とする等、システムや商慣習に合わせて対応することができるが、これに限らず本技術分野で知られたいずれの成功報酬型手数料の算出方法を採用することもできる。
【0023】
また、本実施形態では仮想通貨としてDIGITRADまたはEtherを用い、また本実施形態のソフトウェアはEthereumプラットフォーム上でデプロイされ実行されるが、これに限られず、種々の仮想通貨、種々の分散型プラットフォームを使用することができる。この場合、本実施形態の各種処理を行うソフトウェアは、
図11に示すような分散ネットワークに接続された、パソコン、サーバなどのコンピュータであるEthereumノード(
図11に示すノード1101など)上で分散処理されるが、本発明の原理は、このような形態にかかわらず一部の処理を特定のサーバが実行したり、特定のデータベースを利用したりすることにより、トランザクションをブロードキャストして送金を行うシステムに適用して、本技術分野で知られたいずれかの方法でシステムを構成し、エスクローサービスを実現するものである。
【0024】
(システム構成)
本発明の一実施形態で用いるエスクローシステムの動作及び処理を以下に説明する。
図1は、本発明の一実施形態の全体のシステム構成図である。本システムでは、エスクロー処理の主な機能を実行し、輸入業者などの買手、輸出業者などの売手とのインタフェースを処理したり、システム全体を制御したりするためのエスクローコア101、およびエスクローコア101とのやり取りを行ってエスクローに関連する各種処理を実行するEthereumプラットフォーム102上で動作する各種ソフトウェア、コントラクト121、122、123を備えており、ネットワーク103を介して接続されている。なお、
図1では論理的にEthereumプラットフォーム102を記載しているが、実際には
図11に示す複数のノード1101によるPeer-to-Peerネットワーク上で処理が行われる。
【0025】
また、図示しないポータルサイトなどに接続して、貿易関連ビジネスのマーケティングや交渉処理などを行う買手端末111および売手端末112は、基本的に無線、有線を問わずネットワーク103に接続されており、例えばデスクトップパソコンとすることができ、本実施形態でネットワーク103との接続としては、通常の接続のほか、携帯電話の回線や、Wi-fi、BLUETOOTH(登録商標)等の無線ネットワークにより行うこともできる。ここで端末111、112はデスクトップパソコンのほか、タブレット端末、スマートフォン、あるいはモバイルパソコン等とすることができるが、基本的に送受信を実行でき、画像を表示、およびタッチパネル、マウスまたはキーボードで一定の入力操作をすることができれば、汎用、専用端末などいずれの装置を用いることができる。また、本実施形態では、以上の各機能に加え、商品等の荷を配送する運送業者や、運送業者による配送状況を管理する図示しない配送管理システムなどもネットワーク103を介して接続され、決済の実行を決定する処理など、エスクローシステムを運用するうえで必要な情報を入手することもできる。
【0026】
図2は、本発明の一実施形態のエスクローコアの機能ブロック図である。エスクローコアは主に、エスクロー処理の主たる機能を実行し、システム全体を制御するエスクローコアシステム201および買手、売手とのインタフェース等外部のシステム向けサービスを処理するエスクローウェブサービス202を備える。ここで、エスクローコアシステム201は、エスクロー処理の主な機能、具体的には買手や売手など本実施形態のエスクローシステムを使用する利用者のアドレスを生成・管理するアドレス生成機能、取引ごとにエスクローコントラクトを生成するマルチシグコントラクト生成機能、所定の条件で仮想通貨であるDIGITRADまたはEtherによる送金又は返金などを指示するDIGITRAD/Etherの振替機能、およびドキュメントハッシュの格納機能を実行するが、これに加え運送業者や配送情報管理機関から配送完了通知を受信等する配送情報チェック機能なども有することができる。
【0027】
また、エスクローウェブサービス202は、買手、売手とのインタフェース関連の主な処理、具体的には買手、売手など取引の関係者のユーザアカウントの入出力や管理機能、商品購入サイトなどからリンクして本実施形態の取引の生成および参加機能、商品輸入業者などの支払者からデポジットに関するDIGITRAD/Etherの預託情報処理機能、取引書類の格納機能、商品配送時の配送識別情報を受けとり管理等する配送情報の入力/修正機能などを実行する。エスクローコアは、さらにハードウェアセキュリティモジュール(HSM)およびEthereumノード接続機能等、その他のシステム構成に応じた種々の機能を有することができる。なお、本システムでは、買手および売手はエスクローサービスを提供するエスクローコア上で様々な処理を行う。このようにエスクローサービスの提供を行うソフトウェアあるいはシステムはエスクローエージェント等と呼ばれることがあるが、本実施形態では、システムの一部または全体のサービスを提供する主体を、このようなエスクローエージェントも含め管理者と呼ぶ。
【0028】
図3は、本発明の一実施形態で使用するトランザクションの一例を示す図である。一般にブロックチェーンを用いる仮想通貨では、その所有の移転(振替)をトランザクションというデータに書き込んで所定の手続きを経ることにより送金が実行される。本実施形態でも振替える額と相手先とをトランザクションに書き込むことにより、エスクロー処理が開始される。本実施形態では、例えばビットコイン等でも用いられている
図3に示すようなトランザクションを用いてエスクロー処理をすることができる。すなわち、送金額等のトランザクションの内容302及び、売手の情報303、買手の情報304をトランザクション301に書き込み、買手の署名を行う。具体的に署名は、例えばトランザクションのハッシュ値を買手の秘密鍵で暗号化したものを書き込む等することで実装することができる。
【0029】
本実施形態では、後述するように、エスクローコアシステム201がトランザクションを生成する際に使用する買手の秘密鍵等は、トランザクションを生成した後その後の使用のため暗号化してディスクに格納するが、エスクローコアシステム201が秘密鍵を用いて不適切な処理をできないようにするため、秘密鍵を容易に解読できないような構成としているが、これに限られず本技術分野で知られたいずれの構成とすることもできる。
【0030】
本実施形態では、秘密鍵をその後の処理にも使用するため、あえてパスフレーズで暗号化して保存することにより不適切処理を回避しているが、秘密鍵を保存自体しないようにすることもできる。本実施形態では、このようにエスクローコアシステム201がトランザクション生成の際だけ秘密鍵を使用できるが、その後はユーザからの提供がない限り秘密鍵を使用できないようにすることにより、システム側の裁量だけでトランザクションを生成させないようにすることによって、安全なトランザクションの生成を達成することもできる。
【0031】
Ethereumプラットフォーム102には、取引ごとに生成されるエスクローコントラクトがデプロイされる。エスクローコントラクトは、本実施形態の決済に関する取引ごとに生成され、送信されたデポジットを保持し、またエスクローコアシステム201からの指示でエスクロー処理を行う。本実施形態のエスクローコントラクトは、後述するマルチシグネチャー(あるいは、マルチシグ)を実装することができ、本実施形態の売手と買手の双方のパスフレーズにより生成される秘密鍵および管理者の秘密鍵がなければ処理ができないようにすることができるので、これにより第三者がシステムに侵入しても不正な送金を行うことはできない構成とすることができる。本実施形態では、マルチシグは、買手、売手および管理者の秘密鍵を使用するが、これに限らず本技術分野で知られた複数の鍵を使用したいずれかの暗号化手法を用いることができる。本実施形態ではこのようにコントラクトをEthereumプラットフォーム102にデプロイして、独立して実行させることにより、エスクローコアシステム201は一度コントラクトを生成すると、生成済みのトランザクションの処理を実行させるだけで、その処理に介入することができないので、システムの安全性をより向上させることができる。
【0032】
図10は、本発明の一実施形態のブロックチェーンの一例を示す図である。ブロックチェーン122は、取引書類1001および貿易関連情報など1002を含んでおり、本実施形態の各ソフトウェアで使用される。取引書類1001には、トランザクションの実行があると、新たなブロックが書き込まれ、ブロックチェーンを形成する。また、貿易関連情報など1002は、新規に口座開設する際に金融機関側から要求される、顧客本人の身元確認における書類手続き情報、その他の情報も含め格納することができる。
【0033】
(本実施形態の暗号化処理)
図7は、本発明の一実施形態の暗号化を説明するための図である。本実施形態のエスクローコア101では、HSM(ハードウェアセキュリティモジュール)によって、全ての秘密鍵、およびトランザクションが保護される。使用するHSMは以下の仕様を全て満たしており、仮にハッキングなどによるデータ流出が起きた場合でも、HSMなしでは流出したデータは復元不能で使用できない。
・暗号鍵を安全な耐タンパー性のハードウェアに保管し、鍵の流出を防止
・米国連邦標準規格FIPS140-2レベル2/3準拠
・暗号鍵のエクスポートが不可能であり、利用者が鍵値を知ることができない
図7に示すように、本実施形態では、ディスク701上に保存する際は、秘密鍵702もトランザクション703も暗号化して保存しており、秘密鍵およびトランザクションを利用時にHSM721を使用してオンデマンドで解読し、メモリ711上では解読済みの平文の秘密鍵712および平文のトランザクション713として各処理を行い、例えばEthereumノードへのブロードキャストを行ったりするが、平文のデータはディスクには保存せずに使用することにより、セキュアなエスクローサービスを実現することができる。ここで、本実施形態のエスクローコアシステム201は、上述の通り、ユーザが承認してトランザクションを生成する際だけ秘密鍵が使用できる。その後エスクローコアシステム201の裁量で秘密鍵を使用できないように、HSMに格納された暗号化鍵に加え、ユーザから都度取得して保存しないパスフレーズを使用して暗号化するようにしているが、これに限られず本技術分野で知られたいずれかの方法で同様の処理をして、エスクローコアシステム201の裁量で不適切にトランザクションを生成することを防止するようにすることができる。
【0034】
このように本実施形態では、高度なセキュリティを確保するため、例えばHSMを用いることもできるが、本願発明はこのような機能を有さなくても単独で実施することができ、その効果も十分に発揮することができることはもちろんである。
【0035】
(本実施形態のマルチシグネチャー対応)
本実施形態では、事前に4つの秘密鍵を用意しておき、トランザクションに4つの秘密鍵のうち3つの秘密鍵を用いて署名する、いわゆるマルチシグネチャーによる暗号化を採用している。具体的には、
図3、5および6に示すように買手の秘密鍵A305により署名されたトランザクション301を売手の秘密鍵B502により署名してトランザクション501とし、さらに管理者の秘密鍵C602により署名してトランザクション601とする。本実施形態の署名においては、トランザクションの処理には上記3つの秘密鍵に加え、事前に用意した管理者の秘密鍵Dを含む4つの秘密鍵のうち、3つの秘密鍵が必要になる。これにより本実施形態ではトランザクションを処理する際に管理者の秘密鍵が必要となるため、買手と売手の2つの秘密鍵のみではトランザクションの処理を実行することができない。このような構成をとることにより、本実施形態では、後述するように管理者がエスクロー処理の報酬として適切な手数料を受けることができる。
【0036】
すなわち、従来エスクローシステムを提供する管理者はエスクロー処理の報酬として一定額が認められているに過ぎなかったが、一般に対象となる決済額が高額になった場合、決済額に適合した報酬を受け取る成功報酬型の手数料が望ましい。しかし従来、売手と買手の秘密鍵の2つのみでトランザクションの処理が可能であると、管理者は成功報酬型の手数料を徴収する前に処理が実行される可能性があり、送金額が確定する前など手続きの初期に限定された定額の手数料しか徴収することができない恐れがあった。本実施形態では、事前に用意した管理者の秘密鍵Dを含む4つの秘密鍵のうち、3つの秘密鍵を必要とすることにより、成功報酬型の手数料を受け取れるようにすることができるが、従来のマルチシグネチャー技術では上述したようにセキュリティ強化のみを目的としているので、本実施形態とは異なり、このような目的を達成することはできない。
【0037】
以上、本実施形態では、4つの秘密鍵のうち、3つの秘密鍵を使用するマルチシグネチャーを用いているが、本願発明の原理は買手および売手の秘密鍵に加え管理者が秘密鍵を有することにより達成することができることから、これに限られることなく、3以上の整数nについて秘密鍵のうちn-1個の管理者秘密鍵を用いるマルチシグネチャーに適用することができる。すなわち、n/mのマルチシグであって、管理者用秘密鍵がn-1個とすることにより、本願発明の成功報酬型手数料を得ることができるという効果を奏することができる。この場合、トランザクションへの署名は売手、買手の各々の秘密鍵および管理者のn-1個のうちのn-2個の秘密鍵の合わせてn個の秘密鍵で署名することとなる。なお、通常、m=n+1であるがこれに限らない、
図8は、本発明の一実施形態のトランザクション生成処理を示すフローチャートである。本システムで種々の処理を行う前提として取引当事者、すなわち買手および売手に対しエスクローウェブサービス202が情報入力画面などを提供し、必要な情報を入力させてアカウントを生成する(ステップ801)。一般的には、貿易取引の契約が完了していれば売手が、買手および取引の情報を有しているので、売手が情報を入力するとアカウントが生成されて、当事者双方に送信されるが、例えば貿易関連ポータルサイトから各情報を自動的に送信することもできるし、買手である輸入業者が情報を入力することもできる。同様に、取引情報が当事者の一方若しくは双方からまたは自動的に入力されると(ステップ802)、エスクローコアシステム201は買手および売手の、それぞれの秘密鍵AおよびBを生成する(ステップ803)。加えて、管理者用の秘密鍵CおよびDが本技術分野で知られたいずれかの方法で生成され、保存される(ステップ804)。
【0038】
さらに、エスクローコアシステム201は、入手した取引情報に基づき、取引の額の支払トランザクションを生成する(ステップ805)が、後述するように支払額に相当する仮想通貨はエスクローコントラクト402に預託されるので、支払トランザクションは代金額に相当する預託されている仮想通貨をエスクローコントラクト402から売手112に振替えるトランザクションである。
【0039】
その後、生成されたトランザクションに買手の買手秘密鍵A、売手の売手秘密鍵Bおよび管理者の秘密鍵Cで署名を行う(ステップ806)。本実施形態では、買手および売手の双方の秘密鍵に加えて管理者の秘密鍵を使用することにより、買手と売手のみでトランザクションの処理を実行することができないので、管理者は成功報酬型の手数料を取得することができる。このようにして暗号化された署名済みトランザクションを所定の暗号化鍵で暗号化して保存する(ステップ807)が、具体的にはパスフレーズαおよびβなどを用いて暗号化して保存する。
【0040】
以上、パスフレーズαおよびβなどにより暗号化を行うが、具体的な暗号化の方法は本技術分野で知られたいずれかの方法を用いることができ、またその後の処理で秘密鍵AまたはBなどを用いる必要がなければ保存せずに、エスクローコアシステム201が新たなトランザクションを生成することができないようにすることもできる。また、その後秘密鍵を使用する場合も、秘密鍵自体はシステムでランダムに発生させているときは、予めユーザに提示して、その後ユーザが自ら入力することができるようにすることもできる。
【0041】
(本実施形態のトランザクション実行処理)
以上、本実施形態ではエスクロー処理の最初の段階で、先ず支払トランザクションを生成しておき、その後、所定の条件がそろった状況、すなわち、売手における取引の一定の段階まで完了、例えば商品の購入取引であれば、商品が輸入業者である買手に着荷するなどして、送金が実行されても問題がないことが確認された状況でトランザクションが実行され、売手に送金される。これにより、取引を安全に行うエスクロー処理が達成される。
【0042】
図9は、本実施形態のトランザクション実行処理を示すフローチャートである。上述の様に、トランザクションが生成され取引の一定の完了を待っている状態から本処理は開始される。まず、エスクローコントラクト401を生成し、Ethereumプラットフォーム102にデプロイする(ステップ901)。なお、本ステップは、次の預託の確認の前に置かれているがこれに限られず、預託確認後などとすることもできる。
【0043】
次に、預託済みか否かを確認し(ステップ903)、まだ預託されていないときは、買手に預託を督促する(ステップ904)。預託が確認されれば売手にその旨連絡し(ステップ905)、取引の履行、例えば商品の出荷等を促す。ここで、預託の完了は、必ずしも取引の履行開始の要件ではないが、売手の判断の一要素として、その他の情報も斟酌して判定することができる。ただし一般には、預託が確認されれば取引の履行の準備に入らないと、その後の支払などの処理が遅延するので、遅滞なく売手に通知することが好ましい。また、本実施形態で預託あるいはデポジットは、具体的にはエスクローコントラクト402のアドレスに買手111から送金することにより行う。これにより、支払額の仮想通貨をエスクローコントラクト402が保持することとなるから、支払時にはエスクローコントラクト402から売手112へ振替えるトランザクションを実行すればいい。
【0044】
返金時には預託の額の仮想通貨をエスクローコントラクト402に保持させず、同額の仮想通貨を別途保持しておく等本技術分野で知られた方法で預託することもできる。この場合、取引が履行されなかったとき返金は、本技術分野で知られた何らかの方法で実施することができる。また、返金トランザクションを予め生成しておき、エスクローコントラクト402から買手111へ振替えるトランザクションを実行するようにすることもできる。
【0045】
売手が取引を一定以上履行し買手がこれを確認した結果、送金しても問題ないと判断すると、買手はエスクローコア101にその旨指示するので、これを確認し(ステップ906)、取引の履行がなされなかった場合は、取引は不成立として契約を解除する(ステップ908)。この際は、本技術分野で知られたいずれかの方法によりデポジットされた仮想通貨を買手に返金する処理を行う。
【0046】
一方、送金の指示があった場合は、支払トランザクションをコントラクトに送信して、実行させるとともに、取引金額に即した手数料を徴収する(ステップ907)。支払トランザクションの実行は、エスクローコントラクト402がEthereumノードにブロードキャストすることにより実行される。手数料の額は本技術分野で知られたいずれの方法で算出することもできるが、例えば所定の取引額まで一定の手数料とし、それを超えると取引額に応じた追加手数料を加算するようにすることもできるが、これに限られない。また、手数料の徴収は本技術分野で知られたいずれの手法も用いることができるが、例えば送金時に送金額から、送金額に応じた手数料を別途管理者に送金するようにして徴収することができる。
【0047】
ここで一般的には書類不備も、異議申立てもなく、期限内に取引が完了した場合はすぐエスクロー処理を実行させることもできるが、当事者間に何らかの不測の事態が発生する可能性もあるため、買手からの指示などから24時間経過した後エスクローコアシステム201はエスクローコントラクト402に支払トランザクションを実行させる(S1306)。本実施形態では、24時間待機してからトランザクションの実行を行うが、待機期間はこれに限られず、取引内容や、使用環境等により任意に設定することができる。
【0048】
(トラッキング処理)
本実施形態で荷物等の配送処理が伴う場合、基本的に買手による代金分の仮想通貨の預託を条件に、売手は配送処理を行い、運送業者による配送完了を条件に預託された仮想通貨を売手に送金することもできる。運送業者への配送の依頼方法や、具体的な手続きについては本技術分野で知られたいずれの方法でも実行することができるが、一般に配送を依頼すると、ユニークな配送識別情報が付与されるため、本実施形態でもエスクローコアシステム201は、売手からあるいは自ら配送識別情報を入手し、これに基づいて処理を進めることができる。売手が、運送業者に配送を依頼すると、配送識別情報が設定されるので、これをエスクローウェブサービス202に通知するか、運送業者から連絡させる等によりエスクローコアが対応する取引と関連付けて配送識別情報を取得できるようにする。すなわち、配送処理がなされ配送識別情報が設定された場合は、配送が完了すると通知を受信するように着荷確認を設定する。現在、国内外の運送業者の多くが自社あるいは関連情報処理企業等の外部機関・企業で、取り扱う荷物の配送管理、追跡システムを有しており、出荷、着荷だけでなく途中の営業所の通過などの情報もリアルタイムで入手できるようになっている。近年では、このような運送会社個別の追跡システムだけではなく、複数の運送会社の情報を収集して提供する企業も登場し、特に海外も含め配送を行う場合は、このような企業の提供する情報を使用することもできる。
【0049】
本実施形態では、例えばAfterShipといったサービスにより、海外も含む主要な運送業者の追跡が可能とすることができるが、これに限られず様々な企業が提供する同種のサービスを利用することもできる。着荷の確認は、使用する追跡サービスにもよるが、本実施形態では上述の様に、配送識別情報を設定しておいて配送が完了すると(買手が商品を受け取ると)、その旨通知を受けるように予め設定しているので、追跡サービスから指定の荷物が着荷したとの通知を待ってその後の処理を行えばよい。ここで、配送識別情報は、運送業者に配送を依頼した際に設定される問合せ番号とすることができるが、これに限られず配送する荷物を特定できるものであれば商品番号等、いずれかの識別力ある情報とすることもできる。以上、本実施形態のシステムにトラッキング処理を取り入れることにより、より有効なシステムの構築が可能である。