JP7055234B1 - 情報処理装置、プログラム、三次元データ管理システムおよび三次元データ管理方法 - Google Patents
情報処理装置、プログラム、三次元データ管理システムおよび三次元データ管理方法 Download PDFInfo
- Publication number
- JP7055234B1 JP7055234B1 JP2021159494A JP2021159494A JP7055234B1 JP 7055234 B1 JP7055234 B1 JP 7055234B1 JP 2021159494 A JP2021159494 A JP 2021159494A JP 2021159494 A JP2021159494 A JP 2021159494A JP 7055234 B1 JP7055234 B1 JP 7055234B1
- Authority
- JP
- Japan
- Prior art keywords
- user
- change
- component
- information
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 181
- 230000010365 information processing Effects 0.000 title claims abstract description 33
- 238000013523 data management Methods 0.000 title claims description 49
- 230000008859 change Effects 0.000 claims abstract description 235
- 238000012545 processing Methods 0.000 claims abstract description 156
- 230000008569 process Effects 0.000 claims abstract description 145
- 230000004044 response Effects 0.000 claims description 10
- 238000012217 deletion Methods 0.000 claims description 8
- 230000037430 deletion Effects 0.000 claims description 8
- 238000012986 modification Methods 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 abstract description 37
- 230000006870 function Effects 0.000 description 25
- 238000013075 data extraction Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 18
- 238000013461 design Methods 0.000 description 10
- 238000007726 management method Methods 0.000 description 10
- 238000010276 construction Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 239000000470 constituent Substances 0.000 description 7
- 238000005065 mining Methods 0.000 description 5
- 238000013475 authorization Methods 0.000 description 4
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 239000003990 capacitor Substances 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000012508 change request Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
図26には、設計・施工用の三次元CADのファイル3021の構成例を示してある。
図26には、具体例として、三次元物体3011(テレビ)を示してある。
三次元物体3011は複数の構成要素である、構成要素A(ディスプレイ)、構成要素B(支持部)、構成要素C(スタンド)から構成される。
この場合、ファイル3021には、構成要素Aの形状データ、構成要素Bの形状データ、構成要素Cの形状データ、構成要素Aの属性データ、構成要素Bの属性データ、構成要素Cの属性データが含まれる。
このように、すべての構成要素の形状データおよび属性データが、ひとつのファイル3021により管理される。
また、ファイル3021の形式は、CADベンダー独自の形式であり、当該形式の仕様が公開されていない場合も多い。
本開示の一態様は、複数の構成要素から構成される三次元物体について前記構成要素ごとに、第3ユーザに対して第4ユーザから変更の許可が行われた場合に前記第3ユーザによって行われる操作に応じて前記第4ユーザに対して変更内容の申請を行う処理を実行する処理部を備え、前記処理部は、前記第3ユーザに対して前記第4ユーザから変更の許可が行われた場合に、前記第3ユーザによって行われる操作に応じて第5ユーザに対して変更の許可を行い前記第5ユーザからの変更内容の申請に対して承認を行う処理を実行し、前記第3ユーザによって行われる操作に応じて前記第5ユーザからの変更内容で前記第4ユーザに対して変更内容の申請を行う処理を実行する、情報処理装置である。
本開示の一態様は、コンピュータに、複数の構成要素から構成される三次元物体について前記構成要素ごとに、第3ユーザに対して第4ユーザから変更の許可が行われた場合に前記第3ユーザによって行われる操作に応じて前記第4ユーザに対して変更内容の申請を行う処理ステップを実行させるためのプログラムであって、前記処理ステップは、前記第3ユーザに対して前記第4ユーザから変更の許可が行われた場合に、前記第3ユーザによって行われる操作に応じて第5ユーザに対して変更の許可を行い前記第5ユーザからの変更内容の申請に対して承認を行う処理を実行し、前記第3ユーザによって行われる操作に応じて前記第5ユーザからの変更内容で前記第4ユーザに対して変更内容の申請を行う処理を実行する、プログラムである。
本開示の一態様は、複数の構成要素から構成される三次元物体について前記構成要素ごとに、第1ユーザによって行われる操作に応じて第2ユーザに対して変更の許可を行う処理を実行する第1処理部と、前記第2ユーザによって行われる操作に応じて前記第1ユーザに対して変更内容の申請を行う処理を実行する第2処理部と、前記第1ユーザによって行われる操作に応じて前記第2ユーザからの変更内容の申請に対して承認を行う処理を実行する第3処理部と、を備え、前記第2ユーザに対して前記第1ユーザから変更の許可が行われた場合に、前記第2ユーザによって行われる操作に応じて第5ユーザに対して変更の許可を行い前記第5ユーザからの変更内容の申請に対して承認を行う処理を実行し、前記第2ユーザによって行われる操作に応じて前記第5ユーザからの変更内容で前記第1ユーザに対して変更内容の申請を行う処理を実行する、三次元データ管理システムである。
本開示の一態様は、複数の構成要素から構成される三次元物体について前記構成要素ごとに、第1ユーザによって行われる操作に応じて第2ユーザに対して変更の許可を行う処理を実行する第1処理ステップと、前記第2ユーザによって行われる操作に応じて前記第1ユーザに対して変更内容の申請を行う処理を実行する第2処理ステップと、前記第1ユーザによって行われる操作に応じて前記第2ユーザからの変更内容の申請に対して承認を行う処理を実行する第3処理ステップと、を備え、前記第2ユーザに対して前記第1ユーザから変更の許可が行われた場合に、前記第2ユーザによって行われる操作に応じて第5ユーザに対して変更の許可を行い前記第5ユーザからの変更内容の申請に対して承認を行う処理を実行し、前記第2ユーザによって行われる操作に応じて前記第5ユーザからの変更内容で前記第1ユーザに対して変更内容の申請を行う処理を実行する、三次元データ管理方法である。
本例では、ファイルデータベース(ファイルDB)を各ノードで保持する場合を示す。
三次元データ管理システム1は、複数のコンピュータシステム11~14と、P2P(Peer to Peer)ネットワーク21と、を備える。
それぞれのコンピュータシステム11~14は、P2Pネットワーク21と接続され、P2Pネットワーク21を介して互いに通信することが可能である。
それぞれのコンピュータシステム11~14は、ノードとなる。図1の例では、それぞれのコンピュータシステム11~14は、許可ノード、申請ノード、承認ノード、マイナーノードとして示されているが、必ずしもコンピュータシステムごとにノードが決められていなくてもよく、1個のコンピュータシステムが2種類以上のノードとして機能してもよい。
本実施形態では、ノードは、ブロックチェーンを共有保有しているコンピュータシステムを示す。
本実施形態では、マイナーノードはマイニングを行うが、他の構成例として、マイニングが行われなくてもよく、この場合、マイナーノードは不要である。例えば、パブリックブロックチェーンが構成される場合にはマイナーノードによるNonce値を用いることで耐改ざん性を向上させることができ、一方、プライベートブロックチェーンが構成される場合にはマイナーノードが設けられずに安全性が確保されてもよい。
図2は、実施形態に係るコンピュータシステムN1の概略的な構成の一例を示す図である。
図1に示されるコンピュータシステム11~13の構成および動作は概略的に同様であり、コンピュータシステムN1としてまとめて説明する。
コンピュータシステムN1は、情報処理装置の一例である。本実施形態では、コンピュータシステムN1は、ユーザのログインの操作(例えば、当該ユーザの識別情報およびパスワードの入力)に応じて当該ユーザを認証し、当該ユーザによって行われる操作に応じて各種の処理(本実施形態では、以下で説明する各種の内容を実現するための処理)を実行する。
なお、コンピュータシステムは、単にコンピュータと呼ばれてもよい。
なお、本実施形態では、図示も含めて、トランザクションをTXと略して示す場合がある。
また、本実施形態では、図示も含めて、ブロックをBLと略して示す場合がある。
また、本実施形態では、図示も含めて、データベースをDBと略して示す場合がある。
バックアップ領域112は、三次元構成要素ファイルおよび付帯情報ファイルをバックアップとして記憶する。
なお、DB111のデータは、例えば、利用者(本実施形態において、ユーザとも呼ぶ。)の公開鍵を用いた公開鍵暗号方式により保護されてもよい。この場合、秘密鍵を保有している者以外はDB111のデータを利用することができない。
三次元データ抽出装置113は、三次元データを抽出する。本実施形態では、三次元データは、三次元構成要素ファイルのデータと、付帯情報ファイルのデータと、を含む。
三次元データ抽出装置113は、三次元データを三次元データ表示装置114に出力する。
三次元データ抽出装置113は、ブロックチェーン116とデータをやり取りする。
三次元データ表示装置114は、トランザクション処理装置115とデータをやり取りする。
本実施形態では、三次元データ表示装置114は、表示対象となる三次元の物体を構成する複数の構成要素のファイルを集めて、これらのファイルのデータを統合して当該物体を画面に表示する機能を有する。
なお、三次元データ表示装置114は、三次元ビューアなどと呼ばれてもよい。
ブロックチェーン116は、分散型台帳データを有する。
ブロックチェーン116は、三次元データ抽出装置113とデータをやり取りする。
ブロックチェーン116は、ブロックチェーン処理装置117とデータをやり取りする。
ブロックチェーン処理装置117は、ブロックチェーン116とデータをやり取りする。
ブロックチェーン処理装置117は、P2P通信処理装置118とデータをやり取りする。
P2P通信処理装置118は、ブロックチェーン処理装置117とデータをやり取りする。
また、必ずしも各構成部分の区分が存在する必要は無く、例えば、コンピュータシステムN1が有する処理部(制御部などと呼ばれてもよい。)が、コンピュータシステムN1におけるすべての処理を実行すると捉えられてもよい。
なお、マイナーノードとなるコンピュータシステム14は、マイニングを行う機能を有している。
本例では、ファイルDBを中央のサーバーで管理する場合を示す。
三次元データ管理システム2は、複数のコンピュータシステム31~34と、P2Pネットワーク41と、サーバー51と、DB61と、バックアップ領域62と、インターネット71と、を備える。
さらに、それぞれのコンピュータシステム31~33は、インターネット71と接続され、インターネット71を介してサーバー51と通信することが可能である。
バックアップ領域62は、三次元構成要素ファイルおよび付帯情報ファイルをバックアップとして記憶する。
なお、配信されるDB61のデータは、例えば、ユーザの公開鍵を用いた公開鍵暗号方式により保護されてもよい。
サーバー51は、三次元データを配信する。
サーバー51は、インターネット71と接続され、インターネット71を介してそれぞれのコンピュータシステム31~33と通信することが可能である。
図4は、実施形態に係るコンピュータシステムN2の概略的な構成の他の例を示す図である。
図3に示されるコンピュータシステム31~33の構成および動作は概略的に同様であり、コンピュータシステムN2としてまとめて説明する。
コンピュータシステムN2は、情報処理装置の一例である。本実施形態では、コンピュータシステムN2は、ユーザのログインの操作(例えば、当該ユーザの識別情報およびパスワードの入力)に応じて当該ユーザを認証し、当該ユーザによって行われる操作に応じて各種の処理(本実施形態では、以下で説明する各種の内容を実現するための処理)を実行する。
三次元データ抽出装置132は、インターネット通信処理装置131と三次元データをやり取りする。
ここで、図3および図4の例では、図1および図2の例と比べて、DB61およびバックアップ領域62がクラウドに設けられており、コンピュータシステムN2がインターネット71を介してサーバー51と通信することでDB61およびバックアップ領域62と三次元データをやり取りする点で相違し、他の点で同様である。
また、必ずしも各構成部分の区分が存在する必要は無く、例えば、コンピュータシステムN2が有する処理部(制御部などと呼ばれてもよい。)が、コンピュータシステムN2におけるすべての処理を実行すると捉えられてもよい。
なお、マイナーノードとなるコンピュータシステム34は、マイニングを行う機能を有している。
以下と同様な構成および動作は、図3および図4に示される構成に適用されてもよい。
図5は、実施形態に係る三次元データのファイル構成の一例を示す図である。
本実施形態では、三次元データの構成要素ごとに、形状データと属性データをそれぞれ別のファイルで管理する。
三次元物体211を複数の構成要素である、構成要素A(ディスプレイ)、構成要素B(支持部)、構成要素C(スタンド)に分けて管理する。
構成要素Aについて、構成要素Aの形状データを含む形状ファイル221と、構成要素Aの属性データを含む属性ファイル222を管理する。
構成要素Bについて、構成要素Bの形状データを含む形状ファイル231と、構成要素Bの属性データを含む属性ファイル232を管理する。
構成要素Cについて、構成要素Cの形状データを含む形状ファイル241と、構成要素Cの属性データを含む属性ファイル242を管理する。
三次元物体を複数の構成要素に分ける分け方としては、任意の分け方であってもよく、例えば、分解可能な構成要素の単位での分け方が用いられてもよい。
図6は、実施形態に係る三次元データファイルを生成する方法の一例を示す図である。
本例では、基になる三次元データファイルに基づいて三次元構成要素ファイル(形状ファイルと属性ファイル)および付帯情報ファイルからなる三次元データファイルを生成する方法について説明する。
なお、形状ファイルは形状データファイルなどと呼ばれてもよく、また、属性ファイルは属性データファイルなどと呼ばれてもよい。また、形状ファイルのデータは形状データなどと呼ばれてもよく、また、属性ファイルのデータは属性データなどと呼ばれてもよい。
基になる三次元データファイルは、任意のファイルであってもよく、例えば、設計・施工用の三次元CADデータのファイルである。
三次元データ311は、形状データと、属性データを含む。
本実施形態では、三次元データ311は、N(Nは2以上の整数)個の構成要素に分けられる場合を示す。
このように、三次元データ変換装置312は、構成要素ごとに、三次元データ311に基づいて、形状ファイル321、属性ファイル322を生成する。
付帯情報作成ソフト313は、付帯情報を作成するソフトウェアであり、例えば、拡張子ごとのアプリケーションである。
形状ファイル321、属性ファイル322、および付帯情報ファイル323のファイルセットが、三次元の構成要素ごとに、総じて複数生成される。
また、GUID生成装置314は、拡張子cccのファイル名を変更する。
属性ファイル322は、構成要素ごとにN個あり、例えば、ファイル名がGUID.bbbである。本実施形態では、bbbは、属性データのファイルの拡張子である。
付帯情報ファイル323は、任意のファイル数ごとにあり、例えば、ファイル名がGUID.cccである。本実施形態では、cccは、付帯情報ファイルの拡張子である。
GUIDは、世界中に唯一のキーとして扱うことが可能であり、“8桁-4桁-4桁-4桁-12桁”のようにハイフン(-)で文字間を区切った文字列である。
図7は、実施形態に係る三次元データファイルを生成する方法の他の例を示す図である。
本例では、三次元構成要素ファイル(形状ファイルと属性ファイル)および付帯情報ファイルからなる三次元データファイルのそれぞれを個別に生成する方法について説明する。
属性データ作成ソフト412は、属性データを入力し、それに基づく属性データのファイル(属性ファイル422)を保存する。
また、属性データ作成ソフト412についても、任意のソフトウェアが用いられてもよく、例えば、三次元データ表示装置114が表示することができるファイル形式で保存することができればよい。
付帯情報作成ソフト413は、図6に示される付帯情報作成ソフト313と同様な機能を有する。
形状ファイル421、属性ファイル422、および付帯情報ファイル423のファイルセットが、三次元の構成要素ごとの単一セットとして生成される。
GUID生成装置414は、図6に示されるGUID生成装置314と同様な機能を有する。
属性ファイル422は、1個の構成要素について1個あり、例えば、ファイル名がGUID.bbbである。
付帯情報ファイル423は、任意のファイル数ごとにあり、例えば、ファイル名がGUID.cccである。
図8は、実施形態に係るブロックチェーンに格納するトランザクション501の概略的な一例を示す図である。
本例では、三次元構成要素ファイルおよび付帯情報ファイルの変更記録を行うトランザクションの概略的な例を示す。
ここで、トランザクション501は、トランザクション501が使用される状況(本実施形態では、ジェネシス、許可、申請、承認)によって、図8に例示される一部の構成部分情報を含まなくてもよく、あるいは、図8に示される構成部分情報以外の情報を含んでもよい。
Out情報514は、変更後の構成要素並びに付帯情報のファイルを特定する情報である。
ファイルを特定する情報としては、例えば、ファイルのハッシュ値(ファイルハッシュ値)が用いられる。
ファイルの名称としては、例えば、GUIDの文字列が用いられ、三次元構成要素を特定するために使用される。
なお、それぞれの情報ごとに、トランザクション501における所定の領域に格納されてもよい。
本実施形態では、変更前の情報をIn情報513の領域に記録し、変更後の情報をOut情報514の領域に記録する。本実施形態では、変更を行ったファイルそのもの(バイナリーデータ)はトランザクションに含まれず、ファイルを特定する情報としてファイルハッシュ値がIn情報513とOut情報514に登録される。ファイルハッシュ値により、形状ファイル、属性ファイル、および、付帯情報ファイルが特定される。
ファイルハッシュ値は、ファイルのバイナリーデータから生成されるハッシュ値である。ハッシュアルゴリズムとしては、任意のアルゴリズムが用いられてもよく、例えば、MD5、SHA-1、あるいは、SHA-256が用いられてもよい。
ここで、付帯情報は、構成要素ごとに対応付けられる付加的情報(メタデータ)であり、任意のファイル書式(例えば、テキスト、PDF、画像など)の電子ファイル(または、電子ファイル群)で管理されてもよい。本実施形態では、管理者または変更者は、三次元データ表示装置114により、構成要素の付加的情報として自由に付帯情報にアクセスすることができ、当該付帯情報の内容を確認することが可能である。
三次元構成要素の変更の種類および変更の許可に応じた、トランザクションのIn情報およびOut情報の組み合わせについて説明する。
この場合、In情報は、単一のファイルセット情報であり、例えば、ファイル名と、ファイルハッシュ値である。なお、ファイル名は使用されなくてもよい。
また、Out情報は、単一のファイルセット情報であり、例えば、ファイル名と、ファイルハッシュ値である。なお、ファイル名は使用されなくてもよい。
ここで、差替は、Out情報のファイル情報で特定されるファイルを三次元構成要素ファイルDBまたは付帯情報ファイルDBに加え、In情報のファイル情報で特定されるファイルをバックアップ領域112に移動する処理を行う。
差替では、例えば、ある「椅子」から別の「椅子」への差替のように同一種類の物の差替が用いられてもよく、あるいは、ある「椅子」からある「テーブル」への差替のように異なる種類の物の差替が用いられてもよい。
この場合、In情報は、単一のファイルセット情報であり、例えば、ファイル名と、ファイルハッシュ値である。なお、ファイル名は使用されなくてもよい。
また、Out情報は、複数のファイルセット情報であり、例えば、ファイル名と、ファイルハッシュ値である。なお、ファイル名は使用されなくてもよい。
ここで、分割は、Out情報のファイル情報で特定されるファイルを三次元構成要素ファイルDBまたは付帯情報ファイルDBに加え、In情報のファイル情報で特定されるファイルをバックアップ領域112に移動する処理を行う。
分割では、例えば、1つの構成要素が2つ以上の構成要素に分割されるというように、構成要素が増加する。
この場合、In情報は、複数のファイルセット情報であり、例えば、ファイル名と、ファイルハッシュ値である。なお、ファイル名は使用されなくてもよい。
また、Out情報は、単一のファイルセット情報であり、例えば、ファイル名と、ファイルハッシュ値である。なお、ファイル名は使用されなくてもよい。
ここで、結合は、Out情報のファイル情報で特定されるファイルを三次元構成要素ファイルDBまたは付帯情報ファイルDBに加え、In情報のファイル情報で特定されるファイルをバックアップ領域112に移動する処理である。
結合では、例えば、2つ以上の構成要素が1つの構成要素に結合されるというように、構成要素が減少する。
この場合、In情報は、単一または複数のファイルセット情報であり、例えば、ファイル名と、ファイルハッシュ値である。なお、ファイル名は使用されなくてもよい。
また、Out情報は、空である。
ここで、削除は、In情報のファイル情報で特定されるファイルをバックアップ領域112に移動する処理である。
削除では、例えば、1つの構成要素がなくなるというように、構成要素が減少する。
この場合、In情報は、空である。
また、Out情報は、単一または複数のファイルセット情報であり、例えば、ファイル名と、ファイルハッシュ値である。なお、ファイル名は使用されなくてもよい。
ここで、追加は、Out情報のファイル情報で特定されるファイルを三次元構成要素ファイルDBまたは付帯情報ファイルDBに加える処理を行う。
追加では、例えば、1つの構成要素が追加されるというように、構成要素が増加する。
この場合、In情報は、単一または複数のファイルセット情報であり、例えば、ファイル名と、ファイルハッシュ値である。なお、ファイル名は使用されなくてもよい。
また、Out情報は、In情報と同じ情報である。
ここで、権限委譲は、In情報とOut情報の内容を全く同じにして、変更の権限および共同管理者の権限を送信先の者(ユーザ)に与える処理である。
具体例として、最初の管理者を親とし、親から権限委譲を受けた者(変更者)を子とすると、子は共同管理者の権限によって他の者(孫)に権限委譲することができる。この場合、孫は変更者として変更を行い、当該変更の内容を子が承認する。そして、孫が行った当該変更の内容を子が行った変更として子が親に申請し、当該変更の内容を親が承認する。
図10は、実施形態に係るジェネシストランザクション601の構成例を示す図である。
ジェネシストランザクション601は、初期のトランザクションである。
ジェネシストランザクション601は、トランザクション識別子(TX識別子)611aと、プロジェクト識別子611bと、ユーザ識別子611cと、In情報613と、Out情報614と、管理者の公開鍵ハッシュ値(ハッシュ値615)と、を含む。
トランザクション識別子611aは、トランザクションを個別に識別するための番号である。図10の例では、トランザクション識別子611aを“TX1”としている。
また、図10の例では、管理者の秘密鍵(秘密鍵621)を示してある。
ユーザ識別子611cは、プロジェクト内で管理されるブロックチェーンの管理者となるユーザを識別するために使用される番号であり、ユーザ識別子611cとしては、例えば、ユーザの公開鍵ハッシュ値などが用いられる。
In情報613は、初回の構成要素並びに付帯情報のファイルを特定する情報である。
Out情報614は、In情報613と同じ情報である。
図11は、実施形態に係る許可トランザクション701の構成例を示す図である。
許可トランザクション701は、管理者から変更者へのトランザクションである。
許可トランザクション701は、トランザクション識別子(TX識別子)711aと、プロジェクト識別子711bと、ユーザ識別子711cと、In情報713と、Out情報714と、1つ前のトランザクションに基づくハッシュ値715と、変更者の公開鍵ハッシュ値(ハッシュ値716)と、管理者の公開鍵(公開鍵717)と、デジタル署名718と、を含む。図11の例では、ハッシュ値715は、ジェネシストランザクション601におけるトランザクション識別子611a(“TX1”)のハッシュ値である。
図11の例では、トランザクション識別子711aを“TX2”としている。
また、図11の例では、管理者の秘密鍵(秘密鍵621)、および、変更者の秘密鍵(秘密鍵721)を示してある。
Out情報714は、In情報713と同じ情報である。
デジタル署名718は、ハッシュ値715、ハッシュ値716、および、変更対象(In情報713、Out情報714)のデジタル署名である。
デジタル署名718は、管理者の秘密鍵(秘密鍵621)により署名され、管理者の公開鍵(公開鍵717)により検証される。
図12は、実施形態に係る申請トランザクション801の構成例を示す図である。
申請トランザクション801は、変更者から管理者へのトランザクションである。
申請トランザクション801は、トランザクション識別子(TX識別子)811aと、プロジェクト識別子811bと、ユーザ識別子811cと、In情報813と、Out情報814と、1つ前のトランザクションに基づくハッシュ値815と、管理者の公開鍵ハッシュ値(ハッシュ値816)と、変更者の公開鍵(公開鍵817)と、デジタル署名818と、を含む。図12の例では、ハッシュ値815は、許可トランザクション701におけるトランザクション識別子711a(“TX2”)のハッシュ値である。
図12の例では、トランザクション識別子811aを“TX3”としている。
また、図12の例では、変更者の秘密鍵(秘密鍵721)、および、管理者の秘密鍵(秘密鍵821)を示してある。
Out情報814は、変更後の構成要素並びに付帯情報のファイルを特定する情報である。
デジタル署名818は、ハッシュ値815、ハッシュ値816、および、変更内容(In情報813、Out情報814)のデジタル署名である。
デジタル署名818は、変更者の秘密鍵(秘密鍵721)により署名され、変更者の公開鍵(公開鍵817)により検証される。
図13は、実施形態に係る承認トランザクション901の構成例を示す図である。
承認トランザクション901は、管理者による変更判定結果のトランザクションである。
承認トランザクション901は、トランザクション識別子(TX識別子)911aと、プロジェクト識別子911bと、ユーザ識別子911cと、In情報913と、Out情報914と、1つ前のトランザクションに基づくハッシュ値915と、管理者の公開鍵ハッシュ値(ハッシュ値916)と、管理者の公開鍵(公開鍵917)と、デジタル署名918と、を含む。図13の例では、ハッシュ値915は、申請トランザクション801におけるトランザクション識別子811a(“TX3”)のハッシュ値である。
図13の例では、トランザクション識別子911aを“TX4”としている。
また、図13の例では、管理者の秘密鍵(秘密鍵821)を示してある。
Out情報914は、In情報913と同じ情報である。
デジタル署名918は、ハッシュ値915、および、承認結果(In情報913、Out情報914)のデジタル署名である。
デジタル署名918は、管理者の秘密鍵(秘密鍵821)により署名され、管理者の公開鍵(公開鍵917)により検証される。
管理者は、自身の公開鍵ハッシュ値が記録されていて且つIn情報とOut情報が同じトランザクション(例えば、ジェネシストランザクション601)に対して変更許可のためのトランザクション(例えば、許可トランザクション701)を発行することができる。
管理者から変更の許可を与えられない限り、管理者以外のユーザは、ファイルの変更を行うことはできない。
管理者は、変更許可のトランザクションを同時に複数のユーザに対して発行することができる。
変更許可が与えられたユーザは、トランザクション(例えば、許可トランザクション701)のOut情報に記載されたファイル情報から特定されるファイルに対してのみ変更を行うことができる。
変更許可が与えられたユーザは、当該ファイルの共同管理者の権限も与えられる。これにより、当該ユーザは、他のユーザに変更を許可する権限も得る。
管理者は、変更内容を確認し、承認または否認の判断を行う。承認の場合は、管理者は、変更後のファイル情報をIn情報とOut情報に記録し、承認トランザクション901を作成する。否認の場合は、管理者は、変更前のファイル情報をIn情報とOut情報に記録して、承認トランザクション901を作成する。承認トランザクション901には、該当する構成要素の管理者となるユーザの公開鍵ハッシュ値(ハッシュ値916)を登録する。
承認を行った管理者が再度管理者となる場合には、管理者は、自身の公開鍵ハッシュ値をトランザクションに登録する。変更申請した変更者に引き続き変更を許可する場合には、管理者は、変更者の公開鍵ハッシュ値をトランザクションに登録する。本実施形態では、該当する構成要素が最後に記録されたトランザクションに自身の公開鍵ハッシュ値が含まれているユーザが、当該構成要素について許可、申請、または、承認を実行することが可能である。
なお、複数のユーザに変更権限を与えた場合であって、変更が承認された後に他の変更者から変更の申請があった場合には、後から来た変更については、自動的に否認として扱う構成としても良い。
本実施形態では、初期には、ジェネシストランザクションによって、三次元データを構成する複数の構成要素のファイルセット(初期的な三次元データ)が定義される。そして、ジェネシストランザクションのみが格納されたブロック(ジェネシスブロック)が生成される。
その後、当該三次元データの構成要素ごとに、変更(差替、分割、結合、削除、追加)が実行されていく。1回の変更は、許可トランザクション、申請トランザクション、承認トランザクションといった流れで実現される。なお、管理者から変更者への変更許可ばかりでなく、権限委譲された当該変更者から他の変更者への変更許可が行われてもよい。
ジェネシストランザクション以外のトランザクション(許可トランザクション、申請トランザクション、承認トランザクション)は、ジェネシスブロックに後続するブロックに格納されていく。ブロックは、所定のタイミングごと(例えば、10分ごとなど)に生成され、前回のブロックが生成された後に発生した1個以上のトランザクションが次回のブロックに格納される。本実施形態では、プロジェクト識別子が同じであって、かつ、トランザクションプールのトランザクションに記録されたプロジェクト識別子とユーザ識別子の値が同じトランザクションが集められてブロックが形成される。
このような複数のブロックが時系列で繋がっていきブロックチェーンが生成される。
なお、本実施形態では、プライベートブロックチェーンに基づくブロックチェーンが用いられているが、これに限られず、例えば、パブリック型、パーミッション型(プライベート、または、コンソーシアム)といった任意のブロックチェーンが用いられてもよい。
図14は、実施形態に係るブロックチェーンをプロジェクト単位で新規に作成する処理の手順の一例を示す図である。この処理の手順は、ジェネシストランザクション601を格納するブロック(ジェネシスブロック)を作成する処理の手順である。ジェネシスブロックは、ひとつ前のブロックハッシュ値を継承していない一番初めのブロックである。
この処理は、例えば、管理者が当該管理者のコンピュータシステムN1を操作することで行われる。
コンピュータシステムN1では、プロジェクト識別子を取得する。そして、ステップS2の処理へ移行する。
この処理は、例えば、トランザクション処理装置115により行われる。
コンピュータシステムN1では、三次元構成要素ファイルDBおよび付帯情報ファイルDBに初期データを登録する。そして、ステップS3の処理へ移行する。
この処理は、例えば、三次元データ抽出装置113により行われる。
コンピュータシステムN1では、これらのファイルDB(三次元構成要素ファイルDBおよび付帯情報ファイルDB)の内部のファイル情報の全てを含むトランザクションを初期トランザクションとして発行する。そして、ステップS4の処理へ移行する。
この処理は、例えば、トランザクション処理装置115により行われる。
コンピュータシステムN1では、発行するトランザクションに、プロジェクト識別子と、管理者のユーザ識別子を登録する。そして、ステップS5の処理へ移行する。
この処理は、例えば、トランザクション処理装置115により行われる。
コンピュータシステムN1では、全トランザクションをジェネシスブロック(単一)に追加する。そして、本フローの処理を終了する。
この処理は、例えば、ブロックチェーン処理装置117により行われる。
図15は、実施形態に係るトランザクションを作成する処理の手順の一例を示す図である。
この処理は、管理者または変更者が自身のコンピュータシステムN1を操作することで行われる。
この処理では、トランザクションを作成する条件と、トランザクションをピアに送信するまでの処理が示される。ピアは、ノードが接続している他のノードを表す。
コンピュータシステムN1では、構成要素のGUIDを特定し、三次元構成要素ファイルからファイルハッシュ関数によりハッシュ値を特定する。そして、ステップS12の処理へ移行する。
この処理は、例えば、トランザクション処理装置115により行われる。
コンピュータシステムN1では、自身(コンピュータシステムN1の操作者である管理者または変更者)の公開鍵ハッシュ値および当該構成要素がOut情報に記録されているトランザクションがブロックチェーン内に存在するか否かを判定する。
この判定の結果、このようなトランザクションが存在する場合には(ステップS12:YES)、ステップS13の処理へ移行する。
一方、この判定の結果、このようなトランザクションが存在しない場合には(ステップS12:NO)、ステップS20の処理へ移行する。
この処理は、例えば、ブロックチェーン処理装置117により行われる。
コンピュータシステムN1では、該当するトランザクションにおけるIn情報とOut情報とが同じ情報であるか否かを判定する。
この判定の結果、これらの情報が同じ情報である場合には(ステップS13:YES)、ステップS14の処理へ移行する。
一方、この判定の結果、これらの情報が同じ情報ではない場合には(ステップS13:NO)、ステップS17の処理へ移行する。
この処理は、例えば、トランザクション処理装置115により行われる。
コンピュータシステムN1では、他のユーザに変更許可を与えるか否かを判定する。
この判定の結果、他のユーザに変更許可を与える場合には(ステップS14:YES)、ステップS15の処理へ移行する。
一方、この判定の結果、他のユーザに変更許可を与えない場合には(ステップS14:NO)、ステップS16の処理へ移行する。
この処理は、例えば、トランザクション処理装置115により行われる。
コンピュータシステムN1では、許可トランザクションの発行を行う。この場合、コンピュータシステムN1は、許可ノードとして機能する。そして、ステップS18の処理へ移行する。
この処理は、例えば、トランザクション処理装置115により行われる。
コンピュータシステムN1では、申請トランザクションの発行を行う。この場合、コンピュータシステムN1は、申請ノードとして機能する。そして、ステップS19の処理へ移行する。
この処理は、例えば、トランザクション処理装置115により行われる。
コンピュータシステムN1では、承認トランザクションの発行を行う。この場合、コンピュータシステムN1は、承認ノードとして機能する。そして、ステップS18の処理へ移行する。
この処理は、例えば、トランザクション処理装置115により行われる。
コンピュータシステムN1では、発行したトランザクションをピアに送信する。そして、本フローの処理を終了する。
この処理は、例えば、ブロックチェーン処理装置117により行われる。
コンピュータシステムN1では、変更後の構成要素および付帯情報のファイルをファイルDB(三次元構成要素ファイルDB、付帯情報ファイルDB)に登録する。そして、ステップS18の処理へ移行する。
この処理は、例えば、三次元データ抽出装置113により行われる。
コンピュータシステムN1では、トランザクションの作成は不可であると判定する。そして、本フローの処理を終了する。
この処理は、例えば、トランザクション処理装置115により行われる。
図16は、実施形態に係るブロックチェーンファーム1021の一例を示す図である。
図16には、コンピュータシステム1011(コンピュータシステムN1の一例)におけるブロックチェーンファーム1021の一例を示してある。
ブロックチェーンファーム1021では、複数のプロジェクト(案件)について、プロジェクトごとに独立したブロックチェーンが同一のノード内で管理される。なお、プロジェクトごとに、当該プロジェクト(同一のプロジェクト)内で発生した派生的なブロックチェーンのデータ構造が格納されてもよい。
なお、ブロックチェーンファームという名称は、説明の便宜上の名称であり、他の名称で呼ばれてもよい。
図16の例では、複数のプロジェクト識別子1031~1034のそれぞれごとのデータを示してある。
プロジェクト識別子1031について、管理者情報1051および共同管理者情報1052、1053が保持されている。
管理者情報1051および共同管理者情報1052、1053のそれぞれは、ブロックチェーンのブロックのデータを保持する。
ここで、プロジェクト識別子ごとに、共同管理者は、1人であってもよく、あるいは、2人以上であってもよい。
本実施形態では、プロジェクトごとにプロジェクト識別子で管理することで、同一のノードで複数のブロックチェーンを扱うことが可能である。
ユーザ識別子に対応するユーザ以外のユーザは、原則、三次元データ表示装置114で当該ユーザ識別子に対応する三次元データを表示することはできない。
図17~図19を参照して、三次元データ表示の処理について説明する。この処理は、ファイルDBから必要なデータを抽出して、当該データに基づく表示を行う処理である。
この処理は、管理者または変更者が自身のコンピュータシステムN1を操作することで行われる。
コンピュータシステムN1において、三次元データ表示装置114が起動されると、プロジェクトを選択する処理を行う。そして、ステップS32の処理に移行する。
この処理は、例えば、三次元データ表示装置114により行われる。
コンピュータシステムN1において、三次元データ抽出装置113による処理(図18に示される処理)を行う。そして、ステップS33の処理に移行する。
コンピュータシステムN1において、三次元データ表示装置114によるファイルの表示の処理(図19に示される処理)を行う。そして、本フローの処理を終了する。
コンピュータシステムN1において、三次元データ抽出装置113は、ブロックチェーンファーム1021から、前段のプロジェクト(ステップS31で選択されたプロジェクト)に対してブロックチェーンを抽出する。そして、ステップS42の処理に移行する。
三次元データ抽出装置113は、前段のブロックチェーン(ステップS41で抽出されたブロックチェーン)から、アクセス権限のある構成要素のファイル情報を取得する。そして、ステップS43の処理に移行する。
三次元データ抽出装置113は、取得したファイル情報からファイルを特定し、ファイルDB(三次元構成要素ファイルDBおよび付帯情報ファイルDB)に当該ファイルを要求する。そして、ステップS44の処理に移行する。
三次元データ抽出装置113は、ファイルDBから、要求したファイルを取得する。そして、本フローの処理を終了する。
また、変更者に対して、例えば、当該変更者が作成した申請トランザクションに関するファイルへのアクセス権が与えられてもよい。
また、管理者に対して、例えば、当該管理者によって管理される変更者がアクセス権限を持つファイルへのアクセス権限が与えられてもよい。
なお、これらの例に限られず、ファイルへのアクセス権限の設定は、任意の規則により行われてもよい。
コンピュータシステムN1において、三次元データ表示装置114は、三次元データ抽出装置113により取得されたファイル群を結合して画面に表示する。そして、変更許可の場合にはステップS52の処理に移行し、申請の場合にはステップS53の処理に移行し、承認の場合にはステップS54の処理に移行する。
三次元データ表示装置114は、構成要素の変更許可を他のユーザに与えること、あるいは、変更の申請または変更の承認を行うためのトランザクションの発行を行うことが可能である。
コンピュータシステムN1において、三次元データ表示装置114は、変更許可の場合には、変更許可を与えるユーザと構成要素の選択を行う。そして、ステップS55の処理に移行する。
コンピュータシステムN1において、三次元データ表示装置114は、申請の場合には、変更前と変更後の構成要素の選択を行う。そして、ステップS56の処理に移行する。
コンピュータシステムN1において、三次元データ表示装置114は、承認の場合には、変更前後の状況を画面に表示し、これにより、管理者はそれを確認して変更の可否を判断する。そして、ステップS57の処理に移行する。
コンピュータシステムN1において、三次元データ表示装置114は、トランザクション処理装置115により、許可トランザクションの発行を行う。そして、本フローの処理を終了する。
コンピュータシステムN1において、三次元データ表示装置114は、トランザクション処理装置115により、申請トランザクションの発行を行う。そして、本フローの処理を終了する。
コンピュータシステムN1において、三次元データ表示装置114は、トランザクション処理装置115により、承認トランザクションの発行を行う。そして、本フローの処理を終了する。
また、変更者は、許可トランザクション、および、申請トランザクションに関し、三次元表示用のデータにアクセスすることが可能であり、三次元表示を行わせることができる。
なお、このような三次元表示は、例えば、管理者および変更者が担当(例えば、発行等)しているトランザクションのみについて可能であってもよい。
また、このような三次元表示の権限については、本実施形態における例に限られず、任意に設定されてもよい。
図20は、実施形態に係る三次元データ表示装置114により表示される画面1101の概略的な構成例を示す図である。
画面1101は、三次元データを表示する表示部(三次元データ表示部1121)と、トランザクションに関する情報を表示する表示部(トランザクション情報表示部1122)と、を含む。
コンピュータ用のソフトウェアの利用方法としては、特に限定はなく、例えば、端末(コンピュータ)にソフトウェアをインストールして利用する方法が用いられてもよく、あるいは、インターネットブラウザでアクセスしてサーバー側のソフトウェアを利用する方法が用いられてもよい。
画面1201は、ログインユーザ名とともに、ログインユーザ名に対応付けられた情報として、通知メッセージ情報1221と、処理待ち情報1222と、処理済み情報1223と、を含む。
これらの情報はツリー構造となっており、ツリーの各項目が展開されることで、各項目の配下の内訳が表示される。なお、本実施形態では、ツリー構造の詳細については、図示および詳しい説明を省略する。
通知メッセージには、許可トランザクションによりログインユーザに対して変更許可(変更権限)が与えられた旨、申請トランザクションによりログインユーザに対して変更承認の依頼がある旨、承認トランザクションによりログインユーザが申請した変更が承認または却下された旨について、例えば、メッセージの件数が表示される。ユーザは、メッセージを展開することで、メッセージの詳細を個別に確認することが可能である。
画面1301は、許可トランザクションに関し、管理者であるユーザに対して表示される画面である。
画面1301は、三次元データを表示している。
図22の例では、三次元データは、複数の三次元物体のデータを含む。複数の三次元物体は、机、椅子、ソファー、植木を含む。これらの三次元物体のそれぞれは、さらに複数の構成要素に分解されてもよい。
また、図22の例では、ログインユーザの情報(ログインユーザ情報1351)が表示されている。
メニュー枠1331には、「変更を許可する」、「差替」、「分割」、「結合」、「削除」、「追加」といったメニューが表示される。ユーザは、所望のメニューを選択する操作を行うことができる。
ここでは、ユーザが「変更を許可する」メニューを選択した場合について説明する。
図23には、変更許可に関するトランザクションの画面1401と、管理者から変更者への許可トランザクション1501を示してある。
トランザクションの画面1401は、トランザクション識別子1421と、モードである形状データ1431、属性データ1432、および、付帯情報1433と、変更対象1441と、ユーザ選択部1451と、許可実行部1471と、を含む。
図23には、ログインユーザ情報1351が示されている。
管理者は、トランザクション識別子1421として、椅子の取替を指定している。
モードでは、変更対象となる椅子について、形状データ1431、属性データ1432、付帯情報1433が表示されている。
変更対象1441の枠に、変更対象の椅子が表示される。
管理者は、ユーザ選択部1451において、変更許可を与えるユーザに対応するユーザ部1461を選択している。
管理者は、許可実行部1471を操作することで、画面1401の表示内容で変更許可を実行することができる。
許可トランザクション1501は、変更対象(図23の例では、椅子)の構成要素の数と同じ数だけ存在する。つまり、変更対象の構成要素ごとに許可トランザクション1501が存在する。
許可トランザクション1501は、In情報1521と、Out情報1522と、変更者の公開鍵ハッシュ値(ハッシュ値1523)と、取引情報のデジタル署名(デジタル署名1524)と、管理者の公開鍵(公開鍵1525)と、を含む。
なお、図23の例では、許可トランザクション1501に含まれるトランザクション識別子、プロジェクト識別子、ユーザ識別子、および、1つ前のトランザクション識別子に基づくハッシュ値の図示を省略してある。
Out情報1522は、Inと同じ情報である。
ハッシュ値1523は、変更者として選択されたユーザ(ユーザ部1461のユーザ)の公開鍵ハッシュ値である。
公開鍵1525は、管理者(ログインユーザ情報1351に対応するユーザ)の公開鍵である。
「変更を許可する」コマンドを実行すると、変更許可を与えるユーザの選択および変更許可対象の三次元データ構成要素群を確認するためのトランザクション画面(画面1401)が表示される。
変更許可対象の三次元データ構成要素群は、トランザクション画面の変更対象エリアに表示され、モードボタンにより形状データと属性データ、付帯情報を切り替えて確認することができる。
管理者がトランザクション画面でトランザクションを発行するボタン(許可実行部1471)を実行すると、トランザクション処理装置115は許可トランザクション1501を発行し、P2P通信処理装置118はP2Pネットワーク21に参加しているピアに許可トランザクション1501を送信する。
本例では、ユーザは、管理者により指定された変更者である。
図24には、変更申請に関するトランザクションの画面1601と、変更者から管理者への申請トランザクション1701を示してある。
トランザクションの画面1601は、トランザクション識別子1621と、モードである形状データ1631、属性データ1632、および、付帯情報1633と、変更対象に関する変更前情報1641および変更後情報1642と、ファイルドロップ部1651と、申請保留部1661と、申請実行部1671と、を含む。
図24には、ログインユーザ情報1352が示されている。本例では、ログインユーザは、変更者である。
トランザクション識別子1621として、椅子の取替を指定している。
モードでは、変更対象(本例では、変更前)となる椅子について、形状データ1631、属性データ1632、付帯情報1633が表示されている。
変更対象の変更前情報1641として、変更前の椅子が表示される。
変更対象の変更後情報1642として、変更後の椅子が表示される。
変更者は、ファイルドロップ部1651に、変更後の椅子のファイルをドロップする。これにより、当該ファイルがアップロードされる。
変更者は、申請保留部1661を操作することで、画面1601の表示内容の申請を保留することができる。
変更者は、申請実行部1671を操作することで、画面1601の表示内容で申請を実行することができる。
本例では、申請トランザクション1701は、変更後(図24の例では、椅子)の構成要素の数と同じ数だけ存在する。つまり、変更後の構成要素ごとに申請トランザクション1701が存在する。
申請トランザクション1701は、In情報1721と、Out情報1722と、管理者の公開鍵ハッシュ値(ハッシュ値1723)と、取引情報のデジタル署名(デジタル署名1724)と、変更者の公開鍵(公開鍵1725)と、を含む。
なお、図24の例では、申請トランザクション1701に含まれるトランザクション識別子、プロジェクト識別子、ユーザ識別子、および、1つ前のトランザクション識別子に基づくハッシュ値の図示を省略してある。
Out情報1722は、変更後の椅子の三次元構成要素1(newGUID1)の情報である。
公開鍵1725は、変更者(ログインユーザ情報1352に対応するユーザ)の公開鍵である。
変更者は、申請内容を一時的に保存する場合には、トランザクション画面(画面1601)で、申請を保留するボタン(申請保留部1661)を実行する。
本例では、ユーザは、管理者である。
図25には、変更承認に関するトランザクションの画面1801と、管理者による承認トランザクション1901を示してある。
トランザクションの画面1801は、トランザクション識別子1821と、モードである形状データ1831、属性データ1832、および、付帯情報1833と、変更対象に関する変更前情報1841および変更後情報1842と、変更前情報1841に対応する管理者情報1851と、変更後情報1842に対応する変更者情報1852と、通信欄1861と、却下部1871と、承認保留部1881と、承認実行部1891と、を含む。
トランザクション識別子1821として、椅子の取替を指定している。
モードでは、変更対象(本例では、変更前)となる椅子について、形状データ1831、属性データ1832、付帯情報1833が表示されている。
変更対象の変更前情報1841として、変更前の椅子が表示される。
変更対象の変更後情報1842として、変更後の椅子が表示される。
管理者は、通信欄1861に、任意の内容の記述を行うことができる。
管理者は、却下部1871を操作することで、画面1801の表示内容の申請を却下することができる。
管理者は、承認保留部1881を操作することで、画面1801の表示内容の申請の承認を保留することができる。
管理者は、承認実行部1891を操作することで、画面1801の表示内容で申請の承認を実行することができる。
本例では、承認トランザクション1901は、変更後(図25の例では、椅子)の構成要素の数と同じ数だけ存在する。つまり、変更後の構成要素ごとに承認トランザクション1901が存在する。
承認トランザクション1901は、In情報1921と、Out情報1922と、管理者の公開鍵ハッシュ値(ハッシュ値1923)と、取引情報のデジタル署名(デジタル署名1924)と、変更者の公開鍵(公開鍵1925)と、を含む。
なお、図25の例では、承認トランザクション1901に含まれるトランザクション識別子、プロジェクト識別子、ユーザ識別子、および、1つ前のトランザクション識別子に基づくハッシュ値の図示を省略してある。
Out情報1922は、In情報1921と同じ情報である。
管理者がトランザクション情報表示部で申請トランザクションを選択すると、申請内容をトランザクション画面(画面1801)で確認することができる。
管理者でログインしている場合、変更承認のトランザクション画面(画面1801)で変更後を選択すると、三次元データ表示部で表示される対象を、変更前の構成要素から、一時的に、変更後の構成要素に変更することができる。その後、管理者が変更前を選択すると、三次元データ表示部で表示される対象を、変更前の構成要素に戻すことができる。
管理者は、変更申請内容を確認して、問題がなければ承認実行ボタン(承認実行部1891)を実行し、一旦保留にする場合には承認保留ボタン(承認保留部1881)を実行し、申請を却下する場合には却下ボタン(却下部1871)を実行する。
管理者は、承認実行を行う際に、該当する構成要素について、今回の変更者に継続して変更の許可を与えるか否かを選択することができる。
以上のように、本実施形態に係る三次元データ管理システム1では、許可ノード、申請ノード、あるいは、承認ノードなどとして機能するコンピュータシステムN1によって、複数の構成要素から構成される三次元物体を表すデータ(三次元データ)の管理を効率的に行うことができ、例えば、三次元物体の構成要素ごとの変更の管理を効率的に行うことができる。
本実施形態に係る三次元データ管理システム1では、三次元データを構成要素ごとに分割し、分割した構成要素ごとのファイル単位でブロックチェーンを用いて三次元データの変更(例えば、形状データおよび属性データ並びに付帯情報ファイルの更新)を管理している。
これに対して、本実施形態に係る三次元データ管理システム1では、三次元データの一部が変更された場合には、変更された構成要素に関するデータ送信がブロックチェーンのP2Pネットワーク21により即時に自動的に実行され、三次元データ全体のファイルを送る必要がない。このため、本実施形態に係る三次元データ管理システム1では、データ送信の時間的ロスまたは送信ミスを解消することができ、また、データ管理における非効率またはロスを解消することができる。また、本実施形態に係る三次元データ管理システム1では、複数のユーザによる変更(特に、同時に並列的な変更)も容易に可能であり、同時多発的なファイルの更新に対応することも可能である。
これに対して、本実施形態に係る三次元データ管理システム1では、変更者により変更を行うためには管理者による承認が必要であることからデータに対する信憑性があり、また、ブロックチェーンの特徴であるデータの耐改ざん性もあり、一度承認された更新情報は後から変更されることが困難となり、データの信頼性を向上させることができる。
具体的には、本実施形態に係る三次元データ管理システム1では、ブロックチェーンのブロックに含めるトランザクションに、三次元データの構成要素の変更前と変更後についてのファイル情報、および、承認権限者による判定結果を記録する。また、承認済みとなったトランザクションはブロックに登録されて、既存のブロックチェーンに加えられる。そして、当該変更前のファイルに関する情報はバックアップ領域112に移動され、これにより、管理者が承認した構成要素のみの情報が残るようになり、信憑性が担保される。
これに対して、本実施形態に係る三次元データ管理システム1では、三次元データの構成要素ごとの変更内容を「取引」とみなして更新情報をブロックチェーンに記録しており、これにより、変更内容等の来歴管理を行うことができる。当該来歴管理としては、例えば、申請、変更、あるいは、承認などに関する内容の追跡または調査がある。
これにより、ユーザは、構成要素の前の状態を知りたい場合には、当該構成要素が記録されているブロックをブロックチェーンの後方から前方に追跡することで、ひとつ前の状態から起源(初期)の状態に至るまで、全ての世代に対応した更新情報(変更情報)を表示させることが可能である。例えば、ユーザは、知りたい世代のブロックを指定することで、指定した世代の構成要素に関する情報をバックアップ領域112から復元することが可能である。
ここで、本実施形態に係る三次元データ管理システム1では、ブロックチェーンが用いられる場合、より効率的な管理が実現される。具体的には、本実施形態に係る三次元データ管理システム1では、ブロックチェーンが用いられることで、三次元物体の維持あるいは廃棄の段階における構成要素ごとの変更の記録を容易に管理することができ、変更の過程を三次元データを活用して容易に追跡することができる。本実施形態に係る三次元データ管理システム1では、例えば、三次元データを構成要素ごとの単位で部分的に変更する場合に、オープン仕様のフォーマットが採用され、ブロックチェーンにより構成要素ごとの変更の信憑性が担保され、ブロックチェーンにより構成要素ごとの来歴(変更の履歴など)が効率的に管理される。
また、本実施形態に係る三次元データ管理システム1では、P2Pネットワークが用いられる場合を示したが、他の構成例として、P2Pネットワーク以外のネットワークが用いられる構成とされてもよい。
他の構成例として、例えば、ユーザごとに使用するコンピュータシステムN1が定められている場合のように、特定のユーザと特定のコンピュータシステムN1とが1対1で対応している場合には、ユーザの認証の代わりにコンピュータシステムN1の認証(例えば、コンピュータシステムN1の識別情報の認証)により、許可、申請、あるいは、承認などを行う者が特定されてもよい。
さらに、他の構成例として、許可、申請、あるいは、承認などのそれぞれについて専用のコンピュータシステムN1が設定されている場合には、例えば、ユーザの認証をせずに、専用のコンピュータシステムN1によって行われた許可、申請、あるいは、承認などは正式なものとして扱われてもよい。
一構成例として、情報処理装置(図1および図2の例ではコンピュータシステムN1、図3および図4の例ではコンピュータシステムN2)では、処理部が、次のような処理A1、または、処理A2、のうちの少なくとも1つを実行する。
処理A1は、複数の構成要素から構成される三次元物体について構成要素ごとに、第1ユーザ(本実施形態では、管理者となるユーザ)によって行われる操作に応じて、第2ユーザ(本実施形態では、変更者となるユーザ)に対して変更の許可を行い、当該第2ユーザからの変更内容の申請に対して承認を行う処理である。
処理A2は、複数の構成要素から構成される三次元物体について構成要素ごとに、第3ユーザ(本実施形態では、変更者となるユーザ)に対して第4ユーザ(本実施形態では、管理者となるユーザ)から変更の許可が行われた場合に、当該第3ユーザによって行われる操作に応じて、当該第4ユーザに対して変更内容の申請を行う処理である。
また、例えば、処理A1を実行する機能を有し処理A2を実行する機能を有していない情報処理装置が用いられてもよく、あるいは、処理A2を実行する機能を有し処理A1を実行する機能を有していない情報処理装置が用いられてもよい。
また、処理A1において、第1ユーザ(本実施形態では、管理者となるユーザ)以外に他の同様な立場の者(本実施形態では、他の管理者)がいてもよく、つまり、2人以上の者により変更の許可が行われてもよい。
同様に、処理A2において、第4ユーザ(本実施形態では、管理者となるユーザ)以外に他の同様な立場の者(本実施形態では、他の管理者)がいてもよい。
一構成例として、情報処理装置において、構成要素ごとの構成要素データは、形状を表す形状データ、および、属性を表す属性データを含む。
一構成例として、情報処理装置において、構成要素データは、さらに、付帯情報データを含む。
一構成例として、情報処理装置において、構成要素データに含まれる各データは、GUIDを名称に含むファイルによって保持される。
一構成例として、情報処理装置において、処理部は、三次元物体を構成する構成要素ごとに構成要素ごとのデータを独立したファイルとして保存し、ファイルごとに変更内容をトランザクションに格納し、トランザクションをブロックチェーンに追加することで、構成要素ごとの変更の履歴をブロックチェーンにて管理する。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイルであってもよい。差分ファイルは、差分プログラムと呼ばれてもよい。
Claims (17)
- 複数の構成要素から構成される三次元物体について前記構成要素ごとに、第1ユーザによって行われる操作に応じて第2ユーザに対して変更の許可を行い前記第2ユーザからの変更内容の申請に対して承認を行う処理、または、前記構成要素ごとに、第3ユーザに対して第4ユーザから変更の許可が行われた場合に前記第3ユーザによって行われる操作に応じて前記第4ユーザに対して変更内容の申請を行う処理、のうちの少なくとも1つを実行する処理部を備え、
前記処理部は、前記三次元物体を構成する前記構成要素ごとに前記構成要素ごとのデータを独立したファイルとして保存し、前記ファイルごとに前記変更内容をトランザクションに格納し、前記トランザクションをブロックチェーンに追加することで、前記構成要素ごとの前記変更の履歴を前記ブロックチェーンにて管理する、
情報処理装置。 - 前記変更は、前記構成要素の差替、前記構成要素の分割、前記構成要素の結合、前記構成要素の削除、前記構成要素の追加のうちの少なくとも1つを含む、
請求項1に記載の情報処理装置。 - 前記構成要素ごとの構成要素データは、形状を表す形状データ、および、属性を表す属性データを含む、
請求項1または請求項2に記載の情報処理装置。 - 前記構成要素データは、さらに、付帯情報データを含む、
請求項3に記載の情報処理装置。 - 前記構成要素データに含まれる各データは、GUIDを名称に含むファイルによって保持される、
請求項3または請求項4に記載の情報処理装置。 - コンピュータに、
複数の構成要素から構成される三次元物体について前記構成要素ごとに、第1ユーザによって行われる操作に応じて第2ユーザに対して変更の許可を行い前記第2ユーザからの変更内容の申請に対して承認を行う処理ステップ、または、前記構成要素ごとに、第3ユーザに対して第4ユーザから変更の許可が行われた場合に前記第3ユーザによって行われる操作に応じて前記第4ユーザに対して変更内容の申請を行う処理ステップ、のうちの少なくとも1つの処理ステップを実行させるためのプログラムであって、
前記少なくとも1つの処理ステップは、前記三次元物体を構成する前記構成要素ごとに前記構成要素ごとのデータを独立したファイルとして保存し、前記ファイルごとに前記変更内容をトランザクションに格納し、前記トランザクションをブロックチェーンに追加することで、前記構成要素ごとの前記変更の履歴を前記ブロックチェーンにて管理する、
プログラム。 - 複数の構成要素から構成される三次元物体について前記構成要素ごとに、第1ユーザによって行われる操作に応じて第2ユーザに対して変更の許可を行う処理を実行する第1処理部と、
前記第2ユーザによって行われる操作に応じて前記第1ユーザに対して変更内容の申請を行う処理を実行する第2処理部と、
前記第1ユーザによって行われる操作に応じて前記第2ユーザからの変更内容の申請に対して承認を行う処理を実行する第3処理部と、を備え、
前記三次元物体を構成する前記構成要素ごとに前記構成要素ごとのデータを独立したファイルとして保存し、前記ファイルごとに前記変更内容をトランザクションに格納し、前記トランザクションをブロックチェーンに追加することで、前記構成要素ごとの前記変更の履歴を前記ブロックチェーンにて管理する、
三次元データ管理システム。 - 複数の構成要素から構成される三次元物体について前記構成要素ごとに、第1ユーザによって行われる操作に応じて第2ユーザに対して変更の許可を行う処理を実行する第1処理ステップと、
前記第2ユーザによって行われる操作に応じて前記第1ユーザに対して変更内容の申請を行う処理を実行する第2処理ステップと、
前記第1ユーザによって行われる操作に応じて前記第2ユーザからの変更内容の申請に対して承認を行う処理を実行する第3処理ステップと、を備え、
前記三次元物体を構成する前記構成要素ごとに前記構成要素ごとのデータを独立したファイルとして保存し、前記ファイルごとに前記変更内容をトランザクションに格納し、前記トランザクションをブロックチェーンに追加することで、前記構成要素ごとの前記変更の履歴を前記ブロックチェーンにて管理する、
三次元データ管理方法。 - 複数の構成要素から構成される三次元物体について前記構成要素ごとに、第3ユーザに対して第4ユーザから変更の許可が行われた場合に前記第3ユーザによって行われる操作に応じて前記第4ユーザに対して変更内容の申請を行う処理を実行する処理部を備え、
前記処理部は、前記第3ユーザに対して前記第4ユーザから変更の許可が行われた場合に、前記第3ユーザによって行われる操作に応じて第5ユーザに対して変更の許可を行い前記第5ユーザからの変更内容の申請に対して承認を行う処理を実行し、前記第3ユーザによって行われる操作に応じて前記第5ユーザからの変更内容で前記第4ユーザに対して変更内容の申請を行う処理を実行する、
情報処理装置。 - 前記変更は、前記構成要素の差替、前記構成要素の分割、前記構成要素の結合、前記構成要素の削除、前記構成要素の追加のうちの少なくとも1つを含む、
請求項9に記載の情報処理装置。 - 前記構成要素ごとの構成要素データは、形状を表す形状データ、および、属性を表す属性データを含む、
請求項9または請求項10に記載の情報処理装置。 - 前記構成要素データは、さらに、付帯情報データを含む、
請求項11に記載の情報処理装置。 - 前記構成要素データに含まれる各データは、GUIDを名称に含むファイルによって保持される、
請求項11または請求項12に記載の情報処理装置。 - 前記処理部は、前記三次元物体を構成する前記構成要素ごとに前記構成要素ごとのデータを独立したファイルとして保存し、前記ファイルごとに前記変更内容をトランザクションに格納し、前記トランザクションをブロックチェーンに追加することで、前記構成要素ごとの前記変更の履歴を前記ブロックチェーンにて管理する、
請求項9から請求項13のいずれか1項に記載の情報処理装置。 - コンピュータに、
複数の構成要素から構成される三次元物体について前記構成要素ごとに、第3ユーザに対して第4ユーザから変更の許可が行われた場合に前記第3ユーザによって行われる操作に応じて前記第4ユーザに対して変更内容の申請を行う処理ステップを実行させるためのプログラムであって、
前記処理ステップは、前記第3ユーザに対して前記第4ユーザから変更の許可が行われた場合に、前記第3ユーザによって行われる操作に応じて第5ユーザに対して変更の許可を行い前記第5ユーザからの変更内容の申請に対して承認を行う処理を実行し、前記第3ユーザによって行われる操作に応じて前記第5ユーザからの変更内容で前記第4ユーザに対して変更内容の申請を行う処理を実行する、
プログラム。 - 複数の構成要素から構成される三次元物体について前記構成要素ごとに、第1ユーザによって行われる操作に応じて第2ユーザに対して変更の許可を行う処理を実行する第1処理部と、
前記第2ユーザによって行われる操作に応じて前記第1ユーザに対して変更内容の申請を行う処理を実行する第2処理部と、
前記第1ユーザによって行われる操作に応じて前記第2ユーザからの変更内容の申請に対して承認を行う処理を実行する第3処理部と、を備え、
前記第2ユーザに対して前記第1ユーザから変更の許可が行われた場合に、前記第2ユーザによって行われる操作に応じて第5ユーザに対して変更の許可を行い前記第5ユーザからの変更内容の申請に対して承認を行う処理を実行し、前記第2ユーザによって行われる操作に応じて前記第5ユーザからの変更内容で前記第1ユーザに対して変更内容の申請を行う処理を実行する、
三次元データ管理システム。 - 複数の構成要素から構成される三次元物体について前記構成要素ごとに、第1ユーザによって行われる操作に応じて第2ユーザに対して変更の許可を行う処理を実行する第1処理ステップと、
前記第2ユーザによって行われる操作に応じて前記第1ユーザに対して変更内容の申請を行う処理を実行する第2処理ステップと、
前記第1ユーザによって行われる操作に応じて前記第2ユーザからの変更内容の申請に対して承認を行う処理を実行する第3処理ステップと、を備え、
前記第2ユーザに対して前記第1ユーザから変更の許可が行われた場合に、前記第2ユーザによって行われる操作に応じて第5ユーザに対して変更の許可を行い前記第5ユーザからの変更内容の申請に対して承認を行う処理を実行し、前記第2ユーザによって行われる操作に応じて前記第5ユーザからの変更内容で前記第1ユーザに対して変更内容の申請を行う処理を実行する、
三次元データ管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021159494A JP7055234B1 (ja) | 2021-09-29 | 2021-09-29 | 情報処理装置、プログラム、三次元データ管理システムおよび三次元データ管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021159494A JP7055234B1 (ja) | 2021-09-29 | 2021-09-29 | 情報処理装置、プログラム、三次元データ管理システムおよび三次元データ管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP7055234B1 true JP7055234B1 (ja) | 2022-04-15 |
JP2023049637A JP2023049637A (ja) | 2023-04-10 |
Family
ID=81289233
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021159494A Active JP7055234B1 (ja) | 2021-09-29 | 2021-09-29 | 情報処理装置、プログラム、三次元データ管理システムおよび三次元データ管理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7055234B1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024042692A1 (ja) * | 2022-08-25 | 2024-02-29 | 株式会社Star Craft | 部品の3次元データ管理システム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002175381A (ja) | 2000-12-07 | 2002-06-21 | Mitsui Zosen Plant Engineering Inc | 仮想創作物の実体物化システムおよび図形データ構造並びに記録媒体 |
JP2002342385A (ja) | 2001-05-14 | 2002-11-29 | Shigenori Tanaka | 協調設計支援システム |
JP2020170296A (ja) | 2019-04-02 | 2020-10-15 | 日本電信電話株式会社 | ブロックチェーンシステム、承認端末、利用者端末、履歴管理方法、および、履歴管理プログラム |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3562134B2 (ja) * | 1996-04-19 | 2004-09-08 | 富士ゼロックス株式会社 | 協調設計支援システム及び方法 |
JPH11110538A (ja) * | 1997-10-07 | 1999-04-23 | Mitsubishi Heavy Ind Ltd | 画面編集方法とその装置 |
-
2021
- 2021-09-29 JP JP2021159494A patent/JP7055234B1/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002175381A (ja) | 2000-12-07 | 2002-06-21 | Mitsui Zosen Plant Engineering Inc | 仮想創作物の実体物化システムおよび図形データ構造並びに記録媒体 |
JP2002342385A (ja) | 2001-05-14 | 2002-11-29 | Shigenori Tanaka | 協調設計支援システム |
JP2020170296A (ja) | 2019-04-02 | 2020-10-15 | 日本電信電話株式会社 | ブロックチェーンシステム、承認端末、利用者端末、履歴管理方法、および、履歴管理プログラム |
Non-Patent Citations (1)
Title |
---|
樋口一希,BIMの課題と可能性・117 [online],2016年06月23日,インターネット,<URL: https://www.decn.co.jp/?p=70952>,[検索日 2021.11.18] |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024042692A1 (ja) * | 2022-08-25 | 2024-02-29 | 株式会社Star Craft | 部品の3次元データ管理システム |
Also Published As
Publication number | Publication date |
---|---|
JP2023049637A (ja) | 2023-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7330596B2 (ja) | ブロックチェーンデータのアーカイブ方法、ブロックチェーンデータのアーカイブ装置、電子機器、及びコンピュータプログラム | |
CN108322472B (zh) | 用于提供基于云的身份和访问管理的方法、系统和介质 | |
CN105659558B (zh) | 计算机实现的方法、授权服务器以及计算机可读存储器 | |
JP5727020B2 (ja) | クラウドコンピューティングシステム及びそのデータ同期化方法 | |
CN103198090B (zh) | 用于优化虚拟桌面环境中的存储分配的方法和系统 | |
KR101975614B1 (ko) | 클라우드 서비스 재접속 자동화 방법 | |
CN113711536A (zh) | 从区块链网络中提取数据 | |
CN110602147B (zh) | 一种基于云平台的数据加密安全存储方法、系统和存储介质 | |
JP6298197B2 (ja) | 対応するプライマリ・アプリケーションデータから導出される識別子に基づく補足データへのアクセス | |
CN107924411A (zh) | 事务系统中ui状态的恢复 | |
WO2014039772A1 (en) | Multi-domain identity management system | |
JP2014132462A (ja) | 拡張可能且つプログラム可能なマルチテナントサービスアーキテクチャー | |
CN102947797A (zh) | 使用横向扩展目录特征的在线服务访问控制 | |
US8725767B1 (en) | Multi-dimensional object model for storage management | |
CN111327613A (zh) | 分布式服务的权限控制方法、装置及计算机可读存储介质 | |
CN110428217A (zh) | 一种erp系统 | |
JP7055234B1 (ja) | 情報処理装置、プログラム、三次元データ管理システムおよび三次元データ管理方法 | |
US11841842B2 (en) | Method and system for using external content type object types | |
CN107885488A (zh) | 意图和具有意图的锁 | |
CN103136621A (zh) | 工程送审表单的审核流程的在线管理方法 | |
CN110414257A (zh) | 一种数据访问方法及服务器 | |
JP2005004549A (ja) | ポリシーサーバ、そのポリシー設定方法、アクセス制御方法、プログラム | |
CN107911443A (zh) | 一种会话信息处理方法、装置、服务器和可读存储介质 | |
US8725521B2 (en) | System and method for designing secure business solutions using patterns | |
US20210158298A1 (en) | Contact discovery load balancing by matter invite |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210929 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20210929 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211124 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220120 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220322 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220405 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7055234 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |