WO2021172589A1 - Information processing system and program - Google Patents

Information processing system and program Download PDF

Info

Publication number
WO2021172589A1
WO2021172589A1 PCT/JP2021/007723 JP2021007723W WO2021172589A1 WO 2021172589 A1 WO2021172589 A1 WO 2021172589A1 JP 2021007723 W JP2021007723 W JP 2021007723W WO 2021172589 A1 WO2021172589 A1 WO 2021172589A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
file
blockchain
information processing
data
Prior art date
Application number
PCT/JP2021/007723
Other languages
French (fr)
Japanese (ja)
Inventor
伊東 久雄
Original Assignee
株式会社シーズ
長瀬産業株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 株式会社シーズ, 長瀬産業株式会社 filed Critical 株式会社シーズ
Priority to JP2021555548A priority Critical patent/JP7158690B2/en
Publication of WO2021172589A1 publication Critical patent/WO2021172589A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus 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

Definitions

  • the present invention relates to an information processing system and a program.
  • the management device (blockchain management device) manages the blockchain. That is, it is the management device that manages the documents, and the amount of documents that can be managed may be determined by the performance of the management device. Furthermore, when a document created and updated is embedded in the blockchain, the document itself could not be kept secret.
  • the information processing system of one aspect of the present invention is One or more first-class information processing devices on the cloud that function as nodes belonging to the blockchain network, respectively.
  • One or more type 2 information processing devices that are connected to the cloud via a dedicated line and function as nodes belonging to the network related to the blockchain, respectively.
  • the program of one aspect of the present invention is a program corresponding to the above-mentioned information processing system of one aspect of the present invention.
  • FIG. 1 It is a schematic diagram explaining an example of the outline of the service to which the information processing system which concerns on one Embodiment of this invention is applied. It is a figure which shows the structural example of the information processing system which concerns on one Embodiment of this invention applied when providing the service shown in FIG. It is a block diagram which shows the hardware configuration of the node server in the information processing system of FIG. It is a functional block diagram which shows an example of the functional configuration of the node server and the node terminal of FIG. It is a schematic diagram which shows an example of the relationship of the blockchain managed by a node server and a node terminal having a functional configuration of FIG. 4, and various data managed by using the blockchain.
  • FIG. 6 is a functional block diagram showing an example of functional configurations of a user terminal, a node terminal, and a node server in the case of FIG.
  • FIG. 1 is a schematic diagram illustrating an example of an outline of a service (hereinafter, referred to as “the service”) to which the information processing system according to the embodiment of the present invention is applied.
  • This service is a service that enables the management of one or more data using the technology related to the blockchain by applying the information processing system shown in FIG.
  • the file F is managed as an example of one or more data.
  • This service is provided to a predetermined organization (for example, a company) by a service provider (not shown). However, the operation for using this service is performed by the operator U who belongs to the predetermined organization.
  • a network related to blockchain is constructed.
  • This network is composed of a plurality of nodes, and at least one node exists on the cloud C.
  • each of the four node servers 2-1 to 2-4 managed by the service provider functions as one node by being arranged in the cloud C.
  • five node terminals 1-1 to 1-5 are transferred from the service provider to a predetermined group (for example, a company).
  • Each of these five node terminals 1-1 to 1-5 functions as one node by being connected to the cloud C via each of the dedicated lines LL-1 to LL-5. That is, in the example of FIG. 1, a total of nine node servers 2-1 to 2-4 and node terminals 1-1 to 1-5 function as each of the nine nodes, thereby forming a network related to the blockchain. It is composed.
  • node terminal 1 When it is not necessary to individually distinguish the node terminals 1-1 to 1-5, these are collectively referred to as "node terminal 1".
  • the dedicated lines LL-1 to LL-5 are collectively referred to as “dedicated line LL”.
  • node server 2 When it is not necessary to distinguish the node servers 2-1 to 2-4 individually, these are collectively referred to as "node server 2".
  • the leased line LL is a communication line dedicated to a specific user.
  • communication on a leased line is isolated from a network (for example, the Internet) configured to include an untrusted information processing device or the like. That is, communication between information processing devices connected by a dedicated line LL is unlikely to be eavesdropped or intercepted by a malicious third party or the like. That is, since this service is used via a dedicated line LL, it is provided in a state where there is a low possibility of eavesdropping or interception by a third party or the like.
  • the leased line LL does not have to be physically isolated from the Internet or the like. That is, for example, a virtual dedicated line using VPN (Virtual Private Network) technology can also be adopted as the above-mentioned dedicated line LL.
  • VPN Virtual Private Network
  • file system is a system that stores and manages the entire data of the file F itself.
  • the "blockchain” refers to various information related to one or more data (for example, file F) managed by using this service (data related to soundness verification such as metadata and hash related to file F, etc.). ) Is a series of data in which blocks are connected like a chain.
  • the word blockchain can mean distributed ledger technology or distributed networks. That is, a blockchain word is an ambiguous word that includes a series of data itself in which data called a block is connected like a chain, and technologies and networks related thereto. Therefore, hereinafter, the decentralized network that manages the blockchain is referred to as a "network related to the blockchain", and is distinguished from the "blockchain” which is a series of data in which blocks are connected like a chain.
  • each of the node servers 2-1 to 2-4 has a blockchain BC-1 to 2-4 and a file system FS-1 to FS-4, respectively. And are provided.
  • the blockchains BC-1 to 2-4 are collectively referred to as the “blockchain BC”
  • the file systems FS-1 to FS-4 are collectively referred to as the "file”. It is called "system FS”.
  • the node terminal 1 can execute a part or all of the predetermined processing related to the provision of this service. That is, the blockchain BC and the file system FS described above may be provided in each of the node terminals 1-1 to 1-5, if necessary.
  • the node terminal 1 and the node server 2 that make up the network related to the blockchain are both “nodes” that make up the network related to the blockchain. Further, both the node terminal 1 and the node server 2 are information processing devices that execute a part or all of a predetermined process related to the provision of this service. Therefore, hereinafter, when it is not necessary to distinguish the node terminal 1 and the node server 2 individually, these are collectively referred to as a "node” as appropriate.
  • the network related to the blockchain in the present embodiment includes "node servers 2-1 to 2-4 on the cloud C, which function as nodes belonging to the network related to the blockchain, respectively" and “to the cloud C.
  • Node terminals 1-1 to 1-5 which are connected via dedicated lines LL-1 to LL-5 and function as nodes belonging to a network related to a blockchain, respectively.
  • the hardware key IDH is required.
  • an identification card IDC for authentication of the operator U is required.
  • the hardware key IDH and the ID card IDC are 1-1. It is assumed that it needs to be read by. Therefore, as a premise, it is assumed that the operator U has a hardware key IDH and an ID card IDC for using this service.
  • the information related to the hardware key IDH and the ID card IDC shall be managed in advance by the node used in this service.
  • the operator U executes various operations related to the personal authentication step ST1 shown in FIG.
  • the operator U connects the hardware key IDH to the node terminal 1-1.
  • the node terminal 1 collates the predetermined information that can be acquired from the hardware key IDH with the information about the hardware key IDH managed by the node.
  • the node terminal 1 authenticates the operator U as a user of this service.
  • the operator U holds the IDC of the operator U himself / herself over a wireless card reader (not shown) connected to the node terminal 1-1.
  • the node terminal 1-1 collates the predetermined information that can be acquired from the ID card with the information about the ID card managed by the node.
  • the node terminal 1-1 authenticates the operator U as the person who is the user of this service.
  • the node terminal 1-1 can authenticate that the operator U is the user of the service and the operator U himself / herself by both the hardware key IDH and the ID card. That is, a third party who does not have either the hardware key IDH or the ID card managed by the node used in this service cannot use this service.
  • the operator U is a user of this service and has been authenticated as the person himself / herself.
  • the node terminal 1 is made to function as a node of the network related to the blockchain. That is, in the node terminal 1-1, the blockchain management function and the like, which will be described later, are made to function.
  • the "blockchain management function” is a state in which one or more data is managed by each of the nodes constituting the network related to the blockchain when the storage of one or more data is instructed. It is a function to make.
  • the file movement step ST2 and the save process step ST3 in FIG. 1 are examples of the blockchain management function.
  • the node terminal 1-1 When the node terminal 1-1 is made to function as a node of the network related to the blockchain, the node terminal 1-1 connects with any node server 2 among the plurality of node servers 2 on the cloud C and the dedicated line LL. Information is exchanged through.
  • the node terminal 1-1 operated by the operator U will be described as exchanging various information with the node server 2-1.
  • the operator U executes various operations related to the file movement step ST2 shown in FIG. That is, the operator U instructs to save one or more data in the file movement step ST2.
  • the operator U instructs to save the file F by performing an operation of storing a predetermined file F to be managed by this service in a dedicated folder D.
  • the operator U operates a predetermined user interface provided by the node terminal 1-1 to store a predetermined file F to be managed by the service in a dedicated folder D. I do.
  • the dedicated folder D is monitored by the application program that provides this service. As a result, the file F stored in the dedicated folder D is grasped as one or more data managed by this service, and becomes the target data of the storage process described later.
  • step ST3 of the storage process the node server 2-1 puts the file F in a state managed by the network related to the blockchain.
  • the encryption and division functional block FB1 acquires the file F.
  • the encryption / division step ST3-1 the encryption / division functional block FB1 encrypts and divides the file F1.
  • the blockchain management functional block FB2 "file distributed storage, history storage" of the encrypted and divided file F. That is, the functional block FB2 of the blockchain management distributes and stores the encrypted file F and the file F divided into a plurality of files F in the file systems FS-1 to FS-4. Further, various information about the file F is stored in the blockchain BC as a history. Specifically, after a predetermined process related to the blockchain, it is stored as a history in all of the blockchains BC-1 to BC-4 provided in each of the node servers 2-1 to 2-4. The details of various information related to the file F (data related to the verification of soundness such as metadata and hashes related to the file F) stored as a history in the blockchain BC will be described with reference to FIG.
  • the node server 2-1 As described above, in the node server 2-1 as various functions related to the storage process step ST3 shown in FIG. 1, the functions of the encryption and division functional block FB1 and the blockchain management functional block FB2 are exhibited. NS. As a result, the node server 2-1 puts the file F in a state managed by the network related to the blockchain.
  • the history of the file F is stored in each of the blockchain BCs provided in each of the plurality of node servers 2.
  • each of the nodes can detect that the file F has been tampered with. In other words, the file F whose soundness has been verified by this service is guaranteed that the data of the file F is valid.
  • the file F is stored after being encrypted and divided in each of the file systems FS provided in each of the plurality of node servers 2. That is, the file F is encrypted and stored in the file system FS. Further, the file F is divided and saved in the file system FS. As a result, when decrypting the file F, it is necessary to acquire a fragment of the other file F divided from the other node. As described above, it is difficult to decrypt the file F except for the operator U who stores the file F. That is, this service can prevent the leakage of the data of the file F. Furthermore, for a file F having a large file size, it is possible to achieve the effect that handling when saving is easy by dividing the file F.
  • this service is a service that manages data that can handle large amounts of data and prevent leakage of the data.
  • FIG. 2 is a diagram showing a configuration example of an information processing system according to an embodiment of the present invention applied when the service shown in FIG. 1 is provided.
  • the information processing system of the present embodiment used in this service includes n node terminals 1-1 to 1-n and m units (n is an arbitrary integer value of 1 or more). (M may be an arbitrary integer value of 1 or more independent of n) and may be configured to include the node servers 2-1 to 2-m.
  • Each of the node terminals 1-1 to 1-n is connected to the cloud C via each of the dedicated lines LL-1 to LL-n.
  • the node servers 2-1 to 2-m are arranged on the cloud C.
  • the node servers 2-1 to 2-m can exchange various information related to this service with each other.
  • Each of the node terminals 1-1 to 1-n can exchange various information related to this service with any of the node servers 2-1 to 2-m on the cloud C. ..
  • FIG. 3 is a block diagram showing the hardware configuration of the node terminal in the information processing system of FIG.
  • the node terminal 1 includes a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 13, a bus 14, an input / output interface 15, an output unit 16, and an input unit 17.
  • a storage unit 18, a communication unit 19, and a drive 20 are provided.
  • the CPU 11 executes various processes according to the program recorded in the ROM 12 or the program loaded from the storage unit 18 into the RAM 13. Data and the like necessary for the CPU 11 to execute various processes are also appropriately stored in the RAM 13.
  • the CPU 11, ROM 12 and RAM 13 are connected to each other via the bus 14.
  • An input / output interface 15 is also connected to the bus 14.
  • An output unit 16, an input unit 17, a storage unit 18, a communication unit 19, and a drive 20 are connected to the input / output interface 15.
  • the output unit 16 is composed of a display, a speaker, and the like, and outputs various information as images and sounds.
  • the input unit 17 is composed of a keyboard, a mouse, and the like, and inputs various information.
  • the storage unit 18 is composed of a hard disk, a DRAM (Dynamic Random Access Memory), or the like, and stores various data.
  • the communication unit 19 communicates with another device (node server 2 in the example of FIG. 1) via the network N including the Internet.
  • a removable media 41 made of a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is appropriately mounted on the drive 20.
  • the program read from the removable media 41 by the drive 20 is installed in the storage unit 18 as needed. Further, the removable media 41 can also store various data stored in the storage unit 18 in the same manner as the storage unit 18.
  • the node server 2 of the information processing system of FIG. 2 has basically the same configuration as the hardware configuration shown in FIG. That is, the node server 2 includes the CPU 11, ROM 12, RAM 13, bus 14, input / output interface 15, output unit 16, input unit 17, storage unit 18, communication unit 19, and drive 20 of the node terminal 1 shown in FIG. Similar hardware configurations include a CPU 21, a ROM 22, a RAM 23, a bus 24, an input / output interface 25, an output unit 26, an input unit 27, a storage unit 28, a communication unit 29, and a drive 30.
  • FIG. 4 is a functional block diagram showing an example of the functional configuration of the node terminal and the node server of FIG. For the sake of simplification of the description, in the description of FIG. 4, only one node terminal 1 and one node server 2 are shown.
  • the hardware key detection unit 111, the personal authentication unit 112, and the node management unit 113 function in the CPU 11 of the node terminal 1. Further, the node management unit 211 functions in the CPU 21 of the node server 2.
  • the hardware key detection unit 111 of the node terminal 1 detects the hardware key IDH connected to the node terminal 1.
  • the hardware key detection unit 111 sets the predetermined information that can be acquired from the hardware key IDH and the information about the hardware key IDH managed by the node. Based on this, the hardware key IDH is detected. That is, the hardware key detection unit 111 determines whether or not the hardware key or other device connected to the node terminal 1 is the hardware key IDH related to this service. Then, when it is determined that the hardware key IDH is related to this service, it is assumed that the hardware key IDH connected to the node terminal 1 is detected.
  • the personal authentication unit 112 authenticates whether the operator U is the operator U of the service by using the identification card IDC read by the node terminal 1.
  • the operator U loads his / her own IDC into the node terminal 1, the operator U is read based on the predetermined information that can be obtained from the IDC and the information about the IDC managed by the node. Authenticate as the person who uses the service.
  • the node management unit 113 when the hardware key IDH is detected by the hardware key detection unit 111 and the operator U is authenticated by the personal authentication unit 112 as the operator U of the service, the node terminal 1 Is managed as a node of the network related to the blockchain. Further, in this case, the node management unit 211 of the node server 2 manages the node terminal 1 as a node of the network related to the blockchain. That is, the node management unit 113 of the node terminal 1 and the node management unit 211 of the node server 2 can manage the node terminal 1 as a node of the network related to the blockchain by cooperating with each other.
  • the node terminal 1 is set to the block chain. It is managed as a node of the network related to.
  • the node terminal 1 authenticated based on the hardware key IDH and the identification IDC is managed as a reliable information processing device as a node of the network related to the blockchain. Will be done.
  • the reliable node terminal 1 is managed in cooperation with the node server 2 so as to be provided in the network related to the blockchain.
  • the node terminal 1 managed so as to be provided in the network related to the blockchain can exert the blockchain management function described later. That is, it can be said that the hardware key IDH is provided in the information processing system according to the embodiment of the present invention in order to exert the blockchain management function in a predetermined one of the plurality of node terminals 1.
  • the node management unit 113, the file acquisition unit 114, and the file management unit 115 are executed in the CPU 11 of the node terminal 1.
  • a blockchain storage unit 150 and a file storage unit 160 are provided in one area of the storage unit 18 of the node terminal 1.
  • the node management unit 211 and the file management unit 213 function.
  • a blockchain storage unit 250 and a file storage unit 260 are provided in one area of the storage unit 28 of the node server 2.
  • the node terminal 1 can execute a part or all of the predetermined processing related to the provision of this service. Therefore, in the description of FIG. 4, the process of step ST3 of the storage process in the description of FIG. 1 is basically described as being executed by the node terminal 1. Further, as described above, the file management step ST2 and the saving process step ST3 are examples of the blockchain management function.
  • the operator U operates a predetermined user interface provided by the node terminal 1-1 to perform an operation for storing a predetermined file F to be managed by the service in a dedicated folder D.
  • the dedicated folder D is monitored by the application program that provides this service.
  • the file acquisition unit 114 acquires the file F stored in the dedicated folder D as one or more data managed by this service.
  • the file management unit 115 manages the file F by using the blockchain BC and the file system FS.
  • the file management unit 115 includes a blockchain management unit 121 and a distributed file system management unit 122.
  • the blockchain management unit 121 extracts various information related to the file F (data related to soundness verification such as metadata and hash related to the file F) and manages the information as a part of the block. Further, the blockchain management unit 121 manages various information related to the file F to other nodes provided in the network related to the blockchain, which are managed by the node management unit 113, as a part of a new block of the blockchain. Let me. That is, although the details will be described later with reference to FIG. 5, the blockchain management unit 121 of the node terminal 1 cooperates with the blockchain management unit 221 of the node server 2 to provide various information regarding the file F to the blockchain. Manage as part of a block.
  • the blockchain management unit 121 can have all the nodes provided in the network related to the blockchain manage various information related to the extracted file F. This makes it difficult for a malicious third party or the like to falsify various information related to the file F.
  • the distributed file system management unit 122 encrypts and divides and manages the entire data of the file F itself.
  • the distributed file system management unit 122 manages the file F managed as a result of the blockchain management function by imposing access restrictions on a person other than the operator U who has instructed to save the file F. That is, for example, the file management unit 115 can provide access control in the storage unit of each node belonging to the network related to the blockchain and divide it for each operator U.
  • the distributed file system management unit 122 encrypts the entire data of the file F itself by using the information contained in the hardware key IDH and the ID card.
  • the distributed file system management unit 122 encrypts the file F so that it can be decrypted only by the operator U who holds the hardware key IDH and the ID card.
  • the distributed file system management unit 122 of the node terminal 1 divides the encrypted file F.
  • the distributed file system management unit 122 of the node terminal 1 cooperates with the distributed file system management unit 122 of the node server 2 to store the encrypted and divided file F in the file storage units of the plurality of node terminals 1. It is distributed and managed in 160 and the file storage unit 260 of the node server 2.
  • the distributed file system management unit 122 divides the encrypted file F and distributes and stores the encrypted file F in a plurality of file systems FS.
  • the distributed file system management unit 122 divides the encrypted file F and distributes and stores the encrypted file F in a plurality of file systems FS.
  • the file management unit 115 stores and manages the blockchain BC in the blockchain storage unit 150 by the blockchain management unit 121, and stores the file F in the file storage unit 160 as the file system FS from the distributed file system management unit 122. Can be managed.
  • the node server 2 includes a file acquisition unit 212 having basically the same function as the file acquisition unit 114 of the node terminal 1. That is, similarly, when the node server 2 accepts the operation for using this service by the operator U, the node server 2 itself and other nodes can manage the file F.
  • FIG. 5 is a schematic diagram showing an example of the relationship between the blockchain managed by the node server and the node terminal having the functional configuration of FIG. 4 and various data managed by the blockchain.
  • FIG. 5 shows a series of data in which blocks B1 to B3 are connected like a chain as an example of the blockchain BC. Further, in the block chain BC of FIG. 5, when the blocks B1 and B2 are connected like a chain, the storage of the file F is instructed, and various information related to the file F is managed as a part of the block B3. This is an example.
  • the file recording database FDB1 at the stage of only block B1 of the blockchain BC and the file recording database FDB2 at the stage of a series of data in which blocks B1 and B2 are connected like a chain are illustrated by dotted lines.
  • the file recording database FDB3 at the stage of a series of data in which the blocks B1 to B3 are connected like a chain is shown by a solid line.
  • file recording database FDB is a database that stores various information about each of the data managed by the network related to the blockchain.
  • the various information regarding the file F managed by the network related to the blockchain includes the following information. That is, for example, the "hash”, "registration date and time”, and "registrant and viewer” information regarding the file F are examples of various information regarding the file F.
  • the various information about the file F does not include the entire data of the file F itself, but includes the hash of the file F. That is, the file recording database FDB contains a hash of the file F that can be used to verify the integrity of the file F. As a result, when the file F is decrypted and the file F is tampered with, it is possible to detect that the tampering has occurred.
  • the file recording databases FDB1 and FDB2 are shown by broken lines, and the file recording database FDB3 is shown by a solid line. This indicates that the file recording database FDB records the latest contents (file recording database FDB3 in FIG. 5).
  • the block B1 is composed of the first related information HD1, the base data BD1, and the second related information FT1.
  • the first related information HD1 is an initial value in the first block B1 of the blockchain BC.
  • the base data BD1 is data that serves as a base for connecting to the next block B2 of the blockchain BC.
  • the base data BD1 stores information corresponding to the file recording database FDB1. That is, for example, the base data BD1 includes "hash”, "registration date and time”, and "registrant and viewer” information regarding one or more data managed from the beginning by this service. If one or more data managed from the beginning by this service does not exist, a predetermined base data (for example, a random number string) is adopted.
  • the second related information is the hash value of the block B1.
  • An arrow is drawn from the first related information HD1, the base data BD1, and the file recording database FDB1 toward the second related information. This indicates that the hash value of the second related information FT1 is a hash value that correlates with the data of the first related information HD1, the base data BD1, and the file recording database FDB1.
  • the block B2 is composed of the first related information HD2, the recorded data BD2, and the second related information FT2.
  • the first related information HD2 is the second related information FT1 of the previous block B1 in the blockchain BC.
  • consecutive blocks such as blocks B1 and B2 are generated so that the first related information HD2 of the block B2 and the second related information FT1 of the previous block B1 match.
  • the recorded data BD2 is information of "hash”, "registration date and time”, and "registrant and viewer” regarding the changed data.
  • the recorded data BD2 stores information corresponding to the difference between the file recording database FDB2 and the file recording database FDB1.
  • the second related information is the hash value of the block B2.
  • An arrow is drawn from the first related information HD2, the recorded data BD2, and the file recording database FDB2 toward the second related information. This indicates that the hash value of the second related information FT2 is a hash value that correlates with the data of the first related information HD2, the recorded data BD2, and the file recording database FDB2.
  • the node terminal 1 when the block B3 is generated, the file F that was not managed by the service at the stage of generating the block B2 is newly managed by the service at the stage of generating the block B3. explain.
  • the node terminal 1 generates the block B3 as the latest block of the blockchain BC.
  • the block B3 is composed of the first related information HD2, the recorded data BD2, and the second related information FT2.
  • what kind of information is adopted as the recorded data BD2 and the like will be described.
  • the process of step ST3 of the storage process in the description of FIG. 1 is basically described as being executed by the node terminal 1.
  • the first related information HD2 is the second related information FT1 of the previous block B1 in the blockchain BC.
  • consecutive blocks such as blocks B1 and B2 are generated so that the first related information HD2 of the block B2 and the second related information FT1 of the previous block B1 match.
  • continuous blocks become a series of data connected like a chain.
  • the blockchain management unit 121 of the node terminal 1 acquires the file recording FR of the file F.
  • the file record FR includes records (information) of "hash”, "registration date and time”, and "registrant and viewer” regarding file F.
  • the file recording FR is adopted as a part of the recording data BD3 of the block B3. Further, the file recording FR of the file F is stored in the file recording database FDB3 based on the file recording database FDB2 as the latest information related to the file F.
  • the blockchain management unit 121 of the node terminal 1 generates a hash value that correlates with the first related information HD2, the base data BD2, and the data of the file recording database FDB2 as the second related information FT3. do.
  • the block B3 is generated as the latest block of the blockchain BC.
  • the distributed file system management unit 122 of the node terminal 1 converts the file F into the encrypted and divided files FS1 to FS4.
  • the distributed file system management unit 122 of the node terminal 1 distributes and stores the encrypted and divided files FS1 to FS4 in a plurality of nodes (for example, each of the node servers 2-1 to 2-4). .. In this way, the encrypted and divided files FS1 to FS4 are distributed and stored in the nodes provided in the network related to the blockchain.
  • FIG. 6 is a schematic diagram illustrating an example in which the operator terminal is locally connected to the node terminal to use this service.
  • the local connection means, for example, a connection in a range called Local Area Network (local area network, hereinafter referred to as LAN).
  • a LAN is a network that cannot be freely connected from the Wide Area Network side in areas such as homes and offices.
  • the operator U can also operate the operator terminal 3 locally connected to the node terminal 1 to obtain the file F by using the blockchain BC. Can be stored and managed. The details of the flow of this service when the operator U uses the operator terminal 3 will be described later.
  • FIG. 1 a total of nine node servers 2-1 to 2-4 and node terminals 1-1 to 1-5 function as each of the nine nodes to form a network related to the blockchain.
  • FIG. 6 shows an example in which the operator terminals 3-1 to 3-5 are additionally connected to the node terminals 1-1 to 1-5, respectively.
  • the operator terminals 3-1 to 3-5 are locally connected to the node terminals 1-1 to 1-5 via the routers R1 to R5, respectively.
  • Each of the routers R1 to R5 used for this local connection may be independent of each of the node terminals 1-1 to 1-5, or each of the node terminals 1-1 to 1-5. It may exist as a function.
  • FIG. 1 a total of nine node servers 2-1 to 2-4 and node terminals 1-1 to 1-5 function as each of the nine nodes to form a network related to the blockchain.
  • FIG. 6 shows an example in which the operator terminals 3-1 to 3-5 are additionally connected to the node terminals 1-1 to 1-5, respectively.
  • the routers R1 to R3 each exist independently of the node terminals 1-1 to 1-3, and the routers R4 and R5 Each exists as a function of each of the node terminals 1-4 and 1-5.
  • Each of the routers R1 to R5 can connect a plurality of networks to each other and control, that is, route the route as needed.
  • the routers R1 to R5 each have a cloud C for providing this service for communication for the blockchain BC and the file system FS in each of the operator terminals 3-1 to 3-5.
  • each of the routers R1 to R5 routes the communication for browsing the Internet at each of the operator terminals 3-1 to 3-5 as a connection between the Internet and the LAN (not shown).
  • each of the routers R4 and R5 as one function of the own machine like the node terminals 1-4 and 1-5 will be described. That is, when the node terminal 1 is provided with the router function as in the node terminals 1-4 and 1-5, the dedicated line LL for connecting the node terminal 1 to the node server 2 is set in advance. As a result, the operator U can use this service simply by connecting the operation terminal 3 to the node terminal 1 for which the setting of the leased line LL has been completed.
  • the operator terminal 3 is an information processing device such as a personal computer operated by the operator U.
  • the operator terminal 3 has basically the same configuration as the hardware configuration shown in FIG. 3 described above. That is, although not shown, the operator terminal 3 includes the CPU 11, ROM 12, RAM 13, bus 14, input / output interface 15, output unit 16, input unit 17, storage unit 18, and communication unit 19 of the node terminal 1 shown in FIG.
  • the hardware configuration similar to that of the drive 20 is provided with the CPU 31, ROM 32, RAM 33, bus 34, input / output interface 35, output unit 36, input unit 37, storage unit 38, communication unit 39, and drive 40, respectively. ..
  • the operator U locally connects the operator terminal 3 to the node terminal 1 and performs the following operations using a predetermined user interface provided by the operator terminal 3. That is, the operator terminal 3 that has received the operation of the operator U encrypts the file F to be saved and managed using the blockchain BC, records the signature for the file F, and transmits the file F to the node terminal 1. I do.
  • the operator U can save and manage the file F using the blockchain BC as long as the operator terminal 3 is locally connected to the node terminal 1 even from the outside isolated from the node terminal 1. Can be done. In this way, the worker terminal 3 can bring the file F into a state managed by the network related to the blockchain by cooperating with the node terminal 1 and the node server 2.
  • the blockchain BC includes a public key for encrypting the file F on the operator terminal 3 (hereinafter referred to as "public key for encryption”) and a signature of the operator U on the file F.
  • the public key (hereinafter referred to as "public key for signature”) is stored. Further, the private key corresponding to each of the encryption public key and the signature public key is stored in the operator terminal 3, respectively.
  • the operator terminal 3 that has received the operation of the operator U acquires the encryption public key from the blockchain BC.
  • the operator terminal 3 encrypts the file F using the acquired public key for encryption.
  • the operator terminal 3 records its own signature (electronic signature) in the file F using the private signature key.
  • the operator terminal 3 transmits the file F in which the signature is recorded to the node terminal 1.
  • the above-described processing is appropriately executed in each of the node terminal 1 and the node server 2 with reference to FIGS. 1 to 5. As a result, the file F transmitted from the operator terminal 3 is saved and managed using the file blockchain BC.
  • the encryption public key of the operator U to which the viewing authority is given is stored in the blockchain BC. Then, the file F cannot be decrypted unless the private key is paired with the public key for encryption. As a result, stronger viewing restrictions can be applied. Further, the file F transmitted from the operator terminal 3 to the node terminal 1 is encrypted. Therefore, in the node terminal 1, only the encrypted file F exists unless the node terminal 1 newly creates the file F. As a result, even if the file F stored in the node terminal 1 or the node terminal 1 itself is stolen, the confidentiality of the file F can be ensured.
  • the encrypted file F is generated as many as the number of public keys for encryption.
  • the encryption public keys of the first operator U and the second operator U are used, respectively. Encrypt each.
  • each of the first operator U and the second operator U can decrypt the file F using the corresponding private key held by each. In this way, when saving and managing the file F, encryption is performed for each of the decryptable operators U. Even if an operator U leaks the private key, the damage caused by it can be minimized.
  • FIG. 7 is a functional block diagram showing an example of the functional configuration of the node terminal, the node server, and the user terminal of FIG.
  • the functional configuration of the node server 2 shown in FIG. 7 is the same as the functional configuration of each of the node servers 2 shown in FIG. 4 described above, the illustration of the functional block and its description thereof are omitted.
  • the update management unit 116 functions. do.
  • the update management unit 116 manages the updates of the node terminal 1 and the operator terminal 3. Specifically, the update management unit 116 confirms the existence of update information for each of the node terminal 1 and the operator terminal 3 at a predetermined timing (for example, when the node terminal 1 is started), and updates as necessary. Performs processing control. As a result, the node terminal 1 and the operator terminal 3 are automatically updated, so that it becomes easy to add or update various applications using the blockchain BC at any time.
  • the file management unit 115 transmits the file F acquired by the file acquisition unit 114 to the node server 2 via the communication unit 19.
  • the node server 2 that has received the file F causes the distributed file system management unit 222 of the file management unit 213 to manage the file F.
  • the distributed file system management unit 222 acquires the hash value of the file F and transmits the information including the hash value to the file management unit 115 of the node terminal 1.
  • the file acquisition unit 311, the key management unit 312, the encryption unit 313, and the transmission control unit 314 function. Further, a private key DB 360 is provided in one area of the storage unit 38 of the operator terminal 3.
  • the file acquisition unit 311 acquires the file F to be saved in the blockchain BC by the operator U.
  • the key management unit 312 stores and manages the public key for encryption and the public key for signature in the blockchain BC. Further, the key management unit 312 stores and manages the private keys of the encryption public key and the signature public key in the private key DB 360. When the file F is encrypted or managed, the key management unit 312 acquires the encryption public key and the signature public key stored in the blockchain BC.
  • the encryption unit 313 encrypts the file F acquired by the file acquisition unit 311. Specifically, the encryption unit 313 encrypts the file F using the encryption public key acquired by the key management unit 312. Further, the encryption unit 313 accepts the record of the signature of the encrypted file F. Specifically, the encryption unit 313 accepts a signature record (electronic signature) by the operator U using the private key corresponding to the signature public key acquired by the key management unit 312. The other operator U who shared the file F can confirm that the signature of the file F was made by the operator U by using the signing public key. In this service, since the public key for signature is recorded in the blockchain BC, another operator U can easily verify that the signature is recorded by the operator U.
  • a signature record electronic signature
  • the transmission control unit 314 executes control to transmit the file F for which the encryption and the signature record have been received by the encryption unit 313 to the node terminal 1. As a result, all the files F transmitted from the operator terminal 3 are encrypted.
  • the storage and management of the file F is performed via the node terminal 1 arranged separately from the operator terminal 3 operated by the operator U. Further, the node terminal 1 can manage updates of the node terminal 1 itself and the operator terminal 3. As a result, the operator 3 can reduce the labor required for setting and the like in using this service.
  • the service is provided to a predetermined organization (for example, a company) by a service provider (not shown). That is, for example, a predetermined organization (for example, a company) has an initial cost (for example, hundreds of thousands to millions of yen) according to the number of operators U, the number of node terminals 1 and node servers 2, etc., and on the cloud C.
  • This service may be provided in consideration of a running fee (for example, several hundred thousand yen) for a predetermined period of the node server 2 of the above.
  • this service is not limited to those provided to a predetermined organization (for example, a company). That is, for example, it may be an individual who has a contract with a service provider.
  • five node terminals 1-1 to 1-5 are transferred from the service provider to a predetermined organization (for example, a company), but the present invention is not particularly limited to this. That is, for example, the node terminal 1 in which the application related to this service is pre-installed may be sold, and the individual who purchased the node terminal 1 may be provided with this service.
  • a predetermined organization for example, a company
  • the node terminals 1-1 to 1-5 are connected to the cloud C via the dedicated lines LL-1 to LL-5, respectively, so that they are connected to the cloud C as one node. It was supposed to work. Further, in the above-described embodiment, the node terminal 1 can execute a part or all of the predetermined processing related to the provision of the service. Specifically, for example, in the description of FIG. 1, the node server 2 has executed step ST3 of the storage process. Further, in the description of FIG. 4, the node terminal 1 has executed step ST3 of the saving process. However, the node terminal 1 and the node server 2 may perform a process such as acting as a part of a predetermined process related to the provision of this service.
  • the node terminal 1 may perform a part of the process in which the blockchain management unit 221 of the node server 2 calculates the hash value of the new block B3.
  • the amount of calculation of the node server 2 can be reduced by utilizing the computational resources of the node terminal 1.
  • the data to be stored in the file storage unit 260 of the node server 2 can be distributed and stored in the file storage unit 160 of the node terminal 1.
  • the information processing system related to this service can manage a large number of files without consuming the storage unit 28 of the node server 2.
  • the blockchain management function when the operator U who operates the node terminal 1-1 is authenticated, the blockchain management function is exhibited at the node terminal 1-1, but the blockchain at the node terminal 1
  • the conditions for whether or not the management function is exhibited are not limited to this. That is, for example, even when the operator U who operates the plurality of node terminals 1 is authenticated, the blockchain management function may not be exhibited at the node terminals 1-1. Further, for example, when the operator U who operates the plurality of node terminals 1 is not authenticated and the hardware key IDH is detected, only a part of the blockchain management functions is executed at the node terminal 1. May be done. Summarizing the above, it is not necessary for the blockchain management function to be exhibited in all of the plurality of node terminals 1.
  • the worker terminal 3 can bring the file F into a state managed by the network related to the blockchain by cooperating with the node terminal 1 and the node server 2. .
  • the "blockchain management function" means that when one or more data is instructed to be saved, the one or more data is stored by each of the nodes constituting the network related to the blockchain. It is a function to make it managed by the network.
  • step ST2 for moving the file and step ST3 for saving processing in FIG. 1 are examples of the blockchain management function. Therefore, since the worker terminal 3 has a blockchain management function, it can be grasped as an example of a node of the network related to the blockchain.
  • the node terminal 1-1 operated by the operator U has been described as exchanging various information with the node server 2-1.
  • the present invention is particularly limited to this. Not done. That is, for example, the node terminal 1-1 may exchange various information with a plurality of node servers 2 (for example, a part or all of the node servers 2-1 to 2-4).
  • the node servers 2-1 to 2-m are assumed to be arranged on the cloud C, but the present invention is not particularly limited to this. That is, for example, a part or all of the plurality of node servers 2 is arranged not on the cloud C but on a predetermined network (for example, a local area network or an intranet) including the node terminal 1 and the node server 2. May be good. That is, the node server 2 may be an on-premises server installed in a predetermined organization (for example, a company) to which the operator U belongs, instead of being installed on the cloud C.
  • a predetermined organization for example, a company
  • each of the node terminal 1, the node server 2, and the operator terminal 3 can exert (execute) a part or all of a predetermined function (process) related to the provision of this service.
  • a predetermined function process
  • the configurations of the node terminal 1, the node server 2, the operator terminal 3, and the like can be classified as follows.
  • the classification of the information processing devices node terminal 1, node server 2, operator terminal 3, etc. will be described with reference to FIGS. 4 and 7.
  • the node terminal 1 in which the blockchain management unit 121 and the distributed file system management unit 122 in FIG. 4 function, and the node server 2 in which the blockchain management unit 221 and the distributed file system management unit 222 function are examples of full nodes. That is, a full node is an information processing device that exhibits at least a function of extracting various information related to file F and managing it as a part of a block, and a function of encrypting and dividing and managing the entire data of file F. ..
  • the processing device is adopted as a full node. Therefore, the service provider (not shown) provides the operator U with the node terminal 1 which is a full node to extract various information about the file F in the entire service and manage the functions and files as a part of the block. It is possible to increase the number of information processing devices that share the function of encrypting and dividing and managing the entire F data itself. That is, it becomes easy for a service provider (not shown) to scale out in this service.
  • a terminal in the node terminal 1 of FIG. 7 in which the node management unit 113 functions and the blockchain storage unit 150 and the file storage unit 160 do not function is an example of a write node. That is, the write node is a function of extracting various information about the file F via the terminal (for example, the node terminal 1) itself and managing it as a part of a block, or encrypting and dividing the entire data of the file F itself.
  • An information processing device that exerts a management function and does not store a blockchain BC or a file F by the terminal itself.
  • the write node does not need to have a computational resource (for example, CPU 11) for calculating a hash value or the like, or a storage unit (for example, a storage unit 18) for storing an encrypted and divided file F. Therefore, the operator U can use this service via a light node (information processing device) which is relatively low cost. Further, since the write node does not store the blockchain BC or the file F, even if the write node is stolen, the recorded data is not directly stolen and the confidentiality of the file F is ensured.
  • a computational resource for example, CPU 11
  • a storage unit for example, a storage unit 18
  • a distributed file system node may be prepared separately. That is, the distributed file system node has a storage unit (for example, a storage unit 18) for storing the encrypted and divided file F, and can store various data in cooperation with the write node and the full node. can. Not limited to the above example, an information processing device having various functional blocks or a part of a storage unit may be connected to the network related to this service.
  • a storage unit for example, a storage unit 18
  • an information processing device having various functional blocks or a part of a storage unit may be connected to the network related to this service.
  • the hardware key IDH of FIG. 1 is assumed to be able to acquire predetermined information by the node terminal 1, but what kind of hardware the hardware key IDH is is not particularly limited. .. That is, the hardware key is sufficient as long as it is the hardware for exerting the blockchain management function on the node terminal 1. That is, the hardware key IDH is sufficient if it can detect that the operator U holds the hardware key IDH.
  • the hardware key IDH may be a flash memory having a USB (Universal Social Bus) standard connector or a card having an RFID (Radio Frequency Identification) function. That is, the hardware key IDH may be directly connected to the node terminal 1, may be connected by wire, or may be connected wirelessly.
  • the hardware key IDH may be hardware capable of displaying a predetermined identifier (for example, a sequence of one-time passwords or a two-dimensional bar code).
  • the node terminal 1 can detect the hardware key IDH by reading a predetermined identifier related to the hardware key IDH via the input unit 17 (for example, a keyboard or an imaging device).
  • the private key corresponding to each of the encryption public key and the signature public key is stored in the operator terminal 3, respectively. That is, when the private key corresponding to each of the encryption public key and the signature public key is stored in the operator terminal 3, the encryption public key and the signature public key are stored in the operator terminal 3, respectively. Since the private key corresponding to is stored, a different private key can be adopted for each of the operator terminals 3. As a result, in the storage and management of the file F, it is possible to individually manage the history of each of the operator terminals 3. This is suitable in an environment where there is little need to take out the operator terminal 3, for example, a desktop personal computer for an office.
  • the private keys corresponding to the encryption public key and the signature public key are not stored in the operator terminal 3 respectively, but may be stored in the node terminal 1 respectively.
  • the file F can be saved and managed by using the blockchain BC as in the above-described embodiment via the node terminal 1.
  • the operator terminal 3 does not store the private key corresponding to each of the encryption public key and the signature public key. Therefore, even if the operator U takes out the operator terminal 3, there is no risk of leaking the private key corresponding to each of the encryption public key and the signature public key.
  • the node terminal 1 When only one set of private key corresponding to each of the public key for encryption and the public key for signing is stored in the node terminal 1, the history of each of the plurality of operator terminals 3 locally connected to the node terminal 1 Can not be managed individually, but for example, the storage and management of the file F can be managed for each node terminal 1. Therefore, by arranging the node terminals 1 for each group (for example, department) in the office, storage and management may be performed for each group. A plurality of sets of private keys corresponding to the encryption public key and the signature public key may be stored in the node terminal 1 and may be used as appropriate.
  • this service is suitable for managing documents and a large amount of data.
  • this service is applied to still image, moving image, and audio data in addition to documents. Can be done.
  • this service can store and manage moving images, voices, and call histories of Web conferences and the like as a file F using a blockchain BC. As a result, the contents of the proceedings in the Web conference or the like can be saved and managed without falsification.
  • the above-mentioned series of processes can be executed by hardware or software.
  • the functional configuration of FIG. 4 is merely an example and is not particularly limited. That is, it suffices if the information processing system is provided with a function capable of executing the above-mentioned series of processes as a whole, and what kind of functional block is used to realize this function is not particularly limited to the example of FIG.
  • the location of the functional block is not particularly limited to FIG. 4, and may be arbitrary.
  • the functional block of the node terminal 1 may be transferred to the node server 2 or the like.
  • one functional block may be configured by a single piece of hardware, a single piece of software, or a combination thereof.
  • a program constituting the software is installed on a computer or the like from a network or a recording medium.
  • the computer may be a computer embedded in dedicated hardware.
  • the computer may be a computer capable of executing various functions by installing various programs, for example, a general-purpose smartphone or a personal computer in addition to a server.
  • a recording medium containing such a program is not only composed of a removable medium (not shown) distributed separately from the device main body in order to provide the program to the operator U, but is also preliminarily incorporated in the device main body. It is composed of a recording medium or the like provided to the operator U in this state.
  • the steps for describing a program recorded on a recording medium are not necessarily processed in chronological order, but also in parallel or individually, even if they are not necessarily processed in chronological order. It also includes the processing to be executed.
  • the term of the system means an overall device composed of a plurality of devices, a plurality of means, and the like.
  • the information processing system to which the present invention is applied can take various embodiments having the following configurations.
  • the information processing system to which the present invention is applied is A cloud (for example, FIG. 1) that functions as a node belonging to a network related to a blockchain (for example, a network including node terminals 1-1 to 1-5 and node servers 2-1 to 2-4 in FIG. 1).
  • a cloud for example, FIG. 1 that functions as a node belonging to a network related to a blockchain (for example, a network including node terminals 1-1 to 1-5 and node servers 2-1 to 2-4 in FIG. 1).
  • one or more first-class information processing devices for example, the node server 2 in FIGS. 1, 2 and 4) on the cloud C in FIG.
  • One or more type 2 information processing that is connected to the cloud via a dedicated line (for example, the dedicated line LL of FIGS. 1, 2 and 4) and functions as a node belonging to the network related to the blockchain.
  • Devices eg, node terminals 1 in FIGS.
  • the information processing system provided with the first-class information processing device on the cloud and the second information processing device connected to the cloud via a dedicated line as nodes belonging to the network related to the blockchain blocks the information.
  • the chain management function is demonstrated. That is, for example, not only the conventional first information processing device on the cloud but also the second information processing device connected to the cloud via a dedicated line functions as a node, thereby relating to the information processing of the first information processing device.
  • the load can be reduced. That is, it is possible to handle a large amount of data and prevent leakage of the data, and improve the convenience related to them.
  • a hardware key for example, the hardware key IDH in FIG. 1 for exerting the blockchain management function in a predetermined one of the above-mentioned one or more type 2 information processing devices. Can be further prepared.
  • the second information processing device connected to the cloud via a dedicated line also functions as a node, it is possible to evaluate whether or not the second information processing device is reliable based on the hardware key. can. As a result, the strength of security of the information processing system according to the present invention is improved.
  • the one or more data managed as a result of the blockchain management function can be restricted from accessing a person other than the person who has instructed to save the one or more data.
  • a third-class information processing device connected to the second-class information processing device is further provided.
  • the third-class information processing device can encrypt the data and record a predetermined signature on the encrypted data by using a predetermined public key stored in the blockchain. can.
  • the data transmitted from the type 3 information processing device to the type 2 information processing device is encrypted. Therefore, in the type 2 information processing device, only the encrypted data exists unless new data is created by the type 2 information processing device. As a result, even if the data stored in the type 2 information processing device or the type 2 information processing device itself is stolen, the confidentiality of the data can be ensured.
  • the second-class information processing device is Confirmation of the presence or absence of update information of the own machine and the third-class information processing device is performed at a predetermined timing, and when the predetermined conditions are satisfied, the update information is acquired and the update process of the own machine and the third-class information processing device is performed. Can be further controlled.
  • the type 2 information processing device and the type 3 information processing device are automatically updated, so that it becomes easy to add or update various applications using the blockchain at any time.
  • Distributed file system management unit 28 ... Storage unit, 250 ... Blockchain storage unit 260 ... File storage unit, 29 ... Communication unit, 31 ... CPU, 311 ... File acquisition unit, 312 ... Key management unit, 313 ... Encryption unit, 314 ... Transmission control unit 360 ... Private key 360, LL, LL-1 to LL-5 ... Dedicated line, IDH ... Hardware key, IDC ... Identification card, BC, BC-1 to BC- 4 ... Blockchain, FS, FS-1 to FS-4 ... File system, F ... File, D ... Folder, C ... Cloud

Abstract

This invention addresses the problem of handling a large amount of data and preventing leakage of such data, and improving convenience with regard to the same. This invention comprises: at least one node server 2 on a cloud C, each node server functioning as a node belonging to a network related to a blockchain; and at least one node terminal 1, each of which is connected to the cloud C via a dedicated line LL and functions as a node belonging to the network relating to the blockchain. Upon being instructed to save at least one file F, each of all the nodes constituting the network relating to the blockchain performs a blockchain management function to cause the at least one file F to be managed by the network. Due to this configuration, the foregoing problem is solved.

Description

情報処理システム、及びプログラムInformation processing system and program
 本発明は、情報処理システム、及びプログラムに関する。 The present invention relates to an information processing system and a program.
 近年、ブロックチェーンを活用した各種技術の開発が盛んである。例えば、文書の作成及び更新を行うエンティティ(情報処理装置)が、各バージョンの文書の状態を紐付けてブロックチェーンに登録させることにより、変更履歴を含めた文書の状態を検証可能に保存する情報処理システムに関する技術が存在した(例えば、特許文献1参照)。 In recent years, the development of various technologies utilizing blockchain has been active. For example, information in which an entity (information processing device) that creates and updates a document links the state of each version of the document and registers it in the blockchain to store the state of the document including the change history in a verifiable manner. There was a technique related to a processing system (see, for example, Patent Document 1).
特開2019-121946号公報Japanese Unexamined Patent Publication No. 2019-12194
 しかしながら、特許文献1に記載の技術を含む従来技術では、管理装置(ブロックチェーン管理装置)が、ブロックチェーンを管理していた。即ち、文書を管理するのは管理装置であって、管理可能な文書の量は、管理装置の性能により決定されることがあった。更に言えば、ブロックチェーンに作成及び更新された文書が埋め込まれる場合、文書そのものを秘匿にすることができなかった。 However, in the prior art including the technique described in Patent Document 1, the management device (blockchain management device) manages the blockchain. That is, it is the management device that manages the documents, and the amount of documents that can be managed may be determined by the performance of the management device. Furthermore, when a document created and updated is embedded in the blockchain, the document itself could not be kept secret.
 本発明は、大容量のデータの取り扱いや当該データの漏洩防止を実現し、それらに関する利便性を向上することを目的とする。 It is an object of the present invention to realize the handling of a large amount of data and the prevention of leakage of the data, and to improve the convenience related to them.
 上記目的を達成するため、本発明の一態様の情報処理システムは、
 ブロックチェーンに係るネットワークに属するノードとして夫々機能する、クラウド上の1以上の第1種情報処理装置と、
 前記クラウドに専用線を介して接続されて、前記ブロックチェーンに係る前記ネットワークに属するノードとして夫々機能する、1以上の第2種情報処理装置と、
 を備え、
 前記ブロックチェーンに係る前記ネットワークを構成する全ての前記ノードの夫々は、1以上のデータの保存が指示されると、当該1以上のデータを前記ネットワークで管理された状態にするブロックチェーン管理機能を発揮させる。
In order to achieve the above object, the information processing system of one aspect of the present invention is
One or more first-class information processing devices on the cloud that function as nodes belonging to the blockchain network, respectively.
One or more type 2 information processing devices that are connected to the cloud via a dedicated line and function as nodes belonging to the network related to the blockchain, respectively.
With
When each of the nodes constituting the network related to the blockchain is instructed to save one or more data, a blockchain management function for putting the one or more data in a state managed by the network is provided. Make it work.
 本発明の一態様のプログラムは、上述の本発明の一態様の情報処理システムに対応するプログラムである。 The program of one aspect of the present invention is a program corresponding to the above-mentioned information processing system of one aspect of the present invention.
 本発明によれば、大容量のデータの取り扱いや当該データの漏洩防止を実現し、それらに関する利便性を向上することができる。 According to the present invention, it is possible to handle a large amount of data and prevent leakage of the data, and to improve the convenience related to them.
本発明の一実施形態に係る情報処理システムが適用されるサービスの概要の一例を説明する模式図である。It is a schematic diagram explaining an example of the outline of the service to which the information processing system which concerns on one Embodiment of this invention is applied. 図1に示すサービスを提供する際に適用される本発明の一実施形態に係る情報処理システムの構成例を示す図である。It is a figure which shows the structural example of the information processing system which concerns on one Embodiment of this invention applied when providing the service shown in FIG. 図2の情報処理システムのうちノードサーバのハードウェア構成を示すブロック図である。It is a block diagram which shows the hardware configuration of the node server in the information processing system of FIG. 図3のノードサーバ及びノード端末の機能的構成の一例を示す機能ブロック図である。It is a functional block diagram which shows an example of the functional configuration of the node server and the node terminal of FIG. 図4の機能的構成を有するノードサーバ及びノード端末により管理されるブロックチェーン及び当該ブロックチェーンを用いて管理される各種データの関係性の一例を示す模式図である。It is a schematic diagram which shows an example of the relationship of the blockchain managed by a node server and a node terminal having a functional configuration of FIG. 4, and various data managed by using the blockchain. ノード端末に操作者端末をローカル接続させて本サービスを利用する場合の例を説明する模式図である。It is a schematic diagram explaining an example of using this service by locally connecting an operator terminal to a node terminal. 図6の場合における、ユーザ端末、ノード端末、及びノードサーバの機能的構成の一例を示す機能ブロック図である。FIG. 6 is a functional block diagram showing an example of functional configurations of a user terminal, a node terminal, and a node server in the case of FIG.
 以下、図面を参照して、本発明の実施形態について説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
 図1は、本発明の一実施形態に係る情報処理システムが適用されるサービス(以下、「本サービス」と呼ぶ)の概要の一例を説明する模式図である。 FIG. 1 is a schematic diagram illustrating an example of an outline of a service (hereinafter, referred to as “the service”) to which the information processing system according to the embodiment of the present invention is applied.
 本サービスは、図1に示す情報処理システムが適用されることで、ブロックチェーンに係る技術を用いた1以上のデータの管理が可能になるサービスである。なお、以下、本実施形態の説明において、1以上のデータの例としてファイルFの管理がされるものとする。
 本サービスは、図示せぬサービス提供者により、所定の団体(例えば会社)に対して提供される。ただし、本サービスを利用するための操作は、その所定の団体に属する操作者Uによってなされる。
This service is a service that enables the management of one or more data using the technology related to the blockchain by applying the information processing system shown in FIG. Hereinafter, in the description of the present embodiment, it is assumed that the file F is managed as an example of one or more data.
This service is provided to a predetermined organization (for example, a company) by a service provider (not shown). However, the operation for using this service is performed by the operator U who belongs to the predetermined organization.
 本サービスでは、ブロックチェーンに係るネットワークが構築される。このネットワークは、複数のノードにより構成され、少なくとも1つのノードはクラウドC上に存在する。
 図1の例では、サービス提供者により管理される4台のノードサーバ2-1乃至2-4の夫々が、クラウドCに配置されることで、1つのノードとして夫々機能する。
 また、図1の例では、サービス提供者から所定の団体(例えば会社)に対して5台のノード端末1-1乃至1-5が譲渡される。これらの5台のノード端末1-1乃至1-5の夫々は、専用線LL-1乃至LL-5の夫々を介してクラウドCに接続されることで、1つのノードとして夫々機能する。
 即ち、図1の例では、ノードサーバ2-1乃至2-4及びノード端末1-1乃至1-5の総計9台が、9つのノードの夫々として機能することで、ブロックチェーンに係るネットワークが構成される。
In this service, a network related to blockchain is constructed. This network is composed of a plurality of nodes, and at least one node exists on the cloud C.
In the example of FIG. 1, each of the four node servers 2-1 to 2-4 managed by the service provider functions as one node by being arranged in the cloud C.
Further, in the example of FIG. 1, five node terminals 1-1 to 1-5 are transferred from the service provider to a predetermined group (for example, a company). Each of these five node terminals 1-1 to 1-5 functions as one node by being connected to the cloud C via each of the dedicated lines LL-1 to LL-5.
That is, in the example of FIG. 1, a total of nine node servers 2-1 to 2-4 and node terminals 1-1 to 1-5 function as each of the nine nodes, thereby forming a network related to the blockchain. It is composed.
 なお、以下、ノード端末1-1乃至1-5を個々に区別する必要がない場合、これらをまとめて「ノード端末1」と呼ぶ。また、ノード端末1と呼んでいる場合には、専用線LL-1乃至LL-5をまとめて「専用線LL」と呼ぶ。また、ノードサーバ2-1乃至2-4を個々に区別する必要がない場合、これらをまとめて「ノードサーバ2」と呼ぶ。 Hereinafter, when it is not necessary to individually distinguish the node terminals 1-1 to 1-5, these are collectively referred to as "node terminal 1". When the node terminal 1 is called, the dedicated lines LL-1 to LL-5 are collectively referred to as "dedicated line LL". When it is not necessary to distinguish the node servers 2-1 to 2-4 individually, these are collectively referred to as "node server 2".
 ここで、専用線LLとは、特定の利用者専用の通信回線である。
 例えば、専用線における通信は、信頼されていない情報処理装置等も含んで構成されたネットワーク(例えば、インターネット)から隔離される。即ち、専用線LLで接続された情報処理装置同士の間の通信は、悪意を持った第三者等により盗聴や傍受される可能性が低い。即ち、本サービスは、専用線LLを介して利用されるため、第三者等により盗聴や傍受される可能性が低い状態で提供される。なお、専用線LLは、物理的にインターネット等から隔離されているものでなくてもよい。即ち例えば、VPN(Virtual Private Network)の技術を用いた仮想的な専用線も、上述の専用線LLとして採用され得る。
Here, the leased line LL is a communication line dedicated to a specific user.
For example, communication on a leased line is isolated from a network (for example, the Internet) configured to include an untrusted information processing device or the like. That is, communication between information processing devices connected by a dedicated line LL is unlikely to be eavesdropped or intercepted by a malicious third party or the like. That is, since this service is used via a dedicated line LL, it is provided in a state where there is a low possibility of eavesdropping or interception by a third party or the like. The leased line LL does not have to be physically isolated from the Internet or the like. That is, for example, a virtual dedicated line using VPN (Virtual Private Network) technology can also be adopted as the above-mentioned dedicated line LL.
 ここで、ブロックチェーンに係るネットワークに属する1つのノードとして機能するためには、ファイルシステムとブロックチェーンとが設けられる必要がある。
 なお、ここで、「ファイルシステム」とは、ファイルFのデータの全体そのものを保存や管理するシステムである。
Here, in order to function as one node belonging to the network related to the blockchain, it is necessary to provide a file system and a blockchain.
Here, the "file system" is a system that stores and manages the entire data of the file F itself.
 また、ここで、「ブロックチェーン」とは、本サービスを利用して管理される1以上のデータ(例えばファイルF)に関する各種情報(ファイルFに関するメタデータやハッシュといった健全性の検証に係るデータ等)が含まれたブロックがチェーンのように連結した一連のデータである。
 一般に、ブロックチェーンという単語は、分散型台帳技術や分散型ネットワークを意味し得る。即ち、ブロックチェーンの単語は、ブロックと呼ばれるデータがチェーンのように連結した一連のデータそのものや、それに関する技術及びネットワークを含んだ多義的な単語である。
 そこで、以下、ブロックチェーンを管理する分散型ネットワークを「ブロックチェーンに係るネットワーク」と呼び、ブロックがチェーンのように連結した一連のデータである「ブロックチェーン」と区別して呼ぶ。
Further, here, the "blockchain" refers to various information related to one or more data (for example, file F) managed by using this service (data related to soundness verification such as metadata and hash related to file F, etc.). ) Is a series of data in which blocks are connected like a chain.
In general, the word blockchain can mean distributed ledger technology or distributed networks. That is, a blockchain word is an ambiguous word that includes a series of data itself in which data called a block is connected like a chain, and technologies and networks related thereto.
Therefore, hereinafter, the decentralized network that manages the blockchain is referred to as a "network related to the blockchain", and is distinguished from the "blockchain" which is a series of data in which blocks are connected like a chain.
 具体的には例えば、図1の例では、ノードサーバ2-1乃至2-4の夫々には、ブロックチェーンBC-1乃至2-4の夫々と、ファイルシステムFS-1乃至FS-4の夫々とが設けられている。
 なお、以下、「ノードサーバ2」と呼んでいる場合、ブロックチェーンBC-1乃至2-4をまとめて「ブロックチェーンBC」と呼ぶと共に、ファイルシステムFS-1乃至FS-4をまとめて「ファイルシステムFS」と呼ぶ。
