JP7195016B2 - Transaction processing method, system and program - Google Patents

Transaction processing method, system and program Download PDF

Info

Publication number
JP7195016B2
JP7195016B2 JP2020538366A JP2020538366A JP7195016B2 JP 7195016 B2 JP7195016 B2 JP 7195016B2 JP 2020538366 A JP2020538366 A JP 2020538366A JP 2020538366 A JP2020538366 A JP 2020538366A JP 7195016 B2 JP7195016 B2 JP 7195016B2
Authority
JP
Japan
Prior art keywords
remittance
transaction
contract
payment
private key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020538366A
Other languages
Japanese (ja)
Other versions
JPWO2020040070A1 (en
Inventor
丈雄 安島
規行 杉江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of JPWO2020040070A1 publication Critical patent/JPWO2020040070A1/en
Application granted granted Critical
Publication of JP7195016B2 publication Critical patent/JP7195016B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Description

本発明はトランザクション処理方法、システムおよびプログラムに関し、より具体的には、仮想通貨を用いてトランザクションを処理し、所定の費用を送金するためのトランザクション処理方法、システムおよびプログラムに関する。 TECHNICAL FIELD The present invention relates to a transaction processing method, system and program, and more specifically to a transaction processing method, system and program for processing a transaction using virtual currency and remitting a predetermined fee.

近年、商品購入時の代金の支払いの安全性を確保するため、および確実な商品の提供のため、商品代金を予めデポジット(預託、寄託)しておき、所定の要件が満たされるまで資金の移動を止めておく、いわゆるエスクローサービスシステムとして様々なシステムが提供されている。このようなエスクローサービスシステムのほとんどは、基本的に法定通貨を対象にしたものであり、金融機関に預託口座等を設定して行われる。具体的には、何らかの契約に基づく金銭のやり取りを含む取引において、送金元のユーザが預託口座に所定の金額を預託して、それをサービス提供者が確認して送金先に伝え、取引が行われ完了すると最終的に預託された金銭に基づいて送金先に送金を行うことにより、取引の安全が図られている。例えば、特許文献1には、決済費用が安く、商品が到着しないにも関わらず代金を負担する顧客のリスクをなくす、資金プール装置、ネットショップ決済方法およびネットショップ決済システムを得ることを目的とし、顧客端末20、ECサイト端末40、資金プール装置50、商店端末60、荷物追跡管理サーバ80がネットワーク10を介して接続されているシステムが開示されている。ECサイト端末40は顧客端末から入力される商品発注情報を受け付けて送信し、資金プール装置50は商品購入代金の決済手続情報と商品購入代金の入金処理情報を受け付けて商品購入代金をプールし、商店端末60は商品発注情報を受け付け、商店端末60または荷物追跡管理サーバ80は商品の配送情報を送信し、ECサイト端末40は配送情報を受けて入金指令信号を資金プール装置に向けて送信し、資金プール装置50は入金指令信号を受けて商店端末に商品購入代金を送金する(特許文献1を参照)。 In recent years, in order to ensure the safety of payment when purchasing products and to ensure the provision of products, the product price is deposited in advance (deposited, entrusted), and funds are transferred until predetermined requirements are met. Various systems have been provided as so-called escrow service systems to stop Most of these escrow service systems are basically intended for legal currency, and are carried out by setting up a deposit account or the like in a financial institution. Specifically, in a transaction involving the exchange of money based on some kind of contract, the user who sent the remittance deposits a predetermined amount of money in a deposit account, and the service provider confirms it and conveys it to the recipient of the remittance, and the transaction is carried out. When the transaction is completed, the transaction is made safe by remittance to the remittee based on the finally deposited money. For example, Patent Document 1 aims to obtain a fund pooling device, an online shop payment method, and an online shop payment system that reduce payment costs and eliminate the risk of customers paying for products that have not arrived. , a customer terminal 20, an EC site terminal 40, a fund pool device 50, a store terminal 60, and a parcel tracking management server 80 are connected via a network 10. The EC site terminal 40 accepts and transmits product order information input from the customer terminal, the fund pooling device 50 accepts product purchase price settlement procedure information and product purchase price deposit processing information, pools the product purchase price, The store terminal 60 receives product order information, the store terminal 60 or the package tracking management server 80 transmits product delivery information, and the EC site terminal 40 receives the delivery information and transmits a deposit command signal to the fund pool device. , the fund pool device 50 receives the deposit instruction signal and remits the purchase price to the store terminal (see Patent Document 1).

一方、様々な取引における対価等の支払方法として、従来の法定通貨に加え、仮想通貨が用いられるようになっている。このような仮想通貨の1つとして、分散型プラットフォームを前提とした「ビットコイン(登録商標)」を用いたサービスがすでに提供されている。ビットコイン等の仮想通貨の実装においては、「ブロックチェーン」と呼ばれる技術が使用されている。一般に、ブロックチェーンにおいては、ハッシュ関数と公開鍵暗号方式とを用いて真正性を担保された、仮想通貨の取引データであるトランザクションが、仮想通貨を利用するP2Pネットワークで接続された全端末に対してブロードキャストで送信される。送信されたトランザクションは、マイナー(採掘者)と呼ばれる端末によって真正性が検証され、承認されるとブロックにまとめられ、ブロックチェーンと呼ばれる取引の元帳に記録される。これにより、高度な信頼性を保持しながら分散システムによる管理が可能となる
特許文献2には、効率的にブロックチェーンを連携させることを目的とし、利用者装置1が仮想通貨ブロックチェーンBC1用の支払いトランザクションを内包する許諾要求トランザクションをコンテンツ権利管理ブロックチェーンBC2のP2Pネットワークに送信し、権利者装置2が許諾要求トランザクションに応じた許諾トランザクションをコンテンツ権利管理ブロックチェーンBC2のP2Pネットワークに送信するとともに、許諾要求トランザクションに内包された支払いトランザクションを仮想通貨ブロックチェーンBC1に送信することにより、利用者及び権利者はコンテンツ権利管理ブロックチェーンBC2を監視するだけで対価の支払いと視聴許諾を管理することが可能となるシステムが開示されている(特許文献2参照)。
特開2018-81342号公報 特開2017-204070号公報
On the other hand, in addition to conventional legal currency, virtual currency has come to be used as a payment method for consideration in various transactions. As one of such virtual currencies, a service using "Bitcoin (registered trademark)", which is based on the premise of a distributed platform, has already been provided. A technology called “blockchain” is used in the implementation of virtual currencies such as Bitcoin. In general, in blockchain, transactions, which are virtual currency transaction data whose authenticity is secured using hash functions and public key cryptography, are sent to all terminals connected by a P2P network that uses virtual currency. sent by broadcast. Transmitted transactions are verified for authenticity by terminals called miners, and once approved, they are grouped into blocks and recorded in a ledger of transactions called the blockchain. This enables management by a distributed system while maintaining a high level of reliability. A license request transaction including a payment transaction is transmitted to the P2P network of the content rights management block chain BC2, and the right holder device 2 transmits a license transaction corresponding to the license request transaction to the P2P network of the content rights management block chain BC2, By sending the payment transaction included in the permission request transaction to the virtual currency blockchain BC1, users and rights holders can manage payment and viewing permission simply by monitoring the content rights management blockchain BC2. A system has been disclosed (see Patent Document 2).
JP 2018-81342 A JP 2017-204070 A

しかし、仮想通貨を用いてエクスローサービスシステムを構築する場合、例えば特許文献1のシステムでは、仮想通貨も使用できると記載されているものの、あくまで金融機関にプール(預託)用の口座を設定することが必要である。すなわち、例えば、入金可能と判断されると、資金プール装置50に向けて入金指令信号を送信し、資金プール装置50は、入金指令を受けて、資金プール装置50から出店者のネットバンク口座に入金処理情報を送信し商品購入代金を決済するというものであって、あくまで金融機関の口座同士の処理であるため、この開示内容を見ても仮想通貨の送金方法に即した安全なエスクローサービスシステムを構築することができないという問題がある。 However, when constructing an account service system using virtual currency, for example, in the system of Patent Document 1, although it is stated that virtual currency can also be used, it is necessary to set up an account for pooling (deposit) at a financial institution. is required. That is, for example, when it is determined that the deposit is possible, a deposit command signal is transmitted to the fund pool device 50, and the fund pool device 50 receives the deposit command, and transfers the funds from the fund pool device 50 to the store owner's net bank account. It is a method of sending payment processing information and settling the product purchase price, and since it is a process between accounts of financial institutions, it is a safe escrow service system that conforms to the remittance method of virtual currency even if you look at this disclosure. The problem is that it is not possible to build

本発明は上記従来の問題に鑑みてなされたものであり、仮想通貨に最適なエスクローサービスを提供する送金システムを構築し、仮想通貨のメリットである安価な手数料と迅速な送金を達成するとともに、より安全な取引を達成することが可能なトランザクション処理方法、システムおよびプログラムを提供することを目的とする。また、エスクローサービスに限らず、仮想通貨を用いた送金における安全なトランザクション処理を提供することを目的とする。 The present invention has been made in view of the above-mentioned conventional problems, and constructs a remittance system that provides the optimum escrow service for virtual currency, achieves the merits of virtual currency, low fees and quick remittance, An object of the present invention is to provide a transaction processing method, system and program capable of achieving safer transactions. It also aims to provide safe transaction processing not only for escrow services but also for remittances using virtual currency.

請求項1に記載の発明は、送金管理装置において、仮想通貨を用いて送金を行う方法であって、送金コントラクトに送金を実行させるための、送金元から送金先に送金する送金額に対応する仮想通貨を振替える支払トランザクションを生成し、送金元用に生成された送信元秘密キーを用いて署名し、署名された支払トランザクションを保存するトランザクション生成ステップと、所定の支払条件が満足したか否かを判定して満足したと判定すると、保存された支払トランザクションを読み出し、送金コントラクトに送信して、送信された支払トランザクションを実行させるトランザクション実行ステップとを備えることを特徴とする。 The invention according to claim 1 is a method of remittance using a virtual currency in a remittance management device, and corresponds to a remittance amount to be remitted from a remittance source to a remittance destination in order to cause a remittance contract to execute remittance. a transaction generation step of generating a payment transaction to transfer virtual currency, signing it with a source private key generated for the sender, and storing the signed payment transaction; and whether predetermined payment conditions have been met. and, if satisfied, reading the stored payment transaction and sending it to the remittance contract to execute the sent payment transaction.

請求項2に記載の発明は、請求項1に記載の方法において、送金額に対応する仮想通貨を、送金を実行する送金コントラクトのアドレスに送金元から予め送金するデポジットステップをさらに備えることを特徴とする。 The invention according to claim 2 is the method according to claim 1, further comprising a deposit step of pre-remitting virtual currency corresponding to the remittance amount from the remittance source to the address of the remittance contract that executes the remittance. and

請求項3に記載の発明は、請求項2に記載の方法において、支払トランザクションは、送金コントラクトのアドレスから送金先へ送金額を振替えるトランザクションであり、トランザクション生成ステップは、送金コントラクトのアドレスから送金元へ送金額を振替える返金トランザクションをさらに生成ことを特徴とする。 The invention according to claim 3 is the method according to claim 2, wherein the payment transaction is a transaction for transferring the remittance amount from the remittance contract address to the remittance destination, and the transaction generation step includes remittance from the remittance contract address. It is characterized by further generating a refund transaction for transferring the remittance amount to the original.

請求項4に記載の発明は、請求項3に記載の方法において、トランザクション実行ステップは、支払条件判定ステップにおいて支払条件が満足されなかったと判定すると、保存された返金トランザクションを読み出し、送金コントラクトに送信して、送信された返金トランザクションを実行させることを特徴とする。 The invention according to claim 4 is the method according to claim 3, wherein the transaction execution step reads the stored refund transaction and sends it to the remittance contract when it is determined in the payment terms determination step that the payment terms have not been satisfied. to execute the submitted refund transaction.

請求項5に記載の発明は、請求項1ないし4のいずれかに記載の方法において、送金コントラクトを生成して、分散処理プラットフォームにデプロイするコントラクト生成ステップをさらに備えることを特徴とする。 The invention according to claim 5 is the method according to any one of claims 1 to 4, further comprising a contract generation step of generating a remittance contract and deploying it to the distributed processing platform.

請求項6に記載の発明は、請求項5に記載の方法において、分散処理プラットフォームは、Ethereumであることを特徴とする。 The invention according to claim 6 is characterized in that, in the method according to claim 5, the distributed processing platform is Ethereum.

請求項7に記載の発明は、請求項1ないし6のいずれかに記載の方法において、送金コントラクトは、トランザクションを受信すると、ブロードキャストして実行することを特徴とする。 The invention according to claim 7 is the method according to any one of claims 1 to 6, characterized in that the remittance contract is broadcast and executed when the transaction is received.

請求項8に記載の発明は、請求項1ないし7のいずれかに記載の方法において、トランザクションは、送金元用に生成された送信元秘密キーを用いてさらに署名されることを特徴とする。 The invention according to claim 8 is the method according to any one of claims 1 to 7, characterized in that the transaction is further signed using a sender private key generated for the sender.

請求項9に記載の発明は、請求項1ないし8のいずれかに記載の方法において、トランザクション生成ステップは、保存されないパスフレーズに基づいて秘密キーを暗号化して保存することを特徴とすることを特徴とする。 The invention according to claim 9 is characterized in that, in the method according to any one of claims 1 to 8, the transaction generation step encrypts and saves the private key based on a passphrase that is not saved. Characterized by

請求項10に記載の発明において、コンピュータに仮想通貨を用いた送金方法を実行させるプログラムであって、送金方法は、送金コントラクトに送金を実行させるための、送金元から送金先に送金する送金額を振替えるトランザクションを生成し、送金元用に生成された送信元秘密キーを用いて署名し、署名されたトランザクションを保存するトランザクション生成ステップと、所定の支払条件が満足したか否かを判定して満足したと判定すると、保存されたトランザクションを読み出し、送金コントラクトに送信して、送信されたトランザクションを実行させるトランザクション実行ステップとを備えることを特徴とする。 In the invention according to claim 10, a program for causing a computer to execute a remittance method using virtual currency, wherein the remittance method is a remittance amount to be remitted from a remittance source to a remittee for causing a remittance contract to execute remittance. a transaction generation step of generating a transaction to transfer the sender, signing it with a source private key generated for the sender, storing the signed transaction; and determining whether predetermined payment terms have been satisfied. and a transaction execution step of retrieving the stored transaction and transmitting it to the remittance contract to execute the transmitted transaction when the remittance contract determines that the transaction is satisfied.

請求項11に記載の発明は、仮想通貨を用いて送金を行うシステムであって、送金コントラクトに送金を実行させるための、送金元から送金先に送金する送金額を振替えるトランザクションを生成し、送金元用に生成された送信元秘密キーを用いて署名し、署名されたトランザクションを保存するトランザクション生成手段と、所定の支払条件が満足したか否かを判定して満足したと判定すると、保存されたトランザクションを読み出し、送金コントラクトに送信して、送信されたトランザクションを実行させるトランザクション実行手段と を備えることを特徴とする。 The invention according to claim 11 is a system for performing remittance using virtual currency, in which a transaction for transferring a remittance amount to be remitted from a remittance source to a remittance destination is generated for causing a remittance contract to execute remittance, transaction generating means for signing using a sender private key generated for the sender and storing the signed transaction; and transaction execution means for reading the transmitted transaction and transmitting it to the remittance contract to execute the transmitted transaction.

本発明によると、仮想通貨を用いて送金を行う方法であって、送金を実行する送金コントラクトに実行させるための、送金元から送金先に送金する送金額に対応する仮想通貨を振替えるトランザクションを生成し、送金元用に生成された送信元秘密キーを用いて署名し、署名されたトランザクションを保存するトランザクション生成ステップと、所定の支払条件が満足したか否かを判定して満足したと判定すると、保存されたトランザクションを読み出し、送金コントラクトに送信して、送信されたトランザクションを実行させるトランザクション実行ステップとを備えるので、仮想通貨を用いたエスクローにより迅速で確実な取引が可能になる。また、仮想通貨を用いた送金における安全なトランザクション処理が可能になる。 According to the present invention, there is a method of making a remittance using a virtual currency, in which a transaction for transferring a virtual currency corresponding to a remittance amount to be remitted from a remittance source to a remittance destination is executed by a remittance contract that executes remittance. a transaction generation step of generating, signing with a source private key generated for the sender, and storing the signed transaction; Then, the stored transaction is read out, transmitted to the remittance contract, and a transaction execution step for executing the transmitted transaction, so that escrow using virtual currency enables quick and reliable transactions. It also enables safe transaction processing in remittances using virtual currency.

本発明の一実施形態の全体のシステム構成図である。1 is an overall system configuration diagram of an embodiment of the present invention; FIG. 本発明の一実施形態のSHCコアの機能ブロック図である。3 is a functional block diagram of the SHC core of one embodiment of the present invention; FIG. 本発明の一実施形態で使用するトランザクションの一例を示す図である。FIG. 4 is a diagram showing an example of transactions used in one embodiment of the present invention; 本発明の一実施形態の分散処理プラットフォームを説明するための図である。It is a figure for demonstrating the distributed processing platform of one Embodiment of this invention. 本発明の一実施形態のブロックチェーンの一例を示す図である。It is a figure which shows an example of the block chain of one embodiment of this invention. 本発明の一実施形態のコールドウォレットの機能ブロック図である。1 is a functional block diagram of a cold wallet according to one embodiment of the invention; FIG. 本発明の一実施形態のHSMを使用した暗号化を説明するための図である。FIG. 4 is a diagram for explaining encryption using HSM according to one embodiment of the present invention; 本発明の一実施形態のトランザクション生成処理を示すフローチャートである。It is a flowchart which shows the transaction generation process of one Embodiment of this invention. 本発明の一実施形態のトランザクション実行処理を示すフローチャートである。4 is a flow chart showing transaction execution processing according to an embodiment of the present invention; 本発明の一実施形態で使用するトランザクションの別の例を示す図である。FIG. 4 illustrates another example of a transaction for use with one embodiment of the present invention; 本発明の別の実施例のトランザクション生成処理を示すフローチャートである。FIG. 11 is a flow chart showing transaction generation processing according to another embodiment of the present invention; FIG. 本発明の別の実施例のトランザクション適用処理を示すフローチャートである。FIG. 11 is a flow chart showing transaction application processing according to another embodiment of the present invention; FIG. 本発明の別の実施例の実行処理を示すフローチャートである。It is a flowchart which shows the execution process of another Example of this invention.

以下、本発明の仮想通貨を用いたトランザクション処理方法、システムおよびプログラムについて、図面を参照して実施形態を説明する。なお、異なる図面でも、同一の処理、構成を示すときは同一の符号を用いる。 Embodiments of a transaction processing method, system, and program using virtual currency according to the present invention will be described below with reference to the drawings. In addition, even in different drawings, the same reference numerals are used to indicate the same processing and configuration.

本実施形態は、何らかの商取引を行った当事者がその対価などの支払を仮想通貨で行うものであり、あくまで取引が成立した状態以降の金銭のやり取り部分の処理であるが、これに限られることなく、取引の当初からの処理を含めたシステムとすることもできる。例えば、海外の商品をネット経由で購入したり、逆に海外の購入者に商品を輸出して送金を受け取ったりする場合などに適用することができるが、これに限られず様々な取引における送金のシーンに適用することができる。すなわち、例えば海外の事業者が提供する販売サイトで購入者が商品提供者の商品を確認して購入を決定し、支払処理に進んだ段階で本実施形態のシステムが動作する。この場合、販売サイトにおいて、送金に必要な情報の取得をした後、本実施形態の送金システムに情報が渡されて処理を進めることもできるし、販売サイトで購入を決定して支払処理を選択すると、別途設けられた本実施形態の送金システムに接続され、以降送金に必要な情報を入力したり、送金元や送金先との情報のやり取りをしたりすることもできる。 In this embodiment, a party who has conducted some kind of commercial transaction pays for the transaction in virtual currency. , the system can also include processing from the beginning of the transaction. For example, it can be applied to purchasing overseas products via the Internet, or conversely, exporting products to overseas buyers and receiving remittances. Can be applied to scenes. That is, for example, at a sales site provided by an overseas business operator, the purchaser confirms the product of the product provider, decides to purchase the product, and proceeds to the payment process, and the system of the present embodiment operates. In this case, after acquiring the information necessary for remittance at the sales site, the information can be passed to the remittance system of this embodiment to proceed with the process, or the purchase can be determined at the sales site and the payment process selected. Then, the user is connected to the separately provided remittance system of the present embodiment, and can input information necessary for subsequent remittance and exchange information with the remittance source and remittee.

また、本実施形態では仮想通貨としてShake Hands Contract(以降、SHCという)またはEtherを用い、また本実施形態のソフトウェアはEthereumプラットフォーム上でデプロイされ実行されるが、これに限られず、種々の仮想通貨、種々の分散型プラットフォームを使用することができる。この場合、本実施形態の各種処理を行うソフトウェアは、ネットワークに接続された、パソコン、サーバなどのコンピュータであるEthereumノード上で分散処理されるが、本発明の原理は、このような形態にかかわらず一部の処理を特定のサーバが実行したり、特定のデータベースを利用したりすることにより、トランザクションをブロードキャストして送金を行うシステムに適用して、本技術分野で知られたいずれかの方法でシステムを構成することができる。さらに、本実施形態の送金システムは、エスクローサービスを実現するものであるが、本発明の原理は通常のトランザクション処理にも適用することができる。 Further, in this embodiment, Shake Hands Contract (hereinafter referred to as SHC) or Ether is used as virtual currency, and the software of this embodiment is deployed and executed on the Ethereum platform, but not limited to this, various virtual currencies , various distributed platforms can be used. In this case, the software for performing various processes of this embodiment is distributed and processed on Ethereum nodes, which are computers such as personal computers and servers connected to a network. Any method known in the technical field by applying it to a system that broadcasts transactions and remittances by executing some processing on a specific server or using a specific database You can configure the system with Furthermore, although the remittance system of this embodiment implements an escrow service, the principle of the present invention can also be applied to normal transaction processing.

(システム構成)
本発明の一実施形態で用いる送金システムの動作及び処理を以下に説明する。図1は、本発明の一実施形態の全体のシステム構成図である。本システムでは、送金処理の主な機能を実行し、購入者などの送金元、商品提供者などの送金先とのインタフェースを処理したり、システム全体を制御したりするためのSHCコア101、およびSHCコア101とのやり取りを行ってSHCに関連する各種処理を実行するEthereumプラットフォーム102上で動作する各種ソフトウェア、コントラクト121、122、123を備えており、ネットワーク103を介して接続されている。
(System configuration)
The operation and processing of the remittance system used in one embodiment of the present invention are described below. FIG. 1 is an overall system configuration diagram of one embodiment of the present invention. In this system, an SHC core 101 for executing the main functions of remittance processing, processing interfaces with remittance sources such as purchasers and remittance destinations such as product providers, and controlling the entire system, and It includes various software and contracts 121 , 122 , and 123 operating on the Ethereum platform 102 that communicates with the SHC core 101 and executes various SHC-related processes, and is connected via a network 103 .

また、これらネットワークに接続されたノード以外にネットワークから隔離され、ネットワークを介した不正な操作から主要なデータを保護するコールドウォレット131を備える。コールドウォレット131とSHCコア101とのデータのやり取りは常時接続のネットワーク以外の、取り外し可能なメモリ装置などで行うことができる。 In addition to these nodes connected to the network, it is equipped with a cold wallet 131 that is isolated from the network and protects main data from unauthorized operations via the network. Data exchange between the cold wallet 131 and the SHC core 101 can be performed by a removable memory device or the like other than the always-connected network.

さらに、図示しない販売サイトなどに接続して、商品の購入処理などを行う送金元端末111は、基本的に無線、有線を問わずネットワーク103に接続されており、例えばデスクトップパソコンとすることができ、本実施形態でネットワーク103との接続としては、通常の接続のほか、携帯電話の回線や、Wi-fi、BLUETOOTH(登録商標)等の無線ネットワークにより行うこともできる。ここで端末111、112はデスクトップパソコンのほか、タブレット端末、スマートフォン、あるいはモバイルパソコン等とすることができるが、基本的に送受信を実行でき、画像を表示、およびタッチパネル、マウスまたはキーボードで一定の入力操作をすることができれば、汎用、専用端末などいずれの装置を用いることができる。また、本実施形態では、以上の各機能に加え、商品等の荷を配送する運送業者や、運送業者による配送状況を管理する図示しない配送管理システムなどもネットワーク103を介して接続され、送金の実行を決定する処理など、送金システムを運用するうえで必要な情報を入手することもできる。 Furthermore, the remittance source terminal 111, which connects to a sales site (not shown) and performs product purchase processing, is basically connected to the network 103 regardless of whether it is wireless or wired, and can be a desktop personal computer, for example. In this embodiment, the connection with the network 103 can be performed by a normal connection, a mobile phone line, or a wireless network such as Wi-fi or BLUETOOTH (registered trademark). Here, the terminals 111 and 112 can be desktop computers, tablet terminals, smartphones, or mobile computers. Any device such as a general-purpose terminal or a dedicated terminal can be used as long as it can be operated. In this embodiment, in addition to the functions described above, a carrier that delivers goods and the like and a delivery management system (not shown) that manages the delivery status of the carrier are also connected via the network 103. You can also obtain the information necessary for operating the remittance system, such as the process for determining execution.

図2は、本発明の一実施形態のSHCコアの機能ブロック図である。SHCコアは主に、送金処理の主たる機能を実行し、システム全体を制御するSHCコアシステム201および送金元、送金先とのインタフェース等外部のシステム向けサービスを処理するSHCウェブサービス202を備える。ここで、SHCコアシステム201は、送金処理の主な機能、具体的には送金元や送金先など本実施形態の送金システムを使用する利用者のアドレスを生成・管理するSHCアドレス生成機能、取引ごとにSHCエスクローコントラクトを生成するマルチシグコントラクト生成機能、所定の条件で仮想通貨であるSHCまたはEtherによる送金又は返金などを指示するSHC/Etherの振替機能、およびドキュメントハッシュの格納機能を実行するが、これに加え運送業者や配送情報管理機関から配送完了通知を受信等する配送情報チェック機能なども有することができる。 FIG. 2 is a functional block diagram of the SHC core of one embodiment of the present invention. The SHC core mainly includes an SHC core system 201 that executes the main functions of remittance processing and controls the entire system, and an SHC web service 202 that processes services for external systems such as interfaces with remittance sources and remittees. Here, the SHC core system 201 has the main functions of remittance processing, specifically, the SHC address generation function that generates and manages the addresses of users using the remittance system of this embodiment, such as remittance sources and remittance destinations. A multisig contract generation function that generates an SHC escrow contract for each, a SHC/Ether transfer function that instructs remittance or refund in SHC or Ether, which is a virtual currency, under predetermined conditions, and a document hash storage function. In addition to this, it can also have a delivery information check function for receiving a delivery completion notification from a carrier or a delivery information management organization.

また、SHCウェブサービス202は、送金元、送金先とのインタフェース関連の主な処理、具体的には送金元、送金先など取引の関係者のユーザアカウントの入出力や管理機能、商品購入サイトなどからリンクして本実施形態の取引の生成および参加機能、商品購入者などの支払者からデポジットに関するSHC/Etherの預託情報処理機能、取引書類の格納機能、商品配送時の配送識別情報を受けとり管理等する配送情報の入力/修正機能などを実行する。SHCコアは、さらに後述するハードウェアセキュリティモジュール(HSM)およびEthereumノード接続機能等、その他のシステム構成に応じた種々の機能を有することができる。 In addition, the SHC web service 202 performs main processing related to interfaces with remittance sources and remittees, specifically, input/output and management functions of user accounts of persons involved in transactions such as remittance sources and remittees, product purchase sites, etc. Transaction generation and participation function of this embodiment by linking from , SHC/Ether deposit information processing function related to deposits from payers such as product purchasers, transaction document storage function, receipt and management of delivery identification information at the time of product delivery Execute the input/correction function of delivery information, etc. The SHC core can have various functions according to other system configurations, such as a hardware security module (HSM) and an Ethereum node connection function, which will be described later.

図3は、本発明の一実施形態で使用するトランザクションの一例を示す図である。一般にブロックチェーンを用いる仮想通貨では、その所有の移転(振替)をトランザクションというデータに書き込んで所定の手続きを経ることにより送金が実行される。本実施形態でも振替える額と相手先とをトランザクションに書き込むことにより、送金処理が開始される。本実施形態では、例えばビットコイン等でも用いられている図3に示すようなトランザクションを用いて送金処理をすることができる。すなわち、送金額等のトランザクションの内容302及び、送金先の情報303、送金元の情報304をトランザクション301に書き込み、送金元の署名を行う。具体的に署名は、例えばトランザクションのハッシュ値を送金元の秘密キーで暗号化したものを書き込むことで実装することができる。 FIG. 3 is a diagram showing an example of a transaction used in one embodiment of the invention. In general, with virtual currency using blockchain, remittance is executed by writing the transfer (transfer) of ownership in data called a transaction and going through a predetermined procedure. Also in this embodiment, the remittance process is started by writing the transfer amount and the other party in the transaction. In this embodiment, remittance processing can be performed using a transaction as shown in FIG. 3, which is also used for bitcoin, for example. That is, the content 302 of the transaction such as the remittance amount, the remittance destination information 303, and the remittance source information 304 are written in the transaction 301, and the remittance source's signature is entered. Specifically, a signature can be implemented, for example, by writing a transaction hash value encrypted with the sender's private key.

本実施形態では、後述するように、SHCコアシステム201がトランザクションを生
成する際に使用する送金元の秘密キーは、トランザクションを生成した後その後の使用のため暗号化してディスクに格納するが、SHCコアシステム201が秘密キーを用いて不適切な処理をできないようにするため、秘密キーを容易に解読できないような構成としている。具体的に本実施形態では、秘密キーを格納する際に暗号化のために使用するパスフレーズを送金元などから都度取得するように(SHCコアシステム内に保存しないように)して、ユーザが暗号化キーを提供しない限り、SHCコアシステム201はディスクなどに保存されている秘密キーを取得(解読)して使用することができないように構成されている。
In this embodiment, as will be described later, the private key of the remittance source used when the SHC core system 201 generates a transaction is encrypted and stored on the disk for subsequent use after the transaction is generated. In order to prevent the core system 201 from performing inappropriate processing using the private key, the configuration is such that the private key cannot be easily deciphered. Specifically, in this embodiment, the passphrase used for encryption when storing the private key is acquired each time from the remittance source (not stored in the SHC core system) so that the user can Unless the encryption key is provided, the SHC core system 201 is configured so that it cannot obtain (decrypt) and use the private key stored on a disk or the like.

本実施形態では、秘密キーをその後の処理にも使用するため、あえてパスフレーズで暗号化して保存することにより不適切処理を回避しているが、秘密キーを保存自体しないようにすることもできる。すなわち、保存していなければSHCコアシステム201は秘密キーを使用できないので、必要に応じてユーザから取得するようにし、ディスク等には保存しないようにして対応することもできる。この際、秘密キー自体はシステムでランダムに発生させている場合は、予めユーザに提示して、その後ユーザが自ら入力することができるようにすることもできる。 In this embodiment, the private key is also used for subsequent processing, so it is encrypted with a passphrase before being saved to avoid inappropriate processing. However, it is possible to prevent the private key from being saved at all . That is, since the SHC core system 201 cannot use the secret key if it is not saved, it can be handled by obtaining it from the user as necessary and not saving it on a disk or the like. At this time, if the secret key itself is randomly generated by the system, it may be presented to the user in advance so that the user can input it himself afterward.

いずれにしても、本実施形態では、このようにSHCコアシステム201がトランザクション生成の際だけ秘密キーを使用できるが、その後はユーザからの提供がない限り秘密キーを使用できないようにすることにより、システム側の裁量だけでトランザクションを生成させないようにすることによって、安全なトランザクションの生成を達成することができる。 In any case, in this embodiment, the secret key can be used only when the SHC core system 201 generates a transaction, but thereafter the secret key cannot be used unless provided by the user. Secure transaction creation can be achieved by not allowing transactions to be created solely at the discretion of the system.

図4は、本発明の一実施形態の分散処理プラットフォームの例としてEthereumプラットフォームを説明するための図である。Ethereumプラットフォーム102は、様々な分散処理アプリケーション(Dapps)を動作させることができ、本実施形態ではSHCトークンコントラクト121およびSHCブロックチェーン122が置かれている。SHCトークンコントラクト401は、SHCトークンの管理を行うが、具体的な機能は本技術分野の各種トークンの管理ソフトで必要とされるものが用意されているものとする。 FIG. 4 is a diagram for explaining an Ethereum platform as an example of a distributed processing platform according to one embodiment of the present invention. The Ethereum platform 102 is capable of running various distributed processing applications (Dapps), in this embodiment the SHC token contract 121 and the SHC blockchain 122 reside. The SHC token contract 401 manages SHC tokens, and assumes that specific functions required by various token management software in this technical field are prepared.

さらに、Ethereumプラットフォーム102には、図4に示すように取引ごとに生成されるSHCエスクローコントラクト401がデプロイされる。SHCエスクローコントラクト401は、本実施形態の送金に関する取引ごとに生成され、送信されたデポジットを保持し、またSHCコアシステム201からの指示で送金処理を行う。本実施形態のSHCエスクローコントラクト401は、マルチシグを実装することができ、売手と買手、本実施形態でいえば送金先と送金元の双方のパスフレーズがなければ処理ができないようにすることができるので、これにより第三者がシステムに侵入しても不正な送金を行うことはできない構成とすることもできる。この場合、マルチシグは、送信元および送信先の秘密キーを使用するが、これに限らず本技術分野で知られた複数のキーを使用したいずれかの暗号化手法を用いることができる。本実施形態ではこのようにコントラクトをEthereumプラットフォーム102にデプロイして、独立して実行させることにより、SHCコアシステム201は一度コントラクトを生成すると、生成済みのトランザクションの処理を実行させるだけで、その処理に介入することができないので、システムの安全性をより向上させることができる。 Additionally deployed on the Ethereum platform 102 is an SHC escrow contract 401 that is generated for each transaction as shown in FIG. The SHC escrow contract 401 holds deposits generated and sent for each transaction relating to remittance of this embodiment, and performs remittance processing according to instructions from the SHC core system 201 . The SHC escrow contract 401 of this embodiment can implement multisig, and can be made so that processing cannot be performed without the passphrases of both the seller and the buyer, in this embodiment, the remittance destination and the remittance source. Therefore, even if a third party intrudes into the system, it is possible to prevent unauthorized remittance. In this case, multisig uses source and destination secret keys, but can use any of the multiple key encryption techniques known in the art. In this embodiment, by deploying the contract to the Ethereum platform 102 and executing it independently, once the contract is generated, the SHC core system 201 only needs to execute the processing of the generated transaction. system safety can be further improved.

図5は、本発明の一実施形態のSHCブロックチェーンの一例を示す図である。SHCブロックチェーン122は、取引書類501およびKYC情報など502を含んでおり、本実施形態の各ソフトウェアで使用される。取引書類501には、トランザクションの実行があると、新たなブロックが書き込まれ、ブロックチェーンを形成する。また、KYC
情報など502は、いわゆるKnow Your Customer(KYC)、すなわち新規に口座開設する際に金融機関側から要求される、顧客本人の身元確認における書類手続きの総称であり、その他の情報も含め格納することができる。
FIG. 5 is a diagram showing an example of the SHC blockchain of one embodiment of the present invention. The SHC blockchain 122 includes transaction documents 501 and KYC information 502, etc., and is used by each software of this embodiment. Transaction documents 501 are written with new blocks as transactions are executed, forming a blockchain. Also, KYC
The information 502 is a so-called Know Your Customer (KYC), which is a general term for document procedures for customer identification required by financial institutions when opening a new account, and other information is also stored. can be done.

(本実施形態のセキュリティ対応)
本実施形態の送金システムでは、安全な取引を可能にするための様々なセキュリティ機能を有するが、主要なものを以下に説明する。図6は、本発明の一実施形態のコールドウォレットの機能ブロック図である。本実施形態では、秘密キーや流動性の乏しい通貨は、オフラインによりネットワークから隔離されたコールドウォレット131に格納され、必要な場合にデータを取り出して使用する。具体的にはUSBメモリなどの取り外し可能なメモリなどを用いて実装することができるが、これに限られず本技術分野で知られた種々の手法を用いることができる。コールドウォレット131は、重要データをオフラインで管理するためのSHCコールドウォレットシステム602のほか、後述するHSM601も備える。
(Security measures of this embodiment)
The remittance system of this embodiment has various security functions for enabling safe transactions, and main ones will be described below. FIG. 6 is a functional block diagram of a cold wallet according to one embodiment of the invention. In this embodiment, private keys and currency with poor liquidity are stored offline in a cold wallet 131 that is isolated from the network, and the data is retrieved and used when necessary. Specifically, it can be implemented using a removable memory such as a USB memory, but it is not limited to this, and various methods known in this technical field can be used. The cold wallet 131 includes an SHC cold wallet system 602 for offline management of important data, as well as an HSM 601, which will be described later.

図7は、本発明の一実施形態のHSMを使用した暗号化を説明するための図である。本実施形態のSHCコア101では、HSM(ハードウェアセキュリティモジュール)によって、全ての秘密キー、およびトランザクションが保護される。使用するHSMは以下の仕様を全て満たしており、仮にハッキングなどによるデータ流出が起きた場合でも、HSMなしでは流出したデータは復元不能で使用できない。
・暗号キーを安全な耐タンパー性のハードウェアに保管し、キーの流出を防止
・米国連邦標準規格FIPS140-2レベル2/3準拠
・暗号キーのエクスポートが不可能であり、利用者がキー値を知ることができない
図7に示すように、本実施形態では、ディスク701上に保存する際は、秘密キー702もトランザクション703も暗号化して保存しており、秘密キーおよびトランザクションを利用時にHSM721を使用してオンデマンドで解読し、メモリ711上では解読済みの平文の秘密キー712および平文のトランザクション713として各処理を行い、例えばEthereumノードへのブロードキャストを行ったりするが、平文のデータはディスクには保存せずに使用することにより、セキュアなエスクローサービスを実現することができる。ここで、本実施形態のSHCコアシステム201は、上述の通り、ユーザが承認してトランザクションを生成する際だけ秘密キーが使用できる。その後SHCコアシステム201の裁量で秘密キーを使用できないように、HSMに格納された暗号化キーに加え、ユーザから都度取得して保存しないパスフレーズを使用して暗号化するようにしているが、これに限られず本技術分野で知られたいずれかの方法で同様の処理をして、SHCコアシステム201の裁量で不適切にトランザクションを生成することを防止するようにすることができる。
FIG. 7 is a diagram for explaining encryption using HSM according to one embodiment of the present invention. In the SHC core 101 of this embodiment, all private keys and transactions are protected by HSM (Hardware Security Module). The HSM used satisfies all of the following specifications, and even if data is leaked due to hacking or the like, the leaked data cannot be restored and cannot be used without the HSM.
・Encryption keys are stored in secure, tamper-resistant hardware to prevent key leaks ・US Federal Standards FIPS140-2 Level 2/3 compliant ・Encryption keys cannot be exported, and users As shown in FIG. 7, in this embodiment, both the secret key 702 and the transaction 703 are encrypted and saved when they are saved on the disk 701, and the HSM 721 is encrypted when the secret key and transaction are used. On the memory 711, each process is performed as a decrypted plaintext private key 712 and a plaintext transaction 713, for example, broadcast to an Ethereum node, but the plaintext data is stored on the disk. Secure escrow service can be realized by using without saving. Here, as described above, the SHC core system 201 of this embodiment can use the private key only when the user approves and generates a transaction. In order to prevent the secret key from being used at the discretion of the SHC core system 201 thereafter, in addition to the encryption key stored in the HSM, encryption is performed using a passphrase that is obtained from the user each time and is not saved. Any method known in the technical field may be used to prevent inappropriate transaction generation at the discretion of the SHC core system 201 .

(第1実施例の処理)
本実施形態では、本発明の説明の便宜上、所定の販売サイトで送金元である購入者と、送金先である商品提供者とが売買取引を完了し、代金の支払いおよび取引の一定の履行である、商品の配送手続きをこれから行うというフェーズから説明するが、本実施形態の送金システムはこれに限られることなく、例えば販売サイトの売買取引処理に組み込むこともできるし、販売サイトから必要な情報を受信して本実施形態のシステム引き続き処理を進めることもできる。本実施例では、本発明の原理を適用した基本的な処理を用いており、後述する第2実施例ではさらにセキュリティを強化した処理を用いる。また、本実施形態はエスクローサービスシステムを前提として説明しているが、これに限られず本発明の原理は、一般の仮想通貨を用いた送金システムにおけるトランザクション処理に適用することもできる。
(Processing of the first embodiment)
In this embodiment, for convenience of explanation of the present invention, a purchaser who is a remittance source and a product provider who is a remittance destination complete a sales transaction at a predetermined sales site, and after payment and a certain performance of the transaction, The description will start from the phase where product delivery procedures are to be performed, but the remittance system of the present embodiment is not limited to this, and can be incorporated, for example, into sales transaction processing of a sales site, or can receive necessary information from the sales site. can be received and the system of the present embodiment can continue processing. This embodiment uses basic processing to which the principle of the present invention is applied, and a second embodiment, which will be described later, uses processing with enhanced security. Also, although the present embodiment has been described on the premise of an escrow service system, the principle of the present invention is not limited to this and can be applied to transaction processing in a general remittance system using virtual currency.

図8は、本発明の一実施形態のトランザクション生成処理を示すフローチャートである
。本システムで種々の処理を行う前提として取引当事者、すなわち送金元および送金先に対しSHCウェブサービス202が情報入力画面などを提供し、必要な情報を入力させてアカウントを生成する(ステップ801)。一般的には、売買取引が完了していれば送金先が、送金元および取引の情報を有しているので、送金先が情報を入力するとアカウントが生成されて、当事者双方に送信されるが、例えば販売サイトから各情報を自動的に送信することもできるし、送金元である購入者が情報を入力することもできる。同様に、取引情報が当事者の一方若しくは双方からまたは自動的に入力されると(ステップ802)、SHCコアシステム201は送金元および送金先の、それぞれの秘密キーAおよびBを生成する(ステップ803)。
FIG. 8 is a flowchart showing transaction generation processing according to one embodiment of the present invention. As a premise for performing various processes in this system, the SHC web service 202 provides an information input screen and the like to the transaction parties, that is, the remittance source and the remittance destination, and prompts them to input necessary information to create an account (step 801). In general, if a sales transaction is completed, the remittee has information on the remittance source and the transaction, so when the remittee enters the information, an account is created and sent to both parties. For example, the information can be automatically sent from the sales site, or the information can be input by the purchaser who is the source of the remittance. Similarly, when transaction information is entered by one or both parties, or automatically (step 802), SHC core system 201 generates source and destination private keys A and B, respectively (step 803). ).

