WO2025257910A1 - システム、及び価値交換方法 - Google Patents

システム、及び価値交換方法

Info

Publication number
WO2025257910A1
WO2025257910A1 PCT/JP2024/021106 JP2024021106W WO2025257910A1 WO 2025257910 A1 WO2025257910 A1 WO 2025257910A1 JP 2024021106 W JP2024021106 W JP 2024021106W WO 2025257910 A1 WO2025257910 A1 WO 2025257910A1
Authority
WO
WIPO (PCT)
Prior art keywords
value
storage unit
protocol
terminal
deletion
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.)
Pending
Application number
PCT/JP2024/021106
Other languages
English (en)
French (fr)
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.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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 Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to PCT/JP2024/021106 priority Critical patent/WO2025257910A1/ja
Publication of WO2025257910A1 publication Critical patent/WO2025257910A1/ja
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/38Payment protocols; Details thereof

Definitions

  • the present invention relates to technology for exchanging value between entities.
  • the Fair-Exchange (FE) protocol is a protocol that allows multiple entities to exchange their respective values fairly. To maintain fairness, a trusted third party (TTP) is required, and the TTP will mediate in the event of a dispute between entities where opinions differ.
  • TTP trusted third party
  • the FE protocol that minimizes interaction with the TTP is called the Optimistic Fair-Exchange (OFE) protocol.
  • OB110B is a functional unit implemented by a value exchange application installed on terminal 100B.
  • SEB120B is a secure element installed on terminal 100B.
  • SEB120B accepts signature requests only from OB110B and assigns a signature to operations performed by OB110B.
  • OA 110A and SEA 120A will be explained in more detail using terminal 100A as an example. The same applies to OB 110B and SEB 120B in terminal 100B.
  • SEA 120A When SEA 120A receives a request from OA 110A to sign a message, it attaches a signature to the message and returns it to OA 110A.
  • the message represents an operation performed by OA 110A, and it is assumed that "if SEA 120A signs message m, which represents an operation on OA 110A, then m is necessarily performed on OA 110A.”
  • the SEA120A While the protocol is running, the SEA120A maintains its operating state. In other words, even if the power is suddenly turned off, the protocol state is maintained and can be resumed later.
  • Protocol Overview An overview of the protocols executed in the above-described system will be described below. As described above, the protocols in this embodiment include a basic protocol and a Resolve protocol.
  • Terminals 100A and 100B exchange their respective values vA and vB using the basic protocol. While the protocol is running, terminals 100A and 100B can each invoke the Resolve protocol only during their respective invocation periods.
  • the protocol will be forcibly completed by TTP200.
  • the entity that executes the protocol in this embodiment is not limited to a terminal equipped with an SE.
  • a server equipped with an HSM Hardware Security Module
  • HSM Hardware Security Module
  • Notifications from TT200 are made via server push, etc., and are received when the party (terminal) goes online.
  • the nonce is generated within the secure element.
  • the observer also deletes the deletion proof after the protocol has finished. Furthermore, if a certain amount of time passes without any interaction, a timeout occurs and the protocol ends.
  • the user ID of terminal 100A and the user ID of terminal 100B are made public as A and B, respectively, and a signature verification key (public key) is made public as spk (securely shared by each party).
  • spk P is P's signature verification key.
  • ssk P is P's private signing key.
  • msig m sign(m, ssk p ).
  • AgrSig p sign(TID, ssk p ).
  • OB110B sends m0:H(n2) to OA110A of terminal 100A.
  • OA110A requests SEA120A to generate a random number.
  • SEA120A generates random number n1 and sends n1 to OA110A.
  • the OA 110A proposes a transaction to the OB 110B at the terminal 100B by sending message m1: ⁇ vA, vB, n1, AgrSig A >.
  • This message m1 proposes exchanging vA and vB.
  • OB110B confirms the transaction details in S9 and deletes vB from DB111B in S10.
  • the OB 110B requests a signature by sending the TID to the SEB 120B.
  • the SEB 120B signs the document and returns DelSig B to the OB 110B in S12.
  • the OB 110B accepts the proposal by sending m2: ⁇ TID, DelSig B , AgrSig B , msig m2 > to the OA 110A.
  • the OA 110A checks (verifies) the signature of m2 in S14, checks (verifies) the signature of DelSig B in S15, and if these checks are successful, deletes vA from the DB 111A in S16.
  • the OA 110A requests a signature by sending the TID to the SEA 120A.
  • the SEA 120A signs the document and returns DelSig A to the OA 110A in S18.
  • the OB 110B checks the signature of m3 in S20, checks the signature of DelSig A in S21, and if these checks are successful, stores vA in the DB 111B in S22.
  • the Resolve protocol is a protocol for forcibly completing a transaction.
  • A makes a complaint to B (a complaint requesting that the transaction be completed).
  • the Resolve protocol is symmetrical between terminal 100A and terminal 100B.
  • FIG. 4 shows the example of a "complaint from A to B," but by replacing A with B and B with A in FIG. 4, the procedure becomes that for a "complaint from B to A.”
  • the OA 110A requests the TTP 200 to complete the transaction by sending mr1: ⁇ "resolve", TID, DelSig A , AgrSig B , msig mr1 >.
  • the TTP 200 checks the signature of mr1 in S102, checks the signature of DelSig A in S103, and verifies the signature of AgrSig B in S104, and if these checks are successful, proceeds to S105.
  • the TTP 200 allows the OA 110A to complete the transaction by sending mr2: ⁇ "allow resolve", TID, sign( ⁇ "allow resolve", TID>, ssk TTP )).
  • any of the devices described in this embodiment can be realized by, for example, having a computer execute a program.
  • This computer may be a physical computer or a virtual machine on the cloud.
  • FIG. 5 is a diagram showing an example of the hardware configuration of the computer.
  • the computer in FIG. 5 has a drive device 1000, an auxiliary storage device 1002, a memory device 1003, a CPU 1004, an interface device 1005, a display device 1006, an input device 1007, an output device 1008, etc., all of which are interconnected via a bus B.
  • the computer may also be equipped with a GPU.
  • the program that realizes processing on the computer is provided by a recording medium 1001, such as a CD-ROM or memory card.
  • a recording medium 1001 such as a CD-ROM or memory card.
  • the program is installed from the recording medium 1001 to the auxiliary storage device 1002 via the drive device 1000.
  • the program does not necessarily have to be installed from the recording medium 1001; it can also be downloaded from another computer via a network.
  • the auxiliary storage device 1002 stores the installed program as well as necessary files, data, etc.
  • the memory device 1003 When an instruction to start a program is received, the memory device 1003 reads and stores the program from the auxiliary storage device 1002.
  • the CPU 1004 implements the functions related to the device in accordance with the program stored in the memory device 1003.
  • the interface device 1005 is used as an interface for connecting to a network, etc.
  • the display device 1006 displays a GUI (Graphical User Interface) based on the program, etc.
  • the input device 1007 is composed of a keyboard, mouse, buttons, touch panel, etc., and is used to input various operational instructions.
  • the output device 1008 outputs the results of calculations.
  • Each entity can invoke the Resolve protocol, so even if one of the entities is malicious or the transaction is halted midway due to a network failure or other reason, the protocol can be terminated in a fair state (either the state where both parties have exchanged value, or the state before the value exchange). In other words, when the protocol ends, the state will be one of the two states shown in Figure 6 (a) or (b).
  • TTP200 When the Resolve protocol is executed, TTP200 is only provided with the transaction ID and the corresponding deletion proof, so TTP200 cannot obtain any information about the value exchanged between each entity.
  • the technology according to this embodiment allows both the transaction proposer and the transaction recipient to execute Resolve. This gives both entities the option of completing the transaction.
  • the application of the protocol group according to this embodiment is not limited to a specific field, but examples of application include e-commerce, PvP payment, DvP payment, and currency exchange.
  • a pattern where available communication channels are limited (such as during a disaster)
  • Pattern 1-1 corresponds to a case where local communication is cut off, and communication is interrupted only between terminal 100A and terminal 100B. Only Resolve can be used, but in this pattern, communication does not even begin. Note that a case where communication is interrupted midway through a protocol corresponds to a timing anomaly pattern.
  • Pattern 1-2 corresponds to a case where the power supply of terminal 100A is lost in the middle of the protocol, resulting in a disconnection between terminal 100A and terminal 100B, and between terminal 100A and TTP 200.
  • Terminal 100B can only use Resolve, but communication never starts.
  • a case where communication is interrupted in the middle of the protocol corresponds to a timing anomaly pattern.
  • Pattern 1-3 corresponds to a case where the power supply of terminal 100B is lost in the middle of the protocol, and communication is interrupted between terminal 100A and terminal 100B, and between terminal 100B and TTP 200.
  • Terminal 100A can only use Resolve, but communication does not start in the first place.
  • a case where communication is interrupted in the middle of the protocol corresponds to a timing anomaly pattern.
  • Pattern 1-4 corresponds to a case where the terminal 100A is out of internet communication, and is a pattern where communication is out only between the terminal 100A and the TTP 200.
  • the terminal 100A cannot perform Resolve, but is able to perform local transactions.
  • Pattern 1-5 corresponds to a case where the terminal 100B is out of Internet communication, and is a pattern where communication is out only between the terminal 100B and the TTP 200.
  • the terminal 100B cannot perform Resolve, but is capable of local transactions.
  • Pattern 1-6 corresponds to a case where the TTP 200 (server) is down, and communication is interrupted between both the terminal 100A and the TTP 200 and between the terminal 100B and the TTP 200.
  • Both terminal 100A and terminal 100B can perform Resolve from the time of transmitting the deletion certificate until receiving the value.
  • a system comprising a first device having a first value and a second device having a second value, the first device comprises a first storage unit and a first secure unit, and the second device comprises a second storage unit and a second secure unit; the first device sending a first message to the second device proposing to exchange the first value for the second value; the second device deletes the second value from the second storage unit and transmits a signature generated by the second secure unit to the first device as a second deletion evidence; the first device verifies the second deletion proof, deletes the first value from the first storage unit, and transmits a signature generated by the first secure unit as a first deletion proof to the second device;
  • the first device and the second device are each capable of executing procedures to enforce completion of a transaction.
  • the first device sends a message to a third device requesting completion of the transaction with the second device, the message including the first deletion evidence; the third device verifies the first deletion proof and sends a message to the first device authorizing completion of the transaction;
  • a value exchange method in a system including a first device having a first value and a second device having a second value, the first device comprises a first storage unit and a first secure unit, and the second device comprises a second storage unit and a second secure unit; the first device sending a first message to the second device proposing to exchange the first value for the second value; the second device deletes the second value from the second storage unit and transmits a signature generated by the second secure unit to the first device as a second deletion evidence; the first device verifies the second deletion proof, deletes the first value from the first storage unit, and transmits a signature generated by the first secure unit as a first deletion proof to the second device;
  • the first device and the second device are each capable of executing a procedure to enforce completion of the transaction.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

