(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-17
(45)【発行日】2022-10-25
(54)【発明の名称】電子割符型格納方法およびその運用システム
(51)【国際特許分類】
H04L 9/08 20060101AFI20221018BHJP
H04L 9/32 20060101ALI20221018BHJP
G09C 1/00 20060101ALI20221018BHJP
G06F 21/60 20130101ALI20221018BHJP
G06F 21/33 20130101ALI20221018BHJP
【FI】
H04L9/08 A
H04L9/32 200Z
G09C1/00 650Z
G06F21/60 320
G06F21/33
(21)【出願番号】P 2019052099
(22)【出願日】2019-03-20
【審査請求日】2021-12-22
(73)【特許権者】
【識別番号】519452792
【氏名又は名称】中西 威人
(74)【代理人】
【識別番号】100110179
【氏名又は名称】光田 敦
(72)【発明者】
【氏名】高橋 宏尚
【審査官】金沢 史明
(56)【参考文献】
【文献】特表2014-515521(JP,A)
【文献】特開2008-288750(JP,A)
【文献】特開2006-18850(JP,A)
【文献】特開2018-73064(JP,A)
【文献】米国特許第9411982(US,B1)
【文献】福光 正幸, 他,秘密分散法と匿名通信による秘匿性に優れたP2P型ストレージ技術の提案,情報処理学会研究報告,日本,情報処理学会,2016年02月25日,Vol. 2016-CSEC-72, No. 6,pp. 1-8
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/00- 9/40
G09C 1/00
G06F 21/00-21/88
(57)【特許請求の範囲】
【請求項1】
自律分散ネットワークに接続された複数のノードコンピュータを備え、分散型のブロックチェーンを用いて、仮想通貨のトランザクションが可能な自律分散ネットワークにおいて、利用者の秘密鍵を分割し複数の匿名ノードコンピュータに分散して格納する電子割符型格納方法であって、
複数のノードコンピュータは、仮想通貨の取引に参加する複数の利用者のノードコンピュータと、監視ノードコンピュータを含み、
利用者のノードコンピュータは、自律分散型電子割符ウォレットを備え、該自律分散型電子割符ウォレットによって、秘密鍵を分割し、ワンタイム暗号鍵で監視ノードコンピュータによる認証を受けて、監視ノードコンピュータに分割した秘密鍵の各部を送って、格納要求を指令し、
監視ノードコンピュータは、匿名選択手段を備え、該匿名選択手段によって、利用者のノードコンピュータからの格納要求の指令に基づき、自律分散ネットワークに接続された複数のノードコンピュータから、無作為に複数の匿名ノードコンピュータを選択し、そのアドレスを登録するとともに、選択した複数の匿名ノードコンピュータに、分割した秘密鍵の各部を分散して格納することを特徴とする電子割符型格納方法。
【請求項2】
利用者のノードコンピュータは、自律分散型電子割符ウォレットによって、ワンタイム暗号鍵で監視ノードコンピュータによる認証を受けて、監視ノードコンピュータに分割した秘密鍵の各部の収集要求を指令し、
監視ノードコンピュータは、匿名選択手段によって、利用者のノードコンピュータからの収集要求の指令に基づき、分割した秘密鍵の各部を格納している複数の匿名ノードコンピュータから、秘密鍵の各部を収集し、当該利用者のノードコンピュータに送信し、
当該利用者のノードコンピュータの自律分散型電子割符ウォレットは、監視ノードコンピュータから送信された分割した秘密鍵の各部から、分割前の秘密鍵を再生することを特徴とする請求項1に記載の電子割符型格納方法。
【請求項3】
監視ノードコンピュータは、利用者のノードコンピュータに対するトランザクションの都度、該利用者に対するワンタイム暗号鍵を新たに発行し、保存するとともに、利用者のノードコンピュータに送信し、
利用者のノードコンピュータは、該ワンタイム暗号鍵を保存して、次に監視ノードコンピュータにアクセスするための認証に供することを特徴とする請求項1又は2に記載の電子割符型格納方法。
【請求項4】
監視ノードコンピュータの複数を監視ノードコンピュータ群として設けることを特徴とする請求項1~3のいずれかに記載の電子割符型格納方法。
【請求項5】
自律分散型電子割符ウォレットは、秘密鍵の分割数を任意に設定することを特徴とする請求項1~4のいずれかに記載の電子割符型格納方法。
【請求項6】
自律分散ネットワークに接続された複数のノードコンピュータを備え、分散型のブロックチェーンを用いて、仮想通貨のトランザクションが可能な自律分散ネットワークにおいて、利用者の秘密鍵が分割されて複数の匿名ノードコンピュータに分散されて格納される電子割符型格納システムであって、
複数のノードコンピュータには、仮想通貨の取引に参加する複数の利用者のノードコンピュータと、監視ノードコンピュータが含まれており、
利用者のノードコンピュータは、自律分散型電子割符ウォレットを備え、該自律分散型電子割符ウォレットは、秘密鍵を分割し、ワンタイム暗号鍵で監視ノードコンピュータによる認証を受けて、監視ノードコンピュータに分割した秘密鍵の各部を送って、格納要求を指令する手段であり、
監視ノードコンピュータは、匿名選択手段を備え、該匿名選択手段は、利用者のノードコンピュータからの格納要求の指令に基づき、自律分散ネットワークに接続された複数のノードコンピュータから、無作為に複数の匿名ノードコンピュータを選択し、そのアドレスを登録するとともに、選択した複数の匿名ノードコンピュータに、分割した秘密鍵の各部を分散して格納する手段であることを特徴とする電子割符型格納システム。
【請求項7】
利用者のノードコンピュータの自律分散型電子割符ウォレットは、ワンタイム暗号鍵によって監視ノードコンピュータによる認証を受けて、監視ノードコンピュータに分割した秘密鍵の各部の収集要求を指令する手段でもあり、
監視ノードコンピュータの匿名ノード選択手段は、利用者のノードコンピュータからの収集要求の指令に基づき、複数の匿名ノードコンピュータから、分割した秘密鍵の各部を収集し、当該利用者のノードコンピュータに送信する手段でもあり、
当該利用者のノードコンピュータの自律分散型電子割符ウォレットは、監視ノードコンピュータから送信された分割した秘密鍵の各部から、分割前の秘密鍵を再生する手段でもあることを特徴とする請求項6に記載の電子割符型格納システム。
【請求項8】
監視ノードコンピュータの匿名選択手段は、利用者のノードコンピュータに対するトランザクションの都度、該利用者に対するワンタイム暗号鍵を新たに発行し、保存するとともに、利用者のノードコンピュータに送信する手段でもあり、
利用者のノードコンピュータの自律分散型電子割符ウォレットは、ワンタイム暗号鍵を保存して、次に監視ノードコンピュータにアクセスするための認証に供する手段でもあることを特徴とする請求項6又は7に記載の電子割符型格納システム。
【請求項9】
監視ノードコンピュータの複数を監視ノードコンピュータ群として設けて成る構成であることを特徴とする請求項6~8のいずれかに記載の電子割符型格納方法。
【請求項10】
利用者のノードコンピュータは、自律分散された複数の匿名ノードコンピュータへ、分割した秘密鍵の各部の格納するための書き込みを高速化するキャッシュ手段を有する構成であることを特徴とする請求項6~9のいずれかに記載の電子割符型格納システム。
【請求項11】
自律分散型電子割符ウォレットは、自律分散ネットワークにおける多重ブロックチェーンが存在する環境でも動作できるカラムを持ち、ファイルベースのブロックチェーンとのハイブリット構成を有する環境下で動作する構成であることを特徴とする請求項6~10のいずれかに記載の電子割符型格納システム。
【請求項12】
自律分散型電子割符ウォレットは、コンピュータ利用機器の各種のOSに対応し、コンピュータ、携帯端末、携帯電話、組み込みのセンサー端末又はロボットプロセッシングオートメーションに組み込まれた各種のプログラムにも接続可能である構成であることを特徴とする請求項6~11のいずれかに記載の電子割符型格納システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想通貨の取引に使用する仮想通貨に係る所有データ(以下、「秘密鍵」という)を、複数に分割して、多数のノードがネットワークに接続されて成る自律分散システム上において、複数の匿名ノードに、分散して秘密裡に格納する電子割符型格納方法およびその運用システムに関する発明である。
【0002】
本願の本明細書等では、自律分散システム、自律分散ノードコンピュータ、ノードコンピュータメモリ、各種のコンピュータ端末、パッド型端末、スマートフォン、携帯電話を「コンピュータ利用機器」と称する。
【0003】
また、「ノード」は、情報通信ネットワークで交換機能、伝送機能、ネットワーク管理機能等を備えた装置を総称するが、本明細書では、自律分散ネットワークに接続されている各種のコンピュータ端末、パッド型端末、スマートフォン、携帯電話端末等、アドレス指定できる装置、人工知能技術を用いたRPA(ロボティック・プロセス・オートメーション)プログラムも含めたコンピュータ利用機器、およびRPAプログラムを有する通信可能な機器やセンサー群を言う。
【0004】
また、コンピュータ利用機器に装着及び取り外し可能なUSBメモリ(USBは登録商標)、SDメモリカード(SDは登録商標)、マイクロSDメモリカード、メモリステック等の補助記憶装置を「外部メモリ媒体」と称す。
【背景技術】
【0005】
近年、仮想通貨市場が発展した。多くの仮想通貨保有者は、それらの仮想通貨を電子データとして、保存している。電子データを独自のファイルに格納、もしくは、そのファイル自体を個別の機器、デバイス等に格納することで、安全性を保っている。
【0006】
しかし、仮想通貨がデジタルデータである以上、運用時に大きなセキュリティの脅威にさらされる。現に、多くの仮想通貨取引所で交換用に預かった仮想通貨データを、外部からの不正アクセスで流出する事件が後を絶たない。
【0007】
仮想通過のトランザクションを、対となった秘密鍵と公開鍵を利用して、取引の偽造や改ざんを防止し、取引の透明性を維持する技術は知られている(特許文献1参照)。
【0008】
また、情報端末装置を用いた電子商取引において、電子割符手段によって対象とする電子情報を物理的に2個の電子情報ブロックに分割し、第1の電子情報ブロックを通信端末装置本体に、第2の電子情報ブロックを外部記憶装置に記憶することで、より安全性の高い利用者認証を行うことができるような電子情報保護システムについて知られている(特許文献2参照)。
【先行技術文献】
【特許文献】
【0009】
【文献】特開2018-136915号公報
【文献】特開2002-351845号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
ところで、仮想通貨を使用もしくは、交換する際に最小時間内で仮想通貨データを取り扱うことが好ましいが、従来の仮想通貨のウォレット(Wallet:仮想通貨を格納する手段)では、仮想通貨を単なるデータとして扱うため、外部からの脅威を取り除くことが、きわめて困難であった。
【0011】
また、仮想通貨は連続したブロック(取引の記録をまとめたもの)を皆で共有して接続する分散型のブロックチェーンを用い、そのトランザクション(取引)の正義は、参加する全てのノードの監視の下で、再修正が出来ないことで保たれる仕組みで運用されているが、ウォレットから仮想通貨データ自体の盗難保護は未だに確立されていない。
【0012】
例えば、自己の仮想通貨データは、それぞれウォレットに保管されているが、このウォレットに保管され、トランザクションを行うために使用される秘密鍵が、外部から悪意の第三者の解読等により取得され、ウォレットに不正アクセスされて仮想通貨データが盗難される。
【0013】
特許文献2には、電子割符手段によって電子情報を2個の電子情報ブロックに分割し、通信端末装置本体と外部記憶装置に、分散して格納する技術は記載されているが、これでも第三者に不正に所得には万全ではなく、また電子情報の所有者自体が、例えば、どの外部記憶装置に格納したか忘れる等によって紛失し、分割した電子情報を復元できなくなるようなことも生じている。
【0014】
本発明は、上記従来の問題を解決することを目的とするものであり、秘密鍵を複数に分割し、分割された秘密鍵を自律分散ネットワーク上の複数の匿名のノードに格納し、外部からのハッキング(不正アクセス)に対して高いデータ流出耐性を持つ電子割符型格納方法およびその運用システムを実現することを課題とする。
【課題を解決するための手段】
【0015】
本発明は上記課題を解決するために、自律分散ネットワークに接続された複数のノードコンピュータを備え、分散型のブロックチェーンを用いて、仮想通貨のトランザクションが可能な自律分散ネットワークにおいて、利用者の秘密鍵を分割し複数の匿名ノードコンピュータに分散して格納する電子割符型格納方法であって、複数のノードコンピュータは、仮想通貨の取引に参加する複数の利用者のノードコンピュータと、監視ノードコンピュータを含み、利用者のノードコンピュータは、自律分散型電子割符ウォレットを備え、該自律分散型電子割符ウォレットによって、秘密鍵を分割し、ワンタイム暗号鍵で監視ノードコンピュータによる認証を受けて、監視ノードコンピュータに分割した秘密鍵の各部を送って、格納要求を指令し、監視ノードコンピュータは、匿名選択手段を備え、該匿名選択手段によって、利用者のノードコンピュータからの格納要求の指令に基づき、自律分散ネットワークに接続された複数のノードコンピュータから、無作為に複数の匿名ノードコンピュータを選択し、そのアドレスを登録するとともに、選択した複数の匿名ノードコンピュータに、分割した秘密鍵の各部を分散して格納することを特徴とする電子割符型格納方法を提供する。
【0016】
利用者のノードコンピュータは、監視ノードコンピュータによって生成されたワンタイム暗号鍵によって監視ノードコンピュータによる認証を受けて、監視ノードコンピュータに分割した秘密鍵の各部の収集要求を指令し、監視ノードコンピュータは、匿名選択手段によって、利用者のノードコンピュータからの収集要求の指令に基づき、分割した秘密鍵の各部を格納している複数の匿名ノードコンピュータから秘密鍵の各部を収集し、当該利用者のノードコンピュータに送信し、当該利用者のノードコンピュータの自律分散型電子割符ウォレットは、監視ノードコンピュータから送信された分割した秘密鍵の各部から、分割前の秘密鍵を再生することが好ましい。
【0017】
監視ノードコンピュータは、利用者のノードコンピュータに対するトランザクションの都度、該利用者に対するワンタイム暗号鍵を新たに発行し、保存するとともに、利用者のノードコンピュータに送信し、利用者のノードコンピュータは、該ワンタイム暗号鍵を保存して、次に監視ノードコンピュータにアクセスするための認証に供することが好ましい。
【0018】
自律分散型電子割符ウォレットは、秘密鍵の分割数を任意に設定することが好ましい。
【0019】
本発明は上記課題を解決するために、自律分散ネットワークに接続された複数のノードコンピュータを備え、分散型のブロックチェーンを用いて、仮想通貨のトランザクションが可能な自律分散ネットワークにおいて、利用者の秘密鍵が分割されて複数の匿名ノードコンピュータに分散されて格納される電子割符型格納システムであって、複数のノードコンピュータには、仮想通貨の取引に参加する複数の利用者のノードコンピュータと、監視ノードコンピュータが含まれており、利用者のノードコンピュータは、自律分散型電子割符ウォレットを備え、該自律分散型電子割符ウォレットは、秘密鍵を分割し、ワンタイム暗号鍵で監視ノードコンピュータによる認証を受けて、監視ノードコンピュータに分割した秘密鍵の各部を送って、格納要求を指令する手段であり、監視ノードコンピュータは、匿名選択手段を備え、該匿名選択手段は、利用者のノードコンピュータからの格納要求の指令に基づき、自律分散ネットワークに接続された複数のノードコンピュータから、無作為に複数の匿名ノードコンピュータを選択し、そのアドレスを登録するとともに、選択した複数の匿名ノードコンピュータに、分割した秘密鍵の各部を分散して格納する手段であることを特徴とする電子割符型格納システムを提供する。
【0020】
利用者のノードコンピュータの自律分散型電子割符ウォレットは、ワンタイム暗号鍵によって監視ノードコンピュータによる認証を受けて、監視ノードコンピュータに分割した秘密鍵の各部の収集要求を指令する手段でもあり、監視ノードコンピュータの匿名ノード選択手段は、利用者のノードコンピュータからの収集要求の指令に基づき、複数の匿名ノードコンピュータから、分割した秘密鍵の各部を収集し、当該利用者のノードコンピュータに送信する手段でもあり、当該利用者のノードコンピュータの自律分散型電子割符ウォレットは、監視ノードコンピュータから送信された分割した秘密鍵の各部から、分割前の秘密鍵を再生する手段でもあることが好ましい。
【0021】
監視ノードコンピュータの匿名選択手段は、利用者のノードコンピュータに対するトランザクションの都度、該利用者に対するワンタイム暗号鍵を新たに発行し、保存するとともに、利用者のノードコンピュータに送信する手段でもあり、利用者のノードコンピュータの自律分散型電子割符ウォレットは、ワンタイム暗号鍵を保存して、次に監視ノードコンピュータにアクセスするための認証に供する手段でもあることが好ましい。
【0022】
監視ノードコンピュータの複数を監視ノードコンピュータ群として設けることが好ましい。
【0023】
利用者のノードコンピュータは、自律分散された複数の匿名ノードコンピュータへ、分割した秘密鍵の各部の格納するための書き込みを高速化するキャッシュ手段を有する構成であることが好ましい。
【0024】
自律分散型電子割符ウォレットは、自律分散ネットワークにおける多重ブロックチェーンが存在する環境でも動作できるカラムを持ち、ファイルベースのブロックチェーンとのハイブリット構成を有する環境下で動作する構成であることが好ましい。
【0025】
自律分散型電子割符ウォレットは、コンピュータ利用機器の各種のOSに対応し、コンピュータ、携帯端末、携帯電話、組み込みのセンサー端末又はロボットプロセッシングオートメーションに組み込まれた各種のプログラムにも接続可能である構成であることが好ましい。
【発明の効果】
【0026】
本発明によれば、秘密鍵を複数に分割し、また必要に応じ仮想通貨のデータも複数に分割し、分割された秘密鍵を自律分散ネットワーク上の複数の匿名ノードに分散して格納するので、外部からの不正アクセスに対して高いデータ流出耐性を発揮することができる。
【図面の簡単な説明】
【0027】
【
図1】本発明に係る電子割符型格納方法およびその運用システムの実施例の全体構成を説明するための自律分散ネットワークを示すブロック図である。
【
図2】上記実施例において、(a)は利用者のノードコンピュータの構成を示し、(b)は監視ノードコンピュータの構成を示す。
【
図3】上記実施例において、分割された秘密鍵の分散格納について、利用者のノードコンピュータ、監視ノードコンピュータおよび匿名ノードコンピュータの関連を示すブロック図である。
【
図4】上記実施例において、分割された秘密鍵の収集について、利用者のノードコンピュータ、監視ノードコンピュータおよび匿名ノードコンピュータの関連を示すブロック図である。
【
図5】上記実施例における電子割符型格納方法およびその運用システムにおける秘密鍵の分割、格納のプロセスを示すフローチャートである。
【
図6】上記実施例における電子割符型格納方法およびその運用システムにおける秘密鍵の収集、再生(復元)のプロセスを示すフローチャートである。
【
図7】上記実施例における秘密鍵を分割し、分散して格納する点を分かり易く説明する図である。
【
図8】上記実施例における秘密鍵が、トランザクションの都度、新たに選択された匿名ノードコンピュータに分散され格納される状態を示す表であり、(a)に示す格納状態が、トランザクション後、(b)に示す格納状態に、変更されていることを示している。
【発明を実施するための形態】
【0028】
本発明に係る電子割符型格納方法およびその運用システムを実施するための形態を実施例に基づき図面を参照して、以下説明する。
【実施例】
【0029】
(全体構成)
本発明に係る電子割符型格納方法およびその運用システムは、自律分散ネットワークに接続され、自律分散ネットワークを形成する複数のノードを備え、分散型のブロックチェーンを用いて、仮想通貨のトランザクションが可能な公知の自律分散ネットワークを前提とする方法およびその運用システムである。
【0030】
本発明に係る電子割符型格納方法およびその運用システムの特徴とする点は、仮想通貨の所有者の秘密鍵が分割され、複数の匿名ノードに分散されて格納される点である。
【0031】
ここで、ノードは、自律分散ネットワークに接続されている各種のコンピュータ利用機器を言うが、本実施例では、ノードとして、コンピュータ利用機器の一例である自律分散ネットワークに接続され自律分散ネットワークシステムを形成する自律分散ノードコンピュータをもって説明する。
【0032】
図1に示すように、自律分散ネットワーク1に接続されている複数の自律分散ノードコンピュータ2には、仮想通貨の取引に参加する利用者の自律分散ノードコンピュータ2(本明細書では、単に「利用者のノードコンピュータ」とも言う)と、中立した複数の監視用の自律分散ノードコンピュータ3(本明細書では、単に「監視ノードコンピュータ」とも言う)が含まれている。
【0033】
監視ノードコンピュータ3は、後記するが秘密鍵の格納および再構築のための収集の働きをするために自律分散ネットワークに接続されたノードコンピュータであるが、秘密鍵の格納および再構築のための収集するためには、少なくとも一つの監視ノードコンピュータ3を設ける必要がある。
【0034】
しかしながら、より安全かつ安定性をもって運用することを考慮すると、監視ノードコンピュータ3が一つしか存在しないと、万一、その監視ノードコンピュータ3に不具合が生じた場合には、秘密鍵の格納および収集が機能しなくなるので、監視ノードコンピュータ3は複数設け、監視ノードコンピュータ群4を構成することが好ましい。
【0035】
ところで、監視ノードコンピュータ群4が秘密鍵の格納および収集する構成において、監視ノードコンピュータ群4とその構成要素である監視ノードコンピュータ3の役割について、いろいろな態様がある。
【0036】
例えば、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3が、秘密鍵の格納および収集し、他の監視ノードコンピュータ3は、その複製を生成して保管し(バックアップし)、セキュリティを担保する役割を担う態様があり、本実施例では、この態様を前提としている。
【0037】
別の態様としては、後記する「秘密鍵の分割、格納の別の変形例」の項で説明するが、分割された秘密鍵が、複数の監視ノードコンピュータ3を経由して格納、収集されることで、監視ノードコンピュータ群4としてセキュリティを担保する態様がある。
【0038】
監視ノードコンピュータ群4の構成要素である一つの監視ノードコンピュータ3(本実施例では、「監視ノードコンピュータ群4の一つの監視ノードコンピュータ3」という)は、利用者のノードコンピュータの求めに応じて、該利用者の分割された秘密鍵を、分散して格納すべき複数の匿名ノードコンピュータを、多数の自律分散ノードコンピュータの中から、無作為に選択する匿名ノード選択手段を備えた自律分散ノードコンピュータである。
【0039】
「匿名ノードコンピュータ」とは、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3によって無作為に選択され、秘密鍵の分割された各部を分散して格納する自律分散ノードコンピュータであって、その秘密鍵を所有する所有者本人自体も知らない自律分散ノードコンピュータである。
【0040】
利用者の所有する所有データは、トランザクションに際しては、それぞれ利用者のウォレットに保管され、仮想通貨の取引を行おうとする利用者が、自己のウォレットにアクセスし、取引を行うためには、従来の仮想通貨の取引の場合と同様に、その利用者の秘密鍵を用いて電子署名をする必要がある。
【0041】
本明細書における利用者の行う取引としては、他の利用者との仮想通貨のやりとりだけでなく、自己のウォレットへの入出金、監視ノードコンピュータへのアクセス、データのやりとり等も含むものとする。仮想通貨を保管する手段であるウォレットは、自律分散ネットワークに参加するための手段である。
【0042】
本発明におけるウォレットを、本明細書では、自律分散型電子割符ウォレットという。一般的にウォレットとしては、仮想通貨の取引所のウォレット、ウェブウォレット、ソフトウェアウォレット、ハードウェアウォレット、ペーパーウォレット等が知られている。
【0043】
本実施例では、自律分散型電子割符ウォレット18としては、ソフトウェアウォレットを使用する場合で説明する。この自律分散型電子割符ウォレット18は、利用者のノードコンピュータを、仮想通貨の取引を行うために、自律分散ネットワークに参加し、本発明に係る自律分散型電子割符格納方法およびその運用システムを利用するための手段としての基本的な機能させるアプリケーションプログラムでもある。
【0044】
本実施例における自律分散型電子割符ウォレット18として使用するソフトウェアウォレットは、「自律分散型電子割符ウォレット実行プログラム」と呼ぶ。要するに、本発明における自律分散型電子割符ウォレット18は、本実施例では、自律分散型電子割符ウォレット実行プログラムとする。
【0045】
ところで、自律分散ノードコンピュータ2でもある利用者のノードコンピュータ6および監視ノードコンピュータ群4の全ての監視ノードコンピュータ3は、それぞれ
図2(a)、(b)に示すように、通常のコンピュータと同様に、データバス10に接続された、入力部11、出力部12、CPU13、メインメモリ14、記憶装置15を備えている。
【0046】
本実施例では、
図2(a)に示すように、記憶装置15に電子割符ウォレット実行プログラム用データ領域が設けられており、この電子割符ウォレット実行プログラム用データ領域に自律分散型電子割符ウォレット実行プログラムが格納されている。そして、自律分散型電子割符ウォレット実行プログラムの動作時には、メインメモリに呼び出され、他の分散型アプリケーションと同様に、同一の自律分散ネットワーク上で接続されて運用される。
【0047】
監視ノードコンピュータ群4を構成する監視ノードコンピュータ3は、「SOAノード」(Status Observation Agent)とも言い、匿名ノード選択手段20を備えている。匿名ノード選択手段20は、具体的には匿名ノード選択実行プログラムであり、
図2(b)に示すように、監視ノードコンピュータ3の匿名ノード選択実行プログラム用データ領域に格納されており、その動作時にはメインメモリ14に呼び出され、自律分散ネットワーク上で検索、アクセスできる状態で接続されて運用される。
【0048】
監視ノードコンピュータ群4を構成する監視ノードコンピュータ3の匿名ノード選択手段20(匿名ノード選択実行プログラム)は、当該監視ノードコンピュータ3を、
図3に示すように、利用者のノードコンピュータ6からのアクセスに対して、利用者の暗号鍵等に基づき、当該利用者の認証を行う手段として機能させるとともに、秘密鍵の格納の際に行う、次の(1)~(3)の動作を行う手段として機能させる。
【0049】
(1)アクセスしてきた利用者の格納要求の指令に応じて、当該利用者の分割された秘密鍵の各部を格納する複数の匿名ノードコンピュータ7を、無作為(ランダム)に選択し、その後、格納すべき分割された秘密鍵を送信するように利用者のノードコンピュータ6に依頼の指令をする。
【0050】
(2)選択した匿名ノードコンピュータ7のアドレスを保存するとともに、利用者のノードコンピュータ6から送信されてくる分割された秘密鍵の各部を、それぞれ複数の匿名ノードコンピュータ7に格納し、さらに当該利用者のノードコンピュータ6に対して、後記するワンタイム暗号鍵を発行し、保存する。
【0051】
なお、このワンタイム暗号鍵は、ワンタイム暗号鍵を利用者のノードコンピュータ6に送る際にトランザクションのブロックチェーンに書き込まれた利用者のアドレスと関連づけられている。
【0052】
(3)匿名ノードコンピュータの選択ないし格納の際に取得した、複数の匿名ノードコンピュータ7のアドレス、格納要求した利用者のノードコンピュータのアドレス、ワンタイム暗号鍵等のデータを監視ノードコンピュータ群4の他の全ての監視ノードコンピュータ3にも送信し、監視ノードコンピュータ群4を構成する全ての監視ノードコンピュータ3が共有して保存することを可能とする。
【0053】
さらに、匿名ノード選択手段20は、分割された秘密鍵の再生の際には、
図4に示すように、当該監視ノードコンピュータ3を次の(4)、(5)の動作する手段として機能させる。
(4)アクセスしてきた利用者の求めに応じて、複数の匿名ノードコンピュータ7のアドレスを検索し、複数の匿名ノードコンピュータ7に分散されて格納されていた分割された秘密鍵の各部を収集する。
【0054】
(5)収集した秘密鍵の各部を当該利用者のノードコンピュータ6に送信するとともに、新たなワンタイム暗号鍵を発行し、保存するとともに、当該利用者のノードコンピュータ6に送り、さらに監視ノードコンピュータ群4の他の監視ノードコンピュータ3にも送信し、監視ノードコンピュータ群4を構成する全ての監視ノードコンピュータ3が共有して保存することを可能とする。
【0055】
これによって、利用者のノードコンピュータ6は、収集された秘密鍵の各部に基づき、秘密鍵の再生が可能となる。また、利用者のノードコンピュータ6は、次回に監視ノードコンピュータ群4にアクセスする際には、監視ノードコンピュータ群4の全て又はいずれの監視ノードコンピュータ3にアクセスしてもよく、最初に応答した監視ノードコンピュータ3に通信し、ワンタイム暗号鍵を使用して認証を得て、より迅速なトランザクションが可能となる。
【0056】
なお、
図3および
図4では、自律分散ネットワークに接続された多数のノードコンピュータ2のうち、分割鍵を使用して取引を行う利用者のノードコンピュータ2を利用者のノードコンピュータ6として示し、分割された秘密鍵の各部の格納先であり、当該利用者も知らないノードコンピュータ2を匿名ノードコンピュータ7として示している。
【0057】
暗号鍵は、利用者が監視ノードコンピュータ群4の一つの監視ノードコンピュータ3を経由して、秘密鍵を匿名ノードコンピュータに格納し、また格納した秘密鍵を収集するために、利用者のノードコンピュータ6が、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3にアクセスして認証を得る際に必要である。
【0058】
この暗号鍵は、利用者のノードコンピュータ6が監視ノードコンピュータ3とのトランザクションの都度、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3によって、全く新しいものが発行され、一回使用した暗号鍵は、二度は使用できないので、本明細書では、「ワンタイム暗号鍵」(その都度、生成される暗号鍵)と言う。
【0059】
(自律分散型電子割符ウォレット)
電子割符型格納方法およびその運用システムの特徴的な構成は、利用者の自律分散型電子割符ウォレット実行プログラムは、秘密鍵を保管する際に、利用者のノードコンピュータが、当該利用者の秘密鍵を、複数に分割する手段として機能させる(
図5、
図6参照)。
【0060】
さらに、利用者の自律分散型電子割符ウォレット実行プログラムは、
図3に示すように、利用者のノードコンピュータを、監視ノードコンピュータ群4のなかで最初に応答してきた監視ノードコンピュータ3と通信し、秘密鍵の分割された各部を送り、複数の匿名ノードコンピュータ7に分散して格納する要求の指令をする手段として機能させる。このような構成によって、自律分散型電子割符ウォレットへの外部からの不正アクセスを守ることが可能となる。
【0061】
そして、利用者の自律分散型電子割符ウォレット実行プログラムは、自律分散ネットワークにおける多重ブロックチェーンの有無を記述できるカラムを有し、シングルブロックチェーンで構成された自律分散ネットワークで動作する。
【0062】
ここで、多重ブロックチェーンとは、ブロックチェーンが複数掛け合わせて一つの運用に使用される技術であり、例えば、ERC223とIPFS等、異なるプロトコルによるブロックチェーンの組み合わせである。自律分散型電子割符ウォレット実行プログラムは、プロトコルの異なる様々なブロックチェーンとの多重化環境において動作する機能を有する。
【0063】
なお、上記ERC223は、イーサリアム223(Ethereum)、RFC(Request for Comment)であり、IPFS(InterPlanetary File System)は、Protocol Labsにより開発が進められているP2Pネットワーク上で動作するハイパーメディアプロトコルである。
【0064】
また、自律分散型電子割符ウォレット実行プログラムは、仮想通貨の取引市場から生じる分散アプリケーション(DEXAPP)プログラム実行時に発生するファイルレベルのブロックチェーンの存在を判定し、存在する場合、そのファイルのある自律分散ノードコンピュータのアドレスを格納できることを特徴とする。
【0065】
即ち、IPFS(Interplanetary File System)等の、データ格納用のファイルの容量を分け与えることでブロックチェーンをつないでゆく方式が存在するが、その場合、大きなデータ容量までを格納できるので、分散型アプリケーションが使用するもしくは、所有するデータを格納したノードの書き込みアドレスを格納できる。
【0066】
(秘密鍵の分割、格納)
本発明の特徴的構成は、自律分散型電子割符ウォレット(自律分散型電子割符ウォレット実行プログラム)は、利用者のノードコンピュータ6を、
図3、
図5に示すように、秘密鍵を分割して、分割した秘密鍵を監視ノードコンピュータ群4の一つの監視ノードコンピュータ3に送る手段として機能させる点である。
【0067】
さらに、本発明の特徴的構成は、匿名ノード選択手段(匿名ノード選択実行プログラム)は、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3を、分割した秘密鍵を、
図4、
図6に示すように、無作為に選択した自律分散ネットワーク上の複数の匿名ノードコンピュータ7に書き込んで格納する手段として機能させることで、仮想通貨の外部からの不正なアクセス等に対するセキュリティの向上を図る点である。以下、本発明の特徴的構成について、さらに説明する。
【0068】
本発明において、自律分散型電子割符ウォレット実行プログラムで管理される秘密鍵は、入力されるデータ量に正比例して増大し、あらゆる種類の仮想通貨データに対して、常に英数字の文字列で表示され、分割された秘密鍵は暗号化されたフォーマットとなる。
【0069】
繰り返しとなるが、自律分散型電子割符ウォレット実行プログラムは、
図3、
図5に示すように、利用者ノードコンピュータを、暗号化された秘密鍵を、自動的に複数に分割する手段として機能させ、匿名ノード選択手段は、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3を、分割されたそれぞれを、自律分散システム上の無作為に選択された複数の匿名ノードコンピュータ7に書き込んで格納する手段として機能させるが、このような秘密鍵を分割するには、公知の電子割符のアルゴリズム、例えば、公知のシャミンの秘密分散法(Shamir Secure Sharing Scheme)等によって、3つの部分に分割する。
【0070】
秘密鍵は、利用者のノードコンピュータ6の自律分散型電子割符ウォレット実行プログラムによって、予め設定される任意の数に、分割可能である。例えば、電子割符のアルゴリズムで断片化されることで暗号化された秘密鍵が、3つに分割される。
【0071】
このように3つに分割された秘密鍵は、それぞれさらに3つに分散されて自律分散ネットワーク上の3つ複数の匿名ノードコンピュータ7に格納され、結局、秘密鍵の3つに分割された部分が、9つの複数の匿名ノードコンピュータ7に格納されることなる。
【0072】
より具体的には、利用者のノードコンピュータ6は、自律分散型電子割符ウォレット実行プログラムによって、秘密鍵を、公知の電子割符のアルゴリズム(例えば、シャミンの秘密分散法等)に基づき、暗号化(例.ABC)し、パート1~3の3つの部分(例.A、B、C)に分割する。
【0073】
そして、利用者のノードコンピュータ6が、自律分散型電子割符ウォレット実行プログラムによって、
図3に示すように、監視ノードコンピュータ3にアクセスし、分割した3つの部分(例.A、B、C)を送り、格納する格納要求を指令する。
【0074】
すると、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3は、匿名ノード選択手段20によって、
図4に示すように、複数の匿名ノードコンピュータ7を無作為に選択し、それらのアドレスを保存するとともに、分割された秘密鍵の3つの部分(例.A、B、C)を、選択された複数の匿名ノードコンピュータ7に格納する。
【0075】
この場合、
図7(a)に示すように、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3は、匿名ノード選択手段20によって、分割された秘密鍵の3つの部分(例.A、B、C)に対してそれぞれ3つ、即ち、9つの複数の匿名ノードコンピュータ7を無作為に選択し、上記9つの複数の匿名ノードコンピュータ7に、分割された秘密鍵の部分を自動的に分散して格納する手段とし機能する。
【0076】
即ち、3つの部分のうちのパート1(例.A)は、自律分散ネットワーク上の複数の第1~第9の匿名ノードコンピュータ7のうちの、第1の匿名ノードコンピュータ7、第4の匿名ノードコンピュータ7、および第7の匿名ノードコンピュータ7に、同時に(パート1であるAが互いに同じ内容A1、A2、A3として同時に)格納される。
【0077】
パート2(例.B)についても、同様にそれぞれ第2、5、8の匿名ノードコンピュータ7に、同時に(パート2であるBが互いに同じ内容B1、B2、B3として同時に)格納される。パート3(例.C)についても、同様にそれぞれ第3、6、9の匿名ノードコンピュータ7に、同時に(パート3であるCが互いに同じ内容C1、C2、C3として同時に)格納される。
【0078】
なお、利用者のノードコンピュータ6のアドレスと、秘密鍵の3つに分割された部分(パート1~3)と、分散して格納した匿名ノードコンピュータ7のアドレスと、の関係を、表として
図8に示す。
【0079】
秘密鍵の分割された各部は、トランザクションの都度、
図8(a)に示す表の状態から
図8(b)の表に示す状態に、新たに全く異なる匿名ノードコンピュータ7に分散され格納される。そして、
図8(a)、(b)の表にそれぞれ示すような関係は、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3のメインメモリ14のキャッシュテーブルに、トランザクションの都度、逐次記憶される。
【0080】
このように、パート1を、同時に複数(3つ)の複数の第1、4、7の匿名ノードコンピュータ7に格納する理由は、第1、4、7の匿名ノードコンピュータ7のうち、いずれかの匿名ノードコンピュータ7が利用できなくても、パート1を取得できるようにするためである。
【0081】
仮に、第1、4、7の匿名ノードコンピュータ7のうち、第1、4の匿名ノードコンピュータ7が、オンラインオフの状態(何かの理由で動作しない場合)であっても、第7の匿名ノードコンピュータ7からパート1を取得できる。
【0082】
例えば、上記の場合では、第1、4の匿名ノードコンピュータ7が、いずれもスマートフォンであり、いずれも盗難された、又は電源がオフになっていた場合でも、同じパート1が格納された第7の匿名ノードコンピュータ7から、パート1が取得可能となる。
【0083】
本発明によれば、このようにして、自律分散型電子割符ウォレット実行プログラムの秘密鍵を、自律分散ネットワーク上の分散環境に格納し、完璧な状態で保護することが可能である。
【0084】
ところで、本発明に係る自律分散型電子割符格納システムでは、複数の自律分散ノードコンピュータ2(利用者のノードコンピュータ6、匿名コンピュータ7および監視ノードコンピュータ群4を含む)が階層構造をもって存在する。自律分散ノードコンピュータ2のそれぞれの利用者は、互いの自律分散ノードコンピュータ2の存在については、全く分からず、意識していない。
【0085】
利用者が、利用者のノードコンピュータ6における自律分散型電子割符ウォレット実行プログラムを用いて、仮想通貨データを格納する場合は、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3が、匿名ノード選択手段20によって、自律分散ネットワーク環境内で、無作為に格納先の複数の匿名ノードコンピュータ7を選択し、そこへ分割された秘密鍵の各部を書き込んで分散格納を実行する。従って、利用者はその秘密鍵が、どの匿名ノードコンピュータ7に格納されているのか、全く把握できない。
【0086】
(秘密鍵の分割、格納の変形例)
上記のとおり、各自律分散自律分散ノードコンピュータ2は、3つの自律分散ノードコンピュータ2が一つの配列を成す構造を持っているため、3つの主要な自律分散ノードコンピュータ2を生成した後に、さらに3つに分けて9つの自律分散自律分散ノードコンピュータ2を構成するのに最も適した配置を有する。
【0087】
要するに、監視ノードコンピュータ3によって、3つの匿名ノードコンピュータ7が無作為に選択され、それら3つの匿名ノードコンピュータ7のそれぞれに対して、一つの配列を成す3つ組構成(Trio Node構成)を有する3つの匿名ノードコンピュータ7の組に、同じ内容の秘密鍵が書き込まれ、結果として、「3つの無作為に選択された匿名ノードコンピュータ7」×3(3つ組構成)で、合計9つの監視ノードコンピュータ3に分散されて格納されることが好ましい。
【0088】
秘密鍵が前記の3つに分割された部分は、自律分散ノードコンピュータで無作為に選択された利用者も知らない自律分散ネットワーク上の複数の匿名ノードコンピュータ7に分散して書き込み格納されるが、大量の所有データに係るトランザクションについて、より高いセキュリティを保証し、また紛失等を防止するために、秘密鍵を、必ずしも上記のとおり、全て、同じ種類の自律分散ネットワーク上の複数の複数の匿名ノードコンピュータ7に格納する形態でなくてもよい。
【0089】
即ち、大量の所有データに係るトランザクションについては、例えば、同じ内容の3つの秘密鍵を用意し、秘密鍵が3つに分割された各部分は、次のように格納される。
【0090】
一つめの秘密鍵は、利用者本人の自律分散型電子割符ウォレット実行プログラムをインストールした携帯電話に格納される。二つめの秘密鍵は、該携帯電話に接続できる独立したUSBドライブに格納される。これら二つの秘密鍵の格納は、紛失防止に備えてバックアップする趣旨であり、特に分割されていないので、完璧に秘匿しておく必要がある。
【0091】
そして、三つめの秘密鍵は、本発明に係る自律分散型電子割符格納方法およびその運用システムによって、さらに3つの部分に分割され、各部分は、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3で無作為に選択された分散ネットワーク内の複数の複数の匿名ノードコンピュータ7に、格納される。三つめの秘密鍵は、何らかのトランザクションを実行するときにはいつでも、すべての部分が結合されて再生される。
【0092】
(秘密鍵の分割、格納の別の変形例)
より確実に秘密鍵を、秘密裡に格納する別の変形例を、以下説明する。利用者のノードコンピュータ6において、その自律分散型電子割符ウォレット実行プログラムによって、秘密鍵を、例えば、3つまたは9つに分割し、3つに分割した各部または9つに分割した3つづつを、それぞれ監視ノードコンピュータ群の異なる3つの監視ノードコンピュータ3に送信する。
【0093】
3つの監視ノードコンピュータ3は、それぞれ利用者のノードコンピュータ6から受信した分割された秘密鍵の3つに分割した各部をさらに分割し、または9つに分割した3つづつを、無作為に選択した複数の匿名ノードコンピュータ7に格納する。
【0094】
このような方法およびその運用システムを採用すると、一つの監視ノードコンピュータ3に、分割された秘密鍵の各部の全てが集中した際の、第三者からの詐取の防止を図ることが可能となる。
【0095】
(メモリキャッシュ空間)
本発明の自律分散ノードコンピュータ2は、例えば、利用者のノードコンピュータ6については、その自律分散型電子割符ウォレット実行プログラムが、低遅延時間でのトランザクション(取引)を実行できるように、独自のメモリキャッシュ空間を実装する。
【0096】
このような構成とすることで、ワンタイム暗号鍵や、分散して格納した日時等、検索に必要な情報をキャッシュすることで、匿名ノードコンピュータ7へのアクセスを短時間で行うことが可能となり、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3を経由して、複数の匿名ノードコンピュータ7に格納されていた分割された秘密鍵を迅速に収集できる。
【0097】
なお、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3には、分割された秘密鍵の部分がそれぞれ格納されている複数の匿名ノードコンピュータ7のアドレス(IMEI、International Mobile Equipment Identity。 携帯電話の端末識別番号)が記述、登録されている。
【0098】
(分割された秘密鍵の再生)
自律分散型電子割符ウォレット実行プログラムによって、秘密鍵は、前記したとおり分割され、さらに監視ノードコンピュータ群4の一つの監視ノードコンピュータ3の匿名ノード選択手段20によって、それぞれ自律分散ネットワーク上の無作為に選択された複数の複数の匿名ノードコンピュータ7に格納されるが、利用者がトランザクションを実行したい場合は、分割された秘密鍵を収集し、秘密鍵の各部を結合して、元の秘密鍵を再生成(復元)する必要がある。
【0099】
そのために、概要は
図4、
図6に示し、詳細は後記する作用の項で説明するが、利用者のノードコンピュータ6は、利用者の自律分散型電子割符ウォレット実行プログラムによって、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3に秘密鍵の収集要求の指令をすると、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3は、匿名ノード選択手段によって、保存している複数の匿名ノードコンピュータ7のアドレスを検索する手段として機能する。
【0100】
さらに、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3は、匿名ノード選択手段20によって、検索した複数の匿名ノードコンピュータ7にアクセスして、それぞれに分散されて格納されている秘密鍵の分割された各部を、収集し、利用者のノードコンピュータ6に送る手段として機能する。
【0101】
秘密鍵の分割された各部を収集した利用者のノードコンピュータ6は、自律分散型電子割符ウォレット実行プログラムによって、秘密鍵の分割された各部を、電子割符のアルゴリズム(例えば、シャミンの秘密分散法等)に基づき結合し、秘密鍵を再生する手段として機能し、この秘密鍵によって、当該利用者のトランザクションの利用に供することが可能となる。
【0102】
秘密鍵は、分割して複数の匿名ノードコンピュータに格納されるが、次のトランザクションのために、収集されて結合され再生されるが、特に、秘密鍵については、このように分割、再生が繰り返されて使用される。
【0103】
分割されたそれぞれの値は、同じ大きさの情報量の暗号情報として算出される。秘密鍵を再構築するために必要となる部分の数m(m<又は=nであり、nは分割した部分の数である)であり、本実施例では、m=n=3で説明している。秘密鍵は、英数字で暗号化された文字列で生成される。
【0104】
(ワンタイム暗号鍵)
上記のとおり、秘密鍵の格納の際には、利用者のノードコンピュータ6からの格納作業のリクエストに最初に応答した監視ノードコンピュータ群4の一つの監視ノードコンピュータ3は、匿名ノード選択手段20によって、無作為に自律分散ネットワーク上の複数の匿名ノードコンピュータ7を選択し、利用者のノードコンピュータ6は、自律分散型電子割符ウォレット実行プログラムによって、分割した秘密鍵を、当該監視ノードコンピュータ3に送信し、当該監視ノードコンピュータ3は、分割した秘密鍵を、選択した複数の複数の匿名ノードコンピュータ7に書き込み格納する手段として、それぞれ機能をする。
【0105】
そして、秘密鍵の再生の際には、利用者のノードコンピュータ6からの秘密鍵の収集のリクエストに最初に応答した監視ノードコンピュータ群4の一つの監視ノードコンピュータ3は、匿名ノード選択手段20によって、複数の匿名ノードコンピュータ7から、分割した秘密鍵を収集し、利用者のノードコンピュータ6に送り、利用者のノードコンピュータ6は、自律分散型電子割符ウォレット実行プログラムによって、分割した秘密鍵から、元の秘密鍵を再生する手段として、それぞれ機能をする。
【0106】
このように、秘密鍵の格納と収集、再生に際して、利用者のノードコンピュータ6が監視ノードコンピュータ群4の最初に応答してきた一つの監視ノードコンピュータ3に通信し、秘密鍵の格納または収集を要求するためには、利用者には、その都度、ワンタイム暗号鍵が必要である。一度使用された暗号鍵の、二度使用はできない。
【0107】
このワンタイム暗号鍵は、利用者のノードコンピュータ6と監視ノードコンピュータ群4の一つの監視ノードコンピュータ3の間のやりとりとしてのトランザクションの完了の都度、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3が新たに発行し、利用者のノードコンピュータ6に保存され、また、監視ノードコンピュータ群4の上記やりとりした監視ノードコンピュータ3と、該監視ノードコンピュータ3から送信された監視ノードコンピュータ群4の他の監視ノードコンピュータ3にそれぞれ保存される。
【0108】
ところで、トランザクションの際に、通常、秘密鍵が公開鍵を生成し、公開鍵が公開アドレスを生成し、公開アドレスを当該トランザクションのブロックチェーンに書き込むが、ワンタイム暗号鍵は、ブロックチェーンの書き込まれている公開アドレスと関係づけられて(紐づけられて)、利用者のノードコンピュータ6と監視ノードコンピュータ群4の一つの監視ノードコンピュータ3に、それぞれ保存される。
【0109】
秘密鍵の格納と再生に際して、利用者のノードコンピュータ6から監視ノードコンピュータ群4の一つの監視ノードコンピュータ3にワンタイム暗号鍵を送ると、当該監視ノードコンピュータ3は、送られたワンタイム暗号鍵と当該監視ノードコンピュータ3に保存されているワンタイム暗号鍵の照合を行うとともに、当該利用者のノードコンピュータ6のアドレスと、該ワンタイム暗号鍵を発行に係るトランザクションのブロックチェーンに書き込まれている公開アドレスとの照合を行い、一致している場合は認証する。
【0110】
なお、
図8に示すように、監視ノードコンピュータ群4を構成する監視ノードコンピュータ3は、利用者のノードコンピュータのアドレスと、分割された秘密鍵の各部(パート)と、格納先きである複数の匿名ノードコンピュータ7のアドレスと、を関係づけて保存しておくが、さらに、図示はしないが、ワンタイム暗号鍵も関係づけて保存しておく。
【0111】
これによって、利用者のノードコンピュータ6から、ワンタイム暗号鍵を送って分割された秘密鍵の収集要求の指令があった際に、直ちに格納先きである複数の匿名ノードコンピュータ7が検索され、アクセス可能となる。
【0112】
(作用等)
本発明に係る電子割符型格納方法およびその運用システムについての作用およびプロセスを、
図5、
図6にフローチャートで示す。このフローチャートに沿って、一連のプロセスを説明する。
【0113】
利用者が自己の秘密鍵を、複数の匿名ノードコンピュータ7に分散して格納する場合は、当該利用者の自律分散型電子割符ウォレット実行プログラムは、秘密鍵を、例えば、公知のシャミンの秘密分散法等によって、暗号化し、暗号化した秘密鍵を、
図5に示すように、複数(例えば3つ)に分割する。
【0114】
そして利用者のノードコンピュータ6は、監視ノードコンピュータ群4の全ての監視ノードコンピュータ3にアクセスし、分割した秘密鍵の格納作業をリクエストする。利用者のノードコンピュータ6は、最初に応答のあった近傍の一つの監視ノードコンピュータ3と通信し、ワンタイム暗号鍵を使用して選択の依頼をする。
【0115】
具体的には、利用者のノードコンピュータ6は、自律分散型電子割符ウォレット実行プログラムによって、監視ノードコンピュータ7が生成したワンタイム暗号鍵を使用して監視ノードコンピュータ群4の最初に応答のあった近傍の一つの監視ノードコンピュータ3に通信し、分割した秘密鍵を格納すべき複数の匿名ノードコンピュータを選択(選出)して格納してもらう要求の指令をする。
【0116】
これに対して、監視ノードコンピュータ群4の最初に応答のあった監視ノードコンピュータ3は、送られてきたワンタイム暗号鍵と、自己が保存しているワンタイム暗号鍵とを照合し、かつ前回の利用者のノードコンピュータ6とのトランザクションのブロックチェーンに記録された当該暗号鍵の所有者のアドレス等を確認することで、認証する。
【0117】
そして、当該監視ノードコンピュータ3は、無作為に複数の匿名ノードコンピュータ7を選択し、そのアドレスを、例えば、メインメモリ14に設けたキャッシュテーブルに登録する。そして、当該監視ノードコンピュータ3は、選択後、利用者のノードコンピュータ6に対して、分割した秘密鍵の送信(送ってもらう)の依頼指令をする。
【0118】
この依頼指令に対して、利用者のノードコンピュータ6は、分割した秘密鍵を当該監視ノードコンピュータ3に送信し、分割した秘密鍵を選択した複数の匿名ノードコンピュータ7に格納してもらう格納の要求の指令をする。
【0119】
この格納の要求の指令を受けると、当該監視ノードコンピュータ3は、分割された秘密鍵を、それぞれ無作為(ランダム)に選択した複数の匿名ノードコンピュータ7に送信し、分散して書き込み格納する。
【0120】
また、当該監視ノードコンピュータ3は、利用者のノードコンピュータ6に対する新しいワンタイム暗号鍵を発行し、保存するとともに、利用者のノードコンピュータ6に送信する。
【0121】
以上の格納要求から格納へのステップは、
図5のフローチャートに示すように、「ワンタイム暗号鍵を使用して利用者のノードコンピュータ6の選択の依頼→監視(SOA)ノードコンピュータ群4の一つの監視ノードコンピュータ3の認証→匿名ノードコンピュータの選択→利用者のノードコンピュータ6格納要求の指令、分割した秘密鍵の送信」という順であり、その理由は、認証が得られた場合は、格納要求の指令および分割した秘密鍵の送信が可能となることである。
【0122】
なお、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3および利用者のノードコンピュータ6は、それぞれ新しいワンタイム暗号鍵を、メインメモリ14の例えばキャッシュテーブル等に保存しておく。このキャッシュテーブルは、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3と利用者のノードコンピュータ6の通信記録を保存する手段であり、自律分散型電子割符ウォレット実行プログラムとは別プログラムで管理される。
【0123】
これによって、第三者からの、匿名ノードコンピュータ7および利用者のノードコンピュータ6のそれぞれの自律分散型電子割符ウォレット実行プログラムへの攻撃によるワンタイム暗号鍵の盗難をより確実に防止する。
【0124】
監視ノードコンピュータ群4の一つの監視ノードコンピュータ3と利用者のノードコンピュータ6の間のトランザクション(ワンタイム暗号鍵の送信等)に際して、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3は、前記したとおり、秘密鍵から公開キーを生成し、さらに公開キーから公開アドレスを生成するが、この公開アドレスは、送信のトランザクションのブロックチェーンに記録されており、利用者のノードコンピュータ6に発行したワンタイム暗号鍵と紐付けられている。
【0125】
前記したとおり、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3は、匿名ノードコンピュータの選択ないし格納をして、匿名ノードコンピュータ7のアドレス、格納要求された利用者のノードコンピュータのアドレス、ワンタイム暗号鍵等のデータを取得して保存するが、監視ノードコンピュータ群4の他の監視ノードコンピュータ3にも送信することで、監視ノードコンピュータ群4を構成する全ての監視ノードコンピュータ3が共有して保存することが可能となる。
【0126】
ところで、利用者が、新たな仮想通貨の取引を行うためには、分割された複数の匿名ノードコンピュータ7に格納されている秘密鍵の各部を収集し、再生して使用する必要がある。
【0127】
そのために、複数の匿名ノードコンピュータ7に格納されている秘密鍵の収集要求の指令を行う必要があるが、
図6に示すように、利用者のノードコンピュータ6は、監視ノードコンピュータ群4の全ての監視ノードコンピュータ3にブロードキャストにて秘密鍵の収集のリクエストを配信する。
【0128】
このリクエストに対して最初に応答のあった近傍の監視ノードコンピュータ3に、利用者のノードコンピュータ6は通信を行い、ワンタイム暗号鍵を送信し、複数の匿名のノードコンピュータ7に格納されている分割された秘密鍵の収集要求の指令を行う。
【0129】
この指令に応答して、監視ノードコンピュータ群4の前記最初に応答のあった一つの監視ノードコンピュータ3は、ワンタイム暗号鍵を確認するとともに、そのワンタイム暗号鍵を利用者ノードコンピュータに送ったトランザクションのブロックチェーンに書き込まれた公開アドレスとワンタイム暗号鍵の関係を確認することによって、上記秘密鍵の収集要求の指令が当該利用者のノードコンピュータ6によるものであることを認証する。
【0130】
上記認証後、当該監視ノードコンピュータ3は、登録された複数の匿名ノードコンピュータ7のアドレスを読み出し、複数の匿名ノードコンピュータ7にアクセスして、格納されていた秘密鍵の分割された各部を収集し、利用者のノードコンピュータ6に送信する。その際、新たにワンタイム暗号鍵を発行して、利用者のノードコンピュータ6に送信し、また監視ノードコンピュータ群4の他の監視ノードコンピュータ3にも送信し、監視ノードコンピュータ群4で共有する。
【0131】
そして、利用者のノードコンピュータ6の自律分散型電子割符ウォレット実行プログラムは、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3によって収集され送信されてきた、分割された秘密鍵の全ての部分に基づいて、公知の電子割符のアルゴリズム、例えば、公知のシャミンの秘密分散法等によって、元の秘密鍵を再生する。
【0132】
利用者のノードコンピュータ6は、再生した秘密鍵で自己の自律分散型電子割符ウォレットの開封(自己の所有データへのアクセス)が可能となるとともに、再生した秘密鍵を利用して、利用者は、新たな仮想通貨の取引(トランザクション)を実行することができる。秘密鍵を利用して、利用者による新たな取引は、従来知られている仮想通貨と同様の取引手段によって行われる。
【0133】
取引が完了したら、利用者のノードコンピュータ6は、秘密鍵を分割し、上記新たに発行されたワンタイム暗号を使用して、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3に通信し、分割された秘密鍵は、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3によって、新たに無作為に選択した複数の匿名ノードコンピュータ7に、分散されて格納される。
【0134】
そして、トランザクションの都度、監視ノードコンピュータ群4の一つの監視ノードコンピュータ3によって、全く新しいワンタイム暗号鍵が発行されて、利用者のノードコンピュータ6に送られる。
【0135】
本発明に係る秘密鍵を自律分散システム上の複数の匿名ノードコンピュータ7に格納する電子割符型格納方法およびその運用システムによると、次のような効果が生じる。
【0136】
(1)自律分散型電子割符ウォレット実行プログラムは、一般的なスマートフォンで利用可能なアプリケーションとして使用できる。
【0137】
そして、例えば、口座の残高は公開データの一部であるため、従来の仮想通貨の取引と同様に、ブロックチェーンから簡単に取得できる。仮想通貨がERC20またはERC223標準に基づくイーサリアム(Ethereum9のトークン)の場合、仮想通貨の残高情報はイーサリアムブロックチェーンから入手可能である。
【0138】
(2)本発明における自律分散型電子割符ウォレット実行プログラムの仮想通貨データへの、外部からの不正アクセスに対して高い耐性を持つ。自律分散型電子割符ウォレット実行プログラムでは、秘密鍵が、例えば、3つに分割され、それぞれを自律分散ネットワーク上の、仮想通貨データを所有する利用者本人さえも知らない複数の匿名ノードコンピュータ7に分散されて格納される。
【0139】
従って、外部からの不正アクセスはもとより、利用者本人の不備、手違いで生じる仮想通貨データの流出を防ぐことを実現できる。そのために、この発明によって、様々な種類の仮想通貨データと、様々な法廷通貨、製品、財産、サービス等との交換もしくは、売買が、安全に、しかも低遅延時間で実行可能である。
【0140】
(3)3つの部分に分割されて複数の匿名ノードコンピュータ7に格納された秘密鍵の再生(復元)には、分割された3つの部分すべてに対して暗号鍵が必要となりそれらすべてを要求される。
【0141】
また、自律分散型電子割符ウォレット実行プログラムに新たに仮想通貨の情報を格納するときはいつでも、新たな暗号鍵が生成され、中立的な監視ノードコンピュータ群4の一つの監視ノードコンピュータ3によって、新たに複数の匿名ノードコンピュータ7が無作為に選択され、それらのアドレスが記述、登録され、それらの複数の匿名ノードコンピュータ7に秘密鍵が格納されて、高度の秘匿性が実現される。
【0142】
(4)本発明における自律分散型電子割符ウォレット実行プログラムは、様々なコンピュータ利用機器のOSに対応することを特徴とし、コンピュータ、携帯端末、携帯電話、組み込みのセンサー端末、RPA(ロボティック・プロセス・オートメーション)プログラムにも接続可能である。つまり、人とAIマシンともに所有権を紐付けが可能である。
【0143】
なお、自律分散型電子割符ウォレット実行プログラムは、秘密鍵を任意の個数に分割設定でき、その再生時の秘密鍵の必要個数の条件設定も柔軟に決定できる設計思想を持つ。このことで、様々な電子割符のアルゴリズムに対応できる。
【0144】
本発明に係る電子割符型格納方法およびその運用システムによれば、自律分散型電子割符ウォレット実行プログラムにおける本人特定を、自律分散型電子割符ウォレット実行プログラムにインストールされた自律分散ノードコンピュータのMACアドレス、IMEIアドレスはもちろん、その個人認証は、人間、もしくは、AIプログラムのどちらにも所有権を割り振りできることで、法定通貨、仮想通貨の双方を通貨データとして保持、取り扱える。
【0145】
自律分散型電子割符ウォレット実行プログラムは、自律分散ネットワークにおける多重ブロックチェーンが存在する環境でも動作できるカラムを持ち、ファイルベースのブロックチェーンとのハイブリット構成を有する環境下で動作することができるので、従来の仮想通貨ウォレットでは記述不可能な運用とそのコンテンツとの関係性を示すことができる
【0146】
本発明は以上のとおりであるが、自律分散型電子割符ウォレット実行プログラムは、本発明における特徴的な構成であるが、その特徴とする機能、効果を整理すると、次のとおりである。
【0147】
(a)秘密鍵を分割して自律分散ネットワークの複数の匿名ノードに分散して格納するので、外部からのハッキング等でデータを流出することが極めて困難となり、各利用者に安全な共有機能を供する。そして、単に個人のウォレットだけではなく、仮想通貨を取り扱うウェブサイト等のウォレットにおいても大きな効用を提供する仕組みとなる。
【0148】
(b)複数の種類の仮想通貨、例えば、ビットコイン(Bitcoin)やイーサリアム(Ethereum等)の取引に適用可能である。
(c)自律分散ネットワークに接続可能な、各種のコンピュータ利用機器で利用可能であるのでユーザーの利便性が確保可能である。
(d)ERC223とIPFS(インタープラネタリー・ファイルシステム)等異なるプロトコルによる多重ブロックチェーンの有無の検出機能である。
【0149】
以上、本発明に係る自律分散型電子割符格納方法およびその運用システムを実施するための形態を実施例に基づいて説明したが、本発明はこのような実施例に限定されるものではなく、特許請求の範囲に記載された技術的事項の範囲内でいろいろな実施例があることは言うまでもない。
【産業上の利用可能性】
【0150】
以上のとおりの本発明に係る自律分散型電子割符システムにおける自律分散型電子割符ウォレットとしては、具体的には、例えば、次のようないろいろな機器に適用可能である。
(1)OSがWindows(登録商標名)である汎用的PC
(2)OSとしてAndroid(登録商標名)を常駐した携帯電話及び携帯機器
(3)iOS(登録商標名)を常駐した携帯電話及び携帯機器
(4)リアルタイムOS常駐した機器
(5)センサーネットワーク端末
(6)WiFi内蔵型SDカードとその編集ソフトウェア
(7)家庭内マルチメディアサーバー
(8)アンティウィルス(Anti Virus)ソフトウェアを常駐した機器
(9)インターネットのファイアーウォール機器
(10)デジタルカメラ
(11)各種ネットワークスイッチ機器
【符号の説明】
【0151】
1 自律分散ネットワーク
2 自律分散ノードコンピュータ
3 監視ノードコンピュータ
4 監視ノードコンピュータ群
6 利用者のノードコンピュータ
7 匿名ノードコンピュータ
10 データバス
11 入力部
12 出力部
13 CPU
14 メインメモリ
15 記憶装置
20 匿名ノードコンピュータ選択手段