さらに、SHCコアシステム201は、入手した取引情報に基づき、取引の額の支払トランザクションを生成する(ステップ804)が、後述するように支払額に相当するSHCはSHCエスクローコントラクト402に預託されるので、支払トランザクションは代金額に相当する預託されているSHCをSHCエスクローコントラクト402から送金先112に振替えるトランザクションである。 Furthermore, the SHC core system 201 generates a payment transaction for the amount of the transaction based on the obtained transaction information (step 804). , the payment transaction is a transaction to transfer the deposited SHC equivalent to the price from the SHC escrow contract 402 to the remittance destination 112 .

その後、生成されたトランザクションに送金元の秘密キーAで署名を行い(ステップ805)、署名されたトランザクションを所定の暗号化キーで暗号化して保存する(ステップ806)が、秘密キーAや関連するキーなどについてはさらに別途送金元から提供されたパスフレーズαを用いて暗号化して保存する。パスフレーズαは暗号処理に用いられた後、保存されないようにして、上述の通り不用意な処理を回避するようになっているが、具体的な暗号化の方法は本技術分野で知られたいずれかの方法を用いることができ、またその後の処理で秘密キーなどを用いる必要がないならば保存せずに、SHCコアシステム201が新たなトランザクションを生成することができないようにすることもできる。この際、秘密キー自体はシステムでランダムに発生させている場合は、予めユーザに提示して、その後ユーザが自ら入力することができるようにすることもできる。 Thereafter, the generated transaction is signed with the sender's private key A (step 805), and the signed transaction is encrypted with a predetermined encryption key and stored (step 806). Keys and the like are further encrypted using a passphrase α separately provided by the remittance source and stored. After the passphrase α is used for encryption processing, it is not stored so as to avoid careless processing as described above. Either method can be used, and if there is no need to use the private key or the like in subsequent processing, it is not stored and the SHC core system 201 cannot generate new transactions. . At this time, if the secret key itself is randomly generated by the system, it may be presented to the user in advance so that the user can input it himself afterward.