第1価値を有する第1装置と第2価値を有する第2装置とを備えるシステムにおいて、前記第1装置は第1格納部と第1セキュア部を備え、前記第2装置は第2格納部と第2セキュア部を備え、前記第1装置が、前記第2装置に対して、前記第1価値と前記第2価値とを交換することを提案する第1メッセージを送信し、前記第2装置が、前記第2価値を前記第2格納部から削除し、前記第2セキュア部により生成された署名を第2削除証明として前記第1装置に送信し、前記第1装置が、前記第2削除証明を検証し、前記第1価値を前記第1格納部から削除し、前記第1セキュア部により生成された署名を第1削除証明として前記第2装置に送信し、前記第1装置と前記第2装置はそれぞれ、取引の完遂を強制するための手順を実行可能であるように構成する。

Description

システム、及び価値交換方法
 本発明は、エンティティ間で価値交換を行う技術に関連するものである。
 Fair-Exchange(FE)プロトコルは、複数のエンティティ間でそれぞれの持つ価値を公平に交換するプロトコルである。公平性を保つためには信頼のおける第三者(Trusted Third Party、TTP)が必要であり、エンティティ間で意見が異なるような紛争状態に陥った場合にはTTPが仲裁を行う。FEプロトコルの中で、TTPとのやり取りを最小限にして行うものをOptimistic Fair-exchange(OFE)プロトコルと呼ぶ。