Specifically, for example, in the example of FIG. 1, each of the node servers 2-1 to 2-4 has a blockchain BC-1 to 2-4 and a file system FS-1 to FS-4, respectively. And are provided.
In the following, when the term "node server 2" is used, the blockchains BC-1 to 2-4 are collectively referred to as the "blockchain BC", and the file systems FS-1 to FS-4 are collectively referred to as the "file". It is called "system FS".
 また、詳しくは後述するが、ノード端末1は、本サービスの提供に係る所定の処理の一部又は全部を実行することができる。即ち、ノード端末1-1乃至1-5の夫々には、必要に応じて、上述のブロックチェーンBCやファイルシステムFSが設けられ得る。 Further, as will be described in detail later, the node terminal 1 can execute a part or all of the predetermined processing related to the provision of this service. That is, the blockchain BC and the file system FS described above may be provided in each of the node terminals 1-1 to 1-5, if necessary.
 ここで、ブロックチェーンに係るネットワークを構成するノード端末1及びノードサーバ2は、いずれもブロックチェーンに係るネットワークを構成する「ノード」である。また、ノード端末1及びノードサーバ2の両方は、本サービスの提供に係る所定の処理の一部又は全部を実行する情報処理装置である。そこで、以下、ノード端末1及びノードサーバ2を個々に区別する必要が無い場合、これらをまとめて「ノード」と適宜呼ぶ。 Here, the node terminal 1 and the node server 2 that make up the network related to the blockchain are both "nodes" that make up the network related to the blockchain. Further, both the node terminal 1 and the node server 2 are information processing devices that execute a part or all of a predetermined process related to the provision of this service. Therefore, hereinafter, when it is not necessary to distinguish the node terminal 1 and the node server 2 individually, these are collectively referred to as a "node" as appropriate.
 上述をまとめると、本実施形態におけるブロックチェーンに係るネットワークは、「ブロックチェーンに係るネットワークに属するノードとして夫々機能する、クラウドC上のノードサーバ2-1乃至2-4」と、「クラウドCに専用線LL-1乃至LL-5を介して接続されて、ブロックチェーンに係るネットワークに属するノードとして夫々機能する、ノード端末1-1乃至1-5」と、を備えて構成される。 Summarizing the above, the network related to the blockchain in the present embodiment includes "node servers 2-1 to 2-4 on the cloud C, which function as nodes belonging to the network related to the blockchain, respectively" and "to the cloud C. Node terminals 1-1 to 1-5, which are connected via dedicated lines LL-1 to LL-5 and function as nodes belonging to a network related to a blockchain, respectively.
 以下、操作者Uが本サービスを利用してファイルFを管理する場合の流れに沿って、本サービスの概要を説明する。 The outline of this service will be described below along with the flow when the operator U manages the file F using this service.
 なお、本実施形態の例では、操作者Uが本サービスを利用してファイルFを管理させるため操作を行う場合、ハードウェアキーIDHが必要となるものとする。また、本実施形態の例ではさらに、操作者Uがノード端末1-1を操作するためには当該操作者Uの認証用の身分証IDCが必要となるものとする。そして、本実施形態の例では、ノード端末1-1のみが操作者Uによる操作や使用が許されており、操作が可能になるためには、ハードウェアキーIDH及び身分証IDCを1-1に読み込ませる必要があるものとする。
 そこで、前提として、操作者Uは、本サービスを利用するためのハードウェアキーIDHや身分証IDCを保有しているものとする。また、ハードウェアキーIDHや身分証IDCに関する情報は、予め本サービスで利用されるノードにより管理されているものとする。