(本実施例のトランザクション実行処理)
以上、本実施形態では送金処理の最初の段階で、先ず支払トランザクションを生成しておき、その後、所定の条件がそろった状況、すなわち、送金先における取引の一定の段階まで完了、例えば商品の購入取引であれば、商品が購入者である送金元に着荷するなどして、送金が実行されても問題がないことが確認された状況でトランザクションが実行され、送金先に送金される。これにより、取引を安全に行うエスクローが達成される。
(Transaction execution processing of this embodiment)
As described above, in the present embodiment, a payment transaction is first generated at the first stage of the remittance process, and after that, when predetermined conditions are met, that is, when the remittance destination completes the transaction up to a certain stage, such as purchasing a product, the payment transaction is completed. In the case of a transaction, the transaction is executed when it is confirmed that there is no problem even if the remittance is executed, such as when the product arrives at the remittance source, which is the purchaser, and the remittance is sent to the remittance destination. This achieves an escrow that makes transactions secure.

図9は、本実施例のトランザクション実行処理を示すフローチャートである。上述の様に、トランザクションが生成され取引の一定の完了を待っている状態から本処理は開始される。まず、SHCエスクローコントラクト401を生成し、Ethereumプラットフォーム102にデプロイする(ステップ901)。なお、本ステップは、次の預託の確認の前に置かれているがこれに限られず、預託確認後などとすることもできる。 FIG. 9 is a flow chart showing transaction execution processing of this embodiment. As described above, the process starts from a state in which a transaction is generated and waiting for a certain completion of the transaction. First, the SHC escrow contract 401 is generated and deployed on the Ethereum platform 102 (step 901). Although this step is placed before confirmation of the next deposit, it is not limited to this, and may be performed after confirmation of deposit.

次に、預託済みか否かを確認し(ステップ903)、まだ預託されていないときは、送金元に預託を督促する(ステップ904)。預託が確認されれば送金先にその旨連絡し(ステップ905)、取引の履行、例えば商品の出荷等を促す。ここで、預託の完了は、必ずしも取引の履行開始の要件ではないが、送金先の判断の1要素として、その他の情報も斟酌して判定することができる。ただし一般には、預託が確認されれば取引の履行の準備に入らないと、その後の支払などの処理が遅延するので、遅滞なく送金先に通知することが好ましい。また、本実施形態で預託あるいはデポジットは、具体的にはSHCエスクローコントラクト402のアドレスに送金元111から送金することにより行う。これにより、支払額のSHCをSHCエスクローコントラクト402が保持することとなるから、支払時にはSHCエスクローコントラクト402から送金先112へ振替えるトランザク
ションを実行すればいい。
Next, it is checked whether or not the money has been deposited (step 903), and if it has not yet been deposited, the sender is urged to deposit it (step 904). If the deposit is confirmed, the remittance destination is informed of the fact (step 905), and is urged to perform the transaction, for example, to ship the product. Here, the completion of the deposit is not necessarily a requirement for starting the performance of the transaction, but other information can be taken into account as one factor in determining the remittance destination. However, in general, if the deposit is confirmed and preparations for the performance of the transaction are not started, subsequent processing such as payment will be delayed, so it is preferable to notify the remittee without delay. Further, deposit or deposit in this embodiment is performed by transferring money from the sender 111 to the address of the SHC escrow contract 402 . As a result, the SHC of the payment amount is held in the SHC escrow contract 402, and therefore, a transaction to transfer from the SHC escrow contract 402 to the remittance destination 112 can be executed at the time of payment.

