File management method, file management program, and file management system
The method addresses the challenge of securely managing encrypted files in distributed systems by dividing and encrypting files, transmitting them across nodes, and using authentication and VPN connections to ensure secure distribution and restoration, enhancing security and efficiency.
Patent Information
- Application Number
- JP2024099123
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-06-19
- Publication Date
- 2026-02-18
- Estimated Expiration
- 2043-07-12
AI Technical Summary
Existing distributed file systems face challenges in securely managing encrypted files due to the lack of secure management of decryption information, leading to potential information leakage and system vulnerabilities.
A file management method that involves dividing files into encrypted split files, transmitting these files and decryption information to multiple nodes, and managing them through P2P communication, with authentication and VPN-based connections to ensure secure distribution and restoration.
Enables secure and efficient management of large data volumes by ensuring secure distribution and restoration of encrypted files across nodes, reducing the need for constant VPN connections based on file importance, thereby enhancing security and reducing power consumption.
Smart Images

Figure 0007816802000001 
Figure 0007816802000002 
Figure 0007816802000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a file management method, a file management program, and a file management system. [Background technology]
[0002] Conventionally, when using a network service, a system in which a computer using the service (client) and a computer providing the service or data (server) communicate with each other via a network, known as a client-server system, has become widespread. However, such systems have security issues, such as the entire system becoming unavailable if the server stops working, and the data being concentrated on the server, which can easily lead to information leakage if the server is accessed illegally. To solve these problems, a system known as a distributed file system has been 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.
[0003] 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), and this CID 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. [Prior art documents] [Non-patent literature]
[0004] [Non-Patent Document 1] "IPFS powers the Distributed Web," [Retrieved June 29, 2023], Internet<https: / / ipfs.tech / > Summary of the Invention [Problem to be solved by the invention]
[0005] However, in the technology proposed in Non-Patent Document 1, although the divided data is encrypted and stored in a distributed manner, there is a problem in that the information for decrypting the encrypted file cannot be managed securely.
[0006] In view of the above problems, an object of the present invention is to provide a new technology that can store large amounts of data and manage files more securely. [Means for solving the problem]
[0007] In order to solve the above problems, the present invention provides a file management method for distributing and managing information among multiple nodes via P2P communication, in which a first node that uploads a target file to be managed in a distributed manner performs the following steps: a division step in which the first node divides the target file and creates multiple split files associated with the target file; 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.
[0008] 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 the files. In addition, by transmitting the composite information for decrypting the encrypted file to other nodes, the security of the composite information can be ensured, and high security can be ensured even if the number of participating nodes increases and the amount of data that can be stored increases.
[0009] In a preferred form of the present invention, a second node that downloads the target file accepts the specification 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.
[0010] With this configuration, it is possible to obtain the encrypted split files and decryption information that are managed in a distributed manner from other nodes, and then obtain the split files from the encrypted split files. This allows any node that is participating in P2P communication to obtain and decrypt the encrypted split files.
[0011] In a preferred form of the present invention, the splitting step generates the split files to which a combined status is assigned, and the acquisition step accepts specification of the target file to be restored and acquires the encrypted split files linked to the specified target file and the decryption information, and the second node further executes a restoration step in which it restores the specified target file based on the split files obtained as a result of the decryption step and the combined status.
[0012] With this configuration, it is possible to specify a target file to be restored, obtain the encrypted split files associated with the target file, decrypt the split files from the encrypted split files, and restore the specified target file. In addition, by generating split files with a combined status, it is possible to prevent the restoration of an incorrect file.
[0013] In a preferred embodiment of the present invention, in the transmission step, the encrypted split file linked to the sharing group is transmitted to the other node, and the second node that downloads the target file further executes a display processing step that displays target file information corresponding to the transmitted encrypted split file for each sharing group.
[0014] With this configuration, the encrypted split files are 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.
[0015] In a preferred embodiment of the present invention, the first node and the other node are nodes within one WAN, and in the transmitting step, if the first node within a first LAN and the other node within a second LAN are connected via VPN, the encrypted split file is transmitted to the other node located in an internal network, and if the first node and the other node are not connected via VPN, the encrypted split file is transmitted to the other node located in an external network.
[0016] With this configuration, the node destination to which the encrypted split files are sent can be changed depending on whether or not a VPN is connected.
[0017] 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 or not to establish a VPN connection with the other node based on the file importance.
[0018] With this configuration, the importance of the file can be calculated based on information about operations performed on the file, and whether or not to connect to a VPN can be determined based on the importance. This eliminates the need to always connect to a VPN depending on the importance of the file, reducing the frequency of data communication and power consumption.
[0019] In a preferred embodiment of the present invention, the encryption step stores the plurality of pieces of decryption information for each of the divided files.
[0020] With this configuration, multiple pieces of decryption information for decrypting the encrypted split files can be generated, and the target files can be shared more securely.
[0021] In a preferred embodiment of the present invention, the first node further executes an authentication step of authenticating the user based on digital authentication that certifies the legitimacy of the user, physical key authentication that certifies whether a physical key for file exchange is connected, and VPN authentication that certifies whether profile information for the VPN connection is set.
[0022] With this configuration, more secure sharing of target files can be realized by requiring digital authentication, physical key authentication, and VPN authentication to accept user access. [Effects of the Invention]
[0023] The present invention has the effect of providing a novel technique that can store large amounts of data and manage files more securely. [Brief explanation of the drawings]
[0024] [Figure 1] 1 is a system configuration diagram according to an embodiment of the present invention. [Figure 2] FIG. 1 is a diagram illustrating a hardware configuration according to an embodiment of the present invention. [Figure 3] FIG. 1 is a functional block diagram according to an embodiment of the present invention. [Figure 4] 10 is an example of a file sharing screen according to an embodiment of the present invention. [Figure 5] 10 is an example of a flowchart of a process for sharing a target file according to an embodiment of the present invention. [Figure 6] FIG. 10 is a system configuration diagram according to another embodiment of the present invention. [Figure 7] 10 is a flowchart illustrating an example of an upload process according to another embodiment of the present invention. [Figure 8] 10 is an example of a flowchart of a download process according to another embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION
[0025] (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.
[0026] For example, while the configuration, operation, etc. of a file management system are described in this embodiment, methods, computer programs, etc. with similar configurations 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, to configure a file management system. Here, the recording medium storing the program may be a non-transitory recording medium, such as a CD-ROM.
[0027] In this embodiment, the term "unit" may refer to, for example, a combination of hardware resources implemented by a broadly defined circuit and software information processing that can be specifically realized by these hardware resources. In this embodiment, "information" is represented by, for example, a physical signal value representing voltage or current, a high or low signal value as a binary bit set consisting of 0 or 1, or a quantum superposition (so-called quantum bit), and communication and calculation can be performed on the broadly defined circuit. A broadly defined circuit is a circuit realized by appropriately combining a circuit, circuitry, processor, memory, etc., including a central processing unit (CPU), a graphics processing unit (GPU), a large-scale integration (LSI), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), etc.
[0028] The present invention relates to a system (so-called distributed file system) that manages information in a distributed manner among multiple nodes using P2P communication. Here, the distributed file system is a system in which, when a node uploads information on a network formed by multiple nodes, the information is cached in succession in nodes adjacent to the node, and the cache files are managed in a distributed manner among the multiple nodes.
[0029] In the present invention, information to be managed in a distributed manner (hereinafter referred to as a target file) is divided and encrypted, and the resulting encrypted split files are uploaded to a distributed file system, thereby achieving distributed management of the target file. In this embodiment (first embodiment), a case will be described in which information is managed in a distributed manner by P2P communication among multiple nodes arranged on the same LAN (Local Area Network).
[0030] <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.
[0031] A general-purpose server computer, personal computer, smartphone, tablet terminal, wearable device, etc. can be used as node 1. In this embodiment, node 1 that aggregates file information (described below) that serves as an index for searching for files is called a parent node, and node 1 that searches for encrypted split files based on the file information is called a child node.
[0032] The LAN in this embodiment may be wired or wireless, but there is no restriction on the standard of the wired cable or wireless LAN, and there is no restriction on the connection format, access control method, or scale of the LAN.
[0033] <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.
[0034] 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.
[0035] <1.2. Functional configuration of node 1> Fig. 3 is a functional block diagram of node 1 in embodiment 1. As shown in Fig. 3, 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 information processing performed by software (stored in a storage unit 12) specifically realized by hardware (processing unit 11).
[0036] <1.3.Database 2> The database 2 stores user information, sharing group information, and file information.
[0037] <1.3.1. User Information> User information is information about users who use the distributed file system. 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), etc., and is stored in association with shared group information.
[0038] <1.3.2. Shared Group Information> The shared group information is information indicating a group of target files shared by users. In this embodiment, the shared group is information created for each project that an organization works 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.
[0039] <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.
[0040] 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 transmitted from the child node. The parent node may also have a splitting 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, and a 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 which case file information is distributed and stored in node 1 (child node).
[0041] In this embodiment, in addition to file information, user information and sharing group information are stored in the parent node database 2. Alternatively, they may be stored in an external authentication server on the Internet or in a child node database.
[0042] <1.4. Division part 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 a target file and creates split files to which a combined status is assigned. Here, the combined status is information necessary to restore the target file from the split files.
[0043] <1.5. Encryption section 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.
[0044] <1.6. Transmitter 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 child nodes.
[0045] <1.7. Acquisition part 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.
[0046] <1.8. Decryption 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.
[0047] <1.9.Restore 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.
[0048] <1.10.Authentication Section 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 on 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 a 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, which will be described later. The display processing unit 108 displays information about the target files corresponding to the encrypted split files for each sharing group, and transmits the display processing results to the second node.
[0049] In this embodiment, the display processing refers to a process in which the display processing unit 108 executes a process of generating the necessary information, and transmits the generated information to the output unit 95, whereby the output unit 95 displays the generated information.
[0050] <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 shared group display section SGD, and a target file display section EFD.
[0051] 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 accessible.
[0052] The target file display unit EFD displays information about the target file associated with the shared group specified in the shared group display unit 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 shared group displays a shared folder (not shown) associated with the specified shared group, and specifying the shared folder displays the target file information. Alternatively, specifying a shared group may display the target file information associated with the shared group.
[0053] Then, when the user selects and inputs the "Upload" button on the file sharing screen W1, the upload of the target file is performed, and the download is performed by specifying the target file information displayed in the target file display area EFD and inputting information related to the download.
[0054] <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 describes the flowchart after successful access authentication.
[0055] <3.1. Upload process flowchart> FIG. 5(a) shows a processing flowchart up to when the first node uploads the target file.
[0056] <3.1.1. Shared group / shared folder designation reception> 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.
[0057] <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.
[0058] <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 secret keys for each encrypted split file as decryption information.
[0059] <3.1.4. Uploading encrypted split files> In S105, the transmitting unit 103 accepts the designation of a destination to which notification is to be sent. In this embodiment, when the designation 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 designation of the node 1 and accepts the designation of a destination to which notification is to be sent. Then, in S106, the transmitting unit 103 accepts input of a message to be sent to the destination designated in S105.
[0060] Next, in S107, the transmitting unit 103 transmits the encrypted split files, the target file information, and the 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. Then, the parent node stores the received target file information and split file information for each split file.
[0061] In addition, when the transmitting unit 103 of the first node is in a state where it is unable to transmit the encrypted split file, target file information, and split file information to all other child nodes when transmitting the encrypted split file, target file information, and split file information to other nodes (for example, when all child nodes are not turned on), the encrypted split file, target file information, and split file information are temporarily stored in the first node, and when the other child nodes are turned on, the temporarily stored information is transmitted.
[0062] <3.1.5. Displaying 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 the information of the target files corresponding to the encrypted split files transmitted in S107, and displays the information for each sharing group display unit SGD on the file sharing screen W1.
[0063] As described above, by steps S101 to S108, the target file is stored in the distributed file system and can be managed securely. Also, node 1, which is communicably connected via LAN, can download the target file by executing steps S201 to S205 below.
[0064] <3.2. Download process flowchart> FIG. 5(b) shows a processing flowchart up to when the second node downloads the target file.
[0065] <3.2.1. Specifying the 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.
[0066] <3.2.2. Decrypting 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.
[0067] <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.
[0068] As described above, according to the file management system of embodiment 1, information can be shared securely by distributing and managing divided and encrypted target files among nodes located within the same LAN.
[0069] (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.
[0070] In the first embodiment, target files were uploaded and downloaded by communicating via the same LAN. On the other hand, in this embodiment, when uploading and downloading files between nodes 1 located in different LANs, communication is performed via an open network or VPN. In the following description, the system according to this embodiment operates each functional configuration, and parts common to the first embodiment will be omitted.
[0071] <4. System Configuration of Embodiment 2> 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 made up of multiple LANs on which multiple nodes 1 that perform P2P communication are arranged, and each LAN is configured to be able to communicate via an open network.
[0072] In this embodiment, a node 1 arranged in a first LAN is configured to be able to communicate with a node 1 (internal node) arranged in the first LAN via the LAN, and with a node (external node) of an external distributed file system via an open network. Also, the node 1 arranged in the first LAN is configured to be able to communicate with a node 1 (private external node) arranged in another LAN (second LAN) of the external distributed file system via a VPN connection, and with a node 1 (public external node) arranged in a public network via the open network. Note that in this embodiment, a VPN connection is made via a VPN device to perform communication between LANs, but communication may also be performed via an open network without a VPN connection.
[0073] Furthermore, although the WAN in this embodiment is realized by a VPN connection, there is no restriction on the type of WAN, and it may be a digital leased line, wide area Ethernet, or the like, and there is no restriction on the size of the WAN.
[0074] <4.1. Functional configuration of node 1> In addition to 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, the node 1 in embodiment 2 further includes a calculation unit 109 and a connection unit 110.
[0075] <4.2. Transmitter 103 in the Second Embodiment> The transmitter 103 transmits at least the encrypted split files from the first node in the first LAN to the private external node via a VPN or an 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.
[0076] 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 the target file.
[0077] <4.4. Connection part 110> The connection unit 110 determines whether or not to establish a VPN connection with an external node based on the importance calculated by the calculation unit 109, and then establishes the VPN connection. The connection unit 110 establishes the VPN connection when the file importance is equal to or greater than a predetermined threshold.
[0078] <5. Flowchart> The file management method of this embodiment will be described below with reference to FIGS.
[0079] <5.1. Upload process flowchart> 7 is a flowchart showing the process up to when a first node located in a first LAN uploads a target file to a private external node. Note that the process from S301 to S307 is the same as the process up to when the encrypted split files are uploaded in the first embodiment (S101 to S107), and therefore will not be described here.
[0080] <5.1.1. Calculating 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 or not in terms of the operation performed on the file, and calculates the file importance by adding up the predetermined weight depending on whether an operation corresponding to the operation indicator has been performed.
[0081] Specifically, for example, the operation indicators include "whether a message was entered at the time of uploading," "the degree of association between the file name or tags attached to the file and the message," "the contents of tags registered in association with the file," and "whether the file was obtained from an external system," etc. The calculation unit 109 sets a predetermined weight for each of these operation indicators, and calculates the sum as the file importance by multiplying the weight by "1" if the corresponding operation has been performed, or by "0" if the corresponding operation has not been performed, and adding up the weights.
[0082] 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. Furthermore, if the file importances have the same numerical value, the calculation unit 109 obtains the latency of the packet sent to the other party, and calculates the numerical value obtained by dividing the latency tolerance previously set by the user by the obtained latency as the communication priority.
[0083] <5.1.2.VPN connection process> 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 value 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 file and decryption information to the private external node via the VPN. Note that when 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.
[0084] On the other hand, if the file importance does not exceed the threshold value 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.
[0085] Then, in S312, on the file sharing screen W1 of node 1 located within the network to which the encrypted split file and decryption information were sent, information on the target files associated with the encrypted split file is displayed for each sharing group display section SGD.
[0086] As described above, by steps S301 to S312, the target file can be stored in a distributed file system within the same WAN or open network, thereby enabling distributed management of the target file. Also, node 1, which is communicatively connected via the WAN, can download the target file by executing steps S401 to S405 below.
[0087] <5.2. Download process flowchart> FIG. 7 is a flowchart showing the process up to when a second node located in a first LAN downloads a target file stored in a private external node.
[0088] <5.2.1. Specifying the file to download> First, in S401, the acquisition unit 104 receives a designation of a target file to be restored.
[0089] <5.2.2. Calculating file importance> Then, in 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 each corresponding operation has been 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.
[0090] <5.2.3.VPN connection process> 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 previously set 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.
[0091] On the other hand, if the file importance does not exceed the threshold value 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.
[0092] <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.
[0093] 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 that was stored in a public external node with a file importance lower than the threshold at the time of uploading, but whose file operation information has been updated so that its file importance exceeds the threshold, is downloaded.
[0094] First, the connection unit 110 determines that the file importance exceeds a threshold and establishes a VPN connection. Then, the acquisition unit 104 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 receives a request from the parent node of the private external node to inquire about 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.
[0095] As described above, the file management system of the second embodiment 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 to establish a VPN connection based on the importance of the file, it is no longer necessary to maintain a VPN connection at all times, thereby reducing power consumption.
[0096] Note that the above describes the case where node 1 located on the first LAN downloads the target file from a private external node, but when node 1 located on the first LAN downloads the target file from a public external node, steps S403 to S404 are not performed, and the encrypted split files associated with the target file and decryption information are obtained directly via the open network.
[0097] Furthermore, in this embodiment, the target file stored in node 1 is designated and uploaded to the distributed file system for distributed management of the target file, but the target file may also be designated 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 to S108 or S308 to 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.
[0098] 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 obtaining the encrypted split files stored in the distributed file system based on the split file information stored in the parent node, and then obtaining 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. [Explanation of symbols]
[0099] 0: File Management System 1 : Node 2: Database 11: Processing section 12: Storage section 13: Communications Department 14: Input section 15: Output section 101:Divided part 102: Encryption section 103: Transmission unit 104: Acquisition Department 105: Decryption unit 106: Restoration section 107: Authentication section 108: Display processing unit 109: Calculation section 110: Connection part W1: File sharing screen ORD:Organization display section SGD: Shared Group Display EFD: Target file display area
Claims
1. A file management method for managing information in a distributed manner among a plurality of nodes through P2P communication, comprising: The P2P communication network includes an upload node in a first LAN that uploads target files to be managed in a distributed manner, and a private external node in a second LAN, the first LAN and the second LAN forming a single WAN; a predetermined weight is set for each operation index for determining the importance of the file according to the operation performed on the target file; The upload node: a process of calculating a file importance by adding up the predetermined weight depending on whether or not an operation corresponding to the operation indicator has been performed based on file operation information regarding an operation performed on the target file, and determining whether or not to establish a VPN connection with the private external node based on the file importance; and transmitting the target file to the private external node located in an internal network or to another node located in an external network, depending on whether the upload node and the private external node are connected via VPN. File management methods.
2. The operation indicator includes an indicator of whether a message related to a tag associated with the target file has been input, The upload node accepts the designation of the target file to be uploaded, accepts input of a message to be transmitted to a node in the P2P communication network, and, if the input message and a tag associated with the designated message are related, calculates the file importance by adding up the predetermined weights corresponding to the indicators. The file management method according to claim 1 .
3. The P2P communication network further comprises a download node in the first LAN that downloads the target file; A predetermined weight is set for each download operation indicator indicating whether the target file is important in terms of downloading with respect to the operation performed on the target file; The download node receives a designation of the target file to be downloaded from a user, calculates a file importance by adding up the predetermined weight depending on whether an operation corresponding to the download operation indicator has been performed based on file operation information regarding an operation performed on the designated target file, determines whether to establish a VPN connection with the private external node based on the file importance, and executes a process of downloading the target file. The file management method according to claim 1 .
4. The file operation information includes at least the number of times the target file has been opened, The node in the P2P communication network updates the number of times the target file has been opened; The download node calculates the file importance based on the file operation information in which the number of times the target file has been opened has been updated. The file management method according to claim 3.
5. When communication of target files having the same file importance value is performed simultaneously, the node performing the communication determines whether or not to establish a VPN connection with the node at the communication destination, depending on the latency of packets acquired from the node at the communication destination and the communication priority based on a preset latency tolerance. The file management method according to claim 1 .
6. The upload node further authenticates the user based on digital authentication that certifies the legitimacy of the user, physical key authentication that certifies whether a physical key for file transfer is connected, and VPN authentication that certifies whether profile information for VPN connection is set. The file management method according to claim 1 .
7. A file management program that manages information among a plurality of nodes in a distributed manner through P2P communication, The computer functions as an upload node that uploads target files to be managed in a distributed manner; 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; a predetermined weight is set for each operation index for determining the importance of the file according to the operation performed on the target file; The upload node: calculating a file importance by adding up the predetermined weight depending on whether an operation corresponding to the operation indicator has been performed based on file operation information related to the operation performed on the target file, and determining whether to establish a VPN connection with the private external node based on the file importance; transmitting the target file to the private external node located in an internal network or to another node located in an external network, depending on whether the upload node and the private external node are connected via VPN; File management program.
8. A file management system that manages information among a plurality of nodes in a distributed manner through P2P communication, The file management system includes an upload node in a first LAN that uploads target files to be managed in a distributed manner, and a private external node in a second LAN, the first LAN and the second LAN forming a single WAN; a predetermined weight is set for each operation index for determining the importance of the file according to the operation performed on the target file; The upload node: calculating a file importance by adding up the predetermined weight depending on whether an operation corresponding to the operation indicator has been performed based on file operation information related to the operation performed on the target file, and determining whether to establish a VPN connection with the private external node based on the file importance; transmitting the target file to the private external node located in an internal network or to another node located in an external network, depending on whether the upload node and the private external node are connected via VPN; File management system.
Citation Information
Patent Citations
Data backup device, data backup method and program
JP2007102672A
Network system
JP2010045670A
Method and system for distributed data storage with enhanced security, resilience, and control
JP2022528578A
Hybrid data storage system with private storage cloud and public storage cloud
US20180373439A1
Hybrid data storage system with private storage cloud and public storage cloud
US20180373600A1