"移動端末間の電子価値流通技術", 寺田 雅之他,NTT DoCoMo テクニカル・ジャーナルVol. 13 No. 3.
 既存の方式では、TTPが管理するトランザクションのデータベースを用いて紛争を解決している。しかし、災害時やネットワーク障害時などにおいては、データベースにアクセスできない可能性も少なくなく、データベースにアクセスしなくても紛争を解決できる方式が望ましい。すなわち、TTPがデータベースを持たず、紛争時にはTTPとの最小限のやり取りのみで紛争を解決する、プライバシを考慮したOFEプロトコルが必要である。しかし、従来技術では、このようなOFEプロトコルは存在しなかった。
 一方で、価値の削除証明をTTPに送付する形式の既存方式も存在する(非特許文献1)。しかし、既存の方式では、削除証明の利用方法が具体化されておらず、かつTTPに交換する価値の情報が伝わるというプライバシへの考慮が検討外であった。また、非特許文献1に開示された技術では、取引の提案をする側と提案を受ける側とで実行可能な動作に違いがあり、権限が非対称であった。
 すなわち、従来技術では、取引の提案をする側と取引の提案を受ける側とで実行可能な動作を対等としながら、プライバシを保って安全に価値の交換を行うことが難しかった。
 本発明は上記の点に鑑みてなされたものであり、取引の提案をする側と取引の提案を受ける側とで実行可能な動作を対等としながら、プライバシを保って安全に価値の交換を行うことを可能とする技術を提供することを目的とする。
 開示の技術によれば、第1価値を有する第1装置と第2価値を有する第2装置とを備えるシステムであって、
 前記第1装置は第1格納部と第1セキュア部を備え、前記第2装置は第2格納部と第2セキュア部を備え、
 前記第1装置が、前記第2装置に対して、前記第1価値と前記第2価値とを交換することを提案する第1メッセージを送信し、
 前記第2装置が、前記第2価値を前記第2格納部から削除し、前記第2セキュア部により生成された署名を第2削除証明として前記第1装置に送信し、
 前記第1装置が、前記第2削除証明を検証し、前記第1価値を前記第1格納部から削除し、前記第1セキュア部により生成された署名を第1削除証明として前記第2装置に送信するシステムであり、
 前記第1装置と前記第2装置はそれぞれ、取引の完遂を強制するための手順を実行可能である
 システムが提供される。
 開示の技術によれば、取引の提案をする側と取引の提案を受ける側とで実行可能な動作を対等としながら、プライバシを保って安全に価値の交換を行うことを可能とする技術が提供される。
