JP7745896B2 - File management method, file management program, and file management system - Google Patents
File management method, file management program, and file management systemInfo
- Publication number
- JP7745896B2 JP7745896B2 JP2023114769A JP2023114769A JP7745896B2 JP 7745896 B2 JP7745896 B2 JP 7745896B2 JP 2023114769 A JP2023114769 A JP 2023114769A JP 2023114769 A JP2023114769 A JP 2023114769A JP 7745896 B2 JP7745896 B2 JP 7745896B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- split files
- file
- target file
- files
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、ファイル管理方法、ファイル管理プログラム、及びファイル管理システムに関する。 The present invention relates to a file management method, a file management program, and a file management system.
従来から、ネットワークサービスを利用する場合、サービスを利用するコンピュータ(クライアント)と、サービスやデータを提供するコンピュータ(サーバ)とが、ネットワークを介して通信しながら動作するシステム、いわゆるクライアントサーバシステムが普及している。一方、このようなシステムの場合、サーバが停止した場合には、システム全体が利用できなくなったり、データがサーバに集中している為、サーバに不正アクセスされた場合には容易に情報が漏洩してしまうというセキュリティに問題があった。このような問題を解決する為に、地理的に分散した複数のコンピュータをP2P(Peer to Peer)ネットワークで接続し、データを保存するシステム、いわゆる分散ファイルシステムが用いられている。このようなシステムの一例が、例えば、非特許文献1に提案されている。 Conventionally, when using a network service, a system known as a client-server system has become widespread, in which a computer using the service (client) and a computer providing the service or data (server) communicate over a network. However, such systems have security issues, such as the entire system becoming unavailable if the server stops working, and because data is concentrated on the server, unauthorized access to the server can easily lead to information leakage. To solve these problems, a system known as a distributed file system is used, in which multiple geographically dispersed computers are connected via a P2P (Peer to Peer) network and data is stored. An example of such a system is proposed in, for example, Non-Patent Document 1.
例えば、非特許文献1には、ファイルを分散ファイルシステムに格納すると、ファイルはより小さなチャンクに分割され、暗号的にハッシュされ、コンテンツ識別子(CID)と呼ばれる一意のフィンガープリントが与えられ、このCIDは、その時点で存在するファイルの永続的な記録として機能し、他のノードがファイルを検索するとき、ファイルのCIDによって参照されるコンテンツを保存しているノードを尋ね、ファイルを表示またはダウンロードすると、コピーがキャッシュされることが開示されている。 For example, Non-Patent Document 1 discloses that when a file is stored in a distributed file system, it is split into smaller chunks, cryptographically hashed, and given a unique fingerprint called a Content Identifier (CID), which acts as a persistent record of the file as it exists at that time; when other nodes search for the file, they ask the node that stores the content referenced by the file's CID, and when the file is viewed or downloaded, a copy is cached.
しかし、非特許文献1において提案される技術では、分割したデータを暗号化し、分散して格納するが、暗号化ファイルを復号する情報の管理をセキュアに行うことができないという問題があった。 However, the technology proposed in Non-Patent Document 1 encrypts the divided data and stores it in a distributed manner, but has the problem that it is not possible to securely manage the information used to decrypt the encrypted files.
上記課題に鑑み、本発明は、大量・大容量のデータを保管することができ、且つよりセキュアにファイルの管理をすることができる新規な技術を提供することを解決すべき課題とする。 In light of the above issues, the present invention aims to solve the problem of providing a new technology that can store large amounts of data and manage files more securely.
上記課題を解決するために、本発明は、P2P通信により、複数のノード間で情報を分散管理するファイル管理方法であって、分散管理の対象となる対象ファイルをアップロードする第1ノードが、前記対象ファイルを分割し、該対象ファイルに関連付けられる複数の分割ファイルを作成する分割ステップと、前記分割ファイルを暗号化処理した暗号化分割ファイルを生成する暗号化ステップと、前記暗号化分割ファイル、及び復号の為の復号情報を他のノードに送信する送信ステップと、を実行する。 To solve the above problems, the present invention provides a file management method for distributed management of information among multiple nodes via P2P communication, in which a first node that uploads a target file to be distributedly managed performs the following steps: a division step in which the target file is divided and multiple split files associated with the target file are created; an encryption step in which the split files are encrypted to generate encrypted split files; and a transmission step in which the encrypted split files and decryption information for decryption are transmitted to other nodes.
このような構成とすることで、分散管理の対象となるファイルを分割し、且つ分割したファイルを暗号化して、よりセキュアにファイルを分散管理することができる。また、暗号化したファイルを復号する為の複合情報も他ノードに送信することで、複合情報のセキュリティも担保することができ、参加するノードが増加して保存できるデータ容量が増加しても高いセキュリティが確保できる。 With this configuration, files to be managed in a distributed manner can be divided and the divided files can be encrypted, enabling more secure distributed management of files. Furthermore, by sending the compound information required to decrypt the encrypted file to other nodes, the security of the compound information can also be ensured, ensuring high security even if the number of participating nodes increases and the amount of data that can be stored increases.
本発明の好ましい形態では、前記対象ファイルをダウンロードする第2ノードが、前記対象ファイルの指定を受け付けて、該対象ファイルに関連付けられる暗号化分割ファイル、及び前記暗号化分割ファイルの復号情報を取得する取得ステップと、該取得した復号情報に基づいて、該暗号化分割ファイルを復号する復号ステップと、を実行する。 In a preferred embodiment of the present invention, the second node that downloads the target file receives the designation of the target file and executes an acquisition step of acquiring encrypted split files associated with the target file and decryption information for the encrypted split files, and a decryption step of decrypting the encrypted split files based on the acquired decryption information.
このような構成とすることで、分散管理されている暗号化された分割ファイル、及び復号情報を他ノードから取得して、暗号化分割ファイルから分割ファイルを取得することができる。これにより、P2P通信をするノードであれば誰でも暗号化分割ファイルを取得し、復号することができる。 With this configuration, encrypted split files that are managed in a distributed manner and decryption information can be obtained from other nodes, and split files can be obtained from the encrypted split files. This allows any node participating in P2P communication to obtain and decrypt the encrypted split files.
本発明の好ましい形態では、前記分割ステップにおいて、結合ステータスが付与された前記分割ファイルを生成し、前記取得ステップにおいて、復元する前記対象ファイルの指定を受け付けて、該指定された対象ファイルに紐づく前記暗号化分割ファイル、及び前記復号情報を取得し、前記第2ノードが、更に前記復号ステップの結果得られた前記分割ファイル、及び前記結合ステータスに基づいて該指定された対象ファイルを復元する復元ステップを実行する。 In a preferred embodiment of the present invention, the splitting step generates split files with attached linkage statuses, the acquisition step accepts the designation of the target file to be restored and acquires the encrypted split files linked to the designated target file and the decryption information, and the second node further executes a restoration step in which the designated target file is restored based on the split files obtained as a result of the decryption step and the linkage status.
このような構成とすることで、復元したい対象ファイルを指定して、該対象ファイルに関連付けられた暗号化分割ファイルを取得し、該暗号化分割ファイルから分割ファイルを復号し、該指定された対象ファイルを復元することができる。また、結合ステータスが付与された分割ファイルを生成することで、誤ったファイルが復元されないようにすることができる。 With this configuration, you can specify the target file you want to restore, obtain the encrypted split files associated with that target file, decrypt the split files from the encrypted split files, and restore the specified target file. Furthermore, by generating split files with a combined status, you can prevent the wrong file from being restored.
本発明の好ましい形態では、前記送信ステップにおいて、共有グループを紐づけた前記暗号化分割ファイルを前記他のノードに送信し、前記対象ファイルをダウンロードする第2ノードが、更に前記共有グループ毎に、該送信された暗号化分割ファイルに対応する対象ファイル情報を表示処理する表示処理ステップを実行する。 In a preferred embodiment of the present invention, in the transmission step, the encrypted split files linked to the sharing groups are transmitted to the other nodes, and the second node that downloads the target files further executes a display processing step that displays, for each sharing group, target file information corresponding to the transmitted encrypted split files.
このような構成とすることで、対象ファイルを共有するグループである共有グループと暗号化分割ファイルを紐づけて、P2P通信を行うノード間で共有グループ毎に対象ファイルを管理することができる。 By configuring in this way, the encrypted split files can be linked to the sharing groups that share the target files, and the target files can be managed for each sharing group between nodes that perform P2P communication.
本発明の好ましい形態では、前記第1ノードと前記他のノードは1のWAN内のノードであり、前記送信ステップにおいて、第1のLAN内の前記第1ノード、及び第2のLAN内の前記他のノードがVPN接続されている場合には、内部ネットワークに配置された他のノードに前記暗号化分割ファイルを送信し、前記第1ノード及び前記他のノードがVPN接続されていない場合には、外部ネットワークに配置された前記他のノードに前記暗号化分割ファイルを送信する。 In a preferred embodiment of the present invention, the first node and the other node are nodes within one WAN, and in the sending step, if the first node within a first LAN and the other node within a second LAN are connected via VPN, the encrypted split files are sent to the other node located on an internal network, and if the first node and the other node are not connected via VPN, the encrypted split files are sent to the other node located on an external network.
このような構成とすることで、VPNが接続されているか否かに応じて、暗号化分割ファイルを送信するノード先を変更することができる。 This configuration allows the node destination to which encrypted split files are sent to to be changed depending on whether a VPN is connected or not.
本発明の好ましい形態では、前記第1ノードは、更に前記対象ファイルへ行った操作に関するファイル操作情報に基づいて、ファイル重要度を算出する算出ステップと、前記ファイル重要度に基づいて、前記他のノードとVPN接続を行うか否かを判定する接続ステップと、を実行する。 In a preferred embodiment of the present invention, the first node further executes a calculation step of calculating file importance based on file operation information regarding operations performed on the target file, and a connection step of determining whether to establish a VPN connection with the other node based on the file importance.
このような構成とすることで、対象ファイルへ行った操作に関する情報に基づいて、ファイルの重要度を算出し、重要度に応じて、VPNを接続するか否かを判定することができる。これにより、対象ファイルの重要度に応じて常にVPN接続をする必要がなくなり、データ通信の頻度と電力消費を削減することができる。 With this configuration, the importance of the file can be calculated based on information about operations performed on the target file, and a decision can be made as to whether or not to connect to the VPN depending on the importance. This eliminates the need to always connect to the VPN depending on the importance of the target file, reducing the frequency of data communication and power consumption.
本発明の好ましい形態では、前記暗号化ステップにおいて、前記分割ファイル毎に前記複数の復号情報を格納する。 In a preferred embodiment of the present invention, the encryption step stores the multiple pieces of decryption information for each of the split files.
このような構成とすることで、暗号化分割ファイルを復号する復号情報を複数生成し、よりセキュアに対象ファイルの共有をすることができる。 This configuration allows multiple pieces of decryption information to be generated to decrypt the encrypted split files, making it possible to share the target files more securely.
本発明の好ましい形態では、前記第1ノードは、更にユーザの正当性を証明するデジタル認証と、ファイルのやり取りを行う為の物理キーが接続されているか否かを証明する物理キー認証と、VPN接続のプロファイル情報が設定されているか否かを証明するVPN認証に基づいて、ユーザの利用認証を行う認証ステップを実行する。 In a preferred embodiment of the present invention, the first node further performs an authentication step to authenticate the user based on digital authentication that verifies the user's authenticity, physical key authentication that verifies whether a physical key for file transfer is connected, and VPN authentication that verifies whether profile information for the VPN connection is set.
このような構成とすることで、ユーザのアクセスを受け付ける為に、デジタル認証、物理キー認証、VPN認証を必要とすることで、よりセキュアな対象ファイルの共有を実現することができる。 This configuration allows for more secure sharing of target files by requiring digital authentication, physical key authentication, and VPN authentication to accept user access.
本発明は、大量・大容量のデータを保管することができ、且つよりセキュアにファイルの管理をすることができる新規な技術を提供する効果を奏する。 The present invention has the effect of providing a new technology that can store large amounts of data and manage files more securely.
(実施形態1)
以下、添付図面を参照して、更に詳細に説明する。図面には好ましい実施形態が示されている。しかし、多くの異なる形態で実施されることが可能であり、本明細書に記載される実施形態に限定されない。
(Embodiment 1)
The present invention will now be described more fully with reference to the accompanying drawings, in which preferred embodiments are shown, but which may be embodied in many different forms and are not limited to the embodiments set forth herein.
例えば、本実施形態ではファイル管理システムの構成、動作等について説明するが、同様の構成の方法、コンピュータプログラム等も、同様の作用効果を奏することができる。また、プログラムは、記録媒体に記憶させてもよい。この記録媒体を用いれば、例えばコンピュータにプログラムをインストールすることができ、これによりファイル管理システムを構成することができる。ここで、プログラムを記憶した記録媒体は、例えばCD-ROM等の非一過性の記録媒体であっても良い。 For example, while this embodiment describes the configuration, operation, etc. of a file management system, similarly configured methods, computer programs, etc. can also achieve similar effects. The program may also be stored on a recording medium. Using this recording medium, the program can be installed on a computer, for example, thereby configuring a file management system. Here, the recording medium on which the program is stored may be a non-transitory recording medium, such as a CD-ROM.
本実施形態において「部」とは、例えば、広義の回路によって実施されるハードウェア資源と、これらハードウェア資源によって具体的に実現され得るソフトウェアの情報処理とを合わせたものも含み得る。本実施形態において「情報」とは、例えば電圧・電流を表す信号値の物理的な値、0又は1で構成される2進数のビット集合体としての信号値の高低、又は量子的な重ね合わせ(いわゆる量子ビット)によって表され、広義の回路上で通信・演算が実行され得る。広義の回路とは、回路(Circuit)、回路類(Circuitry)、プロセッサ(Processor)及びメモリ(Memory)等を適宜組み合わせることによって実現される回路である。即ち、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)等を含むものである。 In this embodiment, "unit" can include, for example, hardware resources implemented by a circuit in the broad sense, as well as software information processing that can be specifically realized by these hardware resources. In this embodiment, "information" can be represented, for example, by the physical value of a signal representing voltage or current, the high or low value of a signal as a binary bit collection consisting of 0 or 1, or quantum superposition (so-called quantum bits), and communication and calculations can be performed on a circuit in the broad sense. A circuit in the broad sense is a circuit realized by appropriately combining a circuit, circuitry, processor, memory, etc. In other words, it includes a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), an LSI (Large Scale Integration), an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), etc.
本発明は、P2P通信により、複数のノード間で情報を分散管理するシステム(いわゆる、分散ファイルシステム)に関する。ここで、分散ファイルシステムとは、複数のノードで形成されるネットワーク上において、あるノードが情報をアップロードすると、該ノードに隣接するノードに次々に該情報のキャッシュファイルを保存し、キャッシュファイルを複数のノード間で分散して管理するシステムのことである。 This invention relates to a system (known as a distributed file system) that uses P2P communication to distribute and manage information among multiple nodes. Here, a distributed file system is a system in which, when a node uploads information on a network made up of multiple nodes, cache files of that information are stored in succession in nodes adjacent to the node, and the cache files are distributed and managed among multiple nodes.
本発明においては、分散管理の対象となる情報(以下、対象ファイル)を分割し暗号化した暗号化分割ファイルを分散ファイルシステムにアップロードすることで、対象ファイルを分散管理する。本実施形態(実施形態1)では、同一のLAN(Local Area Network)に配置される複数のノード間で、P2P通信により情報を分散管理する場合について説明する。 In this invention, information to be managed in a distributed manner (hereinafter referred to as "target files") is divided and encrypted, and the resulting encrypted split files are uploaded to a distributed file system, thereby achieving distributed management of the target files. This embodiment (embodiment 1) describes a case in which information is managed in a distributed manner using P2P communication between multiple nodes located on the same LAN (Local Area Network).
<1.実施形態1のシステム構成>
図1は、一実施形態のシステムの構成を示すブロック図である。図1に示すように、ファイル管理システム0は、複数のノード1を備え、これらがLANを介してP2P通信可能に構成される。
1. System Configuration of First Embodiment
1 is a block diagram showing the configuration of a system according to an embodiment of the present invention. As shown in Fig. 1, a file management system 0 includes a plurality of nodes 1, which are configured to be capable of P2P communication via a LAN.
ノード1として、汎用のサーバ向けのコンピュータやパーソナルコンピュータやスマートフォン、タブレット端末、ウェアラブルデバイス等を利用することが可能である。本実施形態においては、ファイルを検索する為の索引となる後述のファイル情報を集約するノード1を親ノード、該ファイル情報に基づいて暗号化分割ファイルを検索するノード1を子ノードと呼ぶ。 Node 1 can be a general-purpose server computer, personal computer, smartphone, tablet terminal, wearable device, etc. In this embodiment, node 1, which aggregates the file information (described below) that serves as an index for searching files, is called the parent node, and node 1, which searches for encrypted split files based on that file information, is called the child node.
本実施形態におけるLANは、有線又は無線であるが、有線ケーブルや無線LANの規格に制限はなく、更に、LANの接続形式、アクセス制御方式、規模にも制限はない。 The LAN in this embodiment may be wired or wireless, but there are no restrictions on the wired cable or wireless LAN standards, and there are also no restrictions on the LAN connection format, access control method, or scale.
<1.1.ハードウェア構成>
図2は、ハードウェア構成図である。図2に示すように、ノード1は、処理部11、記憶部12、通信部13、入力部14、及び出力部15を備える。
<1.1. Hardware configuration>
2 is a hardware configuration diagram, the node 1 includes a processing unit 11, a storage unit 12, a communication unit 13, an input unit 14, and an output unit 15.
処理部11は、命令セットを実行可能なCPUなどのプロセッサを有し、本発明に係るファイル管理プログラム、OSやその他のアプリケーションを実行することで、ファイル管理装置(ノード)の動作処理全体を制御する。
記憶部12は、命令セットを記憶可能なRAMなどの揮発性メモリ、OS及びファイル管理プログラムなどを記録可能なHDDやSSDなどの不揮発性の記録媒体を有する。
通信部13は、ネットワークに接続する為の通信インタフェース装置を有し、LANとの通信制御を実行して、情報の入出力を行う。
入力部94は、キーボードやタッチパネルなどの入力処理が可能な入力デバイスを有する。
出力部95は、ディスプレイなどの表示処理が可能な表示デバイスを有する。
The processing unit 11 has a processor such as a CPU that can execute an instruction set, and controls the overall operation and processing of the file management device (node) by executing the file management program according to the present invention, the OS, and other applications.
The storage unit 12 includes a volatile memory such as a RAM capable of storing an instruction set, and a non-volatile recording medium such as an HDD or SSD capable of recording an OS, a file management program, and the like.
The communication unit 13 has a communication interface device for connecting to a network, and controls communication with the LAN to input and output information.
The input unit 94 has an input device capable of input processing, such as a keyboard or a touch panel.
The output unit 95 has a display device capable of display processing, such as a display.
<1.2.ノード1の機能構成>
図3は、実施形態1におけるノード1の機能ブロック図である。図3に示すように、ノード1は、分割部101、暗号化部102、送信部103、取得部104、復号部105、復元部106、認証部107、表示処理部108、及びデータベース2を備える。これは、ソフトウェア(記憶部12に記憶されている)による情報処理がハードウェア(処理部11)によって具体的に実現されたものである。
<1.2. Functional configuration of node 1>
3 is a functional block diagram of the node 1 in the embodiment 1. As shown in Fig. 3, the node 1 includes a division unit 101, an encryption unit 102, a transmission unit 103, an acquisition unit 104, a decryption unit 105, a restoration unit 106, an authentication unit 107, a display processing unit 108, and a database 2. This is a specific implementation of information processing by software (stored in a storage unit 12) by hardware (a processing unit 11).
<1.3.データベース2>
データベース2は、ユーザ情報、共有グループ情報、及びファイル情報を格納する。
<1.3. Database 2>
The database 2 stores user information, sharing group information, and file information.
<1.3.1.ユーザ情報>
ユーザ情報は、分散ファイルシステムを利用するユーザに関する情報である。ユーザ情報は、ユーザを一意に特定するユーザID、ユーザ名、メールアドレス、パスワード、ユーザが所属する組織のID(組織ID)等を含み、共有グループ情報と紐づけて格納される。
<1.3.1. User Information>
User information is information about a user who uses the distributed file system. The user information includes a user ID that uniquely identifies the user, a user name, an email address, a password, the ID of the organization to which the user belongs (organization ID), and the like, and is stored in association with shared group information.
<1.3.2.共有グループ情報>
共有グループ情報は、ユーザに共有される対象ファイルのグループを示す情報である。本実施形態において共有グループは、組織が取り組むプロジェクト毎に作成される情報であって、共有グループを一意に特定する共有グループID、共有グループ名を含み、組織IDと紐づけられて格納される。
<1.3.2. Shared Group Information>
The shared group information is information that indicates a group of target files that are shared by users. In this embodiment, the shared group is information created for each project that an organization is working on, and includes a shared group ID and a shared group name that uniquely identify the shared group, and is stored in association with the organization ID.
<1.3.3.ファイル情報>
ファイル情報は、分散管理するファイルに関する情報であって、対象ファイルのメタ情報に関する対象ファイル情報、及び分割ファイルのメタ情報に関する分割ファイル情報を含む。
対象ファイル情報は、対象ファイルのハッシュ値、対象ファイル名、対象ファイルサイズ、対象ファイルを配置するフォルダのID、対象ファイルをアップロードしたユーザのID、及びアップロードした日時を含む。
分割ファイル情報は、分割ファイルのハッシュ値、分割ファイル名、分割ファイルの結合ステータス、対象ファイルを配置するフォルダのID、暗号化分割ファイルのハッシュ値、及び復号情報を含む。本実施形態において復号情報は、1又は複数の秘密鍵であるが、公開鍵やパスワード等であってもよい。
<1.3.3. File information>
The file information is information relating to files to be managed in a distributed manner, and includes target file information relating to meta information of the target file, and split file information relating to meta information of the split files.
The target file information includes the hash value of the target file, the target file name, the target file size, the ID of the folder in which the target file is placed, the ID of the user who uploaded the target file, and the upload date and time.
The split file information includes hash values of the split files, split file names, merge status of the split files, ID of the folder in which the target file is placed, hash values of the encrypted split files, and decryption information. In this embodiment, the decryption information is one or more private keys, but it may also be a public key, a password, etc.
本実施形態では、親ノードは少なくともデータベース2を備える。親ノードのデータベース2には、子ノードから送信された対象ファイル情報及び分割ファイル情報が少なくとも格納される。なお、親ノードが、分割部101、暗号化部102、送信部103、取得部104、復号部105、復元部106、認証部107、表示処理部108を備えていてもよい。また、子ノードのデータベース2には、暗号化分割ファイルが格納される。親ノードのデータベース2にも暗号化分割ファイルが分散格納されてもよい。なお、ノード1に親ノードが含まれなくてもよく、その場合には、ファイル情報は、ノード1(子ノード)に分散格納される。 In this embodiment, the parent node has at least Database 2. Database 2 of the parent node stores at least the target file information and split file information sent from the child node. The parent node may also have a splitting unit 101, encryption unit 102, transmission unit 103, acquisition unit 104, decryption unit 105, restoration unit 106, authentication unit 107, and display processing unit 108. Database 2 of the child node stores encrypted split files. The encrypted split files may also be distributed and stored in Database 2 of the parent node. Node 1 does not need to include a parent node; in that case, file information is distributed and stored in Node 1 (child node).
また、本実施形態では、ファイル情報に加えて、ユーザ情報及び共有グループ情報が、親ノードのデータベース2に格納される。一方、インターネット上の外部の認証サーバや子ノードのデータベースに格納されてもよい。 In addition to file information, in this embodiment, user information and shared group information are stored in the parent node's database 2. Alternatively, they may be stored in an external authentication server on the Internet or in the child node's database.
<1.4.分割部101>
分割部101は、対象ファイルを分割し、該対象ファイルに関連付けられる複数の分割ファイルを作成する。分割部101は、対象ファイルを分割し、結合ステータスが付与された分割ファイルを作成する。ここで、結合ステータスとは、分割ファイルから対象ファイルを復元する為に必要な情報である。
<1.4. Dividing section 101>
The dividing unit 101 divides a target file and creates a plurality of split files associated with the target file. The dividing unit 101 divides the target file and creates split files to which a combined status is assigned. Here, the combined status is information necessary for restoring the target file from the split files.
<1.5.暗号化部102>
暗号化部102は、分割ファイルに暗号化処理を実行し、暗号化分割ファイルを生成する。暗号化部102は、分割ファイル毎に1又は複数の鍵情報を生成して、分割ファイルに対して1又は複数回の暗号化処理を実行することで暗号化分割ファイルを生成する。そして暗号化部102は、暗号化分割ファイル毎に鍵情報に対応する1又は複数の復号情報を格納する。なお、本実施形態においては、分割ファイル毎に異なる鍵情報を用いるが、全ての分割ファイルに同じ鍵情報を用いてもよい。ここで、鍵情報とは、分割ファイルを暗号化する為の情報であって、共通鍵、秘密鍵、及び公開鍵を含む情報である。
<1.5. Encryption unit 102>
The encryption unit 102 performs encryption processing on the split files to generate encrypted split files. The encryption unit 102 generates one or more pieces of key information for each split file and performs encryption processing on the split files one or more times to generate encrypted split files. The encryption unit 102 then stores one or more pieces of decryption information corresponding to the key information for each encrypted split file. Note that in this embodiment, different key information is used for each split file, but the same key information may be used for all split files. Here, key information is information for encrypting the split files and includes a common key, a private key, and a public key.
<1.6.送信部103>
送信部103は、他のノード1に暗号化分割ファイル、及び復号情報を送信する。送信部103は、子ノードに暗号化分割ファイルを、親ノードに復号情報を送信する。また、送信部103は、共有グループを紐づけた暗号化分割ファイルを子ノードに送信する。
<1.6. Transmitting unit 103>
The transmitting unit 103 transmits the encrypted split files and decryption information to other nodes 1. The transmitting unit 103 transmits the encrypted split files to child nodes and the decryption information to parent nodes. The transmitting unit 103 also transmits the encrypted split files linked to the sharing group to the child nodes.
<1.7.取得部104>
取得部104は、暗号化分割ファイル、及び鍵情報を取得する。取得部104は、対象ファイルの指定を受け付けて、該対象ファイルに関連付けられる暗号化分割ファイル、及び暗号化分割ファイルの鍵情報を取得する。
<1.7. Acquisition unit 104>
The acquisition unit 104 acquires the encrypted split files and key information. The acquisition unit 104 accepts the designation of a target file and acquires the encrypted split files associated with the target file and the key information for the encrypted split files.
<1.8.復号部105>
復号部105は、復号情報に基づいて、暗号化分割ファイルを復号する。復号部105は、暗号化分割ファイル毎の復号情報に基づいて、暗号化分割ファイルを復号し、分割ファイルを取得する。
<1.8. Decoding unit 105>
The decryption unit 105 decrypts the encrypted split files based on the decryption information. The decryption unit 105 decrypts the encrypted split files based on the decryption information for each encrypted split file, and obtains the split files.
<1.9.復元部106>
復元部106は、分割ファイルに基づいて対象ファイルを復元する。復元部106は、復号部105によって得られた分割ファイル、及び分割ファイルに付与された結合ステータスに基づいて、対象ファイルを復元する。
<1.9. Restoration Unit 106>
The restoration unit 106 restores the target file based on the split files. The restoration unit 106 restores the target file based on the split files obtained by the decryption unit 105 and the connection statuses assigned to the split files.
<1.10.認証部107>
認証部107は、ユーザの利用認証を実行する。本実施形態において認証部107は、ユーザの正当性を証明するデジタル認証と、分散ファイルシステムのノード1を特定する物理キー認証と、VPN接続のプロファイル情報が設定されているか否かを証明するVPN認証に基づいて、ユーザの利用認証を実行する。ここで本実施形態においては、ファイルのやり取りを行う為の物理キーがノード1に接続されており、認証部107は、デジタル認証として、分散ファイルシステム上のデータにアクセスする為のウォレットを一意に特定するウォレットIDを物理キーから受け付けて、物理キー認証として、ローカルIPアドレス及びノード1毎に生成されるノード1を一意に識別するノードID(いわゆる、Peer ID)を物理キーから受け付け、VPN認証として、物理キーからVPN接続のプロファイル情報を受け付け、ユーザからメールアドレス及びパスワードを受け付ける。
<1.11.表示処理部108>
表示処理部108は、後述のファイル共有画面上に、対象ファイルに関する対象ファイル情報を表示処理する。表示処理部108は、共有グループ毎に、暗号化分割ファイルに対応する対象ファイルの情報を表示処理し、表示処理結果を第2ノードに送信する。
<1.10. Authentication unit 107>
The authentication unit 107 performs user authentication. In this embodiment, the authentication unit 107 performs user authentication based on digital authentication that proves the legitimacy of the user, physical key authentication that identifies node 1 of the distributed file system, and VPN authentication that proves whether profile information for a VPN connection is set. In this embodiment, a physical key for exchanging files is connected to node 1, and the authentication unit 107 receives, as digital authentication, a wallet ID that uniquely identifies a wallet for accessing data in the distributed file system from the physical key. As physical key authentication, the authentication unit 107 receives, from the physical key, a local IP address and a node ID (so-called Peer ID) that uniquely identifies node 1, which is generated for each node 1. As VPN authentication, the authentication unit 107 receives, from the physical key, profile information for the VPN connection, and an email address and password from the user.
<1.11. Display processing unit 108>
The display processing unit 108 displays target file information related to the target files on a file sharing screen (described later). The display processing unit 108 displays information on the target files corresponding to the encrypted split files for each sharing group, and transmits the display processing results to the second node.
なお、本実施形態において表示処理は、表示処理部108が必要な情報を生成する処理を実行し、生成した情報を出力部95に送信することで、出力部95が該生成された情報を表示する処理を指す。 In this embodiment, the display process refers to the process in which the display processing unit 108 executes processing to generate the necessary information, transmits the generated information to the output unit 95, and the output unit 95 displays the generated information.
<2.ファイル共有画面の表示例>
図4は、アクセス認証に成功した場合にノード1に表示される、対象ファイルを共有する為のファイル共有画面の表示例である。ファイル共有画面W1は、組織表示部ORD、共有グループ表示部SGD、及び対象ファイル表示部EFDを含む。
<2. Example of file sharing screen>
4 shows an example of a file sharing screen for sharing a target file, which is displayed on node 1 when access authentication is successful. The file sharing screen W1 includes an organization display section ORD, a sharing group display section SGD, and a target file display section EFD.
組織表示部ORDは、アクセス認証時に入力されたメールアドレス及びパスワードに対応するユーザに紐づく組織が変更可能に表示される。共有グループ表示部SGDは、組織表示部ORDに表示される組織に紐づく共有グループが指定可能に表示される。なお、本実施形態においては、共有グループ毎にアクセス可能なユーザが紐づけられているが、組織に所属する全てのユーザがアクセス可能であってもよい。 The organization display unit ORD displays a changeable organization associated with the user corresponding to the email address and password entered during access authentication. The shared group display unit SGD displays a specifiable shared group associated with the organization displayed in the organization display unit ORD. Note that in this embodiment, each shared group is associated with a user who can access it, but all users belonging to the organization may also be able to access it.
対象ファイル表示部EFDは、共有グループ表示部SGDにおいて指定された共有グループに紐づく対象ファイルの情報のうち、対象ファイル名、対象ファイルをアップロードしたユーザ名、アップロードした日時、及び対象ファイルのハッシュ値が表示される。なお、本実施形態においては、共有グループを指定することで、指定された共有グループに紐づく図示しない共有フォルダが表示され、共有フォルダを指定することで対象ファイル情報が表示される。一方、共有グループを指定することで、該共有グループに紐づく対象ファイル情報が表示されてもよい。 The target file display area EFD displays information about the target file associated with the sharing group specified in the sharing group display area SGD, including the target file name, the user name who uploaded the target file, the upload date and time, and the hash value of the target file. In this embodiment, specifying a sharing group displays a shared folder (not shown) associated with the specified sharing group, and specifying a shared folder displays the target file information. Alternatively, specifying a sharing group may display the target file information associated with that sharing group.
そして、ユーザが、ファイル共有画面W1の「アップロード」ボタンを選択入力することで、対象ファイルのアップロードが実行され、対象ファイル表示部EFDに表示される対象ファイル情報を指定し、ダウンロードに係る入力をすることで、ダウンロードが実行される。 Then, when the user selects and inputs the "Upload" button on the file sharing screen W1, the target file is uploaded, and when the user specifies the target file information displayed in the target file display area EFD and inputs the download-related information, the download is executed.
<3.フローチャート>
以下、図5を参照して、本実施形態のファイル管理方法について説明する。図5は、LAN内において対象ファイルを共有する処理を示すフローチャートである。なお、以下ではアクセス認証が成功した後のフローチャートについて説明する。
<3. Flowchart>
The file management method of this embodiment will be described below with reference to Fig. 5. Fig. 5 is a flowchart showing the process of sharing a target file within a LAN. Note that the following description will focus on the flowchart after successful access authentication.
<3.1.アップロード処理のフローチャート>
図5(a)は、第1ノードが対象ファイルをアップロードするまでの処理フローチャートを示す。
<3.1. Upload process flowchart>
FIG. 5A shows a processing flowchart up to when the first node uploads the target file.
<3.1.1.共有グループ・共有フォルダの指定受付>
まずステップS101(以下、「ステップSXXX」を単に「SXXX」とする)において、表示処理部108は、アクセス認証時に受け付けたメールアドレス及びパスワードに対応するユーザが所属する組織毎に共有グループを表示処理する。そしてS102において、表示処理部108は、共有グループの指定を受け付けて、該共有グループに紐づく共有フォルダを表示処理する。
<3.1.1. Receiving shared group and shared folder designations>
First, in step S101 (hereinafter, "step SXXX" will be simply referred to as "SXXX"), the display processing unit 108 displays a shared group for each organization to which a user corresponding to the email address and password accepted at the time of access authentication belongs. Then, in S102, the display processing unit 108 accepts the designation of a shared group and displays the shared folders linked to the shared group.
<3.1.2.分割ファイルの作成>
次いで、S103において、分割部101は、アップロードする対象ファイルの指定を受け付けて、該対象ファイルを分割し、分割ファイルを作成する。本実施形態において分割部101は、各ノード1に格納される対象ファイルの指定を受け付けることで、該対象ファイルを分割し、該対象ファイルに関連付けられる分割ファイルを作成する。
<3.1.2. Creating split files>
Next, in S103, the dividing unit 101 receives a designation of a target file to be uploaded, divides the target file, and creates split files. In this embodiment, the dividing unit 101 receives a designation of a target file stored in each node 1, divides the target file, and creates split files associated with the target file.
<3.1.3.分割ファイルの暗号化>
次いで、S104において、暗号化部102は、S103において作成された分割ファイルに暗号化処理を実行し、暗号化分割ファイルを生成する。本実施形態において暗号化部102は、分割ファイル毎に暗号化処理を実行し、複数の暗号化分割ファイルを生成する。そして暗号化部102は、復号情報として、暗号化分割ファイル毎に複数の秘密鍵を生成する。
<3.1.3. Encryption of split files>
Next, in S104, the encryption unit 102 performs encryption processing on the split files created in S103 to generate encrypted split files. In this embodiment, the encryption unit 102 performs encryption processing on each split file to generate multiple encrypted split files. The encryption unit 102 then generates multiple private keys for each encrypted split file as decryption information.
<3.1.4.暗号化分割ファイルのアップロード>
S105において、送信部103は、通知を行う宛先の指定を受け付ける。本実施形態においては、アップロードする対象ファイルの指定を受け付けると、LANを介して通信可能なノード1が表示され、送信部103は、該ノード1の指定を受け付けて、通知を行う宛先の指定を受け付ける。そして、S106において、送信部103は、S105において指定された宛先に送るメッセージの入力を受け付ける。
<3.1.4. Uploading encrypted split files>
In S105, the transmitting unit 103 accepts the specification of a destination to which the notification is to be sent. In this embodiment, when the specification of the target file to be uploaded is accepted, nodes 1 that can communicate via the LAN are displayed, and the transmitting unit 103 accepts the specification of the node 1 and accepts the specification of a destination to which the notification is to be sent. Then, in S106, the transmitting unit 103 accepts input of a message to be sent to the destination specified in S105.
次いで、S107において、送信部103は、暗号化分割ファイル、対象ファイル情報及び分割ファイル情報を他のノードに送信する。本実施形態においては、第1ノードの送信部103は、S101において指定された共有グループを紐づけた複数の暗号化分割ファイルを他の子ノードに送信する。そして、第1ノードから暗号化分割ファイルを受信した子ノードの送信部103は、該暗号化分割ファイルから得られる暗号化分割ファイル毎のハッシュ値を第1ノードに送信する。そして更に、暗号化分割ファイル毎のハッシュ値を受信した第1ノードの送信部103は、S101において指定された対象ファイルに基づいて生成される対象ファイル情報と、該対象ファイルに関連づけられる分割ファイルに基づいて生成され、受信した暗号化分割ファイルのハッシュ値を含む分割ファイル情報とを親ノードに送信する。そして、親ノードは、受信した対象ファイル情報、及び分割ファイル毎の分割ファイル情報を格納する。 Next, in S107, the transmitting unit 103 transmits the encrypted split files, target file information, and split file information to other nodes. In this embodiment, the transmitting unit 103 of the first node transmits multiple encrypted split files linked to the sharing group specified in S101 to other child nodes. Then, the transmitting unit 103 of the child node that received the encrypted split files from the first node transmits hash values for each encrypted split file obtained from the encrypted split files to the first node. Then, the transmitting unit 103 of the first node that received the hash values for each encrypted split file transmits, to the parent node, target file information generated based on the target file specified in S101 and split file information generated based on the split files associated with the target files and including the hash values of the received encrypted split files. The parent node then stores the received target file information and split file information for each split file.
なお、第1ノードの送信部103が、暗号化分割ファイル、対象ファイル情報及び分割ファイル情報を他のノードに送信する際に、全ての他の子ノードに送信できない状態の場合(例えば、全ての子ノードの電源が入っていない場合)には、第1ノードに一時的に暗号化分割ファイル、対象ファイル情報及び分割ファイル情報が格納され、他の子ノードに電源が入った場合に、一時的に格納された情報が送信される。 Note that when the transmitting unit 103 of the first node transmits the encrypted split files, target file information, and split file information to other nodes, if it is unable to transmit to all other child nodes (for example, if all child nodes are powered off), the encrypted split files, target file information, and split file information are temporarily stored in the first node, and the temporarily stored information is transmitted to the other child nodes when they are powered on.
<3.1.5.対象ファイル情報の表示処理>
そして、S108において表示処理部108は、対象ファイル情報を表示処理する。本実施形態において表示処理部108は、S107において送信された暗号化分割ファイルに対応する対象ファイルの情報を表示処理し、ファイル共有画面W1において共有グループ表示部SGD毎に表示させる。
<3.1.5. Display process of target file information>
Then, in S108, the display processing unit 108 displays the target file information. In this embodiment, the display processing unit 108 displays information about the target files corresponding to the encrypted split files transmitted in S107, and displays the information for each sharing group display section SGD on the file sharing screen W1.
以上、S101~S108によって、対象ファイルが分散ファイルシステムに格納され、セキュアに対象ファイルを管理することができる。また、LANを介して通信可能に接続されるノード1は、以下のS201~S205を実行することで、該対象ファイルをダウンロードすることができる。 By performing steps S101 to S108 above, the target file is stored in the distributed file system, allowing the target file to be managed securely. Furthermore, node 1, which is connected so that it can communicate via the LAN, can download the target file by performing steps S201 to S205 below.
<3.2.ダウンロード処理のフローチャート>
図5(b)は、第2ノードが対象ファイルをダウンロードするまでの処理フローチャートを示す。
<3.2. Download process flowchart>
FIG. 5B shows a processing flowchart up to when the second node downloads the target file.
<3.2.1.ダウンロードする対象ファイルの指定受付>
まずS201において、表示処理部108は、ユーザが所属する組織に紐づく対象ファイル情報の一覧を表示処理し、取得部104は、復元する対象ファイルの指定を受け付ける。そして、S202において取得部104は、該指定された対象ファイルに紐づく暗号化分割ファイル、及び復号情報を取得する。本実施形態において取得部104は、対象ファイル表示部EFDに表示された対象ファイルの情報の指定を受け付けることで、該指定された対象ファイルに対応する対象ファイル情報のうち、対象ファイルID、対象ファイル名、対象ファイルのハッシュ値、アップロードしたユーザID、及びアップロードした日時と、該指定された対象ファイルに対応する分割ファイル情報の全てのデータを親ノードから取得する。そして、取得部104は、該分割ファイル情報に含まれる暗号化分割ファイルのハッシュ値に基づいて、子ノードから暗号化分割ファイルを取得する。
<3.2.1. Acceptance of designation of target file to download>
First, in S201, the display processing unit 108 displays a list of target file information associated with the organization to which the user belongs, and the acquisition unit 104 accepts a designation of a target file to be restored. Then, in S202, the acquisition unit 104 acquires encrypted split files and decryption information associated with the designated target file. In this embodiment, the acquisition unit 104 accepts a designation of information about the target file displayed in the target file display unit EFD, and acquires from the parent node all data of the target file information corresponding to the designated target file, including the target file ID, target file name, hash value of the target file, uploader ID, and upload date and time, as well as split file information corresponding to the designated target file. Then, the acquisition unit 104 acquires the encrypted split files from the child nodes based on the hash values of the encrypted split files included in the split file information.
<3.2.2.暗号化分割ファイルの復号化>
次いでS203において、復号部105は、S202において取得された復号情報に基づいて、暗号化分割ファイルを復号する。本実施形態において復号部105は、S202において取得された復号情報の複数の秘密鍵を用いて、秘密鍵から公開鍵を生成することで、暗号化分割ファイルを復号する。
<3.2.2. Decryption of Encrypted Split Files>
Next, in S203, the decryption unit 105 decrypts the encrypted split files based on the decryption information acquired in S202. In this embodiment, the decryption unit 105 decrypts the encrypted split files by generating public keys from the private keys using the multiple private keys in the decryption information acquired in S202.
<3.2.3.対象ファイルの復元・ダウンロード>
S204において、復元部106は、S203における復号の結果得られる分割ファイルを結合することで、対象ファイルを復元する。本実施形態において復元部106は、分割ファイルに付与された結合ステータスに基づいて、S201において指定された対象ファイルを復元する。そして、S205において、図示しない登録部が、S204において復元された対象ファイルのハッシュ値と、S202において取得された対象ファイル情報の対象ファイルのハッシュ値が一致した場合に、復元された対象ファイルを第2ノードのデータベース2に登録する。
<3.2.3. Restoring and downloading target files>
In S204, the restoration unit 106 restores the target file by combining the split files obtained as a result of the decryption in S203. In this embodiment, the restoration unit 106 restores the target file specified in S201 based on the combination status assigned to the split files. Then, in S205, a registration unit (not shown) registers the restored target file in database 2 of the second node if the hash value of the target file restored in S204 matches the hash value of the target file in the target file information acquired in S202.
以上のように、実施形態1のファイル管理システムによれば、同一のLAN内に配置されたノード間で、分割し且つ暗号化した対象ファイルを分散管理することで、セキュアに情報の共有をすることができる。 As described above, the file management system of embodiment 1 enables secure information sharing by distributing and managing divided and encrypted target files among nodes located within the same LAN.
(実施形態2)
次いで、実施形態2では、複数のLANがオープンネットワークを介して接続されたWAN(Wide Area Network)に配置された複数のノード間で、P2P通信により情報を分散管理する場合について説明する。
(Embodiment 2)
Next, in a second embodiment, a case will be described in which information is managed in a distributed manner by P2P communication among a plurality of nodes arranged in a WAN (Wide Area Network) in which a plurality of LANs are connected via an open network.
実施形態1では、同一のLANを介して通信を行うことで、対象ファイルをアップロード及びダウンロードを行った。一方、本実施形態では、異なるLAN内に配置されたノード1同士で、ファイルのアップロード及びダウンロードする場合には、オープンネットワーク又はVPNを介して通信を行う。なお、以下の説明では、本実施形態に係るシステムが、各機能構成を機能させ、実施形態1と共通する部分については省略する。 In the first embodiment, target files were uploaded and downloaded by communicating via the same LAN. In contrast, in this embodiment, when uploading and downloading files between nodes 1 located on different LANs, communication is performed via an open network or VPN. In the following explanation, the system according to this embodiment operates each functional configuration, and parts common to the first embodiment will be omitted.
<4.実施形態2のシステム構成>
図6は、本実施形態におけるファイル管理システムの構成を示すブロック図である。図6に示すように、ファイル管理システムは、P2P通信を行う複数のノード1が配置された複数のLANによって構成され、各LANがオープンネットワークを介して通信可能に構成される。
4. System Configuration of Second Embodiment
Fig. 6 is a block diagram showing the configuration of a file management system according to this embodiment. As shown in Fig. 6, the file management system is configured with a plurality of LANs on which a plurality of nodes 1 that perform P2P communication are arranged, and each LAN is configured to be able to communicate via an open network.
本実施形態においては、第1のLANに配置されたノード1は、第1のLANに配置されたノード1(内部ノード)とLANを介して、外部の分散ファイルシステムのノード(外部ノード)とオープンネットワークを介して通信可能に構成される。また、第1のLANに配置されたノード1は、外部の分散ファイルシステムのうち、他のLAN(第2のLAN)に配置されたノード1(プライベート外部ノード)とはVPN接続を介して、パブリックネットワークに配置されたノード1(パブリック外部ノード)とはオープンネットワークを介して通信可能に構成される。なお本実施形態においては、VPN装置を介してVPN接続を行い、LAN同士の通信を行うが、VPN接続を行わずオープンネットワークを介して行ってもよい。 In this embodiment, a node 1 located on a first LAN is configured to be able to communicate with a node 1 (internal node) located on the first LAN via the LAN, and with a node (external node) of an external distributed file system via an open network. Furthermore, a node 1 located on the first LAN is configured to be able to communicate with a node 1 (private external node) located on another LAN (second LAN) of the external distributed file system via a VPN connection, and with a node 1 (public external node) located on a public network via an open network. Note that in this embodiment, a VPN connection is established via a VPN device to enable communication between LANs, but communication may also be performed via an open network without a VPN connection.
また、本実施形態におけるWANは、VPN接続によって実現するが、WANの種類に制限はなく、デジタル専用線、広域イーサネット等であってもよく、更に、WANの規模にも制限はない。 In addition, the WAN in this embodiment is realized by a VPN connection, but there are no restrictions on the type of WAN; it can be a digital leased line, wide area Ethernet, etc., and there are no restrictions on the size of the WAN.
<4.1.ノード1の機能構成>
実施形態2におけるノード1は、分割部101、暗号化部102、送信部103、取得部104、復号部105、復元部106、認証部107、表示処理部108、及びデータベース2に加えて、算出部109及び接続部110を更に備える。
<4.1. Functional configuration of node 1>
In addition to the division unit 101, encryption unit 102, transmission unit 103, acquisition unit 104, decryption unit 105, restoration unit 106, authentication unit 107, display processing unit 108, and database 2, node 1 in embodiment 2 further includes a calculation unit 109 and a connection unit 110.
<4.2.実施形態2における送信部103>
送信部103は、VPN又はオープンネットワークを介して、第1のLAN内の第1ノードから、プライベート外部ノードに対して、少なくとも暗号化分割ファイルを送信する。本実施形態において送信部103は、第1のLAN内の第1ノード、及び外部ノードがVPN接続されている場合には、プライベート内部ノードに暗号化分割ファイルを送信し、第1ノード及び外部ノードがVPN接続されていない場合には、パブリック外部ノードに暗号化分割ファイル、及び復号情報を送信する。
<4.2. Transmitting unit 103 in embodiment 2>
The transmitter 103 transmits at least the encrypted split files from the first node in the first LAN to the private external node via the VPN or the open network. In this embodiment, if the first node in the first LAN and the external node are connected via VPN, the transmitter 103 transmits the encrypted split files to the private internal node, and if the first node and the external node are not connected via VPN, the transmitter 103 transmits the encrypted split files and decryption information to the public external node.
<4.3.算出部109>
算出部109は、異なるLANに配置されたノード1同士がVPN接続を行うかどうかの指標となるファイル重要度を算出する。算出部109は、対象ファイルへ行った操作に関するファイル操作情報に基づいて、ファイル重要度を算出する。
4.3. Calculation unit 109
The calculation unit 109 calculates the file importance, which is an index for determining whether or not nodes 1 located on different LANs will establish a VPN connection. The calculation unit 109 calculates the file importance based on file operation information related to operations performed on a target file.
<4.4.接続部110>
接続部110は、算出部109が算出した重要度に基づいて、外部ノードとVPN接続を行うか否かを判定し、VPN接続を行う。接続部110は、ファイル重要度が所定の閾値以上である場合に、VPN接続を行う。
<4.4. Connection portion 110>
The connection unit 110 determines whether to establish a VPN connection with an external node and establishes the VPN connection based on the importance calculated by the calculation unit 109. The connection unit 110 establishes the VPN connection when the file importance is equal to or greater than a predetermined threshold.
<5.フローチャート>
以下、図7、8を参照して、本実施形態のファイル管理方法について説明する。
<5. Flowchart>
The file management method of this embodiment will be described below with reference to FIGS.
<5.1.アップロード処理のフローチャート>
図7は、第1のLAN内に配置される第1ノードがプライベート外部ノードに対象ファイルをアップロードするまでの処理を示すフローチャートである。なお、S301~S307までの処理は、実施形態1における暗号化分割ファイルをアップロードするまでの処理(S101~107)と同様の為、省略する。
<5.1. Upload process flowchart>
7 is a flowchart showing the process of uploading a target file from a first node located in a first LAN to a private external node. Note that the processes from S301 to S307 are the same as the processes (S101 to S107) for uploading encrypted split files in the first embodiment, and therefore will not be described here.
<5.1.1.ファイル重要度の算出>
S308において算出部109は、ファイル操作情報に基づいてファイル重要度を算出する。本実施形態において算出部109は、ファイルへ行った操作に関してファイルが重要であるか否かを示す操作指標毎に、所定の重みが設定されており、算出部109は、操作指標に対応する操作がされているか否かに応じて該所定の重みを足し上げることで、ファイル重要度を算出する。
5.1.1. Calculation of file importance
In S308, the calculation unit 109 calculates the file importance based on the file operation information. In this embodiment, the calculation unit 109 sets a predetermined weight for each operation indicator that indicates whether a file is important in terms of operations performed on the file, and calculates the file importance by adding up the predetermined weights depending on whether an operation corresponding to the operation indicator has been performed.
具体的には、例えば、操作指標として「アップロード時にメッセージが入力されているか否か」、「ファイル名やファイルにつけられたタグとメッセージの関連度」、「ファイルに紐づけて登録したタグの内容」、及び「外部システムからファイルを取得したか否か」等を含む。そして、算出部109は、これらの操作指標毎に所定の重みが設定されており、該当する操作がされている場合には「1」を、該当する操作がされていない場合には「0」を重みに乗算して足し上げることで、合計をファイル重要度として算出する。 Specifically, for example, operation indicators include "whether a message was entered when uploading," "the degree of association between the message and the file name or tags attached to the file," "the contents of tags registered in association with the file," and "whether the file was obtained from an external system." The calculation unit 109 then sets a predetermined weight for each of these operation indicators, multiplies the weight by "1" if the corresponding operation has been performed, or by "0" if the corresponding operation has not been performed, and adds up the weights to calculate the total as the file importance.
より好ましい形態では、算出部109は、重みを足し上げて得られた数値を操作指標の数で除算し、除算の結果得られる商と所定の補正項を足し上げた数値をファイル重要度として算出する。また、ファイル重要度が同じ数値になった場合、算出部109は、相手先に対して送ったパケットのレイテンシーを取得し、予めユーザが設定したレイテンシー許容度を取得したレイテンシーで除算することで得られる数値を通信優先度として算出する。 In a more preferred embodiment, the calculation unit 109 divides the numerical value obtained by adding up the weights by the number of operation indicators, and calculates the numerical value obtained by adding the quotient obtained as a result of the division and a predetermined correction term as the file importance. Also, if the file importances are the same numerical value, the calculation unit 109 obtains the latency of the packets sent to the other party, and calculates the numerical value obtained by dividing the latency tolerance set in advance by the user by the obtained latency as the communication priority.
<5.1.2.VPNの接続処理>
S309において接続部110は、S308において算出されたファイル重要度に基づいて、VPN接続をするか否かを判定する。そして、ファイル重要度が予めユーザが設定した閾値を超える場合(S309でYES)に、接続部110は、第1のLANの第1ノードと、外部ノードとのVPNを接続するものと判定する。そして、S310において送信部103は、VPNを介してプライベート外部ノードに暗号化分割ファイル、及び復号情報を送信する。なお、ファイル重要度が同じ通信が同時に行われた場合には、接続部110は、算出部109によって算出される通信優先度に基づいて、VPNの接続を行うか否かを判定する。
<5.1.2. VPN connection processing>
In S309, the connection unit 110 determines whether to establish a VPN connection based on the file importance calculated in S308. If the file importance exceeds a threshold previously set by the user (YES in S309), the connection unit 110 determines to establish a VPN connection between the first node of the first LAN and the external node. In S310, the transmission unit 103 transmits the encrypted split files and decryption information to the private external node via the VPN. Note that if communications with the same file importance are performed simultaneously, the connection unit 110 determines whether to establish a VPN connection based on the communication priority calculated by the calculation unit 109.
一方、ファイル重要度が予めユーザが設定した閾値を超えない場合(S309でNO)には、接続部110は、第1のLANの第1ノードと、外部ノードとのVPNを接続しないものと判定する。そして、S311において送信部103は、オープンネットワークを介してパブリック外部ノードに暗号化分割ファイル、及び復号情報を送信する。 On the other hand, if the file importance does not exceed the threshold previously set by the user (NO in S309), the connection unit 110 determines not to connect the VPN between the first node of the first LAN and the external node. Then, in S311, the transmission unit 103 transmits the encrypted split file and decryption information to the public external node via the open network.
そして、S312において、暗号化分割ファイル、及び復号情報が送信されたネットワーク内に配置されたノード1のファイル共有画面W1において、該暗号化分割ファイルに関連付けられる対象ファイルの情報が共有グループ表示部SGD毎に表示される。 Then, in S312, information about the target files associated with the encrypted split files is displayed for each shared group display area SGD on the file sharing screen W1 of node 1 located within the network to which the encrypted split files and decryption information were transmitted.
以上、S301~S312によって、同一のWAN内又はオープンネットワーク内の分散ファイルシステムに対象ファイルを格納することで、対象ファイルを分散管理することができる。また、WANを介して通信可能に接続されるノード1は、以下のS401~S405を実行することで、該対象ファイルをダウンロードすることができる。 By performing steps S301 through S312, the target file can be stored in a distributed file system within the same WAN or open network, enabling distributed management of the target file. Furthermore, node 1, which is communicatively connected via the WAN, can download the target file by executing steps S401 through S405 below.
<5.2.ダウンロード処理のフローチャート>
図7は、第1のLAN内に配置される第2ノードがプライベート外部ノードに格納された対象ファイルをダウンロードするまでの処理を示すフローチャートである。
<5.2. Download process flowchart>
FIG. 7 is a flowchart showing the process up to when the second node located in the first LAN downloads the target file stored in the private external node.
<5.2.1.ダウンロードする対象ファイルの指定受付>
まずS401において、取得部104は、復元する対象ファイルの指定を受け付ける。
<5.2.1. Acceptance of designation of target file to download>
First, in S401, the acquisition unit 104 receives a designation of a target file to be restored.
<5.2.2.ファイル重要度の算出>
そしてS402において、算出部109は、ファイル操作情報に基づいてファイル重要度を算出する。なお、ファイル重要度の算出方法は、ダウンロード処理の場合、操作指標の具体例としては「ファイルを開いた回数」及び「ファイルがアップロードされてからの期間」等を含み、それぞれ該当する操作がされている場合には「ファイルを開いた回数」、「ファイルをアップロードしてからの日数」を重みに乗算して足し上げることで、合計をファイル重要度として算出する。本実施形態においては、ファイルを開いた回数は、親ノードに格納されるが、親ノードが利用できない場合には、子ノードに一時的に格納される。
5.2.2. Calculation of file importance
In step S402, the calculation unit 109 calculates the file importance based on the file operation information. In the case of a download process, specific examples of operation indicators include the "number of times the file has been opened" and the "period since the file was uploaded." When a corresponding operation is performed, the "number of times the file has been opened" and the "number of days since the file was uploaded" are multiplied by weights and added up to calculate the total as the file importance. In this embodiment, the number of times the file has been opened is stored in the parent node, but if the parent node is unavailable, it is temporarily stored in a child node.
<5.2.3.VPNの接続処理>
S403において接続部110は、S402において算出されたファイル重要度に基づいて、VPN接続をするか否かを判定する。そして、ファイル重要度が予めユーザが設定した閾値を超える場合(S403でYES)に、接続部110は、第1のLANの第1ノードと、外部ノードとのVPNを接続するものと判定する。そして、S404において取得部104は、VPNを介してプライベート内部ノードに格納された、S401において指定された対象ファイルに関連づけられる暗号化分割ファイル、及び復号情報を取得する。
<5.2.3. VPN connection processing>
In S403, the connection unit 110 determines whether to establish a VPN connection based on the file importance calculated in S402. If the file importance exceeds a threshold value preset by the user (YES in S403), the connection unit 110 determines to establish a VPN connection between the first node of the first LAN and the external node. In S404, the acquisition unit 104 acquires the encrypted split files and decryption information associated with the target file specified in S401, which are stored in the private internal node via the VPN.
一方、ファイル重要度が予めユーザが設定した閾値を超えない場合(S403でNO)には、接続部110は、第1のLANの第1ノードと、外部ノードとのVPNを接続しないものと判定する。そして、S405において取得部104は、オープンネットワークを介してパブリック外部ノードに格納された、S401において指定された対象ファイルに関連づけられる暗号化分割ファイル、及び復号情報を取得する。 On the other hand, if the file importance does not exceed the threshold previously set by the user (NO in S403), the connection unit 110 determines not to connect the VPN between the first node of the first LAN and the external node. Then, in S405, the acquisition unit 104 acquires the encrypted split files and decryption information associated with the target file specified in S401, which are stored in the public external node via the open network.
<5.2.4.対象ファイルの復元とダウンロード>
そして、S406~S408において、対象ファイルをダウンロードするまでの処理を実行するが、実施形態1における対象ファイルをダウンロードするまでの処理(S203~S205)と同様の為、省略する。
<5.2.4. Restoring and downloading target files>
Then, in S406 to S408, the process up to downloading the target file is executed, but since this is the same as the process up to downloading the target file in the first embodiment (S203 to S205), a description thereof will be omitted.
なお、ファイル操作情報の更新がされることによって(「開いた回数」等が更新されることによって)、アップロード時とダウンロード時でファイル重要度が変わっている場合がある。以下、アップロード時にはファイル重要度が閾値よりも小さくパブリック外部ノードに格納されたファイルであって、ファイル操作情報が更新されファイル重要度が閾値を超えたファイルをダウンロードする場合について説明する。 Note that file importance may change between uploading and downloading due to updates to file operation information (such as updates to "number of times opened"). Below, we will explain the case where a file stored in a public external node had a file importance below the threshold when uploaded, but the file operation information has been updated so that the file importance exceeds the threshold, causing the file to be downloaded.
まず、接続部110は、ファイル重要度が閾値を超えているものと判定し、VPN接続を行う。そして、取得部104は、VPN接続を介してS401において指定された対象ファイルに関連づけられる暗号化分割ファイル、及び復号情報を取得する問い合わせをプライベート外部ノードの親ノードに送信する。一方、該ファイルはパブリック外部ノードに格納されている為、取得部104は、プライベート外部ノードの親ノードからパブリック外部ノードの親ノードに問い合わせを行う要求を受け付けて、オープンネットワークを介してパブリック外部ノードの親ノードに該暗号化分割ファイル、及び復号情報を取得する問い合わせをする。そして、取得部104は、該暗号化分割ファイル、及び復号情報を取得する。なお、対象ファイルがアップロードされる際に、どの外部ノードに格納されているかを示すフラグが対象ファイル毎に対応付いており、取得部104は、該フラグに基づいて、暗号化分割ファイル及び復号情報を取得してもよい。 First, the connection unit 110 determines that the file importance exceeds the threshold and establishes a VPN connection. The acquisition unit 104 then transmits a query to the parent node of the private external node via the VPN connection to acquire the encrypted split files and decryption information associated with the target file specified in S401. Meanwhile, since the file is stored in the public external node, the acquisition unit 104 accepts a request from the parent node of the private external node to inquire of the parent node of the public external node, and sends a query to the parent node of the public external node via the open network to acquire the encrypted split files and decryption information. The acquisition unit 104 then acquires the encrypted split files and decryption information. Note that when a target file is uploaded, a flag indicating which external node it is stored in is associated with each target file, and the acquisition unit 104 may acquire the encrypted split files and decryption information based on the flag.
以上のように、実施形態2のファイル管理システムによれば、同一のWAN内又はオープンネットワークの分散ファイルシステムに、分割し且つ暗号化した対象ファイルを分散管理することで、セキュアに情報の共有をすることができる。また、ファイルの重要度に基づいて、VPN接続を行うか否かを判定することで、常にVPN接続を張る必要がなくなり、電力消費を削減することができる。 As described above, the file management system of embodiment 2 enables secure information sharing by distributing and managing divided and encrypted target files in a distributed file system within the same WAN or open network. Furthermore, by determining whether or not to establish a VPN connection based on the importance of the file, there is no need to maintain a VPN connection at all times, thereby reducing power consumption.
なお上記では、第1のLANに配置されたノード1がプライベート外部ノードから対象ファイルをダウンロードする場合について説明したが、第1のLANに配置されたノード1がパブリック外部ノードから対象ファイルをダウンロードする場合には、S403~S404がなく、直接オープンネットワークを介して対象ファイルに関連付けられる暗号化分割ファイル、及び復号情報が取得される。 Note that the above describes the case where node 1 located on the first LAN downloads the target file from a private external node. However, if node 1 located on the first LAN downloads the target file from a public external node, steps S403 and S404 are not performed, and the encrypted split files associated with the target file and decryption information are obtained directly via the open network.
また、本実施形態においては、ノード1に格納された対象ファイルを指定して、分散ファイルシステムにアップロードすることで、対象ファイルの分散管理を行うが、他のノード1(例えば、データセンター)に格納された対象ファイルを指定することで、対象ファイルを分散管理してもよい。この場合、上記アップロード処理(S101~108又はS308~S312)が実行され、データセンターに格納される対象ファイルに基づいて生成される暗号化分割ファイルの全部が分散ファイルシステムに格納される。 In addition, in this embodiment, the target file stored in node 1 is specified and uploaded to the distributed file system for distributed management of the target file, but the target file may also be specified and distributed management of the target file stored in another node 1 (for example, a data center). In this case, the above upload process (S101-108 or S308-S312) is executed, and all of the encrypted split files generated based on the target file stored in the data center are stored in the distributed file system.
なお、データセンターに格納される対象ファイルに基づいて生成される暗号化分割ファイルは一部のみが分散ファイルシステムに格納されてもよい。この場合、親ノードに格納された分割ファイル情報に基づいて、分散ファイルシステムに格納された暗号化分割ファイルを取得し、該暗号化分割ファイルと親ノードに格納された対象ファイル情報に基づいて、暗号化分割ファイルの残りのファイルをデータセンターから取得することで、対象ファイルを復元する。 Note that only a portion of the encrypted split files generated based on the target file stored in the data center may be stored in the distributed file system. In this case, the target file is restored by retrieving the encrypted split files stored in the distributed file system based on the split file information stored in the parent node, and then retrieving the remaining encrypted split files from the data center based on the encrypted split files and the target file information stored in the parent node.
0 :ファイル管理システム
1 :ノード
2 :データベース
11 :処理部
12 :記憶部
13 :通信部
14 :入力部
15 :出力部
101 :分割部
102 :暗号化部
103 :送信部
104 :取得部
105 :復号部
106 :復元部
107 :認証部
108 :表示処理部
109 :算出部
110 :接続部
W1 :ファイル共有画面
ORD :組織表示部
SGD :共有グループ表示部
EFD :対象ファイル表示部
0: File management system 1: Node 2: Database 11: Processing unit 12: Storage unit 13: Communication unit 14: Input unit 15: Output unit 101: Dividing unit 102: Encryption unit 103: Transmission unit 104: Acquisition unit
105: Decryption unit
106: Restoration unit 107: Authentication unit 108: Display processing unit 109: Calculation unit 110: Connection unit W1: File sharing screen ORD: Organization display unit SGD: Shared group display unit EFD: Target file display unit
Claims (9)
P2P通信ネットワークに前記対象ファイルをアップロードするアップロードノードが、
前記対象ファイルを分割し、該対象ファイルに関連付けられる複数の分割ファイルを作成する処理と、
前記分割ファイルを暗号化処理した暗号化分割ファイル、及び前記暗号化分割ファイルを復号する為の復号情報を生成する処理と、
生成した前記暗号化分割ファイルをP2P通信ネットワーク内の複数のノードに格納する処理と、
該暗号化分割ファイルを格納した前記ノードに該暗号化分割ファイルの識別情報を生成させ、生成された該暗号化分割ファイルの識別情報を該ノードから受け取り、対象ファイルの復元に必要な数の暗号化分割ファイルの識別情報を受け取って、前記対象ファイルの識別情報、該受信した複数の暗号化分割ファイルの識別情報、及び該暗号化分割ファイルと共に生成した前記復号情報を対応付けてP2P通信ネットワーク内の1のノードに格納する処理と、を実行し、
前記対象ファイルをダウンロードするダウンロードノードが、
前記対象ファイルの指定を受け付けて、前記P2P通信ネットワーク内の1のノードから、前記指定された対象ファイルに紐づく複数の前記暗号化分割ファイルの識別情報と、前記復号情報を取得する処理と、
該複数の暗号化分割ファイルの識別情報に基づいて、前記複数のノードから前記暗号化分割ファイルを取得する処理と、
該復号情報及び取得した暗号化分割ファイルに基づいて、該対象ファイルを復元する為の前記分割ファイルを復号する処理と、を実行するファイル管理方法。 A file management method for managing a target file in a distributed manner among a plurality of nodes through P2P communication, comprising:
an upload node that uploads the target file to a P2P communication network,
A process of dividing the target file and creating a plurality of divided files associated with the target file;
a process of generating encrypted split files obtained by encrypting the split files and decryption information for decrypting the encrypted split files;
a process of storing the generated encrypted split files in a plurality of nodes within a P2P communication network;
causing the node that stores the encrypted split files to generate identification information for the encrypted split files, receiving the identification information for the generated encrypted split files from the node, receiving identification information for as many encrypted split files as necessary to restore the target file, and storing the identification information for the target file, the identification information for the received encrypted split files, and the decryption information generated together with the encrypted split files in association with each other in one node within the P2P communication network;
a download node that downloads the target file,
a process of receiving a designation of the target file and acquiring, from one node in the P2P communication network, identification information of the encrypted split files linked to the designated target file and the decryption information;
acquiring the encrypted split files from the plurality of nodes based on identification information of the plurality of encrypted split files;
and a process of decrypting the split files to restore the target file based on the decryption information and the obtained encrypted split files.
前記ダウンロードノードは、
前記暗号化分割ファイル及び前記復号情報に基づいて得られた前記分割ファイル、並びに前記結合ステータスに基づいて該指定された対象ファイルを復元する処理を実行する、請求項1に記載のファイル管理方法。 the upload node generates the split files with a combined status assigned thereto;
The download node
2. The file management method according to claim 1, further comprising the step of restoring the specified target file based on the encrypted split file, the split file obtained based on the decryption information, and the combined status.
前記対象ファイルをダウンロードするダウンロードノードが、更に前記共有グループ毎に、該送信された暗号化分割ファイルに対応する対象ファイル情報を表示処理する処理を実行する、請求項1に記載のファイル管理方法。 the upload node transmits the encrypted split files linked to the sharing group to a node in the P2P communication network;
2. The file management method according to claim 1, wherein the download node that downloads the target files further executes a process of displaying target file information corresponding to the transmitted encrypted split files for each of the sharing groups.
第1のLAN内の前記アップロードノード、及び第2のLAN内の前記プライベート外部ノードがVPN接続されている場合には、内部ネットワークに配置されたプライベート外部ノードに前記暗号化分割ファイルを送信し、
前記アップロードノード及び前記プライベート外部ノードがVPN接続されていない場合には、外部ネットワークに配置された他のノードに前記暗号化分割ファイルを送信する、請求項1に記載のファイル管理方法。 the P2P communication network includes the upload node in a first LAN and a private external node in a second LAN, the first LAN and the second LAN forming a same WAN;
When the upload node in the first LAN and the private external node in the second LAN are connected via VPN, the encrypted split files are transmitted to the private external node located in an internal network;
2. The file management method according to claim 1, wherein when the upload node and the private external node are not connected via a VPN, the encrypted split files are transmitted to another node located on an external network.
前記ファイル重要度に基づいて、前記プライベート外部ノードとVPN接続を行うか否かを判定する処理と、を実行する請求項4に記載のファイル管理方法。 The upload node further calculates file importance based on file operation information relating to operations performed on the target file;
The file management method according to claim 4 , further comprising: determining whether or not to establish a VPN connection with the private external node based on the file importance.
コンピュータを、P2P通信ネットワークに前記対象ファイルをアップロードするアップロードノードとして機能させ、
前記アップロードノードは、
前記対象ファイルを分割し、該対象ファイルに関連付けられる複数の分割ファイルを作成する処理と、
前記分割ファイルを暗号化処理した暗号化分割ファイル、及び前記暗号化分割ファイルを復号する為の復号情報を生成する処理と、
生成した前記暗号化分割ファイルをP2P通信ネットワーク内の複数のノードに格納する処理と、
該暗号化分割ファイルを格納した前記ノードに該暗号化分割ファイルの識別情報を生成させ、生成された該暗号化分割ファイルの識別情報を該ノードから受け取り、対象ファイルの復元に必要な数の暗号化分割ファイルの識別情報を受け取って、前記対象ファイルの識別情報、該受信した複数の暗号化分割ファイルの識別情報、及び該暗号化分割ファイルと共に生成した前記復号情報を対応付けてP2P通信ネットワーク内の1のノードに格納する処理と、を実行し、
前記対象ファイルをダウンロードするダウンロードノードが、
前記対象ファイルの指定を受け付けて、前記P2P通信ネットワーク内の1のノードから、前記指定された対象ファイルに紐づく複数の前記暗号化分割ファイルの識別情報と、前記復号情報を取得する処理と、
該複数の暗号化分割ファイルの識別情報に基づいて、前記複数のノードから前記暗号化分割ファイルを取得する処理と、
該復号情報及び取得した暗号化分割ファイルに基づいて、該対象ファイルを復元する為の前記分割ファイルを復号する処理と、を実行するファイル管理プログラム。 A file management program for managing a target file among a plurality of nodes through P2P communication,
causing a computer to function as an upload node that uploads the target file to a P2P communication network;
The upload node:
A process of dividing the target file and creating a plurality of divided files associated with the target file;
a process of generating encrypted split files obtained by encrypting the split files and decryption information for decrypting the encrypted split files;
a process of storing the generated encrypted split files in a plurality of nodes within a P2P communication network;
causing the node that stores the encrypted split files to generate identification information for the encrypted split files, receiving the identification information for the generated encrypted split files from the node, receiving identification information for as many encrypted split files as necessary to restore the target file, and storing the identification information for the target file, the identification information for the received encrypted split files, and the decryption information generated together with the encrypted split files in association with each other in one node within the P2P communication network;
a download node that downloads the target file,
A process of accepting the designation of the target file and acquiring, from one node in the P2P communication network, identification information of the encrypted split files linked to the designated target file and the decryption information;
acquiring the encrypted split files from the plurality of nodes based on identification information of the plurality of encrypted split files;
and a file management program that executes a process of decrypting the split files to restore the target file based on the decryption information and the obtained encrypted split files.
前記ファイル管理システムは、P2P通信ネットワークに前記対象ファイルをアップロードするアップロードノードを備え、
前記アップロードノードは、
前記対象ファイルを分割し、該対象ファイルに関連付けられる複数の分割ファイルを作成する分割部と、
前記分割ファイルを暗号化処理した暗号化分割ファイル、及び前記暗号化分割ファイルを復号する為の復号情報を生成する暗号化部と、
生成した前記暗号化分割ファイルをP2P通信ネットワーク内の複数のノードに格納する送信部と、を有し、
前記送信部は、該暗号化分割ファイルを格納した前記ノードに該暗号化分割ファイルの識別情報を生成させ、生成された該暗号化分割ファイルの識別情報を該ノードから受け取り、対象ファイルの復元に必要な数の暗号化分割ファイルの識別情報を受け取って、前記対象ファイルの識別情報、該受信した複数の暗号化分割ファイルの識別情報、及び該暗号化分割ファイルと共に生成した前記復号情報を対応付けてP2P通信ネットワーク内の1のノードに格納し、
前記対象ファイルをダウンロードするダウンロードノードが、
前記対象ファイルの指定を受け付けて、前記P2P通信ネットワーク内の1のノードから、前記指定された対象ファイルに紐づく複数の前記暗号化分割ファイルの識別情報と、前記復号情報を取得し、
該複数の暗号化分割ファイルの識別情報に基づいて、前記複数のノードから前記暗号化分割ファイルを取得する処理と、
該復号情報及び取得した暗号化分割ファイルに基づいて、該対象ファイルを復元する為の前記分割ファイルを復号するファイル管理システム。
A file management system that manages target files in a distributed manner among a plurality of nodes through P2P communication,
the file management system includes an upload node that uploads the target file to a P2P communication network;
The upload node:
a division unit that divides the target file and creates a plurality of split files associated with the target file;
an encryption unit that generates encrypted split files obtained by encrypting the split files and decryption information for decrypting the encrypted split files;
a transmission unit that stores the generated encrypted split files in a plurality of nodes within a P2P communication network,
the transmitting unit causes the node that stores the encrypted split files to generate identification information for the encrypted split files, receives from the node the identification information for the generated encrypted split files, receives identification information for as many encrypted split files as necessary to restore the target file, and associates the identification information for the target file, the identification information for the received encrypted split files, and the decryption information generated together with the encrypted split files, and stores them in one node within the P2P communication network;
a download node that downloads the target file,
receiving a designation of the target file, and acquiring, from one node in the P2P communication network, identification information of the encrypted split files linked to the designated target file and the decryption information;
acquiring the encrypted split files from the plurality of nodes based on identification information of the plurality of encrypted split files;
The file management system decrypts the split files to restore the target file based on the decryption information and the obtained encrypted split files.
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2023114769A JP7745896B2 (en) | 2023-07-12 | 2023-07-12 | File management method, file management program, and file management system |
| JP2024099123A JP7816802B2 (en) | 2023-07-12 | 2024-06-19 | File management method, file management program, and file management system |
| PCT/JP2024/025166 WO2025013925A1 (en) | 2023-07-12 | 2024-07-11 | File management method, file management program, and file management system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2023114769A JP7745896B2 (en) | 2023-07-12 | 2023-07-12 | File management method, file management program, and file management system |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2024099123A Division JP7816802B2 (en) | 2023-07-12 | 2024-06-19 | File management method, file management program, and file management system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2025012155A JP2025012155A (en) | 2025-01-24 |
| JP7745896B2 true JP7745896B2 (en) | 2025-09-30 |
Family
ID=94215915
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2023114769A Active JP7745896B2 (en) | 2023-07-12 | 2023-07-12 | File management method, file management program, and file management system |
| JP2024099123A Active JP7816802B2 (en) | 2023-07-12 | 2024-06-19 | File management method, file management program, and file management system |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2024099123A Active JP7816802B2 (en) | 2023-07-12 | 2024-06-19 | File management method, file management program, and file management system |
Country Status (2)
| Country | Link |
|---|---|
| JP (2) | JP7745896B2 (en) |
| WO (1) | WO2025013925A1 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007102672A (en) | 2005-10-07 | 2007-04-19 | Toppan Nsw:Kk | Data backup device, data backup method and program thereof |
| JP2022528578A (en) | 2019-05-22 | 2022-06-14 | ミョータ インコーポレイテッド | Methods and systems for distributed data storage with enhanced security, resilience, and control |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4043800B2 (en) * | 2002-02-19 | 2008-02-06 | 大日本印刷株式会社 | Video archiving device and multimedia archiving device |
| JP4402411B2 (en) * | 2003-09-22 | 2010-01-20 | 大日本印刷株式会社 | Method and apparatus for providing digital content |
| JP4538585B2 (en) * | 2008-08-15 | 2010-09-08 | 学校法人東京電機大学 | Network system |
| US10289310B2 (en) * | 2017-06-27 | 2019-05-14 | Western Digital Technologies, Inc. | Hybrid data storage system with private storage cloud and public storage cloud |
| US10733061B2 (en) * | 2017-06-27 | 2020-08-04 | Western Digital Technologies, Inc. | Hybrid data storage system with private storage cloud and public storage cloud |
| JP7126303B2 (en) * | 2020-08-17 | 2022-08-26 | 株式会社ポリテック | Restoration terminal, communication system, restoration method, communication method, and program |
| JP7684072B2 (en) * | 2021-03-31 | 2025-05-27 | 株式会社Ihiエアロスペース | Information processing method, information processing system, information processing device, and information processing program |
-
2023
- 2023-07-12 JP JP2023114769A patent/JP7745896B2/en active Active
-
2024
- 2024-06-19 JP JP2024099123A patent/JP7816802B2/en active Active
- 2024-07-11 WO PCT/JP2024/025166 patent/WO2025013925A1/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007102672A (en) | 2005-10-07 | 2007-04-19 | Toppan Nsw:Kk | Data backup device, data backup method and program thereof |
| JP2022528578A (en) | 2019-05-22 | 2022-06-14 | ミョータ インコーポレイテッド | Methods and systems for distributed data storage with enhanced security, resilience, and control |
Also Published As
| Publication number | Publication date |
|---|---|
| JP7816802B2 (en) | 2026-02-18 |
| WO2025013925A1 (en) | 2025-01-16 |
| JP2025012155A (en) | 2025-01-24 |
| JP2025013199A (en) | 2025-01-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4996757B1 (en) | Secret sharing system, apparatus and program | |
| JP3657396B2 (en) | Key management system, key management apparatus, information encryption apparatus, information decryption apparatus, and storage medium storing program | |
| JP4958246B2 (en) | Method, apparatus and system for fast searchable encryption | |
| CN108810004A (en) | More authorization center access control methods, cloud storage system can be revoked based on agency | |
| CN113094334B (en) | Digital service method, device, equipment and storage medium based on distributed storage | |
| US12058270B2 (en) | Data protection on distributed data storage (DDS) protection networks | |
| JP2001237872A (en) | Mail system | |
| CN116166749A (en) | Data sharing method and device, electronic equipment and storage medium | |
| Kothari et al. | A distributed peer-to-peer storage network | |
| JP2010224655A (en) | Database processing method, database processing program, and encryption apparatus | |
| JP2009272927A (en) | Communication apparatus, server, and program | |
| JP7745896B2 (en) | File management method, file management program, and file management system | |
| JP4997769B2 (en) | Cryptographic communication system, key sharing method, and key providing apparatus | |
| JP2009038416A (en) | Multicast communication system and group key management server | |
| CN110611674B (en) | Protocol interaction method, system and storage medium between different computer systems | |
| CN115510490A (en) | A non-key sharing encrypted data query method, device, system and equipment | |
| JP4648412B2 (en) | File transfer system, application server device, file transfer method, and file transfer program | |
| TWI856887B (en) | A distribution backup system, method non-volatile computer-readable storage medium thereof based on object storage gateway | |
| CN107197057A (en) | DNS account book processing method and processing devices | |
| Raul et al. | Blockchain technology for decentralized data storage on P2P network | |
| JP2021026564A (en) | File delivery system, file delivery program, and file reception program | |
| JP4047318B2 (en) | Content distribution usage control method | |
| CN114785592B (en) | Information processing methods and devices | |
| Abdel-Rahman et al. | POMS: Proxy Offloading for Multicloud Storage with Keyword Search | |
| Shakira et al. | Additive congruential kupyna koorde cryptographic hashfor secured data storage in cloud |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230712 |
|
| A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20230712 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231010 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20231208 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240208 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240423 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240617 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20240820 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20241118 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20241129 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250711 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20250909 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7745896 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |