[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP6545888B1 - 情報処理システム、公開鍵の変更方法、およびプログラム - Google Patents

情報処理システム、公開鍵の変更方法、およびプログラム Download PDF

Info

Publication number
JP6545888B1
JP6545888B1 JP2018211811A JP2018211811A JP6545888B1 JP 6545888 B1 JP6545888 B1 JP 6545888B1 JP 2018211811 A JP2018211811 A JP 2018211811A JP 2018211811 A JP2018211811 A JP 2018211811A JP 6545888 B1 JP6545888 B1 JP 6545888B1
Authority
JP
Japan
Prior art keywords
node
public key
signature
draft
unit
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
JP2018211811A
Other languages
English (en)
Other versions
JP2020078034A (ja
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.)
Tohoku University NUC
Original Assignee
Tohoku University NUC
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 Tohoku University NUC filed Critical Tohoku University NUC
Priority to JP2018211811A priority Critical patent/JP6545888B1/ja
Application granted granted Critical
Publication of JP6545888B1 publication Critical patent/JP6545888B1/ja
Priority to US16/674,353 priority patent/US11329819B2/en
Publication of JP2020078034A publication Critical patent/JP2020078034A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • H04L9/16Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/42Anonymization, e.g. involving pseudonyms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】第三者によるリアルタイムでの残高照会機能を有したまま、より匿名性の高い公開鍵変更を可能とする情報処理システムを提供する。【解決手段】第1ノード1と、公開鍵の変更支援サービスを提供する第2ノード2と、ブロックチェーン3と、を備えた情報処理システム100であって、第1ノード1は、新公開鍵作成部151と、第2ノード群選択部152と、新旧鍵情報要求部153と、契約書案作成部154と、署名依頼部155と、第1署名実行部156と、登録部157と、を備え、第2ノード2は、新旧鍵情報送信部251と、第2署名実行部252と、契約書案返信部253と、を備え、契約書案作成部154は、送付先の新公開鍵の順序をランダムで決定し、署名依頼部155および第1署名実行部156は、取引契約書案へ署名を行うノードの順番がランダムになるように、署名の依頼および実行をそれぞれ行うことを特徴とする、情報処理システム100。【選択図】図2

Description

本発明は、暗号通貨などの取引に用いられる公開鍵を変更する情報処理システム、公開鍵の変更方法、プログラム、および情報処理システムの製造方法に関する。
暗号通貨などでは、取引契約書(トランザクション)がブロックチェーンに全て記載され、ブロックチェーンを構成する全ノードのユーザに公開される。したがって、原則として、どのユーザ(公開鍵)が、どのような取引を実施したのかが一目瞭然となる。
ブロックチェーン上では、ユーザは公開鍵(ビット列の識別子)としてしか表されないが、それでも取引を繰り返すうちに、実在のユーザ情報(名前や所在地など)と公開鍵が紐付いてしまうおそれがある。その場合、ユーザの匿名性を維持するためには、使用中の公開鍵を匿名で別の新しい公開鍵に変更することが求められる。
そのような匿名での公開鍵の変更が可能な暗号通貨としては、DASH(旧名:ダークコイン)が知られている(例えば、非特許文献1)。DASHでは、一定以上の残高を保有するユーザ(マスターノード)が、不特定多数のユーザからのブロックチェーンへの取引登録(公開鍵変更)の依頼を複雑に合成することで、ブロックチェーン上における匿名での取引登録(公開鍵の変更)を実現している。
しかし、DASHにおける公開鍵の変更技術であっても、マスターノードにだけは、送金元(依頼元ユーザの変更前)の公開鍵(旧公開鍵)と送金先(変更後)の公開鍵(新公開鍵)との対応関係を把握されてしまうという問題がある。
これに対し、公開鍵の変更を実施する当人以外には、新旧公開鍵の対応関係を把握されることなく公開鍵の変更を可能とする暗号通貨として、モネロコインが知られている(例えば、非特許文献2)。
モネロコインの公開鍵変更技術では、以下の4つの要素技術が使用されている。
(1)複数の公開鍵から共同の電子署名を作成するリング署名技術。
(2)取引契約書に記載の送金額を準同型暗号技術により暗号化することで、ブロックチェーン上の各口座(公開鍵)残高をその口座所有者以外には秘匿化する技術。
(3)取引契約書(トランザクション)における真の送信元口座の暗号化された累積入金総額と、暗号化された送金総額が一致することを、第三者が復号することなく検証できるようにする技術。
(4)同じ口座からの2回目の送金をする取引契約書がブロックチェーンに登録されることを防ぐ技術。
具体的には、自身の公開鍵を匿名で交換したいユーザ(以下、交換実施者)が、ブロックチェーンに登録済みの取引契約書を閲覧して、ダミーとして用いる第三者の公開鍵情報(以下、第三者公開鍵A,B,・・・,Z)と各口座の暗号化された入金総額をそれぞれ取得する。なお、暗号化された入金総額は、準同型暗号技術の特性上,ブロックチェーンの情報から誰でも容易に取得可能であるが、その復号は困難である。次に、交換実施者は、公開鍵を交換するための取引契約書を以下のように作成する。
取引契約書の送金元口座情報においては、
・交換実施者の旧公開鍵と暗号化された入金総額
・第三者公開鍵Aと暗号化された入金総額
・第三者公開鍵Bと暗号化された入金総額
・・・
・第三者公開鍵Zと暗号化された入金総額
を記載する。
また、取引契約書の送金先口座情報においては、
・手数料
・送金先である交換実施者の新公開鍵と暗号化された送金額(旧公開鍵の入金総額から手数料を引いた残額全額)
を記載する。
さらに、取引契約書に送金元の旧公開鍵に紐づく秘密鍵の識別情報を記載する。仮に、ブロックチェーンに既に同じの識別情報を含む取引契約書が登録済みの場合、今回の取引登録は拒否される。それにより、同じ口座(公開鍵)からの2度目の出金(2重支払い)を防止している。
最後に、この取引契約書(の記載内容)が正しいことを第三者に証明する電子署名がリング署名技術でなされることにより取引契約書が完成し、この取引契約書がブロックチェーンに登録されることにより、公開鍵の交換がなされる。
以上のように、モネロコインでは、(1)の技術により、送金元口座(公開鍵)に複数のダミー口座を含めることが可能になり、第三者に対して真の送金元を隠蔽できるようになる。さらに、(2)の技術のように送金額を暗号化して、ブロックチェーンの情報からは他人の口座残高の推移を分からなくすることで、第三者が送金元の各口座の残高の変化から当該取引契約書における真の送金元口座を推定できてしまうという問題を回避している。
一方、(1)と(2)の技術の副作用により、ブロックチェーンへの新規取引契約書の登録の役割を担う採掘者は、各口座の累積入金総額を把握できなくなる。その結果、採掘者は、取引契約書に記載の入力と出力の金額が釣り合うかどうかを検証できず、取引契約書がブロックチェーンに登録可能かどうかを判別できなくなる。
そこで、モネロコインでは、(3)の技術により、その取引契約書がブロックチェーンに登録可能かどうかを判別できるようにしている。ただし、当該取引契約書における真の送信元口座が過去に送金処理をしていた場合、採掘者達はその送金額を(暗号化されているために)正確に把握できないため、(3)の技術だけでは、当該取引契約書のブロックチェーンへの登録可否を判断できなくなる。その理由は、(3)の技術では、「暗号化された累積入金額」と「暗号化された取引額」が一致するかどうか判別可能であるが、「暗号化された累積入金額−累積出金額」と「暗号化された取引額」が一致するかどうかは判別不可能であるからである。
そこで、モネロコインでは、(4)の技術により、同じ口座からの出金は1回のみに限定している。それにより、ブロックチェーンに登録される取引契約書は常に「累積出金額が0」となるため、前述の問題を回避して、(3)の技術を有効に使えるようにしている。
"Whitepaper"、[online]、インターネット<URL: https://github.com/dashpay/dash/wiki/Whitepaper> Shen Noether、外2名、"Ring Confidential Transactions"、[online]、インターネット<URL: https://ledgerjournal.org/ojs/index.php/ledger/article/viewFile/34/61>
しかしながら、モネロコインでは、取引契約書において送金額を暗号化しているため、第三者は他人が所有する口座の残高をリアルタイムで把握できない。そのため、ユーザ毎の口座残高情報をサービス事業者が把握する必要がある応用サービスに、モネロコインを利用することは不可能である。つまり、モネロコインには、拡張性と発展性に乏しいという問題がある。
本発明は、上記問題を解決するためになされたものであって、第三者によるリアルタイムでの残高照会機能を有したまま、より匿名性の高い公開鍵変更を可能とする情報処理システムを提供することを課題とする。
本発明に係る情報処理システムは、
第1ノードと、公開鍵の変更支援サービスを提供する第2ノードと、データベースと、を備えた情報処理システムであって、
前記第1ノードは、
前記第1ノードの新公開鍵を作成する新公開鍵作成部と、
前記第2ノードから、少なくとも2つの異なる第2ノードを選択する第2ノード群選択部と、
前記選択された第2ノードの各々に対し、各自ノードの旧公開鍵および新公開鍵の情報を要求する新旧鍵情報要求部と、
前記第1ノードの前記旧公開鍵および前記第2ノードの各々から取得した前記旧公開鍵を送付元とし、前記第1ノードの前記新公開鍵および前記第2ノードの各々から取得した前記新公開鍵を送付先とする取引契約書案を作成する契約書案作成部と、
前記選択された第2ノードの各々に対し、前記取引契約書案の各自ノードに対応する箇所への署名を依頼する署名依頼部と、
前記取引契約書案の前記第1ノードに対応する箇所への署名を実行する第1署名実行部と、
全ての署名が完了した前記取引契約書案を、取引契約書として前記データベースに登録する登録部と、
を備え、
前記第2ノードは、
前記新旧鍵情報要求部からの前記要求に応じて、各自ノードの旧公開鍵および新公開鍵の情報を前記第1ノードに送信する新旧鍵情報送信部と、
前記署名依頼部からの前記依頼に応じて、前記取引契約書案における各自ノードの送付元および送付先の対応関係が妥当であるかを確認し、前記対応関係が妥当であった場合に、前記取引契約書案の各自ノードに対応する箇所への署名を実行する第2署名実行部と、
前記第2署名実行部によって署名された前記取引契約書案を前記第1ノードに返信する契約書案返信部と、
を備え、
前記契約書案作成部は、前記送付先の新公開鍵の順序をランダムで決定し、
前記署名依頼部および前記第1署名実行部は、前記取引契約書案へ署名を行うノードの順番がランダムになるように、前記署名の依頼および実行をそれぞれ行う。
本発明に係る公開鍵の変更方法は、
第1ノードと、公開鍵の変更支援サービスを提供する第2ノードと、データベースと、を備えた情報処理システムにおける公開鍵の変更方法であって、
前記第1ノードにおいて、新公開鍵を作成する新公開鍵作成ステップと、
前記第1ノードにおいて、前記第2ノードから、少なくとも2つの異なる第2ノードを選択する第2ノード群選択ステップと、
前記第1ノードにおいて、前記選択された第2ノードの各々に対し、各自ノードの旧公開鍵および新公開鍵の情報を要求する新旧鍵情報要求ステップと、
前記第2ノードにおいて、前記新旧鍵情報要求ステップの前記要求に応じて、各自ノードの旧公開鍵および新公開鍵の情報を前記第1ノードに送信する新旧鍵情報送信ステップと、
前記第1ノードにおいて、前記第1ノードの前記旧公開鍵および前記第2ノードの各々から取得した前記旧公開鍵を送付元とし、前記第1ノードの前記新公開鍵および前記第2ノードの各々から取得した前記新公開鍵を送付先とする取引契約書案を作成する契約書案作成ステップと、
前記第1ノードにおいて、前記選択された第2ノードの各々に対し、前記取引契約書案の各自ノードに対応する箇所への署名を依頼する署名依頼ステップと、
前記第2ノードにおいて、前記署名依頼ステップからの前記依頼に応じて、前記取引契約書案における各自ノードの送付元および送付先の対応関係が妥当であるかを確認し、前記対応関係が妥当であった場合に、前記取引契約書案の各自ノードに対応する箇所への署名を実行する第2署名実行ステップと、
前記第2ノードにおいて、前記第2署名実行ステップで署名された前記取引契約書案を前記第1ノードに返信する契約書案返信ステップと、
前記第1ノードにおいて、前記取引契約書案の前記第1ノードに対応する箇所への署名を実行する第1署名実行ステップと、
前記第1ノードにおいて、全ての署名が完了した前記取引契約書案を、取引契約書として前記データベースに登録する登録ステップと、
を有し、
前記契約書案作成ステップでは、前記送付先の新公開鍵の順序がランダムで決定され、
前記署名依頼ステップおよび前記第1署名実行ステップでは、前記取引契約書案へ署名を行うノードの順番がランダムになるように、前記署名の依頼および実行をそれぞれ行う。
本発明に係るプログラムは、
公開鍵の変更支援サービスを提供する第2ノード、およびデータベースに通信可能に接続された第1ノードの公開鍵の変更を支援するためのプログラムであって、
前記第1ノードの新公開鍵を作成する新公開鍵作成部、
前記第2ノードから、少なくとも2つの異なる第2ノードを選択する第2ノード群選択部、
前記選択された第2ノードの各々に対し、各自ノードの旧公開鍵および新公開鍵の情報を要求する新旧鍵情報要求部、
前記第1ノードの前記旧公開鍵および前記第2ノードの各々から取得した前記旧公開鍵を送付元とし、前記第1ノードの前記新公開鍵および前記第2ノードの各々から取得した前記新公開鍵を送付先とする取引契約書案を作成する契約書案作成部、
前記選択された第2ノードの各々に対し、前記取引契約書案の各自ノードに対応する箇所への署名を依頼する署名依頼部、
前記取引契約書案の前記第1ノードに対応する箇所への署名を実行する第1署名実行部、および、
全ての署名が完了した前記取引契約書案を、取引契約書として前記データベースに登録する登録部、
としてコンピュータを動作させ、
前記契約書案作成部は、前記送付先の新公開鍵の順序をランダムで決定し、
前記署名依頼部および前記第1署名実行部は、前記取引契約書案へ署名を行うノードの順番がランダムになるように、前記署名の依頼および実行をそれぞれ行う。
本発明に係る情報処理システムの製造方法は、
第1ノードと、公開鍵の変更支援サービスを提供する第2ノードと、データベースと、を備えた情報処理システムの製造方法であって、
前記第1ノードの新公開鍵を作成する新公開鍵作成部、
前記第2ノードから、少なくとも2つの異なる第2ノードを選択する第2ノード群選択部、
前記選択された第2ノードの各々に対し、各自ノードの旧公開鍵および新公開鍵の情報を要求する新旧鍵情報要求部、
前記第1ノードの前記旧公開鍵および前記第2ノードの各々から取得した前記旧公開鍵を送付元とし、前記第1ノードの前記新公開鍵および前記第2ノードの各々から取得した前記新公開鍵を送付先とする取引契約書案を作成する契約書案作成部、
前記選択された第2ノードの各々に対し、前記取引契約書案の各自ノードに対応する箇所への署名を依頼する署名依頼部、
前記取引契約書案の前記第1ノードに対応する箇所への署名を実行する第1署名実行部、および、
全ての署名が完了した前記取引契約書案を、取引契約書として前記データベースに登録する登録部、
としてコンピュータを動作させるためのプログラムを前記第1ノードに配信するステップと、
前記新旧鍵情報要求部からの前記要求に応じて、各自ノードの旧公開鍵および新公開鍵の情報を前記第1ノードに送信する新旧鍵情報送信部、
前記署名依頼部からの前記依頼に応じて、前記取引契約書案における各自ノードの送付元および送付先の対応関係が妥当であるかを確認し、前記対応関係が妥当であった場合に、前記取引契約書案の各自ノードに対応する箇所への署名を実行する第2署名実行部、および、
前記第2署名実行部によって署名された前記取引契約書案を前記第1ノードに返信する契約書案返信部、
としてコンピュータを動作させるためのプログラムを前記第2ノードに配信するステップと、
を有し、
前記契約書案作成部は、前記送付先の新公開鍵の順序をランダムで決定し、
前記署名依頼部および前記第1署名実行部は、前記取引契約書案へ署名を行うノードの順番がランダムになるように、前記署名の依頼および実行をそれぞれ行う。
前記データベースは、好ましくはブロックチェーンが用いられる。
本発明によれば、署名依頼部および第1署名実行部は、取引契約書案へ署名を行うノードの順番がランダムになるように、署名の依頼および実行をそれぞれ行うように設定されているため、第1ノードのユーザ以外の第三者は、第1ノードの旧公開鍵と新公開鍵との対応関係の推測が困難になる。また、モネロコインとは異なり、取引契約書において送金額を暗号化していないため、第三者は、他人が所有する口座の残高をリアルタイムで把握することができる。よって、第三者によるリアルタイムでの残高照会機能を有したまま、より匿名性の高い公開鍵変更が可能となる。
本発明の一実施形態に係る情報処理システムの概略図である。 第1ノードの構成を示す機能ブロックである。 第2ノードの構成を示す機能ブロックである。 情報処理システムにおいて、第1ノードの公開鍵の変更を行うための処理を示すシーケンスチャートである。 取引契約書案の具体例である。 (a)は、一方の第2ノードによって署名された取引契約書案であり、(b)は、さらに第1ノードによって署名された取引契約書案であり、(c)は、さらに他方の第2ノードによって署名され、署名が完了した取引契約書案である。
以下、本発明の実施形態について添付図面を参照して説明する。なお、本発明は、下記の実施形態に限定されるものではない。
(システム構成)
図1は、本発明の一実施形態に係る情報処理システム100の概略図である。情報処理システム100は、ブロックチェーン技術を利用したプラットフォームであり、第1ノード1と、第2ノード2と、ブロックチェーン3と、を備えている。第1ノード1、第2ノード2およびブロックチェーン3は、例えばインターネットなどの通信ネットワークNを介して有線または無線により通信可能に接続されている。
第1ノード1は、公開鍵の交換を高い匿名性を維持しつつ実現するための第1プログラムがインストールされた情報処理装置である。第1ノード1は、デスクトップ型PC、ノート型PC、スマートフォン、タブレット端末、PDAなどの汎用のコンピュータで構成することができる。
第2ノード2は、公開鍵の変更支援サービス(以下、「鍵変更支援サービス」と称する)を提供する情報処理装置であり、第2ノード2には、鍵変更支援サービスを実現するための第2プログラムがインストールされている。なお、鍵変更支援サービスを提供するノードを中継ノードとも称する。
本発明の性質上、情報処理システム100は、第2ノード2を少なくとも2つ備えている必要があり、好ましくは、第2ノード2を3つ以上備えている。実際には、第2ノード2は、手数料収入を目的に鍵変更支援サービスを行う事業者によって管理されていることが多いため、情報処理システム100には多数の第2ノード2が存在している。
ブロックチェーン3は、情報処理システム100に存在する全てのノード間で実施された取引契約書(トランザクション)群を一定時間毎に集約してブロック化して、各ブロックが直前ブロックとの連結条件を満たしていることを示す証拠情報を各ブロックに記載して、各ブロックをチェーン状に連結させたものである。ブロックチェーン3は、全てのトランザクションを記録しており、情報処理システム100に存在する全てのノードによって分散管理されている。また、情報処理システム100では、独自の暗号通貨による取引を発生させることができる。そのような暗号通貨の例として、ビットコイン(Bitcoin)やイーサリアム(Ethereum)などが挙げられるが、本実施形態では、暗号通貨がビットコインであるものとする。
なお、情報処理システム100は、第1ノード1および第2ノード2以外のノード、すなわち、第1プログラムおよび第2プログラムのいずれもがインストールされていないノードを含むことができる。
(各ノードの構成)
図2は、第1ノード1の構成を示す機能ブロックであり、図3は、第2ノード2の構成を示す機能ブロックである。
図2に示すように、第1ノード1は、入力部11と、表示部12と、通信部13と、記憶部14と、制御部15と、を備えている。
入力部11は、例えばキーボード、マウスまたはタッチパネルで構成することができ、表示部12は、例えば液晶ディスプレイや有機ELディスプレイで構成することができる。通信部13は、第1ノード1が通信ネットワークNを介して他のノード等と通信を行うためのインターフェースである。
記憶部14は、第1ノード1で用いられる各種プログラムやデータを記憶するための不揮発性の補助記憶装置であり、例えばハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)で構成することができる。
記憶部14には、本実施形態に係る第1プログラムP1および第1鍵情報K1が記憶されている。第1プログラムP1は、情報処理システム100において提供される鍵変更支援サービスの処理の一部を第1ノード1に実行させるためのプログラムである。第1プログラムP1を第1ノード1に配信する方法は特に限定されず、通信ネットワークNを介して第1プログラムP1を第1ノード1にダウンロードしてもよいし、コンピュータ読み取り可能な非一時的な記録媒体に第1プログラムP1を記録しておき、当該記憶媒体を介して第1プログラムP1を第1ノード1にインストールしてもよい。例えば、第1ノード1がスマートフォンである場合、Apple社のAppStore(登録商標)やGoogle社のGooglePlay(登録商標)などを介して、第1プログラムP1を第1ノード1に配信することができる。
第1鍵情報K1は、第1ノード1が情報処理システム100における取引に用いる公開鍵の情報である。具体的には、第1鍵情報K1には、第1ノード1で現在用いられている公開鍵およびこれに紐づく秘密鍵のペア群が含まれている。なお、秘密鍵については、第1ノード1以外に保存してもよい。
制御部15は、第1ノード1が備えるCPUやMPUなどの演算処理装置が、記憶部14に記憶されている第1プログラムP1をRAMなどの主記憶装置に読み出して実行することにより実現される機能ブロックである。制御部15は、新公開鍵作成部151と、第2ノード群選択部152と、新旧鍵情報要求部153と、契約書案作成部154と、署名依頼部155と、第1署名実行部156と、登録部157と、を備えている。これらの各部の機能については、後述する。
図3に示すように、第2ノード2は、入力部21と、表示部22と、通信部23と、記憶部24と、制御部25と、を備えている。入力部21、表示部22、通信部23および記憶部24はそれぞれ、第1ノード1の入力部11、表示部12、通信部13および記憶部14と同様に構成することができる。
記憶部24には、本実施形態に係る第2プログラムP2および第2鍵情報K2が記憶されている。第2プログラムP2は、情報処理システム100において提供される鍵変更支援サービスの処理の一部を第2ノード2に実行させるためのプログラムである。第2プログラムP2を第2ノード2に配信する方法は特に限定されず、通信ネットワークNを介して第2プログラムP2を第2ノード2にダウンロードしてもよいし、コンピュータ読み取り可能な非一時的な記録媒体に第2プログラムP2を記録しておき、当該記憶媒体を介して第2プログラムP2を第2ノード2にインストールしてもよい。
第2鍵情報K2は、第2ノード2が情報処理システム100における取引に用いる公開鍵の情報である。具体的には、第2鍵情報K2には、第2ノード2で現在用いられている公開鍵およびこれに紐づく秘密鍵のペア群が含まれている。なお、秘密鍵については、第2ノード2以外に保存してもよい。
制御部25は、第2ノード2が備えるCPUやMPUなどの演算処理装置が、記憶部24に記憶されている第2プログラムP2をRAMなどの主記憶装置に読み出して実行することにより実現される機能ブロックである。制御部25は、新旧鍵情報送信部251と、第2署名実行部252と、契約書案返信部253と、を備えている。これらの各部の機能については、後述する。
(処理手順)
図4は、情報処理システム100において、第1ノード1の公開鍵の変更を行うための処理を示すシーケンスチャートである。図4においてノード間の通信を示す矢印について、実線矢印はブロードキャストを示し、破線矢印は送信元を匿名化と通信路の暗号化を実施した匿名暗号通信を示している。なお、各処理における通信の形態は上記に限定されない。
本実施形態では、図2および図3にそれぞれ示す第1ノード1の制御部15および第2ノード2の制御部25によって図4の主な処理が実行される。なお、図4の処理の一部を、ユーザが第1ノード1の入力部11または第2ノードの入力部21を介して操作することによりマニュアルで行ってもよい。
まず、第1ノード1において、新公開鍵作成部151が、第1ノード1の旧公開鍵に対応する新公開鍵を作成する(ステップS1、新公開鍵作成ステップ)。旧公開鍵とは、鍵変更支援サービスの利用開始時において、第1ノード1が所有している公開鍵であって、ユーザが変更を所望している公開鍵を意味する。新公開鍵とは、旧公開鍵の代わりとなる新たな公開鍵である。
公開鍵の変更処理では、通常、複数の旧公開鍵を複数の新公開鍵に変更することが多いが、説明の便宜上、本実施形態では、1つの旧公開鍵を1つの新公開鍵に変更する例について説明する。旧公開鍵をPKo[U]とし、新公開鍵をPKn[U]とする。また、旧公開鍵に対応する通貨金額(旧公開鍵の残高)は1.5BTCであるとする。新公開鍵が作成されると、新公開鍵の情報が記憶部14に記憶され、第1鍵情報K1が更新される。
続いて、第1ノード1の第2ノード群選択部152が、情報処理システム100に設けられている多数の第2ノード2から、少なくとも2つの異なる第2ノード2を選択する(ステップS2、第2ノード群選択ステップ)。第2ノード2の選択基準は特に限定されないが、第2ノード群選択部152は、情報処理システム100に関する最新情報を収集・取得して、例えば信頼性の高い鍵変更支援サービスを提供している第2ノード2を選択する。
本実施形態では、第2ノード群選択部152は2つの第2ノード2を選択する。図4にでは、選択された第2ノード2の一方を第2ノード2Aとし、他方を第2ノード2Bとする。
なお、ステップS1およびステップS2の順序は逆でもよい。
続いて、第1ノード1の新旧鍵情報要求部153が、選択された第2ノード2A,2Bの各々に対し、鍵変更支援のための各自ノードの旧公開鍵および当該旧公開鍵に対応する新公開鍵の情報を要求する(ステップS3,S5、新旧鍵情報要求ステップ)。具体的には、新旧鍵情報要求部153は、第2ノード2Aに対し、第2ノード2Aの旧公開鍵およびこれに対応する新公開鍵の情報を要求し(ステップS3)、第2ノード2Bに対し、第2ノード2Bの旧公開鍵およびこれに対応する新公開鍵の情報を要求する(ステップS5)。1つの第2ノード2に対し要求する旧公開鍵および新公開鍵のペア数は特に限定されないが、本実施形態では、新旧鍵情報要求部153は、第2ノード2A,2Bの各々に対し、1つの旧公開鍵および新公開鍵のペアの情報を要求する。
第2ノード2では、新旧鍵情報送信部251が、新旧鍵情報要求部153からの要求に応じて、各自ノードの旧公開鍵および新公開鍵の情報を第1ノード1に送信する(ステップS4,S6、新旧鍵情報送信ステップ)。具体的には、第2ノード2Aの新旧鍵情報送信部251は、第2ノード2Aの旧公開鍵および新公開鍵の情報を第1ノード1に送信し(ステップS4)、第2ノード2Bの新旧鍵情報送信部251は、第2ノード2Bの旧公開鍵および新公開鍵の情報を第1ノード1に送信する(ステップS6)。
第2ノード2の新旧鍵情報送信部251は、新旧鍵情報要求部153からの要求を受信する度に、旧公開鍵および新公開鍵のペアを作成して、作成した旧公開鍵および新公開鍵の情報を第1ノード1に返送してもよい。あるいは、第2ノード2の記憶部24に記憶されている第2鍵情報K2に、鍵変更支援サービスのために旧公開鍵および新公開鍵のペアをあらかじめ多数用意しておき、新旧鍵情報要求部153からの要求を受信した場合に、新旧鍵情報送信部251が用意された旧公開鍵および新公開鍵のペアから1つのペアを選択し、選択したペアの情報を第1ノード1に返送してもよい。
なお、本実施形態では、第2ノード2Aから返送(取得)された旧公開鍵をPKo[A]とし、新公開鍵をPKn[A]とする。また、第2ノード2Bから返送(取得)された旧公開鍵をPKo[B]とし、新公開鍵をPKn[B]とする。
続いて、第1ノード1において、契約書案作成部154が、第1ノード1の旧公開鍵および第2ノード2A,2Bの各々から取得した旧公開鍵を送付元とし、第1ノード1の新公開鍵および第2ノード2A,2Bの各々から取得した新公開鍵を送付先とする取引契約書(トランザクション)案を作成する(ステップS7,S8,S9、契約書案作成ステップ)。
具体的には、ステップS7において、契約書案作成部154は、第2ノード2A,2Bから取得された旧公開鍵PKo[A],PKo[B]の残高をブロックチェーン3にアクセスして照会する。これにより、ステップS8において、残高情報を確認することができる。本実施形態では、旧公開鍵PKo[A],PKo[B]の残高は、いずれも1.0BTCであるとする。なお、第1ノード1とブロックチェーン3との通信形態は、非暗号通信、非匿名暗号通信またはブロードキャストであってもよい。
続いて、ステップS9において、契約書案作成部154は、第1ノード1の旧公開鍵および第2ノード2A,2Bから取得した旧公開鍵の3つの旧公開鍵、第1ノード1の新公開鍵および第2ノード2A,2Bから取得した新公開鍵の3つの新公開鍵、ならびに、各旧公開鍵の残高に基づき、取引契約書案を作成する。取引契約書案の具体例を図5に示す。
取引契約書案では、左側から順に署名(Sign)、送付元(IN)および送付先(OUT)の各表示領域が設けられており、右上に、有効期限の表示領域が設けられている。送付元には、3つの旧公開鍵およびこれに対応する通貨金額(残高)が記載され、送付先には、3つの新公開鍵およびこれに対応する通貨金額(送金額)が記載される。
本実施形態では、第2ノード2A,2Bは、鍵交換支援サービスの手数料をいずれも0.1BTCと設定しているものとする。また、ブロックチェーン3への登録手数料(Fee)が0.2BTCであるとする。そのため、第2ノード2A,2Bの新公開鍵PKn[A],PKn[B]の通貨金額は、いずれも1.1BTCとなる。また、ブロックチェーン3への登録手数料は、通常は鍵交換の依頼者である第1ノード1のユーザの負担である。そのため、第1ノード1の新公開鍵PKn[U]の通貨金額は、1.5−0.1×2−0.2=1.1BTCとなる。
ここで、取引契約書に記載される送付元の旧公開鍵群および送付先の新公開鍵群の順序関係に規則性がある場合を考える。例えば、送付先の新公開鍵の順序が、旧公開鍵とそれに対応する規則性を有する場合、送付元に旧公開鍵がPKo[U],PKo[A],PKo[B]の順で記載されると、送付先の新公開鍵はPKn[U],PKn[A],PKn[B]の順で記載される。この場合、その規則性が第三者に漏洩することで、取引契約書の記載内容から、新旧の公開鍵の対応関係も、第三者に漏洩してしまう危険性が生じる。
これに対し本実施形態では、契約書案作成部154は、送付先の新公開鍵の順序をランダムで決定することで、送付元の旧公開鍵の順序と送付先の進行鍵の順序の対応関係をランダムにする。
旧公開鍵および新公開鍵は、実際は不規則な文字列で構成されている。そのため、図5に示す取引契約書案が取引契約書としてブロックチェーン3に登録された場合、取引契約書は誰でも確認することができるようになるが、第1ノード1のユーザ以外の第三者は、旧公開鍵PKo[U],PKo[A],PKo[B]と新公開鍵PKn[U],PKn[A],PKn[B]との対応関係を特定することはできない。また、第2ノード2Aのユーザは、自身の旧公開鍵PKo[A]と新公開鍵PKn[A]を特定することはできるが、それ以外の旧公開鍵PKo[U],PKo[B]と新公開鍵PKn[U],PKn[B]との対応関係を特定することはできない。同様に、第2ノード2Bのユーザは、自身の旧公開鍵PKo[B]と新公開鍵PKn[B]を特定することはできるが、それ以外の旧公開鍵PKo[U],PKo[A]と新公開鍵PKn[U],PKn[A]との対応関係を特定することはできない。すなわち、鍵交換支援サービスを提供する第2ノード2A,2Bのユーザであっても、取引契約書案に基づいて第1ノード1の旧公開鍵PKo[U]および新公開鍵PKn[U]を特定することはできない。よって、従来技術のように、鍵変更支援サービスを行うマスターノードに、鍵交換依頼者の旧公開鍵と新公開鍵との対応関係を把握されるといった問題が生じることはなく、より匿名性の高い公開鍵の変更が可能となる。
ただし、取引契約書案をブロックチェーン3に登録するためには、取引に関わる全てのノードによる電子署名が必要となる。そのため、第1ノード1では、署名依頼部155が、選択された第2ノード2A,2Bの各々に対し、取引契約書案の各自ノードの旧公開鍵に対応する箇所への署名を依頼するとともに(ステップS10,S14、署名依頼ステップ)、第1署名実行部156が、取引契約書案の第1ノード1に対応する箇所への署名を実行する(ステップS13、第1署名実行ステップ)。
具体的には、第1ノード1において、取引契約書案の署名欄への署名順序をランダムに決定する。本実施形態では、第2ノード2A、第1ノード1、第2ノード2Bの順に決定されたものとする。
まず、ステップS10において、署名依頼部155が、第2ノード2Aに対し、取引契約書案を送信し、取引契約書案の第2ノード2Aの旧公開鍵に対応する箇所への署名を依頼する。第2ノード2Aでは、第2署名実行部252が、署名依頼部155からの依頼に応じて、取引契約書案における各自ノードの送付元および送付先の対応関係が妥当であるかを確認し、対応関係が妥当であった場合に、取引契約書案の各自ノードの旧公開鍵に対応する箇所への署名を実行する(ステップS11、第2署名実行ステップ)。本実施形態では、第2ノード2Aの鍵交換支援サービスの最低手数料が0.1BTCであるため、第2署名実行部252は、取引契約書案において、送付先に記載されている新公開鍵PKn[A]に対応する通貨金額(送金額)から、送付元に記載されている旧公開鍵PKo[A]に対応する通貨金額(残高)を差し引いた金額が0.1BTC以上である場合に、各自ノードの送付元および送付先の対応関係が妥当であると判断し、図6(a)に示すように、旧公開鍵PKo[A]に対応する署名欄に署名する。
その後、第2ノード2Aの契約書案返信部253は、第2署名実行部252によって署名された取引契約書案を第1ノード1に返信する(ステップS12、契約書案返信ステップ)。
続いて、第1ノード1の第1署名実行部156が、返信された取引契約書案の第1ノード1の旧公開鍵に対応する箇所への署名を実行する(ステップS13)。これにより、図6(b)に示すように、取引契約書案の旧公開鍵PKo[U]に対応する署名欄に署名される。
続いて、第1ノード1の署名依頼部155が、第2ノード2Bに対し、取引契約書案を送信し、取引契約書案の第2ノード2Aの旧公開鍵に対応する箇所への署名を依頼する(ステップS14)。第2ノード2Bでは、第2署名実行部252が、署名依頼部155からの依頼に応じて、取引契約書案における各自ノードの送付元および送付先の対応関係が妥当であるかを確認し、対応関係が妥当であった場合に、取引契約書案の各自ノードの旧公開鍵に対応する箇所への署名を実行する(ステップS15、第2署名実行ステップ)。本実施形態では、第2ノード2Bの鍵交換支援サービスの最低手数料が、第2ノード2Aと同じく0.1BTCであるため、第2署名実行部252は、取引契約書案において、送付先に記載されている新公開鍵PKn[B]に対応する通貨金額(送金額)から、送付元に記載されている旧公開鍵PKo[B]に対応する通貨金額(残高)を差し引いた金額が0.1BTC以上である場合に、各自ノードの送付元および送付先の対応関係が妥当であると判断し、図6(c)に示すように、旧公開鍵PKo[B]に対応する署名欄に署名する。これにより、取引契約書案への全ての署名が完了する。
その後、第2ノード2Bの契約書案返信部253は、第2署名実行部252によって署名された取引契約書案を第1ノード1に返信する(ステップS16、契約書案返信ステップ)。
続いて、第1ノード1の登録部157は、全ての署名が完了した取引契約書案を、取引契約書としてブロックチェーン3に登録する(ステップS17、登録ステップ)。より詳細には、取引契約書が採掘者達によって承認され、取引契約書に記載された有効期限までにブロックチェーン3に追加されると、取引契約書の登録が完了する(ステップS18)。第1ノード1を含む全てのノードは、ブロックチェーン3に照会することにより(ステップS19)、登録された取引契約書を確認することができる(ステップS20)。
以上のように、取引契約書がブロックチェーン3に登録されることにより、第1ノード1(および第2ノード2A,2B)の公開鍵の変更(PKo[U]→PKn[U])が完了する。上述のように、第1ノード1のユーザ以外の第三者は、ブロックチェーン3に登録された取引契約書(=取引契約書案)を参照しても、第1ノード1の旧公開鍵PKo[U]に対応する新公開鍵PKn[U]を特定することはできない。
なお、第2ノード2A,2Bの旧公開鍵と新公開鍵との対応関係は、第1ノード1には把握されているが、通常、第2ノード2A,2Bは、鍵変更支援サービスを提供する業者であるため、サービスに供される公開鍵がノード情報と関連付けられても問題はない。
本実施形態では、鍵交換の匿名性をさらに高めるために、以下の処理を行っている。
上述のように、本実施形態では、取引契約書案への署名を、第2ノード2A、第1ノード1、第2ノード2Bの順に行っているが、第1ノード1が公開鍵の交換を複数回行う場合に、取引契約書案へ署名を行うノードの順番に規則性があると、その規則性が第三者に漏洩することで、取引契約書の記載内容から、新旧の公開鍵の対応関係が、その規則性を知る第三者に推測されてしまう危険性が生じる。
そのため、署名依頼部155および第1署名実行部156は、取引契約書案へ署名を行うノードの順番がランダムになるように、署名の依頼および実行をそれぞれ行うように設定されている。例えば、取引契約書案へ署名を行うノードが、第1ノード1、第2ノード2Aおよび第2ノード2Bの3つである場合、署名を行う順番は6通りあるが、署名依頼部155および第1署名実行部156は、公開鍵交換のたびに、6通りの順番の中からランダムに順番を選択する。これにより、第1ノード1のユーザ以外の第三者は、第1ノード1の旧公開鍵と新公開鍵との対応関係の推測が困難になる。
また本実施形態では、モネロコインとは異なり、取引契約書において送金額を暗号化していないため、第三者は、他人が所有する口座の残高をリアルタイムで把握することができる。よって、第三者によるリアルタイムでの残高照会機能を有したまま、より匿名性の高い公開鍵変更が可能となる。
また、取引契約書案に記載されている旧公開鍵または新公開鍵の残高のばらつきが大きい場合、残高の傾向に基づいて、旧公開鍵と新公開鍵との対応関係が推測しやすくなる。そのため、取引契約書案に記載されている旧公開鍵と新公開鍵の残高のばらつきを少なくすることが好ましい。すなわち、第1ノード1の新旧鍵情報要求部153は、取引契約書案の送付元および送付先における、各公開鍵に対応する残高の最大値に対する最小値の比率が1に近くなるように、残高の範囲を指定して新旧鍵情報を第2ノード2に要求することが好ましい。例えば、新旧鍵情報要求部153は、第1ノード1の旧公開鍵の残高の1/2から2倍の残高の旧公開鍵の新旧鍵情報を、第2ノード2に要求する。
図5に示す取引契約書案では、送付元に記載されている旧公開鍵の残高の最大値に対する最小値の比率が2/3と比較的1に近い(ばらつきが少ない)。そのため、送付先に記載されている新公開鍵の残高の最大値に対する最小値の比率も1と等しくすることが可能であり、どの新公開鍵が第1ノード1の新公開鍵であるのかを特定できない。
このように、取引契約書案に記載されている旧公開鍵と新公開鍵の残高のばらつきを少なくすることで、鍵交換の匿名性をさらに高めることができる。
(付記事項)
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて、種々の変更が可能である。
上記実施形態では、1つの旧公開鍵を1つの新公開鍵に変更する例について説明したが、1度に変更する旧公開鍵の数は、特に限定されない。1度に変更する旧公開鍵が多いほど、取引契約書案において、旧公開鍵と新公開鍵との対応関係が複雑になるため、鍵交換の匿名性が高くなる。
同様に、上記実施形態では、第2ノード2の各々が第1ノード1に返送する旧公開鍵および新公開鍵のペア数が1であったが、ペア数は特に限定されない。ペア数が多くなるほど、取引契約書案において、旧公開鍵と新公開鍵との対応関係が複雑になるため、鍵交換の匿名性が高くなる。
また、上記実施形態では、第2ノード群選択部152が選択する第2ノード2は2つであったが、3つ以上の第2ノード2を選択してもよい。第2ノード群選択部152が選択する第2ノード2の数が大きくなるほど、取引契約書案において記載される旧公開鍵と新公開鍵との対応関係が複雑になるため、鍵交換の匿名性が高くなる。しかし、第2ノード群選択部152が選択する第2ノード2が多くなるほど、第1ノード1が負担する鍵交換支援サービスの手数料が増加する。そのため、一度の公開鍵交換において選択される第2ノード2の数は、費用対効果を勘案して決定することが好ましい。
なお、第2ノード2の鍵交換サービスの手数料は特に限定されず、第2ノード2が無料で鍵交換サービスを提供する形態も本発明に含まれる。
また、上記実施形態では、情報処理システムがブロックチェーン技術を利用したプラットフォームであったが、本発明はこれに限定されず、通常のサーバ・クライアントシステムであってもよい。この場合、取引契約書は、ブロックチェーンの代わりに、サーバ等に設けられるデータベースに登録される。
1 第1ノード
2 第2ノード
2A 第2ノード
2B 第2ノード
3 ブロックチェーン
11 入力部
12 表示部
13 通信部
14 記憶部
15 制御部
151 新公開鍵作成部
152 第2ノード群選択部
153 新旧鍵情報要求部
154 契約書案作成部
155 署名依頼部
156 第1署名実行部
157 登録部
21 入力部
22 表示部
23 通信部
24 記憶部
25 制御部
251 新旧鍵情報送信部
252 第2署名実行部
253 契約書案返信部
100 情報処理システム
K1 第1鍵情報
K2 第2鍵情報
N 通信ネットワーク
P1 第1プログラム
P2 第2プログラム
PKn 新公開鍵
PKo 旧公開鍵