返金時には預託の額のSHCをSHCエスクローコントラクト402に保持させず、同額のSHCを別途保持しておく等本技術分野で知られた方法で預託することもできる。この場合、取引が履行されなかったとき返金は、本技術分野で知られた何らかの方法で実施することができる。また、返金トランザクションを予め生成しておき、SHCエスクローコントラクト402から送金元111へ振替えるトランザクションを実行するようにすることもできる。 At the time of refund, the SHC of the deposited amount may not be held in the SHC escrow contract 402, and the same amount of SHC may be held separately, or otherwise deposited by a method known in the technical field. In this case, refunds when the transaction is not performed can be implemented in any manner known in the art. It is also possible to generate a refund transaction in advance and execute a transaction to transfer from the SHC escrow contract 402 to the remittance source 111 .

送金先が取引を一定以上履行し送金元がこれを確認した結果、送金しても問題ないと判断すると、送金元はSHCコアにその旨指示するので、これを確認し(ステップ906)、取引の履行がなされなかった場合は、取引は不成立として契約を解除する(ステップ908)。この際は、本技術分野で知られたいずれかの方法によりデポジットされた仮想通貨を送金元に返金する処理を行う。 As a result of the remittance destination's execution of a certain amount or more of the transaction and the remittance source's confirmation of this, if it is determined that there is no problem in remittance, the remittance source instructs the SHC core to that effect, so this is confirmed (step 906), and the transaction is performed. is not fulfilled, the transaction is deemed unsuccessful and the contract is canceled (step 908). At this time, a process of returning the deposited virtual currency to the remittance source is performed by any method known in the technical field.

一方、送金の指示があった場合は、支払トランザクションをコントラクトに送信して、実行させる(ステップ907)。支払トランザクションの実行は、SHCエスクローコントラクト402がEthereumノードにブロードキャストすることにより実行される。 On the other hand, if there is a remittance instruction, the payment transaction is sent to the contract and executed (step 907). Execution of payment transactions is performed by the SHC escrow contract 402 broadcasting to Ethereum nodes.

(第2実施例の処理)
本実施例の処理は、上述の第1実施例の処理と以下の点で異なる。第1点はトランザクションへの署名は第1実施例では、送金元だけであったが、これに加え、送金先の署名も行うことにより、信頼性をさらに向上させる。第2に、トランザクション生成の際、支払トランザクションに加え、返金トランザクションを生成する。特に、エスクローサービスにおいては、予め送金元は一定額を預託していることが前提となり、様々な形態で預託しておくことが可能であるが、本実施形態のような仮想通貨による簡潔なシステムでは、第1実施例で示したように生成されたSHCエスクローコントラクトに預託金を送金しておき、送金実行時にはこれを送金先に振替えるトランザクションを実行させるのが適切である。この場合、取引が履行されず送金元に返金する必要があるときは、SHCエクスローコントラクトから送金元に送金するトランザクションを用いるのが好ましい。さらに、第1実施例で実行されているように、予めトランザクションを生成しておいて、実行まで改ざんできないようにしておくことが望ましいので、本実施例ではトランザクション生成時に、支払トランザクションと返金トランザクションとを生成するようにする。その他は、基本的に第1実施例と同様である。
(Processing of the second embodiment)
The processing of this embodiment differs from the processing of the above-described first embodiment in the following points. The first point is that in the first embodiment, only the remittance source signed the transaction, but in addition to this, the remittance destination also signs, thereby further improving reliability. Second, when creating a transaction, create a refund transaction in addition to the payment transaction. In particular, in the escrow service, it is assumed that the remittance source has deposited a certain amount in advance, and it is possible to deposit in various forms, but a simple system using virtual currency like this embodiment Then, it is appropriate to transfer the deposited money to the SHC escrow contract generated as shown in the first embodiment, and execute a transaction to transfer the money to the remittee when executing the remittance. In this case, when the transaction is not fulfilled and it is necessary to refund the money to the sender, it is preferable to use a transaction to transfer money from the SHC exlo contract to the sender. Furthermore, as executed in the first embodiment, it is desirable to generate transactions in advance so that they cannot be tampered with until execution. to generate Others are basically the same as the first embodiment.