In the example of the present embodiment, when the operator U performs an operation to manage the file F by using this service, the hardware key IDH is required. Further, in the example of the present embodiment, in order for the operator U to operate the node terminal 1-1, an identification card IDC for authentication of the operator U is required. Then, in the example of the present embodiment, only the node terminal 1-1 is allowed to be operated and used by the operator U, and in order for the operation to be possible, the hardware key IDH and the ID card IDC are 1-1. It is assumed that it needs to be read by.
Therefore, as a premise, it is assumed that the operator U has a hardware key IDH and an ID card IDC for using this service. In addition, the information related to the hardware key IDH and the ID card IDC shall be managed in advance by the node used in this service.
 まず、操作者Uは、図1に示す本人認証のステップST1に係る各種操作を実行する。 First, the operator U executes various operations related to the personal authentication step ST1 shown in FIG.
 具体的には例えば、操作者Uは、ハードウェアキーIDHをノード端末1-1に接続する。ノード端末1は、ハードウェアキーIDHから取得できる所定の情報とノードにより管理されているハードウェアキーIDHに関する情報とを照合する。正しいハードウェアキーIDHである旨が照合された場合、ノード端末1は、操作者Uを本サービスの利用者であるものとして認証する。
 また、例えば、操作者Uは、ノード端末1-1に接続された図示せぬ無線式カードリーダに操作者U自身の身分証IDCをかざす。ノード端末1-1は、身分証IDCから取得できる所定の情報とノードにより管理されている身分証IDCに関する情報とを照合する。正しい身分証IDCである旨が照合された場合、ノード端末1-1は、操作者Uを本サービスの利用者の本人であるものとして認証する。