本発明の実施の形態におけるシステムの構成図である。 SEの動作を説明するための図である。 基本プロトコルを説明するための図である。 Resolveプロトコルを説明するための図である。 装置のハードウェア構成例を示す図である。 DBの状態を示す図である。
 以下、図面を参照して本発明の実施の形態(本実施の形態)を説明する。以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。
 (システム構成例)
 本実施の形態では、基本プロトコル、及びResolveプロトコルについて説明する。これら3つのプロトコルが実行されるシステムの構成例を図1に示す。基本プロトコル、及びResolveプロトコルを総称してOFEプロトコルと呼んでもよい。
 図1に示すように、本システムは、パーティA(Aと呼ぶ場合がある)の端末100A、パーティB(Bと呼ぶ場合がある)の端末100B、及びTTP200を有する。「端末」をエンティティと呼んでもよい。端末は例えばスマートフォンである。
 端末100A及び端末100Bは、それぞれの持つ価値vA、vBを、基本プロトコルを用いて交換する。パーティAとパーティBはそれぞれの端末において、不正を行う可能性がある。不正とは、例えば、途中でプロトコルを停止したり正規以外のメッセージを送ったりすることである。
 TTP200は、信頼のおける第三者である。より具体的には、TTP200は、第三者が有する装置(サーバ等のコンピュータ)である。TTP200は、正規の動作のみ行うが、その中で得られる情報は保持する(semi-honest TTPと呼ぶ)。また、TTP200は、調停時のみオンラインになる。
 図1に示すとおり、端末100Aは、オブザーバA(OA110A)と、セキュアエレメントA(SEA120A)とを有する。
 OA110Aは、端末100Aに搭載されている価値交換アプリにより実現される機能部である。SEA120Aは、端末100Aに搭載されているセキュアエレメントである。SEA120Aは、OA110Aからのみ署名依頼を受け付け、OA110Aの操作に対して署名を付与する。
 また、OA110Aは、DB111Aを有する。DB111Aは、例えば不揮発性メモリである。DB111Aを格納部と呼んでもよい。OA110Aは、DB111A(不揮発性メモリ)の他に、揮発性メモリを有している。
 端末100Bは、オブザーバB(OB110B)と、セキュアエレメントB(SEB120B)とを有する。
 OB110Bは、端末100Bに搭載されている価値交換アプリにより実現される機能部である。SEB120Bは、端末100Bに搭載されているセキュアエレメントである。SEB120Bは、OB110Bからのみ署名依頼を受け付け、OB110Bの操作に対して署名を付与する。
 また、OB110Bは、DB111Bを有する。DB111Bは、例えば不揮発性メモリである。DB111Bを格納部と呼んでもよい。OA110Bは、DB111B(不揮発性メモリ)の他に、揮発性メモリを有している。
 なお、上述した端末100Aと端末100Bそれぞれの価値交換アプリは、例えば、Trustzone(登録商標)などの、モバイルTEE上で動く決済・認証等のアプリを想定している。ただし、価値交換アプリは、モバイルTEE上で動く決済・認証等のアプリに限定されるわけではない。
 端末100間の通信方式はどのような通信方式であってもよい。例えば、当該通信方式は、無線LANでもよいし、近距離無線通信でもよいし、これら以外の通信方式でもよい。また、端末100とTTP200との間の通信方式もどのような通信方式であってもよいが、本実施の形態では、当該通信方式は、インターネットであることを想定している。
 図1に示すように、OA110AとSEA120Aとの間は、認証済みチャネルにより接続される。同様に、OB110BとSEB120Bとの間は、認証済みチャネルにより接続される。認証済みチャネルは、「盗聴:可能、改ざん:不可能、TTPの盗聴:不可能」であるチャネルである。
 端末100Aと端末100Bとの間は、通常チャネルにより接続される。通常チャネルは、「盗聴:可能、改ざん:可能、TTPの盗聴:不可能」であるチャネルである。
 TPP200と端末100A/100Bとの間は、通常+TTP漏洩チャネルにより接続される。通常+TTP漏洩チャネルは、「盗聴:可能、改ざん:可能、TTPの盗聴:可能」であるチャネルである。
 なお、上記のようなチャネルを利用することは一例である。本実施の形態に係る技術は上記のようなチャネルの利用に限定されるわけではない。
 ここで、端末100Aを例にとって、OA110Aの機能とSEA120Aの機能をより具体的に説明する。端末100BにおけるOB110B、SEB120Bについても同様である。
 まず、SEA120Aについて説明する。SEA120Aは、OA110Aからあるメッセージに対して署名依頼を受けたときに、そのメッセージに署名を付与してOA110Aに返す。本実施の形態では、当該メッセージをOA110Aの行った動作を表すものとして、「OA110A上の動作を表すメッセージmに対して、SEA120Aがmに署名をしたならば、mは必ずOA110A上で行われている」ということが成り立つことを仮定する。
 例えば、図2に示す例において、OA110A上で「vAの削除」が1/18 16:30に行われたときに、SEA120Aは、「"1/18 16:30 vA 削除"」というメッセージmに対して署名を行う。なお、実際にvAの削除が行われていなければ署名は行われない。
 プロトコルの実行中において、SEA120Aは、動作の状態を保持する。すなわち、いきなり電源をOFFにしてもプロトコルの状態を保持して、後から再開することができる。
 続いてOA110Aについて説明する。OA110Aは、隔離された空間でアプリケーションを動作させる。当該アプリケーションの改ざんは不可である。また、OA110Aは、SEB120Bにより付与された署名の検証を行うことができる。
 (プロトコルの概要)
 上述したシステムにおいて実行されるプロトコルの概要を説明する。前述したとおり、本実施の形態におけるプロトコルは、基本プロトコル、及びResolveプロトコルを有する。
 端末100A及び端末100Bは、それぞれの持つ価値vA、vBを、基本プロトコルを用いて交換する。端末100A及び端末100Bはそれぞれ、プロトコルの実行中にResolveプロトコルをそれぞれの発動可能期間に限り発動することが可能である。
 発動可能期間内にResolveプロトコルが発動された場合には、TTP200によってプロトコルが強制的に完遂される。
 プロトコル実行中においてサーバプッシュとして、TTP200からのプッシュがなされる。サーバプッシュを受け取った端末はその受理報告としてアクナレッジをTTP200に返すこととしてもよい。
 なお、端末100Aと端末100Bとの間の通信は、対面の通信であってもよいし、非対面の通信であってもよい。また、本実施の形態では、一例として、端末100Aと端末100Bとの間でプロトコルが実行される場合を示しているが、これに限定されない。本実施の形態の係るプロトコルは、3者以上の間で実行されてもよい。
 また、本実施の形態におけるプロトコルを実行する主体は、SEを備える端末に限定されない。例えば、HSM(Hardware Security Module)を備えるサーバが、本実施の形態におけるプロトコルを実行してもよい。
 なお、サーバと端末はいずれも「エンティティ」の例である。また、SEとHSMはいずれもセキュア部と呼んでもよい。また、端末100A、端末100B、TTP200をそれぞれ第1装置、第2装置、第3装置と呼んでもよい。
 また、本実施の形態では、プロトコルの安全性を確保するため,次の実行環境を想定している。
 TT200からの通知はサーバプッシュなどで行われ,パーティ(端末)がオンラインになった時点で通知が届く。ナンスはセキュアエレメント内で生成する。また、プロトコルの終了後に削除証明をオブザーバが削除する。更に、やり取りのないまま一定の時間が過ぎるとタイムアウトになりプロトコルは終了する。
 以下、基本プロトコル、及びResolveプロトコルのそれぞれを詳細に説明する。
 (基本プロトコル)
 図1に示したシステムにおいて実行される基本プロトコルを、図3に示すシーケンス図を参照して説明する。
 基本プロトコル実行にあたっての公開情報として、端末100AのユーザID、及び、端末100BのユーザIDがそれぞれA、Bとして公開され、また、署名検証鍵(公開鍵)がspkとして公開されている(それぞれが安全に共有している)。つまり、spkは、Pの署名検証鍵である。また、sskは、Pの署名用秘密鍵である。パーティPが送る各メッセージmに対して、msig=sign(m,ssk)である。ただし、署名対象のmにメッセージ署名自身は含まない。また、AgrSig=sign(TID,ssk)である。
 また、TID(トランザクションID)、DelSig(Aの削除証明)、DelSig(Bの削除証明)はそれぞれ下記のとおりである。
 TID=H(vA,vB,A,B,n1,H(n2))
 DelSig=sign(<TID,"remove">,sskSEA
 DelSig=sign(<TID,"remove">,sskSEB
 H()は、()内のデータのハッシュ値である。DelSigは、「TID,"remove"」に対するSEA120Aの秘密鍵(sskSEA)による署名を示す。DelSigは、「TID,"remove"」に対するSEB120Bの秘密鍵(sskSEB)による署名を示す。
 また、図示のように、Resolvable区間が設定されている。
 図3のS1(ステップ1)において、端末100BにおけるOB110BがSEB120Bに対して乱数の生成を依頼する。SEB120Bは、S2において乱数n2を生成し、n2をOB110Bに送信する。
 S4において、OB110Bは、m0:H(n2)を、端末100AのOA110Aに送信する。S5において、OA110AがSEA120Aに対して乱数の生成を依頼する。SEA120Aは、S6において乱数n1を生成し、n1をOA110Aに送信する。
 以上のS1~S7は、準備フェーズである。準備フェーズにおいて、公開鍵や所持している価値の情報も共有される。
 S8において、OA110Aは、端末100BにおけるOB110Bに対してm1:<vA,vB,n1,AgrSig>を送信することで取引の提案を行う。このメッセージm1は、vAとvBを交換することを提案するメッセージである。
 OB110Bは、S9において取引内容を確認し、S10においてDB111BからvBを削除する。
 S11において、OB110Bは、TIDをSEB120Bに送信することで署名依頼を行う。SEB120Bは、署名を行って、S12においてDelSigをOB110Bに返す。
 S13において、OB110Bは、OA110Aに対してm2:<TID,DelSig,AgrSig,msigm2>を送信することで提案の受理を行う。
 OA110Aは、S14においてm2の署名を確認(検証)し、S15においてDelSigの署名を確認(検証)し、これらの確認に成功した場合に、S16においてDB111AからvAを削除する。
 S17において、OA110Aは、TIDをSEA120Aに送信することで署名依頼を行う。SEA120Aは、署名を行って、S18においてDelSigをOA110Aに返す。
 S19において、OA110Aは、OB110Bに対してm3:<TID,DelSig,msigm3>を送信することで受理の確認を行う。
 OB110Bは、S20においてm3の署名を確認し、S21においてDelSigの署名を確認し、これらの確認に成功した場合に、S22においてDB111BにvAを格納する。
 S23において、OB110Bは、OA110Aに対してm4:n2を送信することで取引完了の確認を行う。
 S24において、OA110Aは、TID=H(vA,vB,A,B,n1,H(n2))であることを確認する。確認に成功すると、S25において、OA110Aは、DB111AにvBを格納する。
 (Resolveプロトコル)
 続いて、図4のシーケンス図を参照して、Resolveプロトコルを説明する。Resolveプロトコルは、取引の完遂を強制的に行うためのプロトコルである。ここでは、AからBにクレーム(取引を完遂して欲しい旨のクレーム)が入る場合の例を説明する。なお、本実施の形態では、Resolveプロトコルは、端末100Aと端末100Bとの間で対称である。図4では、例として、「AからBへのクレーム」の場合を示しているが、図4におけるAをBに置き換え、BをAに置き換えることで、「BからAへのクレーム」の場合における手順となる。
 S101において、OA110Aは、TTP200に対して、mr1:<"resolve",TID,DelSig,AgrSig,msigmr1>を送信することで取引の完遂を依頼する。
 TTP200は、S102においてmr1の署名を確認し、S103においてDelSigの署名を確認し、S104において、AgrSigの署名を検証し、これらの確認に成功すると、S105に進む。
 S105において、TTP200は、OA110Aに対して、mr2:<"allow resolve",TID,sign(<"allow resolve",TID>,sskTTP))を送信することで取引の完遂を許可する。
 S106において、OA110Aは、DB111AにvBを格納する。また、S107において、TTP200は、Resolve通知をサーバプッシュとして、OA110Bに送信する。Resolve通知は、取引完遂が行われたことを示す通知である。
 S108において、OB110Bは、vBをDB111Bから削除しているかどうかを確認し、削除していなければ、DB111BからvBを削除する。S109において、OB110Bは、vAをDB111Bに格納する。S106、S108、S109は、TTP200が強制する動作である。
 (ハードウェア構成例)
 本実施の形態で説明したいずれの装置(端末100A/100B、TTP200)も、例えば、コンピュータにプログラムを実行させることにより実現できる。このコンピュータは、物理的なコンピュータであってもよいし、クラウド上の仮想マシンであってもよい。
 すなわち、当該装置は、コンピュータに内蔵されるCPUやメモリ等のハードウェア資源を用いて、当該装置で実施される処理に対応するプログラムを実行することによって実現することが可能である。上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メール等、ネットワークを通して提供することも可能である。
 図5は、上記コンピュータのハードウェア構成例を示す図である。図5のコンピュータは、それぞれバスBで相互に接続されているドライブ装置1000、補助記憶装置1002、メモリ装置1003、CPU1004、インタフェース装置1005、表示装置1006、入力装置1007、出力装置1008等を有する。なお、当該コンピュータは、更にGPUを備えてもよい。
 当該コンピュータでの処理を実現するプログラムは、例えば、CD-ROM又はメモリカード等の記録媒体1001によって提供される。プログラムを記憶した記録媒体1001がドライブ装置1000にセットされると、プログラムが記録媒体1001からドライブ装置1000を介して補助記憶装置1002にインストールされる。但し、プログラムのインストールは必ずしも記録媒体1001より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置1002は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
 メモリ装置1003は、プログラムの起動指示があった場合に、補助記憶装置1002からプログラムを読み出して格納する。CPU1004は、メモリ装置1003に格納されたプログラムに従って、当該装置に係る機能を実現する。インタフェース装置1005は、ネットワーク等に接続するためのインタフェースとして用いられる。表示装置1006はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置1007はキーボード及びマウス、ボタン、又はタッチパネル等で構成され、様々な操作指示を入力させるために用いられる。出力装置1008は演算結果を出力する。
 (実施の形態の効果等)
 本実施の形態で説明した2つのプロトコルを組み合わせることにより、複数のエンティティ間でオフラインであっても公平に価値を交換することができる。また、各エンティティは取引中、オブザーバの中でお互いの削除証明を検証しあうため、不正に価値を増やす(削除していないのに削除したと宣言して相手から価値を受け取るなど)ことを不可能とすることができる。
 各エンティティは、Resolveプロトコルを発動することができるため、どちらか一方のエンティティが悪意を持っていたり、途中でネットワーク障害等でやり取りが止まったりしても、公平な状態(両者が価値を交換した状態、または価値を交換する前の状態)でプロトコルを終了することができる。すなわち、プロトコルが終了したときには図6に示す(a)と(b)の2つの状態のうちのいずれかの状態になっている。
 特に、紛争の際にのみTTP200とのやり取りが発生し、かつTTP200は紛争解決のために受け取った署名を検証するだけでよい。そのため、基本プロトコルは災害時などのネットワーク障害時にも最小限のやり取りで利用することができる。加えてResolveプロトコルとAbortプロトコルのいずれもエンティティとTTP200との最小限のやりとりのみで利用することができる。
 Resolveプロトコルの実行時において、TTP200にはトランザクションIDとそれに対応する削除証明のみが渡されるため、TTP200は、各エンティティ間で交換する価値の情報を一切得ることはできない。
 また、本実施の形態に係る技術は、非特許文献1に開示された既存の方式とは異なり、取引を提案する側と受ける側のいずれもResolveを実行することが可能である。そのため、どちらのエンティティも取引の完遂という選択肢を持つことができる。
 また、サーバプッシュを受け取った利用者がTTP200にアクナレッジを返すような構成にすることで、TTP200からもサーバプッシュの到達状況を確認でき、かつサーバプッシュがサーバ上に溜まってしまうことを防ぐことができる。
 (ユースケースについて)
 本実施の形態に係るプロトコル群の適用先は、特定の分野に限定されないが、例えば、適用先として、電子商取引(e-commerce)、PvP決済、DvP決済、通貨両替などが挙げられる。
 (ネットワーク障害が発生した場合のパターンについて)
 以下、ネットワーク障害が発生した場合のパターンについて説明する。
 (1)使える通信路が限られるパターン(災害時などを想定)
 使える通信路が限られるパターンとして、例えば下記の6つのパターン(1-1~1―6)がある。
 <1-1>
 パターン1-1は、ローカル通信が切れるなどのケースが該当し、端末100Aと端末100Bとの間のみが不通となるパターンである。Resolveのみ使えるが、このパターンではやりとりがそもそも始まらない。なお、プロトコルの途中で不通になるケースはタイミング異常パターンに該当する。
 <1-2>
 パターン1-2は、端末100Aの電源がプロトコルの途中で落ちるなどのケースが該当し、端末100Aと端末100Bとの間と、端末100AとTTP200との間が不通になるパターンである。端末100BがResolveのみ使えるが、やりとりはそもそも始まらない。プロトコルの途中で不通になるケースはタイミング異常パターンに該当する。
 <1-3>
 パターン1-3は、端末100Bの電源がプロトコルの途中で落ちるなどのケースが該当し、端末100Aと端末100Bとの間と、端末100BとTTP200との間が不通になるパターンである。端末100AがResolveのみ使えるが、やりとりはそもそも始まらない。プロトコルの途中で不通になるケースはタイミング異常パターンに該当する。
 <1-4>
 パターン1-4は、端末100Aのインターネット不通などのケースが該当し、端末100AとTTP200との間のみが不通のパターンである。端末100Aは、Resolveをすることができないが、ローカルの取引は可能である。
 <1-5>
 パターン1-5は、端末100Bのインターネット不通などのケースが該当し、端末100BとTTP200との間のみが不通のパターンである。端末100Bは、Resolveをすることができないが、ローカルの取引は可能である。
 <1-6>
 パターン1-6は、TTP200(サーバ)が落ちているなどのケースが該当し、端末100AとTTP200との間、及び、端末100BとTTP200との間のいずれも不通になるパターンである。
 (2)タイミングによる異常パターン(悪通信環境を想定)
 (3)Resolveについて
 端末100Aと端末100Bのどちらも、削除証明の送信後から価値の受取までResolveが可能である。
 以上の実施形態に関し、更に以下の付記を開示する。
 <付記>
(付記項1)
 第1価値を有する第1装置と第2価値を有する第2装置とを備えるシステムであって、
 前記第1装置は第1格納部と第1セキュア部を備え、前記第2装置は第2格納部と第2セキュア部を備え、
 前記第1装置が、前記第2装置に対して、前記第1価値と前記第2価値とを交換することを提案する第1メッセージを送信し、
 前記第2装置が、前記第2価値を前記第2格納部から削除し、前記第2セキュア部により生成された署名を第2削除証明として前記第1装置に送信し、
 前記第1装置が、前記第2削除証明を検証し、前記第1価値を前記第1格納部から削除し、前記第1セキュア部により生成された署名を第1削除証明として前記第2装置に送信するシステムであり、
 前記第1装置と前記第2装置はそれぞれ、取引の完遂を強制するための手順を実行可能である
 システム。
(付記項2)
 前記第1装置は、前記第2装置との取引の完遂を依頼するメッセージであって、前記第1削除証明を含むメッセージを第3装置に送信し、
 前記第3装置は、前記第1削除証明を検証し、取引の完遂を許可するメッセージを前記第1装置に送信し、
 前記第1装置は、前記第2価値を前記第1格納部に格納し、前記第2装置は、前記第1価値を前記第2格納部に格納する
 付記項1に記載のシステム。
(付記項3)
 第1価値を有する第1装置と第2価値を有する第2装置とを備えるシステムにおける価値交換方法であって、
 前記第1装置は第1格納部と第1セキュア部を備え、前記第2装置は第2格納部と第2セキュア部を備え、
 前記第1装置が、前記第2装置に対して、前記第1価値と前記第2価値とを交換することを提案する第1メッセージを送信し、
 前記第2装置が、前記第2価値を前記第2格納部から削除し、前記第2セキュア部により生成された署名を第2削除証明として前記第1装置に送信し、
 前記第1装置が、前記第2削除証明を検証し、前記第1価値を前記第1格納部から削除し、前記第1セキュア部により生成された署名を第1削除証明として前記第2装置に送信する価値交換方法であり、
 前記第1装置と前記第2装置はそれぞれ、取引の完遂を強制するための手順を実行可能である
 価値交換方法。
 以上、本実施の形態について説明したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
100A、100B 端末
110A OA
110B OB
111A、111B DB
120A SEA
120B SEB
200 TTP
1000 ドライブ装置
1001 記録媒体
1002 補助記憶装置
1003 メモリ装置
1004 CPU
1005 インタフェース装置
1006 表示装置
1007 入力装置
1008 出力装置

Claims (3)

  1.  第1価値を有する第1装置と第2価値を有する第2装置とを備えるシステムであって、
     前記第1装置は第1格納部と第1セキュア部を備え、前記第2装置は第2格納部と第2セキュア部を備え、
     前記第1装置が、前記第2装置に対して、前記第1価値と前記第2価値とを交換することを提案する第1メッセージを送信し、
     前記第2装置が、前記第2価値を前記第2格納部から削除し、前記第2セキュア部により生成された署名を第2削除証明として前記第1装置に送信し、
     前記第1装置が、前記第2削除証明を検証し、前記第1価値を前記第1格納部から削除し、前記第1セキュア部により生成された署名を第1削除証明として前記第2装置に送信するシステムであり、
     前記第1装置と前記第2装置はそれぞれ、取引の完遂を強制するための手順を実行可能である
     システム。
  2.  前記第1装置は、前記第2装置との取引の完遂を依頼するメッセージであって、前記第1削除証明を含むメッセージを第3装置に送信し、
     前記第3装置は、前記第1削除証明を検証し、取引の完遂を許可するメッセージを前記第1装置に送信し、
     前記第1装置は、前記第2価値を前記第1格納部に格納し、前記第2装置は、前記第1価値を前記第2格納部に格納する
     請求項1に記載のシステム。
  3.  第1価値を有する第1装置と第2価値を有する第2装置とを備えるシステムにおける価値交換方法であって、
     前記第1装置は第1格納部と第1セキュア部を備え、前記第2装置は第2格納部と第2セキュア部を備え、
     前記第1装置が、前記第2装置に対して、前記第1価値と前記第2価値とを交換することを提案する第1メッセージを送信し、
     前記第2装置が、前記第2価値を前記第2格納部から削除し、前記第2セキュア部により生成された署名を第2削除証明として前記第1装置に送信し、
     前記第1装置が、前記第2削除証明を検証し、前記第1価値を前記第1格納部から削除し、前記第1セキュア部により生成された署名を第1削除証明として前記第2装置に送信する価値交換方法であり、
     前記第1装置と前記第2装置はそれぞれ、取引の完遂を強制するための手順を実行可能である
     価値交換方法。
PCT/JP2024/021106 2024-06-10 2024-06-10 システム、及び価値交換方法 Pending WO2025257910A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2024/021106 WO2025257910A1 (ja) 2024-06-10 2024-06-10 システム、及び価値交換方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2024/021106 WO2025257910A1 (ja) 2024-06-10 2024-06-10 システム、及び価値交換方法

Publications (1)

Publication Number Publication Date
WO2025257910A1 true WO2025257910A1 (ja) 2025-12-18

Family

ID=98050662

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2024/021106 Pending WO2025257910A1 (ja) 2024-06-10 2024-06-10 システム、及び価値交換方法

Country Status (1)

Country Link
WO (1) WO2025257910A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006155045A (ja) * 2004-11-26 2006-06-15 Sony Corp 電子価値情報伝送システム及び電子価値情報伝送方法
JP2017536603A (ja) * 2015-04-24 2017-12-07 華為技術有限公司Huawei Technologies Co.,Ltd. モバイル支払い装置および方法
JP2020523838A (ja) * 2017-06-14 2020-08-06 エヌチェーン ホールディングス リミテッドNchain Holdings Limited ネットワークの障害時におけるオフ・ブロックチェーン・チャネルに関して生じるセキュリティ関連脆弱性に対処するためのシステム及び方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006155045A (ja) * 2004-11-26 2006-06-15 Sony Corp 電子価値情報伝送システム及び電子価値情報伝送方法
JP2017536603A (ja) * 2015-04-24 2017-12-07 華為技術有限公司Huawei Technologies Co.,Ltd. モバイル支払い装置および方法
JP2020523838A (ja) * 2017-06-14 2020-08-06 エヌチェーン ホールディングス リミテッドNchain Holdings Limited ネットワークの障害時におけるオフ・ブロックチェーン・チャネルに関して生じるセキュリティ関連脆弱性に対処するためのシステム及び方法

Similar Documents

Publication Publication Date Title
KR102674418B1 (ko) 서로 다른 네트워크들 간의 자산 전송을 위한 안전하고 신뢰할 수 있는 브릿지
CN112154626B (zh) 使用区块链执行原子交换的计算机实现的系统和方法
CN112507393B (zh) 一种保障区块链跨链事务一致性的方法
CN112615915B (zh) 一种在私有链之间构建联盟链的方法
Bao et al. IoTChain: A three-tier blockchain-based IoT security architecture
CN112583917B (zh) 一种基于cscp的混合链构建方法
CN112311735A (zh) 可信认证方法,网络设备、系统及存储介质
CN109891416A (zh) 用于认证和授权装置的系统和方法
CN109614813B (zh) 基于区块链的隐私交易方法、装置及其应用方法、装置
CN112396421B (zh) 一种基于区块链通证的身份认证系统及方法
CN113689216A (zh) 跨链事务处理方法及装置、设备、存储介质、程序产品
CN113901432A (zh) 区块链身份认证方法、设备、存储介质及计算机程序产品
JP2022549070A (ja) ブロックチェーン上に認証済みデータを格納するコンピュータにより実施される方法及びシステム
CN114760071A (zh) 基于零知识证明的跨域数字证书管理方法、系统和介质
CN113328854B (zh) 基于区块链的业务处理方法及系统
CN109995737A (zh) 去中心化的数字证书管理方法及装置、节点、系统
CN117459539A (zh) 一种支持完整性审计的跨链数据可信交互方法及系统
CN112950180A (zh) 一种基于联盟链的通证方法、系统、电子设备及存储介质
Yamamoto et al. Examination on interoperability of blockchains by using zk-rollups
Singh et al. Blockchain applications, opportunities, challenges and risks: a survey
CN112636920B (zh) 一种基于权限管控的同构许可链互联方法
CN114679473A (zh) 基于分布式数字身份的金融账户治理系统及方法
WO2025257911A1 (ja) システム、及び価値交換方法
CN112508703A (zh) 一种同构公有链价值交换方法
WO2025262823A1 (ja) システム、及び価値交換方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 24943275

Country of ref document: EP

Kind code of ref document: A1