図10は、本実施例で使用するトランザクションの例を示す図である。上述の第1実施例と同様に本実施例でも、トランザクションというデータに書き込んで所定の手続きを経ることにより送金が実行されるが、第1実施例では、送金額等のトランザクションの内容302及び、送金先の情報303、送金先元の情報304をトランザクション301に書き込み、送金元の署名を行う。本実施例のトランザクション1001では、これに加えて送金先の署名も行う。具体的には、例えばトランザクションのハッシュ値を、送金元の秘密キーに加え、送金先の秘密キー1002で暗号化して書き込むことで実装することができる。 FIG. 10 is a diagram showing an example of transactions used in this embodiment. As in the first embodiment described above, in this embodiment, remittance is executed by writing data called a transaction and going through a predetermined procedure. The remittance destination information 303 and the remittance destination information 304 are written in the transaction 301, and the remittance source signs. In the transaction 1001 of this embodiment, the signature of the remittee is also added. Specifically, for example, the hash value of the transaction can be implemented by adding it to the secret key of the remittance source, encrypting it with the secret key 1002 of the remittee, and writing it.

秘密キーの扱いについては、第1実施例と同様に、本実施例でも、トランザクション生成で使用した後、その後の使用のため暗号化してディスクに格納するが、SHCコアシステム201が秘密キーを用いて不適切な処理をできないようにするため、秘密キーを容易に解読できないように、秘密キーを格納する際に暗号化のために使用するパスフレーズを送金元および送金先などから都度取得するようにして、ユーザが暗号化キーを提供しない
限り、SHCコアシステム201はディスクなどに保存されている秘密キーを取得(解読)して使用することができないように構成されている。
As for the handling of the secret key, in the present embodiment, after it is used in transaction generation, it is encrypted and stored on the disk for subsequent use in the same manner as in the first embodiment. In order to prevent the private key from being easily deciphered, the passphrase used for encryption when storing the private key should be obtained from the sender and recipient each time. Therefore, unless the user provides the encryption key, the SHC core system 201 cannot obtain (decrypt) and use the private key stored in the disk or the like.

本実施例でも、秘密キーを他の処理にも使用するため、あえてユーザの提示するパスフレーズで暗号化して保存することにより不適切処理を回避しているが、秘密キーを保存自体しないようにすることもできる。この際、秘密キー自体はシステムでランダムに発生させている場合は、予めユーザに提示して、その後ユーザが自ら入力することができるようにすることもできる。 In this embodiment, since the private key is also used for other processes, it is encrypted with a passphrase presented by the user and stored to avoid inappropriate processing. You can also At this time, if the secret key itself is randomly generated by the system, it may be presented to the user in advance so that the user can input it himself afterward.

図11は、本発明の別の実施形態のトランザクション生成処理を示すフローチャートである。本実施例は第1実施例と同様の処理を行うが、特にトランザクションの生成(ステップ1101)およびトランザクションへの署名(ステップ1102)が異なるが、全体を説明する。本システムで種々の処理を行う前提として取引当事者、すなわち送金元および送金先に対しSHCウェブサービス202が情報入力画面などを提供し、必要な情報を入力させてアカウントを生成する(ステップ801)。次に、取引情報が当事者の一方若しくは双方からまたは自動的に入力されると(ステップ802)、SHCコアシステム201は送金元および送金先の、それぞれの秘密キーAおよびBを生成する(ステップ803)。 FIG. 11 is a flow chart showing transaction generation processing according to another embodiment of the present invention. Although this embodiment performs the same processing as the first embodiment, but differs particularly in transaction generation (step 1101) and transaction signing (step 1102), the entirety will be described. As a premise for performing various processes in this system, the SHC web service 202 provides an information input screen and the like to the transaction parties, that is, the remittance source and the remittance destination, and prompts them to input necessary information to create an account (step 801). Next, when transaction information is entered by one or both parties or automatically (step 802), SHC core system 201 generates private keys A and B for the sender and receiver, respectively (step 803). ).

さらに、SHCコアシステム201は、入手した取引情報に基づき、取引の額の支払トランザクションおよび返金トランザクションを生成する(ステップ1101)が、支払額に相当するSHCはSHCエスクローコントラクト402に預託されるので、支払トランザクションは代金額に相当する預託されているSHCをSHCエスクローコントラクト402から送金先112に振替えるトランザクションであり、返金トランザクションは代金額に相当する預託されているSHCをSHCエスクローコントラクト402から送金元112に振替えるトランザクションである。本実施例では、このようにトランザクション生成時に、支払トランザクションと返金トランザクションとを生成することにより、取引が不調に終わった場合でも容易に返金処理ができるようにしている。すなわち、エスクローシステムでは、取引の完了前に預託処理が行われるため、取引が問題なく完了し支払処理が行われる場合だけでなく、不調に終わった場合一旦預託した通貨をどう処理するかは必然的にシステムとして対応しなければならない処理だが、支払トランザクションを生成する際に、返金トランザクションを生成しておけば、取引が完了しなかった場合に種々の処理をすることなく、返金トランザクションを実行させれば解決するので、仮想通貨によりエスクローサービスを提供する際にはきわめて有効である。 Furthermore, the SHC core system 201 generates a payment transaction and a refund transaction for the amount of the transaction based on the obtained transaction information (step 1101). The payment transaction is a transaction to transfer the deposited SHC equivalent to the price from the SHC escrow contract 402 to the remittance destination 112, and the refund transaction transfers the deposited SHC equivalent to the price from the SHC escrow contract 402 to the remittance source. 112 transaction. In this embodiment, by generating a payment transaction and a refund transaction at the time of transaction generation, refund processing can be easily performed even if the transaction ends unsuccessfully. In other words, in the escrow system, deposit processing is performed before the transaction is completed. Although it is a process that must be handled as a system, if a refund transaction is generated when a payment transaction is generated, the refund transaction can be executed without performing various processes when the transaction is not completed. This is extremely effective when providing escrow services using virtual currency.

その後、生成されたトランザクションに送金元の送金元秘密キーAおよび送金先の送金先秘密キーBで署名を行う(ステップ1102)。本実施例では、上述の通り支払トランザクション及び返金トランザクションを生成するので、必然的に送金元および送金先の双方の秘密キーを使用しているといこともあり、トランザクションには送金元および送金先の双方で署名することにより、より処理の安全性を向上させている。このようにして暗号化された署名済みトランザクションを所定の暗号化キーで暗号化して保存する(ステップ806)が、第1実施例と同様に、パスフレーズαおよびβなどを用いて暗号化して保存する。 After that, the generated transaction is signed with the sender's private key A and the recipient's private key B (step 1102). In this embodiment, since a payment transaction and a refund transaction are generated as described above, the private keys of both the sender and receiver are inevitably used. By signing on both sides, the security of processing is further improved. The signed transaction thus encrypted is encrypted with a predetermined encryption key and stored (step 806). do.

パスフレーズαおよびβなどにより暗号化を行うが、具体的な暗号化の方法は本技術分野で知られたいずれかの方法を用いることができ、またその後の処理で秘密キーAまたはBなどを用いる必要がなければ保存せずに、SHCコアシステム201が新たなトランザクションを生成することができないようにすることもできる。また、その後秘密キーを使用する場合も、秘密キー自体はシステムでランダムに発生させているときは、予めユーザに提示して、その後ユーザが自ら入力することができるようにすることもできる。 Encryption is performed using passphrases α and β, etc., and any specific encryption method known in the technical field can be used. It is also possible to prevent SHC core system 201 from generating new transactions without storing them if they are not required to be used. Also, when the secret key is to be used thereafter, if the secret key itself is randomly generated by the system, it can be presented to the user in advance so that the user can input it himself.

(本実施例のトランザクション実行処理)
以上、本実施形態では送金処理の最初の段階で、先ず支払トランザクションを生成しておき、その後、所定の条件がそろった状況、すなわち送金元としては送金先における取引の一定の完了、例えば商品の購入取引であれば送金元である購入者に商品が到着したことが確認でき、送金が実行されても問題がないことが確認された状況でトランザクションが実行され、送金先に送金される。これにより、取引を安全に行うエスクローが達成される。
(Transaction execution processing of this embodiment)
As described above, in the present embodiment, a payment transaction is first generated at the first stage of the remittance process, and then, when predetermined conditions are satisfied, that is, when the remittance source is a remittee and the remittance destination completes a certain transaction, If it is a purchase transaction, it can be confirmed that the product has arrived at the purchaser who is the remittance source, and the transaction is executed in a situation where it is confirmed that there is no problem even if the remittance is executed, and the remittance is sent to the remittance destination. This achieves an escrow that makes transactions secure.

図12は、本発明の本実施例のトランザクション適用処理を示すフローチャートである。上述の様に、トランザクションが生成され取引の一定の完了を待っている状態から本処理は開始される。まず、SHCエスクローコントラクト401を生成し、Ethereumプラットフォーム102にデプロイする(ステップ901)。なお、本ステップは、次の預託の確認の前に置かれているがこれに限られず、預託確認後などとすることもできる。 FIG. 12 is a flowchart showing transaction application processing according to this embodiment of the present invention. As described above, the process starts from a state in which a transaction is generated and waiting for a certain completion of the transaction. First, the SHC escrow contract 401 is generated and deployed on the Ethereum platform 102 (step 901). Although this step is placed before confirmation of the next deposit, it is not limited to this, and may be performed after confirmation of deposit.

次に、預託済みか否かを確認し(ステップ903)、まだ預託されていないときは、送金元に預託を督促する(ステップ904)。預託が確認されれば送金先にその旨連絡し(ステップ905)、取引の履行を促す。ここで、預託の完了は、必ずしも取引の履行開始の要件ではないが、送金先の判断の1要素として、その他の情報も斟酌して判定することができる。ただし一般には、預託が確認されれば取引の履行の準備に入らないと、その後の支払などの処理が遅延するので、遅滞なく送金先に通知することが好ましい。また、本実施形態で預託あるいはデポジットは、具体的にはSHCエスクローコントラクト402のアドレスに送金元111から送金することにより行う。これにより、支払額のSHCをSHCエスクローコントラクト402が保持することとなるから、支払時にはSHCエスクローコントラクト402から送金先112へ振替えるトランザクションを実行すればいい。 Next, it is checked whether or not the money has been deposited (step 903), and if it has not yet been deposited, the sender is urged to deposit it (step 904). If the deposit is confirmed, the remittance destination is informed of the fact (step 905), and is urged to carry out the transaction. Here, the completion of the deposit is not necessarily a requirement for starting the performance of the transaction, but other information can be taken into account as one factor in determining the remittance destination. However, in general, if the deposit is confirmed and preparations for the performance of the transaction are not started, subsequent processing such as payment will be delayed, so it is preferable to notify the remittee without delay. Further, deposit or deposit in this embodiment is performed by transferring money from the sender 111 to the address of the SHC escrow contract 402 . As a result, the SHC of the payment amount is held in the SHC escrow contract 402, and therefore, a transaction to transfer from the SHC escrow contract 402 to the remittance destination 112 can be executed at the time of payment.

返金時には、返金トランザクションを使用して、SHCエスクローコントラクト402から送金元111へ振替えるトランザクションを実行するようにする。 At the time of refund, the refund transaction is used to execute the transfer transaction from the SHC escrow contract 402 to the remittance source 111 .