Specifically, for example, the operator U connects the hardware key IDH to the node terminal 1-1. The node terminal 1 collates the predetermined information that can be acquired from the hardware key IDH with the information about the hardware key IDH managed by the node. When it is verified that the hardware key IDH is correct, the node terminal 1 authenticates the operator U as a user of this service.
Further, for example, the operator U holds the IDC of the operator U himself / herself over a wireless card reader (not shown) connected to the node terminal 1-1. The node terminal 1-1 collates the predetermined information that can be acquired from the ID card with the information about the ID card managed by the node. When it is verified that the ID card is correct, the node terminal 1-1 authenticates the operator U as the person who is the user of this service.
 このように、ノード端末1-1は、ハードウェアキーIDH及び身分証IDCの両方により、操作者Uは本サービスの利用者であって操作者U本人であることを、認証することができる。即ち、本サービスで利用されるノードにより管理されているハードウェアキーIDH及び身分証IDCの何れか一方でも保有しない第三者は、本サービスを利用することはできない。以下、操作者Uが本サービスの利用者であって本人であることが認証されたものとして説明する。
 操作者Uが本サービスの利用者であって本人であることが認証された場合、ノード端末1は、ブロックチェーンに係るネットワークのノードとして機能させられる。即ち、ノード端末1-1において、後述するブロックチェーン管理機能等が機能させられる。その結果として、本サービスが操作者Uに提供される。
 ここで、「ブロックチェーン管理機能」とは、1以上のデータの保存が指示された場合、ブロックチェーンに係るネットワークを構成するノードの夫々により、当該1以上のデータを当該ネットワークで管理された状態にする機能である。図1のファイル移動のステップST2及び保存処理のステップST3は、ブロックチェーン管理機能の一例である。
In this way, the node terminal 1-1 can authenticate that the operator U is the user of the service and the operator U himself / herself by both the hardware key IDH and the ID card. That is, a third party who does not have either the hardware key IDH or the ID card managed by the node used in this service cannot use this service. Hereinafter, it is assumed that the operator U is a user of this service and has been authenticated as the person himself / herself.
When the operator U is a user of this service and is authenticated to be the person himself / herself, the node terminal 1 is made to function as a node of the network related to the blockchain. That is, in the node terminal 1-1, the blockchain management function and the like, which will be described later, are made to function. As a result, this service is provided to the operator U.
Here, the "blockchain management function" is a state in which one or more data is managed by each of the nodes constituting the network related to the blockchain when the storage of one or more data is instructed. It is a function to make. The file movement step ST2 and the save process step ST3 in FIG. 1 are examples of the blockchain management function.
 なお、ノード端末1-1がブロックチェーンに係るネットワークのノードとして機能させられる場合、ノード端末1-1は、クラウドC上の複数のノードサーバ2のうち何れかのノードサーバ2と専用線LLを介して情報の授受を行う。以下、図1の説明において、操作者Uにより操作されたノード端末1-1は、ノードサーバ2-1と各種情報の授受を行うものとして説明する。 When the node terminal 1-1 is made to function as a node of the network related to the blockchain, the node terminal 1-1 connects with any node server 2 among the plurality of node servers 2 on the cloud C and the dedicated line LL. Information is exchanged through. Hereinafter, in the description of FIG. 1, the node terminal 1-1 operated by the operator U will be described as exchanging various information with the node server 2-1.
 次に、操作者Uは、図1に示すファイル移動のステップST2に係る各種操作を実行する。
 即ち、操作者Uは、ファイル移動のステップST2において、1以上のデータの保存を指示する。例えば、操作者Uは、本サービスで管理したい所定のファイルFを専用のフォルダDに格納する操作を行うことにより、ファイルFの保存を指示する。
 具体的には例えば、操作者Uは、ノード端末1-1により提供される所定のユーザインターフェースを操作することで、本サービスで管理したい所定のファイルFを専用のフォルダDに格納するための操作を行う。
 ここで、専用のフォルダDは、本サービスを提供するアプリケーションプログラムにより監視されている。その結果、専用のフォルダDに格納されたファイルFは、本サービスにより管理される1以上のデータとして把握され、後述する保存処理の対象のデータとなる。
Next, the operator U executes various operations related to the file movement step ST2 shown in FIG.
That is, the operator U instructs to save one or more data in the file movement step ST2. For example, the operator U instructs to save the file F by performing an operation of storing a predetermined file F to be managed by this service in a dedicated folder D.
Specifically, for example, the operator U operates a predetermined user interface provided by the node terminal 1-1 to store a predetermined file F to be managed by the service in a dedicated folder D. I do.
Here, the dedicated folder D is monitored by the application program that provides this service. As a result, the file F stored in the dedicated folder D is grasped as one or more data managed by this service, and becomes the target data of the storage process described later.
 以下、上述のように操作者Uにより1以上のデータであるファイルFの保存の指示がされた場合における、ノードサーバ2-1による保存処理の概要について、図1を用いて説明する。なお、ノードサーバ2-1による保存処理の詳細は、図5を用いて説明する。 Hereinafter, the outline of the saving process by the node server 2-1 when the operator U gives an instruction to save the file F which is one or more data as described above will be described with reference to FIG. The details of the storage process by the node server 2-1 will be described with reference to FIG.
 次に、ノードサーバ2-1において、図1に示す保存処理のステップST3に係る各種機能が発揮される。その結果、保存処理のステップST3において、ノードサーバ2-1は、ファイルFをブロックチェーンに係るネットワークで管理された状態にする。 Next, on the node server 2-1 various functions related to step ST3 of the storage process shown in FIG. 1 are exhibited. As a result, in step ST3 of the storage process, the node server 2-1 puts the file F in a state managed by the network related to the blockchain.
 具体的には、図1に示すように、暗号化及び分割の機能ブロックFB1は、ファイルFを取得する。これにより、暗号化及び分割のステップST3-1において、暗号化及び分割の機能ブロックFB1は、ファイルF1を、暗号化及び分割する。 Specifically, as shown in FIG. 1, the encryption and division functional block FB1 acquires the file F. As a result, in the encryption / division step ST3-1, the encryption / division functional block FB1 encrypts and divides the file F1.
 次に、図1に示すように、ブロックチェーン管理の機能ブロックFB2は、暗号化及び分割されたファイルFを「ファイル分散保存、履歴保存」される。
 即ち、ブロックチェーン管理の機能ブロックFB2は、暗号化及び複数に分割されたファイルFを、ファイルシステムFS-1乃至FS-4に分散して保存される。
 また、ファイルFに関する各種情報は、ブロックチェーンBCに履歴として保存される。具体的には、ブロックチェーンに係る所定の処理の後、ノードサーバ2-1乃至2-4の夫々が備えるブロックチェーンBC-1乃至BC-4の夫々全てに履歴として保存される。
 なお、ブロックチェーンBCに履歴として保存されるファイルFに関する各種情報(ファイルFに関するメタデータやハッシュといった健全性の検証に係るデータ等)の詳細は、図5を用いて説明する。
Next, as shown in FIG. 1, the blockchain management functional block FB2 "file distributed storage, history storage" of the encrypted and divided file F.
That is, the functional block FB2 of the blockchain management distributes and stores the encrypted file F and the file F divided into a plurality of files F in the file systems FS-1 to FS-4.
Further, various information about the file F is stored in the blockchain BC as a history. Specifically, after a predetermined process related to the blockchain, it is stored as a history in all of the blockchains BC-1 to BC-4 provided in each of the node servers 2-1 to 2-4.
The details of various information related to the file F (data related to the verification of soundness such as metadata and hashes related to the file F) stored as a history in the blockchain BC will be described with reference to FIG.
 上述したように、ノードサーバ2-1において、図1に示す保存処理のステップST3に係る各種機能として、暗号化及び分割の機能ブロックFB1と、ブロックチェーン管理の機能ブロックFB2との機能が発揮される。その結果、ノードサーバ2-1は、ファイルFをブロックチェーンに係るネットワークで管理された状態にする。 As described above, in the node server 2-1 as various functions related to the storage process step ST3 shown in FIG. 1, the functions of the encryption and division functional block FB1 and the blockchain management functional block FB2 are exhibited. NS. As a result, the node server 2-1 puts the file F in a state managed by the network related to the blockchain.
 上述したように、ファイルFの履歴は、複数のノードサーバ2の夫々が備えるブロックチェーンBCの夫々に保存される。その結果、ファイルFが改竄された場合、ノードの夫々は、ファイルFが改竄された旨を検知することが可能となる。換言すれば、本サービスにより健全性を検証されたファイルFは、当該ファイルFのデータが正当なものである旨が、担保される。 As described above, the history of the file F is stored in each of the blockchain BCs provided in each of the plurality of node servers 2. As a result, when the file F is tampered with, each of the nodes can detect that the file F has been tampered with. In other words, the file F whose soundness has been verified by this service is guaranteed that the data of the file F is valid.
 また、上述したように、ファイルFは、複数のノードサーバ2の夫々が備えるファイルシステムFSの夫々に暗号化及び分割された上で保存される。即ち、ファイルFは暗号化されてファイルシステムFSに保存される。
 また、ファイルFは分割されてファイルシステムFSに保存される。これにより、ファイルFを復号する際には、他のノードから分割された他のファイルFの断片を取得する必要がある。
 このように、ファイルFを格納した操作者U以外は、ファイルFを復号することは困難である。即ち、本サービスは、ファイルFのデータの漏洩を防ぐことができる。
 更に言えば、大きなファイルサイズのファイルFについては、分割することにより保存する際の取り扱いが用意になるという効果を奏することもできる。
Further, as described above, the file F is stored after being encrypted and divided in each of the file systems FS provided in each of the plurality of node servers 2. That is, the file F is encrypted and stored in the file system FS.
Further, the file F is divided and saved in the file system FS. As a result, when decrypting the file F, it is necessary to acquire a fragment of the other file F divided from the other node.
As described above, it is difficult to decrypt the file F except for the operator U who stores the file F. That is, this service can prevent the leakage of the data of the file F.
Furthermore, for a file F having a large file size, it is possible to achieve the effect that handling when saving is easy by dividing the file F.
 上述をまとめると、本サービスは、大容量のデータの取り扱いや当該データの漏洩防止を実現することが可能なデータの管理を行うサービスである。 Summarizing the above, this service is a service that manages data that can handle large amounts of data and prevent leakage of the data.
 以上、図1を用いて、本サービスの概要を説明した。
 以下、図2乃至図4を用いて、本サービスの図1に示すサービスを提供する際に適用される情報処理システムについて説明する。
 図2は、図1に示すサービスを提供する際に適用される本発明の一実施形態に係る情報処理システムの構成例を示す図である。
The outline of this service has been described above with reference to FIG.
Hereinafter, the information processing system applied when the service shown in FIG. 1 of this service is provided will be described with reference to FIGS. 2 to 4.
FIG. 2 is a diagram showing a configuration example of an information processing system according to an embodiment of the present invention applied when the service shown in FIG. 1 is provided.
 なお、図1の説明において、サービス提供者により管理されるノードサーバ2は4台であって、サービス提供者から所定の団体に対して譲渡されるノード端末1は5台であるものとしたが、特にこれに限定されない。
 即ち、本サービスで用いられる本実施形態の情報処理システムは、図2に示すように、n台(nは1以上の任意の整数値)のノード端末1-1乃至1-nと、m台(mは、nとは独立した、1以上の任意の整数値)のノードサーバ2-1乃至2-mとを含む様に構成されていてもよい。
In the description of FIG. 1, it is assumed that the number of node servers 2 managed by the service provider is four, and the number of node terminals 1 transferred from the service provider to a predetermined organization is five. , Not particularly limited to this.
That is, as shown in FIG. 2, the information processing system of the present embodiment used in this service includes n node terminals 1-1 to 1-n and m units (n is an arbitrary integer value of 1 or more). (M may be an arbitrary integer value of 1 or more independent of n) and may be configured to include the node servers 2-1 to 2-m.
 ノード端末1-1乃至1-nの夫々は、専用線LL-1乃至LL-nの夫々を介してクラウドCに接続されている。
 ノードサーバ2-1乃至2-mは、クラウドC上に配置されている。また、ノードサーバ2-1乃至2-mは、相互に本サービスに係る各種の情報の授受を行うことができる。
 ノード端末1-1乃至1-nの夫々は、クラウドC上のノードサーバ2-1乃至2-mのうちいずれかのノードサーバ2と、本サービスに係る各種の情報の授受を行うことができる。
Each of the node terminals 1-1 to 1-n is connected to the cloud C via each of the dedicated lines LL-1 to LL-n.
The node servers 2-1 to 2-m are arranged on the cloud C. In addition, the node servers 2-1 to 2-m can exchange various information related to this service with each other.
Each of the node terminals 1-1 to 1-n can exchange various information related to this service with any of the node servers 2-1 to 2-m on the cloud C. ..
 図3は、図2の情報処理システムのうちノード端末のハードウェア構成を示すブロック図である。 FIG. 3 is a block diagram showing the hardware configuration of the node terminal in the information processing system of FIG.
 ノード端末1は、CPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、バス14と、入出力インターフェース15と、出力部16と、入力部17と、記憶部18と、通信部19と、ドライブ20と、を備えている。 The node terminal 1 includes a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 13, a bus 14, an input / output interface 15, an output unit 16, and an input unit 17. A storage unit 18, a communication unit 19, and a drive 20 are provided.
 CPU11は、ROM12に記録されているプログラム、又は、記憶部18からRAM13にロードされたプログラムに従って各種の処理を実行する。
 RAM13には、CPU11が各種の処理を実行する上において必要なデータ等も適宜記憶される。
The CPU 11 executes various processes according to the program recorded in the ROM 12 or the program loaded from the storage unit 18 into the RAM 13.
Data and the like necessary for the CPU 11 to execute various processes are also appropriately stored in the RAM 13.
 CPU11、ROM12及びRAM13は、バス14を介して相互に接続されている。このバス14にはまた、入出力インターフェース15も接続されている。入出力インターフェース15には、出力部16、入力部17、記憶部18、通信部19及びドライブ20が接続されている。 The CPU 11, ROM 12 and RAM 13 are connected to each other via the bus 14. An input / output interface 15 is also connected to the bus 14. An output unit 16, an input unit 17, a storage unit 18, a communication unit 19, and a drive 20 are connected to the input / output interface 15.
 出力部16は、ディスプレイやスピーカ等で構成され、各種情報を画像や音声として出力する。
 入力部17は、キーボードやマウス等で構成され、各種情報を入力する。
The output unit 16 is composed of a display, a speaker, and the like, and outputs various information as images and sounds.
The input unit 17 is composed of a keyboard, a mouse, and the like, and inputs various information.
 記憶部18は、ハードディスクやDRAM(Dynamic Random Access Memory)等で構成され、各種データを記憶する。
 通信部19は、インターネットを含むネットワークNを介して他の装置(図1の例ではノードサーバ2)との間で通信を行う。
The storage unit 18 is composed of a hard disk, a DRAM (Dynamic Random Access Memory), or the like, and stores various data.
The communication unit 19 communicates with another device (node server 2 in the example of FIG. 1) via the network N including the Internet.
 ドライブ20には、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等よりなる、リムーバブルメディア41が適宜装着される。ドライブ20によってリムーバブルメディア41から読み出されたプログラムは、必要に応じて記憶部18にインストールされる。
 また、リムーバブルメディア41は、記憶部18に記憶されている各種データも、記憶部18と同様に記憶することができる。
A removable media 41 made of a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is appropriately mounted on the drive 20. The program read from the removable media 41 by the drive 20 is installed in the storage unit 18 as needed.
Further, the removable media 41 can also store various data stored in the storage unit 18 in the same manner as the storage unit 18.
 なお、図示はしないが、図2の情報処理システムのノードサーバ2は図3に示すハードウェア構成と基本的に同様の構成を有している。即ち、ノードサーバ2は、図3のノード端末1のCPU11、ROM12、RAM13、バス14、入出力インターフェース15、出力部16、入力部17、記憶部18、通信部19、及びドライブ20の夫々と同様のハードウェア構成として、CPU21、ROM22、RAM23、バス24、入出力インターフェース25、出力部26、入力部27、記憶部28、通信部29、及びドライブ30の夫々を備える。 Although not shown, the node server 2 of the information processing system of FIG. 2 has basically the same configuration as the hardware configuration shown in FIG. That is, the node server 2 includes the CPU 11, ROM 12, RAM 13, bus 14, input / output interface 15, output unit 16, input unit 17, storage unit 18, communication unit 19, and drive 20 of the node terminal 1 shown in FIG. Similar hardware configurations include a CPU 21, a ROM 22, a RAM 23, a bus 24, an input / output interface 25, an output unit 26, an input unit 27, a storage unit 28, a communication unit 29, and a drive 30.
 以下、図4を用いて、図1のステップST1乃至ST3に対応する処理が実行される際のノード端末1及びノードサーバ2の機能的構成の一例について説明する。 Hereinafter, an example of the functional configuration of the node terminal 1 and the node server 2 when the processes corresponding to steps ST1 to ST3 of FIG. 1 are executed will be described with reference to FIG.
 図4は、図3のノード端末及びノードサーバの機能的構成の一例を示す機能ブロック図である。なお、説明の簡単化のため、図4の説明において、ノード端末1及びノードサーバ2の夫々は、1台のみ図示している。 FIG. 4 is a functional block diagram showing an example of the functional configuration of the node terminal and the node server of FIG. For the sake of simplification of the description, in the description of FIG. 4, only one node terminal 1 and one node server 2 are shown.
 図1の本人認証のステップST1に対応する処理が実行される際には、ノード端末1のCPU11において、ハードウェアキー検出部111と、本人認証部112と、ノード管理部113とが機能する。また、ノードサーバ2のCPU21において、ノード管理部211が機能する。 When the process corresponding to the personal authentication step ST1 of FIG. 1 is executed, the hardware key detection unit 111, the personal authentication unit 112, and the node management unit 113 function in the CPU 11 of the node terminal 1. Further, the node management unit 211 functions in the CPU 21 of the node server 2.
 ノード端末1のハードウェアキー検出部111は、ノード端末1に接続されたハードウェアキーIDHを検出する。操作者Uがノード端末1にハードウェアキーIDHを接続した場合、ハードウェアキー検出部111は、ハードウェアキーIDHから取得できる所定の情報とノードにより管理されているハードウェアキーIDHに関する情報とに基づいて、ハードウェアキーIDHを検出する。
 即ち、ハードウェアキー検出部111は、ノード端末1に接続されたハードウェアキーや他のデバイスが、本サービスに係るハードウェアキーIDHであるか否かを判定する。そして、本サービスに係るハードウェアキーIDHであると判定された場合に、ノード端末1に接続されたハードウェアキーIDHが検出されたものとする。
The hardware key detection unit 111 of the node terminal 1 detects the hardware key IDH connected to the node terminal 1. When the operator U connects the hardware key IDH to the node terminal 1, the hardware key detection unit 111 sets the predetermined information that can be acquired from the hardware key IDH and the information about the hardware key IDH managed by the node. Based on this, the hardware key IDH is detected.
That is, the hardware key detection unit 111 determines whether or not the hardware key or other device connected to the node terminal 1 is the hardware key IDH related to this service. Then, when it is determined that the hardware key IDH is related to this service, it is assumed that the hardware key IDH connected to the node terminal 1 is detected.
 本人認証部112は、ノード端末1で読み込まれた身分証IDCにより、操作者Uが本サービスの操作者U本人であるかを認証する。操作者Uが自身の身分証IDCをノード端末1に読み込ませた場合、身分証IDCから取得できる所定の情報とノードにより管理されている身分証IDCに関する情報とに基づいて、操作者Uを本サービスの利用者の本人であるものとして認証する。 The personal authentication unit 112 authenticates whether the operator U is the operator U of the service by using the identification card IDC read by the node terminal 1. When the operator U loads his / her own IDC into the node terminal 1, the operator U is read based on the predetermined information that can be obtained from the IDC and the information about the IDC managed by the node. Authenticate as the person who uses the service.
 ノード管理部113は、ハードウェアキー検出部111によりハードウェアキーIDHが検出され、且つ、本人認証部112により操作者Uが本サービスの操作者U本人であると認証された場合、ノード端末1をブロックチェーンに係るネットワークのノードとして管理する。
 また、この場合、ノードサーバ2のノード管理部211は、ノード端末1をブロックチェーンに係るネットワークのノードとして管理する。即ち、ノード端末1のノード管理部113と、ノードサーバ2のノード管理部211とは、協働することで、ノード端末1をブロックチェーンに係るネットワークのノードとして管理することができる。
