Data management device, key management device, data management method, key management method, data management program, and key management program
The data management system uses distributed keys and member consensus to ensure only authorized users can decrypt data, addressing confidentiality and security issues in existing systems by preventing unauthorized access and leakage.
Patent Information
- Application Number
- JP2023104271
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-06-26
- Publication Date
- 2025-01-15
AI Technical Summary
Existing data management systems struggle to ensure the confidentiality and security of data, making it difficult to prevent data leakage and unauthorized use.
A data management system that generates a first private key restorable using a predetermined number of distributed keys, where the keys are stored across multiple devices, requiring consensus from a predetermined number of members to decrypt the data, ensuring only authorized users can access and decrypt the data.
The system effectively suppresses data leakage by ensuring that only authorized users can decrypt the data, even if individual devices or administrators lack the complete decryption key, thereby enhancing data security.
Smart Images

Figure 2025004536000001_ABST
Abstract
Description
[Technical field]
[0001] The present disclosure relates to a data management device and the like. [Background technology]
[0002] Data may be traded via a database located in a storage device on a network. The data to be traded is registered in the database by, for example, a data provider. Then, a user acquires the data from the database after, for example, receiving permission from the provider. When data is stored in a database on a network, it may be necessary to ensure the confidentiality of the data. For example, in order to prevent leakage of the contents of the data and unauthorized use of the data, the data stored in the database must be managed in a confidential manner.
[0003] When a user requests the data management device of Patent Document 1 to decrypt encrypted data, the data management device generates a decryption key using decryption information obtained from other users. The data management device then decrypts the data using the generated decryption key. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] International Publication No. 2016 / 158721 Summary of the Invention [Problem to be solved by the invention]
[0005] In the technique described in Patent Document 1, it may be difficult to ensure the confidentiality of the data to be provided.
[0006] In order to solve the above problems, an object of the present disclosure is to provide a data management device and the like that can prevent data leakage. [Means for solving the problem]
[0007] In order to solve the above problems, the data management device of the present disclosure comprises a generation means for generating a first private key that can be restored using a predetermined number of shared keys; a registration means for registering data encrypted using the first private key in a database of a data storage device; an output means for outputting at least one of the shared keys used to restore the private key to a key management device that stores the shared keys and restores the first private key; an acquisition means for acquiring a usage request for data registered in the database; a decision means for deciding whether to agree to the permission of the request to use the data in an expression of intent regarding whether or not each member of an organization that permits a request to use the data based on the consent of multiple members expresses their intention to consent; and a key output means for outputting a key required to restore the private key corresponding to the requested data to the key management device when it is decided to agree to the permission of the request to use the data.
[0008] The key management device of the present disclosure comprises a shared key acquisition means for acquiring at least one of the shared keys of the first private key, which is a first private key used to encrypt data registered in a database and can be restored with a predetermined number of shared keys, a restoration key acquisition means for acquiring a key necessary to restore the first private key from a data management device that has decided to agree to the authorization of a data use request in an expression of intent regarding whether or not to give consent made by each member of an organization that authorizes a data use request based on the consent of multiple members, a restoration means for restoring a private key based on the shared key and the key necessary to restore the first private key, and a private key output means for outputting the restored private key to a user device used by the user who made the data use request.
[0009] The data management method disclosed herein generates a first private key that can be restored using a predetermined number of shared keys, registers data encrypted using the first private key in a database of a data storage device, outputs at least one of the shared keys used to restore the private key to a key management device that stores the shared keys and restores the first private key, obtains a request to use the data registered in the database, decides whether to agree to the authorization of the request to use the data in an expression of intent regarding whether or not each member of an organization that authorizes the request to use the data based on the consent of multiple members, and when it is decided to agree to the authorization of the request to use the data, outputs a key required to restore the first private key corresponding to the requested data to the key management device.
[0010] The key management method disclosed herein involves obtaining at least one shared key of the first private key, which is used to encrypt data registered in a database and can be restored with a predetermined number of shared keys, obtaining a key necessary to restore the first private key from a data management device that has decided to agree to granting the request to use the data in a declaration of intent regarding whether or not each member of an organization grants a request to use the data based on the consent of multiple members, restoring the first private key based on the shared key and the key necessary to restore the first private key, and outputting the restored first private key to a user device used by the user who made the request to use the data.
[0011] The data management program disclosed herein causes a computer to execute the following processes: generating a first private key that can be restored using a predetermined number of shared keys; registering data encrypted using the first private key in a database of a data storage device; outputting at least one of the shared keys used to restore the first private key to a key management device that stores the shared keys and restores the first private key; acquiring a request to use data registered in the database; deciding whether to agree to the authorization of the request to use data in an expression of intent regarding whether or not each member of an organization that permits a request to use data based on the consent of multiple members; and, when it is decided to agree to the authorization of the request to use data, outputting to the key management device a key required to restore the private key corresponding to the requested data.
[0012] The key management program disclosed herein causes a computer to execute the following processes: a process of obtaining at least one of the distributed keys of the first private key, which is a first private key used to encrypt data registered in a database and can be restored with a predetermined number of distributed keys; a process of obtaining a key necessary to restore the first private key from a data management device that has decided to agree to granting a request to use data in a declaration of intent regarding whether or not to give consent made by each member of an organization that permits a request to use data based on the consent of multiple members; and a process of restoring the first private key based on the distributed key and the key necessary to restore the first private key, and outputting the restored first private key to a user device used by the user who made the request to use the data. Effect of the Invention
[0013] According to the present disclosure, data leakage can be suppressed. [Brief description of the drawings]
[0014] [Figure 1] FIG. 1 is a diagram illustrating an example of a configuration of a data providing system according to the present disclosure. [Diagram 2]FIG. 2 is a diagram illustrating an example of a process performed in the data providing system according to the present disclosure. [Diagram 3] FIG. 2 is a diagram illustrating an example of a configuration of a data management device according to the present disclosure. [Figure 4] FIG. 2 is a diagram illustrating an example of a configuration of a key management device according to the present disclosure. [Diagram 5] FIG. 11 is a diagram illustrating an example of an operation flow of a data management device according to the present disclosure. [Figure 6] FIG. 11 is a diagram illustrating an example of an operation flow of a data management device according to the present disclosure. [Figure 7] FIG. 11 is a diagram illustrating an example of an operation flow of a key management device according to the present disclosure. [Figure 8] FIG. 2 is a diagram illustrating an example of a hardware configuration of a data management device according to the present disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0015] An embodiment of the present disclosure will be described in detail with reference to the drawings. FIG. 1 is a diagram showing an example of the configuration of a data providing system. The data providing system includes, for example, a data management device 10, a key management device 20, a user device 30, and a data storage device 40. The data providing system includes a plurality of data management devices 10. In addition, the key management device 20, the user device 30, and the data storage device 40 may each be multiple. In addition, the data storage device 40 may be a data space. The number of the data management device 10, the key management device 20, the user device 30, and the data storage device 40 may be set appropriately. In addition, the data management device 10, the key management device 20, the user device 30, and the data storage device 40 are connected to each other, for example, via a network. In addition, the multiple data management devices 10 are connected to each other, for example, via a network.
[0016] A data providing system is, for example, a system that provides data registered in a database in response to a usage request from a user. A user is, for example, an entity that uses data registered in the data providing system after receiving permission to use the data from a data provider. A data provider is, for example, an entity that has the authority to decide whether to grant a usage request for data registered in the database. In other words, a data provider is, for example, an entity that has rights related to the data registered in the database. A data provider may be, for example, an entity that registered data in the database.
[0017] FIG. 2 is a diagram illustrating an example of a process performed in the data providing system. The data registered in the database of the data storage device 40 is encrypted by, for example, the data provider using a private key. The data user makes, for example, a request to the data provider to use the data registered in the database. The data user is able to use the data when the data provider decides to permit the request to use the data. The data user can obtain a private key for decrypting the encrypted data when, for example, it is decided to permit the request to use the data. The data user then uses the data by decrypting the encrypted data obtained from the database with the private key.
[0018] Permission to use data is given, for example, by decision-making in an autonomous decentralized organization. An autonomous decentralized organization is also called a DAO (Decentralized Autonomous Organization). An autonomous decentralized organization is, for example, an organization to which data providers belong as members. Permission to use a request for data registered in a database is decided, for example, when a predetermined number of members or more agree to the provision of data requested by a user. For example, when a request to use data is received, each member of the autonomous decentralized organization expresses their intention to agree to the permission of the request to use data. Then, when a predetermined number of members or more express their intention to agree, it is decided to permit the request to use data. The predetermined number is set, for example, as a majority of the total number of members. The predetermined number is not limited to a majority of the total number of members. The predetermined number is set, for example, by an operator of the autonomous decentralized organization. The predetermined number may be set by decision-making in the autonomous decentralized organization. In addition, an organization that gives permission to use data is not limited to an autonomous decentralized organization. For example, permission for a request to use data may be granted by a server managing the organization by checking whether each member of the organization agrees to the permission.
[0019] 2, each data management device 10 is a device used by each member of the autonomous distributed organization. The members of the autonomous distributed organization decide whether to agree to the permission of the data use request by, for example, operating the data management device 10 used by each member. That is, in the autonomous distributed organization, when it is decided that a predetermined number of data management devices 10 agree to the permission of the data use request, it is decided to permit the data use request.
[0020] In the data provision system, the private key used to encrypt data is stored, for example, divided into distributed keys. The distributed keys are generated, for example, so that the private key can be restored when a predetermined number of distributed keys or more are used. The predetermined number is set, for example, based on the number of members required to grant permission to use data in an autonomous distributed organization.
[0021] The shared keys of the private key used to encrypt the data are stored, for example, in the data management device 10 and the key management device 20. For example, a part of the shared keys is stored in the key management device 20 that restores the private key in a state in which the private key cannot be restored. The state in which the private key cannot be restored means, for example, a state in which the private key cannot be restored only with the shared keys stored in the key management device 20. The state in which the private key cannot be restored only with the shared keys stored in the key management device 20 means, for example, a state in which the shared keys need to be acquired from the data management device 10 in addition to the shared keys stored in the key management device 20 in order to restore the private key. For example, the key management device 20 stores, for example, one shared key out of multiple shared keys required to restore the private key. For example, it is assumed that the use of data is permitted when there is consent from m or more members of the autonomous decentralized organization (m is a positive integer). In this case, the shared keys required to restore the private key are, for example, m+1 (m is a positive integer). For example, when the key management device 20 acquires m key shares from m data management devices 10, the key management device 20 becomes able to restore the private key.
[0022] The state in which the private key cannot be restored using only the key shares stored in the key management device 20 may be a state in which the stored key shares are encrypted using a private key for the key shares. The private key for the key shares is a private key that encrypts the key shares. The private key used to encrypt data is also referred to as a first private key, and the private key for the key shares is also referred to as a second private key.
[0023] In the case where the stored shared keys are encrypted using the private key for the shared keys, for example, it is assumed that the number of members in the autonomous decentralized organization is n (n is a positive integer). It is also assumed that the use of data is permitted when m or more of the members of the autonomous decentralized organization give their consent. It is also assumed that n shared keys are generated so that the private key can be restored by using m or more of the n shared keys. In this case, the n shared keys are stored in the key management device 20 in a state in which they are encrypted using the private key for the shared keys corresponding to each key. The state in which the stored shared keys are encrypted is a state in which the private key used to encrypt the data cannot be restored unless the private key for the shared keys is obtained. In this case, the private keys for the n shared keys are assigned to each member of the autonomous decentralized organization. Then, when a member of the autonomous decentralized organization permits the use of data, for example, the private key for the shared keys is output to the key management device 20 from the data management device 10 used by the member who permitted the use of data. In this case, if m or more members give permission for the use of the data, m or more shared keys can be decrypted, making it possible to recover the private key used for encryption.
[0024] In this way, the shared keys for restoring the private key used to encrypt the data are stored in the data management device 10 and the key management device 20 in a state in which the private key cannot be restored by the shared keys stored in a single device alone. Therefore, for example, the members of the autonomous distributed organization using each of the data management devices 10 and the administrator of the key management device 20 cannot obtain the private key used to encrypt the data. In addition, since the data storage device 40 does not possess the private key, the administrator of the data storage device 40 cannot obtain the private key either. Therefore, the encrypted data cannot be decrypted by anyone other than the user who is permitted to use the data and is provided with the private key. In addition, for example, when the number of times the data is used exceeds a set number of times, the data in the database is re-encrypted using the regenerated private key. Therefore, even if the user is permitted to use the data, when the number of times the data is used exceeds a set number of times, the user cannot decrypt the encrypted data using the regenerated private key.
[0025] In addition, the data providing system can be used, for example, to provide information in a human resources matching service, sell survey data, sell music data, sell image data, sell games, or sell data for games. The data provided by the data providing system is not limited to the above.
[0026] Here, a specific example of the configuration of data management device 10 will be described. Fig. 3 is a diagram showing an example of the configuration of data management device 10. Data management device 10 basically comprises a generation unit 11, a registration unit 12, an output unit 14, an acquisition unit 15, a determination unit 16, and a key output unit 17. Data management device 10 also comprises, for example, an allocation unit 13, a permit output unit 18, and a storage unit 19.
[0027] The generating unit 11 generates a private key that can be restored by a predetermined number of shared keys. Here, the private key that can be restored by the predetermined number of shared keys corresponds to the first private key. The predetermined number is set based on the number of members necessary to decide to permit the use request for the data. For example, in an autonomous distributed organization, if m or more members agree to permit the use request for the data (m is a positive integer), it is decided to permit the use request for the data. Also, it is assumed that one shared key among the shared keys necessary to restore the private key is stored in the key management device 20. In this case, the predetermined number is, for example, m+1. The predetermined number is not limited to m+1. For example, in the decision-making of an autonomous distributed organization, if the decision-making weight differs for each member and each member has a number of shared keys according to the decision-making weight, the predetermined number can be m+1 or more.
[0028] When the predetermined number is m+1, the generation unit 11 generates, for example, a private key that can be restored using the m+1 key shares and the m+1 key shares. The generation unit 11 generates a private key that can be restored using, for example, one key share held by the key management device 20 and m key shares. The m key shares are stored, for example, in a wallet shared by members of the autonomous decentralized organization. The wallet is, for example, a virtual storage location that manages assets of members of the autonomous decentralized organization. The wallet shared by members of the autonomous decentralized organization is installed, for example, in a cloud environment.
[0029] In a case where a request to use data is permitted when consent is obtained from m or more of n members (n is a positive integer), the generation unit 11 may generate n+1 key shares. In this case, the generation unit 11 generates a private key that can be restored when one key share stored in the key management device 20 and m or more of the n key shares are used. In a case where a private key that can be restored when one key share stored in the key management device 20 and m or more of the n key shares are used is generated, the n key shares are assigned to the n members one by one.
[0030] When the shared keys are stored in a state where they are encrypted using a private key, the generation unit 11 generates, for example, a private key for the shared keys to encrypt the shared keys. That is, when the shared keys are stored in a state where they are encrypted using a second private key, the generation unit 11 generates, for example, a second private key for encrypting the shared keys. The generation unit 11 generates, for example, a private key for each shared key as a second private key. Then, the generation unit 11 encrypts each shared key using, for example, a second private key corresponding to each shared key. For example, it is assumed that a request to use data is permitted when consent is obtained from m or more of n members. In this case, the predetermined number is m. The generation unit 11 generates, as a first private key, a private key that can be restored by m or more shared keys out of the n shared keys. Furthermore, the generation unit 11 generates n shared keys. When the n shared keys are generated, the generation unit 11 generates, as a second private key, private keys for the n shared keys corresponding to each shared key. Then, the generation unit 11 encrypts each of the key shares by using a second private key corresponding to each of the key shares. When a private key that can be restored by m of the n key shares is generated as the first private key, the second private key is assigned to each member of the autonomous decentralized organization by, for example, the assignment unit 13.
[0031] When the key shares are stored in a state where they are encrypted using a private key, the generation unit 11 may generate a private key that can be restored using the m key shares as the first private key. In this case, the generation unit 11 generates m key shares. The generation unit 11 also generates private keys for the m key shares corresponding to each of the key shares as second private keys. Then, the generation unit 11 encrypts each of the key shares using the second private key corresponding to each of the key shares. When a private key that can be restored using the m key shares is generated as the first private key, the second private key is stored in, for example, a wallet shared by members of the autonomous decentralized organization. The wallet shared by members of the autonomous decentralized organization is installed in, for example, a cloud environment.
[0032] The generating unit 11 regenerates the private key (first private key) when the use of the data by the user whose use request is permitted is completed, for example. The generating unit 11 determines that the use of the data is completed when the use status of the data whose use request is permitted meets a predetermined criterion, for example. Then, when it is determined that the use of the data is completed, the generating unit 11 regenerates the private key, for example. The regeneration of the private key is performed in the same manner as when the encrypted data is registered in the database of the data storage device 40. That is, the regenerated private key is used to encrypt the data and then stored in the state of a distributed key. In addition, the generated private key may be used to encrypt the data and then stored in the state of a distributed key encrypted using the second private key. The predetermined criterion is, for example, that the data is used once. When the predetermined criterion is, for example, that the data is used once, the generating unit 11 regenerates the private key when the permitted data is used, for example. The predetermined criterion may be, for example, that any one of a plurality of data is used. The predetermined criterion is, for example, a criterion for judging whether the usage of data has reached the upper limit of the permitted range. That is, the predetermined criterion is a criterion for judging whether the usage of data by a user of the data has ended. The predetermined criterion is set, for example, as a criterion for judging whether the usage of data has reached the upper limit of the permitted range. How the predetermined criterion is set is not limited to the above. The predetermined criterion is set, for example, based on at least one of the number of times of using data, the amount of data used, and the period of use of data. The generation unit 11 regenerates the private key, for example, when the number of times of using data whose usage request has been permitted reaches a criterion or more. The generation unit 11 regenerates the private key, for example, when the amount of data downloaded for the data whose usage request has been permitted reaches a criterion or more. The generation unit 11 regenerates the private key, for example, when a period of time equal to or more than the criterion has passed since the start of the usage of the data whose usage request has been permitted. The use form of data on which the predetermined criterion is set is not limited to the above. In addition, the predetermined criterion is set, for example, by a provider who registers the data in a database.
[0033] The registration unit 12 registers data encrypted using the private key generated by the generation unit 11 in the database of the data storage device 40. The registration unit 12 registers and updates the encrypted data so that, for example, all data exists in the data storage device 40 in an encrypted state. The registration unit 12 registers the encrypted data by, for example, outputting data in a state encrypted using the private key to the data storage device 40. In addition, the registration unit 12 associates and stores, for example, information for identifying the encrypted data on the database and information for identifying the distributed key used to encrypt the data in the storage unit 19. Information that associates the information for identifying the encrypted data on the database with the information for identifying the private key and the distributed key of the private key used to encrypt the data may be added to a token used in the autonomous distributed organization. The information for identifying the data is, for example, at least one of the identifier of the data in the database and the storage location of the data. The information for identifying the data is not limited to the above. In addition, the information for identifying the private key and the distributed key is, for example, the identifier of the private key and the distributed key. The information for identifying the private key and the distributed key is not limited to the above.
[0034] Furthermore, when the private key is regenerated by the generating unit 11, the registering unit 12 re-encrypts the data registered in the data storage device 40, for example, using the regenerated private key. The registering unit 12 updates the data registered in the data storage device 40, for example, by replacing the data registered in the data storage device 40 with data encrypted using the regenerated private key. The registering unit 12 replaces the registered data by outputting data encrypted using the regenerated private key to the data storage device 40. The data to be registered in the data storage device 40 is input to the data management device 10, for example, by a member of the autonomous decentralized organization. Furthermore, the registering unit 12 discards the private key used for encryption when registering data encrypted using the private key in the database of the data storage device 40, for example.
[0035] When the key shares are managed in a state where they are encrypted using the private key for the key shares, the allocating unit 13 allocates the private key for the key shares to, for example, the members of the autonomous decentralized organization. For example, when the autonomous decentralized organization has n members and n private keys for the key shares are generated, the allocating unit 13 allocates one private key for the key shares to each of the members of the autonomous decentralized organization. The allocation of the private keys for the key shares to each of the members of the autonomous decentralized organization may be determined when the generating unit 11 generates the key shares or when the private key for the key shares is generated.
[0036] When the key shares are managed by storing a part of the key shares in the key management device 20, the allocation unit 13 may allocate the key shares of the private key used for encrypting the data to be output to the key management device 20. The allocation of the key shares to be output to the key management device 20 may be determined when the generation unit 11 generates the key shares.
[0037] The allocating unit 13 may allocate a key share stored in the wallet to a member who has agreed to the permission of a use request for the data. For example, when m key shares are stored in the wallet, the allocating unit 13 allocates one key share to a member who has agreed to the permission of a use request for the data in the order of consent. The allocating unit 13 may also allocate a private key for a key share stored in the wallet to a member who has agreed to the permission of a use request for the data. For example, when m key shares are stored in the wallet, the allocating unit 13 allocates one private key for a key share to a member who has agreed to the permission of a use request for the data in the order of consent.
[0038] The output unit 14 outputs at least one of the distributed keys used to restore the private key to the distributed key acquisition unit 21 of the key management device 20 in a state in which the private key cannot be restored. For example, the output unit 14 outputs at least one of the distributed keys used to restore the private key to the distributed key acquisition unit 21 of the key management device 20 in a state in which the private key cannot be restored by the distributed key alone. For example, the output unit 14 outputs the distributed key by adding an identifier of the private key corresponding to the distributed key. For example, the output unit 14 may output the distributed key by adding an identifier of data encrypted by the private key corresponding to the distributed key. For example, the output unit 14 outputs at least one of the distributed keys of the private key generated by the generation unit 11 to the distributed key acquisition unit 21 of the key management device 20. For example, the output unit 14 outputs a part of the distributed keys necessary for restoring the private key to the key management device 20. The output unit 14 outputs, for example, the key shares assigned to the key management device 20 by the assignment unit 13 to the key share acquisition unit 21 of the key management device 20. When the private key is regenerated, the output unit 14 outputs at least one of the key shares of the private key regenerated by the generation unit 11 to the key share acquisition unit 21 of the key management device 20.
[0039] The output unit 14 may output a shared key other than the shared key assigned to the key management device 20 to the wallet of the autonomous decentralized organization. The wallet of the autonomous decentralized organization is installed in, for example, a cloud environment. The output unit 14 outputs a shared key other than the shared key assigned to the key management device 20 to, for example, a storage area on a network. The output unit 14 may output a shared key other than the shared key assigned to the key management device 20 to the storage unit 19. Furthermore, the output unit 14 may output a shared key other than the shared key assigned to the key management device 20 to a data management device 10 other than its own device based on the allocation by the allocation unit 13. Furthermore, when the private key is regenerated, the output unit 14 outputs, for example, a shared key of the regenerated private key other than the shared key assigned to the key management device 20 to the wallet of the autonomous decentralized organization.
[0040] The output unit 14 may output the shared key to the shared key acquisition unit 21 of the key management device 20 in a state in which the shared key is encrypted with a private key for the shared key. For example, the output unit 14 outputs all shared keys of a private key (first private key) used to encrypt data in a state in which the shared key is encrypted with a private key for the shared key (second private key). For example, when a private key is regenerated, the output unit 14 outputs the shared key of the regenerated private key (first private key) to the shared key acquisition unit 21 of the key management device 20 in a state in which the shared key is encrypted with a private key for the shared key (second private key).
[0041] The output unit 14 outputs the private key for the key share to, for example, a data management device 10 other than its own device. The output unit 14 outputs the private key for the key share to, for example, a data management device 10 other than its own device, based on the allocation by the allocation unit 13. For example, when a private key is regenerated, the output unit 14 outputs the private key for the key share related to the regenerated private key to a data management device 10 other than its own device. The output unit 14 may also output the private key for the key share to a wallet of the autonomous decentralized organization.
[0042] The acquisition unit 15 acquires, for example, a request to use data registered in a database. The acquisition unit 15 acquires, for example, a request to use data registered in a database from the user device 30. The request to use data includes, for example, information specifying the data that the user wishes to use. The request to use data may further include information on at least one of the number of times the data is used, the frequency of use, and the period of use. The request to use data may further include information on the amount of consideration to be paid by the user making the request to use the data. The information included in the request to use data is not limited to the above.
[0043] The acquisition unit 15 acquires, for example, a shared key of the private key used for encryption from a data management device 10 other than the own device. The acquisition unit 15 also acquires, for example, a private key for a shared key (second shared key) used to encrypt the shared key of the private key (first shared key) used for encrypting the data from a data management device 10 other than the own device. The acquisition unit 15 also acquires a token in the autonomous distributed organization. The token includes, for example, information indicating that a request to use data has been received, information identifying the data for which the request to use has been received, and information indicating whether other members have consented to allowing the request to use data. The information included in the token is not limited to the above.
[0044] The decision unit 16 decides whether to agree to the permission of the data use request in the expression of intent of consent or non-consent made by each member of the autonomous decentralized organization. For example, when a member of the autonomous decentralized organization inputs information indicating approval of the permission of the data use request to the data management device 10, the decision unit 16 decides to agree to the permission of the data use request. When the data use request satisfies a predetermined consent criterion, the decision unit 16 may agree to the permission of the data use request. The predetermined consent criterion is a criterion for deciding whether to agree to the permission of the data use request. For example, the predetermined consent criterion is set by a user of the data management device 10. The predetermined consent criterion is set by, for example, specifying data registered in the database that agrees to the permission of the data use request. The predetermined criterion may be set using an attribute of the data. The attribute of the data is, for example, at least one of the contents of the data, the creation date of the data, and the format of the data. The predetermined consent criterion may also be set based on the amount of the consideration paid by the user. The predetermined consent criterion may also be set based on the attribute of the user of the data. The attributes of the data user include at least one of the following: the affiliation of the data user, whether the data user is a student or a working adult, age, occupation, and whether the data user is a professional or an amateur. The predetermined consent criteria may be set based on the purpose of the data use, for example, whether the data use is for personal use, commercial use, or academic use.
[0045] The decision unit 16 decides to permit the data use request when, for example, a predetermined number or a predetermined percentage of members of the autonomous decentralized organization agree to permit the data use request. The predetermined number or the predetermined percentage is a criterion for deciding whether to permit the data use request.
[0046] For example, when it is decided to agree to the permission of the data use request, the key output unit 17 outputs a key required to restore the private key corresponding to the requested data to the restoration key acquisition unit 22 of the key management device 20. When it is decided to agree to the permission of the data use request, the key output unit 17 specifies the corresponding private key and a key required to restore the private key, for example, based on the identifier of the data. Then, the key output unit 17 outputs a key required to restore the private key, for example, by adding the identifier of the private key to the key management device 20. Also, the key output unit 17 outputs a key required to restore the private key, for example, by adding information for identifying the user device 30 used by the user who made the data use request. For example, when it is decided to agree to the permission of the data use request, the key output unit 17 outputs a shared key as a key required to restore the private key to the restoration key acquisition unit 22 of the key management device 20. For example, the key output unit 17 outputs a shared key assigned to its own device as a key required to restore the private key. The key output unit 17 outputs, for example, a shared key stored in a wallet shared by members of the autonomous decentralized organization as a key required for restoring a private key. When outputting the shared key stored in the wallet, the key output unit 17 may further output a certificate linked to a member who has authorized the data use request to the restoration key acquisition unit 22 of the key management device 20. The certificate is, for example, information that proves that a member who has agreed to authorize the data use request is a member of the autonomous decentralized organization.
[0047] For example, when it is decided to agree to the permission of the use request for the data, the key output unit 17 outputs a private key for the shared key (second private key) to the restoration key acquisition unit 22 of the key management device 20 as a key required for restoring the private key (first private key). For example, the key output unit 17 outputs a private key for the shared key assigned to its own device as a key required for restoring the private key. For example, the key output unit 17 may output a private key for the shared key stored in a wallet shared by members of the autonomous decentralized organization as a key required for restoring the private key.
[0048] When a predetermined number of members of the autonomous decentralized organization agree to the permission of the data use request, the license output unit 18 outputs a license for the requested data to the user device 30 used by the person who made the data use request. The license includes, for example, information specifying the data to be permitted to be used and the usage conditions, and the usage conditions include, for example, at least one of the information of the number of times that the data can be used, the amount of data that can be used, and the period of use. The information included in the license is not limited to the above. Furthermore, the usage conditions are not limited to the above. For example, the license output unit 18 outputs a license for the requested data to the user device 30 when the license output unit 18 first acquires a request to use data. The license output unit 18 may output a license for the requested data to the user device 30 when the license output unit 18 acquires a request to use data registered in the data storage device 40 by the license output unit 18 itself. The license output unit 18 may refer to the token of the autonomous decentralized organization, and output a license for the requested data to the user device 30 when the number of members required for deciding the permission of the data use request is satisfied when the license output unit 18 acquires a request to use data registered in the data storage device 40 by the license output unit 18 itself.
[0049] The storage unit 19 stores, for example, information regarding the registration of data and the permission of a use request for the data. The storage unit 19 stores, for example, an assigned split key. The storage unit 19 may also store, for example, a private key for a distributed key. The storage unit 19 stores, for example, information for identifying data encrypted on a database and information for identifying a distributed key used to encrypt the data in association with each other. The storage unit 19 stores, for example, a history regarding the permission of a use request for the data. The history regarding the permission of a use request for the data includes, for example, a user, data permitted for use, and use conditions. The information included in the history regarding the permission of use of data is not limited to the above.
[0050] Next, a specific example of the configuration of the key management device 20 will be described. Fig. 4 is a diagram showing an example of the configuration of the key management device 20. The key management device 20 basically comprises a distributed key acquisition unit 21, a restoration key acquisition unit 22, a restoration unit 23, and a private key output unit 24. The key management device 20 also comprises, for example, a key storage unit 25 and a storage unit 26.
[0051] The key distribution acquisition unit 21 acquires at least one shared key among the shared keys of a private key that can be restored with a predetermined number of shared keys, which is, for example, a private key used to encrypt data registered in a database. Here, the private key corresponds to a first private key. The key distribution acquisition unit 21 acquires, for example, at least one shared key among the shared keys of a private key that can be restored with a predetermined number of shared keys, in a state in which the private key cannot be restored with only the at least one shared key. The key distribution acquisition unit 21 stores the acquired shared key in, for example, the key storage unit 25. The key distribution acquisition unit 21 acquires, for example, a shared key with an identifier of the private key corresponding to the shared key added thereto.
[0052] The key share acquisition unit 21 acquires, for example, one shared key of the private key used for encryption from the output unit 14 of the data management device 10 that encrypted the data. The key share acquisition unit 21 acquires one shared key of the private key that can be restored with a predetermined number of shared keys. In this case, when the use of data is permitted with the consent of m people in the autonomous distributed organization, the predetermined number is, for example, m+1. That is, the key share acquisition unit 21 acquires one shared key of the private key that can be restored with m+1 shared keys. In this case, for example, in a state where one shared key has been acquired, the restoration unit 23 cannot restore the private key. In addition, the private key used for encryption may be a private key that can be restored when m or more shared keys of the n shared keys and one shared key stored by the key storage unit 25 are collected when the autonomous distributed organization has n members.
[0053] The key share acquisition unit 21 may acquire each of the private keys (first private keys) that can be restored with a predetermined number of keys shared in a state where the keys shared are encrypted with a private key (second private key) for the keys shared. In this case, when the autonomous distributed organization permits the use of data with the consent of m people, the predetermined number is, for example, m. When the autonomous distributed organization has n members, the private key used for encryption is, for example, a private key that can be restored when m or more of the n keys shared are collected. The key share acquisition unit 21 acquires, for example, each of the n keys shared in a state where the keys shared are encrypted with a private key for the keys shared. The key share acquisition unit 21 may also acquire each of the m keys shared in a state where the keys shared are encrypted with a private key for the keys shared.
[0054] The restoration key acquisition unit 22 acquires a key required for restoring the private key used for encrypting the data from, for example, the key output unit 17 of the data management device 10 that has decided to agree to the permission of the data use request. Here, the data management device 10 is, for example, a device used by each member of an autonomous decentralized organization that permits a data use request based on the consent of multiple members to express their intention to indicate whether or not they agree to the permission of the data use request. The restoration key acquisition unit 22 acquires, for example, a shared key other than the shared key stored in the key storage unit 25, among the shared keys required for restoring the private key. For example, when one shared key is stored in the key storage unit 25 among the shared keys of the private key that can be restored with m+1 shared keys, the restoration key acquisition unit 22 acquires one shared key included in the m shared keys from each of the data management devices 10 that have agreed to the provision of data. Furthermore, in the case where a private key that can be restored when m or more of the n shared keys and one shared key stored by the key storage unit 25 are collected is used, the restoration key acquisition unit 22 acquires one shared key included in the n shared keys from each of the data management devices 10 that have agreed to provide the data. Furthermore, when acquiring a key required for restoring a private key from the key output unit 17 of the data management device 10, the restoration key acquisition unit 22 may further acquire a certificate linked to the member who has authorized the use of the data. For example, when acquiring a shared key stored in a wallet from the key output unit 17 of the data management device 10, the restoration key acquisition unit 22 acquires, as a certificate, information that proves that the member who has authorized the use of the data is a member of the autonomous distributed organization.
[0055] The recovery key acquisition unit 22 may acquire a private key for the shared key (second shared key) as a key required for restoring the private key (first private key) used to encrypt the data. When the n shared keys are stored in the key storage unit 25 in a state where they are encrypted using the private key for the shared key, the recovery key acquisition unit 22 acquires one private key for the shared key included in the private key for the n shared keys from each of the data management devices 10 that have agreed to the provision of data. When the m shared keys are stored in a state where they are encrypted using the private key for the shared key, the recovery key acquisition unit 22 acquires one private key for the shared key out of the private keys for the m shared keys from each of the data management devices 10 that have agreed to the provision of data.
[0056] The restoration unit 23 restores the private key based on, for example, a key required for restoring the shared key and the private key. The restoration unit 23 restores the private key using, for example, a shared key having a matching identifier of the added private key. The restoration unit 23 restores the private key based on, for example, a shared key stored in the key storage unit 25 and a shared key acquired by the restoration key acquisition unit 22. In a case where the private key can be restored using m shared keys and one shared key stored in the key storage unit 25, the restoration unit 23 restores the private key based on m+1 shared keys when m shared keys are acquired. In a case where the shared key is encrypted using a private key for the shared key, the restoration unit 23 decrypts a predetermined number of encrypted shared keys using a private key for the predetermined number of shared keys. Then, the restoration unit 23 restores the private key used to encrypt the data using the decrypted predetermined number of shared keys. The predetermined number is the number of shared keys required to restore the private key. The restoration unit 23 decrypts the key shares by using the private key for the key shares acquired by the restoration key acquisition unit 22. Then, when the predetermined number is m, the restoration unit 23 restores the private key by using the m key shares when the m key shares are decrypted.
[0057] The restoration unit 23 may restore the private key when acquiring a certificate corresponding to each member who has agreed to the permission of the use request for the data. The restoration unit 23 restores the private key, for example, by using a shared key to which a certificate is added. For example, when the restoration key acquisition unit 22 acquires a shared key stored in a wallet, the restoration unit 23 restores the private key by using a shared key to which a certificate is added among the shared keys acquired by the restoration key acquisition unit 22. The certificate is, for example, information indicating that a member who has agreed to the permission of the use request for the data is a member of an autonomous distributed organization. In addition, the restoration unit 23 excludes, for example, a shared key to which a certificate is not added among the shared keys acquired by the restoration key acquisition unit 22 from the shared keys used to restore the private key.
[0058] The private key output unit 24 outputs, for example, the private key restored by the restoration unit 23. The private key output unit 24 outputs the restored private key to, for example, the user device 30 used by the user who has made the request to use the data. Information for identifying the user device 30 used by the user who has made the request to use the data is added, for example, to a key required for restoring the private key acquired by the restoration key acquisition unit 22.
[0059] Furthermore, if the private key cannot be restored, the private key output unit 24 may output, to the user device 30 used by the user who made the request to use the data, information indicating that the request to use the data was not permitted. Furthermore, if the private key cannot be restored, the private key output unit 24 may output, to the data management device 10, information indicating that the private key cannot be restored.
[0060] The key storage unit 25 stores, for example, the shared keys of the private key used to encrypt the data. The key storage unit 25 stores, for example, the shared keys acquired by the shared key acquisition unit 21. The key storage unit 25 also stores, for example, the shared keys encrypted with the private key for the shared key acquired by the shared key acquisition unit 21. The key storage unit 25 stores, for example, the shared keys acquired by the recovery key acquisition unit 22. The key storage unit 25 also stores, for example, the private key for the shared key acquired by the recovery key acquisition unit 22.
[0061] The storage unit 26 stores, for example, data related to the restoration of the private key. The storage unit 26 stores, for example, information capable of identifying encrypted data on the database and information identifying the shared key corresponding to the encrypted data in association with each other.
[0062] The user device 30 is, for example, an information processing device used by a user who uses data registered in a database to make a data usage request and obtain authorized data. The user device 30 outputs the data usage request to, for example, the data management device 10. The data usage request is input to, for example, the user device 30 by the user who uses the data. The data usage request includes, for example, information specifying the data that the user wishes to use. The data usage request may include information on at least one of the items of the number of times the data is used, the amount of data used, and the usage period.
[0063] For example, when a request to use the data is permitted, the user device 30 obtains a private key from the key management device 20. In addition, for example, when a request to use the data is permitted, the user device 30 further obtains a license to use the data from the data management device 10.
[0064] The user device 30 outputs a data usage permit to, for example, the data storage device 40. Then, the user device 30 acquires the data that is permitted to be used, for example, from the data storage device 40. The user device 30 decrypts the data acquired from the data storage device 40, for example, by using a private key acquired from the key management device 20.
[0065] When the use of the data is completed, the user device 30 may output information indicating that the use of the data is completed to the data management device 10. For example, the user device 30 outputs information indicating that the use of the data is completed to the data management device 10 that issued the data use permit.
[0066] For example, a personal computer, a server, a tablet computer, a smartphone, or a wearable terminal device is used as the user device 30. Examples of information processing devices used as the user device 30 are not limited to the above.
[0067] The data storage device 40 stores, for example, encrypted data. The data storage device 40 includes, for example, a controller that manages data, and a storage means. The storage means may be a plurality of storage devices connected via a network. The data storage device 40 may be a data space on the network. The data storage device 40 stores, for example, encrypted data in a state where it is registered in a database. The data storage device 40 acquires, for example, from the user device 30, a usage certificate indicating that a request to use the data has been permitted, and a request for the data. The data storage device 40 then searches the database for the data specified in the usage certificate, and the data storage device 40 outputs, for example, the data specified in the usage certificate to the user device 30.
[0068] The data storage device 40 outputs data based on a predetermined standard for data usage specified in the license. The predetermined standard for data usage is, for example, information indicating the conditions for using the data. The predetermined standard for data usage is set based on, for example, at least one of the number of times that data can be used, the amount of data that can be used, and the period during which data can be used. The predetermined standard for data usage is a standard indicating an upper limit for at least one of the number of times that data can be used, the amount of data, and the period during which data can be used. How the predetermined standard for data usage is set is not limited to the above.
[0069] An example of the operation of the data management device 10 to register encrypted data in the data storage device 40 will be described. Fig. 5 is a diagram showing an example of an operation flow when the data management device 10 performs processing to register encrypted data in the data storage device 40.
[0070] The generation unit 11 generates a private key that can be restored using a predetermined number of key shares (step S11). The generation unit 11 generates, for example, a private key that can be restored using the predetermined number of key shares and the predetermined number of key shares.
[0071] When the private key is generated, the registration unit 12 registers the data encrypted using the private key in the database of the data storage device 40 (step S12). After registering the encrypted data, the registration unit 12 discards the private key used to encrypt the data when, for example, the data encrypted using the private key was registered in the database of the data storage device 40 (step S13).
[0072] When the encrypted data is registered in the database, the output unit 14 outputs at least one of the shared keys used to restore the private key to the key management device 20 (step S14). The output unit 14 outputs at least one of the shared keys used to restore the private key to the key management device 20 in a state in which the private key cannot be restored by the at least one shared key alone.
[0073] An example of the operation of the data management device 10 to grant permission for a data usage request will be described below. Fig. 6 is a diagram showing an example of an operation flow when the data management device 10 performs processing related to permission for a data usage request. In the following description, it is assumed that the data management device 10 re-encrypts the data after the user has completed using the data, for example.
[0074] The acquisition unit 15 acquires a request to use the data (step S21). The acquisition unit 15 acquires the request to use the data from the user device 30, for example.
[0075] When the data use request is acquired, the decision unit 16, as a member of the autonomous decentralized organization, decides whether to agree to permit the data use request (step S22).
[0076] If it is decided to agree to permit the use request for the data (Yes in step S23), the key output unit 17 outputs to the key management device 20 a key required to restore the private key corresponding to the requested data (step S24).
[0077] When the key required to restore the private key is output, the permit output unit 18, for example, checks whether it has been decided to permit the request to use the data (step S25). The permit output unit 18, for example, refers to the token of the autonomous decentralized organization, and checks whether the number of members required to permit the request to use the data have agreed to permit the request to use the data. If it has been decided to permit the request to use the data (Yes in step S26), the permit output unit 18 outputs a permit to use the data to, for example, the user device 30 (step S27).
[0078] Furthermore, in step S23, if it is determined that the permission for the use request for the data is not agreed to (No in step S23), the processing from step S25 onwards is carried out.
[0079] After the data usage license is output in step S27, when usage of the data is completed in the user device 30 (Yes in step S28), the generation unit 11 regenerates the private key used to encrypt the data (step S29).
[0080] When the private key is regenerated, the registration unit 12 re-encrypts the data registered in the database of the data storage device 40 using the regenerated private key (step S30).
[0081] When the data is re-encrypted, the output unit 14 outputs at least one of the shared keys of the regenerated private key to the key management device 20 (step S31).
[0082] In step S28, if the use of the data has not been completed in the user device 30 (No in step S28), the data management device 10 waits until the use of the data is completed.
[0083] Also, in step S26, if it is decided by the autonomous decentralized organization not to permit the request to use the data (No in step S26), the permit output unit 18 outputs, for example, to the user device 30, information indicating that the data usage request is not permitted (step S32).
[0084] The following describes operations performed by the key management device 20 when storing key shares and restoring a private key. Figure 7 is a diagram showing an example of an operational flow when the key management device 20 performs processing related to storing key shares and restoring a private key.
[0085] The key share acquisition unit 21 acquires at least one key share of the private key that is used to encrypt data registered in the database and can be restored by a predetermined number of key shares (step S41). The key share acquisition unit 21 acquires, for example, from the data management device 10, a key share or a key share encrypted by a private key for a key share.
[0086] When the key share is acquired, the key storage unit 25 stores, for example, the key share acquired by the key share acquisition unit 21 (step S42).
[0087] Furthermore, the restoration key acquisition unit 22 acquires a key required to restore the private key from the data management device 10 (step S43). When the number of keys required to restore the private key is acquired (Yes in step S44), the restoration unit 23 restores the private key based on the stored shared keys and the key required to restore the acquired private key (step S45). When the private key is restored, the private key output unit 24 outputs the restored private key to the user device 30 that has made a request to use the data (step S46).
[0088] In step S44, if the number of keys required to restore the private key has not been acquired (No in step S44), the restoration unit 23 determines that the private key cannot be restored. If it is determined that the private key cannot be restored, the key management device 20 ends the process related to the private key restoration.
[0089] The data management device 10 encrypts data using a private key and registers the data in the database of the data storage device 40. The data management device 10 also outputs at least one of the shared keys of the private key to the key management device 20. The data management device 10 outputs, for example, a part of the shared keys required to restore the private key to the key management device 20. The data management device 10 also outputs, for example, a shared key encrypted with a private key for the shared key to the key management device 20. By managing the shared keys required for decrypting the encrypted data in this way, the encrypted data in the database cannot be decrypted by the data management device 10 and the key management device 20 other than the data management device 10 that performed the encryption. The data storage device 40 also cannot decrypt the encrypted data in the database. The user device 30 cannot decrypt the encrypted data unless the user device 30 is permitted to use the data and has acquired the restored private key. In this way, since it is possible to restrict the decryption of the encrypted data registered in the database, it is possible to suppress data leakage while facilitating the use of the data.
[0090] After the data usage is completed, the data management device 10 re-encrypts the data in the database using the regenerated private key. Therefore, the user device 30 and the key management device 20 no longer have a private key that can decrypt the data. In other words, the user device 30 and the key management device 20 cannot decrypt the data except when usage is permitted, which further suppresses data leakage.
[0091] Each process in the data management device 10 may be distributed and executed in a plurality of information processing devices connected via a network. For example, the process related to data encryption and the process related to data use permission may be executed in different information processing devices. For example, the processes in the generation unit 11, the registration unit 12, the allocation unit 13, and the output unit 14 and the processes in the acquisition unit 15, the determination unit 16, the key output unit 17, and the permit output unit 18 may be executed in different information processing devices. It may be appropriately set which information processing device executes each process in the data management device 10.
[0092] Each process in the data management device 10 can be realized by executing a computer program on a computer. Fig. 8 shows an example of the configuration of a computer 100 that executes a computer program that performs each process in the data management device 10. The computer 100 includes a CPU (Central Processing Unit) 101, a memory 102, a storage device 103, an input / output I / F (Interface) 104, and a communication I / F 105.
[0093] The CPU 101 reads out and executes a computer program for performing each process from the storage device 103. The CPU 101 may be configured by a combination of multiple CPUs. The memory 102 is configured by a dynamic random access memory (DRAM) or the like, and temporarily stores the computer program executed by the CPU 101 and data being processed. The storage device 103 stores the computer program executed by the CPU 101. The storage device 103 is configured by, for example, a non-volatile semiconductor storage device. Other storage devices such as a hard disk drive may be used for the storage device 103. The input / output I / F 104 is an interface that receives input from an operator and outputs display data and the like. The communication I / F 105 is an interface that transmits and receives data between the key management device 20, the data storage device 40, and the user device 30. The key management device 20, the data storage device 40, and the user device 30 may be configured similarly to the computer 100.
[0094] The computer programs used to execute each process can also be distributed by storing them in a computer-readable recording medium that non-temporarily records data. As the recording medium, for example, a magnetic disk such as a magnetic tape for recording data or a hard disk can be used. Also, an optical disk such as a CD-ROM (Compact Disc Read Only Memory) can be used as the recording medium. A non-volatile semiconductor storage device can also be used as the recording medium.
[0095] A part or all of the above-described embodiments can be described as, but is not limited to, the following supplementary notes.
[0096] [Appendix 1] a generating means for generating a first private key that can be restored by a predetermined number of key shares; a registration means for registering data encrypted using the first private key in a database of a data storage device; an output means for outputting at least one of the key shares used to restore the first private key to a key management device that stores the key shares and restores the first private key; an acquisition means for acquiring a usage request for the data registered in the database; A decision means for deciding whether to agree to the permission of the request to use the data in response to a declaration of intent of consent or non-consent made by each member of an organization that permits a request to use the data based on the consent of a plurality of members; a key output means for outputting, to said key management device, a key necessary for recovering a first private key corresponding to the requested data when it is determined that the request to use the data is approved; A data management device comprising:
[0097] [Appendix 2] the output means outputs, to the key management device, each of the key shares encrypted with a second private key; the key output means outputs the second private key as a key necessary for restoring the first private key. 2. A data management device as described in appendix 1.
[0098] [Appendix 3] the key output means outputs, as a key necessary for restoring the first private key, one of the key shares held in common among the members of the organization. 2. A data management device as described in appendix 1.
[0099] [Appendix 4] the key output means further outputs to the key management device a certificate certifying that the member who has agreed to the permission of the use request for the data is a member of the autonomous decentralized organization. 4. A data management device as described in appendix 3.
[0100] [Appendix 5] said generating means regenerating said first private key when the authorized user completes use of the data; The registration means encrypts the used data registered in the data storage device using the regenerated first private key, the output means outputs at least one of the regenerated shares of the first private key to the key management device. 5. A data management device according to any one of claims 1 to 4.
[0101] [Appendix 6] when a predetermined number of members of the organization agree to the permission of the request to use the data, a license indicating that the request to use the data has been permitted is output to a user device used by the user who has made the request to use the data. 5. A data management device according to any one of claims 1 to 4.
[0102] [Appendix 7] the license includes at least one of information identifying the data permitted for use and information regarding the conditions of use of the data; 7. A data management device as described in appendix 6.
[0103] [Appendix 8] The organization is an autonomous decentralized organization. 5. A data management device according to any one of claims 1 to 4.
[0104] [Appendix 9] a key share acquisition means for acquiring at least one key share of a first private key used for encrypting data registered in a database and capable of being restored by a predetermined number of key shares; a recovery key acquisition means for acquiring a key required for recovering the first private key from a data management device that has decided to consent to the permission of the request to use the data in a declaration of intent regarding the presence or absence of consent made by each member of an autonomous decentralized organization that permits a request to use the data based on the consent of a plurality of members; a restoration means for restoring the first private key based on the key shares and a key required for restoring the first private key; a private key output means for outputting the restored first private key to a user device used by a user who has made a use request for the data; A key management device comprising:
[0105] [Appendix 10] the key share acquisition means acquires each of the key shares of a private key that can be restored by the predetermined number of key shares in a state in which the key shares are encrypted by a private key for the key shares; the restoration key acquisition means acquires a private key for the key share as a key required for restoring the private key, the restoration means decrypts the encrypted number of key shares using a private key for the number of key shares, and restores the private key used to encrypt the data using the decrypted number of key shares. 10. The key management device of claim 9.
[0106] [Appendix 11] the restoration key acquisition means acquires, from each of the data management devices used by the members who have been granted permission to use the data, one of the keys shared and held among the members as a key required to restore the private key; the restoration means restores a private key used to encrypt the data, using the predetermined number of key shares. 10. The key management device of claim 9.
[0107] [Appendix 12] When obtaining a key necessary for recovering the private key, a certificate associated with a member who has been authorized to use the data is further obtained; recovering the private key when the certificate corresponding to each member authorized to use the data is obtained; 12. The key management device of claim 11.
[0108] [Appendix 13] generating a first private key that can be recovered by a predetermined number of key shares; registering data encrypted using the first private key in a database of a data storage device; outputting at least one of the shared keys used to restore the first private key to a key management device that stores the shared keys and restores the first private key; Obtaining a usage request for the data registered in the database; determining whether to consent to the permission of the request to use the data in a declaration of intent of consent or non-consent made by each member of an organization that permits a request to use the data based on the consent of a plurality of members; when it is determined that the request to use the data is to be permitted, outputting to the key management device a key required for recovering a first private key corresponding to the requested data; Data management methods.
[0109] [Appendix 14] Obtaining at least one shared key of a first private key that is used to encrypt data registered in a database and that can be restored using a predetermined number of shared keys; obtaining a key necessary for restoring the first private key from a data management device that has decided to consent to the permission of the request to use the data in a declaration of intent regarding the presence or absence of consent made by each member of an organization that permits a request to use the data based on the consent of a plurality of members; Recovering the first private key based on the key shares and a key required for recovering the first private key; outputting the restored first private key to a user device used by the user who has made a use request for the data; Key management method.
[0110] [Appendix 15] A process of generating a first private key that can be restored by a predetermined number of key shares; A process of registering data encrypted using the first private key in a database of a data storage device; outputting at least one of the key shares used to restore the first private key to a key management device that stores the key shares and restores the first private key; A process of acquiring a usage request for the data registered in the database; A process of determining whether or not a member of an organization that authorizes a request to use the data based on the consent of a plurality of members agrees to the authorization of the request to use the data; a process of outputting, when it is decided that the permission of the use request for the data is to be consented to, to the key management device, a key necessary for recovering a first private key corresponding to the data; A data management program that causes a computer to execute the above.
[0111] [Appendix 16] A process of obtaining at least one key share of a first private key that is used to encrypt data registered in a database and that can be restored using a predetermined number of key shares; A process of acquiring a key required for restoring the first private key from a data management device that has decided to agree to the permission of the request to use the data in a declaration of intent of consent or non-consent made by each member of an organization that permits a request to use the data based on the consent of a plurality of members; Recovering the first private key based on the key shares and a key required for recovering the first private key; outputting the restored first private key to a user device used by a user who has made a request to use the data; A key management program that causes a computer to execute the following:
[0112] Although the present disclosure has been described above with reference to the embodiments, the present disclosure is not limited to the above-described embodiments. Various modifications that can be understood by those skilled in the art can be made to the configuration and details of the present disclosure within the scope of the present disclosure. Furthermore, each embodiment can be appropriately combined with other embodiments. [Explanation of symbols]
[0113] 10 Data management device 11 Generation part 12 Registration Department 13 Allocation Section 14 Output section 15 Acquisition Department 16 Decision Section 17 Key output unit 18 Permit output section 19 Memory section 20 Key management device 21 Distributed key acquisition unit 22 Recovery key acquisition section 23 Restoration Department 24 Private key output section 25 Key Storage 26 Memory section 30 User equipment 40 Data storage device 100 Computers 101 CPU 102 Memory 103 Storage device 104 Input / Output Interface 105 Communication I / F
Claims
1. a generating means for generating a first private key that can be restored by a predetermined number of key shares; a registration means for registering data encrypted using the first private key in a database of a data storage device; an output means for outputting at least one of the shared keys used to restore the first private key to a key management device that stores the shared keys and restores the first private key; an acquisition means for acquiring a usage request for the data registered in the database; A decision means for deciding whether to agree to the permission of the request to use the data in response to a declaration of intent of consent or non-consent made by each member of an organization that permits a request to use the data based on the consent of a plurality of members; a key output means for outputting, to said key management device, a key necessary for recovering a first private key corresponding to the requested data when it is decided to agree to the permission of the use request for the data; A data management device comprising:
2. the output means outputs, to the key management device, each of the shared keys encrypted with a second private key; the key output means outputs the second private key as a key necessary for restoring the first private key. The data management device according to claim 1 .
3. the key output means outputs, as a key necessary for restoring the first private key, one of the keys shared and held by the members of the organization. The data management device according to claim 1 .
4. the key output means further outputs to the key management device a certificate certifying that the member who has agreed to the permission of the use request for the data is a member of the organization. The data management device according to claim 3 .
5. said generating means regenerating said first private key when the authorized user completes use of the data; The registration means encrypts the used data registered in the data storage device using the regenerated first private key, the output means outputs at least one of the regenerated shares of the first private key to the key management device.
5. A data management device according to claim 1.
6. when a predetermined number of members of the organization agree to the permission of the request to use the data, a license indicating that the request to use the data has been permitted is output to a user device used by the user who has made the request to use the data.
5. A data management device according to claim 1.
7. the license includes at least one of information identifying the data permitted for use and information regarding the conditions of use of the data; The data management device according to claim 6.
8. The organization is an autonomous decentralized organization.
5. A data management device according to claim 1.
9. a key share acquisition means for acquiring at least one key share of a first private key used for encrypting data registered in a database and capable of being restored by a predetermined number of key shares; a recovery key acquisition means for acquiring a key required for recovering the first private key from a data management device that has decided to consent to the permission of the request to use the data in a declaration of intent of consent or non-consent made by each member of an organization that permits a request to use the data based on the consent of a plurality of members; a restoration means for restoring the first private key based on the key shares and a key required for restoring the first private key; a private key output means for outputting the restored first private key to a user device used by a user who has made a use request for the data; A key management device comprising:
10. the key share acquisition means acquires each of the key shares of a private key that can be restored by the predetermined number of key shares in a state in which the key shares are encrypted by a private key for the key shares; the restoration key acquisition means acquires a private key for the key share as a key required for restoring the private key, the restoration means decrypts the encrypted number of key shares using a private key for the number of key shares, and restores the private key used to encrypt the data using the decrypted number of key shares. The key management device according to claim 9.
11. the restoration key acquisition means acquires, from each of the data management devices used by the members who have been granted permission to use the data, one of the keys shared and held among the members as a key required to restore the private key; the restoration means restores a private key used to encrypt the data, using the predetermined number of key shares. The key management device according to claim 9.
12. When obtaining a key necessary for recovering the private key, a certificate associated with a member who has been authorized to use the data is further obtained; recovering the private key when the certificate corresponding to each member authorized to use the data is obtained; The key management device of claim 11.
13. generating a first private key that can be restored by a predetermined number of key shares; registering data encrypted using the first private key in a database of a data storage device; outputting at least one of the shared keys used to restore the first private key to a key management device that stores the shared keys and restores the first private key; Obtaining a usage request for the data registered in the database; determining whether to consent to the permission of the request to use the data in a declaration of intent of consent or non-consent made by each member of an organization that permits a request to use the data based on the consent of a plurality of members; when it is determined that the request to use the data is to be permitted, outputting to the key management device a key necessary for recovering a first private key corresponding to the requested data; Data management methods.
14. Obtaining at least one shared key of a first private key that is used to encrypt data registered in a database and that can be restored using a predetermined number of shared keys; obtaining a key necessary for restoring the first private key from a data management device that has decided to consent to the permission of the request to use the data in a declaration of intent regarding the presence or absence of consent made by each member of an organization that permits a request to use the data based on the consent of a plurality of members; Recovering the first private key based on the key shares and a key required for recovering the first private key; outputting the restored first private key to a user device used by the user who has made a request to use the data; Key management method.
15. A process of generating a first private key that can be restored by a predetermined number of key shares; A process of registering data encrypted using the first private key in a database of a data storage device; outputting at least one of the key shares used to restore the first private key to a key management device that stores the key shares and restores the first private key; A process of acquiring a usage request for the data registered in the database; A process of determining whether or not a member of an organization that authorizes a request to use the data based on the consent of a plurality of members agrees to the authorization of the request to use the data; a process of outputting, when it is decided that the permission of the use request for the data is to be consented to, to the key management device, a key necessary for recovering a first private key corresponding to the data; A data management program that causes a computer to execute the above.
16. A process of acquiring at least one key share of a first private key that is used to encrypt data registered in a database and that can be restored using a predetermined number of key shares; A process of acquiring a key necessary for restoring the first private key from a data management device that has decided to consent to the permission of the request to use the data in a declaration of intent regarding the presence or absence of consent made by each member of an organization that permits a request to use the data based on the consent of a plurality of members; Recovering the first private key based on the key shares and a key required for recovering the first private key; outputting the restored first private key to a user device used by a user who has made a request to use the data; A key management program that causes a computer to execute the following:
Citation Information
Patent Citations
Data management device, data management method and computer readable storage medium
WO2016158721A1