(57)【要約】【課題】各ノードの保有データ量を少なくすることができ、取引履歴の肥大化によるノードの容量逼迫の問題を解消または軽減することができる取引記録システムを提供する。【解決手段】階層化したネットワーク２０，３０と、複数のノード４０，５０とにより取引記録システム１０を構成し、最下層のネットワーク３０にはユーザノード４０を配置し、上位のネットワーク２０には振分ノード５０を配置した。ユーザノード４０は、自ネットワーク３０内での取引データを、自ネットワーク３０内の他のノードと共有記憶し、複数のネットワーク３０間に跨る取引データは、振分ノード５０に送信し、かつ、自ネットワーク３０内の他のノードと共有記憶する。振分ノード５０は、取引データを取引相手のユーザノード４０までリレー送信し、かつ、自分を経由した取引データを共有記憶する。【選択図】図１
2018067108.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ間の取引データを記録する複数のコンピュータにより構成された取引記録システムであって、
階層化された複数のネットワークと、これらの複数のネットワークの各々について少なくとも１つのノードが配置される状態で前記複数のネットワークに接続された複数のノードとを備え、
前記複数のノードには、取引の当事者となり得るユーザが操作するユーザノードと、各ユーザノードが前記複数のネットワークのうちのいずれに配置されているか並びに前記複数のネットワークの上下関係若しくはこれに代わるノードの上下関係を示す配置情報に従って前記取引データを取引相手のユーザノードに向けて送信する振分ノードとが含まれ、
前記複数のネットワークのうちの最下層のネットワークには、少なくとも１つの前記ユーザノードが配置され、
前記複数のネットワークのうちの最下層以外のネットワークには、少なくとも１つの前記振分ノードが配置され、
前記ユーザノードは、
自分が配置されている自ネットワークに前記取引相手のユーザノードも配置されている場合の自ネットワーク内での取引データについては、自ネットワークに配置された他のノードおよび自分で共有して記憶し、
前記取引相手のユーザノードが自ネットワークとは異なるネットワークに配置されている場合の複数のネットワーク間に跨る取引データについては、前記配置情報で定まる前記取引相手のユーザノードまでの送信経路上の振分ノードのうち自分に最も近い位置の振分ノードに向けて送信するとともに、自ネットワークに配置された他のノードおよび自分で共有して記憶する構成とされ、
前記振分ノードは、
前記ユーザノードまたは他の振分ノードから受信した前記取引データを、前記取引相手のユーザノードに向け、または前記配置情報で定まる前記取引相手のユーザノードまでの送信経路上の他の振分ノードのうち自分に最も近い位置の他の振分ノードに向けて送信するとともに、自ネットワークを経由した取引データを、自ネットワークに配置された他のノードおよび自分で共有して記憶する構成とされている
ことを特徴とする取引記録システム。
【請求項２】
前記ユーザノードは、
自分が有する配置情報記憶手段に記憶されている前記配置情報を用いるか、前記配置情報を記憶する配置情報記憶手段を有する他のノード若しくは他のシステムへの問合せによるか、配置情報取得アルゴリズムにより求めた前記配置情報によるか、または前記取引相手のユーザノードに該当するか否かについての自ネットワーク内の他のノードへの問合せにより、自ネットワークに、前記取引相手のユーザノードが配置されているか否かを判断する処理を実行する相手位置判断手段と、
この相手位置判断手段により前記取引相手のユーザノードが自ネットワークに配置されていないと判断した場合に、前記配置情報に従って決定した前記取引相手のユーザノードまでの送信経路上の振分ノードのうち自分に最も近い位置の振分ノードに向け、前記取引データを送信する処理を実行する引渡手段と、
前記取引相手のユーザノードとして、前記振分ノードから前記取引データを受信する処理を実行する受取手段と、
前記相手位置判断手段により前記取引相手のユーザノードが自ネットワークに配置されていると判断した場合、または前記受取手段により前記取引データを受信した場合に、前記取引データを含むブロックを生成し、生成したブロックを自ネットワーク内で承認して自ネットワークに配置された他のノードおよび自分で共有して記憶するためのブロック追加処理を実行するブロック追加手段と、
このブロック追加手段により生成および承認された前記ブロックを記憶するブロック記憶手段とを含んで構成され、
前記振分ノードは、
前記ユーザノードまたは他の振分ノードから前記取引データを受信した場合に、自分が有する配置情報記憶手段に記憶されている前記配置情報を用いるか、前記配置情報を記憶する配置情報記憶手段を有する他のノード若しくは他のシステムへの問合せによるか、配置情報取得アルゴリズムにより求めた前記配置情報によるか、前記取引相手のユーザノードを配下に有する振分ノードに該当するか否かについての自ネットワーク内の他のノードへの問合せによるか、または前記取引相手のユーザノードに該当するか否かについての自ネットワーク内の他のノードへの問合せにより、前記取引データを振り分けて送信する送信先のノードを決定し、前記取引相手のユーザノードに向け、または前記取引相手のユーザノードまでの送信経路上の他の振分ノードのうち自分に最も近い位置の他の振分ノードに向け、前記取引データを送信する処理を実行する振分手段と、
前記ユーザノードまたは他の振分ノードから受信した前記取引データを含むブロックを生成し、生成したブロックを自ネットワーク内で承認して自ネットワークに配置された他のノードおよび自分で共有して記憶するためのブロック追加処理を実行するブロック追加手段と、
このブロック追加手段により生成および承認された前記ブロックを記憶するブロック記憶手段とを含んで構成されている
ことを特徴とする請求項１に記載の取引記録システム。
【請求項３】
前記ユーザノードの前記引渡手段は、
（１）前記最下層以外のネットワークが１階層であり、かつ、前記最下層以外のネットワークに前記ユーザノードが配置されることのない場合には、
前記ユーザノードの前記相手位置判断手段により前記取引相手のユーザノードが自ネットワークに配置されていないと判断したときに、自分の上位のネットワークに配置された自分の上位の振分ノードに向け、前記取引データを送信する処理を実行し、
（２）前記最下層以外のネットワークが１階層であり、かつ、前記最下層以外のネットワークに前記ユーザノードが配置されることのある場合には、
前記ユーザノードの前記相手位置判断手段により前記取引相手のユーザノードが自ネットワークに配置されていないと判断したときに、自分の上位のネットワークに配置された自分の上位の振分ノードに向け、または自ネットワークに配置された振分ノードのうちの前記取引相手のユーザノードを配下に有する振分ノードに向け、前記取引データを送信する処理を実行し、
（３）前記最下層以外のネットワークが複数階層であり、かつ、前記最下層以外のネットワークに前記ユーザノードが配置されることのない場合には、
前記ユーザノードの前記相手位置判断手段により前記取引相手のユーザノードが自ネットワークに配置されていないと判断したときに、自分の直上のネットワークに配置された自分の直上の振分ノードに向け、前記取引データを送信する処理を実行し、
（４）前記最下層以外のネットワークが複数階層であり、かつ、前記最下層以外のネットワークに前記ユーザノードが配置されることのある場合には、
前記ユーザノードの前記相手位置判断手段により前記取引相手のユーザノードが自ネットワークに配置されていないと判断したときに、自分の直上のネットワークに配置された自分の直上の振分ノードに向け、または自ネットワークに配置された振分ノードのうちの前記取引相手のユーザノードを配下に有する振分ノードに向け、前記取引データを送信する処理を実行する構成とされ、
前記振分ノードの前記振分手段は、
（１）前記最下層以外のネットワークが１階層であり、かつ、前記最下層以外のネットワークに前記ユーザノードが配置されることのない場合には、
前記ユーザノードから前記取引データを受信した際に、自ネットワークに配置された他の振替ノードのうちの前記取引相手のユーザノードを配下に有する他の振替ノードに向け、前記取引データを送信するネットワーク内送信処理を実行するとともに、
自ネットワークに配置された他の振替ノードから前記取引データを受信した際に、下位のネットワークに配置された前記取引相手のユーザノードに向け、前記取引データを送信する下り方向送信処理を実行する構成とされ、
（２）前記最下層以外のネットワークが１階層であり、かつ、前記最下層以外のネットワークに前記ユーザノードが配置されることのある場合には、
下位のネットワークに配置された自分の下位の前記ユーザノードから前記取引データを受信した際に、前記取引相手のユーザノードが自ネットワークに配置されていないときには、自ネットワークに配置された他の振替ノードのうちの前記取引相手のユーザノードを配下に有する振替ノードに向け、前記取引データを送信するネットワーク内送信処理を実行するとともに、
自ネットワークに配置された他の振替ノードまたは自ネットワークに配置された前記ユーザノードから前記取引データを受信した際に、下位のネットワークに配置された前記取引相手のユーザノードに向け、前記取引データを送信する下り方向送信処理を実行する構成とされ、
（３）前記最下層以外のネットワークが複数階層であり、かつ、前記最下層以外のネットワークに前記ユーザノードが配置されることのない場合には、
前記ユーザノード、自ネットワークに配置された他の振分ノード、または直上若しくは直下のネットワークに配置された他の振分ノードから前記取引データを受信した際に、
自分の下位の全てのネットワークからなる配下のネットワークに前記取引相手のユーザノードが配置されているときには、直下のネットワークに配置された他の振分ノードのうちの前記取引相手のユーザノードを配下に有する他の振分ノードに向け、または前記取引相手のユーザノードに向け、前記取引データを送信する下り方向送信処理を実行し、
自ネットワークに配置された他の振替ノードの中に前記取引相手のユーザノードを配下に有する他の振替ノードがあるときには、当該他の振替ノードに向け、前記取引データを送信するネットワーク内送信処理を実行し、
配下のネットワークに前記取引相手のユーザノードが配置されておらず、かつ、自ネットワークに配置された他の振替ノードの中に前記取引相手のユーザノードを配下に有する他の振替ノードがないときには、直上のネットワークに配置された自分の直上の他の振分ノードに向け、前記取引データを送信する上り方向送信処理を実行する構成とされ、
（４）前記最下層以外のネットワークが複数階層であり、かつ、前記最下層以外のネットワークに前記ユーザノードが配置されることのある場合には、
直下のネットワークに配置された直下の前記ユーザノード、自ネットワークに配置された前記ユーザノード、自ネットワークに配置された他の振分ノード、または直上若しくは直下のネットワークに配置された他の振分ノードから前記取引データを受信した際に、前記取引相手のユーザノードが自ネットワークに配置されていないときであり、かつ、
配下のネットワークに前記取引相手のユーザノードが配置されているときには、直下のネットワークに配置された他の振分ノードのうちの前記取引相手のユーザノードを配下に有する他の振分ノードに向け、または前記取引相手のユーザノードに向け、前記取引データを送信する下り方向送信処理を実行し、
自ネットワークに配置された他の振替ノードの中に前記取引相手のユーザノードを配下に有する他の振替ノードがあるときには、当該他の振替ノードに向け、前記取引データを送信するネットワーク内送信処理を実行し、
配下のネットワークに前記取引相手のユーザノードが配置されておらず、かつ、自ネットワークに配置された他の振替ノードの中に前記取引相手のユーザノードを配下のネットワークに有する他の振替ノードがないときには、直上のネットワークに配置された自分の直上の他の振分ノードに向け、前記取引データを送信する上り方向送信処理を実行する構成とされている
ことを特徴とする請求項２に記載の取引記録システム。
【請求項４】
前記ユーザノードの前記ブロック追加手段は、
前記ユーザノードの前記ブロック記憶手段に記憶させる前記ブロックを生成する際には、同一のネットワークに配置された前記ユーザノード間の取引については、取引の当事者の双方のユーザノードの識別情報を含む前記取引データを用い、
異なるネットワークに配置された前記ユーザノード間の取引については、取引の当事者の一方のユーザノードの識別情報、および前記取引データの送受信に関与した前記振分ノードの識別情報を含む前記取引データを用いて、前記ブロックを生成するための処理を実行する構成とされ、
前記振分ノードの前記ブロック追加手段は、
前記振分ノードの前記ブロック記憶手段に記憶させる前記ブロックを生成する際には、前記取引データの送受信に関与した自分の識別情報、および送受信の相手の他の振分ノード若しくは前記取引相手のユーザノードの識別情報を用いて、前記ブロックを生成するための処理を実行する構成とされている
ことを特徴とする請求項１〜３のいずれかに記載の取引記録システム。
【請求項５】
前記ユーザノードは、
現在配置されているネットワークから異なるネットワークへの配置変更をする処理を実行する配置変更手段を備え、
前記振分ノードは、
前記ユーザノードの配置変更を支援する処理を実行する配置変更支援手段を備え、
前記ユーザノードの前記配置変更手段または前記振分ノードの前記配置変更支援手段は、前記配置変更に伴って、全てのノード若しくは一部のノードまたは他のシステムが有する配置情報記憶手段に記憶されている前記配置情報について、前記ユーザノードが移動元のネットワークに配置されている状態から移動先のネットワークに配置されている状態に変更する配置情報更新処理を実行する構成とされ、
前記ユーザノードの前記配置変更手段は、
ユーザによる移動先のネットワークの入力を受け付け、自分が現在配置されている移動元のネットワークの直上の振分ノードから移動先のネットワークの直上の振分ノードまでの送信経路上の任意の振分ノードまたは全ての振分ノードのうちの任意の振分ノードを配置変更用ノードとして選択し、自分が有する残高記憶手段に記憶されている当該ユーザの残高、当該ユーザのユーザノードの識別情報を用いて他のシステムに設けられた残高記憶手段から取得した当該ユーザの残高、自分が記憶している取引データに含まれる当該ユーザの残高、または自分が記憶している取引データを用いて算出される当該ユーザの残高、並びに、送信先となる前記配置変更用ノードの識別情報を含む配置変更アクション用の取引データを生成し、前記配置情報記憶手段に記憶されている移動前の状態の配置情報に従って決定した送信経路で、生成した前記配置変更アクション用の取引データを、前記配置変更用ノードに向けて送信する処理を実行し、
その後、前記配置情報更新処理を経て、移動先のネットワークに配置された移動後の状態で、前記配置変更用ノードから送信されてくる配置変更リターン用の取引データを受信する処理を実行する構成とされ、
前記振分ノードの前記配置変更支援手段は、
前記配置変更アクション用の取引データを受信した場合に、受信した前記配置変更アクション用の取引データに含まれている当該ユーザの残高、および送信先となる配置変更に係る前記ユーザノードの識別情報を含む前記配置変更リターン用の取引データを生成し、前記配置情報更新処理を経て前記配置情報記憶手段に記憶されている移動後の状態の配置情報に従って決定した送信経路で、生成した前記配置変更リターン用の取引データを、移動先のネットワークに配置された前記ユーザノードに向けて送信する処理を実行する構成とされている
ことを特徴とする請求項１〜４のいずれかに記載の取引記録システム。
【請求項６】
前記ユーザノードは、
自ネットワーク以外のネットワークに配置された前記取引相手のユーザノードに対して前記取引データを直接に送信することができる場合には、アクションを起こすユーザノードとして、前記配置情報で定まる前記取引相手のユーザノードまでの送信経路上の振分ノードのうち自分に最も近い位置の振分ノードに向けて前記取引データを送信する順方向送信処理と併せ、前記取引相手のユーザノードに前記取引データを直接に送信する直接送信処理を実行し、
前記取引相手のユーザノードとして、前記アクションを起こすユーザノードから前記直接送信処理により送信されてくる前記取引データを直接に受信した場合には、前記送信経路上の振分ノードおよびネットワークを逆方向に進むように前記取引データを送信する逆進処理を実行する構成とされ、
前記順方向送信処理による前記取引データと前記逆進処理による前記取引データとは、それぞれ前記送信経路上の中間に位置する予め定められた振分ノードまたはネットワークまで送信されるか、または、前記取引データに付帯する突合位置情報により指定される前記送信経路上の振分ノードまたはネットワークまで送信されるようになっている
ことを特徴とする請求項１〜５のいずれかに記載の取引記録システム。
【請求項７】
請求項１〜６のいずれかに記載の取引記録システムを構成するユーザノードとして、コンピュータを機能させるためのプログラム。
【請求項８】
請求項１〜６のいずれかに記載の取引記録システムを構成する振分ノードとして、コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザ間の取引データを記録する複数のコンピュータにより構成された取引記録システムおよびその構成要素であるノードに搭載されるプログラムに係り、例えば、金銭、ポイント、有価証券、債権債務、資産、労働力、コンテンツ等のような価値についての送金、決済、貯蓄、分配、付与、交換、移動、消費、貸借、売買、権利行使、義務履行等や、契約、コミュニケーション、ＩｏＴ（インターネット・オヴ・スィングズ）等の各種データの送受信などに利用できる。
【背景技術】
【０００２】
近年、ビットコインに代表される取引データの記録技術として、ブロックチェーンと呼ばれる技術が用いられるようになってきた。このブロックチェーンは、非中央集権的な取引記録技術であり、分散型台帳とも呼ばれている。通常、取引には第三者機関（政府や金融機関）による「信頼できる記録」が必要となる。これまでの技術では「信頼できる記録」を非中央集権的に行うことは不可能と考えられてきたが、ブロックチェーンはそれを可能とする。
【０００３】
従来のブロックチェーンは、１つのＰ２Ｐ（ピア・ツー・ピア）ネットワークに全てのノード（参加者）が参加しており、ネットワーク内の全取引記録を各ノードが保有している。
【０００４】
本発明に関連するＰ２Ｐネットワーク技術としては、例えば、ピア・グループ内で１または複数のピアが１つまたは複数の他のピアとメッセージを通信するＰ２Ｐ通信システム内のピアコンピュータにおいて、スケーラブルなピア・グループを使用して通信を最適化する技術が知られている（特許文献１参照）。また、Ｐ２Ｐ方式のネットワークにおいてセッションへの参加ノード数に上限がある場合であっても、当該上限を超えた数のノードで情報共有するための技術が知られている（特許文献２参照）。さらに、互いにＰ２Ｐ通信を行う複数のピアによって構成されたネットワークシステムにおいて、複数のピアは、属性情報に基づく関連性を有するピア同士でピア・グループを形成するとともに、複数のピアの中には、自己が形成するピア・グループ以外の１のピアが送信する接続要求を受信し、当該ピア・グループに属する接続要求の宛先である他のピアに、通信要求を中継する中継ピアが複数含まれているという技術が知られている（特許文献３参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−７８２５０号公報
【特許文献２】特開２０１２−８８９６０号公報
【特許文献３】特開２０１１−５５２８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、前述した通り、従来技術では、同一のＰ２Ｐネットワーク内の全取引記録を各ノードが保有しているため、各ノードの容量が逼迫してしまうことが想定される。すなわち、ノードの数が多ければ多いほど取引は多くなり、取引履歴の容量は肥大化するため、大規模サービスへのブロックチェーン活用を検討する際には、この課題を解決することが求められる。
【０００７】
なお、参考情報であるが、ビットコインおいては、参加ユーザは約８００万ユーザであり（２０１６年４月現在）、各ノードが６０ＧＢ（ギガバイト）の取引履歴を保持しており、今もそのサイズは増加を続けている。
【０００８】
本発明の目的は、各ノードの保有データ量を少なくすることができ、取引履歴の肥大化によるノードの容量逼迫の問題を解消または軽減することができる取引記録システムおよびプログラムを提供するところにある。
【課題を解決するための手段】
【０００９】
本発明は、ユーザ間の取引データを記録する複数のコンピュータにより構成された取引記録システムであって、
階層化された複数のネットワークと、これらの複数のネットワークの各々について少なくとも１つのノードが配置される状態で複数のネットワークに接続された複数のノードとを備え、
複数のノードには、取引の当事者となり得るユーザが操作するユーザノードと、各ユーザノードが前記複数のネットワークのうちのいずれに配置されているか並びに複数のネットワークの上下関係若しくはこれに代わるノードの上下関係を示す配置情報に従って取引データを取引相手のユーザノードに向けて送信する振分ノードとが含まれ、
複数のネットワークのうちの最下層のネットワークには、少なくとも１つのユーザノードが配置され、
複数のネットワークのうちの最下層以外のネットワークには、少なくとも１つの振分ノードが配置され、
ユーザノードは、
自分が配置されている自ネットワークに取引相手のユーザノードも配置されている場合の自ネットワーク内での取引データについては、自ネットワークに配置された他のノードおよび自分で共有して記憶し、
取引相手のユーザノードが自ネットワークとは異なるネットワークに配置されている場合の複数のネットワーク間に跨る取引データについては、配置情報で定まる取引相手のユーザノードまでの送信経路上の振分ノードのうち自分に最も近い位置の振分ノードに向けて送信するとともに、自ネットワークに配置された他のノードおよび自分で共有して記憶する構成とされ、
振分ノードは、
ユーザノードまたは他の振分ノードから受信した取引データを、取引相手のユーザノードに向け、または配置情報で定まる取引相手のユーザノードまでの送信経路上の他の振分ノードのうち自分に最も近い位置の他の振分ノードに向けて送信するとともに、自ネットワークを経由した取引データを、自ネットワークに配置された他のノードおよび自分で共有して記憶する構成とされていることを特徴とするものである。
【００１０】
ここで、「取引」には、例えば、金銭、ポイント、有価証券、債権債務、資産、労働力、コンテンツ等のような価値についての送金、決済、貯蓄、分配、付与、交換、移動、消費、貸借、売買、権利行使、義務履行等や、契約、コミュニケーション、ＩｏＴ等の各種データの送受信などが含まれる。
【００１１】
また、「複数のネットワークの各々について少なくとも１つのノードが配置される状態で」とは、原則として、あるいは通常は、いずれのネットワークにも複数のノードが接続される状態となるが、例外的に、あるいは一時的に、１つのノードしか接続されていない状態のネットワークがあってもよい趣旨である。
【００１２】
さらに、「階層化された複数のネットワーク」を構成する各ネットワークは、いずれもＰ２Ｐネットワークであるが、例えばインターネットや通信事業者が提供する各種のサービス網等の公衆ネットワークを使って形成された仮想的なネットワーク（インターネット上にＶＰＮ（バーチャル・プライベート・ネットワーク）を用いて構築されたイントラネットを含む。）でもよく、例えばＬＡＮ（ローカル・エリア・ネットワーク）等の内部ネットワークのように物理的に閉じたネットワークでもよく、それらの混在型でもよい。
【００１３】
そして、「ユーザノード」における「自ネットワークに配置された他のノードおよび自分で共有して記憶し」の「他のノード」には、ユーザノードでもなく振分ノードでもないノード（以下、メモリノードという。）が含まれていてもよい。
【００１４】
また、「振分ノード」における「自ネットワークに配置された他のノードおよび自分で共有して記憶する」の「他のノード」には、メモリノードが含まれていてもよく、さらに、ユーザノードが含まれていてもよい。ユーザノードが含まれている場合は、後述する混在型である。
【００１５】
さらに、「振分ノード」を構成するコンピュータは、「ユーザノード」を兼任してもよい。
【００１６】
このような本発明の取引記録システムにおいては、各ノードは、自分が配置されている自ネットワーク内（自ネットワークに接続配置されている各ノードからなるグループ内）のノードが関与した取引データのみを保有することになる。なお、ここでの保有は、自ネットワークに接続配置された各ノードで共有して記憶することである。
【００１７】
すなわち、ユーザノードについては、自ネットワーク内での取引データ（振分データが介在しなかった場合の取引データ）と、複数のネットワーク間に跨る取引データのうちの自ネットワーク内のノード（ユーザノードと振分ノードとが同一のネットワークに配置されることのない完全分離型では、ユーザノードとなるが、それらが同一のネットワークに配置されることのある混在型では、振分ノードの場合もある。）が関与した取引データとを保有する。
【００１８】
また、振分ノードは、自ネットワークを経由した取引データを保有する。自ネットワークを経由した取引データには、自分が関与した取引データと、自ネットワーク内の他の振分ノードが関与した取引データとがあり、さらに、混在型では、自ネットワーク内のユーザノードが関与した取引データである場合もある。
【００１９】
従って、各ノードは、自分が配置されている自ネットワーク以外のネットワーク内での取引データ（自ネットワーク以外のネットワーク内で取引が完結した場合の取引データ）や、自ネットワークを経由していない取引データ（自ネットワーク以外のネットワークのみを経由した取引データ）については、保有しない状態となる。
【００２０】
このため、各ノードが保有するデータ量は少なくなる。また、同一のネットワークに配置された各ノードにより形成されたグループでは、いずれのグループにおいても、そのグループの全参加者（全ノード）が取引履歴を保有（共有状態で記憶）するため、既存のブロックチェーン技術が持つ「改ざんしにくい」という特性の損失は少ない。そして、各ノードの保有データ量が少なくなるため、各ノードの容量逼迫の問題が解消または軽減され、これらにより前記目的が達成される。
【００２１】
＜ユーザノード、振分ノードの詳細構成＞
【００２２】
また、前述した取引記録システムにおいて、
ユーザノードは、
自分が有する配置情報記憶手段に記憶されている配置情報を用いるか、配置情報を記憶する配置情報記憶手段を有する他のノード若しくは他のシステムへの問合せによるか、配置情報取得アルゴリズムにより求めた配置情報によるか、または取引相手のユーザノードに該当するか否かについての自ネットワーク内の他のノードへの問合せにより、自ネットワークに、取引相手のユーザノードが配置されているか否かを判断する処理を実行する相手位置判断手段と、
この相手位置判断手段により取引相手のユーザノードが自ネットワークに配置されていないと判断した場合に、配置情報に従って決定した取引相手のユーザノードまでの送信経路上の振分ノードのうち自分に最も近い位置の振分ノードに向け、取引データを送信する処理を実行する引渡手段と、
取引相手のユーザノードとして、振分ノードから取引データを受信する処理を実行する受取手段と、
相手位置判断手段により取引相手のユーザノードが自ネットワークに配置されていると判断した場合、または受取手段により取引データを受信した場合に、取引データを含むブロックを生成し、生成したブロックを自ネットワーク内で承認して自ネットワークに配置された他のノードおよび自分で共有して記憶するためのブロック追加処理を実行するブロック追加手段と、
このブロック追加手段により生成および承認されたブロックを記憶するブロック記憶手段とを含んで構成され、
振分ノードは、
ユーザノードまたは他の振分ノードから取引データを受信した場合に、自分が有する配置情報記憶手段に記憶されている配置情報を用いるか、配置情報を記憶する配置情報記憶手段を有する他のノード若しくは他のシステムへの問合せによるか、配置情報取得アルゴリズムにより求めた配置情報によるか、取引相手のユーザノードを配下に有する振分ノードに該当するか否かについての自ネットワーク内の他のノードへの問合せによるか、または取引相手のユーザノードに該当するか否かについての自ネットワーク内の他のノードへの問合せにより、取引データを振り分けて送信する送信先のノードを決定し、取引相手のユーザノードに向け、または取引相手のユーザノードまでの送信経路上の他の振分ノードのうち自分に最も近い位置の他の振分ノードに向け、取引データを送信する処理を実行する振分手段と、
ユーザノードまたは他の振分ノードから受信した取引データを含むブロックを生成し、生成したブロックを自ネットワーク内で承認して自ネットワークに配置された他のノードおよび自分で共有して記憶するためのブロック追加処理を実行するブロック追加手段と、
このブロック追加手段により生成および承認された前記ブロックを記憶するブロック記憶手段とを含んで構成されていることが望ましい。
【００２３】
ここで、「ユーザノード」の「配置情報を記憶する配置情報記憶手段を有する他のノード若しくは他のシステムへの問合せ」における「他のノード」には、自ネットワーク内の他のノードである場合と、直上のネットワークに配置された自分の直上の振分ノードである場合とが含まれる。
【００２４】
このようにユーザノードを、相手位置判断手段、引渡手段、受取手段、ブロック追加手段、およびブロック記憶手段を含む構成とし、かつ、振分ノードを、振分手段、ブロック追加手段、およびブロック記憶手段を含む構成とした場合には、相手位置判断手段により、自ネットワーク内での取引で済ませることができるか否かの判断をし、自ネットワーク内での取引で済ませることができるときには、自ネットワーク内での処理で済ませ、自ネットワーク内での取引で済ませることができないときには、取引相手のユーザノードまでの送信経路上の振分ノードを経由させて取引データの伝達を行うので、データを「改ざんしにくい」というブロックチェーンの本来的な効果を発揮させつつ、各ノードの保有データ量を少なくするという処理を、より確実に実現することが可能となる。
【００２５】
＜取引データの送信処理の詳細＞
【００２６】
さらに、より具体的には、次のような構成をとることができる。この際、（１）最下層以外のネットワークが１階層であり、かつ、最下層以外のネットワークにユーザノードが配置されることのない完全分離型である場合と、（２）最下層以外のネットワークが１階層であり、かつ、最下層以外のネットワークにユーザノードが配置されることのある混在型である場合と、（３）最下層以外のネットワークが複数階層であり、かつ、最下層以外のネットワークにユーザノードが配置されることのない完全分離型である場合と、（４）最下層以外のネットワークが複数階層であり、かつ、最下層以外のネットワークにユーザノードが配置されることのある混在型である場合とに分けて、送信処理を記載している。
【００２７】
このうち、（１）、（２）の場合は、最下層以外のネットワークが１階層であるが、最初から１階層しかないことを前提としてアルゴリズムを記載している。一方、（３）、（４）の場合は、最下層以外のネットワークが複数階層であるが、このアルゴリズムは、最下層以外のネットワークが、たまたま１階層になった場合でも使用することができる。従って、（３）、（４）の場合は、（１）、（２）の場合に比べ、複雑なアルゴリズムになっているが、（３）、（４）の場合において、最下層以外のネットワークが、たまたま１階層になった場合を考えると、（１）、（２）の場合と同じ送信処理を行うことになる。よって、（１）、（２）の場合のアルゴリズムは、特定状況下の（３）、（４）の場合のアルゴリズムと等価である。
【００２８】
すなわち、より具体的には、前述したように、ユーザノードを、相手位置判断手段、引渡手段、受取手段、ブロック追加手段、およびブロック記憶手段を含む構成とし、かつ、振分ノードを、振分手段、ブロック追加手段、およびブロック記憶手段を含む構成とした場合において、
ユーザノードの引渡手段は、
（１）最下層以外のネットワークが１階層であり、かつ、最下層以外のネットワークにユーザノードが配置されることのない場合には、
ユーザノードの相手位置判断手段により取引相手のユーザノードが自ネットワークに配置されていないと判断したときに、自分の上位のネットワークに配置された自分の上位の振分ノードに向け、取引データを送信する処理を実行し、
（２）最下層以外のネットワークが１階層であり、かつ、最下層以外のネットワークにユーザノードが配置されることのある場合には、
ユーザノードの相手位置判断手段により取引相手のユーザノードが自ネットワークに配置されていないと判断したときに、自分の上位のネットワークに配置された自分の上位の振分ノードに向け、または自ネットワークに配置された振分ノードのうちの取引相手のユーザノードを配下に有する振分ノードに向け、取引データを送信する処理を実行し、
（３）最下層以外のネットワークが複数階層であり、かつ、最下層以外のネットワークにユーザノードが配置されることのない場合には、
ユーザノードの相手位置判断手段により取引相手のユーザノードが自ネットワークに配置されていないと判断したときに、自分の直上のネットワークに配置された自分の直上の振分ノードに向け、取引データを送信する処理を実行し、
（４）最下層以外のネットワークが複数階層であり、かつ、最下層以外のネットワークにユーザノードが配置されることのある場合には、
ユーザノードの相手位置判断手段により取引相手のユーザノードが自ネットワークに配置されていないと判断したときに、自分の直上のネットワークに配置された自分の直上の振分ノードに向け、または自ネットワークに配置された振分ノードのうちの取引相手のユーザノードを配下に有する振分ノードに向け、取引データを送信する処理を実行する構成とされ、
振分ノードの振分手段は、
（１）最下層以外のネットワークが１階層であり、かつ、最下層以外のネットワークにユーザノードが配置されることのない場合には、
ユーザノードから取引データを受信した際に、自ネットワークに配置された他の振替ノードのうちの取引相手のユーザノードを配下に有する他の振替ノードに向け、取引データを送信するネットワーク内送信処理を実行するとともに、
自ネットワークに配置された他の振替ノードから取引データを受信した際に、下位のネットワークに配置された取引相手のユーザノードに向け、取引データを送信する下り方向送信処理を実行する構成とされ、
（２）最下層以外のネットワークが１階層であり、かつ、最下層以外のネットワークにユーザノードが配置されることのある場合には、
下位のネットワークに配置された自分の下位のユーザノードから取引データを受信した際に、取引相手のユーザノードが自ネットワークに配置されていないときには、自ネットワークに配置された他の振替ノードのうちの取引相手のユーザノードを配下に有する振替ノードに向け、取引データを送信するネットワーク内送信処理を実行するとともに、
自ネットワークに配置された他の振替ノードまたは自ネットワークに配置されたユーザノードから取引データを受信した際に、下位のネットワークに配置された取引相手のユーザノードに向け、取引データを送信する下り方向送信処理を実行する構成とされ、
（３）最下層以外のネットワークが複数階層であり、かつ、最下層以外のネットワークにユーザノードが配置されることのない場合には、
ユーザノード、自ネットワークに配置された他の振分ノード、または直上若しくは直下のネットワークに配置された他の振分ノードから取引データを受信した際に、
自分の下位の全てのネットワークからなる配下のネットワークに取引相手のユーザノードが配置されているときには、直下のネットワークに配置された他の振分ノードのうちの取引相手のユーザノードを配下に有する他の振分ノードに向け、または取引相手のユーザノードに向け、取引データを送信する下り方向送信処理を実行し、
自ネットワークに配置された他の振替ノードの中に取引相手のユーザノードを配下に有する他の振替ノードがあるときには、当該他の振替ノードに向け、取引データを送信するネットワーク内送信処理を実行し、
配下のネットワークに取引相手のユーザノードが配置されておらず、かつ、自ネットワークに配置された他の振替ノードの中に取引相手のユーザノードを配下に有する他の振替ノードがないときには、直上のネットワークに配置された自分の直上の他の振分ノードに向け、取引データを送信する上り方向送信処理を実行する構成とされ、
（４）最下層以外のネットワークが複数階層であり、かつ、最下層以外のネットワークにユーザノードが配置されることのある場合には、
直下のネットワークに配置された直下のユーザノード、自ネットワークに配置されたユーザノード、自ネットワークに配置された他の振分ノード、または直上若しくは直下のネットワークに配置された他の振分ノードから取引データを受信した際に、取引相手のユーザノードが自ネットワークに配置されていないときであり、かつ、
配下のネットワークに取引相手のユーザノードが配置されているときには、直下のネットワークに配置された他の振分ノードのうちの取引相手のユーザノードを配下に有する他の振分ノードに向け、または取引相手のユーザノードに向け、取引データを送信する下り方向送信処理を実行し、
自ネットワークに配置された他の振替ノードの中に取引相手のユーザノードを配下に有する他の振替ノードがあるときには、当該他の振替ノードに向け、取引データを送信するネットワーク内送信処理を実行し、
配下のネットワークに取引相手のユーザノードが配置されておらず、かつ、自ネットワークに配置された他の振替ノードの中に取引相手のユーザノードを配下のネットワークに有する他の振替ノードがないときには、直上のネットワークに配置された自分の直上の他の振分ノードに向け、取引データを送信する上り方向送信処理を実行する構成とすることができる。
【００２９】
＜ブロックへの取引データの格納態様＞
【００３０】
また、以上に述べた取引記録システムにおいて、
ユーザノードのブロック追加手段は、
ユーザノードのブロック記憶手段に記憶させるブロックを生成する際には、同一のネットワークに配置されたユーザノード間の取引については、取引の当事者の双方のユーザノードの識別情報を含む取引データを用い、
異なるネットワークに配置されたユーザノード間の取引については、取引の当事者の一方のユーザノードの識別情報、および取引データの送受信に関与した振分ノードの識別情報を含む取引データを用いて、ブロックを生成するための処理を実行する構成とされ、
振分ノードのブロック追加手段は、
振分ノードのブロック記憶手段に記憶させるブロックを生成する際には、取引データの送受信に関与した自分の識別情報、および送受信の相手の他の振分ノード若しくは取引相手のユーザノードの識別情報を用いて、ブロックを生成するための処理を実行する構成とされていることが望ましい。
【００３１】
このようにブロックに取引データを格納する際に、原要求の取引データ（アクションを起こしたユーザノードの識別情報を送信元情報として含み、かつ、取引相手のユーザノードの識別情報を送信先情報として含む。）のままではなく、振分ノードの識別情報を使った置換処理を行う構成とした場合には、それぞれのノードに記録される取引データの中に、送信元情報や送信先情報として、自ネットワーク内のノードの識別情報か、または自分の直上の振分ノードの識別情報が含まれる状態となる。従って、取引データの中に、自ネットワーク内のノードの識別情報が２つ含まれていれば、自ネットワーク内で完結させた取引ということになり、自分の直上の振分ノードの識別情報が含まれていれば、自ネットワークの外部への引き渡しがあった取引、または自ネットワークの外部からの受け取りがあった取引ということになる。このため、アクションを起こしたユーザノードから取引相手のユーザノードへ金銭やポイント等の価値を送信する場合に、形式上、ノードからノードへと次々に金銭やポイント等の価値をリレーしていった形態をとることが可能となる。
【００３２】
なお、置換されたノードの識別情報を含む取引データを含むブロックについては、そのブロックの中に、置換されていない原要求の取引データが含まれていてもよい。
【００３３】
＜ユーザノードの配置変更（異なるネットワークへの移動）＞
【００３４】
さらに、以上に述べた取引記録システムにおいて、
ユーザノードは、
現在配置されているネットワークから異なるネットワークへの配置変更をする処理を実行する配置変更手段を備え、
振分ノードは、
ユーザノードの配置変更を支援する処理を実行する配置変更支援手段を備え、
ユーザノードの配置変更手段または振分ノードの配置変更支援手段は、配置変更に伴って、全てのノード若しくは一部のノードまたは他のシステムが有する配置情報記憶手段に記憶されている配置情報について、ユーザノードが移動元のネットワークに配置されている状態から移動先のネットワークに配置されている状態に変更する配置情報更新処理を実行する構成とされ、
ユーザノードの配置変更手段は、
ユーザによる移動先のネットワークの入力を受け付け、自分が現在配置されている移動元のネットワークの直上の振分ノードから移動先のネットワークの直上の振分ノードまでの送信経路上の任意の振分ノードまたは全ての振分ノードのうちの任意の振分ノードを配置変更用ノードとして選択し、自分が有する残高記憶手段に記憶されている当該ユーザの残高、当該ユーザのユーザノードの識別情報を用いて他のシステムに設けられた残高記憶手段から取得した当該ユーザの残高、自分が記憶している取引データに含まれる当該ユーザの残高、または自分が記憶している取引データを用いて算出される当該ユーザの残高、並びに、送信先となる配置変更用ノードの識別情報を含む配置変更アクション用の取引データを生成し、配置情報記憶手段に記憶されている移動前の状態の配置情報に従って決定した送信経路で、生成した配置変更アクション用の取引データを、配置変更用ノードに向けて送信する処理を実行し、
その後、配置情報更新処理を経て、移動先のネットワークに配置された移動後の状態で、配置変更用ノードから送信されてくる配置変更リターン用の取引データを受信する処理を実行する構成とされ、
振分ノードの配置変更支援手段は、
配置変更アクション用の取引データを受信した場合に、受信した配置変更アクション用の取引データに含まれている当該ユーザの残高、および送信先となる配置変更に係るユーザノードの識別情報を含む配置変更リターン用の取引データを生成し、配置情報更新処理を経て配置情報記憶手段に記憶されている移動後の状態の配置情報に従って決定した送信経路で、生成した配置変更リターン用の取引データを、移動先のネットワークに配置されたユーザノードに向けて送信する処理を実行する構成とされていることが望ましい。
【００３５】
このようにユーザノードに配置変更手段を設けるとともに、振分ノードに配置変更支援手段を設けた構成とした場合には、ユーザノードの識別情報を変更することなく、ユーザノードが配置されるネットワークを、異なるネットワークに変更することが可能となる。すなわち、所属ネットワークを移動させるユーザノードについて、新しい識別番号を付与しなくても、配置変更を実現することが可能となる。また、配置変更用ノードを、ユーザノードではなく、振分ノードの中から選択するので、当該ユーザ（配置変更に係るユーザノードを操作するユーザ）以外のユーザの残高が、配置変更に伴って不自然に増減する事態は避けられる。そして、配置変更用ノードを、振分ノードの中から選択するので、通常の取引の処理を利用して配置変更を実現することが可能となる。
【００３６】
＜順方向送信処理、および逆進処理を行う場合＞
【００３７】
また、以上に述べた取引記録システムにおいて、
ユーザノードは、
自ネットワーク以外のネットワークに配置された取引相手のユーザノードに対して取引データを直接に送信することができる場合には、アクションを起こすユーザノードとして、配置情報で定まる取引相手のユーザノードまでの送信経路上の振分ノードのうち自分に最も近い位置の振分ノードに向けて取引データを送信する順方向送信処理と併せ、取引相手のユーザノードに取引データを直接に送信する直接送信処理を実行し、
取引相手のユーザノードとして、アクションを起こすユーザノードから直接送信処理により送信されてくる取引データを直接に受信した場合には、送信経路上の振分ノードおよびネットワークを逆方向に進むように取引データを送信する逆進処理を実行する構成とされ、
順方向送信処理による取引データと逆進処理による取引データとは、それぞれ送信経路上の中間に位置する予め定められた振分ノードまたはネットワークまで送信されるか、または、取引データに付帯する突合位置情報により指定される送信経路上の振分ノードまたはネットワークまで送信される構成としてもよい。
【００３８】
ここで、「自ネットワーク以外のネットワークに配置された取引相手のユーザノードに対して取引データを直接に送信することができる場合」とあるのは、取引の当事者ユーザの操作するユーザノード同士が、異なるネットワークに接続されていてもＰ２Ｐ通信を行うことができないわけではないからであり、例えば、本発明におけるネットワークは、前述したように物理的に同じネットワークに形成された仮想のネットワークの場合もあるので、そのような場合には直接送信が可能な場合がある。
【００３９】
このように順方向送信処理、および逆進処理を行う構成とした場合には、取引相手のユーザノードまでの送信経路上の各ネットワークに配置された各ノードでのブロックの生成、承認、保存（共有状態での記憶）のための処理を、全体として早期に完了させることが可能となる。特に、送信経路上の振分ノードやネットワークの数が多いときには、その効果が顕著となる。
【００４０】
＜プログラムの発明＞
【００４１】
そして、本発明のプログラムは、以上に述べた取引記録システムを構成するユーザノードとして、コンピュータを機能させるためのものである。
【００４２】
また、本発明のプログラムは、以上に述べた取引記録システムを構成する振分ノードとして、コンピュータを機能させるためのものである。
【００４３】
なお、以上に述べたプログラムまたはその一部は、例えば、光磁気ディスク（ＭＯ）、コンパクトディスク（ＣＤ）、デジタル・バーサタイル・ディスク（ＤＶＤ）、フレキシブルディスク（ＦＤ）、磁気テープ、読出し専用メモリ（ＲＯＭ）、電気的消去および書換可能な読出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ハードディスク、ソリッドステートドライブ（ＳＳＤ）、フラッシュディスク等の記録媒体に記録して保存や流通等させることが可能であるとともに、例えば、ＬＡＮ、ＭＡＮ、ＷＡＮ、インターネット、イントラネット、エクストラネット等の有線ネットワーク、あるいは無線通信ネットワーク、さらにはこれらの組合せ等の伝送媒体を用いて伝送することが可能であり、また、搬送波に載せて搬送することも可能である。さらに、上記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。
【発明の効果】
【００４４】
以上に述べたように本発明によれば、各ノードは、自ネットワーク内のノードが関与した取引データのみを保有することになり、自ネットワーク以外のネットワーク内での取引データや、自ネットワークを経由していない取引データについては、保有しない状態となるので、各ノードの保有データ量を少なくすることができ、取引履歴の肥大化によるノードの容量逼迫の問題を解消または軽減することができるという効果がある。
【図面の簡単な説明】
【００４５】
【図１】本発明の第１実施形態の取引記録システムの全体構成図。
【図２】第１実施形態のユーザノードの構成図。
【図３】第１実施形態の振分ノードの構成図。
【図４】第１実施形態のメモリノードの構成図。
【図５】第１実施形態の配置情報記憶手段の構成図。
【図６】第１実施形態において、振分層が１階層であり、かつ、振分層にユーザノードが配置されていない完全分離型の場合の取引データの送信経路のパターンを示す説明図。
【図７】第１実施形態において、振分層が１階層であり、かつ、振分層にもユーザノードが配置されている混在型の場合の取引データの送信経路のパターンを示す説明図。
【図８】第１実施形態のユーザノードによる処理の流れを示すフローチャートの図。
【図９】第１実施形態の振分ノードによる処理の流れを示すフローチャートの図。
【図１０】第１実施形態の送金処理の具体例を示す第１の図。
【図１１】第１実施形態の送金処理の具体例を示す第２の図。
【図１２】第１実施形態の送金処理の具体例を示す第３の図。
【図１３】第１実施形態の送金処理の具体例を示す第４の図。
【図１４】第１実施形態の送金処理の具体例を示す第５の図。
【図１５】第１実施形態の配置変更処理の流れを示すフローチャートの図。
【図１６】本発明の第２実施形態の取引記録システムの全体構成図。
【図１７】第２実施形態の配置情報記憶手段の構成図。
【図１８】第２実施形態において、振分層が複数階層であり、かつ、振分層にユーザノードが配置されていない完全分離型の場合の取引データの送信経路のパターンを示す説明図。
【図１９】第２実施形態において、振分層が複数階層であり、かつ、振分層にもユーザノードが配置されている混在型の場合の取引データの送信経路のパターンを示す説明図。
【図２０】第２実施形態の振分ノードによる処理の流れを示すフローチャートの図。
【図２１】第２実施形態のユーザノードによる取引データの引渡時および受取時の処理の内容を示す説明図。
【図２２】第２実施形態の振分ノードによる取引データの受信時および送信時の処理の内容を示す説明図。
【図２３】第２実施形態の送金処理の具体例を示す第１の図。
【図２４】第２実施形態の送金処理の具体例を示す第２の図。
【図２５】第２実施形態の送金処理の具体例を示す第３の図。
【図２６】第２実施形態の送金処理の具体例を示す第４の図。
【図２７】第２実施形態の送金処理の具体例を示す第５の図。
【図２８】第２実施形態の送金処理の具体例を示す第６の図。
【図２９】第２実施形態の送金処理の具体例を示す第７の図。
【図３０】本発明の変形の形態を示す説明図。
【発明を実施するための形態】
【００４６】
以下に本発明の各実施形態について図面を参照して説明する。
【００４７】
［第１実施形態］
【００４８】
図１には、第１実施形態の取引記録システム１０の全体構成が示されている。図２〜図５には、第１実施形態のユーザノード４０、振分ノード５０、メモリノード６０、配置情報記憶手段４３，５３の構成が示されている。また、図６、図７には、第１実施形態における完全分離型、混在型の場合の取引データの送信経路のパターンが示されている。さらに、図８、図９には、第１実施形態のユーザノード４０、振分ノード５０による処理の流れがフローチャートで示されている。また、図１０〜図１４には、第１実施形態の送金処理の具体例が示されている。さらに、図１５には、配置変更処理の流れがフローチャートで示されている。
【００４９】
＜取引記録システム１０の全体構成＞
【００５０】
図１において、取引記録システム１０は、階層化された複数のネットワーク２０，３０と、これらのネットワーク２０，３０に接続された複数のノード４０，５０，６０とを備えて構成されている。
【００５１】
ここで、各ネットワーク２０，３０は、いずれもＰ２Ｐネットワークであり、例えばインターネットや通信事業者が提供する各種のサービス網等の公衆ネットワークを使って形成された仮想的なネットワーク（インターネット上にＶＰＮ（バーチャル・プライベート・ネットワーク）を用いて構築されたイントラネットを含む。）でもよく、例えばＬＡＮ等の内部ネットワークのように物理的に閉じたネットワークでもよく、それらの混在型でもよい。
【００５２】
各ノードは、それぞれコンピュータにより構成され、取引記録システム１０を構成する複数のノードには、取引の当事者となり得るユーザが操作するユーザノード４０と、各ユーザノード４０の配置情報に従って送信経路を決定して取引データを取引相手のユーザノード４０に向けて送信する振分ノード５０と、ユーザノード４０および振分ノード５０のいずれにも該当しないメモリノード６０とが含まれている。
【００５３】
最上層（上位）のネットワーク２０は、複数の振分ノード５０が配置された振分層のネットワークである。このネットワーク２０には、複数の振分ノード５０の他に、１つまたは複数のユーザノード４０や、１つまたは複数のメモリノード６０が配置されていてもよい。
【００５４】
振分層のネットワーク２０にユーザノード４０が１つも配置されていない場合は、ユーザノード４０と振分ノード５０とが分離された完全分離型である。一方、ネットワーク２０に少なくとも１つのユーザノード４０が配置されている場合は、振分層においてユーザノード４０と振分ノード５０とが混在する混在型である。従って、図１において、ネットワーク２０に、２点鎖線で囲まれているユーザノード４０が配置されている場合は、混在型となり、配置されていない場合には、完全分離型となる。また、ネットワーク２０にはメモリノード６０が１つも配置されていなくてもよい。
【００５５】
最下層（下位）のネットワーク３０については、本第１実施形態では、一例として、３つのネットワーク３０Ａ，３０Ｂ，３０Ｃがあるが、最下層（下位）のネットワーク３０の個数は任意である。これらのネットワーク３０Ａ，３０Ｂ，３０Ｃの各々は、少なくとも１つ（通常は、複数である。）のユーザノード４０が配置されたアクション層のネットワークである。これらのネットワーク３０Ａ，３０Ｂ，３０Ｃの各々には、少なくとも１つのユーザノード４０の他に、１つまたは複数のメモリノード６０が配置されていてもよい。また、ネットワーク３０Ａ，３０Ｂ，３０Ｃの各々には、メモリノード６０が１つも配置されていなくてもよい。
【００５６】
また、アクション層のネットワーク３０Ａ，３０Ｂ，３０Ｃは、それぞれが上位（直上）の振分ノード５０を備えている。図１の例では、ネットワーク３０Ａおよびそこに配置された各ノード（ユーザノード４０、メモリノード６０）の上位（直上）の振分ノード５０は、振分ノード５０Ａであり、これを逆に言えば、振分ノード５０Ａの配下に、ネットワーク３０Ａおよびそこに配置された各ノード（ユーザノード４０、メモリノード６０）があることになる。同様に、ネットワーク３０Ｂおよびそこに配置された各ノード（ユーザノード４０、メモリノード６０）の上位（直上）の振分ノード５０は、振分ノード５０Ｂであり、これを逆に言えば、振分ノード５０Ｂの配下に、ネットワーク３０Ｂおよびそこに配置された各ノード（ユーザノード４０、メモリノード６０）があることになる。また、ネットワーク３０Ｃおよびそこに配置された各ノード（ユーザノード４０、メモリノード６０）の上位（直上）の振分ノード５０は、振分ノード５０Ｃであり、これを逆に言えば、振分ノード５０Ｃの配下に、ネットワーク３０Ｃおよびそこに配置された各ノード（ユーザノード４０、メモリノード６０）があることになる。
【００５７】
＜ユーザノード４０の構成＞
【００５８】
ユーザノード４０（例えば４０Ａ）は、自分が配置されている自ネットワーク２０，３０（例えば３０Ａ）に取引相手のユーザノード４０（例えば４０Ｄ）も配置されている場合の自ネットワーク２０，３０（例えば３０Ａ）内での取引データについては、自ネットワーク２０，３０（例えば３０Ａ）に配置された他のノードおよび自分で共有して記憶するようになっている。ここで、他のノードとは、自ネットワーク３０の場合には、他のユーザノード４０や、メモリノード６０であり、自ネットワーク２０の場合には、振分ノード５０や、メモリノード６０である。
【００５９】
一方、ユーザノード４０（例えば４０Ａ）は、取引相手のユーザノード４０（例えば４０Ｂ）が自ネットワーク２０，３０（例えば３０Ａ）とは異なるネットワーク２０，３０（例えば３０Ｂ）に配置されている場合の複数のネットワーク間に跨る取引データについては、配置情報で定まる取引相手のユーザノード４０（例えば４０Ｂ）までの送信経路上の振分ノード５０のうち自分に最も近い位置の振分ノード５０（例えば５０Ａ）に向けて送信するとともに、自ネットワーク２０，３０（例えば３０Ａ）に配置された他のノードおよび自分で共有して記憶するようになっている。ここで、他のノードとは、自ネットワーク３０の場合には、他のユーザノード４０や、メモリノード６０であり、自ネットワーク２０の場合には、振分ノード５０や、メモリノード６０である。
【００６０】
具体的には、ユーザノード４０は、図２に示すように、取引データの記録に必要な各種の処理を実行する処理手段４１と、この処理手段４１による処理に必要な各種のデータおよび処理で得られた各種のデータを記憶するデータベース４２とを備えている。
【００６１】
処理手段４１は、相手位置判断手段４１Ａと、引渡手段４１Ｂと、受取手段４１Ｃと、ブロック追加手段４１Ｄと、配置変更手段４１Ｅとを含んで構成されている。また、処理手段４１は、図示されないデータベース・マネジメント・システム（ＤＢＭＳ）の機能を備えている。
【００６２】
データベース４２は、配置情報記憶手段４３（図５参照）と、ブロック記憶手段４４とを含んで構成されている。また、データベース４２は、例えば自分が保有する金銭やポイント等の価値の残高を記憶する残高記憶手段（不図示）を有していてもよい。
【００６３】
相手位置判断手段４１Ａは、配置情報記憶手段４３（図５参照）に記憶されている配置情報を用いて、自ネットワーク２０，３０に、取引相手のユーザノード４０が配置されているか否かを判断する処理を実行するものである。より具体的には、自分（アクションを起こしたユーザノード４０）の識別情報を用いて、自分が配置されているネットワーク２０，３０の識別情報または自分の上位（直上）の振分ノード５０の識別情報を特定し、取引相手のユーザノード４０の識別情報を用いて、取引相手のユーザノード４０が配置されているネットワーク２０，３０の識別情報または取引相手のユーザノード４０の上位（直上）の振分ノード５０の識別情報を特定し、それらが一致しているか否かを判断する。
【００６４】
ここで、ノードの識別情報は、例えば、ユーザＩＤ、ＩＰアドレス、コンピュータ名、ＭＡＣアドレス、あるいはこれらの組合せ等である。なお、振分ノード５０やメモリノード６０は、ユーザが操作するコンピュータではないが、振分ノード５０やメモリノード６０の識別情報については、例えば、疑似的に付したユーザＩＤを用いてもよい。また、ユーザノード４０の識別情報と、振分ノード５０の識別情報とは、同じ体系の識別情報としてもよく、異なる体系の識別情報としてもよく、同様に、メモリノード６０の識別情報も、他の種類のノードと同じ体系の識別情報としてもよく、異なる体系の識別情報としてもよい。
【００６５】
なお、相手位置判断手段４１Ａは、同様な配置情報記憶手段を有する他のノード（自ネットワーク２０，３０内の他のノードまたは自分の上位（直上）の振分ノード５０）への問合せにより上記の判断結果を取得してもよく、同様な配置情報記憶手段を有する他のシステム（取引記録システム１０の外部のシステム）への通信回線を介した問合せにより上記の判断結果を取得してもよく、配置情報取得アルゴリズムによる演算処理で上記の判断結果を求めてもよく、自ネットワーク２０，３０がＬＡＮ等のように参加ノード数の比較的少ない閉じたネットワークである場合には、取引相手のユーザノード４０に該当するか否かについての自ネットワーク２０，３０内の他の全てのノードへの問合せにより上記の判断結果を取得してもよい。なお、配置情報取得アルゴリズムによる演算処理とは、例えば、ノードの識別情報の一部（例えば下４桁の数字や記号等）を抽出し、その抽出部分により示される配置情報で上記の判断結果を得る処理等である。
【００６６】
引渡手段４１Ｂは、相手位置判断手段４１Ａにより取引相手のユーザノード４０が自ネットワーク２０，３０に配置されていないと判断した場合に、配置情報記憶手段４３（図５参照）に記憶されている配置情報に従って決定した取引相手のユーザノード４０までの送信経路上の振分ノード５０のうち自分に最も近い位置の振分ノード５０に向け、取引データを送信する処理を実行するものである。この際、引渡手段４１Ｂは、原要求の取引データを送信する。また、この送信処理は、後述する図２１（第２実施形態用の説明図であるが、第１実施形態でも同様である。）のＤ１，Ｄ３の送信処理である。なお、Ｄ２の送信処理は、必須ではない。Ｄ２の場合は、自分がブロック生成以降の処理を主導するので、自ネットワーク２０，３０内の他のノードはその主導役のノードにはならないため、必ずしも自ネットワーク２０，３０内の他のノード（ここでは取引相手のユーザノード４０）に向けて取引データを送信する必要がないからである。
【００６７】
より具体的には、引渡手段４１Ｂは、振分層のネットワーク２０にユーザノード４０が配置されることのない完全分離型の場合には、相手位置判断手段４１Ａにより取引相手のユーザノード４０が自ネットワーク３０に配置されていないと判断したときに、自分の上位（直上）のネットワーク２０に配置された自分の上位の振分ノード５０に向け、取引データを送信する処理を実行する。これは、後述する図２１のＤ１の送信処理であり、例えば、図１において、ユーザノード４０Ａが、上位（直上）の振分ノード５０Ａに向けて送信する処理である。
【００６８】
また、振分層のネットワーク２０にユーザノード４０が配置されることのある混在型の場合には、自分（アクションを起こすユーザノード４０）がアクション層のネットワーク３０に配置されている通常ケースと、自分が振分層のネットワーク２０に配置されている特殊ケースとがある。
【００６９】
引渡手段４１Ｂは、通常ケースでは、相手位置判断手段４１Ａにより取引相手のユーザノード４０が自ネットワーク３０に配置されていないと判断したときに、自分の上位（直上）のネットワーク２０に配置された自分の上位（直上）の振分ノード５０に向け、取引データを送信する処理を実行する。これは、後述する図２１のＤ１の送信処理であり、例えば、図１において、ユーザノード４０Ａが、上位（直上）の振分ノード５０Ａに向けて送信する処理である。従って、完全分離型の場合と同様である。
【００７０】
また、引渡手段４１Ｂは、特殊ケースでは、相手位置判断手段４１Ａにより取引相手のユーザノード４０が自ネットワーク２０に配置されていないと判断したときに、自ネットワーク２０に配置された振分ノード５０のうちの取引相手のユーザノード４０を配下に有する振分ノード５０に向け、取引データを送信する処理を実行する。これは、後述する図２１のＤ３の送信処理であり、例えば、図１において、ユーザノード４０Ｅが、自ネットワーク２０内の振分ノード５０Ｂに向けて送信する処理である。
【００７１】
なお、引渡手段４１Ｂが送信経路を決定する際に、配置情報記憶手段４３（図５参照）に記憶されている配置情報を用いる代わりに、様々な代替手段を用いてもよいのは、上述した相手位置判断手段４１Ａの場合と同様である。
【００７２】
受取手段４１Ｃは、取引相手のユーザノード４０として、上位（直上）の振分ノード５０から取引データを受信する処理を実行するものである。この際、受取手段４１Ｃは、原要求の取引データを受信する。この受信処理は、後述する図２１（第２実施形態用の説明図であるが、第１実施形態でも同様である。）のＲ１の受信処理である。なお、Ｒ２，Ｒ３の受信処理は、必須ではない。Ｒ２，Ｒ３の場合は、自分以外のノードがブロック生成以降の処理を主導するので、自分はその主導役のノードにはならないため、必ずしも自ネットワーク２０，３０内の他のノード（ここではユーザノード４０または振分ノード５０）から取引データを受信する必要がないからである。
【００７３】
ブロック追加手段４１Ｄは、相手位置判断手段４１Ａにより取引相手のユーザノード４０が自ネットワーク２０，３０に配置されていると判断した場合、または受取手段４１Ｃにより取引データを受信した場合に、取引データを含むブロックを生成し、生成したブロックを自ネットワーク２０，３０内で承認して自ネットワーク２０，３０に配置された他のノード（自分以外のユーザノード４０、振分ノード５０、メモリノード６０）および自分で共有して記憶するためのブロック追加処理を実行するものである。
【００７４】
ここで、ブロック追加処理、すなわちブロックの生成・承認・共有記憶のための処理は、必ずしも自ら（アクションを起こしたユーザノード４０や、取引相手のユーザノード４０）がブロックの生成処理を実行する必要はなく、また、必ずしも自らが承認処理を実行したり、承認処理に参加する必要はなく、さらには、必ずしも自らが共有記憶のための各ノードへの配信処理を実行する必要はない。従って、ブロックの生成処理・承認処理・共有記憶のための各ノードへの配信処理については、これらの処理を担当する自ネットワーク２０，３０内の他のノードに対し、ブロックの生成指示（取引データや、識別情報の置換指示を含む。）・承認指示・配信指示を送ってもよく、要するに、自ら（アクションを起こしたユーザノード４０や、取引相手のユーザノード４０）は、処理のタイミング等を管理し、ブロックの生成処理・承認処理・共有記憶のための各ノードへの配信処理を主導すればよい。
【００７５】
ブロック追加処理のうちのブロック生成処理は、取引データを用いて、それまでに蓄積記憶されたブロック（既にブロック記憶手段４４に記憶されている前回までのブロック）とともにチェーンを形成するブロックを新たに生成する処理である。このブロック生成処理は、上述したように、自分（アクションを起こしたユーザノード４０や、取引相手のユーザノード４０）で直接に実行するか、または自ネットワーク２０，３０内の他のノードに対してブロックの生成指示（取引データや、識別情報の置換指示を含む。）を送ることにより実行される。生成指示を送る場合は、生成指示を受けたノードに設けられたブロック追加手段（他のユーザノード４０のブロック追加手段４１Ｄ、振分ノード５０のブロック追加手段５１Ｂ、またはメモリノード６０のブロック追加手段６１Ａ）が実行する。
【００７６】
ブロック生成処理では、原要求の取引データをそのまま用いてブロックを生成する場合と、識別情報の置換処理を行った取引データを用いてブロックを生成する場合と、これらの双方の取引データを用いてブロックを生成する場合とがある。生成されるブロックは、図２に示すように、生成時刻を示すタイムスタンプ、前のブロックのハッシュ値等のチェーン形成情報、置換後の取引データ（識別情報の置換処理が不要なため原要求のままの取引データ、または置換処理を行った取引データ）とを含み、さらに、図中２点鎖線で示されるように、識別情報の置換処理が行われた場合には、原要求の取引データを合わせて含むようにしてもよい。
【００７７】
チェーン形成情報は、通常のブロックチェーンのように、前のブロックのハッシュ値としてもよく、あるいは、例えば前のブロック以外の情報を用いて形成されたものとしてもよく、チェーンの形成方式は任意である。
【００７８】
取引データについてのノードの識別情報の置換処理は、次のようになる。先ず、同一のネットワークに配置されたユーザノード４０間の取引については、取引の当事者の双方のユーザノード４０の識別情報を含む取引データを用いてブロックを生成するので、識別情報の置換は不要となる（後述する図８のステップＳ３参照）。次に、異なるネットワークに配置されたユーザノード４０間の取引については、取引の当事者の一方のユーザノード４０の識別情報、および取引データの送受信に関与した振分ノード５０の識別情報を含む取引データを用いて、ブロックを生成する（後述する図８のステップＳ５，Ｓ６参照）。
【００７９】
ブロック追加処理のうちのブロック承認処理は、データの改ざんがないか、残高は正しいか、残高を越える不正な取引ではないか等について、それ以前のブロックが有する情報との整合性等により判断する処理であり、この承認処理を経て、初めて自ネットワーク２０，３０内でのブロックの共有記憶が可能となる。
【００８０】
承認方式は問わない。例えば、自ネットワーク２０，３０内の特定または任意の１つのノード（自分でもよい。）が担当してもよく、特定または任意の複数のノード（自分が含まれていても、含まれていなくてもよい。）が担当してもよく、全ノードが担当してもよい。例えば、複数のノードや全ノードが担当する場合には、そのうちの一定比率（例えば３分の２以上）の合意を条件として承認する等とすることができる。
【００８１】
このブロック承認処理は、ブロック生成処理を担当したノードから配信されてくるブロックを、ブロック承認処理を担当する１つまたは複数のノードが受け取るか、またはブロックの生成指示を送ったノードから配信されてくるブロックを、ブロック承認処理を担当する１つまたは複数のノードが受け取ることにより実行される。
【００８２】
ブロック追加処理のうちの共有記憶のための各ノードへの配信処理は、承認されたブロックが自ネットワーク２０，３０内の全てのノードに行き渡るように、すなわち、配信元のノードから、配信元を除く全てのノードに向け、承認されたブロックを配信するとともに、承認されたブロックを受け取ったノードが、各自のブロック記憶手段（ユーザノード４０のブロック記憶手段４４、振分ノード５０のブロック記憶手段５４、またはメモリノード６０のブロック記憶手段６３）に、受け取ったブロックを保存する処理である。配信元のノードは、承認処理を実行したノードや承認処理に参加したノードでもよく、承認指示を送ったノードでもよく、また、配信元のノードが複数ある場合には、複数個受け取ったブロックが同一のものであるときに保存するようにしてもよい。
【００８３】
配置変更手段４１Ｅは、自分（ユーザノード４０）の配置位置につき、現在配置されているネットワーク２０，３０から異なるネットワーク２０，３０への配置変更をする処理を実行するものである。
【００８４】
具体的には、配置変更手段４１Ｅは、配置変更に伴って、全てのユーザノード４０の配置情報記憶手段４３および全ての振分ノード５０の配置情報記憶手段５３に記憶されている各配置情報（図５参照）について、自分（ユーザノード４０）が移動元のネットワーク２０，３０に配置されている状態から移動先のネットワーク２０，３０に配置されている状態に変更する配置情報更新処理（更新のタイミングは、後述する図１５のステップＳ１０８参照）を実行する。但し、振分ノード５０の配置変更支援手段５１Ｃに、この配置情報更新処理を実行する機能がある場合には、配置変更手段４１Ｅには、この機能はなくてもよい。なお、配置情報記憶手段４３，５３と同様な配置情報記憶手段が、他のシステムに設けられている場合には、配置変更手段４１Ｅは、他のシステムの配置情報記憶手段に記憶されている配置情報について、配置情報更新処理を実行する。また、メモリノード６０が配置情報記憶手段を有する場合には、配置変更手段４１Ｅは、全てのメモリノード６０の配置情報記憶手段に記憶されている各配置情報について、配置情報更新処理を実行する。
【００８５】
また、配置変更手段４１Ｅは、ユーザによる移動先のネットワーク２０，３０の入力を受け付け、自分（ユーザノード４０）が現在配置されている移動元のネットワーク２０，３０の直上の振分ノード５０から移動先のネットワーク２０，３０の直上の振分ノード５０までの送信経路上の任意の振分ノード５０または全ての振分ノード５０のうちの任意の振分ノード５０を配置変更用ノードとして選択し、配置変更アクション用の取引データを生成し、配置情報記憶手段４３（図５参照）に記憶されている移動前の状態の配置情報に従って決定した送信経路で、生成した配置変更アクション用の取引データを、配置変更用ノード（選択した振分ノード５０）に向けて送信する処理を実行する。
【００８６】
この際、配置変更手段４１Ｅは、生成する配置変更アクション用の取引データの中に、自分（ユーザノード４０）が有する残高記憶手段（不図示）に記憶されている当該ユーザの残高、自分（ユーザノード４０）の識別情報を用いて他のシステムに設けられた残高記憶手段から取得した当該ユーザの残高、自分（ユーザノード４０）が記憶している取引データに含まれる当該ユーザの残高、または自分（ユーザノード４０）が記憶している取引データを用いて算出される当該ユーザの残高、並びに、送信先となる配置変更用ノード（選択した振分ノード５０）の識別情報を含ませる。また、配置変更用ノード（選択した振分ノード５０）に向けた送信処理は、相手位置判断手段４１Ａおよび引渡手段４１Ｂの場合と同様であり、同じアルゴリズムを使って送信経路を決定する。
【００８７】
そして、配置変更手段４１Ｅは、配置変更用ノードに向けた送信処理を実行するとともに、生成した配置変更アクション用の取引データを、ブロック追加手段４１Ｄに渡すことにより、配置変更ではない通常の取引の場合と同様に、ブロック追加処理（ブロックの生成・承認・共有記憶のための処理）を実行させる。従って、ブロック記憶手段４４には、当該ユーザの残高が一時的にゼロになることを意味する取引データ（識別情報の置換を含む。）が、自ネットワーク２０，３０（未だ移動元のネットワークにある状態）内の他のノードと共有した状態で記憶されることになり、配置変更に伴って、当該ユーザから仮想のユーザ（仮想の管理者）に金銭やポイント等の価値が移動したことになる。
【００８８】
さらに、配置変更手段４１Ｅは、前述した配置情報更新処理（更新のタイミングは、後述する図１５のステップＳ１０８参照）を経て、自分（ユーザノード４０）が移動先のネットワーク２０，３０に配置された移動後の状態で、配置変更用ノード（選択した振分ノード５０）から送信されてくる配置変更リターン用の取引データを受信する処理を実行する。この受信処理は、受取手段４１Ｃの場合と同様である。
【００８９】
そして、配置変更手段４１Ｅは、受信した配置変更リターン用の取引データをブロック追加手段４１Ｄに渡すことにより、配置変更ではない通常の取引の場合と同様に、ブロック追加処理（ブロックの生成・承認・共有記憶のための処理）を実行させる。従って、ブロック記憶手段４４には、一時的にゼロになっていた当該ユーザの残高が元に戻ることを意味する取引データ（識別情報の置換を含む。）が、自ネットワーク２０，３０（既に移動先のネットワークに変わっている。）内の他のノードと共有した状態で記憶されることになり、仮想のユーザ（仮想の管理者）から当該ユーザに金銭やポイント等の価値が戻されたことになる。
【００９０】
配置情報記憶手段４３は、図５に示すように、各ユーザノード４０が複数のネットワーク２０，３０のうちのいずれに配置されているか並びに複数のネットワーク２０，３０の上下関係若しくはこれに代わるノードの上下関係を示す配置情報を記憶するものであり、本第１実施形態では、一例として、ノードの識別情報と、所属するネットワークの識別情報と、所属する階層種別と、上位（直上）のノードの識別情報とを関連付けて記憶している。なお、配置情報記憶手段４３の構成は、図５に例に限定されるものではなく、要するに、図１のツリー構造を記憶することができるようになっていればよい。
【００９１】
ブロック記憶手段４４は、ブロック追加手段４１Ｄにより生成および承認されたブロック（自分のブロック追加手段４１Ｄではなく、他のノードのブロック追加手段４１Ｄ，５１Ｂ，６１Ａが主導して生成および承認されたブロックでもよい。）を記憶するものである。このブロック記憶手段４４に記憶されるブロックは、ブロックチェーンを形成している。また、自ネットワーク２０，３０内の全てのノードが、同じブロックチェーンを共有する状態で記憶している。なお、ブロックの構成は、ブロック追加手段４１Ｄを説明する記載において、前述した通りである。
【００９２】
＜振分ノード５０の構成＞
【００９３】
振分ノード５０は、ユーザノード４０または他の振分ノード５０から受信した取引データを、取引相手のユーザノード４０に向け、または配置情報で定まる取引相手のユーザノード４０までの送信経路上の他の振分ノード５０のうち自分に最も近い位置の他の振分ノード５０に向けて送信するとともに、自ネットワーク２０を経由した取引データを、自ネットワーク２０に配置された他のノードおよび自分で共有して記憶するようになっている。ここで、他のノードとは、他の振分ノード５０や、メモリノード６０である。
【００９４】
具体的には、振分ノード５０は、図３に示すように、取引データの記録に必要な各種の処理を実行する処理手段５１と、この処理手段５１による処理に必要な各種のデータおよび処理で得られた各種のデータを記憶するデータベース５２とを備えている。
【００９５】
処理手段５１は、振分手段５１Ａと、ブロック追加手段５１Ｂと、配置変更支援手段５１Ｃとを含んで構成されている。また、処理手段５１は、図示されないデータベース・マネジメント・システム（ＤＢＭＳ）の機能を備えている。
【００９６】
データベース５２は、配置情報記憶手段５３（図５参照）と、ブロック記憶手段５４とを含んで構成されている。また、データベース５２は、例えば自分が保有する金銭やポイント等の価値の残高を記憶する残高記憶手段（不図示）を有していてもよい。
【００９７】
振分手段５１Ａは、ユーザノード４０または他の振分ノード５０から取引データを受信した場合に、配置情報記憶手段５３（図５参照）に記憶されている配置情報を用いて、取引データを振り分けて送信する送信先のノードを決定し、取引相手のユーザノード４０に向け、または取引相手のユーザノード４０までの送信経路上の他の振分ノード５０のうち自分に最も近い位置の他の振分ノード５０に向け、取引データを送信する処理を実行するものである。この際、振分手段５１Ａは、原要求の取引データを送信する。
【００９８】
なお、振分手段５１Ａは、同様な配置情報記憶手段を有する他のノード（自ネットワーク２０内の他のノードであるが、後述する第２実施形態では、自分の上位（直上）の振分ノード５０でもよい。）への問合せにより上記の決定結果を取得してもよく、同様な配置情報記憶手段を有する他のシステム（取引記録システム１０の外部のシステム）への通信回線を介した問合せにより上記の決定結果を取得してもよく、配置情報取得アルゴリズムによる演算処理で上記の決定結果を求めてもよく、自ネットワーク２０がＬＡＮ等のように参加ノード数の比較的少ない閉じたネットワークである場合には、取引相手のユーザノード４０を配下に有する振分ノード５０に該当するか否かについての自ネットワーク２０内の他のノードへの問合せによるか、または取引相手のユーザノード４０に該当するか否かについての自ネットワーク２０内の他のノードへの問合せにより上記の決定結果を取得してもよい。なお、配置情報取得アルゴリズムによる演算処理とは、例えば、ノードの識別情報の一部（例えば下４桁の数字や記号等）を抽出し、その抽出部分により示される配置情報で上記の決定結果を得る処理等である。
【００９９】
より具体的には、振分手段５１Ａは、振分層のネットワーク２０にユーザノード４０が配置されることのない完全分離型の場合には、ユーザノード４０から取引データを受信した際に、自ネットワーク２０に配置された他の振替ノード５０のうちの取引相手のユーザノード４０を配下に有する他の振替ノード５０に向け、取引データを送信するネットワーク内送信処理を実行する。これは、後述する図２２（第２実施形態用の説明図であるが、部分的には第１実施形態でも同様である。）のＧ２の送信処理であり、例えば、図１において、振分ノード５０Ａが、自ネットワーク２０内の振分ノード５０Ｂに向けて送信する処理である。
【０１００】
また、振分手段５１Ａは、完全分離型の場合には、自ネットワーク２０に配置された他の振替ノード５０から取引データを受信した際に、下位（直下）のネットワーク３０に配置された取引相手のユーザノード４０に向け、取引データを送信する下り方向送信処理を実行する。これは、後述する図２２のＧ４の送信処理であり、例えば、図１において、振分ノード５０Ｂが、下位（直下）のユーザノード４０Ｂに向けて送信する処理である。
【０１０１】
さらに、振分手段５１Ａは、振分層のネットワーク２０にユーザノード４０が配置されることのある混在型の場合には、下位（直下）のネットワーク３０（例えば３０Ａ）に配置された自分の下位（直下）のユーザノード４０（例えば４０Ａ）から取引データを受信した際に、取引相手のユーザノード４０が自ネットワーク２０に配置されていないときには、自ネットワーク２０に配置された他の振替ノード５０のうちの取引相手のユーザノード４０を配下に有する振替ノード５０（例えば５０Ｂ）に向け、取引データを送信するネットワーク内送信処理を実行する。これは、後述する図２２のＧ２の送信処理であり、例えば、図１において、振分ノード５０Ａが、自ネットワーク２０内の振分ノード５０Ｂに向けて送信する処理である。なお、取引相手のユーザノード４０が自ネットワーク２０に配置されているときは、後述する図２２のＧ３の送信処理は行う必要はない。Ｇ３の場合は、自分がブロック生成以降の処理を主導するので、自ネットワーク２０内の他のノードはその主導役のノードにはならないため、必ずしも自ネットワーク２０内の他のノード（ここでは取引相手のユーザノード４０）に向けて取引データを送信する必要がないからである。
【０１０２】
そして、振分手段５１Ａは、混在型の場合には、自ネットワーク２０に配置された他の振替ノード５０（例えば５０Ａ）または自ネットワーク２０に配置されたユーザノード４０（例えば４０Ｅ）から取引データを受信した際に、下位（直下）のネットワーク３０（例えば３０Ｂ）に配置された取引相手のユーザノード４０（例えば４０Ｂ）に向け、取引データを送信する下り方向送信処理を実行する。これは、後述する図２２のＧ４の送信処理であり、例えば、図１において、振分ノード５０Ｂが、下位（直下）のユーザノード４０Ｂに向けて送信する処理である。
【０１０３】
ブロック追加手段５１Ｂは、ユーザノード４０または他の振分ノード５０から受信した取引データを含むブロックを生成し、生成したブロックを自ネットワーク２０内で承認して自ネットワーク２０に配置された他のノードおよび自分で共有して記憶するためのブロック追加処理を実行するものである。
【０１０４】
ここで、ブロック追加処理、すなわちブロックの生成・承認・共有記憶のための処理は、必ずしも自ら（振分ノード５０）がブロックの生成処理を実行する必要はなく、また、必ずしも自らが承認処理を実行したり、承認処理に参加する必要はなく、さらには、必ずしも自らが共有記憶のための各ノードへの配信処理を実行する必要はない。従って、ブロックの生成処理・承認処理・共有記憶のための各ノードへの配信処理については、これらの処理を担当する自ネットワーク２０内の他のノードに対し、ブロックの生成指示（取引データや、識別情報の置換指示を含む。）・承認指示・配信指示を送ってもよく、要するに、自ら（振分ノード５０）は、処理のタイミング等を管理し、ブロックの生成処理・承認処理・共有記憶のための各ノードへの配信処理を主導すればよい。この点は、ユーザノード４０のブロック追加手段４１Ｄの場合と同様である。
【０１０５】
このブロック追加処理の内容は、ユーザノード４０のブロック追加手段４１Ｄの場合と同様である。従って、生成されるブロックは、図２のユーザノード４０の場合と同様であり、図３に示すように、生成時刻を示すタイムスタンプ、前のブロックのハッシュ値等のチェーン形成情報、置換後の取引データ（識別情報の置換処理が不要なため原要求のままの取引データ、または置換処理を行った取引データ）とを含み、さらに、図中２点鎖線で示されるように、識別情報の置換処理が行われた場合には、原要求の取引データを合わせて含むようにしてもよい。
【０１０６】
また、ブロック追加手段５１Ｂは、ブロック記憶手段５４に記憶させるブロックを生成する際には、取引データの送受信に関与した自分（振分ノード５０）の識別情報、および送受信の相手の他の振分ノード５０若しくは取引相手のユーザノード４０の識別情報を用いて、ブロックを生成するための処理を実行する（後述する図９のステップＳ２４，Ｓ２７参照）。
【０１０７】
配置変更支援手段５１Ｃは、ユーザノード４０の配置変更（所属するネットワーク２０，３０の変更）を支援する処理を実行するものである。
【０１０８】
より具体的には、配置変更支援手段５１Ｃは、配置変更に伴って、全てのユーザノード４０の配置情報記憶手段４３および全ての振分ノード５０の配置情報記憶手段５３に記憶されている各配置情報（図５参照）について、配置変更に係るユーザノード４０が移動元のネットワーク２０，３０に配置されている状態から移動先のネットワーク２０，３０に配置されている状態に変更する配置情報更新処理（更新のタイミングは、後述する図１５のステップＳ１０８参照）を実行する。但し、ユーザノード４０の配置変更手段４１Ｅに、この配置情報更新処理を実行する機能がある場合には、配置変更支援手段５１Ｃには、この機能はなくてもよい。なお、配置情報記憶手段４３，５３と同様な配置情報記憶手段が、他のシステムに設けられている場合には、配置変更支援手段５１Ｃは、他のシステムの配置情報記憶手段に記憶されている配置情報について、配置情報更新処理を実行する。また、メモリノード６０が配置情報記憶手段を有する場合には、配置変更支援手段５１Ｃは、全てのメモリノード６０の配置情報記憶手段に記憶されている各配置情報について、配置情報更新処理を実行する。
【０１０９】
また、配置変更支援手段５１Ｃは、配置変更に係るユーザノード４０から送信されてくる配置変更アクション用の取引データを受信する処理を実行するとともに、受信した配置変更アクション用の取引データをブロック追加手段５１Ｂに渡すことにより、配置変更ではない通常の取引の場合と同様に、ブロック追加処理（ブロックの生成・承認・共有記憶のための処理）を実行させる。従って、ブロック記憶手段５４には、当該ユーザの残高を一時的に預かったことを意味する取引データ（識別情報の置換を含む。）が、自ネットワーク２０内の他のノードと共有した状態で記憶されることになり、配置変更に伴って、当該ユーザから仮想のユーザ（仮想の管理者）に金銭やポイント等の価値が移動したことになる。
【０１１０】
そして、配置変更支援手段５１Ｃは、受信した配置変更アクション用の取引データに含まれている当該ユーザの残高を用いて、当該ユーザの残高、および送信先となる配置変更に係るユーザノード４０の識別情報を含む配置変更リターン用の取引データを生成し、配置情報更新処理（更新のタイミングは、後述する図１５のステップＳ１０８参照）を経て配置情報記憶手段５３（図５参照）に記憶されている移動後の状態の配置情報に従って決定した送信経路で、生成した配置変更リターン用の取引データを、移動先のネットワーク２０，３０に配置されたユーザノード４０に向けて送信する処理を実行する。このユーザノード４０に向けた送信処理は、振分手段５１Ａの場合と同様であり、同じアルゴリズムを使って送信経路を決定する。
【０１１１】
さらに、配置変更支援手段５１Ｃは、配置変更に係るユーザノード４０に向けた送信処理を実行するとともに、生成した配置変更リターン用の取引データを、ブロック追加手段５１Ｂに渡すことにより、配置変更ではない通常の取引の場合と同様に、ブロック追加処理（ブロックの生成・承認・共有記憶のための処理）を実行させる。従って、ブロック記憶手段５４には、一時的に預かっていた当該ユーザの残高を元に戻したことを意味する取引データ（識別情報の置換を含む。）が、自ネットワーク２０内の他のノードと共有した状態で記憶されることになり、仮想のユーザ（仮想の管理者）から当該ユーザに金銭やポイント等の価値が戻されたことになる。
【０１１２】
配置情報記憶手段５３は、図５に示すように、ユーザノード４０の配置情報記憶手段４３と同様である。なお、振分ノード５０の配置情報記憶手段５３とユーザノード４０の配置情報記憶手段４３とを異なるものとし、双方に記憶された配置情報を総合することにより、全体的な配置情報（図１のツリー構造の全体を示す情報）を把握することができるようになっていてもよい。例えば、ユーザノード４０の配置情報記憶手段４３には、自ネットワーク２０，３０内の各ノードおよび自分の上位（直上）の振分ノード５０についての配置情報しか記憶されていない状態としてもよい。
【０１１３】
ブロック記憶手段５４は、ブロック追加手段５１Ｂにより生成および承認されたブロック（自分のブロック追加手段５１Ｂではなく、他のノードのブロック追加手段４１Ｄ，５１Ｂ，６１Ａが主導して生成および承認されたブロックでもよい。）を記憶するものである。このブロック記憶手段５４に記憶されるブロックは、ブロックチェーンを形成している。ブロック記憶手段５４の構成およびそこに記憶されるブロックの構成（図３参照）は、ユーザノード４０のブロック記憶手段４４の場合（図２参照）と同様であるが、自分が配置されているネットワーク２０が、ユーザノード４０が配置されているネットワーク３０と異なっていれば、異なるブロックチェーンを記憶することになる。ブロックチェーンは、各ネットワーク２０，３０（３０Ａ，３０Ｂ，３０Ｃ）毎に異なるからである。
【０１１４】
＜メモリノード６０の構成＞
【０１１５】
メモリノード６０は、自分が配置されている自ネットワーク２０，３０内の他のノード（ユーザノード４０、振分ノード５０、他のメモリノード６０）と取引データを共有した状態で記憶するものであり、バックアップ機能を果たすノードであるとともに、他のノードからの指示を受けてブロックの生成処理・承認処理・共有記憶のための各ノードへの配信処理を行うことも可能なノードである。
【０１１６】
具体的には、メモリノード６０は、図４に示すように、取引データの記録に必要な各種の処理を実行する処理手段６１と、この処理手段６１による処理に必要な各種のデータおよび処理で得られた各種のデータを記憶するデータベース６２とを備えている。
【０１１７】
処理手段６１は、ブロック追加手段６１Ａを備えている。また、データベース６２は、ブロック記憶手段６３を含んで構成されている。
【０１１８】
ブロック追加手段６１Ａは、自ネットワーク２０，３０内の他のノード（ユーザノード４０、振分ノード５０、他のメモリノード６０）から送信されてくる自ネットワーク２０，３０内で承認されたブロックを受信し、受信したブロックをブロック記憶手段６３に記憶させる処理を実行するものである。また、ブロック追加手段６１Ａは、他のノード（ユーザノード４０、振分ノード５０）からの指示を受けてブロックの生成処理・承認処理・共有記憶のための各ノードへの配信処理を実行する機能を備えていてもよく、この場合には、ブロック追加手段６１Ａは、ユーザノード４０のブロック追加手段４１Ｄや振分ノード５０のブロック追加手段５１Ｂと同様な機能を持つことになる。
【０１１９】
ブロック記憶手段６３は、ブロック追加手段６１Ａにより受信したブロック、すなわち自ネットワーク２０，３０内で承認されたブロックを記憶するものである。このブロック記憶手段６３に記憶されるブロックは、ブロックチェーンを形成している。ブロック記憶手段６３の構成およびそこに記憶されるブロックの構成（図４参照）は、ユーザノード４０のブロック記憶手段４４の場合（図２参照）や振分ノード５０のブロック記憶手段５４の場合（図３参照）と同様である。
【０１２０】
＜ユーザノード４０、振分ノード５０、メモリノード６０の構成デバイス＞
【０１２１】
以上において、ユーザノード４０、振分ノード５０、メモリノード６０は、それぞれコンピュータにより構成されるが、記憶容量や通信速度等に問題が生じない範囲であれば、タブレット端末や、コンピュータの機能を併せ持った高機能な携帯電話機等のような携帯機器であってもよい。
【０１２２】
また、ユーザノード４０の処理手段４１、振分ノード５０の処理手段５１、メモリノード６０の処理手段６１に含まれる各手段４１Ａ〜４１Ｅ，５１Ａ〜５１Ｃ，６１Ａは、ユーザノード４０、振分ノード５０、メモリノード６０を構成する各コンピュータ本体の内部に設けられた中央演算処理装置（ＣＰＵ）、およびこのＣＰＵの動作手順を規定する１つまたは複数のプログラムにより実現される。
【０１２３】
さらに、ユーザノード４０のデータベース４２、振分ノード５０のデータベース５２、メモリノード６０のデータベース６２は、例えばハードディスクやソリッドステートドライブ（ＳＳＤ）等により好適に実現されるが、記憶容量やアクセス速度等に問題が生じない範囲であれば、例えば、ＤＶＤ（デジタル・バーサタイル・ディスク）、磁気テープ等の他の記録媒体を採用してもよい。
【０１２４】
そして、ユーザノード４０は、マウスやキーボード等の入力手段と、液晶ディスプレイ等の表示手段とを備えているが、振分ノード５０やメモリノード６０は、必ずしも入力手段や表示手段を備えている必要はない。
【０１２５】
＜取引記録システム１０による取引データの記録処理の流れ＞
【０１２６】
このような第１実施形態においては、以下のようにして取引記録システム１０により、取引データの記録処理が行われる。
【０１２７】
図６において、完全分離型の場合の取引データの送信経路のパターンは、次の通りであり、ノードに付された符号は、図１と対応している。但し、等価なパターンは、記載を省略している。
【０１２８】
パターンＰ１は、アクション層のネットワーク３０Ａ内のユーザノード４０Ａ（図６中の★印）から、同じネットワーク３０Ａ内のユーザノード４０Ｄに至る送信経路である。
【０１２９】
パターンＰ２は、アクション層のネットワーク３０Ａ内のユーザノード４０Ａ（図６中の★印）から、振分層のネットワーク２０内の振分ノード５０Ａ、振分ノード５０Ｂをこの順に介して、アクション層のネットワーク３０Ｂ内のユーザノード４０Ｂに至る送信経路である。
【０１３０】
図７において、混在型の場合の取引データの送信経路のパターンは、次の通りであり、ノードに付された符号は、図１と対応している。但し、等価なパターンは、記載を省略している。
【０１３１】
パターンＭ１は、パターンＰ１と同じであり、アクション層のネットワーク３０Ａ内のユーザノード４０Ａ（図７中の★印）から、同じネットワーク３０Ａ内のユーザノード４０Ｄに至る送信経路である。
【０１３２】
パターンＭ２は、パターンＰ２と同じであり、アクション層のネットワーク３０Ａ内のユーザノード４０Ａ（図７中の★印）から、振分層のネットワーク２０内の振分ノード５０Ａ、振分ノード５０Ｂをこの順に介して、アクション層のネットワーク３０Ｂ内のユーザノード４０Ｂに至る送信経路である。
【０１３３】
パターンＭ３は、振分層のネットワーク２０内のユーザノード４０Ｅ（図７中の★印）から、同じネットワーク２０内のユーザノード４０Ｆに至る送信経路である。
【０１３４】
パターンＭ４は、アクション層のネットワーク３０Ａ内のユーザノード４０Ａ（図７中の★印）から、振分層のネットワーク２０内の振分ノード５０Ａを介して、振分層のネットワーク２０内のユーザノード４０Ｆに至る送信経路である。
【０１３５】
パターンＭ５は、振分層のネットワーク２０内のユーザノード４０Ｅ（図７中の★印）から、振分層のネットワーク２０内の振分ノード５０Ｂを介して、アクション層のネットワーク３０Ｂ内のユーザノード４０Ｂに至る送信経路である。
【０１３６】
図８および図９には、以上のような各種のパターンの送信経路で取引データを送信する場合における、個々のユーザノード４０および個々の振分ノード５０での処理の流れが示されている。
【０１３７】
図８において、ユーザノード４０は、アクションを起こすユーザノード４０（送金元のユーザノード４０）として、ユーザによる原要求の取引データ（送金元の識別情報、送金先の識別情報、送金の金額を含む。）の入力を受け付けた場合（ステップＳ１）には、相手位置判断手段４１Ａにより、自ネットワーク２０，３０内に、送金先（取引相手）のユーザノード４０があるか否かを判断する（ステップＳ２）。
【０１３８】
相手位置判断手段４１Ａにより、自ネットワーク２０，３０内に、送金先（取引相手）のユーザノード４０があると判断した場合には、ブロック追加手段４１Ｄにより、原要求のままの取引データ（ノードの識別情報の置換を行わない取引データ）を含むブロックの生成のための処理を実行する（ステップＳ３）。この場合は、自ネットワーク２０，３０内で完結する取引であるため、送金元および送金先の識別情報の双方ともに、原要求のままのユーザノード４０の識別情報でよいからである。
【０１３９】
一方、前述したステップＳ２で、相手位置判断手段４１Ａにより、自ネットワーク２０，３０内に、送金先（取引相手）のユーザノード４０がないと判断した場合には、引渡手段４１Ｂにより、配置情報で定まる送信経路上の振分ノード５０のうち自分に最も近い位置の振分ノード５０への取引データ（原要求）の送信を行う（ステップＳ４）。
【０１４０】
この際、引渡手段４１Ｂは、完全分離型の場合には、自分の上位（直上）のネットワーク２０に配置された自分の上位の振分ノード５０に向け、取引データ（原要求）を送信する（ステップＳ４）。
【０１４１】
また、引渡手段４１Ｂは、混在型の場合には、自分（アクションを起こすユーザノード４０）がアクション層のネットワーク３０に配置されている通常ケースと、自分が振分層のネットワーク２０に配置されている特殊ケースとで異なる処理を行う。すなわち、引渡手段４１Ｂは、通常ケースでは、自分の上位（直上）のネットワーク２０に配置された自分の上位（直上）の振分ノード５０に向け、取引データ（原要求）を送信し、特殊ケースでは、自ネットワーク２０に配置された振分ノード５０のうちの取引相手のユーザノード４０を配下に有する振分ノード５０に向け、取引データ（原要求）を送信する（ステップＳ４）。
【０１４２】
続いて、ブロック追加手段４１Ｄにより、取引データ（ノードの識別情報の置換を行った取引データ）を含むブロックの生成のための処理を実行する（ステップＳ５）。この場合は、自ネットワーク２０，３０内で完結しない取引であり、自ネットワーク２０，３０の外部への送信が行われたので、送金先の識別情報を、取引データ（原要求）の送信先の振分ノード５０の識別情報に置換する。
【０１４３】
また、ユーザノード４０は、前述したステップＳ１で、受取手段４１Ｃにより、送金先（取引相手）のユーザノード４０として、上位（直上）の振分ノード５０から取引データ（原要求）を受信した場合には、ブロック追加手段４１Ｄにより、取引データ（ノードの識別情報の置換を行った取引データ）を含むブロックの生成のための処理を実行する（ステップＳ６）。この場合は、自ネットワーク２０，３０内で完結しない取引であり、自ネットワーク２０，３０の外部からの受信が行われたので、送金元の識別情報を、取引データ（原要求）の送信元の振分ノード５０の識別情報に置換する。
【０１４４】
その後、ブロック追加手段４１Ｄにより、生成したブロックの承認のための処理を実行し（ステップＳ７）、さらに、生成・承認されたブロックを自ネットワーク２０，３０内の各ノードに保存するための処理を実行する（ステップＳ８）。
【０１４５】
図９において、振分ノード５０は、振分手段５１Ａにより、取引データ（原要求）をどのノードから受信したのかを判断し（ステップＳ２１）、下位（直下）のユーザノード４０から受信した場合には、振分手段５１Ａにより、自ネットワーク２０内に、送金先（取引相手）のユーザノード４０があるか否かを判断する（ステップＳ２２）。但し、振分層のネットワーク２０内にユーザノード４０があるのは、混在型のみであるため、ステップＳ２２の処理は、完全分離型では不要である。
【０１４６】
ステップＳ２２で、自ネットワーク２０内に、送金先（取引相手）のユーザノード４０がないと判断した場合には、振分手段５１Ａにより、自ネットワーク２０に配置された他の振替ノード５０のうちの取引相手のユーザノード４０を配下に有する他の振替ノード５０に向け、取引データ（原要求）を送信する（ステップＳ２３）。
【０１４７】
続いて、ブロック追加手段５１Ｂにより、取引データ（ノードの識別情報の置換を行った取引データ）を含むブロックの生成のための処理を実行する（ステップＳ２４）。この場合は、送金元の識別情報は、自分（振替ノード５０）の識別情報であり、送金先の識別情報は、取引データ（原要求）の送信先の振替ノード５０の識別情報である。
【０１４８】
その後、ブロック追加手段５１Ｂにより、生成したブロックの承認のための処理を実行し（ステップＳ２５）、さらに、生成・承認されたブロックを自ネットワーク２０内の各ノードに保存するための処理を実行する（ステップＳ２６）。
【０１４９】
一方、前述したステップＳ２２で、自ネットワーク２０内に、送金先（取引相手）のユーザノード４０があると判断した場合には、ブロック追加手段５１Ｂにより、取引データ（ノードの識別情報の置換を行った取引データ）を含むブロックの生成のための処理を実行する（ステップＳ２７）。この場合は、送金元の識別情報は、自分（振替ノード５０）の識別情報であり、送金先の識別情報は、取引相手のユーザノード４０の識別情報である。そして、前述したステップＳ２５，Ｓ２６の処理へ進む。
【０１５０】
また、前述したステップＳ２１で、完全分離型については、自ネットワーク２０に配置された他の振替ノード５０から取引データを受信した場合、混在型については、自ネットワーク２０に配置された他の振替ノード５０から取引データを受信した場合、または自ネットワーク２０に配置されたユーザノード４０から取引データを受信した場合には、振分手段５１Ａにより、下位（直下）のネットワーク３０に配置された取引相手のユーザノード４０に向け、取引データ（原要求）を送信する下り方向送信処理を実行する（ステップＳ２８）。この場合は、振替ノード５０は、後述する図２２のＴ２，Ｔ３の受信処理を行っているので、他ノード主導ケースに該当する。他ノード主導ケースとは、自ネットワーク２０内の他のノード（送金元のノード、すなわち自分（振替ノード５０）に対して取引データを送信してきたノード）がブロック生成以降の処理を主導し、自分はその主導役のノードにはならずに、自ネットワーク２０内でのブロックの共有記憶に参加する場合である。従って、自分（振替ノード５０）は、ブロックの生成・承認・共有記憶のための各ノードへの配信処理を主導する必要がないことから、ブロック追加手段５１Ｂによる自分からの積極的な処理（ステップＳ２４〜Ｓ２７に相当する処理）を行うことなく、これで処理を終了する。但し、主導役にならないというだけであり、他のノードから送信されてくる生成・承認されたブロックを保存する処理は実行するので、図９に自分の処理フローとしては記載されない処理（他のノードについての処理フローに属する処理）は行うことになる。
【０１５１】
図１０〜図１４には、図７に示された取引データの送信経路のパターンに、上述した図８に示されたユーザノード４０による処理の流れ（ステップＳ１〜Ｓ８）および図９に示された振分ノード５０による処理の流れ（ステップＳ２１〜Ｓ２８）を嵌め込んだ状態の送金処理の全体的な流れが示されている。
【０１５２】
図１０は、図７を用いて説明したパターンＭ２の送信経路で取引データ（原要求）が送られていく場合の例であり、アクション層のネットワーク３０Ａ内のユーザノード４０Ａから、振分層のネットワーク２０内の振分ノード５０Ａ、振分ノード５０Ｂをこの順に介して、アクション層のネットワーク３０Ｂ内のユーザノード４０Ｂに至る送信経路の場合の送金処理の流れであり、詳細は、図示の通りである。図１０中のＳ１〜Ｓ８の符号は、図８中のステップ番号を示し、図１０中のＳ２１〜Ｓ２８の符号は、図９中のステップ番号を示している。この場合、ブロック内に格納される取引データ（置換を含む。）は、「送金元：ユーザノード４０Ａ⇒送金先：振分ノード５０Ａ」、「送金元：振分ノード５０Ａ⇒送金先：振分ノード５０Ｂ」、「送金元：振分ノード５０Ｂ⇒送金先：ユーザノード４０Ｂ」という順番になっているので、形式的には、取引データ（原要求）である「送金元：ユーザノード４０Ａ⇒送金先：ユーザノード４０Ｂ」という送金（取引）を実現するために、ノードからノードへと次々にリレーのような送金が行われたことになる。以下の他の例でも同様である。
【０１５３】
なお、他のノードへの取引データ（原要求）の送信処理と、自分が主導する自ネットワーク内でのブロック追加処理（ブロックの生成・承認・共有記憶のための処理）とを逆の処理順とし、少なくとも承認が済んでから、他のノードへの取引データ（原要求）の送信処理を行うようにしてもよいが、承認に時間がかかる場合には、図示の通りの順番で、他のノードへの取引データ（原要求）の送信処理を先に行うことが好ましい。以下の他の例でも同様である。
【０１５４】
図１１は、図７を用いて説明したパターンＭ１の送信経路で取引データ（原要求）が送られていく場合の例であり、アクション層のネットワーク３０Ａ内のユーザノード４０Ａから、同じネットワーク３０Ａ内のユーザノード４０Ｄに至る送信経路の場合の送金処理の流れであり、詳細は、図示の通りである。この場合には、同じネットワーク３０Ａ内の取引相手のユーザノード４０Ｄには、取引データ（原要求）の送信処理は行っていないので、取引相手のユーザノード４０Ｄがネットワーク３０Ａ内でのブロック追加処理（ブロックの生成・承認・共有記憶のための処理）を主導することはないが、取引相手のユーザノード４０Ｄも、ネットワーク３０Ａに参加しているため、取引相手のユーザノード４０Ｄにおけるブロックの保存処理（図１１の処理フローに記載されない処理）は行われる。
【０１５５】
図１２は、図７を用いて説明したパターンＭ３の送信経路で取引データ（原要求）が送られていく場合の例であり、振分層のネットワーク２０内のユーザノード４０Ｅから、同じネットワーク２０内のユーザノード４０Ｆに至る送信経路の場合の送金処理の流れであり、詳細は、図示の通りである。
【０１５６】
図１３は、図７を用いて説明したパターンＭ４と等価な送信経路で取引データ（原要求）が送られていく場合の例であり、アクション層のネットワーク３０Ａ内のユーザノード４０Ａから、振分層のネットワーク２０内の振分ノード５０Ａを介して、振分層のネットワーク２０内のユーザノード４０Ｅに至る送信経路の場合の送金処理の流れであり、詳細は、図示の通りである。
【０１５７】
図１４は、図７を用いて説明したパターンＭ５と等価な送信経路で取引データ（原要求）が送られていく場合の例であり、振分層のネットワーク２０内のユーザノード４０Ｅから、振分層のネットワーク２０内の振分ノード５０Ａを介して、アクション層のネットワーク３０Ａ内のユーザノード４０Ａに至る送信経路の場合の送金処理の流れであり、詳細は、図示の通りである。
【０１５８】
＜ユーザノード４０の配置変更処理の流れ＞
【０１５９】
図１５において、先ず、ユーザノード４０において、配置変更手段４１Ｅにより、ユーザによるユーザノード４０の配置変更要求（移動先のネットワークの指定を含む。）の入力を受け付ける（ステップＳ１０１）。
【０１６０】
次に、配置変更手段４１Ｅにより、自分（ユーザノード４０）が現在配置されている移動元のネットワーク２０，３０の直上の振分ノード５０から移動先のネットワーク２０，３０の直上の振分ノード５０までの送信経路上の任意の振分ノード５０または全ての振分ノード５０のうちの任意の振分ノード５０を配置変更用ノードとして選択する（ステップＳ１０２）。この際、配置変更手段４１Ｅは、配置情報記憶手段４３（図５参照）に記憶された配置情報を用いて、上記の送信経路や、配置変更に係るユーザノード４０との位置関係等に基づき、振分ノード５０の自動選択を行うが、ユーザの指定による選択としてもよい。
【０１６１】
続いて、配置変更手段４１Ｅにより、当該ユーザ（ユーザノード４０の配置変更要求を行ったユーザ）の残高を取得または計算し、配置変更アクション用の取引データを生成する（ステップＳ１０３）。この際、配置変更手段４１Ｅは、配置変更アクション用の取引データの中に、当該ユーザの残高と、送信先となる配置変更用ノード（選択した振分ノード５０）の識別情報とを含ませる。また、当該ユーザの残高の取得は、外部のシステムからの取得であってもよい。
【０１６２】
それから、配置変更手段４１Ｅにより、配置情報記憶手段４３（図５参照）に記憶されている移動前の状態の配置情報に従って決定した送信経路で、生成した配置変更アクション用の取引データを、配置変更用ノード（選択した振分ノード５０）に向けて送信する（ステップＳ１０４）。
【０１６３】
そして、配置変更用ノード（選択した振分ノード５０）では、配置変更支援手段５１Ｃにより、配置変更に係るユーザノード４０から送信されてくる配置変更アクション用の取引データを受信する（ステップＳ１０５）。
【０１６４】
その後、配置変更に係るユーザノード４０では、配置変更手段４１Ｅにより、生成した配置変更アクション用の取引データをブロック追加手段４１Ｄに渡すことにより、配置変更ではない通常の取引の場合と同様に、ブロック追加処理（ブロックの生成・承認・共有記憶のための処理）を実行させる（ステップＳ１０６）。これにより、ブロック記憶手段４４には、当該ユーザの残高が一時的にゼロになることを意味する取引データ（識別情報の置換を含む。）が他のノードと共有した状態で記憶される。従って、配置変更に伴って、当該ユーザから仮想のユーザ（仮想の管理者）に金銭やポイント等の価値が移動したことになる。
【０１６５】
また、配置変更用ノード（選択した振分ノード５０）では、受信した配置変更アクション用の取引データをブロック追加手段４１Ｄに渡すことにより、配置変更ではない通常の取引の場合と同様に、ブロック追加処理（ブロックの生成・承認・共有記憶のための処理）を実行させる（ステップＳ１０７）。これにより、ブロック記憶手段５４には、当該ユーザの残高を一時的に預かったことを意味する取引データ（識別情報の置換を含む。）が、自ネットワーク２０内の他のノードと共有した状態で記憶される。従って、配置変更に伴って、当該ユーザから仮想のユーザ（仮想の管理者）に金銭やポイント等の価値が移動したことになる。
【０１６６】
それから、配置変更用ノード（選択した振分ノード５０）では、配置変更支援手段５１Ｃにより、全てのユーザノード４０の配置情報記憶手段４３および全ての振分ノード５０の配置情報記憶手段５３に記憶されている各配置情報（図５参照）について、配置変更に係るユーザノード４０が移動元のネットワーク２０，３０に配置されている状態から移動先のネットワーク２０，３０に配置されている状態に変更する配置情報更新処理を実行する（ステップＳ１０８）。なお、この配置情報更新処理は、ユーザノード４０の配置変更手段４１Ｅにより実行してもよい。
【０１６７】
その後、配置変更用ノード（選択した振分ノード５０）では、配置変更支援手段５１Ｃにより、受信した配置変更アクション用の取引データに含まれている当該ユーザの残高を用いて、当該ユーザの残高、および送信先となる配置変更に係るユーザノード４０の識別情報を含む配置変更リターン用の取引データを生成する（ステップＳ１０９）。
【０１６８】
続いて、配置変更支援手段５１Ｃにより、前述したステップＳ１０８の配置情報更新処理を経て配置情報記憶手段５３（図５参照）に記憶されている移動後の状態の配置情報に従って決定した送信経路で、生成した配置変更リターン用の取引データを、移動先のネットワーク２０，３０に配置されたユーザノード４０に向けて送信する（ステップＳ１１０）。
【０１６９】
配置変更に係るユーザノード４０では、配置変更手段４１Ｅにより、前述したステップＳ１０８の配置情報更新処理を経て、自分（ユーザノード４０）が移動先のネットワーク２０，３０に配置された移動後の状態で、配置変更用ノード（選択した振分ノード５０）から送信されてくる配置変更リターン用の取引データを受信する（ステップＳ１１１）。
【０１７０】
その後、配置変更用ノード（選択した振分ノード５０）では、配置変更支援手段５１Ｃにより、生成した配置変更リターン用の取引データをブロック追加手段５１Ｂに渡すことにより、配置変更ではない通常の取引の場合と同様に、ブロック追加処理（ブロックの生成・承認・共有記憶のための処理）を実行させる（ステップＳ１１２）。これにより、ブロック記憶手段５４には、一時的に預かっていた当該ユーザの残高を元に戻したことを意味する取引データ（識別情報の置換を含む。）が、自ネットワーク２０内の他のノードと共有した状態で記憶される。従って、仮想のユーザ（仮想の管理者）から当該ユーザに金銭やポイント等の価値が戻されたことになる。
【０１７１】
また、配置変更に係るユーザノード４０では、配置変更手段４１Ｅにより、受信した配置変更リターン用の取引データをブロック追加手段４１Ｄに渡すことにより、配置変更ではない通常の取引の場合と同様に、ブロック追加処理（ブロックの生成・承認・共有記憶のための処理）を実行させる（ステップＳ１１３）。これにより、ブロック記憶手段４４には、一時的にゼロになっていた当該ユーザの残高が元に戻ることを意味する取引データ（識別情報の置換を含む。）が、自ネットワーク２０，３０（既に移動先のネットワークに変わっている。）内の他のノードと共有した状態で記憶される。従って、仮想のユーザ（仮想の管理者）から当該ユーザに金銭やポイント等の価値が戻されたことになる。
【０１７２】
＜第１実施形態の効果＞
【０１７３】
このような第１実施形態によれば、次のような効果がある。すなわち、取引記録システム１０では、各ノード４０，５０，６０は、自分が配置されている自ネットワーク２０，３０内（自ネットワーク２０，３０に接続配置されている各ノード４０，５０，６０からなるグループ内）のノードが関与した取引データのみを保有すればよい。
【０１７４】
すなわち、ユーザノード４０については、自ネットワーク２０，３０内での取引データ（振分データ５０が介在しなかった場合の取引データ）と、複数のネットワーク間に跨る取引データのうちの自ネットワーク内のノード（ユーザノード４０と振分ノード５０とが同一のネットワークに配置されることのない完全分離型では、ユーザノード４０となるが、それらが同一のネットワークに配置されることのある混在型では、振分ノード５０の場合もある。）が関与した取引データとを保有すればよい。また、振分ノード５０は、自ネットワーク２０を経由した取引データを保有すればよい。さらに、メモリノード６０は、自ネットワーク２０，３０を経由した取引データを保有すればよい。
【０１７５】
従って、各ノード４０，５０，６０は、自ネットワーク以外のネットワーク内での取引データ（自ネットワーク以外のネットワーク内で取引が完結した場合の取引データ）や、自ネットワークを経由していない取引データ（自ネットワーク以外のネットワークのみを経由した取引データ）については、保有しなくてよい。
【０１７６】
このため、各ノード４０，５０，６０が保有するデータ量を少なくすることができる。また、同一のネットワークに配置された各ノードにより形成されたグループでは、いずれのグループにおいても、そのグループの全参加者（全ノード）が取引履歴を保有（共有状態で記憶）するため、既存のブロックチェーン技術が持つ「改ざんしにくい」という特性の損失を少なくすることができる。そして、各ノード４０，５０，６０の保有データ量を少なくすることができるため、各ノード４０，５０，６０の容量逼迫の問題を解消または軽減することができる。
【０１７７】
また、ユーザノード４０のブロック追加手段４１Ｄ、および振分ノード５０のブロック追加手段５１Ｂは、ブロックに取引データを格納する際に、原要求の取引データのままではなく、振分ノードの識別情報を使った置換処理を行う構成とされているので、それぞれのノードに記録される取引データの中に、送信元情報や送信先情報として、自ネットワーク内のノード４０，５０の識別情報か、または自分の直上の振分ノード５０の識別情報が含まれる状態とすることができる。従って、取引データの中に、自ネットワーク内のノードの識別情報が２つ含まれていれば、自ネットワーク内で完結させた取引ということになり、自分の直上の振分ノードの識別情報が含まれていれば、自ネットワークの外部への引き渡しがあった取引、または自ネットワークの外部からの受け取りがあった取引ということになる。このため、アクションを起こしたユーザノード４０から取引相手のユーザノード４０へ金銭やポイント等の価値を送信する場合に、形式上、ノードからノードへと次々に金銭やポイント等の価値をリレーしていった形態をとることができる。
【０１７８】
さらに、ユーザノード４０は、配置変更手段４１Ｅを備え、振分ノード５０は、配置変更支援手段５１Ｃを備えているので、ユーザノード４０の識別情報を変更することなく、ユーザノード４０が配置されるネットワークを、異なるネットワークに変更することができる。すなわち、所属ネットワークを移動させるユーザノード４０について、新しい識別番号を付与しなくても、配置変更を実現することができる。
【０１７９】
また、配置変更用ノードを、ユーザノード４０ではなく、振分ノード５０の中から選択するので、配置変更に係るユーザノード４０を操作するユーザ以外のユーザの残高が、配置変更に伴って不自然に増減する事態を回避することができる。そして、配置変更用ノードを、振分ノード５０の中から選択するので、通常の取引の処理を利用して配置変更を実現することができる。
【０１８０】
［第２実施形態］
【０１８１】
図１６には、本発明の第２実施形態の取引記録システム２００の全体構成が示されている。図１７には、第２実施形態の配置情報記憶手段４３，５３の構成が示されている。また、図１８、図１９には、第２実施形態における完全分離型、混在型の場合の取引データの送信経路のパターンが示されている。さらに、図２０には、第２実施形態の振分ノード５０による処理の流れがフローチャートで示されている。また、図２１は、第２実施形態のユーザノード４０による取引データの引渡時および受取時の処理の内容を示す説明図であり、図２２は、第２実施形態の振分ノード５０による取引データの受信時および送信時の処理の内容を示す説明図である。さらに、図２３〜図２９には、第２実施形態の送金処理の具体例が示されている。
【０１８２】
＜取引記録システム２００の全体構成＞
【０１８３】
本第２実施形態の取引記録システム２００は、振分層が複数階層からなり、従って、アクション層と合わせるとシステム全体では３階層以上となる点を除き、前記第１実施形態の取引記録システム１０と同様であるから、同様な構成や機能を有する部分には同一符号を付して詳しい説明を省略し、以下では異なる部分を中心に説明を行う。
【０１８４】
前記第１実施形態の取引記録システム１０は、１階層の振分層であるネットワーク２０と、最下層のアクション層であるネットワーク３０（３０Ａ，３０Ｂ，３０Ｃ）とを備え、システム全体で２階層であった。これに対し、図１６に示すように、本第２実施形態の取引記録システム２００は、複数階層からなる振分層であるネットワーク２０（２０Ｊ，２０Ｋ，２０Ｌ，２０Ｍ，２０Ｎ，２０Ｐ，２０Ｑ）と、最下層のアクション層であるネットワーク３０（３０Ｓ，３０Ｔ，３０Ｕ，３０Ｖ，３０Ｗ）とを備え、システム全体で３階層以上である。
【０１８５】
より詳細には、取引記録システム２００は、第１振分層であるネットワーク２０Ｊと、その直下の第２振分層であるネットワーク２０Ｋ，２０Ｌと、さらにそれらの直下の第３振分層であるネットワーク２０Ｍ，２０Ｎ，２０Ｐ，２０Ｑと、第２振分層のネットワーク２０Ｋの直下に位置する最下層のアクション層であるネットワーク３０Ｓと、第３振分層のネットワーク２０Ｍ，２０Ｎ，２０Ｐ，２０Ｑの直下に位置する最下層のアクション層であるネットワーク３０Ｔ，３０Ｕ，３０Ｖ，３０Ｗとを備えている。
【０１８６】
従って、図１６に示す例では、最上層の第１振分層のネットワーク２０Ｊから最下層のアクション層のネットワーク３０Ｓまでは、３階層であり、最上層の第１振分層のネットワーク２０Ｊから最下層のアクション層のネットワーク３０Ｔ，３０Ｕ，３０Ｖ，３０Ｗまでは、４階層となっている。このように取引記録システム２００では、部分的に見たときに、階層の数が異なっている部分があってもよい。また、取引記録システム２００の全体を、同じ階層の数で統一してもよい。
【０１８７】
前記第１実施形態の取引記録システム１０の場合と同様に、取引記録システム２００を構成する第１振分層、第２振分層、第３振分層のネットワーク２０（２０Ｊ，２０Ｋ，２０Ｌ，２０Ｍ，２０Ｎ，２０Ｐ，２０Ｑ）には、図１６中の２点鎖線のようにユーザノード４０が配置されていてもよく、その場合は、混合型であり、配置されていない場合は、完全分離型である。
【０１８８】
また、前記第１実施形態の取引記録システム１０では、振分層が１階層であったため、振分ノード５０が上位（直上）の振分ノード５０を有することや、下位（直下）の振分ノード５０を有することはなかったが、本第２実施形態の取引記録システム２００では、振分層が複数階層であるため、振分ノード５０の上位（直上）の振分ノード５０や、振分ノード５０の下位（直下）の振分ノード５０が存在してもよい。
【０１８９】
＜取引記録システム２００における配置情報記憶手段４３，５３＞
【０１９０】
図１７に示すように、本第２実施形態の取引記録システム２００では、ユーザノード４０の配置情報記憶手段４３および振分ノード５０の配置情報記憶手段５３は、前記第１実施形態の取引記録システム１０の場合と同じ構成を有しているので、同じ符号を付している。但し、前記第１実施形態の図１のツリー構造と、本第２実施形態の図１６のツリー構造とは、図示の通り異なっているので、記憶している配置情報は異なっている。
【０１９１】
＜取引記録システム２００におけるユーザノード４０＞
【０１９２】
本第２実施形態の取引記録システム２００では、ユーザノード４０の引渡手段４１Ｂは、図２１に示すように、直上の振分ノード５０への取引データの送信処理Ｄ１を実行する場合と、自ネットワーク内の振分ノード５０のうちの送金先（取引相手）のユーザノード４０を配下に有する振分ノード５０への取引データの送信処理Ｄ３を実行する場合とがあるが、このことは、前記第１実施形態の場合と同様である。なお、自ネットワーク内の送金先（取引相手）のユーザノード４０への取引データの送信処理Ｄ２は必須ではなく、このことも、前記第１実施形態の場合と同様である。Ｄ２の場合は、自分がブロック生成以降の処理を主導するので、自ネットワーク内の他のノードはその主導役のノードにはならないため、必ずしも自ネットワーク内の他のノード（ここでは取引相手のユーザノード４０）に向けて取引データを送信する必要がないからである。
【０１９３】
すなわち、本第２実施形態の取引記録システム２００では、ユーザノード４０の引渡手段４１Ｂは、第１、第２、第３振分層のネットワーク２０（２０Ｊ，２０Ｋ，２０Ｌ，２０Ｍ，２０Ｎ，２０Ｐ，２０Ｑ）にユーザノード４０が配置されることのない完全分離型の場合には、相手位置判断手段４１Ａにより取引相手のユーザノード４０が自ネットワークに配置されていないと判断したときに、自分の直上のネットワーク２０に配置された自分の直上の振分ノード５０に向け（図２１のＤ１）、取引データを送信する処理を実行する。
【０１９４】
また、本第２実施形態の取引記録システム２００では、ユーザノード４０の引渡手段４１Ｂは、第１、第２、第３振分層のネットワーク２０（２０Ｊ，２０Ｋ，２０Ｌ，２０Ｍ，２０Ｎ，２０Ｐ，２０Ｑ）にユーザノード４０が配置されることのある混在型の場合には、相手位置判断手段４１Ａにより取引相手のユーザノード４０が自ネットワークに配置されていないと判断したときに、自分の直上のネットワーク２０に配置された自分の直上の振分ノード５０に向け（図２１のＤ１）、または自ネットワークに配置された振分ノード５０のうちの取引相手のユーザノード４０を配下に有する振分ノード５０に向け（図２１のＤ３）、取引データを送信する処理を実行する。
【０１９５】
さらに、本第２実施形態の取引記録システム２００では、ユーザノード４０の受取手段４１Ｃは、図２１に示すように、直上の振分ノード５０からの取引データの受信処理Ｒ１を実行する場合があるが、このことは、前記第１実施形態の場合と同様である。なお、自ネットワーク内の送金先（取引相手）のユーザノード４０からの取引データの受信処理Ｒ２や、自ネットワーク内の振分ノード５０からの取引データの受信処理Ｒ３は、必須ではなく、このことも、前記第１実施形態の場合と同様である。Ｒ２，Ｒ３の場合は、自分以外のノードがブロック生成以降の処理を主導するので、自分はその主導役のノードにはならないため、必ずしも自ネットワーク内の他のノード（ここではユーザノード４０または振分ノード５０）から取引データを受信する必要がないからである。
【０１９６】
＜取引記録システム２００における振分ノード５０＞
【０１９７】
本第２実施形態の取引記録システム２００では、振分層が複数階層になっているので、振分ノード５０の振分手段５１Ａは、図２２に示すように、前記第１実施形態の取引記録システム１０の場合よりも、実行する処理の種類が多くなる。但し、取引記録システム２００における振分ノード５０の処理のアルゴリズムは、振分層がたまたま１階層になった場合にも適用することができるので、その場合には、前記第１実施形態の取引記録システム１０における振分ノード５０と等価な処理を行うことになる。
【０１９８】
具体的には、本第２実施形態の取引記録システム２００では、振分ノード５０の振分手段５１Ａは、図２２に示すように、直上の他の振分ノード５０からの取引データの受信処理Ｔ１を実行する場合（このＴ１は、前記第１実施形態の取引記録システム１０にはない。）と、自ネットワーク内の他の振分ノード５０からの取引データの受信処理Ｔ２を実行する場合と、自ネットワーク内の送金元のユーザノード４０からの取引データの受信処理Ｔ３を実行する場合と、直下の送金元のユーザノード４０からの取引データの受信処理Ｔ４を実行する場合と、直下の他の振分ノード５０からの取引データの受信処理Ｔ５を実行する場合（このＴ５は、前記第１実施形態の取引記録システム１０にはない。）とがある。このうち、Ｔ２，Ｔ３の受信処理を行った場合は、他ノード主導ケースに該当する。他ノード主導ケースとは、自ネットワーク内の他のノード（送金元のノード）がブロック生成以降の処理を主導し、自分はその主導役のノードにはならずに、自ネットワーク内でのブロックの共有記憶に参加する場合である。完全分離型では、Ｔ２の場合があり（Ｔ３の場合はない。）、混在型では、Ｔ２，Ｔ３の場合がある。
【０１９９】
また、本第２実施形態の取引記録システム２００では、振分ノード５０の振分手段５１Ａは、図２２に示すように、直上の他の振分ノード５０への取引データの送信処理Ｇ１を実行する場合（このＧ１は、前記第１実施形態の取引記録システム１０にはない。）と、自ネットワーク内の他の振分ノード５０のうちの取引相手のユーザノード４０を配下に有する他の振分ノード５０への取引データの送信処理Ｇ２を実行する場合と、直下の送金先（取引相手）のユーザノード４０への取引データの送信処理Ｇ４を実行する場合と、直下の他の振分ノード５０のうちの取引相手のユーザノード４０を配下に有する他の振分ノード５０への取引データの送信処理Ｇ５を実行する場合とがある。Ｇ３は、自分がブロック生成以降の処理を主導するので、自ネットワーク内の他のノードはその主導役のノードにはならないため、必ずしも自ネットワーク内の他のノード（ここでは取引相手のユーザノード４０）に向けて取引データを送信する必要がない場合である。これに対し、Ｇ２は、自分がブロック生成以降の処理を主導するので、自ネットワーク内の他のノードはその主導役のノードにはならないものの、さらに配下のノードに取引データを転送する処理を行う必要があるため、自ネットワーク内の他のノード（ここでは他の振分ノード５０）に向けて取引データを送信する必要がある場合である。
【０２００】
すなわち、本第２実施形態の取引記録システム２００では、振分ノード５０の振分手段５１Ａは、第１、第２、第３振分層のネットワーク２０（２０Ｊ，２０Ｋ，２０Ｌ，２０Ｍ，２０Ｎ，２０Ｐ，２０Ｑ）にユーザノード４０が配置されることのない完全分離型の場合には、ユーザノード４０（図２２のＴ４はあるが、Ｔ３はない）、自ネットワークに配置された他の振分ノード（図２２のＴ２）、または直上若しくは直下のネットワークに配置された他の振分ノード５０（図２２のＴ１，Ｔ５）から取引データを受信した際に、自分の下位の全てのネットワーク（直下のネットワークだけではなく、さらにその下方のネットワークがあれば、それらの全てを含むという意味）からなる配下のネットワークに取引相手のユーザノード４０が配置されているときには、直下のネットワークに配置された他の振分ノード５０のうちの取引相手のユーザノード４０を配下に有する他の振分ノード５０に向け（図２２のＧ５）、または取引相手のユーザノード４０に向け（図２２のＧ４）、取引データを送信する下り方向送信処理を実行する。
【０２０１】
また、振分手段５１Ａは、自ネットワークに配置された他の振替ノード５０の中に取引相手のユーザノード４０を配下に有する他の振替ノード５０があるときには、当該他の振替ノード５０に向け（図２２のＧ２）、取引データを送信するネットワーク内送信処理を実行する。
【０２０２】
さらに、振分手段５１Ａは、配下のネットワークに取引相手のユーザノード４０が配置されておらず、かつ、自ネットワークに配置された他の振替ノード５０の中に取引相手のユーザノード４０を配下に有する他の振替ノード５０がないときには、直上のネットワークに配置された自分の直上の他の振分ノード５０に向け（図２２のＧ１）、取引データを送信する上り方向送信処理を実行する。
【０２０３】
そして、本第２実施形態の取引記録システム２００では、振分ノード５０の振分手段５１Ａは、第１、第２、第３振分層のネットワーク２０（２０Ｊ，２０Ｋ，２０Ｌ，２０Ｍ，２０Ｎ，２０Ｐ，２０Ｑ）にユーザノード４０が配置されることのある混在型の場合には、直下のネットワークに配置された直下のユーザノード４０（図２２のＴ４）、自ネットワークに配置されたユーザノード（図２２のＴ３）、自ネットワークに配置された他の振分ノード５０（図２２のＴ２）、または直上若しくは直下のネットワークに配置された他の振分ノード５０（図２２のＴ１，Ｔ５）から取引データを受信した際に、取引相手のユーザノード４０が自ネットワークに配置されていないときであり、かつ、配下のネットワークに取引相手のユーザノード４０が配置されているときには、直下のネットワークに配置された他の振分ノード５０のうちの取引相手のユーザノード４０を配下に有する他の振分ノード５０に向け（図２２のＧ５）、または取引相手のユーザノード４０に向け（図２２のＧ４）、取引データを送信する下り方向送信処理を実行する。なお、取引相手のユーザノード４０が自ネットワークに配置されているときは、図２２のＧ３の場合であるから、取引データの送信の必要はない。
【０２０４】
また、振分手段５１Ａは、自ネットワークに配置された他の振替ノード５０の中に取引相手のユーザノード４０を配下に有する他の振替ノード５０があるときには、当該他の振替ノード５０に向け（図２２のＧ２）、取引データを送信するネットワーク内送信処理を実行する。
【０２０５】
さらに、振分手段５１Ａは、配下のネットワークに取引相手のユーザノード４０が配置されておらず、かつ、自ネットワークに配置された他の振替ノード５０の中に取引相手のユーザノード４０を配下のネットワークに有する他の振替ノード５０がないときには、直上のネットワークに配置された自分の直上の他の振分ノード５０に向け（図２２のＧ１）、取引データを送信する上り方向送信処理を実行する。
【０２０６】
＜取引記録システム２００による取引データの記録処理の流れ＞
【０２０７】
このような第２実施形態においては、以下のようにして取引記録システム２００により、取引データの記録処理が行われる。
【０２０８】
図１８において、完全分離型の場合の取引データの送信経路のパターンは、次の通りであり、ノードに付された符号は、図１６と対応している。但し、等価なパターンは、記載を省略している。この図１８は、第１実施形態の図６に相当するものである。
【０２０９】
パターンＰ３は、アクション層のネットワーク３０Ｔ内のユーザノード４０Ｔ（図１８中の★印）から、同じネットワーク３０Ｔ内のユーザノード４０Ｘに至る送信経路である。
【０２１０】
パターンＰ４は、アクション層のネットワーク３０Ｔ内のユーザノード４０Ｔ（図１８中の★印）から、第３振分層のネットワーク２０Ｍ内の振分ノード５０Ｒ、第２振分層のネットワーク２０Ｋ内の振分ノード５０Ｍ、第１振分層のネットワーク２０Ｊ内の振分ノード５０Ｊ、振分ノード５０Ｋを、第２振分層のネットワーク２０Ｌ内の振分ノード５０Ｑ、第３振分層のネットワーク２０Ｑ内の振分ノード５０Ｘをこの順に介して、アクション層のネットワーク３０Ｗ内のユーザノード４０Ｗに至る送信経路である。
【０２１１】
図１９において、混在型の場合の取引データの送信経路のパターンは、次の通りであり、ノードに付された符号は、図１６と対応している。但し、等価なパターンは、記載を省略している。この図１９は、第１実施形態の図７に相当するものである。
【０２１２】
パターンＭ６は、パターンＰ３と同じであり、アクション層のネットワーク３０Ｔ内のユーザノード４０Ｔ（図１９中の★印）から、同じネットワーク３０Ｔ内のユーザノード４０Ｘに至る送信経路である。
【０２１３】
パターンＭ７は、パターンＰ４と同じであり、アクション層のネットワーク３０Ｔ内のユーザノード４０Ｔ（図１９中の★印）から、第３振分層のネットワーク２０Ｍ内の振分ノード５０Ｒ、第２振分層のネットワーク２０Ｋ内の振分ノード５０Ｍ、第１振分層のネットワーク２０Ｊ内の振分ノード５０Ｊ、振分ノード５０Ｋ、第２振分層のネットワーク２０Ｌ内の振分ノード５０Ｑ、第３振分層のネットワーク２０Ｑ内の振分ノード５０Ｘをこの順に介して、アクション層のネットワーク３０Ｗ内のユーザノード４０Ｗに至る送信経路である。
【０２１４】
パターンＭ８は、第１振分層のネットワーク２０Ｊ内のユーザノード４０（図１９中の★印、図１６には不図示）から、同じネットワーク２０Ｊ内のユーザノード４０（図１６には不図示）に至る送信経路である。
【０２１５】
パターンＭ９は、第２振分層のネットワーク２０Ｋ内のユーザノード４０Ｊ（図１９中の★印）から、同じネットワーク２０Ｋ内のユーザノード４０Ｋに至る送信経路である。
【０２１６】
パターンＭ１０は、アクション層のネットワーク３０Ｔ内のユーザノード４０Ｔ（図１９中の★印）から、第３振分層のネットワーク２０Ｍ内の振分ノード５０Ｒ、第２振分層のネットワーク２０Ｋ内の振分ノード５０Ｍをこの順に介して、第２振分層のネットワーク２０Ｋ内のユーザノード４０Ｋに至る送信経路である。
【０２１７】
パターンＭ１１は、アクション層のネットワーク３０Ｔ内のユーザノード４０Ｔ（図１９中の★印）から、第３振分層のネットワーク２０Ｍ内の振分ノード５０Ｒ、第２振分層のネットワーク２０Ｋ内の振分ノード５０Ｍ、第１振分層のネットワーク２０Ｊ内の振分ノード５０Ｊをこの順に介して、第１振分層のネットワーク２０Ｊ内のユーザノード４０（図１６には不図示）に至る送信経路である。
【０２１８】
パターンＭ１１は、アクション層のネットワーク３０Ｔ内のユーザノード４０Ｔ（図１９中の★印）から、第３振分層のネットワーク２０Ｍ内の振分ノード５０Ｒ、第２振分層のネットワーク２０Ｋ内の振分ノード５０Ｍ、第１振分層のネットワーク２０Ｊ内の振分ノード５０Ｊ、振分ノード５０Ｋをこの順に介して、第２振分層のネットワーク２０Ｌ内のユーザノード４０Ｍに至る送信経路である。
【０２１９】
パターンＭ１２は、第２振分層のネットワーク２０Ｋ内のユーザノード４０Ｊ（図１９中の★印）から、第１振分層のネットワーク２０Ｊ内の振分ノード５０Ｊを介して、第１振分層のネットワーク２０Ｊ内のユーザノード４０（図１６には不図示）に至る送信経路である。
【０２２０】
パターンＭ１３は、第２振分層のネットワーク２０Ｋ内のユーザノード４０Ｊ（図１９中の★印）から、第１振分層のネットワーク２０Ｊ内の振分ノード５０Ｊ、振分ノード５０Ｋをこの順に介して、第２振分層のネットワーク２０Ｌ内のユーザノード４０Ｍに至る送信経路である。
【０２２１】
パターンＭ１４は、第２振分層のネットワーク２０Ｋ内のユーザノード４０Ｊ（図１９中の★印）から、第１振分層のネットワーク２０Ｊ内の振分ノード５０Ｊ、振分ノード５０Ｋ、第２振分層のネットワーク２０Ｌ内の振分ノード５０Ｑ、第３振分層のネットワーク２０Ｑ内の振分ノード５０Ｘをこの順に介して、アクション層のネットワーク３０Ｗ内のユーザノード４０Ｗに至る送信経路である。
【０２２２】
パターンＭ１５は、第１振分層のネットワーク２０Ｊ内のユーザノード４０（図１９中の★印、図１６には不図示）から、第１振分層のネットワーク２０Ｊ内の振分ノード５０Ｋを介して、第２振分層のネットワーク２０Ｌ内のユーザノード４０Ｍに至る送信経路である。
【０２２３】
パターンＭ１６は、第１振分層のネットワーク２０Ｊ内のユーザノード４０（図１９中の★印、図１６には不図示）から、第１振分層のネットワーク２０Ｊ内の振分ノード５０Ｋ、第２振分層のネットワーク２０Ｌ内の振分ノード５０Ｑ、第３振分層のネットワーク２０Ｑ内の振分ノード５０Ｘをこの順に介して、アクション層のネットワーク３０Ｗ内のユーザノード４０Ｗに至る送信経路である。
【０２２４】
パターンＭ１７は、第２振分層のネットワーク２０Ｌ内のユーザノード４０Ｌ（図１９中の★印）から、第２振分層のネットワーク２０Ｌ内の振分ノード５０Ｑ、第３振分層のネットワーク２０Ｑ内の振分ノード５０Ｘをこの順に介して、アクション層のネットワーク３０Ｗ内のユーザノード４０Ｗに至る送信経路である。
【０２２５】
図２０には、以上のような各種のパターンの送信経路で取引データを送信する場合における、個々の振分ノード５０での処理の流れが示されている。なお、個々のユーザノード４０での処理の流れは、前記第１実施形態の図８に示した処理の流れと同じである。
【０２２６】
図２０において、振替ノード５０は、取引データ（原要求）を受信した場合には（ステップＳ４１）、振分手段５１Ａにより、自ネットワーク２０内に、送金先（取引相手）のユーザノード４０が配置されているか否かを判断する（ステップＳ４２）。このステップＳ４２の処理は、第１、第２、第３振分層のネットワーク２０（２０Ｊ，２０Ｋ，２０Ｌ，２０Ｍ，２０Ｎ，２０Ｐ，２０Ｑ）にユーザノード４０が配置されることのある混在型の場合のみの処理であり、完全分離型の場合は、自ネットワーク２０内に、送金先（取引相手）のユーザノード４０が配置されることはない。
【０２２７】
ステップＳ４２で、送金先（取引相手）のユーザノード４０が配置されていないと判断した場合には、振分手段５１Ａにより、配下のネットワーク（直下のネットワークだけではなく、その下方のネットワークがあれば、それらのネットワークも含む。）に、送金先（取引相手）のユーザノード４０が配置されているか否かを判断する（ステップＳ４３）。
【０２２８】
ステップＳ４３で、配下のネットワークに、送金先（取引相手）のユーザノード４０が配置されていないと判断した場合には、振分手段５１Ａにより、自ネットワーク２０に配置された他の振替ノード５０の中に、送金先（取引相手）のユーザノード４０を配下に有する他の振替ノード５０があるか否かを判断する（ステップＳ４４）。
【０２２９】
ステップＳ４４で、送金先（取引相手）のユーザノード４０を配下に有する他の振替ノード５０がないと判断された場合には、振分手段５１Ａにより、直上のネットワーク２０に配置された自分の直上の他の振分ノード５０に向け（図２２のＧ１）、取引データ（原要求）を送信する上り方向送信処理を実行する（ステップＳ４５）。
【０２３０】
続いて、ブロック追加手段５１Ｂにより、取引データ（ノードの識別情報の置換を行った取引データ）を含むブロックの生成のための処理を実行する（ステップＳ４６）。この場合は、送金元の識別情報は、自分（振替ノード５０）の識別情報であり、送金先の識別情報は、取引データ（原要求）の送信先の振替ノード５０の識別情報である。
【０２３１】
一方、ステップＳ４４で、自ネットワーク２０内に、送金先（取引相手）のユーザノード４０を配下に有する他の振替ノード５０があると判断された場合には、振分手段５１Ａにより、当該他の振替ノード５０に向け（図２２のＧ２）、取引データ（原要求）を送信するネットワーク内送信処理を実行する（ステップＳ４７）。そして、前述したステップＳ４６に進む。
【０２３２】
また、ステップＳ４３で、配下のネットワークに、送金先（取引相手）のユーザノード４０が配置されていると判断した場合には、直下のネットワークに配置された他の振分ノード５０のうちの取引相手のユーザノード４０を配下に有する他の振分ノード５０に向け（図２２のＧ５）、または取引相手のユーザノード４０に向け（図２２のＧ４）、取引データ（原要求）を送信する下り方向送信処理を実行する（ステップＳ４８）。
【０２３３】
続いて、ブロック追加手段５１Ｂにより、取引データ（ノードの識別情報の置換を行った取引データ）を含むブロックの生成のための処理を実行する（ステップＳ４９）。この場合は、送金元の識別情報は、取引データ（原要求）の送信元の振替ノード５０の識別情報であり、送金先の識別情報は、自分（振替ノード５０）の識別情報である。但し、前述した他ノード主導ケースの場合（図２２のＴ２，Ｔ３）は、このステップＳ４９の処理を行う必要はない。
【０２３４】
また、ステップＳ４２で、自ネットワーク２０内に、送金先（取引相手）のユーザノード４０が配置されていると判断した場合は、図２２のＧ３の場合であるから、振分手段５１Ａによる取引データ（原要求）の送信の必要はないので（但し、送信してもよい。）、ブロック追加手段５１Ｂにより、取引データ（ノードの識別情報の置換を行った取引データ）を含むブロックの生成のための処理を実行する（ステップＳ５０）。この場合は、送金元の識別情報は、自分（振替ノード５０）の識別情報であり、送金先の識別情報は、取引相手のユーザノード４０の識別情報である。
【０２３５】
その後、ブロック追加手段５１Ｂにより、生成したブロックの承認のための処理を実行し（ステップＳ５１）、さらに、生成・承認されたブロックを自ネットワーク２０内の各ノードに保存するための処理を実行する（ステップＳ５２）。但し、前述した他ノード主導ケースの場合（図２２のＴ２，Ｔ３）は、これらのステップＳ５１，Ｓ５２の処理を行う必要はない。
【０２３６】
図２３〜図２９には、図１９に示された取引データの送信経路のパターンに、前記第１実施形態の図８に示されたユーザノード４０による処理の流れ（ステップＳ１〜Ｓ８）および上述した図２０に示された振分ノード５０による処理の流れ（ステップＳ４１〜Ｓ５２）を嵌め込んだ状態の送金処理の全体的な流れが示されている。
【０２３７】
図２３および図２４は、図１９を用いて説明したパターンＭ７の送信経路で取引データ（原要求）が送られていく場合の例であり、アクション層のネットワーク３０Ｔ内のユーザノード４０Ｔから、第３振分層のネットワーク２０Ｍ内の振分ノード５０Ｒ、第２振分層のネットワーク２０Ｋ内の振分ノード５０Ｍ、第１振分層のネットワーク２０Ｊ内の振分ノード５０Ｊ、振分ノード５０Ｋ、第２振分層のネットワーク２０Ｌ内の振分ノード５０Ｑ、第３振分層のネットワーク２０Ｑ内の振分ノード５０Ｘをこの順に介して、アクション層のネットワーク３０Ｗ内のユーザノード４０Ｗに至る送信経路の場合の送金処理の流れであり、詳細は、図示の通りである。図２３中および図２４中のＳ１〜Ｓ８の符号は、図８中のステップ番号を示し、図２３中および図２４中のＳ４１〜Ｓ５２の符号は、図２０中のステップ番号を示している。この場合、ブロック内に格納される取引データ（置換を含む。）は、「送金元：ユーザノード４０Ｔ⇒送金先：振分ノード５０Ｒ」、「送金元：振分ノード５０Ｒ⇒送金先：振分ノード５０Ｍ」、「送金元：振分ノード５０Ｍ⇒送金先：振分ノード５０Ｊ」、「送金元：振分ノード５０Ｊ⇒送金先：振分ノード５０Ｋ」、「送金元：振分ノード５０Ｋ⇒送金先：振分ノード５０Ｑ」、「送金元：振分ノード５０Ｑ⇒送金先：振分ノード５０Ｘ」、「送金元：振分ノード５０Ｘ⇒送金先：ユーザノード４０Ｗ」という順番になっているので、形式的には、取引データ（原要求）である「送金元：ユーザノード４０Ｔ⇒送金先：ユーザノード４０Ｗ」という送金（取引）を実現するために、ノードからノードへと次々にリレーのような送金が行われたことになる。以下の他の例でも同様である。
【０２３８】
なお、他のノードへの取引データ（原要求）の送信処理と、自分が主導する自ネットワーク内でのブロック追加処理（ブロックの生成・承認・共有記憶のための処理）とを逆の処理順とし、少なくとも承認が済んでから、他のノードへの取引データ（原要求）の送信処理を行うようにしてもよいが、承認に時間がかかる場合には、図示の通りの順番で、他のノードへの取引データ（原要求）の送信処理を先に行うことが好ましい。以下の他の例でも同様である。
【０２３９】
図２５は、アクション層のネットワークのユーザから、異なるアクション層のネットワークのユーザへの送金という点では、図１９を用いて説明したパターンＭ７と略等価な送信経路で取引データ（原要求）が送られていく場合の例であり、アクション層のネットワーク３０Ｓ内のユーザノード４０Ｓから、第２振分層のネットワーク２０Ｋ内の振分ノード５０Ｌ、振分ノード５０Ｍ、第３振分層のネットワーク２０Ｍ内の振分ノード５０Ｒをこの順に介して、アクション層のネットワーク３０Ｔ内のユーザノード４０Ｔに至る送信経路の場合の送金処理の流れであり、詳細は、図示の通りである。
【０２４０】
図２６は、振分層のネットワークのユーザから、異なる振分層のネットワークのユーザへの送金であり、かつ、上ってから下るという点では、図１９を用いて説明したパターンＭ１３と等価な送信経路で取引データ（原要求）が送られていく場合の例であり、第２振分層のネットワーク２０Ｋ内のユーザノード４０Ｋから、第１振分層のネットワーク２０Ｊ内の振分ノード５０Ｊ、振分ノード５０Ｋをこの順に介して、第２振分層のネットワーク２０Ｌ内のユーザノード４０Ｌに至る送信経路の場合の送金処理の流れであり、詳細は、図示の通りである。
【０２４１】
図２７は、図１９を用いて説明したパターンＭ９と等価な送信経路で取引データ（原要求）が送られていく場合の例であり、第２振分層のネットワーク２０Ｌ内のユーザノード４０Ｌから、同じネットワーク２０Ｌ内のユーザノード４０Ｍに至る送信経路の場合の送金処理の流れであり、詳細は、図示の通りである。この場合には、同じネットワーク２０Ｌ内の取引相手のユーザノード４０Ｍには、取引データ（原要求）の送信処理は行っていないので、取引相手のユーザノード４０Ｍがネットワーク２０Ｌ内でのブロック追加処理（ブロックの生成・承認・共有記憶のための処理）を主導することはないが、取引相手のユーザノード４０Ｍも、ネットワーク２０Ｌに参加しているため、取引相手のユーザノード４０Ｍにおけるブロックの保存処理（図２７の処理フローに記載されない処理）は行われる。
【０２４２】
図２８は、アクション層のネットワークのユーザから、振分層のネットワークのユーザまで上っていくという点では、図１９を用いて説明したパターンＭ１０と等価な送信経路で取引データ（原要求）が送られていく場合の例であり、アクション層のネットワーク３０Ｓ内のユーザノード４０Ｓから、第２振分層のネットワーク２０Ｋ内の振分ノード５０Ｌを介して、第２振分層のネットワーク２０Ｋ内のユーザノード４０Ｋに至る送信経路の場合の送金処理の流れであり、詳細は、図示の通りである。
【０２４３】
図２９は、振分層のネットワークのユーザから、アクション層のネットワークのユーザまで下がっていくという点では、図１９を用いて説明したパターンＭ１７と等価な送信経路で取引データ（原要求）が送られていく場合の例であり、第２振分層のネットワーク２０Ｋ内のユーザノード４０Ｋから、第２振分層のネットワーク２０Ｋ内の振分ノード５０Ｌを介して、アクション層のネットワーク３０Ｓ内のユーザノード４０Ｓに至る送信経路の場合の送金処理の流れであり、詳細は、図示の通りである。
【０２４４】
＜第２実施形態の効果＞
【０２４５】
このような第２実施形態によれば、前記第１実施形態の場合と同様に、各ノード４０，５０，６０は、自ネットワーク以外のネットワーク内での取引データ（自ネットワーク以外のネットワーク内で取引が完結した場合の取引データ）や、自ネットワークを経由していない取引データ（自ネットワーク以外のネットワークのみを経由した取引データ）については、保有しなくてよいので、各ノード４０，５０，６０が保有するデータ量を少なくすることができる。そして、本第２実施形態では、振分層が複数階層からなるので、前記第１実施形態の場合に比べ、各ノード４０，５０，６０の保有データ量を、より一層少なくすることができるため、各ノード４０，５０，６０の容量逼迫の問題を、より効果的に解消または軽減することができる。
【０２４６】
また、前記第１実施形態の場合と同様に、同一のネットワークに配置された各ノードにより形成されたグループでは、いずれのグループにおいても、そのグループの全参加者（全ノード）が取引履歴を保有（共有状態で記憶）するため、既存のブロックチェーン技術が持つ「改ざんしにくい」という特性の損失を少なくすることができる。
【０２４７】
さらに、前記第１実施形態の場合と同様に、ユーザノード４０のブロック追加手段４１Ｄ、および振分ノード５０のブロック追加手段５１Ｂは、ブロックに取引データを格納する際に、原要求の取引データのままではなく、振分ノードの識別情報を使った置換処理を行う構成とされているので、アクションを起こしたユーザノード４０から取引相手のユーザノード４０へ金銭やポイント等の価値を送信する場合に、形式上、ノードからノードへと次々に金銭やポイント等の価値をリレーしていった形態をとることができる。
【０２４８】
そして、前記第１実施形態の場合と同様に、ユーザノード４０は、配置変更手段４１Ｅを備え、振分ノード５０は、配置変更支援手段５１Ｃを備えているので、ユーザノード４０の識別情報を変更することなく、ユーザノード４０が配置されるネットワークを、異なるネットワークに変更することができる。すなわち、所属ネットワークを移動させるユーザノード４０について、新しい識別番号を付与しなくても、配置変更を実現することができる。
【０２４９】
また、前記第１実施形態の場合と同様に、配置変更用ノードを、ユーザノード４０ではなく、振分ノード５０の中から選択するので、配置変更に係るユーザノード４０を操作するユーザ以外のユーザの残高が、配置変更に伴って不自然に増減する事態を回避することができる。そして、配置変更用ノードを、振分ノード５０の中から選択するので、通常の取引の処理を利用して配置変更を実現することができる。
【０２５０】
［変形の形態］
【０２５１】
なお、本発明は前記各実施形態に限定されるものではなく、本発明の目的を達成できる範囲内での変形等は本発明に含まれるものである。
【０２５２】
例えば、前記各実施形態では、アクションを起こすユーザノード４０から、取引相手のユーザノード４０への送金等の取引に関する処理を行う際には、取引データ（原要求）が、配置情報（前記第１実施形態の図１や前記第２実施形態の図１６のツリー構造）により定まる送信経路上を、アクションを起こすユーザノード４０から取引相手のユーザノード４０に向かって進むようにしていた。しかし、このような順方向送信処理だけではなく、逆進処理も行う次のような構成としてもよい。
【０２５３】
すなわち、図３０に示すように、アクションを起こすユーザノード４０が、自ネットワーク以外のネットワークに配置された取引相手のユーザノード４０に対して取引データ（原要求）を直接に送信することができる場合には、アクションを起こすユーザノード４０は、配置情報で定まる取引相手のユーザノード４０までの送信経路上の振分ノード５０のうち自分に最も近い位置の振分ノード５０に向けて取引データ（原要求）を送信する順方向送信処理（前記各実施形態で行っていた処理）と併せ、取引相手のユーザノード４０に取引データ（原要求）を直接に送信する直接送信処理を実行する。
【０２５４】
次に、取引相手のユーザノード４０は、アクションを起こすユーザノード４０から直接送信処理により送信されてくる取引データ（原要求）を直接に受信した場合には、送信経路上の振分ノード５０およびネットワークを逆方向に進むように取引データ（原要求）を送信する逆進処理（図３０中の点線）を実行する。
【０２５５】
順方向送信処理による取引データ（原要求）と、逆進処理による取引データ（原要求）とは、それぞれ送信経路上の中間に位置する予め定められた振分ノード５０やネットワークまで送信されるか、または、取引データ（原要求）に付帯する突合位置情報（どこまで担当するのかの情報）により指定される送信経路上の振分ノード５０やネットワークまで送信されるようにすればよい。図３０の例では、最上層の振分層であるネットワーク２０内での取引データ（ノードの識別情報の置換を含む。）の記録については、順方向送信処理が担当し、逆進処理は関与していない。要するに、順方向送信処理の担当分（図３０中の●印）についての振分ノード５０やネットワークと、逆進処理の担当分（図３０中の★印）についての振分ノード５０やネットワークとが、重ならないように定めておけばよい。
【０２５６】
このように順方向送信処理、および逆進処理を行う構成とした場合には、取引相手のユーザノード４０までの送信経路上の各ネットワーク２０，３０に配置された各ノード４０，５０，６０でのブロックの生成、承認、保存（共有状態での記憶）のための処理を、全体として早期に完了させることができる。特に、送信経路上の振分ノード５０やネットワーク２０，３０の数が多いときには、顕著な効果を得ることができる。
【産業上の利用可能性】
【０２５７】
以上のように、本発明の取引記録システムおよびプログラムは、例えば、金銭、ポイント、有価証券、債権債務、資産、労働力、コンテンツ等のような価値についての送金、決済、貯蓄、分配、付与、交換、移動、消費、貸借、売買、権利行使、義務履行等や、契約、コミュニケーション、ＩｏＴ（インターネット・オヴ・スィングズ）等の各種データの送受信などに用いるのに適している。
【符号の説明】
【０２５８】
１０，２００  取引記録システム
２０（２０Ｊ，２０Ｋ，２０Ｌ，２０Ｍ，２０Ｎ，２０Ｐ，２０Ｑ）  振分層のネットワーク
３０（３０Ａ，３０Ｂ，３０Ｃ，３０Ｓ，３０Ｔ，３０Ｕ，３０Ｖ，３０Ｗ）  アクション層のネットワーク
４０（４０Ａ，４０Ｂ，４０Ｃ，４０Ｄ，４０Ｅ，４０Ｆ，４０Ｊ，４０Ｋ，４０Ｌ，４０Ｍ，４０Ｓ，４０Ｔ，４０Ｗ）  ユーザノード
４１Ａ  相手位置判断手段
４１Ｂ  引渡手段
４１Ｃ  受取手段
４１Ｄ  ブロック追加手段
４１Ｅ  配置変更手段
４３  配置情報記憶手段
４４  ブロック記憶手段
５０（５０Ａ，５０Ｂ，５０Ｃ，５０Ｊ，５０Ｋ，５０Ｌ，５０Ｍ，５０Ｎ，５０Ｐ，５０Ｑ，５０Ｒ，５０Ｓ，５０Ｔ，５０Ｕ，５０Ｖ，５０Ｗ，５０Ｘ，５０Ｙ）  振分ノード
５１Ａ  振分手段
５１Ｂ  ブロック追加手段
５１Ｃ  配置変更支援手段
５３  配置情報記憶手段
５４  ブロック記憶手段
６０  メモリノード
【図１】
2018067108.tif 000003
【図２】
2018067108.tif 000004
【図３】
2018067108.tif 000005
【図４】
2018067108.tif 000006
【図５】
2018067108.tif 000007
【図６】
2018067108.tif 000008
【図７】
2018067108.tif 000009
【図８】
2018067108.tif 000010
【図９】
2018067108.tif 000011
【図１０】
2018067108.tif 000012
【図１１】
2018067108.tif 000013
【図１２】
2018067108.tif 000014
【図１３】
2018067108.tif 000015
【図１４】
2018067108.tif 000016
【図１５】
2018067108.tif 000017
【図１６】
2018067108.tif 000018
【図１７】
2018067108.tif 000019
【図１８】
2018067108.tif 000020
【図１９】
2018067108.tif 000021
【図２０】
2018067108.tif 000022
【図２１】
2018067108.tif 000023
【図２２】
2018067108.tif 000024
【図２３】
2018067108.tif 000025
【図２４】
2018067108.tif 000026
【図２５】
2018067108.tif 000027
【図２６】
2018067108.tif 000028
【図２７】
2018067108.tif 000029
【図２８】
2018067108.tif 000030
【図２９】
2018067108.tif 000031
【図３０】
2018067108.tif 000032
【手続補正書】
【提出日】平成29年10月31日(2017.10.31)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項４
【補正方法】変更
【補正の内容】
【請求項４】
前記ユーザノードの前記ブロック追加手段は、
前記ユーザノードの前記ブロック記憶手段に記憶させる前記ブロックを生成する際には、同一のネットワークに配置された前記ユーザノード間の取引については、取引の当事者の双方のユーザノードの識別情報を含む前記取引データを用い、
異なるネットワークに配置された前記ユーザノード間の取引については、取引の当事者の一方のユーザノードの識別情報、および前記取引データの送受信に関与した前記振分ノードの識別情報を含む前記取引データを用いて、前記ブロックを生成するための処理を実行する構成とされ、
前記振分ノードの前記ブロック追加手段は、
前記振分ノードの前記ブロック記憶手段に記憶させる前記ブロックを生成する際には、前記取引データの送受信に関与した自分の識別情報、および送受信の相手の他の振分ノード若しくは前記取引相手のユーザノードの識別情報を用いて、前記ブロックを生成するための処理を実行する構成とされている
ことを特徴とする請求項２または３に記載の取引記録システム。