In the node management unit 113, when the hardware key IDH is detected by the hardware key detection unit 111 and the operator U is authenticated by the personal authentication unit 112 as the operator U of the service, the node terminal 1 Is managed as a node of the network related to the blockchain.
Further, in this case, the node management unit 211 of the node server 2 manages the node terminal 1 as a node of the network related to the blockchain. That is, the node management unit 113 of the node terminal 1 and the node management unit 211 of the node server 2 can manage the node terminal 1 as a node of the network related to the blockchain by cooperating with each other.
 このように、操作者UがハードウェアキーIDH及び身分証IDCに基づいて本サービスを利用するための操作が認められた操作者U自身であると認証された場合、ノード端末1は、ブロックチェーンに係るネットワークのノードとして管理される。 In this way, when the operator U is authenticated to be the operator U himself who is authorized to operate this service based on the hardware key IDH and the ID card, the node terminal 1 is set to the block chain. It is managed as a node of the network related to.
 ここで、所謂コンソーシアム型やプライベート型のブロックチェーンに係るネットワークには、信頼できる情報処理装置のみがノードとして備えられるのが好適である。そこで、本サービスでは、ノードサーバ2の他のノードとして、ハードウェアキーIDH及び身分証IDCに基づいて認証されたノード端末1が、信頼できる情報処理装置として、ブロックチェーンに係るネットワークのノードとして管理される。
 このようにして、本サービスでは、信頼できるノード端末1のみが、ノードサーバ2と協働して、ブロックチェーンに係るネットワークに備えられるように管理される。
 ブロックチェーンに係るネットワークに備えられるように管理されたノード端末1は、後述するブロックチェーン管理機能を発揮することができる。即ち、ハードウェアキーIDHは、複数のノード端末1のうち所定の1つでブロックチェーン管理機能を発揮するために本発明の一実施形態に係る情報処理システムに備えられていると言える。
Here, it is preferable that only a reliable information processing device is provided as a node in a network related to a so-called consortium type or private type blockchain. Therefore, in this service, as another node of the node server 2, the node terminal 1 authenticated based on the hardware key IDH and the identification IDC is managed as a reliable information processing device as a node of the network related to the blockchain. Will be done.
In this way, in this service, only the reliable node terminal 1 is managed in cooperation with the node server 2 so as to be provided in the network related to the blockchain.
The node terminal 1 managed so as to be provided in the network related to the blockchain can exert the blockchain management function described later. That is, it can be said that the hardware key IDH is provided in the information processing system according to the embodiment of the present invention in order to exert the blockchain management function in a predetermined one of the plurality of node terminals 1.
 図1のファイル管理のステップST2及び保存処理のステップST3に対応する処理が実行される際には、ノード端末1のCPU11において、ノード管理部113と、ファイル取得部114と、ファイル管理部115とが機能する。また、ノード端末1の記憶部18の一領域には、ブロックチェーン記憶部150と、ファイル記憶部160とが設けられている。
 また、ノードサーバ2のCPU21において、ノード管理部211と、ファイル管理部213とが機能する。また、ノードサーバ2の記憶部28の一領域には、ブロックチェーン記憶部250と、ファイル記憶部260とが設けられている。
When the processes corresponding to the file management step ST2 and the save process step ST3 of FIG. 1 are executed, the node management unit 113, the file acquisition unit 114, and the file management unit 115 are executed in the CPU 11 of the node terminal 1. Works. Further, a blockchain storage unit 150 and a file storage unit 160 are provided in one area of the storage unit 18 of the node terminal 1.
Further, in the CPU 21 of the node server 2, the node management unit 211 and the file management unit 213 function. Further, a blockchain storage unit 250 and a file storage unit 260 are provided in one area of the storage unit 28 of the node server 2.
 なお、上述したように、ノード端末1は、本サービスの提供に係る所定の処理の一部又は全部を実行することができる。そこで、図4の説明においては、図1の説明における保存処理のステップST3の処理は、基本的にノード端末1が実行するものとして説明する。また、上述したように、ファイル管理のステップST2や保存処理のステップST3は、ブロックチェーン管理機能の一例である。 As described above, the node terminal 1 can execute a part or all of the predetermined processing related to the provision of this service. Therefore, in the description of FIG. 4, the process of step ST3 of the storage process in the description of FIG. 1 is basically described as being executed by the node terminal 1. Further, as described above, the file management step ST2 and the saving process step ST3 are examples of the blockchain management function.
 まず、操作者Uは、ノード端末1-1により提供される所定のユーザインターフェースを操作することで、本サービスで管理したい所定のファイルFを専用のフォルダDに格納するための操作を行う。
 ここで、専用のフォルダDは、本サービスを提供するアプリケーションプログラムにより監視されている。その結果、ファイル取得部114は、専用のフォルダDに格納されたファイルFを、本サービスにより管理される1以上のデータとして取得する。
First, the operator U operates a predetermined user interface provided by the node terminal 1-1 to perform an operation for storing a predetermined file F to be managed by the service in a dedicated folder D.
Here, the dedicated folder D is monitored by the application program that provides this service. As a result, the file acquisition unit 114 acquires the file F stored in the dedicated folder D as one or more data managed by this service.
 ファイル管理部115は、ブロックチェーンBCと、ファイルシステムFSとを利用して、ファイルFを管理する。
 ファイル管理部115は、ブロックチェーン管理部121と、分散ファイルシステム管理部122とを有する。
The file management unit 115 manages the file F by using the blockchain BC and the file system FS.
The file management unit 115 includes a blockchain management unit 121 and a distributed file system management unit 122.
 ブロックチェーン管理部121は、ファイルFに関する各種情報(ファイルFに関するメタデータやハッシュといった健全性の検証に係るデータ等)を抽出し、ブロックの一部として管理する。また、ブロックチェーン管理部121は、ノード管理部113により管理されている、ブロックチェーンに係るネットワークに備えられた他のノードに、ファイルFに関する各種情報をブロックチェーンの新たなブロックの一部として管理させる。
 即ち、詳細は図5を用いて後述するが、ノード端末1のブロックチェーン管理部121は、ノードサーバ2のブロックチェーン管理部221と協働して、ファイルFに関する各種情報をブロックチェーンの新たなブロックの一部として管理する。
The blockchain management unit 121 extracts various information related to the file F (data related to soundness verification such as metadata and hash related to the file F) and manages the information as a part of the block. Further, the blockchain management unit 121 manages various information related to the file F to other nodes provided in the network related to the blockchain, which are managed by the node management unit 113, as a part of a new block of the blockchain. Let me.
That is, although the details will be described later with reference to FIG. 5, the blockchain management unit 121 of the node terminal 1 cooperates with the blockchain management unit 221 of the node server 2 to provide various information regarding the file F to the blockchain. Manage as part of a block.
 このように、ブロックチェーン管理部121は、抽出したファイルFに関する各種情報を、ブロックチェーンに係るネットワークに備えられた全てのノードに管理させることができる。これにより、悪意を持った第三者等にとって、ファイルFに関する各種情報を改竄するといったことが困難となる。 In this way, the blockchain management unit 121 can have all the nodes provided in the network related to the blockchain manage various information related to the extracted file F. This makes it difficult for a malicious third party or the like to falsify various information related to the file F.
 また、分散ファイルシステム管理部122は、ファイルFのデータの全体そのものを、暗号化及び分割して管理する。
 このとき、分散ファイルシステム管理部122は、ブロックチェーン管理機能の結果として管理されたファイルFを、ファイルFの保存の指示をした操作者U以外の者に対するアクセス制限を課して管理する。即ち、例えば、ファイル管理部115は、ブロックチェーンに係るネットワークに属するノードの夫々が有する記憶部に、アクセス制御を設けて、操作者U毎に分けることができる。
 具体的には例えば、分散ファイルシステム管理部122は、ハードウェアキーIDHや身分証IDCに含まれる情報を用いて、ファイルFのデータの全体そのものを暗号化する。即ち、分散ファイルシステム管理部122は、ファイルFを暗号化することで、ハードウェアキーIDHや身分証IDCを保有する操作者Uのみにより復号することができる状態とする。
 次に、ノード端末1の分散ファイルシステム管理部122は、暗号化されたファイルFを分割する。次に、ノード端末1の分散ファイルシステム管理部122は、ノードサーバ2の分散ファイルシステム管理部122と協働して、暗号化及び分割されたファイルFを、複数のノード端末1のファイル記憶部160やノードサーバ2のファイル記憶部260の夫々に分散して格納して管理する。
Further, the distributed file system management unit 122 encrypts and divides and manages the entire data of the file F itself.
At this time, the distributed file system management unit 122 manages the file F managed as a result of the blockchain management function by imposing access restrictions on a person other than the operator U who has instructed to save the file F. That is, for example, the file management unit 115 can provide access control in the storage unit of each node belonging to the network related to the blockchain and divide it for each operator U.
Specifically, for example, the distributed file system management unit 122 encrypts the entire data of the file F itself by using the information contained in the hardware key IDH and the ID card. That is, the distributed file system management unit 122 encrypts the file F so that it can be decrypted only by the operator U who holds the hardware key IDH and the ID card.
Next, the distributed file system management unit 122 of the node terminal 1 divides the encrypted file F. Next, the distributed file system management unit 122 of the node terminal 1 cooperates with the distributed file system management unit 122 of the node server 2 to store the encrypted and divided file F in the file storage units of the plurality of node terminals 1. It is distributed and managed in 160 and the file storage unit 260 of the node server 2.
 このように、分散ファイルシステム管理部122は、暗号化されたファイルFを分割して複数のファイルシステムFSに分散して保存する。これにより、ファイルFを復号する際には、他のノードから分割された他のファイルFの断片を取得する必要がある。
 このように、ファイルFを格納した操作者U以外は、ファイルFを復号することは困難である。即ち、本サービスは、ファイルFのデータの漏洩を防ぐことができる。
 更に言えば、大きなファイルサイズのファイルFについては、分割することにより保存する際の取り扱いが用意になるという効果を奏することもできる。
In this way, the distributed file system management unit 122 divides the encrypted file F and distributes and stores the encrypted file F in a plurality of file systems FS. As a result, when decrypting the file F, it is necessary to acquire a fragment of the other file F divided from the other node.
As described above, it is difficult to decrypt the file F except for the operator U who stores the file F. That is, this service can prevent the leakage of the data of the file F.
Furthermore, for a file F having a large file size, it is possible to achieve the effect that handling when saving is easy by dividing the file F.
 ファイル管理部115は、ブロックチェーン管理部121によりブロックチェーンBCをブロックチェーン記憶部150に格納して管理し、分散ファイルシステム管理部122よりファイルシステムFSとしてファイル記憶部160にファイルFを記憶させて管理することができる。 The file management unit 115 stores and manages the blockchain BC in the blockchain storage unit 150 by the blockchain management unit 121, and stores the file F in the file storage unit 160 as the file system FS from the distributed file system management unit 122. Can be managed.
 なお、上述の説明と同様に、ノードサーバ2は、ノード端末1のファイル取得部114と基本的に同様な機能を有するファイル取得部212を備える。即ち、ノードサーバ2も同様に、操作者Uによる本サービスを利用するための操作を受付けた場合、ノードサーバ2自身及び他のノードにファイルFを管理させることができる。 Note that, as in the above description, the node server 2 includes a file acquisition unit 212 having basically the same function as the file acquisition unit 114 of the node terminal 1. That is, similarly, when the node server 2 accepts the operation for using this service by the operator U, the node server 2 itself and other nodes can manage the file F.
 以上、図2乃至図4を用いて、本サービスの図1に示すサービスを提供する際に適用される情報処理システムについて説明した。
 以下、図5を用いて、ノードサーバ2-1による保存処理やブロックチェーンBCに履歴として保存されるファイルFに関する各種情報の詳細を説明する。
The information processing system applied when the service shown in FIG. 1 of this service is provided has been described above with reference to FIGS. 2 to 4.
Hereinafter, with reference to FIG. 5, details of various information regarding the storage process by the node server 2-1 and the file F stored as a history in the blockchain BC will be described.
 図5は、図4の機能的構成を有するノードサーバ及びノード端末により管理されるブロックチェーン及び当該ブロックチェーンを用いて管理される各種データの関係性の一例を示す模式図である。
 図5には、ブロックチェーンBCの例として、ブロックB1乃至B3がチェーンのように連結した一連のデータが示されている。また、図5のブロックチェーンBCは、ブロックB1及びB2がチェーンのように連結している段階において、ファイルFの保存が指示され、ファイルFに関する各種情報がブロックB3の一部として管理されている例である。
FIG. 5 is a schematic diagram showing an example of the relationship between the blockchain managed by the node server and the node terminal having the functional configuration of FIG. 4 and various data managed by the blockchain.
FIG. 5 shows a series of data in which blocks B1 to B3 are connected like a chain as an example of the blockchain BC. Further, in the block chain BC of FIG. 5, when the blocks B1 and B2 are connected like a chain, the storage of the file F is instructed, and various information related to the file F is managed as a part of the block B3. This is an example.
 また、図5には、ブロックチェーンBCのブロックB1のみの段階におけるファイル記録データベースFDB1と、ブロックB1及びB2がチェーンのように連結した一連のデータの段階におけるファイル記録データベースFDB2とが点線で図示されている。また、ブロックB1乃至B3がチェーンのように連結した一連のデータの段階におけるファイル記録データベースFDB3が実線で図示されている。なお、以下、ファイル記録データベースFDB1乃至FDB3を個々に区別する必要がない場合、これらをまとめて「ファイル記録データベースFDB」と呼ぶ。
 ファイル記録データベースFDBは、ブロックチェーンに係るネットワークにより管理されている全てのデータの夫々に関する各種情報を格納したデータベースである。ここで、ブロックチェーンに係るネットワークにより管理されているファイルFに関する各種情報とは、以下の情報が含まれる。即ち例えば、ファイルFに関する「ハッシュ」、「登録日時」、及び「登録者及び閲覧者」の情報は、ファイルFに関する各種情報の一例である。ここで、ファイルFに関する各種情報には、ファイルFのデータの全体そのものは含まれず、ファイルFのハッシュが含まれる。即ち、ファイル記録データベースFDBには、ファイルFの健全性の検証に用いることができるファイルFのハッシュが含まれている。これにより、ファイルFを復号した場合において、ファイルFが改竄されたとき、当該改竄があった旨を検知することが可能となる。
 また、上述した通り、ファイル記録データベースFDB1及びFDB2は破線で図示されており、ファイル記録データベースFDB3は実線で図示されている。これは、ファイル記録データベースFDBは、最新の内容(図5で言えばファイル記録データベースFDB3)が記録されていることを示している。
Further, in FIG. 5, the file recording database FDB1 at the stage of only block B1 of the blockchain BC and the file recording database FDB2 at the stage of a series of data in which blocks B1 and B2 are connected like a chain are illustrated by dotted lines. ing. Further, the file recording database FDB3 at the stage of a series of data in which the blocks B1 to B3 are connected like a chain is shown by a solid line. Hereinafter, when it is not necessary to individually distinguish the file recording databases FDB1 to FDB3, these are collectively referred to as "file recording database FDB".
The file recording database FDB is a database that stores various information about each of the data managed by the network related to the blockchain. Here, the various information regarding the file F managed by the network related to the blockchain includes the following information. That is, for example, the "hash", "registration date and time", and "registrant and viewer" information regarding the file F are examples of various information regarding the file F. Here, the various information about the file F does not include the entire data of the file F itself, but includes the hash of the file F. That is, the file recording database FDB contains a hash of the file F that can be used to verify the integrity of the file F. As a result, when the file F is decrypted and the file F is tampered with, it is possible to detect that the tampering has occurred.
Further, as described above, the file recording databases FDB1 and FDB2 are shown by broken lines, and the file recording database FDB3 is shown by a solid line. This indicates that the file recording database FDB records the latest contents (file recording database FDB3 in FIG. 5).
 ブロックB1は、第1関連付情報HD1と、ベースデータBD1と、第2関連付情報FT1とから構成されている。
 ここで、第1関連付情報HD1は、ブロックチェーンBCの最初のブロックB1における、初期値である。
 また、ベースデータBD1は、ブロックチェーンBCの次のブロックB2につなげるためのベースとなるデータである。ベースデータBD1には、ファイル記録データベースFDB1と対応づく情報が格納されている。即ち例えば、本サービスで当初から管理されている1以上のデータに関する「ハッシュ」、「登録日時」、及び「登録者及び閲覧者」の情報がベースデータBD1に含まれる。なお、本サービスで当初から管理されている1以上のデータが存在しない場合、所定のベースとなるデータ(例えば乱数列)が採用される。
 また、第2関連付情報は、ブロックB1のハッシュの値である。第1関連付情報HD1と、ベースデータBD1と、ファイル記録データベースFDB1とから、第2関連付情報に向かって矢印が描かれている。これは、第2関連付情報FT1のハッシュの値は、第1関連付情報HD1と、ベースデータBD1と、ファイル記録データベースFDB1のデータに相関があるハッシュの値であることを示している。
The block B1 is composed of the first related information HD1, the base data BD1, and the second related information FT1.
Here, the first related information HD1 is an initial value in the first block B1 of the blockchain BC.
Further, the base data BD1 is data that serves as a base for connecting to the next block B2 of the blockchain BC. The base data BD1 stores information corresponding to the file recording database FDB1. That is, for example, the base data BD1 includes "hash", "registration date and time", and "registrant and viewer" information regarding one or more data managed from the beginning by this service. If one or more data managed from the beginning by this service does not exist, a predetermined base data (for example, a random number string) is adopted.
The second related information is the hash value of the block B1. An arrow is drawn from the first related information HD1, the base data BD1, and the file recording database FDB1 toward the second related information. This indicates that the hash value of the second related information FT1 is a hash value that correlates with the data of the first related information HD1, the base data BD1, and the file recording database FDB1.
 ブロックB2は、第1関連付情報HD2と、記録データBD2と、第2関連付情報FT2とから構成されている。
 ここで、第1関連付情報HD2は、ブロックチェーンBCにおける前のブロックB1の第2関連付情報FT1である。このように、例えばブロックB1及びB2といった連続したブロックは、ブロックB2の第1関連付情報HD2と、前のブロックB1の第2関連付情報FT1とが一致するように生成される。その結果、連続したブロックがチェーンのように連結した一連のデータとなる。
 また、記録データBD2は、変更があったデータに関する「ハッシュ」、「登録日時」、及び「登録者及び閲覧者」の情報である。記録データBD2には、ファイル記録データベースFDB2とファイル記録データベースFDB1との差分に対応づく情報が格納されている。即ち例えば、ブロックB2を生成する段階において本サービスで管理されている1以上のデータのうち、ブロックB1を生成する段階において本サービスで管理されていた1以上のデータとの差分のデータに関する「ハッシュ」、「登録日時」、及び「登録者及び閲覧者」の情報が記録データBD2に含まれる。
 また、第2関連付情報は、ブロックB2のハッシュの値である。第1関連付情報HD2と、記録データBD2と、ファイル記録データベースFDB2とから、第2関連付情報に向かって矢印が描かれている。これは、第2関連付情報FT2のハッシュの値は、第1関連付情報HD2と、記録データBD2と、ファイル記録データベースFDB2のデータに相関があるハッシュの値であることを示している。
The block B2 is composed of the first related information HD2, the recorded data BD2, and the second related information FT2.
Here, the first related information HD2 is the second related information FT1 of the previous block B1 in the blockchain BC. In this way, consecutive blocks such as blocks B1 and B2 are generated so that the first related information HD2 of the block B2 and the second related information FT1 of the previous block B1 match. As a result, continuous blocks become a series of data connected like a chain.
Further, the recorded data BD2 is information of "hash", "registration date and time", and "registrant and viewer" regarding the changed data. The recorded data BD2 stores information corresponding to the difference between the file recording database FDB2 and the file recording database FDB1. That is, for example, among one or more data managed by this service at the stage of generating block B2, a "hash" relating to data of a difference from one or more data managed by this service at the stage of generating block B1. , "Registration date and time", and "Registrant and viewer" information is included in the recorded data BD2.
The second related information is the hash value of the block B2. An arrow is drawn from the first related information HD2, the recorded data BD2, and the file recording database FDB2 toward the second related information. This indicates that the hash value of the second related information FT2 is a hash value that correlates with the data of the first related information HD2, the recorded data BD2, and the file recording database FDB2.
 以下、ブロックB3を生成する際に、ブロックB2を生成する段階において本サービスで管理されていなかったファイルFが、ブロックB3を生成する段階において新たに本サービスで管理されることになったものとして説明する。
 この場合、ノード端末1は、ブロックチェーンBCの最新のブロックとして、ブロックB3を生成する。ブロックB3は、第1関連付情報HD2と、記録データBD2と、第2関連付情報FT2とから構成されている。以下、どのような情報が記録データBD2として採用されるか等について説明する。
 なお、図4の説明と同様に、図1の説明における保存処理のステップST3の処理は、基本的にノード端末1が実行するものとして説明する。