Claims (6)

  1. 第1ノードと、公開鍵の変更支援サービスを提供する第2ノードと、データベースと、を備えた情報処理システムであって、
    前記第1ノードは、
    前記第1ノードの新公開鍵を作成する新公開鍵作成部と、
    前記第2ノードから、少なくとも2つの異なる第2ノードを選択する第2ノード群選択部と、
    前記選択された第2ノードの各々に対し、各自ノードの旧公開鍵および新公開鍵の情報を要求する新旧鍵情報要求部と、
    前記第1ノードの前記旧公開鍵および前記第2ノードの各々から取得した前記旧公開鍵を送付元とし、前記第1ノードの前記新公開鍵および前記第2ノードの各々から取得した前記新公開鍵を送付先とする取引契約書案を作成する契約書案作成部と、
    前記選択された第2ノードの各々に対し、前記取引契約書案の各自ノードに対応する箇所への署名を依頼する署名依頼部と、
    前記取引契約書案の前記第1ノードに対応する箇所への署名を実行する第1署名実行部と、
    全ての署名が完了した前記取引契約書案を、取引契約書として前記データベースに登録する登録部と、
    を備え、
    前記第2ノードは、
    前記新旧鍵情報要求部からの前記要求に応じて、各自ノードの旧公開鍵および新公開鍵の情報を前記第1ノードに送信する新旧鍵情報送信部と、
    前記署名依頼部からの前記依頼に応じて、前記取引契約書案における各自ノードの送付元および送付先の対応関係が妥当であるかを確認し、前記対応関係が妥当であった場合に、前記取引契約書案の各自ノードに対応する箇所への署名を実行する第2署名実行部と、
    前記第2署名実行部によって署名された前記取引契約書案を前記第1ノードに返信する契約書案返信部と、
    を備え、
    前記契約書案作成部は、前記送付先の新公開鍵の順序をランダムで決定し、
    前記署名依頼部および前記第1署名実行部は、前記取引契約書案へ署名を行うノードの順番がランダムになるように、前記署名の依頼および実行をそれぞれ行うことを特徴とする、情報処理システム。
  2. 前記データベースは、ブロックチェーンであることを特徴とする、請求項1に記載の情報処理システム。
  3. 第1ノードと、公開鍵の変更支援サービスを提供する第2ノードと、データベースと、を備えた情報処理システムにおける公開鍵の変更方法であって、
    前記第1ノードにおいて、新公開鍵を作成する新公開鍵作成ステップと、
    前記第1ノードにおいて、前記第2ノードから、少なくとも2つの異なる第2ノードを選択する第2ノード群選択ステップと、
    前記第1ノードにおいて、前記選択された第2ノードの各々に対し、各自ノードの旧公開鍵および新公開鍵の情報を要求する新旧鍵情報要求ステップと、
    前記第2ノードにおいて、前記新旧鍵情報要求ステップの前記要求に応じて、各自ノードの旧公開鍵および新公開鍵の情報を前記第1ノードに送信する新旧鍵情報送信ステップと、
    前記第1ノードにおいて、前記第1ノードの前記旧公開鍵および前記第2ノードの各々から取得した前記旧公開鍵を送付元とし、前記第1ノードの前記新公開鍵および前記第2ノードの各々から取得した前記新公開鍵を送付先とする取引契約書案を作成する契約書案作成ステップと、
    前記第1ノードにおいて、前記選択された第2ノードの各々に対し、前記取引契約書案の各自ノードに対応する箇所への署名を依頼する署名依頼ステップと、
    前記第2ノードにおいて、前記署名依頼ステップからの前記依頼に応じて、前記取引契約書案における各自ノードの送付元および送付先の対応関係が妥当であるかを確認し、前記対応関係が妥当であった場合に、前記取引契約書案の各自ノードに対応する箇所への署名を実行する第2署名実行ステップと、
    前記第2ノードにおいて、前記第2署名実行ステップで署名された前記取引契約書案を前記第1ノードに返信する契約書案返信ステップと、
    前記第1ノードにおいて、前記取引契約書案の前記第1ノードに対応する箇所への署名を実行する第1署名実行ステップと、
    前記第1ノードにおいて、全ての署名が完了した前記取引契約書案を、取引契約書として前記データベースに登録する登録ステップと、
    を有し、
    前記契約書案作成ステップでは、前記送付先の新公開鍵の順序がランダムで決定され、
    前記署名依頼ステップおよび前記第1署名実行ステップでは、前記取引契約書案へ署名を行うノードの順番がランダムになるように、前記署名の依頼および実行をそれぞれ行うことを特徴とする、公開鍵の変更方法。
  4. 前記データベースは、ブロックチェーンであることを特徴とする、請求項3に記載の公開鍵の変更方法。
  5. 公開鍵の変更支援サービスを提供する第2ノード、およびデータベースに通信可能に接続された第1ノードの公開鍵の変更を支援するためのプログラムであって、
    前記第1ノードの新公開鍵を作成する新公開鍵作成部、
    前記第2ノードから、少なくとも2つの異なる第2ノードを選択する第2ノード群選択部、
    前記選択された第2ノードの各々に対し、各自ノードの旧公開鍵および新公開鍵の情報を要求する新旧鍵情報要求部、
    前記第1ノードの前記旧公開鍵および前記第2ノードの各々から取得した前記旧公開鍵を送付元とし、前記第1ノードの前記新公開鍵および前記第2ノードの各々から取得した前記新公開鍵を送付先とする取引契約書案を作成する契約書案作成部、
    前記選択された第2ノードの各々に対し、前記取引契約書案の各自ノードに対応する箇所への署名を依頼する署名依頼部、
    前記取引契約書案の前記第1ノードに対応する箇所への署名を実行する第1署名実行部、および、
    全ての署名が完了した前記取引契約書案を、取引契約書として前記データベースに登録する登録部、
    としてコンピュータを動作させ、
    前記契約書案作成部は、前記送付先の新公開鍵の順序をランダムで決定し、
    前記署名依頼部および前記第1署名実行部は、前記取引契約書案へ署名を行うノードの順番がランダムになるように、前記署名の依頼および実行をそれぞれ行うことを特徴とする、プログラム。
  6. 前記データベースは、ブロックチェーンであることを特徴とする、請求項5に記載のプログラム。