送金先が取引を一定以上履行、例えば商品の購入取引であれば送金元である購入者に商品が到着し送金元がこれを確認した結果、送金しても問題ないと判断すると、送金元はSHCコアにその旨指示するので、これを確認し(ステップ906)、処理がなされなかった場合は、取引は不成立として返金トランザクションを読み出してSHCエスクローコントラクトに送信して実行させる(ステップ1202)。一方、送金の指示があった場合は、図13に示すような処理、すなわち支払トランザクションをコントラクトに送信してトランザクションを実行する処理に進む(ステップ1101)。ここで、本実施例では、送金元からの送金指示を確認して支払処理あるいは返金処理を行っているが、基本的に商取引等の場合は、送金の原因となる荷物の受け渡しが行われることが通常であり、従来送金元である商品の購入者は商品の到着後、あるいは到着した後の種々の処理の後、支払の実行を指示する。しかし、後述するように、近年では荷物の到着の情報なども一元管理されているので、そのようなトラッキングシステムを導入して、送金元の指示なしに送金を実行することもできる。 If the remittance destination completes the transaction above a certain level, for example, in the case of a product purchase transaction, the product arrives at the purchaser who is the remitter, and as a result of the remitter confirming this, the remitter determines that there is no problem with the remittance. Since the SHC core is instructed to that effect, this is confirmed (step 906), and if the transaction is not completed, the refund transaction is read as unsuccessful and sent to the SHC escrow contract for execution (step 1202). On the other hand, if there is a remittance instruction, the process proceeds to the process shown in FIG. 13, that is, the process of transmitting the payment transaction to the contract and executing the transaction (step 1101). Here, in this embodiment, payment processing or refund processing is performed after confirming the remittance instruction from the remittance source. Usually, the purchaser of the product, which is the source of remittance, instructs the execution of payment after the arrival of the product or after various processes after the arrival of the product. However, as will be described later, in recent years, information such as the arrival of parcels has been centrally managed, so it is possible to introduce such a tracking system and execute remittances without instructions from the remittance source.

(トラッキング処理)
本実施形態で荷物等の配送処理が伴う場合、基本的に送金元による代金分のSHCの預託を条件に、送金先は配送処理を行い、運送業者による配送完了を条件に預託されたSHCを送金先に送金することもできる。運送業者への配送の依頼方法や、具体的な手続きについては本技術分野で知られたいずれの方法でも実行することができるが、一般に配送を
依頼すると、ユニークな配送識別情報が付与されるため、本実施形態でもSHCコアシステム201は、送金先からあるいは自ら配送識別情報を入手し、これに基づいて処理を進めることができる。送金先が、運送業者に配送を依頼すると、配送識別情報が設定されるので、これをSHCウェブサービス202に通知するか、運送業者から連絡させる等によりSHCコアが対応する取引と関連付けて配送識別情報を取得できるようにする。すなわち、配送処理がなされ配送識別情報が設定された場合は、配送が完了すると通知を受信するように着荷確認を設定する。現在、国内外の運送業者の多くが自社あるいは関連情報処理企業等の外部機関・企業で、取り扱う荷物の配送管理、追跡システムを有しており、出荷、着荷だけでなく途中の営業所の通過などの情報もリアルタイムで入手できるようになっている。近年では、このような運送会社個別の追跡システムだけではなく、複数の運送会社の情報を収集して提供する企業も登場し、特に海外も含め配送を行う場合は、このような企業の提供する情報を使用することもできる。
(tracking process)
In the present embodiment, when the delivery process of packages etc. is involved, basically on the condition that the remittance source deposits SHC for the price, the remittee performs the delivery process, and on the condition that the transportation company completes the delivery, the deposited SHC is sent. You can also send money to the recipient. Any method known in the technical field can be used for the method of requesting delivery to the carrier and the specific procedures, but in general, when a delivery is requested, unique delivery identification information is given. Also in this embodiment, the SHC core system 201 can obtain delivery identification information from the remittee or itself, and proceed with processing based on this. When the remittee requests the carrier for delivery, the delivery identification information is set. This information is notified to the SHC web service 202 or contacted by the carrier, so that the SHC core associates it with the corresponding transaction to identify the delivery. make information available. That is, when the delivery process is performed and the delivery identification information is set, the arrival confirmation is set so as to receive a notification when the delivery is completed. Currently, most of domestic and foreign shipping companies have their own or external organizations and companies such as related information processing companies, and have delivery management and tracking systems for the packages they handle. Other information is also available in real time. In recent years, not only tracking systems for individual shipping companies, but also companies that collect and provide information from multiple shipping companies have emerged. information can also be used.

本実施形態では、例えばAfterShipといったサービスにより、海外も含む主要な運送業者の追跡が可能とすることができるが、これに限られず様々な企業が提供する同種のサービスを利用することもできる。着荷の確認は、使用する追跡サービスにもよるが、本実施形態では上述の様に、配送識別情報を設定しておいて配送が完了すると(送金元が商品を受け取ると)、その旨通知を受けるように予め設定しているので、追跡サービスから指定の荷物が着荷したとの通知を待ってその後の処理を行えばよい。ここで、配送識別情報は、運送業者に配送を依頼した際に設定される問合せ番号とすることができるが、これに限られず配送する荷物を特定できるものであれば商品番号等、いずれかの識別力ある情報とすることもできる。以上、本実施例のシステムにトラッキング処理を取り入れることにより、より有効なシステムン構築が可能であるが、本処理は上述の第1実施例においても取り入れることができる。 In this embodiment, a service such as AfterShip, for example, enables tracking of major shipping companies including those overseas, but is not limited to this, and similar services provided by various companies can also be used. Confirmation of arrival depends on the tracking service used, but in this embodiment, as described above, the delivery identification information is set, and when the delivery is completed (when the remitter receives the product), a notification to that effect is sent. Since it is set in advance to receive it, it is only necessary to wait for the notification that the specified package has arrived from the tracking service and then perform the subsequent processing. Here, the delivery identification information can be an inquiry number set when a delivery request is made to the carrier, but is not limited to this, and can be any number such as a product number as long as the package to be delivered can be specified. It can also be identifying information. As described above, by incorporating the tracking process into the system of this embodiment, it is possible to construct a more effective system, and this process can also be incorporated into the above-described first embodiment.

(本実施例のトランザクション実行処理)
以上、送金元からの送金指示等、送金が可能になった場合に送金実行処理や返金処理に移行することを説明した。次に、さらに具体的に送金を実行する処理を説明する。
(Transaction execution processing of this embodiment)
In the above, it was explained that when remittance becomes possible, such as remittance instructions from the remittance source, the process shifts to remittance execution processing and refund processing. Next, the process of executing remittance will be described more specifically.

図13は、本発明の一実施形態のトランザクションについての実行処理を示すフローチャートである。上述の様に、取引の一定の完了を待っている状態から本処理は開始される。まず、書類の不備等があるか否かを確認する(ステップ1301)。例えば国内での取引ではなく、特に輸出入を伴う場合は、二国間の取引となるため様々な書類が必要になる。ここでは、その詳細は説明しないが、書類が不備の場合その不備の程度により、もはや取引を中止する必要があることもあるので、この場合、一般には両者で協議し決定した内容に応じて、SHCコアシステム201はSHCエスクローコントラクト402に、保存してある支払トランザクション又は返金トランザクションを送って実行させる(S1304)。 FIG. 13 is a flow chart showing execution processing for transactions according to one embodiment of the present invention. As described above, the processing is started from a state of waiting for a certain completion of transactions. First, it is confirmed whether or not there is any incompleteness in the documents (step 1301). For example, if the transaction is not a domestic transaction but involves imports and exports, it will be a bilateral transaction and various documents will be required. I will not explain the details here, but if the documents are incomplete, it may be necessary to cancel the transaction depending on the degree of the insufficiency. The SHC core system 201 sends the stored payment or refund transaction to the SHC escrow contract 402 for execution (S1304).

また、何らかの事故等により取引が完了しない場合があり、この場合も所定の期限を過ぎれば取引は中止すべきである場合が多いので、本実施形態でも取引を中止とし、SHCコアシステム201はSHCエスクローコントラクト402に返金トランザクションを実行させる(S1305)。期限内に取引が一定以上が完了した場合でも当事者のどちらかから異議申し立てがあった場合は、その内容によっては最早取引を中止する必要があることもあるので、この場合、一般には両者で協議し決定した内容に応じて、SHCコアシステム201はSHCエスクローコントラクト402に、支払トランザクション又は返金トランザクションを実行させる(S1304)。 In addition, there are cases where the transaction is not completed due to some accident or the like, and in this case as well, there are many cases where the transaction should be canceled after a predetermined time limit has passed. Cause the escrow contract 402 to execute the refund transaction (S1305). Even if a certain amount of the transaction is completed within the deadline, if there is an objection from one of the parties, it may be necessary to cancel the transaction as soon as possible depending on the content of the objection. The SHC core system 201 causes the SHC escrow contract 402 to execute a payment transaction or a refund transaction according to the determined content (S1304).

書類不備も、異議申立てもなく、期限内に取引が完了した場合はすぐ送金処理を実行させることもできるが、当事者間に何らかの不測の事態が発生する可能性もあるため、送金
元からの指示などから24時間経過した後SHCコアシステム201はSHCエスクローコントラクト402に支払トランザクションを実行させる(S1306)。本実施形態では、24時間待機してからトランザクションの実行を行うが、待機期間はこれに限られず、取引内容や、使用環境等により任意に設定することができる。
If there are no incomplete documents or no objection, and the transaction is completed within the deadline, the remittance process can be executed immediately. After 24 hours have passed since the instruction, etc., the SHC core system 201 causes the SHC escrow contract 402 to execute the payment transaction (S1306). In this embodiment, the transaction is executed after waiting for 24 hours, but the waiting period is not limited to this, and can be arbitrarily set according to the contents of the transaction, the usage environment, and the like.

ここで、支払トランザクション及び返金トランザクションの実行は、SHCエスクローコントラクト402がEthereumノードにブロードキャストすることにより実行される。 Here, execution of payment and refund transactions is performed by the SHC escrow contract 402 broadcasting to Ethereum nodes.

Claims (10)

送金管理装置において、仮想通貨を用いて送金を行う方法であって、
送金コントラクトに送金を実行させるための、送金元から送金先に送金する送金額に対応する仮想通貨を振替える支払トランザクションを生成し、前記送金元用に生成された送金元秘密キーおよび前記送金先用に生成された送金先秘密キーを用いて署名し、当該署名された支払トランザクションを保存するトランザクション生成ステップと、
所定の支払条件が満足したか否かを判定して満足したと判定すると、前記保存された支払トランザクションを読み出し、前記送金コントラクトに送信して、当該送信された支払トランザクションを実行させるトランザクション実行ステップと
を備え、前記トランザクション生成ステップは、前記送金元から送信された保存されないパスフレーズに基づいて前記送金元秘密キーを暗号化し、および前記送金先から送信された保存されないパスフレーズに基づいて前記送金先秘密キーを暗号化して保存することを特徴とする方法。
A method of remittance using a virtual currency in a remittance management device,
generating a payment transaction for transferring a virtual currency corresponding to a remittance amount to be remitted from a remittance source to a remittance destination, in order to cause the remittance contract to execute the remittance; a transaction generation step of signing with a payee's private key generated for and storing the signed payment transaction;
a transaction execution step of determining whether a predetermined payment condition is satisfied and, if it is determined that it is satisfied, reading the stored payment transaction, transmitting it to the remittance contract, and causing the transmitted payment transaction to be executed; wherein said transaction generating step encrypts said sender private key based on a non-stored passphrase sent by said sender; and encrypts said sender private key based on a non-stored passphrase sent by said sender; A method characterized in that the private key is stored encrypted.
前記送金額に対応する仮想通貨を、送金を実行する送金コントラクトのアドレスに該送金元から予め送金するデポジットステップをさらに備えることを特徴とする請求項1に記載の方法。 2. The method according to claim 1, further comprising a deposit step of pre-remitting virtual currency corresponding to said remittance amount from said remittance source to an address of a remittance contract that executes remittance. 前記支払トランザクションは、前記送金コントラクトのアドレスから前記送金先へ前記送金額を振替えるトランザクションであり、
前記トランザクション生成ステップは、前記送金コントラクトのアドレスから前記送金元へ前記送金額を振替える返金トランザクションをさらに生成することを特徴とする請求項2に記載の方法。
the payment transaction is a transaction for transferring the remittance amount from the address of the remittance contract to the remittee;
3. The method of claim 2, wherein the transaction generating step further generates a refund transaction that transfers the remittance amount from the remittance contract address to the remittance source.
前記トランザクション実行ステップは、前記支払条件が満足されなかったと判定すると、前記保存された返金トランザクションを読み出し、前記送金コントラクトに送信して、当該送信された返金トランザクションを実行させることを特徴とする請求項3に記載の方法。 4. The step of executing a transaction, upon determining that the payment terms have not been met, retrieves the stored refund transaction and transmits it to the remittance contract to execute the submitted refund transaction. 3. The method described in 3. 前記送金コントラクトを生成して、分散処理プラットフォームにデプロイするコントラクト生成ステップをさらに備えることを特徴とする請求項1ないし4のいずれかに記載の方法。 5. The method of any of claims 1-4, further comprising a contract generation step of generating and deploying the remittance contract to a distributed processing platform. 前記分散処理プラットフォームは、Ethereumであることを特徴とする請求項5に記載の方法。 6. The method of claim 5, wherein the distributed processing platform is Ethereum. 前記送金コントラクトは、前記支払トランザクションを受信すると、ブロードキャストして実行することを特徴とする請求項1ないし6のいずれかに記載の方法。 7. The method of any of claims 1-6, wherein the remittance contract broadcasts and executes upon receipt of the payment transaction. 前記支払トランザクションは、前記送金先に生成された送金先秘密キーを用いてさらに署名されることを特徴とする請求項1ないし7のいずれかに記載の方法。 8. The method of any of claims 1-7, wherein the payment transaction is further signed using a beneficiary private key generated for the beneficiary. コンピュータに仮想通貨を用いた送金方法を実行させるプログラムであって、該送金方法は、
送金コントラクトに送金を実行させるための、送金元から送金先に送金する送金額を振替えるトランザクションを生成し、前記送金元用に生成された送金元秘密キーおよび前記送金先用に生成された送金先秘密キーを用いて署名し、当該署名されたトランザクションを保存するトランザクション生成ステップと、
所定の支払条件が満足したか否かを判定して満足したと判定すると、前記保存されたトランザクションを読み出し、前記送金コントラクトに送信して、当該送信されたトランザクションを実行させるトランザクション実行ステップと
を備え、前記トランザクション生成ステップは、前記送金元から送信された保存されないパスフレーズに基づいて前記送金元秘密キーを暗号化し、および前記送金先から送信された保存されないパスフレーズに基づいて前記送金先秘密キーを暗号化して保存することを特徴とするプログラム。
A program that causes a computer to execute a remittance method using virtual currency, the remittance method comprising:
Generate a transaction for transferring the remittance amount to be remitted from the remittance source to the remittance destination, and transfer the remittance source secret key generated for the remittance source and the remittance generated for the remittance destination to cause the remittance contract to execute the remittance a transaction generation step of signing with a prior private key and storing the signed transaction;
a transaction execution step of determining whether predetermined payment conditions are satisfied and, if it is determined that they are satisfied, reading the stored transaction, transmitting it to the remittance contract, and causing the transmitted transaction to be executed; , the transaction generating step encrypts the sender private key based on a non-stored passphrase sent by the sender; and encrypts the recipient private key based on a non-stored passphrase sent by the recipient. A program characterized by encrypting and storing .
仮想通貨を用いて送金を行うシステムであって、
送金コントラクトに送金を実行させるための、送金元から送金先に送金する送金額を振替えるトランザクションを生成し、前記送金元用に生成された送金元秘密キーおよび前記送金先用に生成された送金先秘密キーを用いて署名し、当該署名されたトランザクションを保存するトランザクション生成手段と、
所定の支払条件が満足したか否かを判定して満足したと判定すると、前記保存されたトランザクションを読み出し、前記送金コントラクトに送信して、当該送信されたトランザクションを実行させるトランザクション実行手段と
を備え、前記トランザクション生成手段は、前記送金元から送信された保存されないパスフレーズに基づいて前記送金元秘密キーを暗号化し、および前記送金先から送信された保存されないパスフレーズに基づいて前記送金先秘密キーを暗号化して保存することを特徴とするシステム。
A system for remittance using virtual currency,
Generate a transaction for transferring the remittance amount to be remitted from the remittance source to the remittance destination, and transfer the remittance source secret key generated for the remittance source and the remittance generated for the remittance destination to cause the remittance contract to execute the remittance a transaction generating means for signing with a prior private key and storing the signed transaction;
a transaction execution means for determining whether or not predetermined payment conditions have been satisfied, and if it is determined that they have been satisfied, reading the stored transaction, transmitting it to the remittance contract, and causing the transmitted transaction to be executed. , the transaction generating means encrypts the sender private key based on a non-stored passphrase sent by the sender, and encrypts the sender private key based on a non-stored passphrase sent by the receiver; A system characterized by encrypting and storing
JP2020538366A 2018-08-24 2019-08-18 Transaction processing method, system and program Active JP7195016B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018157871 2018-08-24
JP2018157871 2018-08-24
PCT/JP2019/032205 WO2020040070A1 (en) 2018-08-24 2019-08-18 Transaction processing method, system, and program

Publications (2)

Publication Number Publication Date
JPWO2020040070A1 JPWO2020040070A1 (en) 2021-10-07
JP7195016B2 true JP7195016B2 (en) 2022-12-23

Family

ID=69592936

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020538366A Active JP7195016B2 (en) 2018-08-24 2019-08-18 Transaction processing method, system and program

Country Status (2)

Country Link
JP (1) JP7195016B2 (en)
WO (1) WO2020040070A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012248915A (en) 2011-05-25 2012-12-13 Takeshi Mizunuma Identification name management system
JP2017220710A (en) 2016-06-03 2017-12-14 日本電信電話株式会社 Contract agreement method, agreement verification method, contract agreement device, and agreement verification device
JP2018081342A (en) 2016-11-14 2018-05-24 株式会社関西アーバン銀行 Money pool device, net shop settlement method and net shop settlement system
JP2018128723A (en) 2017-02-06 2018-08-16 株式会社日立製作所 Credibility management system and credibility management method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012248915A (en) 2011-05-25 2012-12-13 Takeshi Mizunuma Identification name management system
JP2017220710A (en) 2016-06-03 2017-12-14 日本電信電話株式会社 Contract agreement method, agreement verification method, contract agreement device, and agreement verification device
JP2018081342A (en) 2016-11-14 2018-05-24 株式会社関西アーバン銀行 Money pool device, net shop settlement method and net shop settlement system
JP2018128723A (en) 2017-02-06 2018-08-16 株式会社日立製作所 Credibility management system and credibility management method

Also Published As

Publication number Publication date
JPWO2020040070A1 (en) 2021-10-07
WO2020040070A1 (en) 2020-02-27

Similar Documents

Publication Publication Date Title
JP6364132B2 (en) Blockchain transaction recording system and method
US10592985B2 (en) Systems and methods for a commodity contracts market using a secure distributed transaction ledger
US11238443B2 (en) Secure crypto currency point-of-sale (POS) management
US20170352076A1 (en) Method and system of facilitating a purchase between a buyer and a seller
CN102812480A (en) Methods and systems for verifying transactions
KR20190114536A (en) System and method for advance remittance before shipment based on block chain
CA3058598C (en) Cross-funds management server-based payment system, and method, device and server therefor
CA3055645C (en) Payment system based on shared funds-management server, and method, device and server therefor
KR20200000595A (en) Blockchain based certificate management method and device, server and system thereof
CA2987295C (en) Payment system based on shared funds-management server, and method, device and server therefor
JP7195016B2 (en) Transaction processing method, system and program
KR20190090699A (en) Method And Apparatus for Providing Wallet for Enhancing Security And keeping Crypto-currency
CA3190184A1 (en) Payment system based on shared funds-management server, and method, device and server therefor
CA2987695A1 (en) Payment system based on shared funds-management server, and method, device and server therefor
CN106203976A (en) Payment system based on same fund server and method of payment, device and server
CN115082050A (en) Transaction method, system, device, equipment and medium for third party payment
KR102263220B1 (en) E-commerce Payment Method using Block Chain
CA2987802A1 (en) Cross-funds server-based payment system, and payment method, device and server therefor
CA2987660C (en) Payment system based on shared funds-management server, and method, device and server therefor
WO2020027269A1 (en) Money transfer method, system, and program
JP7432895B2 (en) Crypto asset purchase/exchange system
JP2022011103A (en) Escrow processing method, system and program using virtual currency
CA3094228A1 (en) Cross-funds management server-based payment system, and method, device and server therefor
CN106203972A (en) Payment system based on same fund server and method, device and server
KR20190121263A (en) Security system and method for online trade information

Legal Events

Date Code Title Description
AA64 Notification of invalidation of claim of internal priority (with term)

Free format text: JAPANESE INTERMEDIATE CODE: A241764

Effective date: 20210526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210624

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220719

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220728

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221122

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221206

R150 Certificate of patent or registration of utility model

Ref document number: 7195016

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150