Hereinafter, when the block B3 is generated, the file F that was not managed by the service at the stage of generating the block B2 is newly managed by the service at the stage of generating the block B3. explain.
In this case, the node terminal 1 generates the block B3 as the latest block of the blockchain BC. The block B3 is composed of the first related information HD2, the recorded data BD2, and the second related information FT2. Hereinafter, what kind of information is adopted as the recorded data BD2 and the like will be described.
As in the description of FIG. 4, the process of step ST3 of the storage process in the description of FIG. 1 is basically described as being executed by the node terminal 1.
 ここで、第1関連付情報HD2は、ブロックチェーンBCにおける前のブロックB1の第2関連付情報FT1である。このように、例えばブロックB1及びB2といった連続したブロックは、ブロックB2の第1関連付情報HD2と、前のブロックB1の第2関連付情報FT1とが一致するように生成される。その結果、連続したブロックがチェーンのように連結した一連のデータとなる。 Here, the first related information HD2 is the second related information FT1 of the previous block B1 in the blockchain BC. In this way, consecutive blocks such as blocks B1 and B2 are generated so that the first related information HD2 of the block B2 and the second related information FT1 of the previous block B1 match. As a result, continuous blocks become a series of data connected like a chain.
 次に、ノード端末1のブロックチェーン管理部121は、ファイルFのファイル記録FRを取得する。ファイル記録FRには、ファイルFに関する「ハッシュ」、「登録日時」、及び「登録者及び閲覧者」の記録(情報)が含まれる。ファイル記録FRは、ブロックB3の記録データBD3の一部として採用される。
 また、ファイルFのファイル記録FRは、ファイルFに関連する最新の情報として、ファイル記録データベースFDB2に基づいたファイル記録データベースFDB3に、格納される。
Next, the blockchain management unit 121 of the node terminal 1 acquires the file recording FR of the file F. The file record FR includes records (information) of "hash", "registration date and time", and "registrant and viewer" regarding file F. The file recording FR is adopted as a part of the recording data BD3 of the block B3.
Further, the file recording FR of the file F is stored in the file recording database FDB3 based on the file recording database FDB2 as the latest information related to the file F.
 次に、ノード端末1のブロックチェーン管理部121は、第1関連付情報HD2と、ベースデータBD2と、ファイル記録データベースFDB2のデータに相関があるハッシュの値を、第2関連付情報FT3として生成する。
 これにより、ブロックB3が、ブロックチェーンBCの最新のブロックとして生成される。
Next, the blockchain management unit 121 of the node terminal 1 generates a hash value that correlates with the first related information HD2, the base data BD2, and the data of the file recording database FDB2 as the second related information FT3. do.
As a result, the block B3 is generated as the latest block of the blockchain BC.
 この時、ファイルFのデータの全体そのものは、次のように処理される。
 ノード端末1の分散ファイルシステム管理部122は、ファイルFを暗号化及び分割されたファイルFS1乃至FS4に変換する。
 次に、ノード端末1の分散ファイルシステム管理部122は、複数のノード(例えばノードサーバ2-1乃至2-4の夫々)に、暗号化及び分割されたファイルFS1乃至FS4を分散して保存する。
 このように、暗号化及び分割されたファイルFS1乃至FS4は、ブロックチェーンに係るネットワークに備えられたノードに分散されて保存される。
At this time, the entire data of the file F itself is processed as follows.
The distributed file system management unit 122 of the node terminal 1 converts the file F into the encrypted and divided files FS1 to FS4.
Next, the distributed file system management unit 122 of the node terminal 1 distributes and stores the encrypted and divided files FS1 to FS4 in a plurality of nodes (for example, each of the node servers 2-1 to 2-4). ..
In this way, the encrypted and divided files FS1 to FS4 are distributed and stored in the nodes provided in the network related to the blockchain.
 以上、図5を用いて、ノードサーバ2-1による保存処理やブロックチェーンBCに履歴として保存されるファイルFに関する各種情報の詳細を説明した。 As described above, with reference to FIG. 5, the details of various information regarding the save process by the node server 2-1 and the file F saved as the history in the blockchain BC have been described.
 図6は、ノード端末に操作者端末をローカル接続させて本サービスを利用する場合の例を説明する模式図である。 FIG. 6 is a schematic diagram illustrating an example in which the operator terminal is locally connected to the node terminal to use this service.
 ここで、ローカル接続とは、例えば、Local Area Network(ローカルエリアネットワーク、以下LANと呼ぶ)と呼ばれる範囲における接続を言う。LANは、家庭内やオフィス内といった領域において、Wide Area Network(ワイドエリアネットワーク)側から自由に接続することはできないネットワークである。 Here, the local connection means, for example, a connection in a range called Local Area Network (local area network, hereinafter referred to as LAN). A LAN is a network that cannot be freely connected from the Wide Area Network side in areas such as homes and offices.
 操作者Uは、ノード端末1により提供される所定のユーザインターフェースを操作することの他、ノード端末1にローカル接続された操作者端末3を操作することでも、ブロックチェーンBCを用いてファイルFを保存や管理することができる。なお、操作者Uが操作者端末3を利用した場合の本サービスの流れの詳細については後述する。 In addition to operating a predetermined user interface provided by the node terminal 1, the operator U can also operate the operator terminal 3 locally connected to the node terminal 1 to obtain the file F by using the blockchain BC. Can be stored and managed. The details of the flow of this service when the operator U uses the operator terminal 3 will be described later.
 上述の図1には、ノードサーバ2-1乃至2-4及びノード端末1-1乃至1-5の総計9台が、9つのノードの夫々として機能することで、ブロックチェーンに係るネットワークが構成される例が示されていた。これに対して、図6には、ノード端末1-1乃至1-5の夫々に操作者端末3-1乃至3-5の夫々が追加的に接続された例が示されている。
 具体的には、操作者端末3-1乃至3-5の夫々は、ルータR1乃至R5の夫々を介してノード端末1-1乃至1-5の夫々にローカル接続されている。このローカル接続のために用いられるルータR1乃至R5の夫々は、ノード端末1-1乃至1-5の夫々から独立した存在であってもよいし、ノード端末1-1乃至1-5の夫々の一機能として存在してもよい。なお、図6の例では、ノード端末1-1乃至1-5のうち、ルータR1乃至R3の夫々がノード端末1-1乃至1-3の夫々から独立して存在し、ルータR4及びR5の夫々がノード端末1-4及び1-5の夫々の一機能として存在している。
In FIG. 1 above, a total of nine node servers 2-1 to 2-4 and node terminals 1-1 to 1-5 function as each of the nine nodes to form a network related to the blockchain. An example was shown. On the other hand, FIG. 6 shows an example in which the operator terminals 3-1 to 3-5 are additionally connected to the node terminals 1-1 to 1-5, respectively.
Specifically, the operator terminals 3-1 to 3-5 are locally connected to the node terminals 1-1 to 1-5 via the routers R1 to R5, respectively. Each of the routers R1 to R5 used for this local connection may be independent of each of the node terminals 1-1 to 1-5, or each of the node terminals 1-1 to 1-5. It may exist as a function. In the example of FIG. 6, among the node terminals 1-1 to 1-5, the routers R1 to R3 each exist independently of the node terminals 1-1 to 1-3, and the routers R4 and R5 Each exists as a function of each of the node terminals 1-4 and 1-5.
 ルータR1乃至R5の夫々は、複数のネットワークを相互に接続し、必要に応じてその経路を制御、即ちルーティングすることができる。具体的には例えば、ルータR1乃至R5の夫々は、操作者端末3-1乃至3-5の夫々におけるブロックチェーンBCやファイルシステムFSのための通信について、本サービスの提供のためのクラウドCと、LANと間の接続として専用線LLを経由するようにルーティングする。また例えば、ルータR1乃至R5の夫々は、操作者端末3-1乃至3-5の夫々におけるインターネット閲覧のための通信について、インターネットとLANとの間の接続としてルーティングする(図示せず)。 Each of the routers R1 to R5 can connect a plurality of networks to each other and control, that is, route the route as needed. Specifically, for example, the routers R1 to R5 each have a cloud C for providing this service for communication for the blockchain BC and the file system FS in each of the operator terminals 3-1 to 3-5. , Route to pass through the dedicated line LL as a connection with the LAN. Further, for example, each of the routers R1 to R5 routes the communication for browsing the Internet at each of the operator terminals 3-1 to 3-5 as a connection between the Internet and the LAN (not shown).
 ここで、ノード端末1-4及び1-5のように、ルータR4及びR5の夫々を自機の一機能として存在させた場合のメリットについて説明する。即ち、ノード端末1-4及び1-5のように、ノード端末1にルータ機能を設けた場合には、ノード端末1をノードサーバ2に接続する専用線LLの設定が事前に行われる。これにより、操作者Uは、専用線LLの設定が完了しているノード端末1に、操作端末3を接続するだけで本サービスを利用することができる。 Here, the merits of having each of the routers R4 and R5 as one function of the own machine like the node terminals 1-4 and 1-5 will be described. That is, when the node terminal 1 is provided with the router function as in the node terminals 1-4 and 1-5, the dedicated line LL for connecting the node terminal 1 to the node server 2 is set in advance. As a result, the operator U can use this service simply by connecting the operation terminal 3 to the node terminal 1 for which the setting of the leased line LL has been completed.
 次に、操作端末3の構成について説明する。操作者端末3は、操作者Uが操作するパーソナルコンピュータ等の情報処理装置である。操作者端末3は、上述した図3に示すハードウェア構成と基本的に同様の構成を有している。即ち、図示はしないが、操作者端末3は、図3のノード端末1のCPU11、ROM12、RAM13、バス14、入出力インターフェース15、出力部16、入力部17、記憶部18、通信部19、及びドライブ20の夫々と同様のハードウェア構成として、CPU31、ROM32、RAM33、バス34、入出力インターフェース35、出力部36、入力部37、記憶部38、通信部39、及びドライブ40の夫々を備える。 Next, the configuration of the operation terminal 3 will be described. The operator terminal 3 is an information processing device such as a personal computer operated by the operator U. The operator terminal 3 has basically the same configuration as the hardware configuration shown in FIG. 3 described above. That is, although not shown, the operator terminal 3 includes the CPU 11, ROM 12, RAM 13, bus 14, input / output interface 15, output unit 16, input unit 17, storage unit 18, and communication unit 19 of the node terminal 1 shown in FIG. The hardware configuration similar to that of the drive 20 is provided with the CPU 31, ROM 32, RAM 33, bus 34, input / output interface 35, output unit 36, input unit 37, storage unit 38, communication unit 39, and drive 40, respectively. ..
 次に、操作者端末3が利用される場合の本サービスの流れについて説明する。操作者Uは、操作者端末3をノード端末1にローカル接続し、操作者端末3より提供される所定のユーザインターフェースにより以下の操作を行う。即ち、操作者Uの操作を受け付けた操作者端末3は、ブロックチェーンBCを用いて保存や管理したいファイルFの暗号化と、ファイルFに対する署名の記録と、ノード端末1に対するファイルFの送信とを行う。これにより、操作者Uは、ノード端末1と隔離された外部からでも、操作者端末3がノード端末1にローカル接続されている限り、ファイルFを、ブロックチェーンBCを用いて保存や管理することができる。
 このように、作業者端末3は、ノード端末1やノードサーバ2と協働することで、ファイルFをブロックチェーンに係るネットワークで管理された状態にすることができる。
Next, the flow of this service when the operator terminal 3 is used will be described. The operator U locally connects the operator terminal 3 to the node terminal 1 and performs the following operations using a predetermined user interface provided by the operator terminal 3. That is, the operator terminal 3 that has received the operation of the operator U encrypts the file F to be saved and managed using the blockchain BC, records the signature for the file F, and transmits the file F to the node terminal 1. I do. As a result, the operator U can save and manage the file F using the blockchain BC as long as the operator terminal 3 is locally connected to the node terminal 1 even from the outside isolated from the node terminal 1. Can be done.
In this way, the worker terminal 3 can bring the file F into a state managed by the network related to the blockchain by cooperating with the node terminal 1 and the node server 2.
 ブロックチェーンBCには、操作者端末3でファイルFを暗号化するための公開鍵(以下、「暗号化用公開鍵」と呼ぶ)と、そのファイルFに操作者Uの署名を確認するための公開鍵(以下、「署名用公開鍵」と呼ぶ)とが保存されている。また、暗号化用公開鍵と署名用公開鍵との夫々に対応する秘密鍵は、操作者端末3に夫々保存される。操作者Uの操作を受け付けた操作者端末3は、ブロックチェーンBCから暗号化用公開鍵を取得する。操作者端末3は、取得した暗号化用公開鍵を用いて、ファイルFを暗号化する。次に、操作者端末3は、署名用秘密鍵を用いて、ファイルFに自身の署名(電子署名)を記録する。その後、操作者端末3は、署名を記録したファイルFをノード端末1に送信する。すると、ノード端末1とノードサーバ2との夫々において、図1乃至図5を参照して上述した処理が適宜実行される。これにより、操作者端末3から送信されたファイルFがファイルブロックチェーンBCを用いて保存や管理される。 The blockchain BC includes a public key for encrypting the file F on the operator terminal 3 (hereinafter referred to as "public key for encryption") and a signature of the operator U on the file F. The public key (hereinafter referred to as "public key for signature") is stored. Further, the private key corresponding to each of the encryption public key and the signature public key is stored in the operator terminal 3, respectively. The operator terminal 3 that has received the operation of the operator U acquires the encryption public key from the blockchain BC. The operator terminal 3 encrypts the file F using the acquired public key for encryption. Next, the operator terminal 3 records its own signature (electronic signature) in the file F using the private signature key. After that, the operator terminal 3 transmits the file F in which the signature is recorded to the node terminal 1. Then, the above-described processing is appropriately executed in each of the node terminal 1 and the node server 2 with reference to FIGS. 1 to 5. As a result, the file F transmitted from the operator terminal 3 is saved and managed using the file blockchain BC.
 このように、本サービスでは、閲覧権限が与えられた操作者Uの暗号化用公開鍵がブロックチェーンBCに保存されている。そして、この暗号化用公開鍵と対になった秘密鍵でなければファイルFを復号することができない。これにより、より強固な閲覧制限をかけることができる。
 また、操作者端末3からノード端末1に送信されるファイルFは暗号化されている。このため、ノード端末1には、ノード端末1で新たにファイルFを作成しない限り、暗号化されたファイルFのみが存在することになる。これにより、仮にノード端末1に保存されたファイルFやノード端末1そのものが盗難された場合であっても、ファイルFの秘匿性を確保することができる。
 なお、暗号化されたファイルFは、暗号化用公開鍵の数だけ生成される。即ち例えば、第1の操作者Uと、第2の操作者UでファイルFを共有する場合、第1の操作者U及び第2の操作者Uの夫々の暗号化用公開鍵を用いて、夫々暗号化する。これにより、第1の操作者U及び第2の操作者Uの夫々は、夫々が保有する対応する秘密鍵を用いてファイルFを復号することができる。このように、ファイルFを保存や管理する際には、復号可能な操作者Uの夫々のための暗号化を行う。ある操作者Uが秘密鍵を漏洩してしまった場合であっても、それによる被害は最小限に抑えられる。
As described above, in this service, the encryption public key of the operator U to which the viewing authority is given is stored in the blockchain BC. Then, the file F cannot be decrypted unless the private key is paired with the public key for encryption. As a result, stronger viewing restrictions can be applied.
Further, the file F transmitted from the operator terminal 3 to the node terminal 1 is encrypted. Therefore, in the node terminal 1, only the encrypted file F exists unless the node terminal 1 newly creates the file F. As a result, even if the file F stored in the node terminal 1 or the node terminal 1 itself is stolen, the confidentiality of the file F can be ensured.
The encrypted file F is generated as many as the number of public keys for encryption. That is, for example, when the file F is shared between the first operator U and the second operator U, the encryption public keys of the first operator U and the second operator U are used, respectively. Encrypt each. As a result, each of the first operator U and the second operator U can decrypt the file F using the corresponding private key held by each. In this way, when saving and managing the file F, encryption is performed for each of the decryptable operators U. Even if an operator U leaks the private key, the damage caused by it can be minimized.
 図7は、図6のノード端末、ノードサーバ、及びユーザ端末の機能的構成の一例を示す機能ブロック図である。なお、説明の簡単化のため、図7の説明において、ノード端末1、ノードサーバ2、及び操作者端末3の夫々を1台のみ図示している。また、図7に示すノードサーバ2の機能的構成は、上述した図4に示すノードサーバ2の夫々の機能的構成と同様であるため、機能ブロックの図示及びその説明を省略している。 FIG. 7 is a functional block diagram showing an example of the functional configuration of the node terminal, the node server, and the user terminal of FIG. For the sake of simplification of the explanation, in the explanation of FIG. 7, only one node terminal 1, the node server 2, and the operator terminal 3 are shown. Further, since the functional configuration of the node server 2 shown in FIG. 7 is the same as the functional configuration of each of the node servers 2 shown in FIG. 4 described above, the illustration of the functional block and its description thereof are omitted.
 図7に示すノード端末1のCPU11では、上述したハードウェアキー検出部111、本人認証部112、ノード管理部113、ファイル取得部114、及びファイル管理部115の他に、アップデート管理部116が機能する。 In the CPU 11 of the node terminal 1 shown in FIG. 7, in addition to the hardware key detection unit 111, the personal authentication unit 112, the node management unit 113, the file acquisition unit 114, and the file management unit 115 described above, the update management unit 116 functions. do.
 アップデート管理部116は、ノード端末1及び操作者端末3のアップデートの管理を行う。具体的には、アップデート管理部116は、所定のタイミング(例えばノード端末1の起動時)に、ノード端末1及び操作者端末3の夫々のアップデート情報の有無を確認して、必要に応じて更新処理の制御を実行する。これにより、ノード端末1及び操作者端末3のアップデートが自動で行われるので、ブロックチェーンBCを利用した各種アプリケーションの追加や更新を随時行うことが容易になる。 The update management unit 116 manages the updates of the node terminal 1 and the operator terminal 3. Specifically, the update management unit 116 confirms the existence of update information for each of the node terminal 1 and the operator terminal 3 at a predetermined timing (for example, when the node terminal 1 is started), and updates as necessary. Performs processing control. As a result, the node terminal 1 and the operator terminal 3 are automatically updated, so that it becomes easy to add or update various applications using the blockchain BC at any time.
 また、ノード端末1の機能的構成は、様々なバリエーションを採用することができる。例えば、分散ファイルシステム管理部122を備えない機能的構成とすることもできる。この場合、ファイル管理部115は、ファイル取得部114により取得されたファイルFを、通信部19を介してノードサーバ2に送信する。ファイルFを受信したノードサーバ2は、これをファイル管理部213の分散ファイルシステム管理部222に管理させる。分散ファイルシステム管理部222は、ファイルFのハッシュ値を取得して、ハッシュ値を含む情報をノード端末1のファイル管理部115に送信する。 In addition, various variations can be adopted for the functional configuration of the node terminal 1. For example, it may have a functional configuration that does not include the distributed file system management unit 122. In this case, the file management unit 115 transmits the file F acquired by the file acquisition unit 114 to the node server 2 via the communication unit 19. The node server 2 that has received the file F causes the distributed file system management unit 222 of the file management unit 213 to manage the file F. The distributed file system management unit 222 acquires the hash value of the file F and transmits the information including the hash value to the file management unit 115 of the node terminal 1.
 操作者端末3のCPU31では、ファイル取得部311と、鍵管理部312と、暗号化部313と、送信制御部314とが機能する。また、操作者端末3の記憶部38の一領域には、秘密鍵DB360が設けられている。 In the CPU 31 of the operator terminal 3, the file acquisition unit 311, the key management unit 312, the encryption unit 313, and the transmission control unit 314 function. Further, a private key DB 360 is provided in one area of the storage unit 38 of the operator terminal 3.
 ファイル取得部311は、操作者UがブロックチェーンBCに保存する対象としたファイルFを取得する。 The file acquisition unit 311 acquires the file F to be saved in the blockchain BC by the operator U.
 鍵管理部312は、ブロックチェーンBCに、暗号化用公開鍵及び署名用公開鍵を保存して管理する。また、鍵管理部312は、暗号化用公開鍵及び署名用公開鍵の夫々の秘密鍵を秘密鍵DB360に記憶させて管理する。
 ファイルFの暗号化や管理が行われる場合、鍵管理部312は、ブロックチェーンBCに保存されている暗号化用公開鍵及び署名用公開鍵を取得する。
The key management unit 312 stores and manages the public key for encryption and the public key for signature in the blockchain BC. Further, the key management unit 312 stores and manages the private keys of the encryption public key and the signature public key in the private key DB 360.
When the file F is encrypted or managed, the key management unit 312 acquires the encryption public key and the signature public key stored in the blockchain BC.
 暗号化部313は、ファイル取得部311により取得されたファイルFの暗号化を行う。具体的には、暗号化部313は、鍵管理部312により取得された暗号化用公開鍵を用いてファイルFを暗号化する。
 また、暗号化部313は、暗号化したファイルFに対する署名の記録を受け付ける。具体的には、暗号化部313は、鍵管理部312により取得された署名用公開鍵に対応する秘密鍵を用いた操作者Uによる署名の記録(電子署名)を受け付ける。ファイルFを共有された他の操作者Uは、署名用公開鍵を用いることで、ファイルFの署名が、操作者Uによりされたものであることを確認することができる。本サービスでは、署名用公開鍵がブロックチェーンBCに記録されているため、他の操作者Uは、操作者Uによる署名の記録がなされている旨を容易に検証することができる。