JP2018211811A 2018-11-09 2018-11-09 情報処理システム、公開鍵の変更方法、およびプログラム Active JP6545888B1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018211811A JP6545888B1 (ja) 2018-11-09 2018-11-09 情報処理システム、公開鍵の変更方法、およびプログラム
US16/674,353 US11329819B2 (en) 2018-11-09 2019-11-05 Information processing system, method for changing public key, program, and method for building information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018211811A JP6545888B1 (ja) 2018-11-09 2018-11-09 情報処理システム、公開鍵の変更方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP6545888B1 true JP6545888B1 (ja) 2019-07-17
JP2020078034A JP2020078034A (ja) 2020-05-21

Family

ID=67297580

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018211811A Active JP6545888B1 (ja) 2018-11-09 2018-11-09 情報処理システム、公開鍵の変更方法、およびプログラム

Country Status (2)

Country Link
US (1) US11329819B2 (ja)
JP (1) JP6545888B1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200175509A1 (en) * 2019-06-28 2020-06-04 Alibaba Group Holding Limited Transferring method and system based on blockchain smart contract
US12099997B1 (en) 2020-01-31 2024-09-24 Steven Mark Hoffberg Tokenized fungible liabilities
DE102020114199A1 (de) * 2020-05-27 2021-12-02 Basler Aktiengesellschaft Absicherung von Computersystemen gegen Manipulationen und Funktionsanomalien
CN112953733B (zh) * 2021-03-16 2022-08-26 昆明理工大学 一种数据治理的区块链通信资源整合共识方法
CN113259445B (zh) * 2021-05-25 2021-11-09 广州市玄武无线科技股份有限公司 一种混云模式下的服务治理方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9461876B2 (en) * 2012-08-29 2016-10-04 Loci System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction
CN106103741B (zh) * 2014-01-22 2020-03-13 牛津纳米孔技术公司 将一个或多个多核苷酸结合蛋白连接到靶多核苷酸的方法
US11436593B2 (en) * 2016-03-31 2022-09-06 Bitflyer Blockchain, Inc. Transaction processing device, transaction processing method, and program for same
CN106779704A (zh) * 2016-12-06 2017-05-31 杭州趣链科技有限公司 一种基于环签名的区块链匿名交易方法
JP6340120B1 (ja) * 2017-06-16 2018-06-06 アイビーシー株式会社 デバイスプロビジョニングシステム