The encryption unit 313 encrypts the file F acquired by the file acquisition unit 311. Specifically, the encryption unit 313 encrypts the file F using the encryption public key acquired by the key management unit 312.
Further, the encryption unit 313 accepts the record of the signature of the encrypted file F. Specifically, the encryption unit 313 accepts a signature record (electronic signature) by the operator U using the private key corresponding to the signature public key acquired by the key management unit 312. The other operator U who shared the file F can confirm that the signature of the file F was made by the operator U by using the signing public key. In this service, since the public key for signature is recorded in the blockchain BC, another operator U can easily verify that the signature is recorded by the operator U.
 送信制御部314は、暗号化部313により暗号化と署名の記録とが受付けられたファイルFをノード端末1に送信する制御を実行する。これにより、操作者端末3から送信されるファイルFはすべて暗号化されたものとなる。 The transmission control unit 314 executes control to transmit the file F for which the encryption and the signature record have been received by the encryption unit 313 to the node terminal 1. As a result, all the files F transmitted from the operator terminal 3 are encrypted.
 上述をまとめると、ファイルFの保存や管理は、操作者Uが操作する操作者端末3とは別に配置されたノード端末1を介して行われる。また、ノード端末1は、ノード端末1自身や操作者端末3のアップデートの管理を行うことができる。これにより、操作者3は、本サービスの利用における設定等における労力を削減することができる。 Summarizing the above, the storage and management of the file F is performed via the node terminal 1 arranged separately from the operator terminal 3 operated by the operator U. Further, the node terminal 1 can manage updates of the node terminal 1 itself and the operator terminal 3. As a result, the operator 3 can reduce the labor required for setting and the like in using this service.
 以上、本発明が適用される情報処理システムの実施形態を説明してきた。しかしながら、本発明が適用される実施形態は、例えば次のようなものであってもよい。 The embodiment of the information processing system to which the present invention is applied has been described above. However, the embodiment to which the present invention is applied may be, for example, as follows.
 上述の本実施形態では、本サービスは、図示せぬサービス提供者により、所定の団体(例えば会社)に対して提供されるものとした。即ち例えば、所定の団体(例えば会社)は、操作者Uの数やノード端末1及びノードサーバ2の台数等に応じた初期費用(例えば数十万円から数百万円)と、クラウドC上のノードサーバ2の所定の期間におけるランニングの使用料(例えば数十万円)を対価として、本サービスを提供されるものであって良い。
 ただし、本サービスは、所定の団体(例えば会社)に対して提供されるものに限定されない。即ち例えば、サービス提供者と契約した個人であってもよい。
In the above-described embodiment, the service is provided to a predetermined organization (for example, a company) by a service provider (not shown). That is, for example, a predetermined organization (for example, a company) has an initial cost (for example, hundreds of thousands to millions of yen) according to the number of operators U, the number of node terminals 1 and node servers 2, etc., and on the cloud C. This service may be provided in consideration of a running fee (for example, several hundred thousand yen) for a predetermined period of the node server 2 of the above.
However, this service is not limited to those provided to a predetermined organization (for example, a company). That is, for example, it may be an individual who has a contract with a service provider.
 また、本実施形態では、サービス提供者から所定の団体(例えば会社)に対して5台のノード端末1-1乃至1-5が譲渡されるものとしたが、特にこれに限定されない。即ち例えば、本サービスに係るアプリケーションをプリインストールされたノード端末1が販売され、当該ノード端末1を購入した個人が本サービスの提供を受ける形態であってもよい。 Further, in the present embodiment, five node terminals 1-1 to 1-5 are transferred from the service provider to a predetermined organization (for example, a company), but the present invention is not particularly limited to this. That is, for example, the node terminal 1 in which the application related to this service is pre-installed may be sold, and the individual who purchased the node terminal 1 may be provided with this service.
 また、上述の本実施形態では、ノード端末1-1乃至1-5の夫々は、専用線LL-1乃至LL-5の夫々を介してクラウドCに接続されることで、1つのノードとして夫々機能するものとした。また、上述の本実施形態では、ノード端末1は、本サービスの提供に係る所定の処理の一部又は全部を実行することができるものとした。
 具体的には例えば、図1の説明においては、ノードサーバ2が保存処理のステップST3を実行した。また、図4の説明においては、ノード端末1が保存処理のステップST3を実行した。
 しかしながら、ノード端末1やノードサーバ2は、本サービスの提供に係る所定の処理の一部を代行するといった処理をおこなってもよい。具体的には例えば、ノードサーバ2のブロックチェーン管理部221が、新たなブロックB3のハッシュの値等の計算を行う処理の一部をノード端末1が代行してもよい。これにより、ノード端末1の計算資源を活用することにより、ノードサーバ2の計算量を軽減することができる。
 また例えば、ノード端末1のファイル記憶部160に、ノードサーバ2のファイル記憶部260に格納されるべきデータを分散して保存することもできる。これにより、本サービスに係る情報処理システムは、ノードサーバ2の記憶部28を消費せずに、大量のファイルを管理することができる。
Further, in the above-described embodiment, the node terminals 1-1 to 1-5 are connected to the cloud C via the dedicated lines LL-1 to LL-5, respectively, so that they are connected to the cloud C as one node. It was supposed to work. Further, in the above-described embodiment, the node terminal 1 can execute a part or all of the predetermined processing related to the provision of the service.
Specifically, for example, in the description of FIG. 1, the node server 2 has executed step ST3 of the storage process. Further, in the description of FIG. 4, the node terminal 1 has executed step ST3 of the saving process.
However, the node terminal 1 and the node server 2 may perform a process such as acting as a part of a predetermined process related to the provision of this service. Specifically, for example, the node terminal 1 may perform a part of the process in which the blockchain management unit 221 of the node server 2 calculates the hash value of the new block B3. As a result, the amount of calculation of the node server 2 can be reduced by utilizing the computational resources of the node terminal 1.
Further, for example, the data to be stored in the file storage unit 260 of the node server 2 can be distributed and stored in the file storage unit 160 of the node terminal 1. As a result, the information processing system related to this service can manage a large number of files without consuming the storage unit 28 of the node server 2.
 また、上述の実施形態では、ノード端末1-1を操作する操作者Uが認証された場合、ノード端末1-1においてブロックチェーン管理機能が発揮されるものとしたが、ノード端末1においてブロックチェーン管理機能が発揮されるか否かの条件はこれに限定されない。即ち例えば、複数のノード端末1を操作する操作者Uが認証された場合であっても、ノード端末1-1においてブロックチェーン管理機能が発揮されなくてもよい。また例えば、複数のノード端末1を操作する操作者Uが認証されていない場合であって、ハードウェアキーIDHが検出されたとき、ノード端末1において、ブロックチェーン管理機能のうち一部のみが実行されてもよい。上述をまとめると、複数のノード端末1の全てにおいて、ブロックチェーン管理機能が発揮される必要はない。 Further, in the above-described embodiment, when the operator U who operates the node terminal 1-1 is authenticated, the blockchain management function is exhibited at the node terminal 1-1, but the blockchain at the node terminal 1 The conditions for whether or not the management function is exhibited are not limited to this. That is, for example, even when the operator U who operates the plurality of node terminals 1 is authenticated, the blockchain management function may not be exhibited at the node terminals 1-1. Further, for example, when the operator U who operates the plurality of node terminals 1 is not authenticated and the hardware key IDH is detected, only a part of the blockchain management functions is executed at the node terminal 1. May be done. Summarizing the above, it is not necessary for the blockchain management function to be exhibited in all of the plurality of node terminals 1.
 なお、図6を用いて説明したように、作業者端末3は、ノード端末1やノードサーバ2と協働することで、ファイルFをブロックチェーンに係るネットワークで管理された状態にすることができる。
 ここで、上述の実施形態の通り、「ブロックチェーン管理機能」とは、1以上のデータの保存が指示された場合、ブロックチェーンに係るネットワークを構成するノードの夫々により、当該1以上のデータを当該ネットワークで管理された状態にする機能である。また、図1のファイル移動のステップST2及び保存処理のステップST3は、ブロックチェーン管理機能の一例である。
 従って、作業者端末3は、ブロックチェーン管理機能を有するため、ブロックチェーンに係るネットワークのノードの一例と把握することができる。
As described with reference to FIG. 6, the worker terminal 3 can bring the file F into a state managed by the network related to the blockchain by cooperating with the node terminal 1 and the node server 2. ..
Here, as described in the above-described embodiment, the "blockchain management function" means that when one or more data is instructed to be saved, the one or more data is stored by each of the nodes constituting the network related to the blockchain. It is a function to make it managed by the network. Further, step ST2 for moving the file and step ST3 for saving processing in FIG. 1 are examples of the blockchain management function.
Therefore, since the worker terminal 3 has a blockchain management function, it can be grasped as an example of a node of the network related to the blockchain.
 また、上述の実施形態では、図1の説明において、操作者Uにより操作されたノード端末1-1は、ノードサーバ2-1と各種情報の授受を行うものとして説明したが、特にこれに限定されない。即ち例えば、ノード端末1-1は、複数のノードサーバ2(例えば、ノードサーバ2-1乃至2-4の一部又は全部)と各種情報の授受を行ってもよい。 Further, in the above-described embodiment, in the description of FIG. 1, the node terminal 1-1 operated by the operator U has been described as exchanging various information with the node server 2-1. However, the present invention is particularly limited to this. Not done. That is, for example, the node terminal 1-1 may exchange various information with a plurality of node servers 2 (for example, a part or all of the node servers 2-1 to 2-4).
 また、上述の実施形態では、図2の説明において、ノードサーバ2-1乃至2-mは、クラウドC上に配置されているものとしたが、特にこれに限定されない。即ち例えば、複数のノードサーバ2の一部又は全部は、クラウドC上ではなく、ノード端末1とノードサーバ2とが含まれる所定のネットワーク(例えば、ローカルエリアネットワークやイントラネット)上に配置されていてもよい。つまり、ノードサーバ2は、クラウドC上に設置されるのではなく、操作者Uが属する所定の団体(例えば会社)に設置されたオンプレミスサーバであってもよい。 Further, in the above-described embodiment, in the description of FIG. 2, the node servers 2-1 to 2-m are assumed to be arranged on the cloud C, but the present invention is not particularly limited to this. That is, for example, a part or all of the plurality of node servers 2 is arranged not on the cloud C but on a predetermined network (for example, a local area network or an intranet) including the node terminal 1 and the node server 2. May be good. That is, the node server 2 may be an on-premises server installed in a predetermined organization (for example, a company) to which the operator U belongs, instead of being installed on the cloud C.
 上述したように、ノード端末1、ノードサーバ2及び操作者端末3の夫々は、本サービスの提供に係る所定の機能(処理)の一部又は全部を発揮(実行)することができる。まとめると、ノード端末1、ノードサーバ2及び操作者端末3等の構成は、以下のように分類することができる。
 以下、図4及び図7を用いて、情報処理装置(ノード端末1、ノードサーバ2及び操作者端末3等)の分類について説明する。
As described above, each of the node terminal 1, the node server 2, and the operator terminal 3 can exert (execute) a part or all of a predetermined function (process) related to the provision of this service. In summary, the configurations of the node terminal 1, the node server 2, the operator terminal 3, and the like can be classified as follows.
Hereinafter, the classification of the information processing devices (node terminal 1, node server 2, operator terminal 3, etc.) will be described with reference to FIGS. 4 and 7.
 図4のブロックチェーン管理部121及び分散ファイルシステム管理部122が機能するノード端末1や、ブロックチェーン管理部221及び分散ファイルシステム管理部222が機能するノードサーバ2は、フルノードの一例である。即ち、フルノードとは、少なくともファイルFに関する各種情報を抽出しブロックの一部として管理する機能や、ファイルFのデータの全体そのものを暗号化及び分割して管理する機能を発揮する情報処理装置をいう。 The node terminal 1 in which the blockchain management unit 121 and the distributed file system management unit 122 in FIG. 4 function, and the node server 2 in which the blockchain management unit 221 and the distributed file system management unit 222 function are examples of full nodes. That is, a full node is an information processing device that exhibits at least a function of extracting various information related to file F and managing it as a part of a block, and a function of encrypting and dividing and managing the entire data of file F. ..
 ハッシュの値等の計算を行うための計算資源(例えばCPU11)や暗号化及び分割されたファイルFを記憶するための記憶部(例えば記憶部18)を後述のライトノードと比較して多く有する情報処理装置が、フルノードとして採用される。
 そこで、図示せぬサービス提供者は、操作者Uに対してフルノードであるノード端末1を提供することにより、本サービス全体におけるファイルFに関する各種情報を抽出しブロックの一部として管理する機能やファイルFのデータの全体そのものを暗号化及び分割して管理する機能を分担する情報処理装置を増加させることができる。即ち、図示せぬサービス提供者にとって、本サービスにおけるスケールアウトが容易となる。
Information that has more computational resources (for example, CPU 11) for calculating the hash value and the like and a storage unit (for example, storage unit 18) for storing the encrypted and divided file F as compared with the light node described later. The processing device is adopted as a full node.
Therefore, the service provider (not shown) provides the operator U with the node terminal 1 which is a full node to extract various information about the file F in the entire service and manage the functions and files as a part of the block. It is possible to increase the number of information processing devices that share the function of encrypting and dividing and managing the entire F data itself. That is, it becomes easy for a service provider (not shown) to scale out in this service.
 図示はしないが、図7のノード端末1のうちノード管理部113が機能し、ブロックチェーン記憶部150やファイル記憶部160が機能しない端末は、ライトノードの一例である。即ち、ライトノードとは、その端末(例えばノード端末1)自身を介してファイルFに関する各種情報を抽出しブロックの一部として管理する機能やファイルFのデータの全体そのものを暗号化及び分割して管理する機能を発揮させ、その端末自身ではブロックチェーンBCやファイルFを記憶しない情報処理装置をいう。 Although not shown, a terminal in the node terminal 1 of FIG. 7 in which the node management unit 113 functions and the blockchain storage unit 150 and the file storage unit 160 do not function is an example of a write node. That is, the write node is a function of extracting various information about the file F via the terminal (for example, the node terminal 1) itself and managing it as a part of a block, or encrypting and dividing the entire data of the file F itself. An information processing device that exerts a management function and does not store a blockchain BC or a file F by the terminal itself.
 ライトノードは、ハッシュの値等の計算を行うための計算資源(例えばCPU11)や暗号化及び分割されたファイルFを記憶するための記憶部(例えば記憶部18)を有する必要はない。そのため、操作者Uは、比較的低コストであるライトノード(情報処理装置)を介して、本サービスを利用することができる。
 また、ライトノードはブロックチェーンBCやファイルFを記憶しないため、仮にライトノードが盗難にあったとしても、記録データが直接的に盗難されることはなく、ファイルFの秘匿性が確保される。
The write node does not need to have a computational resource (for example, CPU 11) for calculating a hash value or the like, or a storage unit (for example, a storage unit 18) for storing an encrypted and divided file F. Therefore, the operator U can use this service via a light node (information processing device) which is relatively low cost.
Further, since the write node does not store the blockchain BC or the file F, even if the write node is stolen, the recorded data is not directly stolen and the confidentiality of the file F is ensured.
 また、分散ファイルシステムノードが別途用意されてもよい。即ち、分散ファイルシステムノードは、暗号化及び分割されたファイルFを記憶するための記憶部(例えば記憶部18)を有し、ライトノードやフルノードと協働することで各種データを記憶することができる。
 なお、上述の例に限定されず、各種機能ブロックや記憶部の一部を有する情報処理装置が、本サービスに係るネットワークに接続されてもよい。
In addition, a distributed file system node may be prepared separately. That is, the distributed file system node has a storage unit (for example, a storage unit 18) for storing the encrypted and divided file F, and can store various data in cooperation with the write node and the full node. can.
Not limited to the above example, an information processing device having various functional blocks or a part of a storage unit may be connected to the network related to this service.
 また、上述の実施形態では、図1のハードウェアキーIDHはノード端末1により所定の情報を取得可能であるものとしたが、ハードウェアキーIDHがどのようなハードウェアであるかは特に限定されない。即ち、ハードウェアキーは、ブロックチェーン管理機能をノード端末1で発揮させるためのハードウェアであれば足りる。つまり、ハードウェアキーIDHは、操作者UがハードウェアキーIDHを保有している旨を検出可能であれば足りる。
 具体的には例えば、ハードウェアキーIDHは、USB(Universal Serial Bus)規格のコネクタを有したフラッシュメモリや、RFID(Radio Frequency Identifier)機能を有するカードであってもよい。即ち、ハードウェアキーIDHは、ノード端末1と、直接的に接続されてもよく、有線で接続されてもよく、無線で接続されてもよい。更に言えば、ハードウェアキーIDHは、所定の識別子(例えば、ワンタイムパスワードの数列や二次元バーコード)を表示可能なハードウェアであってもよい。この場合、例えば、ノード端末1は、入力部17(例えば、キーボードや撮像装置)を介して、ハードウェアキーIDHに関する所定の識別子を読み取ることにより、ハードウェキーIDHを検出することができる。
Further, in the above-described embodiment, the hardware key IDH of FIG. 1 is assumed to be able to acquire predetermined information by the node terminal 1, but what kind of hardware the hardware key IDH is is not particularly limited. .. That is, the hardware key is sufficient as long as it is the hardware for exerting the blockchain management function on the node terminal 1. That is, the hardware key IDH is sufficient if it can detect that the operator U holds the hardware key IDH.
Specifically, for example, the hardware key IDH may be a flash memory having a USB (Universal Social Bus) standard connector or a card having an RFID (Radio Frequency Identification) function. That is, the hardware key IDH may be directly connected to the node terminal 1, may be connected by wire, or may be connected wirelessly. Furthermore, the hardware key IDH may be hardware capable of displaying a predetermined identifier (for example, a sequence of one-time passwords or a two-dimensional bar code). In this case, for example, the node terminal 1 can detect the hardware key IDH by reading a predetermined identifier related to the hardware key IDH via the input unit 17 (for example, a keyboard or an imaging device).
 また、上述の実施形態では、暗号化用公開鍵と署名用公開鍵との夫々に対応する秘密鍵は、操作者端末3に夫々保存されるものとした。
 即ち、暗号化用公開鍵と署名用公開鍵との夫々に対応する秘密鍵が操作者端末3に夫々保存される場合、操作者端末3に暗号化用公開鍵と署名用公開鍵との夫々に対応する秘密鍵が格納されるため、操作者端末3の夫々に異なる秘密鍵を採用することができる。これにより、ファイルFの保存や管理において、操作者端末3の夫々による履歴を個別に管理することが可能となる。これは、操作者端末3を持ち出すニーズの低い環境、例えばオフィス用のデスクトップパーソナルコンピュータといった用途において、好適である。
 しかしながら、暗号化用公開鍵と署名用公開鍵との夫々に対応する秘密鍵は、操作者端末3に夫々保存されず、ノード端末1に夫々保存されてもよい。この場合、操作者Uによる操作者端末3の操作に基づき、ノード端末1を介することで、上述の実施形態と同様にファイルFをブロックチェーンBCを用いて保存や管理することができる。また、操作者端末3には、暗号化用公開鍵と署名用公開鍵との夫々に対応する秘密鍵は保存されない。そのため、操作者Uが操作者端末3を持ち出した場合であっても、暗号化用公開鍵と署名用公開鍵との夫々に対応する秘密鍵が漏洩する危険性がなくなる。ノード端末1に暗号化用公開鍵と署名用公開鍵との夫々に対応する秘密鍵が1組だけ記憶されている場合、ノード端末1とローカル接続された複数の操作者端末3の夫々による履歴を個別に管理することはできないが、例えば、ファイルFの保存や管理をノード端末1毎に管理することができる。そこで、ノード端末1をオフィスにおけるグループ(例えば、部署)毎に夫々配置することにより、グループ単位での保存や管理を行ってもよい。
 なお、ノード端末1には、暗号化用公開鍵と署名用公開鍵との夫々に対応する秘密鍵が複数組記憶され、適宜使い分けられてもよい。
Further, in the above-described embodiment, the private key corresponding to each of the encryption public key and the signature public key is stored in the operator terminal 3, respectively.
That is, when the private key corresponding to each of the encryption public key and the signature public key is stored in the operator terminal 3, the encryption public key and the signature public key are stored in the operator terminal 3, respectively. Since the private key corresponding to is stored, a different private key can be adopted for each of the operator terminals 3. As a result, in the storage and management of the file F, it is possible to individually manage the history of each of the operator terminals 3. This is suitable in an environment where there is little need to take out the operator terminal 3, for example, a desktop personal computer for an office.
However, the private keys corresponding to the encryption public key and the signature public key are not stored in the operator terminal 3 respectively, but may be stored in the node terminal 1 respectively. In this case, based on the operation of the operator terminal 3 by the operator U, the file F can be saved and managed by using the blockchain BC as in the above-described embodiment via the node terminal 1. Further, the operator terminal 3 does not store the private key corresponding to each of the encryption public key and the signature public key. Therefore, even if the operator U takes out the operator terminal 3, there is no risk of leaking the private key corresponding to each of the encryption public key and the signature public key. When only one set of private key corresponding to each of the public key for encryption and the public key for signing is stored in the node terminal 1, the history of each of the plurality of operator terminals 3 locally connected to the node terminal 1 Can not be managed individually, but for example, the storage and management of the file F can be managed for each node terminal 1. Therefore, by arranging the node terminals 1 for each group (for example, department) in the office, storage and management may be performed for each group.
A plurality of sets of private keys corresponding to the encryption public key and the signature public key may be stored in the node terminal 1 and may be used as appropriate.
 また、上述の実施形態の説明において、本サービスは、文書や大容量のデータの管理に好適であると説明したが、例えば、文書の他、静止画像、動画像、音声のデータに適用することができる。具体的には例えば、本サービスは、Web会議等の動画像や音声、通話履歴をファイルFとして、ブロックチェーンBCを用いて保存や管理することができる。
 これにより、Web会議等における議事の内容について、改竄なく保存や管理を行うことができる。
Further, in the description of the above-described embodiment, it has been explained that this service is suitable for managing documents and a large amount of data. However, for example, it is applied to still image, moving image, and audio data in addition to documents. Can be done. Specifically, for example, this service can store and manage moving images, voices, and call histories of Web conferences and the like as a file F using a blockchain BC.
As a result, the contents of the proceedings in the Web conference or the like can be saved and managed without falsification.
 また例えば、上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
 換言すると、図4の機能的構成は例示に過ぎず、特に限定されない。
 即ち、上述した一連の処理を全体として実行できる機能が情報処理システムに備えられていれば足り、この機能を実現するためにどのような機能ブロックを用いるのかは特に図4の例に限定されない。また、機能ブロックの存在場所も、図4に特に限定されず、任意でよい。例えば、ノード端末1の機能ブロックをノードサーバ2等に移譲させてもよい。
 また、1つの機能ブロックは、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
Further, for example, the above-mentioned series of processes can be executed by hardware or software.
In other words, the functional configuration of FIG. 4 is merely an example and is not particularly limited.
That is, it suffices if the information processing system is provided with a function capable of executing the above-mentioned series of processes as a whole, and what kind of functional block is used to realize this function is not particularly limited to the example of FIG. Further, the location of the functional block is not particularly limited to FIG. 4, and may be arbitrary. For example, the functional block of the node terminal 1 may be transferred to the node server 2 or the like.
Further, one functional block may be configured by a single piece of hardware, a single piece of software, or a combination thereof.
 また例えば、一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。
 コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。
 また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えばサーバの他汎用のスマートフォンやパーソナルコンピュータであってもよい。
Further, for example, when a series of processes are executed by software, a program constituting the software is installed on a computer or the like from a network or a recording medium.
The computer may be a computer embedded in dedicated hardware.
Further, the computer may be a computer capable of executing various functions by installing various programs, for example, a general-purpose smartphone or a personal computer in addition to a server.
 また例えば、このようなプログラムを含む記録媒体は、操作者Uにプログラムを提供するために装置本体とは別に配布される図示せぬリムーバブルメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態で操作者Uに提供される記録媒体等で構成される。 Further, for example, a recording medium containing such a program is not only composed of a removable medium (not shown) distributed separately from the device main body in order to provide the program to the operator U, but is also preliminarily incorporated in the device main body. It is composed of a recording medium or the like provided to the operator U in this state.
 なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的或いは個別に実行される処理をも含むものである。
 また、本明細書において、システムの用語は、複数の装置や複数の手段等より構成される全体的な装置を意味するものとする。
In the present specification, the steps for describing a program recorded on a recording medium are not necessarily processed in chronological order, but also in parallel or individually, even if they are not necessarily processed in chronological order. It also includes the processing to be executed.
Further, in the present specification, the term of the system means an overall device composed of a plurality of devices, a plurality of means, and the like.
 以上を換言すると、本発明が適用される情報処理システムは、次のような構成を有する各種各様の実施形態を取ることができる。 In other words, the information processing system to which the present invention is applied can take various embodiments having the following configurations.
 即ち、本発明が適用される情報処理システム(例えば図1、図2及び図4の情報処理システム)は、
 ブロックチェーンに係るネットワーク(例えば図1のノード端末1-1乃至1-5及びノードサーバ2-1乃至2-4を含んで構成されるネットワーク)に属するノードとして夫々機能する、クラウド(例えば図1や図2のクラウドC)上の1以上の第1種情報処理装置(例えば図1、図2及び図4のノードサーバ2)と、
 前記クラウドに専用線(例えば図1、図2及び図4の専用線LL)を介して接続されて、前記ブロックチェーンに係る前記ネットワークに属するノードとして夫々機能する、1以上の第2種情報処理装置(例えば図1、図2及び図4のノード端末1)と、
 を含み、
 前記ブロックチェーンに係る前記ネットワークを構成する全ての前記ノードの夫々は、1以上のデータの保存が指示(例えば、操作者Uによる所定のユーザインターフェースの操作による指示)されると、当該1以上のデータを前記ネットワークで管理された状態にするブロックチェーン管理機能を発揮させる。
That is, the information processing system to which the present invention is applied (for example, the information processing system of FIGS. 1, 2 and 4) is
A cloud (for example, FIG. 1) that functions as a node belonging to a network related to a blockchain (for example, a network including node terminals 1-1 to 1-5 and node servers 2-1 to 2-4 in FIG. 1). And one or more first-class information processing devices (for example, the node server 2 in FIGS. 1, 2 and 4) on the cloud C in FIG.
One or more type 2 information processing that is connected to the cloud via a dedicated line (for example, the dedicated line LL of FIGS. 1, 2 and 4) and functions as a node belonging to the network related to the blockchain. Devices (eg, node terminals 1 in FIGS. 1, 2 and 4) and
Including
When each of the nodes constituting the network related to the blockchain is instructed to save one or more data (for example, an instruction by the operator U by operating a predetermined user interface), the one or more It exerts a blockchain management function that puts data in a state managed by the network.
 これにより、ブロックチェーンに係るネットワークに属するノードとして、クラウド上の第1種情報処理装置と、クラウドに専用線を介して接続された第2情報処理装置とが備えられた情報処理システムにより、ブロックチェーン管理機能が発揮される。
 即ち例えば、従来のクラウド上の第1情報処理装置のみならず、クラウドに専用線を介して接続された第2情報処理装置もノードとして機能することで、第1情報処理装置の情報処理に係る負荷を軽減することができる。即ち、大容量のデータの取り扱いや当該データの漏洩防止を実現し、それらに関する利便性を向上することができる。
As a result, the information processing system provided with the first-class information processing device on the cloud and the second information processing device connected to the cloud via a dedicated line as nodes belonging to the network related to the blockchain blocks the information. The chain management function is demonstrated.
That is, for example, not only the conventional first information processing device on the cloud but also the second information processing device connected to the cloud via a dedicated line functions as a node, thereby relating to the information processing of the first information processing device. The load can be reduced. That is, it is possible to handle a large amount of data and prevent leakage of the data, and improve the convenience related to them.
 また、前記ブロックチェーン管理機能を前記1以上の第2種情報処理装置のうちの所定の1つで発揮させるためのハードウェアキー(例えば、図1のハードウェアキーIDH)、
 をさらに備えることができる。
Further, a hardware key (for example, the hardware key IDH in FIG. 1) for exerting the blockchain management function in a predetermined one of the above-mentioned one or more type 2 information processing devices.
Can be further prepared.
 これにより、例えば、クラウドに専用線を介して接続された第2情報処理装置もノードとして機能させる場合において、第2情報処理装置が信頼に足りるかどうかをハードウェアキーに基づいて評価することができる。その結果、本発明に係る情報処理システムのセキュリティの強度等が向上する。 As a result, for example, when the second information processing device connected to the cloud via a dedicated line also functions as a node, it is possible to evaluate whether or not the second information processing device is reliable based on the hardware key. can. As a result, the strength of security of the information processing system according to the present invention is improved.
 また、前記ブロックチェーン管理機能の結果として管理された前記1以上のデータは、当該1以上のデータの保存の指示をした者以外の者に対するアクセス制限が課せられる、ことができる。 Further, the one or more data managed as a result of the blockchain management function can be restricted from accessing a person other than the person who has instructed to save the one or more data.
 これにより、1以上のデータの保存の指示をした者以外は、ブロックチェーン管理機能の結果として管理された1以上のデータにアクセス(例えば閲覧等)することができない。その結果、本発明に係る情報処理システムのセキュリティの強度等が向上する。 As a result, only the person who has instructed to save one or more data can access (for example, browse) one or more data managed as a result of the blockchain management function. As a result, the strength of security of the information processing system according to the present invention is improved.
 また、前記第2種情報処理装置に接続された第3種情報処理装置をさらに備え、
 前記第3種情報処理装置は、前記ブロックチェーンに保存されている所定の公開鍵を用いて、前記データの暗号化と、当該暗号化がなされたデータに対する所定の署名の記録とを行うことができる。
Further, a third-class information processing device connected to the second-class information processing device is further provided.
The third-class information processing device can encrypt the data and record a predetermined signature on the encrypted data by using a predetermined public key stored in the blockchain. can.
 これにより、第3種情報処理装置から第2種情報処理装置に送信されるデータが暗号化される。このため、第2種情報処理装置には、第2種情報処理装置で新たにデータを作成しない限り、暗号化されたデータのみが存在することになる。その結果、仮に第2種情報処理装置に保存されたデータや、第2種情報処理装置そのものが盗難された場合であっても、データの秘匿性を確保することができる。 As a result, the data transmitted from the type 3 information processing device to the type 2 information processing device is encrypted. Therefore, in the type 2 information processing device, only the encrypted data exists unless new data is created by the type 2 information processing device. As a result, even if the data stored in the type 2 information processing device or the type 2 information processing device itself is stolen, the confidentiality of the data can be ensured.
 また、前記第2種情報処理装置は、
 自機及び前記第3種情報処理装置のアップデート情報の有無の確認を所定タイミングで行い、所定条件を満たした場合、アップデート情報の取得と、前記自機及び前記第3種情報処理装置の更新処理の制御とをさらに行うことができる。
In addition, the second-class information processing device is
Confirmation of the presence or absence of update information of the own machine and the third-class information processing device is performed at a predetermined timing, and when the predetermined conditions are satisfied, the update information is acquired and the update process of the own machine and the third-class information processing device is performed. Can be further controlled.
 これにより、第2種情報処理装置及び第3種情報処理装置のアップデートが自動で行われるので、ブロックチェーンを利用した各種アプリケーションの追加や更新を随時行うことが容易になる。 As a result, the type 2 information processing device and the type 3 information processing device are automatically updated, so that it becomes easy to add or update various applications using the blockchain at any time.
 1,1-1乃至1-5・・・ノード端末、11・・・CPU、111・・・ハードウェアキー検出部、112・・・本人認証部、113・・・ノード管理部、114・・・ファイル取得部、115・・・ファイル管理部、116・・・アップデート管理部、121・・・ブロックチェーン管理部、122・・・分散ファイルシステム管理部、18・・・記憶部、150・・・ブロックチェーン記憶部、160・・・ファイル記憶部、19・・・通信部、2,2-1乃至2-4・・・ノードサーバ、21・・・CPU、211・・・ノード管理部、212・・・ファイル取得部、213・・・ファイル管理部、221・・・ブロックチェーン管理部、222・・・分散ファイルシステム管理部、28・・・記憶部、250・・・ブロックチェーン記憶部、260・・・ファイル記憶部、29・・・通信部、31・・・CPU、311・・・ファイル取得部、312・・・鍵管理部、313・・・暗号化部、314・・・送信制御部、360・・・秘密鍵360、LL,LL-1乃至LL-5・・・専用線、IDH・・・ハードウェアキー、IDC・・・身分証、BC,BC-1乃至BC-4・・・ブロックチェーン、FS,FS-1乃至FS-4・・・ファイルシステム、F・・・ファイル、D・・・フォルダ、C・・・クラウド 1,1-1 to 1-5 ... Node terminal, 11 ... CPU, 111 ... Hardware key detection unit, 112 ... Personal authentication unit, 113 ... Node management unit, 114 ...・ File acquisition unit, 115 ・ ・ ・ File management department, 116 ・ ・ ・ Update management department, 121 ・ ・ ・ Blockchain management department, 122 ・ ・ ・ Distributed file system management department, 18 ・ ・ ・ Storage unit, 150 ・ ・-Blockchain storage unit, 160 ... file storage unit, 19 ... communication unit, 2,2-1 to 2-4 ... node server, 21 ... CPU, 211 ... node management unit, 212 ... File acquisition unit, 213 ... File management unit, 221 ... Blockchain management unit, 222 ... Distributed file system management unit, 28 ... Storage unit, 250 ... Blockchain storage unit 260 ... File storage unit, 29 ... Communication unit, 31 ... CPU, 311 ... File acquisition unit, 312 ... Key management unit, 313 ... Encryption unit, 314 ... Transmission control unit 360 ... Private key 360, LL, LL-1 to LL-5 ... Dedicated line, IDH ... Hardware key, IDC ... Identification card, BC, BC-1 to BC- 4 ... Blockchain, FS, FS-1 to FS-4 ... File system, F ... File, D ... Folder, C ... Cloud

Claims (6)

  1.  ブロックチェーンに係るネットワークに属するノードとして夫々機能する、クラウド上の1以上の第1種情報処理装置と、
     前記クラウドに専用線を介して接続されて、前記ブロックチェーンに係る前記ネットワークに属するノードとして夫々機能する、1以上の第2種情報処理装置と、
     を含み、
     前記ブロックチェーンに係る前記ネットワークを構成する全ての前記ノードの夫々は、1以上のデータの保存が指示されると、当該1以上のデータを前記ネットワークで管理された状態にするブロックチェーン管理機能を発揮させる、
     情報処理システム。
    One or more first-class information processing devices on the cloud that function as nodes belonging to the blockchain network, respectively.
    One or more type 2 information processing devices that are connected to the cloud via a dedicated line and function as nodes belonging to the network related to the blockchain, respectively.
    Including
    When each of the nodes constituting the network related to the blockchain is instructed to save one or more data, a blockchain management function for putting the one or more data in a state managed by the network is provided. Demonstrate,
    Information processing system.
  2.  前記ブロックチェーン管理機能を前記1以上の第2種情報処理装置のうちの所定の1つで発揮させるためのハードウェアキー、
     をさらに備える請求項1に記載の情報処理システム。
    A hardware key for exerting the blockchain management function in a predetermined one of the one or more type 2 information processing devices.
    The information processing system according to claim 1, further comprising.
  3.  前記ブロックチェーン管理機能の結果として管理された前記1以上のデータは、当該1以上のデータの保存の指示をした者以外の者に対するアクセス制限が課せられている、
     請求項1又は2に記載の情報処理システム。
    The one or more data managed as a result of the blockchain management function is subject to access restrictions to persons other than the person who has instructed to save the one or more data.
    The information processing system according to claim 1 or 2.
  4.  前記第2種情報処理装置に接続された第3種情報処理装置をさらに備え、
     前記第3種情報処理装置は、前記ブロックチェーンに保存されている所定の公開鍵を用いて、前記データの暗号化と、当該暗号化がなされたデータに対する所定の署名の記録とを行う、
     請求項1乃至3のうちいずれか1項に記載の情報処理システム。
    A third-class information processing device connected to the second-class information processing device is further provided.
    The third-class information processing device uses a predetermined public key stored in the blockchain to encrypt the data and record a predetermined signature on the encrypted data.
    The information processing system according to any one of claims 1 to 3.
  5.  前記第2種情報処理装置は、
     自機及び前記第3種情報処理装置のアップデート情報の有無の確認を所定タイミングで行い、所定条件を満たした場合、アップデート情報の取得と、前記自機及び前記第3種情報処理装置の更新処理の制御とをさらに行う、
     請求項4に記載の情報処理システム。
    The second-class information processing device is
    Confirmation of the presence or absence of update information of the own machine and the third-class information processing device is performed at a predetermined timing, and when the predetermined conditions are satisfied, the update information is acquired and the update process of the own machine and the third-class information processing device is performed. Further control and control,
    The information processing system according to claim 4.
  6.  コンピュータに、
      ブロックチェーンに係るネットワークのノードを構成するに属するノードとして夫々機能する1以上の第1種情報処理装置が存在するクラウドに対して、専用線を介して接続された第2種情報処理装置を、前記ブロックチェーンに係る前記ネットワークのノードを構成するに属するノードとして機能させた状態で、
      1以上のデータの保存が指示されると、当該1以上のデータを前記ブロックチェーンに係るネットワークで管理された状態にするブロックチェーン管理機能を発揮させる処理を含む、
     制御処理を実行させるプログラム。
    On the computer
    A type 2 information processing device connected via a dedicated line to a cloud in which one or more type 1 information processing devices each function as a node belonging to a node of a network related to a blockchain exists. In a state of functioning as a node belonging to the node of the network related to the blockchain.
    When it is instructed to save one or more data, it includes a process of exerting a blockchain management function that puts the one or more data in a state managed by the network related to the blockchain.
    A program that executes control processing.
PCT/JP2021/007723 2020-02-28 2021-03-01 Information processing system and program WO2021172589A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021555548A JP7158690B2 (en) 2020-02-28 2021-03-01 Information processing system and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020033218 2020-02-28
JP2020-033218 2020-02-28

Publications (1)

Publication Number Publication Date
WO2021172589A1 true WO2021172589A1 (en) 2021-09-02

Family

ID=77491677

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/007723 WO2021172589A1 (en) 2020-02-28 2021-03-01 Information processing system and program

Country Status (2)

Country Link
JP (1) JP7158690B2 (en)
WO (1) WO2021172589A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016218633A (en) * 2015-05-18 2016-12-22 株式会社Orb Virtual currency management program, and virtual currency management method
JP2018081464A (en) * 2016-11-15 2018-05-24 富士通株式会社 Communication method, apparatus, and program
JP2018182710A (en) * 2017-08-10 2018-11-15 アイビーシー株式会社 Electronic certification system
JP2020010267A (en) * 2018-07-12 2020-01-16 コニカミノルタ株式会社 Distributed medical information sharing system, medical information provision server, and program

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4917116B2 (en) 2009-02-25 2012-04-18 株式会社エヌ・ティ・ティ・ドコモ Data encryption system, communication device, and data encryption method
JP2018190227A (en) 2017-05-09 2018-11-29 野田 真一 Network distributed duplication exclusion file storage system
JP3230238U (en) 2018-04-10 2021-01-14 ブラック ゴールド コイン インコーポレイテッドBlack Gold Coin, Inc. A system for securely storing electronic data
CN108664223B (en) 2018-05-18 2021-07-02 百度在线网络技术(北京)有限公司 Distributed storage method and device, computer equipment and storage medium
JP6626228B1 (en) 2019-03-19 2019-12-25 株式会社スカイコム Management server, document file management system, document file management method, and document file management program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016218633A (en) * 2015-05-18 2016-12-22 株式会社Orb Virtual currency management program, and virtual currency management method
JP2018081464A (en) * 2016-11-15 2018-05-24 富士通株式会社 Communication method, apparatus, and program
JP2018182710A (en) * 2017-08-10 2018-11-15 アイビーシー株式会社 Electronic certification system
JP2020010267A (en) * 2018-07-12 2020-01-16 コニカミノルタ株式会社 Distributed medical information sharing system, medical information provision server, and program

Also Published As

Publication number Publication date
JP7158690B2 (en) 2022-10-24
JPWO2021172589A1 (en) 2021-09-02

Similar Documents

Publication Publication Date Title
AU2019204712B2 (en) Managing sensitive data elements in a blockchain network
EP3788523B1 (en) System and method for blockchain-based cross-entity authentication
US20210051025A1 (en) System and method for blockchain-based cross-entity authentication
WO2021000419A1 (en) System and method for blockchain-based cross-entity authentication
AU2019204712A1 (en) Managing sensitive data elements in a blockchain network
WO2023024742A1 (en) Data processing method and apparatus, and computer device and storage medium
JP6543743B1 (en) Management program
KR101993293B1 (en) System and method for processing expense data based on blockchain and computer program for the same
CN110601830B (en) Key management method, device, equipment and storage medium based on block chain
CN111327426B (en) Data sharing method and related device, equipment and system
CN109951490A (en) Webpage integrity assurance, system and electronic equipment based on block chain
CN112804354B (en) Method and device for data transmission across chains, computer equipment and storage medium
CN112202713A (en) User data security protection method under Kubernetes environment
CN113765675B (en) Transaction data processing method, device, equipment and medium
KR20210060745A (en) System for processing electronic contracts based on blockchain
CN115409511B (en) Personal information protection system based on block chain
WO2021172589A1 (en) Information processing system and program
WO2024045552A1 (en) Data processing method and related devices
TWM585941U (en) Account data processing system
shaher Alslman et al. Exchanging digital documents using blockchain technology
KR102638374B1 (en) Method for saving to distribution data employing image value deciding based in CNN and blockchain driving
Zhang et al. Secure Data Provenance
WO2023106629A1 (en) Control method for blockchain-based evidence data notarization system, and recording medium and system for performing same
Ahamd Cloud storage security using blockchain technology
Selvaganesh et al. Secure data storage based on efficient auditing scheme

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2021555548

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21760235

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21760235

Country of ref document: EP

Kind code of ref document: A1