Also Published As

Publication number Publication date
JP2020078034A (ja) 2020-05-21
US11329819B2 (en) 2022-05-10
US20200153628A1 (en) 2020-05-14

Similar Documents

Publication Publication Date Title
JP6545888B1 (ja) 情報処理システム、公開鍵の変更方法、およびプログラム
JP7535363B2 (ja) ブロックチェーンが実現される方法及びシステム
US11184394B1 (en) Methods, systems, and devices for encrypted electronic storage and confidential network transfer of private data through a trustless distributed ledger technology system
US11836717B2 (en) System and method for processing payments in fiat currency using blockchain and tethered tokens
CN111448565B (zh) 基于去中心化标识的数据授权
US20200058023A1 (en) Decentralized Data Marketplace
US10382205B1 (en) Security system and method for using a blockchain service through privacy-aware blockchain arbitration server
JP2022003536A (ja) デジタルコンテンツの制御及び配信のためのブロックチェーンにより実施される方法
US20190036702A1 (en) Private node, processing method for private node, and program for same
JP7508521B2 (ja) ブロックチェーンネットワークを介してデータを通信し、格納し、及び処理するためのブロックチェーンベースのシステム及び方法
WO2018165763A1 (en) Systems and methods for hybrid blockchain platform
JP2023179803A (ja) ブロックチェーンにより実現されるシステム及び方法
JP2019511035A (ja) スマートコントラクトに基づく自動給与支払方法及びシステムをもたらす、ブロックチェーン上の給与支払に関連付けられた暗号通貨の効率的な転送のための方法及びシステム
US20230419308A1 (en) System and method for processing payments in fiat currency using blockchain and tethered tokens
EP4152197A1 (en) Methods and systems for managing user data privacy
CN115136543A (zh) 在区块链网络中使用的认证服务
JP2020077347A (ja) 情報処理システム、データ提供方法、および情報処理システムの製造方法
JP2025015643A (ja) 暗号的にリンクされたアイデンティティ
JPWO2019082442A1 (ja) データ登録方法、データ復号方法、データ構造、コンピュータ、及びプログラム
CN114128216A (zh) 多输入交易
JP7604467B2 (ja) ブロックチェーントランザクションを使用したデジタル資産の割当て
JP6293245B1 (ja) 強化されたセキュリティを有する取引相互監視システム
EP1974288A2 (en) Method and apparatus for establishing peer-to-peer karma and trust
US20200267133A1 (en) First communication device, second communication device, method, and computer program
CN118094633B (zh) 基于区块链的数据处理方法、装置、电子设备及介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181129

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20181129

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190326

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190410

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: 20190521

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190619

R150 Certificate of patent or registration of utility model

Ref document number: 6545888

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250