WO2017187552A1 - 属性連携装置、転送システム、属性連携方法及び属性連携プログラム - Google Patents

属性連携装置、転送システム、属性連携方法及び属性連携プログラム Download PDF

Info

Publication number
WO2017187552A1
WO2017187552A1 PCT/JP2016/063187 JP2016063187W WO2017187552A1 WO 2017187552 A1 WO2017187552 A1 WO 2017187552A1 JP 2016063187 W JP2016063187 W JP 2016063187W WO 2017187552 A1 WO2017187552 A1 WO 2017187552A1
Authority
WO
WIPO (PCT)
Prior art keywords
attribute
data management
data
access
information
Prior art date
Application number
PCT/JP2016/063187
Other languages
English (en)
French (fr)
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 CN201680084758.5A priority Critical patent/CN109074463A/zh
Priority to US16/081,391 priority patent/US10691815B2/en
Priority to PCT/JP2016/063187 priority patent/WO2017187552A1/ja
Priority to JP2018514016A priority patent/JP6366883B2/ja
Publication of WO2017187552A1 publication Critical patent/WO2017187552A1/ja

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Definitions

  • This invention relates to a technique for managing data with a plurality of data management devices.
  • Electronic data is stored in a data management device called a cloud storage or file server connected to the Internet, and may be used from various devices such as notebook PCs, tablet devices, and smartphones.
  • a cloud storage or file server connected to the Internet
  • Such a method of using data is highly convenient, but there is a risk that data is viewed by an unintended third party on the Internet. Therefore, operation of information security such as encryption or access restriction is essential for confidential data.
  • Patent Document 1 describes that access control to data is performed based on attribute information.
  • An object of the present invention is to enable access control while maintaining consistency of attribute information managed by each data management apparatus when data is shared among a plurality of data management apparatuses.
  • the attribute linkage apparatus is: The attribute information managed by each of the plurality of data management devices is transmitted to any one of the plurality of data management devices, and the access condition to the data is designated by the transmitted attribute information.
  • An attribute distribution unit for storing the data Transmitting access information in which attribute information about a target user is set among attribute information managed by each of the plurality of data management devices, and determining whether the access condition is satisfied by the access information;
  • attribute information managed by each data management device when data is stored, attribute information managed by each data management device is transmitted to designate an access condition.
  • attribute information managed by each data management device When accessing data, attribute information managed by each data management device The access information in which the attribute information about the target user is set is transmitted to control the access. As a result, access control can be performed while maintaining the consistency of the attribute information managed by each data management device.
  • FIG. 1 is a configuration diagram of a data management system 10 according to a first embodiment.
  • 1 is a configuration diagram of an attribute collaboration device 20 according to Embodiment 1.
  • FIG. 1 is a configuration diagram of a data management apparatus 30 according to a first embodiment.
  • 6 is a flowchart of a cooperative service registration process according to the first embodiment. Explanatory drawing of the information memorize
  • FIG. Explanatory drawing of the information memorize
  • FIG. 6 is a flowchart of user registration processing according to the first embodiment.
  • FIG. 6 is a diagram showing an example of attribute information according to the first embodiment.
  • FIG. 4 is a flowchart of encryption processing according to the first embodiment.
  • FIG. 5 is a flowchart of decoding processing according to the first embodiment.
  • the block diagram of the attribute cooperation apparatus 20 which concerns on the modification 3.
  • FIG. The block diagram of the data management apparatus 30 which concerns on the modification 3.
  • FIG. The block diagram of the attribute cooperation apparatus 20 which concerns on Embodiment 2.
  • FIG. 10 is a flowchart of user registration processing according to the second embodiment. 10 is a flowchart of decoding processing according to the second embodiment. 10 is a flowchart of cooperative service registration processing according to the third embodiment.
  • FIG. 10 is a flowchart of user registration processing according to the third embodiment. Explanatory drawing of the information memorize
  • FIG. 10 is a flowchart of encryption processing according to the third embodiment. Explanatory drawing of the information memorize
  • FIG. FIG. 6 is a configuration diagram of a transfer system 11 according to a fourth embodiment. 10 is a flowchart of transmission processing according to the fourth embodiment. 10 is a flowchart of reception processing according to the fourth embodiment.
  • FIG. 6 is a configuration diagram of a data management system 10 according to a fifth embodiment.
  • FIG. 6 is a configuration diagram of a storage apparatus 80 according to a fifth embodiment.
  • FIG. 6 is a configuration diagram of a data management device 30 according to a fifth embodiment.
  • 10 is a flowchart of cooperative service registration processing according to the fifth embodiment.
  • 10 is a flowchart of user registration processing according to the fifth embodiment.
  • FIG. 10 is a flowchart of data storage processing according to the fifth embodiment.
  • 10 is a flowchart of data acquisition processing according to the fifth embodiment.
  • FIG. 10 is a configuration diagram of a transfer system 11 according to a sixth embodiment. 18 is a flowchart of transmission processing according to the sixth embodiment. 10 is a flowchart of a reception process according to the sixth embodiment.
  • Embodiment 1 FIG.
  • the functional encryption is described in International Publication No. 2011/135895.
  • the data is various electronic data such as document data, audio data, and moving image data.
  • the configuration of the data management system 10 according to the first embodiment will be described with reference to FIG.
  • the data management system 10 includes an attribute linkage device 20 and a plurality of data management devices 30.
  • the attribute linkage device 20 and each data management device 30 are connected via a network 40.
  • One or more users 50 belong to each data management device 30.
  • the user 50 accesses the data management apparatus 30 to which the user 50 belongs.
  • the attribute linkage device 20 is a computer.
  • the attribute collaboration apparatus 20 is configured by a single computer, but the attribute collaboration apparatus 20 may be configured by a plurality of computers.
  • the attribute linkage device 20 includes hardware including a processor 21, a memory 22, and a communication interface 23.
  • the processor 21 is connected to other hardware via the system bus and controls these other hardware.
  • the processor 21 is an IC (Integrated Circuit) that performs processing. Specific examples of the processor 21 are a CPU, a DSP (Digital Signal Processor), and a GPU (Graphics Processing Unit).
  • the memory 22 includes a non-volatile memory that can continue to hold an execution program and data while the attribute linkage apparatus 20 is powered off, and a volatile memory that can move data at high speed when the attribute linkage apparatus 20 operates. Consists of. Specific examples of the nonvolatile memory include an HDD (Hard Disk Drive), an SSD (Solid State Drive), and a flash memory.
  • the non-volatile memory may be a portable storage medium such as an SD (Secure Digital) memory card, a CF (Compact Flash), a NAND flash, a flexible disk, an optical disk, a compact disk, a Blu-ray (registered trademark) disk, or a DVD.
  • Specific examples of the volatile memory include DDR2-SDRAM (Double-Data-Rate2 Synchronous Random Access Memory) and DDR3-SDRAM (Double-Data-Rate3 Synchronous Dynamic Memory).
  • the communication interface 23 is a device for communicating with other devices such as each data management device 30.
  • the communication interface 23 is a terminal of Ethernet (registered trademark), RS232C, USB, or IEEE1394.
  • the attribute cooperation device 20 includes a cooperation management unit 211, a master key generation unit 212, a user management unit 213, a decryption key generation unit 214, an attribute distribution unit 215, and a condition distribution unit 216 as functional components. .
  • the functions of the link management unit 211, the master key generation unit 212, the user management unit 213, the decryption key generation unit 214, the attribute distribution unit 215, and the condition distribution unit 216 are realized by software.
  • the memory 22 stores a program that realizes the functions of each unit of the attribute linkage apparatus 20. This program is read and executed by the processor 21. In addition, the memory 22 realizes functions of the cooperation information storage unit 221 and the key storage unit 222.
  • the attribute linkage apparatus 20 may include a plurality of processors that replace the processor 21.
  • the plurality of processors share the execution of a program that realizes the function of each unit of the attribute linkage apparatus 20.
  • Each processor is an IC that performs processing in the same manner as the processor 21.
  • the data management device 30 is a computer called a cloud storage or a file server.
  • the data management apparatus 30 is configured by a single computer, but the data management apparatus 30 may be configured by a plurality of computers.
  • the data management device 30 includes hardware including a processor 31, a memory 32, and a communication interface 33.
  • the processor 31 is connected to other hardware via the system bus and controls these other hardware.
  • the processor 31 is an IC that performs processing.
  • the processor 31 is a CPU, a DSP, or a GPU.
  • the memory 32 includes a non-volatile memory capable of continuously holding an execution program and data while the data management device 30 is turned off, and a volatile memory capable of moving data at high speed during operation of the data management device 30. Consists of. Specific examples of the nonvolatile memory are an HDD, an SSD, and a flash memory.
  • the nonvolatile memory may be a portable storage medium such as an SD memory card, CF, NAND flash, flexible disk, optical disk, compact disk, Blu-ray (registered trademark) disk, or DVD. Specific examples of the volatile memory are DDR2-SDRAM and DDR3-SDRAM.
  • the communication interface 33 is a device for communicating with other devices such as the attribute cooperation device 20.
  • the communication interface 33 is a terminal of Ethernet (registered trademark), RS232C, USB, or IEEE1394.
  • the data management device 30 includes, as functional components, a data reception unit 311, a decryption condition setting unit 312, an encryption key acquisition unit 313, an encryption unit 314, a decryption key acquisition unit 315, a decryption unit 316, A data output unit 317.
  • the functions of the data reception unit 311, the decryption condition setting unit 312, the encryption key acquisition unit 313, the encryption unit 314, the decryption key acquisition unit 315, the decryption unit 316, and the data output unit 317 are as follows: Realized by software.
  • the memory 32 stores a program that realizes the functions of the respective units of the data management device 30. This program is read and executed by the processor 31.
  • the memory 32 implements the function of the data storage unit 321.
  • the data management apparatus 30 may include a plurality of processors that replace the processor 31.
  • the plurality of processors share the execution of programs that realize the functions of the respective units of the data management apparatus 30.
  • Each processor is an IC that performs processing in the same manner as the processor 31.
  • the operation of the data management system 10 according to the first embodiment corresponds to the data management method according to the first embodiment.
  • the operation of the data management system 10 according to the first embodiment corresponds to the processing of the data management program according to the first embodiment.
  • the operation of the data management system 10 according to the first embodiment includes a cooperation service registration process, a user registration process, an encryption process, and a decryption process.
  • the cooperation service registration process is executed by the attribute cooperation apparatus 20.
  • the linkage service registration process the newly linked data management device 30 is registered in the attribute linkage device 20.
  • the cooperation management unit 211 receives cooperation information input by the administrator of the data management device 30 via the communication interface 23.
  • the linkage information includes a device ID for identifying the data management device 30 and source information indicating an acquisition destination of attribute information in the data management device 30.
  • the device ID is an identifier or URL (Uniform Resource Locator) allocated in advance.
  • the source information is a URL of the directory server of the data management device 30 as a specific example.
  • Step S102 Domain generation processing
  • the cooperation management unit 211 generates a domain corresponding to the cooperation information received in step S101.
  • the domain generation method may be any method as long as a unique domain is generated in each data management device 30.
  • the value of the variable X is incremented, and the domain X is generated by substituting the value of the variable X into “X” of domainX. Therefore, domain1, domain2,. . . Domains are generated in the following order.
  • Step S103 Cooperation information storage process
  • the cooperation management unit 211 writes the ID and source information included in the cooperation information received in step S101 in the cooperation information storage unit 221 in association with the domain generated in step S102.
  • the cooperation information storage unit 221 stores a device ID and source information for each domain corresponding to the data management device 30.
  • Step S104 master key generation process
  • the master key generation unit 212 executes a setup algorithm in functional encryption for each domain, and generates a master key pair of an encryption key and a master secret key.
  • the encryption key may be called a public parameter in functional encryption.
  • the cooperation management unit 211 writes the generated master key pair in the key storage unit 222 in association with the domain generated in step S102. As a result, as shown in FIG. 6, the key storage unit 222 stores a master key pair of an encryption key and a master secret key for each domain corresponding to the data management device 30.
  • the user registration process is executed by the attribute linkage apparatus 20.
  • a user 50 newly belonging to the data management apparatus 30 is registered in the attribute cooperation apparatus 20.
  • Step S201 User information reception process
  • the user management unit 213 receives user information input by the administrator of the data management device 30 via the communication interface 23.
  • the user information includes the device ID of the data management device 30 used by a certain user 50 and the user ID of the user 50 in the data management device 30.
  • Step S202 Decryption key generation process
  • the decryption key generation unit 214 reads source information corresponding to the device ID included in the user information received in step S201 from the cooperation information storage unit 221.
  • the decryption key generation unit 214 acquires attribute information corresponding to the user ID included in the user information received in step S201 from the acquisition destination indicated by the read source information.
  • the decryption key generation unit 214 reads the domain corresponding to the device ID included in the user information received in step S201 from the cooperation information storage unit 221.
  • the decryption key generation unit 214 reads out the master secret key corresponding to the read domain from the key storage unit 222.
  • the decryption key generation unit 214 executes the KeyGen algorithm in the functional encryption using the read master secret key, and generates a decryption key using the acquired attribute information as a parameter.
  • the decryption key may be called a user secret key in functional encryption.
  • Step S203 Decryption key storage process
  • the user management unit 213 writes the decryption key generated in step S202 in the key storage unit 222 in association with the domain read in step S202 together with the user ID.
  • the key storage unit 222 stores a master key pair and a decryption key associated with the user ID for each domain corresponding to the data management device 30.
  • the encryption process is executed by the attribute cooperation device 20 and the target data management device 30.
  • the data is stored after being encrypted.
  • Step S301 Data reception process
  • the data receiving unit 311 of the target data management apparatus 30 receives input of data to be stored from the user 50 of the data management apparatus 30 via the communication interface 33.
  • Step S302 attribute acquisition process
  • the data reception unit 311 transmits an attribute information acquisition request to the attribute cooperation apparatus 20 via the communication interface 33.
  • the attribute distribution unit 215 of the attribute cooperation device 20 reads all source information stored in the cooperation information storage unit 221.
  • the attribute distribution unit 215 acquires all the attribute information from the acquisition destination indicated by each read source information.
  • the attribute distribution unit 215 transmits the acquired attribute information together with the acquisition source domain to the target data management apparatus 30 via the communication interface 23.
  • the data reception unit 311 acquires attribute information managed by each data management device 30.
  • Step S303 Decoding Condition Accepting Process
  • the decryption condition setting unit 312 of the target data management device 30 combines the attribute information managed by each data management device 30 acquired in step S302 from the user 50 of the data management device 30 via the communication interface 33. Accepts input of decryption conditions.
  • the decoding condition setting unit 312 displays the attribute type of the attribute information managed by each data management device 30 on the display device, and causes the attribute type to specify the attribute value to be set in the decoding condition. Then, the decoding condition is input.
  • the decoding condition is set by combining the attribute information managed by the plurality of data management devices 30, for example, the decoding condition set by the attribute information managed by each data management device 30 is combined with “OR”. Is set.
  • Step S304 Encryption Key Acquisition Process
  • the encryption key acquisition unit 313 of the target data management device 30 transmits an encryption key acquisition request including the attribute information domain used in the decryption condition to the attribute cooperation device 20 via the communication interface 33.
  • the attribute distribution unit 215 of the attribute cooperation device 20 reads the domain encryption key included in the encryption key acquisition request from the key storage unit 222.
  • the encryption key acquisition request includes a plurality of domains
  • the encryption key of each domain is read.
  • the attribute distribution unit 215 transmits the read encryption key together with the domain to the target data management apparatus 30 via the communication interface 23. Thereby, the encryption key acquisition unit 313 acquires the encryption key of the domain of the attribute information used for the decryption condition.
  • Step S305 Data encryption processing
  • the encryption unit 314 of the target data management apparatus 30 randomly generates a common key of a common key cryptosystem such as AES (registered trademark, Advanced Encryption Standard) or Camellia (registered trademark).
  • AES registered trademark, Advanced Encryption Standard
  • Camellia registered trademark
  • Step S306 Key encryption processing
  • the encryption unit 314 of the target data management apparatus 30 uses the encryption key acquired in step S304 as a parameter for the common key generated in step S305, using the decryption condition received in step S303 as a parameter.
  • the Enc algorithm is executed and encrypted to generate an encrypted common key.
  • an encryption common key is generated for each encryption key.
  • the ciphertext can be decrypted with the decryption key only when the attribute information set for the encryption key corresponds to the attribute information set for the decryption key.
  • the access condition to the common key is specified by the attribute information. If there is no common key, the encrypted data cannot be decrypted, so the access condition to the data is specified by the attribute information.
  • Step S307 Ciphertext storage process
  • the encryption unit 314 of the target data management apparatus 30 includes a pair of the domain and the encrypted common key generated in step S306 in the header portion, and the encrypted data generated in step S305. Is written in the data storage unit 321.
  • the decryption process is executed by the attribute cooperation device 20 and the target data management device 30.
  • the stored data is read and decoded.
  • the user 50 is logged in to the target data management device 30.
  • the data management device 30 authenticates the user 50 by authentication with a user ID and password, biometric authentication, or authentication with an IC card
  • the decryption process is started.
  • the logged-in user 50 is called a target user.
  • Step S401 Ciphertext Reading Process
  • the decryption unit 316 of the target data management apparatus 30 accepts designation of ciphertext from the target user via the communication interface 33.
  • the decryption unit 316 reads the specified ciphertext from the data storage unit 321.
  • the ciphertext stored in the data storage unit 321 of another data management device 30 different from the target data management device 30 may be designated.
  • the decryption unit 316 reads the specified ciphertext from the data storage unit 321 of the other data management device 30 via the communication interface 33.
  • Step S402 Decryption key acquisition process
  • the decryption key acquisition unit 315 of the target data management device 30 receives the domain of the target data management device 30 and the user ID of the target user who is the user 50 who specified the ciphertext in step S401 via the communication interface 33.
  • the included decryption key acquisition request is transmitted to the attribute collaboration apparatus 20.
  • the condition distribution unit 216 of the attribute collaboration device 20 reads the decryption key corresponding to the user ID from the domain included in the decryption key acquisition request.
  • the condition distribution unit 216 transmits the read decryption key together with the domain to the target data management apparatus 30 via the communication interface 23.
  • the decryption key acquisition unit 315 acquires a decryption key corresponding to the domain included in the header part of the ciphertext.
  • the condition distribution unit 216 may authenticate the target user by some method, and may transmit the decryption key to the target data management apparatus 30 when the authentication is successful. For example, when receiving a decryption key acquisition request, the condition distribution unit 216 may request transmission of a password and authenticate the target user by a combination of a user ID and a password.
  • Step S403 Key decryption process
  • the decryption unit 316 of the target data management device 30 reads the same set of encrypted common keys as the domain of the target data management device 30 from the header of the ciphertext read in step S401.
  • the decryption unit 316 executes the Dec algorithm in functional encryption, decrypts the read encrypted common key with the decryption key acquired in step S402, and generates a common key.
  • Step S404 Data decoding process
  • the decryption unit 316 of the target data management apparatus 30 reads the encrypted data from the data part of the ciphertext read in step S401.
  • the decryption unit 316 decrypts the read encrypted data with the common key generated in step S403 to generate data.
  • Step S405 Data output process
  • the data output unit 317 of the target data management device 30 outputs the data generated in step S404 via the communication interface 33.
  • the decryption key acquired in step S402 is access information in which attribute information about the target user is set. Decrypting the encrypted common key with the decryption key is equivalent to determining whether the access condition set in the ciphertext is satisfied with the access information. When it is determined that the access information satisfies the access condition, the encryption key can be decrypted with the decryption key, and a common key is obtained. As a result, the encrypted data can be decrypted to obtain data.
  • the attribute linkage apparatus 20 transmits attribute information managed by each of the plurality of data management apparatuses 30 to any of the data management apparatuses 30 to The data is stored after the access condition to the data is designated by the information. And the attribute cooperation apparatus 20 transmits the access information in which the attribute information about the target user among the attribute information managed by each of the plurality of data management apparatuses 30 is set to any of the data management apparatuses 30 for access. It is determined whether the access condition is satisfied by the information, and the access to the data is controlled. Thereby, it is possible to perform access control while maintaining the consistency of the attribute information managed by each data management device 30.
  • a master key pair is managed for each data management device 30 and a ciphertext encrypted with the encryption key of the target data management device 30 to which data is disclosed when data is stored is generated. To do. As a result, it is possible to operate with fewer master key pairs and decryption keys than when using an encryption method such as RSA encryption while preventing unintended access to data by the user 50 of the data management device 30. Is possible.
  • a certain data management device 30A includes “section manager” in the managerial position, but other data management devices 30B do not include “section manager” in the managerial position. .
  • a decryption key that is access information and a ciphertext in which access conditions are set are generated. . Therefore, it is possible to prevent such an unintended user 50 from decrypting the ciphertext.
  • the ciphertext is generated using a hybrid cipher that encrypts data with a common key and encrypts the common key with a functional cipher.
  • data may be encrypted with functional encryption.
  • a ciphertext in which data is encrypted is generated for each domain using the encryption key of the domain.
  • the decryption process the ciphertext in the domain of the target data management apparatus 30 is decrypted with the decryption key, and data is generated.
  • the ciphertext is stored in the data storage unit 321.
  • the ciphertext may be stored in a storage device different from the data management device 30.
  • each unit of the attribute cooperation device 20 and the data management device 30 is realized by software.
  • the functions of the units of the attribute collaboration device 20 and the data management device 30 may be realized by hardware. The third modification will be described with respect to differences from the first embodiment.
  • the attribute linkage device 20 and the data management device 30 include processing circuits 24 and 34 instead of the processors 21 and 31 and the memories 22 and 32.
  • the processing circuits 24 and 34 are dedicated electronic circuits that realize the functions of the respective units of the attribute cooperation device 20 and the data management device 30 and the functions of the memory 12.
  • the processing circuits 24 and 34 are a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, a logic IC, a GA (Gate Array), an ASIC (Application Specific Integrated Circuit), and an FPGA (Field-Programmable Gate Array). Is assumed.
  • the function of each part may be realized by a single processing circuit 24, 34, or the function of each part may be distributed to a plurality of processing circuits 24, 34.
  • ⁇ Modification 4> As a fourth modification, some functions may be realized by hardware, and other functions may be realized by software. That is, some of the functions of the attribute cooperation device 20 and the data management device 30 may be realized by hardware, and other functions may be realized by software.
  • the processors 21 and 31, the memories 22 and 32, and the processing circuits 24 and 34 are collectively referred to as “processing circuits”. That is, the function of each part is realized by a processing circuit.
  • Embodiment 2 in the user registration process, a decryption key for the registered user is generated and stored in the key storage unit 222.
  • the second embodiment is different from the first embodiment in that a decryption key is generated when a decryption key is required in the decryption process. In the second embodiment, this different point will be described.
  • the operation of the data management system 10 according to the second embodiment will be described with reference to FIGS.
  • the operation of the data management system 10 according to the second embodiment corresponds to the data management method according to the second embodiment.
  • the operation of the data management system 10 according to the second embodiment corresponds to the processing of the data management program according to the second embodiment.
  • the operation of the data management system 10 according to the second embodiment differs from the first embodiment in the user registration process and the decryption process.
  • step S211 is the same as the process in step S201 in FIG.
  • Step S212 ID storage process
  • the user management unit 213 associates the domain corresponding to the device ID included in the user information received in step S211 with the user ID included in the user information, and writes it in the key storage unit 222.
  • Step S412 Decryption key acquisition process
  • the decryption key acquisition unit 315 of the target data management device 30 receives the domain of the target data management device 30 and the user ID of the target user who is the user 50 who specified the ciphertext in step S401 via the communication interface 33.
  • the included decryption key acquisition request is transmitted to the attribute collaboration apparatus 20.
  • the condition distribution unit 216 of the attribute linkage apparatus 20 determines whether the user ID included in the decryption key acquisition request is stored in the key storage unit 222 in association with the domain included in the decryption key acquisition request. To do. If stored, the decryption key generation unit 214 reads source information corresponding to the domain included in the decryption key acquisition request from the cooperation information storage unit 221.
  • the decryption key generation unit 214 acquires attribute information corresponding to the user ID included in the decryption key acquisition request from the acquisition destination indicated by the read source information.
  • the decryption key generation unit 214 reads out the master secret key corresponding to the domain included in the decryption key acquisition request from the key storage unit 222. Then, the decryption key generation unit 214 executes the KeyGen algorithm in the functional encryption using the read master secret key, and generates a decryption key using the acquired attribute information as a parameter.
  • the condition distribution unit 216 transmits the generated decryption key together with the domain to the target data management apparatus 30 via the communication interface 23. Thereby, the attribute distribution part 215 acquires the decryption key corresponding to the domain contained in the header part of a ciphertext.
  • Embodiment 3 In the first embodiment, a master key pair of an encryption key and a master secret key is generated for each data management device 30.
  • the third embodiment is different from the first embodiment in that a master key pair common to each data management device 30 is generated. In the third embodiment, this different point will be described. In the third embodiment, the case where the first embodiment is modified will be described. However, the same modification can be applied to the second embodiment.
  • the operation of the data management system 10 according to the third embodiment will be described with reference to FIGS.
  • the operation of the data management system 10 according to the third embodiment corresponds to the data management method according to the third embodiment.
  • the operation of the data management system 10 according to the third embodiment corresponds to the processing of the data management program according to the third embodiment.
  • the operation of the data management system 10 according to the third embodiment is different from that of the first embodiment in the cooperation service registration process, the user registration process, and the encryption process.
  • step S121 to step S123 is the same as the processing from step S101 to step S103 in FIG.
  • Step S124 Master key generation process
  • the master key generation unit 212 executes a setup algorithm in functional encryption to generate a master key pair of an encryption key and a master secret key that is common to all the data management devices 30.
  • the cooperation management unit 211 writes the generated master key pair in the key storage unit 222.
  • step S221 and the processing in step S223 are the same as the processing in step S201 and the processing in step S203 in FIG.
  • Step S222 Decryption Key Generation Process
  • the process of step S222 is basically the same as the process of step S202 of FIG. However, when generating a decryption key, a common master secret key is used for all domains.
  • the key storage unit 222 stores a common master key pair and also stores a decryption key associated with the user ID for each domain. .
  • Step S324 Encryption Key Acquisition Process
  • the encryption key acquisition unit 313 of the target data management apparatus 30 transmits an encryption key acquisition request to the attribute linkage apparatus 20 via the communication interface 33.
  • the attribute distribution unit 215 of the attribute cooperation device 20 reads the common encryption key from the key storage unit 222.
  • the attribute distribution unit 215 transmits the read encryption key to the target data management device 30 via the communication interface 23.
  • the encryption key acquisition unit 313 acquires a common encryption key.
  • Step S326 Key Encryption Process
  • the encryption unit 314 of the target data management device 30 uses the common encryption key acquired in step S324 as a function of the common key generated in step S325 using the decryption condition received in step S323 as a parameter.
  • the encryption common key is generated by executing the Enc algorithm in the type encryption and performing encryption.
  • the data storage unit 321 includes a ciphertext including the encryption common key common to each domain in the header part and the encrypted data in the data part.
  • the data management system 10 uses a common master key pair. Thereby, the information memorize
  • Embodiment 4 FIG.
  • the data management system 10 described in the first to third embodiments is applied, and data is transferred from a transmission device 60 that is a data management device 30 to a reception device 70 that is another data management device 30.
  • the transfer system 11 will be described.
  • a transfer system 11 to which the data management system 10 described in the first embodiment is applied will be described.
  • the data management system 10 described in the second and third embodiments can be similarly applied to configure a transfer system.
  • differences from the first embodiment will be described.
  • the ciphertext is stored not in the data storage unit 321 of the data management device 30 but in the storage device 80 different from the data management device 30. .
  • the configuration of the transfer system 11 according to the fourth embodiment will be described with reference to FIG.
  • the transfer system 11 includes an attribute linkage device 20, a plurality of data management devices 30, and a storage device 80.
  • the attribute linkage device 20, each data management device 30, and the storage device 80 are connected via a network 40.
  • one data management device 30 is the transmission device 60
  • the other data management device 30 is the reception device 70.
  • the transmission device 60 is a data transmission source device
  • the reception device 70 is a data transmission destination device.
  • the user 50 of the transmission device 60 is called a transmission user
  • the user 50 of the reception device 70 is called a reception user.
  • the operation of the transfer system 11 according to the fourth embodiment corresponds to the transfer method according to the fourth embodiment.
  • the operation of the transfer system 11 according to the fourth embodiment corresponds to the processing of the transfer program according to the fourth embodiment.
  • the operation of the transfer system 11 according to the fourth embodiment includes a cooperation service registration process, a user registration process, a transmission process, and a reception process.
  • the cooperation service registration process and the user registration process are the same as those in the first embodiment.
  • the transmission process is executed by the transmission device 60.
  • data is transmitted from the transmission user of the transmission device 60 to the reception user of the reception device 70.
  • step S331 to step S336 is the same as the processing from step S301 to step S306 in FIG.
  • step S333 the attribute of the receiving user that is the destination of the ciphertext is specified as the decryption condition.
  • Step S337 Ciphertext storage process
  • the encryption unit 314 of the transmission device 60 includes a combination of the domain and the encrypted common key generated in step S306 in the header part, and the encrypted data generated in step S305 includes the data part.
  • the ciphertext included in is uploaded to the storage device 80 via the communication interface 33.
  • a URL indicating the location where the ciphertext is stored is transmitted from the storage device 80 to the transmission device 60.
  • the encryption unit 314 transmits the transmitted URL to the receiving user of the receiving device 70.
  • the encryption unit 314 transmits an e-mail indicating the URL to the receiving user of the receiving device 70.
  • reception processing is executed by the receiving device 70.
  • the receiving user of the receiving device 70 receives the data transmitted from the transmitting user of the transmitting device 60.
  • step S432 to step S435 is the same as the processing from step S402 to step S405 in FIG.
  • Step S431 Ciphertext Reading Process
  • the decryption unit 316 of the target data management apparatus 30 accepts designation of ciphertext from the receiving user via the communication interface 33.
  • the ciphertext is designated by indicating the URL transmitted in step S337.
  • the decryption unit 316 downloads the specified ciphertext from the storage device 80.
  • step S432 if the URL source MAC (Media Access Control) address, IP (Internet Protocol) address, or SSL (Secure Sockets Layer) is used, it is received using information such as a client certificate.
  • the decryption key may be transmitted after the user is authenticated.
  • data can be transferred from the transmission user of the transmission device 60 to the reception user of the reception device 70.
  • data can be transferred after realizing appropriate access control.
  • Embodiment 5 In the first embodiment, access control is performed using functional encryption.
  • the fifth embodiment is different from the first embodiment in that access control is performed without using encryption such as functional encryption. In the fifth embodiment, this different point will be described.
  • the configuration of the data management system 10 according to the fifth embodiment will be described with reference to FIG.
  • the data management system 10 is different from the data management system 10 shown in FIG.
  • the storage device 80 is connected to the attribute linkage device 20 and each data management device 30 via the network 40.
  • the storage device 80 is a computer that stores data managed by each data management device 30.
  • the storage apparatus 80 is configured by a single computer, but the storage apparatus 80 may be configured by a plurality of computers.
  • the storage device 80 includes hardware including a processor 81, a memory 82, and a communication interface 83.
  • the processor 81 is connected to other hardware via the system bus and controls these other hardware.
  • the processor 81 is an IC that performs processing.
  • the processor 81 is a CPU, a DSP, or a GPU.
  • the memory 82 includes a non-volatile memory that can continue to hold an execution program and data while the power of the storage device 80 is off, and a volatile memory that can move data at high speed when the storage device 80 operates. Is done.
  • Specific examples of the nonvolatile memory are an HDD, an SSD, and a flash memory.
  • the nonvolatile memory may be a portable storage medium such as an SD memory card, CF, NAND flash, flexible disk, optical disk, compact disk, Blu-ray (registered trademark) disk, or DVD.
  • Specific examples of the volatile memory are DDR2-SDRAM and DDR3-SDRAM.
  • the communication interface 83 is a device for communicating with each data management device 30.
  • the communication interface 83 is a terminal of Ethernet, RS232C, USB, or IEEE1394.
  • the storage device 80 includes a data reception unit 811, a request reception unit 812, an access determination unit 813, an access information acquisition unit 814, and a data output unit 815 as functional components.
  • the functions of the data reception unit 811, request reception unit 812, access determination unit 813, access information acquisition unit 814, and data output unit 815 are realized by software.
  • the memory 82 stores a program that realizes the functions of the respective units of the storage device 80. This program is read and executed by the processor 81. The memory 82 realizes the function of the data storage unit 821.
  • the storage apparatus 80 may include a plurality of processors that replace the processor 81.
  • the plurality of processors share the execution of programs that realize the functions of the respective units of the storage apparatus 80.
  • Each processor is an IC that performs processing in the same manner as the processor 81.
  • the attribute linkage device 20 is different from the attribute linkage device 20 shown in FIG. 2 in that it does not include a master key generation unit 212 and a decryption key generation unit 214 as functional components. Further, the attribute collaboration apparatus 20 is different from the attribute collaboration apparatus 20 shown in FIG. 2 in that an access information storage unit 223 is provided instead of the key storage unit 222.
  • the data management apparatus 30 replaces the decryption condition setting unit 312, the encryption key acquisition unit 313, the encryption unit 314, the decryption key acquisition unit 315, and the decryption unit 316 as functional components, and sets access conditions.
  • the data management device 30 shown in FIG. 3 is different from the data management device 30 shown in FIG. Further, the data management device 30 is different from the data management device 30 shown in FIG. 3 in that the data storage device 321 is not provided.
  • the operation of the data management system 10 according to the fifth embodiment corresponds to the data management method according to the fifth embodiment.
  • the operation of the data management system 10 according to the fifth embodiment corresponds to the processing of the data management program according to the fifth embodiment.
  • the operation of the data management system 10 according to the fifth embodiment includes a cooperation service registration process, a user registration process, a data storage process, and a data acquisition process.
  • step S141 to step S143 is the same as the processing from step S101 to step S103 in FIG. That is, the cooperative service registration process is different from the first embodiment in that there is no process in step S104.
  • step S241 is the same as the process in step S201 in FIG.
  • Step S242 access information generation process
  • the user management unit 213 reads source information corresponding to the device ID included in the user information received in step S241 from the cooperation information storage unit 221.
  • the user management unit 213 acquires attribute information corresponding to the user ID included in the user information received in step S241 from the acquisition destination indicated by the read source information.
  • the user management unit 213 uses the acquired attribute information as access information.
  • Step S243 Access information storage process
  • the user management unit 213 reads the domain corresponding to the device ID included in the user information received in step S241 from the cooperation information storage unit 221.
  • the user management unit 213 writes the access information in the access information storage unit 223 via the communication interface 23 in association with the user ID and the domain.
  • the access information storage unit 223 stores access information associated with the user ID for each domain.
  • the data storage process is executed by the attribute linkage device 20, the target data management device 30, and the storage device 80.
  • the data archiving process is a process corresponding to the encryption process of the first embodiment, and data is stored in the storage device 80.
  • step S341 to step S342 is the same as the processing from step S301 to step S302 in FIG.
  • Step S343 access condition reception process
  • the access condition setting unit 318 of the target data management device 30 combines the attribute information managed in each data management device 30 acquired in step S342 from the user 50 of the data management device 30 via the communication interface 33. Accepts input of access conditions.
  • the access condition setting unit 318 displays the attribute type of attribute information managed by each data management device 30 on the display device, and causes the attribute type to specify an attribute value to be set in the access condition. Then, the decoding condition is input.
  • Step S344 Data storage process
  • the access condition setting unit 318 of the target data management apparatus 30 transmits the data received in step S341 and the access condition accepted in step S343 to the storage apparatus 80 via the communication interface 33.
  • the data receiving unit 811 of the storage apparatus 80 receives the transmitted data and access conditions via the communication interface 83. Then, the data reception unit 811 associates the data with the access condition and writes them in the data storage unit 821.
  • the data acquisition process is executed by the attribute cooperation device 20, the target data management device 30, and the storage device 80.
  • the data acquisition process is a process corresponding to the decryption process of the first embodiment, and the data stored in the storage device 80 is read out.
  • the user 50 is logged in to the target data management device 30.
  • the data acquisition process is started after the data management device 30 authenticates the user 50 by authentication using a user ID and password, biometric authentication, or authentication using an IC card.
  • the logged-in user 50 is called a target user.
  • Step S441 Data designation processing
  • the data acquisition unit 319 of the target data management apparatus 30 receives data specification from the target user via the communication interface 33.
  • the data acquisition unit 319 receives, via the communication interface 33, a data acquisition request including information specifying the received target data, the domain of the target data management device 30, and the user ID of the target user. Is transmitted to the storage device 80.
  • Step S442 Access information acquisition process
  • the request reception unit 812 of the storage apparatus 80 receives a data acquisition request via the communication interface 83.
  • the access information acquisition unit 814 sends an access information acquisition request including the domain of the target data management apparatus 30 and the user ID of the target user transmitted in step S441 to the attribute cooperation apparatus 20 via the communication interface 83.
  • the condition distribution unit 216 of the attribute linkage apparatus 20 reads access information corresponding to the user ID from the domain included in the decryption key acquisition request in the access information storage unit 223.
  • the condition distribution unit 216 transmits the read access information together with the domain to the storage apparatus 80 via the communication interface 23.
  • the access information acquisition unit 814 acquires access information corresponding to the domain included in the header portion of the ciphertext.
  • Step S443 access condition determination processing
  • the access determination unit 813 determines whether the access information included in the data acquisition request satisfies the access condition associated with the data specified from the information included in the data acquisition request.
  • the data output unit 815 reads the data from the data storage unit 821 and transmits it to the target data management device 30 via the communication interface 83.
  • Step S444 data output processing
  • the data output unit 317 of the target data management apparatus 30 outputs the data transmitted in step S443 via the communication interface 33.
  • Embodiment 6 FIG.
  • the data management system 10 described in the fifth embodiment is applied, and a transfer system that transfers data from a transmission device 60 that is a data management device 30 to a reception device 70 that is another data management device 30. 11 will be described.
  • parts different from the fifth embodiment will be described.
  • the configuration of the transfer system 11 according to the sixth embodiment will be described with reference to FIG.
  • the transfer system 11 includes an attribute linkage device 20, a plurality of data management devices 30, and a storage device 80.
  • the attribute linkage device 20, each data management device 30, and the storage device 80 are connected via a network 40.
  • one data management device 30 is the transmission device 60
  • the other data management device 30 is the reception device 70.
  • the transmission device 60 is a data transmission source device
  • the reception device 70 is a data transmission destination device.
  • the user 50 of the transmission device 60 is called a transmission user
  • the user 50 of the reception device 70 is called a reception user.
  • the operation of the transfer system 11 according to the sixth embodiment corresponds to the transfer method according to the sixth embodiment.
  • the operation of the transfer system 11 according to the sixth embodiment corresponds to the processing of the transfer program according to the sixth embodiment.
  • the operation of the transfer system 11 according to the sixth embodiment includes a cooperative service registration process, a user registration process, a transmission process, and a reception process.
  • the cooperation service registration process and the user registration process are the same as those in the fifth embodiment.
  • the transmission process is executed by the transmission device 60.
  • data is transmitted from the transmission user of the transmission device 60 to the reception user of the reception device 70.
  • step S351 to step S353 is the same as the processing from step S341 to step S343 in FIG.
  • the attribute of the receiving user that is the data destination is specified as the access condition.
  • Step S354 data storage process
  • the access condition setting unit 318 of the transmission device 60 uploads data and access conditions to the storage device 80 via the communication interface 33. Then, a URL indicating the location where the data is stored is transmitted from the storage device 80 to the transmission device 60.
  • the access condition setting unit 318 transmits the transmitted URL to the receiving user of the receiving device 70. As a specific example, the access condition setting unit 318 transmits an e-mail indicating a URL to the receiving user of the receiving device 70.
  • the receiving process is executed by the receiving device 70.
  • the receiving user of the receiving device 70 receives the data transmitted from the transmitting user of the transmitting device 60.
  • step S452 to step S454 is the same as the processing from step S442 to step S444 in FIG.
  • Step S451 Data designation processing
  • the data acquisition unit 319 of the target data management apparatus 30 receives data specification from the target user via the communication interface 33.
  • data is designated by indicating the URL transmitted in step S337.
  • step S452 if a URL (MAC) access source MAC (Media Access Control) address, IP (Internet Protocol) address, or SSL (Secure Sockets Layer) is used, it is received using information such as a client certificate. The user may be authenticated. Then, when the receiving user is authenticated, the processing after step S452 may be executed.
  • MAC MAC
  • MAC Media Access Control
  • IP Internet Protocol
  • SSL Secure Sockets Layer
  • data can be transferred from the transmission user of the transmission device 60 to the reception user of the reception device 70.
  • data can be transferred after realizing appropriate access control.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

属性連携装置(20)は、複数のデータ管理装置(30)それぞれで管理される属性情報をあるデータ管理装置(30)に送信して、属性情報によりデータへのアクセス条件を指定させた上で前記データを記憶させる。属性連携装置(20)は、複数のデータ管理装置(30)それぞれで管理される属性情報のうち対象ユーザについての属性情報が設定されたアクセス情報をあるデータ管理装置(30)に送信して、アクセス情報によりアクセス条件を満たすか判定させて、データへのアクセスを制御させる。

Description

属性連携装置、転送システム、属性連携方法及び属性連携プログラム
 この発明は、複数のデータ管理装置でデータを管理する技術に関する。
 電子化されたデータをインターネットに接続されたクラウドストレージ又はファイルサーバと呼ばれるデータ管理装置に記憶し、ノートPC、タブレット型デバイス、スマートフォンといった様々な機器から利用することがある。このようなデータの利用方法は利便性が高い一方、意図しないインターネット上の第3者にデータを閲覧されるリスクがある。そのため、機密データに関しては暗号化又はアクセス制限といった情報セキュリティの運用が必須である。
 特許文献1には、属性情報に基づき、データへのアクセス制御を行うことが記載されている。
特開2012-003362号公報
 以前は、単一のデータ管理装置にデータが記憶されていたため、属性情報の整合性は単一のデータ管理装置内でとれていればよかった。しかし、複数のデータ管理装置間でデータを共有する場合、各データ管理装置で管理されている属性情報の整合性を取りながらアクセス制御を行う必要がある。
 この発明は、複数のデータ管理装置間でデータを共有する場合に、各データ管理装置で管理されている属性情報の整合性をとりながらアクセス制御を実施可能とすることを目的とする。
 この発明に係る属性連携装置は、
 複数のデータ管理装置のいずれかのデータ管理装置に、前記複数のデータ管理装置それぞれで管理される属性情報を送信して、送信された前記属性情報によりデータへのアクセス条件を指定させた上で前記データを記憶させる属性配信部と、
 前記複数のデータ管理装置それぞれで管理される属性情報のうち対象ユーザについての属性情報が設定されたアクセス情報を送信して、前記アクセス情報により前記アクセス条件を満たすか判定させて、前記データへのアクセスを制御させる条件配信部と
を備える。
 この発明では、データを記憶する場合には、各データ管理装置で管理される属性情報を送信してアクセス条件を指定させ、データにアクセスする場合には、各データ管理装置で管理される属性情報のうち対象ユーザについての属性情報が設定されたアクセス情報を送信してアクセスを制御させる。これにより、各データ管理装置で管理されている属性情報の整合性をとりながらアクセス制御が実施可能である。
実施の形態1に係るデータ管理システム10の構成図。 実施の形態1に係る属性連携装置20の構成図。 実施の形態1に係るデータ管理装置30の構成図。 実施の形態1に係る連携サービス登録処理のフローチャート。 実施の形態1に係る連携情報記憶部221に記憶される情報の説明図。 実施の形態1に係る鍵記憶部222に記憶される情報の説明図。 実施の形態1に係るユーザ登録処理のフローチャート。 実施の形態1に係る属性情報の例を示す図。 実施の形態1に係る鍵記憶部222に記憶される情報の説明図。 実施の形態1に係る暗号化処理のフローチャート。 実施の形態1に係る暗号文の説明図。 実施の形態1に係る復号処理のフローチャート。 変形例3に係る属性連携装置20の構成図。 変形例3に係るデータ管理装置30の構成図。 実施の形態2に係る属性連携装置20の構成図。 実施の形態2に係るユーザ登録処理のフローチャート。 実施の形態2に係る復号処理のフローチャート。 実施の形態3に係る連携サービス登録処理のフローチャート。 実施の形態3に係るユーザ登録処理のフローチャート。 実施の形態3に係る鍵記憶部222に記憶される情報の説明図。 実施の形態3に係る暗号化処理のフローチャート。 実施の形態3に係るデータ記憶部321に記憶される情報の説明図。 実施の形態4に係る転送システム11の構成図。 実施の形態4に係る送信処理のフローチャート。 実施の形態4に係る受信処理のフローチャート。 実施の形態5に係るデータ管理システム10の構成図。 実施の形態5に係るストレージ装置80の構成図。 実施の形態5に係る属性連携装置20の構成図。 実施の形態5に係るデータ管理装置30の構成図。 実施の形態5に係る連携サービス登録処理のフローチャート。 実施の形態5に係るユーザ登録処理のフローチャート。 実施の形態5に係るアクセス情報記憶部223に記憶される情報の説明図。 実施の形態5に係るデータ保管処理のフローチャート。 実施の形態5に係るデータ取得処理のフローチャート。 実施の形態6に係る転送システム11の構成図。 実施の形態6に係る送信処理のフローチャート。 実施の形態6に係る受信処理のフローチャート。
 実施の形態1.
 実施の形態1では、関数型暗号を用いてデータを暗号化した上で記憶する例を説明する。関数型暗号については、国際公開2011/135895号に記載されている。データは、文書データ、音声データ、動画データといった各種電子データである。
 ***構成の説明***
 図1を参照して、実施の形態1に係るデータ管理システム10の構成を説明する。
 データ管理システム10は、属性連携装置20と、複数のデータ管理装置30とを備える。属性連携装置20と各データ管理装置30とは、ネットワーク40を介して接続されている。
 各データ管理装置30には、1人以上のユーザ50が所属している。ユーザ50は、所属するデータ管理装置30にアクセスする。
 図2を参照して、実施の形態1に係る属性連携装置20の構成を説明する。
 属性連携装置20は、コンピュータである。図2では、属性連携装置20は、1台のコンピュータによって構成されるが、属性連携装置20は、複数台のコンピュータから構成されてもよい。
 属性連携装置20は、プロセッサ21と、メモリ22と、通信インタフェース23とのハードウェアを備える。プロセッサ21は、システムバスを介して他のハードウェアと接続され、これら他のハードウェアを制御する。
 プロセッサ21は、プロセッシングを行うIC(Integrated Circuit)である。プロセッサ21は、具体例としては、CPU、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)である。
 メモリ22は、属性連携装置20の電源がオフの間も実行プログラム及びデータを保持し続けることが可能な不揮発性メモリと、属性連携装置20の動作時にデータを高速に移動可能な揮発性メモリとで構成される。
 不揮発性メモリは、具体例としては、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリである。不揮発性メモリは、SD(Secure Digital)メモリカード、CF(CompactFlash)、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVDといった可搬記憶媒体であってもよい。
 揮発性メモリは、具体例としては、DDR2-SDRAM(Double-Data-Rate2 Synchronous Dynamic Random Access Memory)、DDR3-SDRAM(Double-Data-Rate3 Synchronous Dynamic Random Access Memory)である。
 通信インタフェース23は、各データ管理装置30といった他の装置と通信するための装置である。通信インタフェース23は、具体例としては、Ethernet(登録商標)、RS232C、USB、IEEE1394の端子である。
 属性連携装置20は、機能構成要素として、連携管理部211と、マスタ鍵生成部212と、ユーザ管理部213と、復号鍵生成部214と、属性配信部215と、条件配信部216とを備える。連携管理部211と、マスタ鍵生成部212と、ユーザ管理部213と、復号鍵生成部214と、属性配信部215と、条件配信部216との各部の機能は、ソフトウェアにより実現される。
 メモリ22には、属性連携装置20の各部の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ21により読み込まれ実行される。また、メモリ22は、連携情報記憶部221と、鍵記憶部222との機能を実現する。
 図2では、プロセッサ21は、1つだけ示されている。しかし、属性連携装置20は、プロセッサ21を代替する複数のプロセッサを備えていてもよい。これら複数のプロセッサは、属性連携装置20の各部の機能を実現するプログラムの実行を分担する。それぞれのプロセッサは、プロセッサ21と同じように、プロセッシングを行うICである。
 図3を参照して、実施の形態1に係るデータ管理装置30の構成を説明する。
 データ管理装置30は、クラウドストレージ又はファイルサーバと呼ばれるコンピュータである。図3では、データ管理装置30は、1台のコンピュータによって構成されるが、データ管理装置30は、複数台のコンピュータから構成されてもよい。
 データ管理装置30は、プロセッサ31と、メモリ32と、通信インタフェース33とのハードウェアを備える。プロセッサ31は、システムバスを介して他のハードウェアと接続され、これら他のハードウェアを制御する。
 プロセッサ31は、プロセッシングを行うICである。プロセッサ31は、具体例としては、CPU、DSP、GPUである。
 メモリ32は、データ管理装置30の電源がオフの間も実行プログラム及びデータを保持し続けることが可能な不揮発性メモリと、データ管理装置30の動作時にデータを高速に移動可能な揮発性メモリとで構成される。
 不揮発性メモリは、具体例としては、HDD、SSD、フラッシュメモリである。不揮発性メモリは、SDメモリカード、CF、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVDといった可搬記憶媒体であってもよい。
 揮発性メモリは、具体例としては、DDR2-SDRAM、DDR3-SDRAMである。
 通信インタフェース33は、属性連携装置20といった他の装置と通信するための装置である。通信インタフェース33は、具体例としては、Ethernet(登録商標)、RS232C、USB、IEEE1394の端子である。
 データ管理装置30は、機能構成要素として、データ受付部311と、復号条件設定部312と、暗号化鍵取得部313と、暗号化部314と、復号鍵取得部315と、復号部316と、データ出力部317とを備える。データ受付部311と、復号条件設定部312と、暗号化鍵取得部313と、暗号化部314と、復号鍵取得部315と、復号部316と、データ出力部317との各部の機能は、ソフトウェアにより実現される。
 メモリ32には、データ管理装置30の各部の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ31により読み込まれ実行される。また、メモリ32は、データ記憶部321の機能を実現する。
 図3では、プロセッサ31は、1つだけ示されている。しかし、データ管理装置30は、プロセッサ31を代替する複数のプロセッサを備えていてもよい。これら複数のプロセッサは、データ管理装置30の各部の機能を実現するプログラムの実行を分担する。それぞれのプロセッサは、プロセッサ31と同じように、プロセッシングを行うICである。
 ***動作の説明***
 図4から図11を参照して、実施の形態1に係るデータ管理システム10の動作を説明する。
 実施の形態1に係るデータ管理システム10の動作は、実施の形態1に係るデータ管理方法に相当する。また、実施の形態1に係るデータ管理システム10の動作は、実施の形態1に係るデータ管理プログラムの処理に相当する。
 実施の形態1に係るデータ管理システム10の動作は、連携サービス登録処理と、ユーザ登録処理と、暗号化処理と、復号処理とを含む。
 **連携サービス登録処理**
 図4を参照して、実施の形態1に係る連携サービス登録処理を説明する。
 連携サービス登録処理は、属性連携装置20で実行される。連携サービス登録処理では、新たに連携するデータ管理装置30が属性連携装置20に登録される。
 (ステップS101:連携情報受付処理)
 連携管理部211は、通信インタフェース23を介して、データ管理装置30の管理者によって入力された連携情報を受け付ける。連携情報は、データ管理装置30を識別する装置IDと、データ管理装置30における属性情報の取得先を示すソース情報を含む。装置IDは、事前に割り振られた識別子又はURL(Uniform Resource Locator)である。ソース情報は、具体例としては、データ管理装置30のディレクトリサーバのURLである。
 属性情報は、ユーザ50の属性を示す情報である。具体例としては、属性情報は、組織構成、役職である。実施の形態1では、属性情報は、[属性型]=[属性値]という形式で表現する。
 (ステップS102:ドメイン生成処理)
 連携管理部211は、ステップS101で受け付けられた連携情報に対応するドメインを生成する。ドメインの生成方法は、各データ管理装置30に一意のドメインが生成されれば、任意の方法で構わない。
 ここでは、連携サービス登録処理が実行される度に、変数Xの値をインクリメントし、domainXの“X”に変数Xの値を代入してドメインを生成する。そのため、domain1,domain2,...の順にドメインが生成される。
 (ステップS103:連携情報記憶処理)
 連携管理部211は、ステップS101で受け付けられた連携情報に含まれるID及びソース情報を、ステップS102で生成されたドメインと関連付けて、連携情報記憶部221に書き込む。その結果、図5に示すように、連携情報記憶部221には、データ管理装置30に対応するドメイン毎に、装置ID及びソース情報が記憶される。
 (ステップS104:マスタ鍵生成処理)
 マスタ鍵生成部212は、ドメイン毎に、関数型暗号におけるSetupアルゴリズムを実行して、暗号化鍵とマスタ秘密鍵とのマスタ鍵ペアを生成する。暗号化鍵は、関数型暗号において公開パラメータと呼ばれる場合もある。
 連携管理部211は、生成されたマスタ鍵ペアを、ステップS102で生成されたドメインと関連付けて、鍵記憶部222に書き込む。その結果、図6に示すように、鍵記憶部222には、データ管理装置30に対応するドメイン毎に、暗号化鍵とマスタ秘密鍵とのマスタ鍵ペアが記憶される。
 **ユーザ登録処理**
 図7を参照して、実施の形態1に係るユーザ登録処理を説明する。
 ユーザ登録処理は、属性連携装置20で実行される。ユーザ登録処理では、新たにデータ管理装置30に属するユーザ50が属性連携装置20に登録される。
 (ステップS201:ユーザ情報受付処理)
 ユーザ管理部213は、通信インタフェース23を介して、データ管理装置30の管理者によって入力されたユーザ情報を受け付ける。ユーザ情報は、あるユーザ50が使用しているデータ管理装置30の装置IDと、データ管理装置30におけるユーザ50のユーザIDとを含む。
 (ステップS202:復号鍵生成処理)
 復号鍵生成部214は、ステップS201で受け付けられたユーザ情報に含まれる装置IDに対応するソース情報を、連携情報記憶部221から読み出す。復号鍵生成部214は、読み出されたソース情報が示す取得先から、ステップS201で受け付けられたユーザ情報に含まれるユーザIDに対応する属性情報を取得する。具体例としては、復号鍵生成部214は、LDAP(Lightweight Directory Access Protocol) URLを用いて、属性情報を取得する。例えば、「ldap://ldap.example.com/dc= samplecloud,dc=com?department」と指定することにより、DNがdc=samplecloud,dc=comであるエントリのdepartment属性(所属部属性)が取得される。なお、DNは、Distinguished Nameの略であり、dcは、Domain-Componentの略である。
 例えば、ソース情報が示す取得先に、図8に示す属性情報が記憶されていたとする。そして、ユーザIDとして“A10002”が取得されていたとする。すると、レコード番号が1の「ID=A10002,名=佐藤哲也,部=経理部,課=予算課,役職=課長」が属性情報として取得される。
 復号鍵生成部214は、ステップS201で受け付けられたユーザ情報に含まれる装置IDに対応するドメインを、連携情報記憶部221から読み出す。復号鍵生成部214は、読み出されたドメインに対応するマスタ秘密鍵を鍵記憶部222から読み出す。そして、復号鍵生成部214は、読み出されたマスタ秘密鍵を用いて、関数型暗号におけるKeyGenアルゴリズムを実行して、取得された属性情報をパラメータとして復号鍵を生成する。復号鍵は、関数型暗号においてユーザ秘密鍵と呼ばれる場合もある。
 復号鍵には、パラメータとされた属性情報が設定される。上記例であれば、復号鍵には、「ID=A10002,名=佐藤哲也,部=経理部,課=予算課,役職=課長」が設定される。
 (ステップS203:復号鍵記憶処理)
 ユーザ管理部213は、ステップS202で生成された復号鍵を、ユーザIDとともに、ステップS202で読み出されたドメインと関連付けて、鍵記憶部222に書き込む。その結果、図9に示すように、鍵記憶部222には、データ管理装置30に対応するドメイン毎に、マスタ鍵ペアと、ユーザIDに対応付られた復号鍵とが記憶される。
 **暗号化処理**
 図10を参照して、実施の形態1に係る暗号化処理を説明する。
 暗号化処理は、属性連携装置20と対象のデータ管理装置30とで実行される。暗号化処理では、データが暗号化された上で記憶される。
 (ステップS301:データ受付処理)
 対象のデータ管理装置30のデータ受付部311は、通信インタフェース33を介して、データ管理装置30のユーザ50から記憶対象のデータの入力を受け付ける。
 (ステップS302:属性取得処理)
 データ受付部311は、通信インタフェース33を介して、属性情報の取得依頼を属性連携装置20に送信する。
 すると、属性連携装置20の属性配信部215は、連携情報記憶部221に記憶された全てのソース情報を読み出す。属性配信部215は、読み出された各ソース情報が示す取得先から、全ての属性情報を取得する。属性配信部215は、通信インタフェース23を介して、取得された属性情報を取得元のドメインとともに、対象のデータ管理装置30に送信する。これにより、データ受付部311は、各データ管理装置30で管理される属性情報を取得する。
 (ステップS303:復号条件受付処理)
 対象のデータ管理装置30の復号条件設定部312は、通信インタフェース33を介して、データ管理装置30のユーザ50から、ステップS302で取得された各データ管理装置30で管理される属性情報を組合せた復号条件の入力を受け付ける。
 具体例としては、復号条件設定部312は、各データ管理装置30で管理される属性情報の属性型を表示装置に表示し、属性型に対して復号条件に設定する属性値を指定させることにより、復号条件を入力させる。復号条件は、「部=経理部 AND 課=予算課」のように、[属性型]=[属性値]の条件と、各条件を繋ぐ“AND”,“OR”といったオペレータと、論理式の評価の優先度を表す“()”との組合せで表現される。なお、オペレータとして否定を表す“NOT”が用いられる場合もある。
 複数のデータ管理装置30で管理される属性情報を組合せて復号条件が設定される場合には、例えば、各データ管理装置30で管理される属性情報で設定された復号条件が“OR”で組合せられて設定される。
 (ステップS304:暗号化鍵取得処理)
 対象のデータ管理装置30の暗号化鍵取得部313は、通信インタフェース33を介して、復号条件に使用した属性情報のドメインが含められた、暗号化鍵の取得依頼を属性連携装置20に送信する。
 すると、属性連携装置20の属性配信部215は、暗号化鍵の取得依頼に含まれるドメインの暗号化鍵を、鍵記憶部222から読み出す。暗号化鍵の取得依頼に複数のドメインが含まれる場合には、各ドメインの暗号化鍵が読み出される。属性配信部215は、通信インタフェース23を介して、読み出された暗号化鍵をドメインとともに、対象のデータ管理装置30に送信する。これにより、暗号化鍵取得部313は、復号条件に使用した属性情報のドメインの暗号化鍵を取得する。
 (ステップS305:データ暗号化処理)
 対象のデータ管理装置30の暗号化部314は、AES(登録商標、Advanced Encryption Standard)又はCamellia(登録商標)といった共通鍵暗号方式の共通鍵を、ランダムに生成する。暗号化部314は、ステップS301で受け付けられたデータを、生成された共通鍵で暗号化して暗号化データを生成する。
 (ステップS306:鍵暗号化処理)
 対象のデータ管理装置30の暗号化部314は、ステップS305で生成された共通鍵を、ステップS303で受け付けられた復号条件をパラメータとして、ステップS304で取得された暗号化鍵を用いて関数型暗号におけるEncアルゴリズムを実行して暗号化して暗号化共通鍵を生成する。この際、ステップS304で複数のドメインの暗号化鍵が取得された場合には、暗号化鍵毎に暗号化共通鍵が生成される。
 暗号化鍵には、パラメータとされた属性情報が埋め込まれる。例えば、暗号化鍵には、「部=経理部 AND 課=予算課」が設定される。暗号化鍵に設定された属性情報と、復号鍵に設定された属性情報とが対応する場合に限り、暗号文を復号鍵で復号できる。つまり、属性情報に基づく復号条件をパラメータとして関数型暗号で暗号化することにより、属性情報により共通鍵へのアクセス条件が指定される。共通鍵がなければ、暗号化データを復号できないので、属性情報によりデータへのアクセス条件が指定されたことになる。
 (ステップS307:暗号文記憶処理)
 対象のデータ管理装置30の暗号化部314は、図11に示すように、ドメインとステップS306で生成された暗号化共通鍵との組をヘッダ部に含め、ステップS305で生成された暗号化データをデータ部に含めた暗号文を、データ記憶部321に書き込む。
 **復号処理**
 図12を参照して、実施の形態1に係る復号処理を説明する。
 復号処理は、属性連携装置20と対象のデータ管理装置30とで実行される。復号処理では、記憶されたデータが読み出され復号される。
 復号処理の前提として、対象のデータ管理装置30にユーザ50がログインしているものとする。例えば、ユーザID及びパスワードによる認証、生体認証、又は、ICカードによる認証により、データ管理装置30がユーザ50を認証した上で、復号処理が開始される。ログインしているユーザ50を対象ユーザと呼ぶ。
 (ステップS401:暗号文読出処理)
 対象のデータ管理装置30の復号部316は、通信インタフェース33を介して、対象ユーザから暗号文の指定を受け付ける。復号部316は、指定された暗号文をデータ記憶部321から読み出す。
 なお、対象のデータ管理装置30とは異なる他のデータ管理装置30のデータ記憶部321に記憶された暗号文が指定されてもよい。この場合、復号部316は、通信インタフェース33を介して、他のデータ管理装置30のデータ記憶部321から指定された暗号文を読み出す。
 (ステップS402:復号鍵取得処理)
 対象のデータ管理装置30の復号鍵取得部315は、通信インタフェース33を介して、対象のデータ管理装置30のドメインと、ステップS401で暗号文を指定したユーザ50である対象ユーザのユーザIDとが含められた、復号鍵の取得依頼を属性連携装置20に送信する。
 すると、属性連携装置20の条件配信部216は、復号鍵の取得依頼に含まれるドメインから、ユーザIDに対応する復号鍵を読み出す。条件配信部216は、通信インタフェース23を介して、読み出された復号鍵をドメインとともに、対象のデータ管理装置30に送信する。これにより、復号鍵取得部315は、暗号文のヘッダ部に含まれるドメインに対応した復号鍵を取得する。
 なお、条件配信部216は、何らかの方法により対象ユーザの認証を行い、認証が取れた場合に、復号鍵を対象のデータ管理装置30に送信するようにしてもよい。例えば、条件配信部216は、復号鍵の取得依頼を受信すると、パスワードの送信を要求し、ユーザIDとパスワードとの組によって対象ユーザを認証してもよい。
 (ステップS403:鍵復号処理)
 対象のデータ管理装置30の復号部316は、ステップS401で読み出された暗号文のヘッダ部から、対象のデータ管理装置30のドメインと同じ組の暗号化共通鍵を読み出す。復号部316は、関数型暗号におけるDecアルゴリズムを実行して、読み出された暗号化共通鍵を、ステップS402で取得された復号鍵で復号して、共通鍵を生成する。
 (ステップS404:データ復号処理)
 対象のデータ管理装置30の復号部316は、ステップS401で読み出された暗号文のデータ部から暗号化データを読み出す。復号部316は、読み出された暗号化データを、ステップS403で生成された共通鍵で復号して、データを生成する。
 (ステップS405:データ出力処理)
 対象のデータ管理装置30のデータ出力部317は、通信インタフェース33を介して、ステップS404で生成されたデータを出力する。
 ステップS402で取得された復号鍵は、対象ユーザについての属性情報が設定されたアクセス情報である。復号鍵により暗号化共通鍵を復号することは、アクセス情報により、暗号文に設定されたアクセス条件を満たすか判定することに相当する。そして、アクセス情報がアクセス条件を満たすと判定された場合には、復号鍵により暗号化鍵が復号でき、共通鍵が得られる。その結果、暗号化データを復号してデータを得ることができる。
 ***実施の形態1の効果***
 以上のように、実施の形態1に係るデータ管理システム10では、属性連携装置20はいずれかのデータ管理装置30に、複数のデータ管理装置30それぞれで管理される属性情報を送信して、属性情報によりデータへのアクセス条件を指定させた上でデータを記憶させる。そして、属性連携装置20は、いずれかのデータ管理装置30に、複数のデータ管理装置30それぞれで管理される属性情報のうち対象ユーザについての属性情報が設定されたアクセス情報を送信して、アクセス情報によりアクセス条件を満たすか判定させて、データへのアクセスを制御させる。
 これにより、各データ管理装置30で管理されている属性情報の整合性をとりながらアクセス制御が実施可能である。
 実施の形態1に係るデータ管理システム10では、データ管理装置30毎にマスタ鍵ペアを管理し、データ記憶時にデータを公開する対象のデータ管理装置30の暗号化鍵で暗号化した暗号文を生成する。これにより、意図しないデータ管理装置30のユーザ50にデータへのアクセスが許可されることを防止しつつ、RSA暗号といった暗号方式を利用した場合に比べ、少ないマスタ鍵ペア及び復号鍵で運用することが可能である。
 例えば、「職種=管理職」という属性があった場合に、あるデータ管理装置30Aでは管理職に「課長」を含むが、他のデータ管理装置30Bでは管理職に「課長」を含まないとする。この場合、従来のデータ管理技術では、あるユーザ50が部長以上の属性を持つユーザ50とファイルを共有するためにデータ管理装置30Bで「職種=管理職」という復号条件を設定した場合、データ管理装置30Aでは「課長」の属性を持つユーザ50でも復号できてしまうといったことが起こり得た。
 しかし、実施の形態1に係るデータ管理システム10では、データ管理装置30毎に管理された属性情報を用いて、アクセス情報である復号鍵と、アクセス条件が設定された暗号文とが生成される。そのため、このような意図しないユーザ50が暗号文を復号できてしまうといったことを防止できる。
 ***他の構成***
 <変形例1>
 実施の形態1では、データを共通鍵で暗号化し、共通鍵を関数型暗号で暗号化するハイブリット暗号を用いて暗号文を生成した。しかし、変形例1として、データが関数型暗号で暗号化されてもよい。
 この場合、暗号化処理では、ドメイン毎に、そのドメインの暗号化鍵を用いてデータが暗号化された暗号文が生成されることになる。また、この場合、復号処理では、対象のデータ管理装置30のドメインの暗号文が復号鍵で復号され、データが生成されることになる。
 <変形例2>
 実施の形態1では、暗号文はデータ記憶部321に記憶された。しかし、変形例2として、暗号文は、データ管理装置30とは異なるストレージ装置に記憶されてもよい。
 <変形例3>
 実施の形態1では、属性連携装置20及びデータ管理装置30の各部の機能がソフトウェアで実現された。変形例3として、属性連携装置20及びデータ管理装置30の各部の機能はハードウェアで実現されてもよい。この変形例3について、実施の形態1と異なる点を説明する。
 図13及び図14を参照して、変形例3に係る属性連携装置20及びデータ管理装置30の構成を説明する。
 各部の機能がハードウェアで実現される場合、属性連携装置20及びデータ管理装置30は、プロセッサ21,31とメモリ22,32とに代えて、処理回路24,34を備える。処理回路24,34は、属性連携装置20及びデータ管理装置30の各部の機能と、メモリ12の機能とを実現する専用の電子回路である。
 処理回路24,34は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)が想定される。
 各部の機能を1つの処理回路24,34で実現してもよいし、各部の機能を複数の処理回路24,34に分散させて実現してもよい。
 <変形例4>
 変形例4として、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。つまり、属性連携装置20及びデータ管理装置30の各部のうち、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。
 プロセッサ21,31とメモリ22,32と処理回路24,34とを、総称して「プロセッシングサーキットリー」という。つまり、各部の機能は、プロセッシングサーキットリーにより実現される。
 実施の形態2.
 実施の形態1では、ユーザ登録処理において、登録されたユーザの復号鍵を生成し、鍵記憶部222に記憶しておいた。実施の形態2では、復号処理において復号鍵が必要になった時点で復号鍵が生成される点が実施の形態1と異なる。実施の形態2では、この異なる点を説明する。
 ***構成の説明***
 図15を参照して、実施の形態2に係る属性連携装置20の構成を説明する。
 属性連携装置20の構成は、図2に示す属性連携装置20と同じである。但し、ユーザ管理部213と復号鍵生成部214と条件配信部216との接続関係が異なる。
 ***動作の説明***
 図16から図17を参照して、実施の形態2に係るデータ管理システム10の動作を説明する。
 実施の形態2に係るデータ管理システム10の動作は、実施の形態2に係るデータ管理方法に相当する。また、実施の形態2に係るデータ管理システム10の動作は、実施の形態2に係るデータ管理プログラムの処理に相当する。
 実施の形態2に係るデータ管理システム10の動作は、ユーザ登録処理と、復号処理とが実施の形態1と異なる。
 **ユーザ登録処理**
 図16を参照して、実施の形態2に係るユーザ登録処理を説明する。
 ステップS211の処理は、図7のステップS201の処理と同じである。
 (ステップS212:ID記憶処理)
 ユーザ管理部213は、ステップS211で受け付けられたユーザ情報に含まれる装置IDに対応するドメインと、ユーザ情報に含まれるユーザIDとを関連付けて、鍵記憶部222に書き込む。
 **復号処理**
 図17を参照して、実施の形態2に係る復号処理を説明する。
 ステップS411の処理と、ステップS413からステップS415の処理とは、図12のステップS401の処理と、ステップS403からステップS405の処理と同じである。
 (ステップS412:復号鍵取得処理)
  対象のデータ管理装置30の復号鍵取得部315は、通信インタフェース33を介して、対象のデータ管理装置30のドメインと、ステップS401で暗号文を指定したユーザ50である対象ユーザのユーザIDとが含められた、復号鍵の取得依頼を属性連携装置20に送信する。
 すると、属性連携装置20の条件配信部216は、復号鍵の取得依頼に含まれるドメインに関連付けられて、復号鍵の取得依頼に含まれるユーザIDが鍵記憶部222に記憶されているか否か判定する。記憶されている場合、復号鍵生成部214は、復号鍵の取得依頼に含まれるドメインに対応するソース情報を、連携情報記憶部221から読み出す。復号鍵生成部214は、読み出されたソース情報が示す取得先から、復号鍵の取得依頼に含まれるユーザIDに対応する属性情報を取得する。復号鍵生成部214は、復号鍵の取得依頼に含まれるドメインに対応するマスタ秘密鍵を鍵記憶部222から読み出す。そして、復号鍵生成部214は、読み出されたマスタ秘密鍵を用いて、関数型暗号におけるKeyGenアルゴリズムを実行して、取得された属性情報をパラメータとして復号鍵を生成する。
 条件配信部216は、通信インタフェース23を介して、生成された復号鍵をドメインとともに、対象のデータ管理装置30に送信する。これにより、属性配信部215は、暗号文のヘッダ部に含まれるドメインに対応した復号鍵を取得する。
 ***実施の形態2の効果***
 以上のように、実施の形態2に係るデータ管理システム10では、復号処理において復号鍵が必要になった時点で復号鍵が生成される。これにより、鍵記憶部222に記憶する情報を減らすことができる。
 実施の形態3.
 実施の形態1では、データ管理装置30毎に暗号化鍵とマスタ秘密鍵とのマスタ鍵ペアを生成した。実施の形態3では、各データ管理装置30に共通のマスタ鍵ペアを生成する点が実施の形態1と異なる。実施の形態3では、この異なる点を説明する。
 なお、実施の形態3では、実施の形態1を変形させた場合を説明するが、実施の形態2に同様の変形を加えることも可能である。
 ***動作の説明***
 図18から図22を参照して、実施の形態3に係るデータ管理システム10の動作を説明する。
 実施の形態3に係るデータ管理システム10の動作は、実施の形態3に係るデータ管理方法に相当する。また、実施の形態3に係るデータ管理システム10の動作は、実施の形態3に係るデータ管理プログラムの処理に相当する。
 実施の形態3に係るデータ管理システム10の動作は、連携サービス登録処理と、ユーザ登録処理と、暗号化処理とが実施の形態1と異なる。
 **連携サービス登録処理**
 図18を参照して、実施の形態3に係る連携サービス登録処理を説明する。
 ステップS121からステップS123の処理は、図4のステップS101からステップS103の処理と同じである。
 (ステップS124:マスタ鍵生成処理)
 マスタ鍵生成部212は、関数型暗号におけるSetupアルゴリズムを実行して、全てのデータ管理装置30に共通の暗号化鍵とマスタ秘密鍵とのマスタ鍵ペアを生成する。
 連携管理部211は、生成されたマスタ鍵ペアを鍵記憶部222に書き込む。
 **ユーザ登録処理**
 図19を参照して、実施の形態3に係るユーザ登録処理を説明する。
 ステップS221の処理とステップS223の処理とは、図7のステップS201の処理とステップS203の処理と同じである。
 (ステップS222:復号鍵生成処理)
 ステップS222の処理は、図7のステップS202の処理と原則として同じである。但し、復号鍵を生成する際には、どのドメインについても共通のマスタ秘密鍵を用いる点が異なる。
 その結果、図20に示すように、ステップS223の処理で、鍵記憶部222には、共通のマスタ鍵ペアが記憶されるとともに、ドメイン毎にユーザIDに対応付られた復号鍵が記憶される。
 **暗号化処理**
 図21を参照して、実施の形態3に係る暗号化処理を説明する。
 ステップS321からステップS323の処理と、ステップS325の処理と、ステップS327の処理とは、図10のステップS301からステップS303の処理と、ステップS305の処理と、ステップS307の処理と同じである。
 (ステップS324:暗号化鍵取得処理)
 対象のデータ管理装置30の暗号化鍵取得部313は、通信インタフェース33を介して、暗号化鍵の取得依頼を属性連携装置20に送信する。
 すると、属性連携装置20の属性配信部215は、共通の暗号化鍵を、鍵記憶部222から読み出す。属性配信部215は、通信インタフェース23を介して、読み出された暗号化鍵を、対象のデータ管理装置30に送信する。これにより、暗号化鍵取得部313は、共通の暗号化鍵を取得する。
 (ステップS326:鍵暗号化処理)
 対象のデータ管理装置30の暗号化部314は、ステップS325で生成された共通鍵を、ステップS323で受け付けられた復号条件をパラメータとして、ステップS324で取得された共通の暗号化鍵を用いて関数型暗号におけるEncアルゴリズムを実行して暗号化して暗号化共通鍵を生成する。
 その結果、図22に示すように、ステップS327の処理で、データ記憶部321には、各ドメインに共通の暗号化共通鍵をヘッダ部に含め、暗号化データをデータ部に含めた暗号文が記憶される。
 ***実施の形態3の効果***
 以上のように、実施の形態3に係るデータ管理システム10では、共通のマスタ鍵ペアを用いる。これにより、鍵記憶部222に記憶する情報を減らすことができる。また、暗号文のヘッダ部には、1つの暗号化共通鍵だけが含まれる。そのため、データ記憶部321に記憶する情報を減らすことができる。
 実施の形態4.
 実施の形態4では、実施の形態1~3で説明したデータ管理システム10を応用し、あるデータ管理装置30である送信装置60から他のデータ管理装置30である受信装置70へデータを転送する転送システム11について説明する。
 実施の形態4では、実施の形態1で説明したデータ管理システム10を応用した転送システム11について説明する。しかし、実施の形態2,3で説明したデータ管理システム10を同様に応用して転送システムを構成することも可能である。
 実施の形態4では、実施の形態1と異なる点を説明する。
 なお、実施の形態4では、変形例2で説明したように、データ管理装置30のデータ記憶部321ではなく、データ管理装置30とは異なるストレージ装置80に暗号文が記憶されるものとして説明する。
 ***構成の説明***
 図23を参照して、実施の形態4に係る転送システム11の構成を説明する。
 転送システム11は、属性連携装置20と、複数のデータ管理装置30と、ストレージ装置80とを備える。属性連携装置20と各データ管理装置30とストレージ装置80とは、ネットワーク40を介して接続されている。
 ここで、あるデータ管理装置30が送信装置60であり、他のデータ管理装置30が受信装置70である。送信装置60は、データの送信元の装置であり、受信装置70は、データの送信先の装置である。以下の説明では、送信装置60のユーザ50を送信ユーザと呼び、受信装置70のユーザ50を受信ユーザと呼ぶ。
 ***動作の説明***
 図24から図25を参照して、実施の形態4に係る転送システム11の動作を説明する。
 実施の形態4に係る転送システム11の動作は、実施の形態4に係る転送方法に相当する。また、実施の形態4に係る転送システム11の動作は、実施の形態4に係る転送プログラムの処理に相当する。
 実施の形態4に係る転送システム11の動作は、連携サービス登録処理と、ユーザ登録処理と、送信処理と、受信処理とを含む。連携サービス登録処理と、ユーザ登録処理とは、実施の形態1と同じである。
 **送信処理**
 図24を参照して、実施の形態4に係る送信処理を説明する。
 送信処理は、送信装置60で実行される。送信処理では、データが送信装置60の送信ユーザから受信装置70の受信ユーザに送信される。
 ステップS331からステップS336の処理は、図10のステップS301からステップS306の処理と同じである。なお、ステップS333では、復号条件として、暗号文の宛先となる受信ユーザの属性が指定される。
 (ステップS337:暗号文記憶処理)
 送信装置60の暗号化部314は、図11に示すように、ドメインとステップS306で生成された暗号化共通鍵との組をヘッダ部に含め、ステップS305で生成された暗号化データをデータ部に含めた暗号文を、通信インタフェース33を介してストレージ装置80にアップロードする。
 すると、ストレージ装置80から暗号文が記憶された位置を示すURLが送信装置60に送信される。暗号化部314は、送信されたURLを受信装置70の受信ユーザに送信する。具体例としては、暗号化部314は、URLを示した電子メールを受信装置70の受信ユーザ宛てに送信する。
 **受信処理**
 図25を参照して、実施の形態4に係る受信処理を説明する。
 受信処理は、受信装置70で実行される。受信処理では、送信装置60の送信ユーザから送信されたデータを受信装置70の受信ユーザが受信する。
 ステップS432からステップS435の処理は、図12のステップS402からステップS405の処理と同じである。
 (ステップS431:暗号文読出処理)
 対象のデータ管理装置30の復号部316は、通信インタフェース33を介して、受信ユーザから暗号文の指定を受け付ける。ここでは、ステップS337で送信されたURLが示されることにより、暗号文が指定される。復号部316は、指定された暗号文をストレージ装置80からダウンロードする。
 なお、ステップS432では、URLの送信元のMAC(Media Access Control)アドレス、IP(Internet Protocol)アドレス、SSL(Secure Sockets Layer)を使用している場合にはクライアント証明書といった情報を用いて、受信ユーザを認証した上で、復号鍵を送信するようにしてもよい。
 ***実施の形態4の効果***
 以上のように、実施の形態4に係る転送システム11では、送信装置60の送信ユーザから受信装置70の受信ユーザにデータを転送することができる。特に、送信装置60と受信装置70とで属性情報が別々に管理されている場合であっても、適切なアクセス制御を実現した上で、データを転送することができる。
 実施の形態5.
 実施の形態1では、関数型暗号を用いてアクセス制御を行った。実施の形態5は、関数型暗号といった暗号を用いずアクセス制御を行う点が実施の形態1と異なる。実施の形態5では、この異なる点を説明する。
 ***構成の説明***
 図26を参照して、実施の形態5に係るデータ管理システム10の構成を説明する。
 データ管理システム10は、ストレージ装置80を備える点が図1に示すデータ管理システム10と異なる。
 ストレージ装置80は、ネットワーク40を介して、属性連携装置20及び各データ管理装置30と接続されている。
 図27を参照して、実施の形態5に係るストレージ装置80の構成を説明する。
 ストレージ装置80は、各データ管理装置30で管理されるデータを保管するコンピュータである。図27では、ストレージ装置80は、1台のコンピュータによって構成されるが、ストレージ装置80は、複数台のコンピュータから構成されてもよい。
 ストレージ装置80は、プロセッサ81と、メモリ82と、通信インタフェース83とのハードウェアを備える。プロセッサ81は、システムバスを介して他のハードウェアと接続され、これら他のハードウェアを制御する。
 プロセッサ81は、プロセッシングを行うICである。プロセッサ81は、具体例としては、CPU、DSP、GPUである。
 メモリ82は、ストレージ装置80の電源がオフの間も実行プログラム及びデータを保持し続けることが可能な不揮発性メモリと、ストレージ装置80の動作時にデータを高速に移動可能な揮発性メモリとで構成される。
 不揮発性メモリは、具体例としては、HDD、SSD、フラッシュメモリである。不揮発性メモリは、SDメモリカード、CF、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVDといった可搬記憶媒体であってもよい。
 揮発性メモリは、具体例としては、DDR2-SDRAM、DDR3-SDRAMである。
 通信インタフェース83は、各データ管理装置30と通信するための装置である。通信インタフェース83は、具体例としては、Ethernet、RS232C、USB、IEEE1394の端子である。
 ストレージ装置80は、機能構成要素として、データ受付部811と、要求受付部812と、アクセス判定部813と、アクセス情報取得部814と、データ出力部815とを備える。データ受付部811と、要求受付部812と、アクセス判定部813と、アクセス情報取得部814と、データ出力部815との各部の機能は、ソフトウェアにより実現される。
 メモリ82には、ストレージ装置80の各部の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ81により読み込まれ実行される。また、メモリ82は、データ記憶部821の機能を実現する。
 図27では、プロセッサ81は、1つだけ示されている。しかし、ストレージ装置80は、プロセッサ81を代替する複数のプロセッサを備えていてもよい。これら複数のプロセッサは、ストレージ装置80の各部の機能を実現するプログラムの実行を分担する。それぞれのプロセッサは、プロセッサ81と同じように、プロセッシングを行うICである。
 図28を参照して、実施の形態5に係る属性連携装置20の構成を説明する。
 属性連携装置20は、機能構成要素として、マスタ鍵生成部212と、復号鍵生成部214とを備えていない点が、図2に示す属性連携装置20と異なる。また、属性連携装置20は、鍵記憶部222に代えて、アクセス情報記憶部223を備える点が、図2に示す属性連携装置20と異なる。
 図29を参照して、実施の形態5に係るデータ管理装置30の構成を説明する。
 データ管理装置30は、機能構成要素として、復号条件設定部312と、暗号化鍵取得部313と、暗号化部314と、復号鍵取得部315と、復号部316とに代えて、アクセス条件設定部318と、データ取得部319とを備える点が、図3に示すデータ管理装置30と異なる。また、データ管理装置30は、データ記憶部321を備えていない点が、図3に示すデータ管理装置30と異なる。
 ***動作の説明***
 図30から図34を参照して、実施の形態5に係るデータ管理システム10の動作を説明する。
 実施の形態5に係るデータ管理システム10の動作は、実施の形態5に係るデータ管理方法に相当する。また、実施の形態5に係るデータ管理システム10の動作は、実施の形態5に係るデータ管理プログラムの処理に相当する。
 実施の形態5に係るデータ管理システム10の動作は、連携サービス登録処理と、ユーザ登録処理と、データ保管処理と、データ取得処理とを含む。
 **連携サービス登録処理**
 図30を参照して、実施の形態5に係る連携サービス登録処理を説明する。
 ステップS141からステップS143の処理は、図4のステップS101からステップS103の処理と同じである。つまり、連携サービス登録処理は、ステップS104の処理がない点が実施の形態1と異なる。
 **ユーザ登録処理**
 図31を参照して、実施の形態5に係るユーザ登録処理を説明する。
 ステップS241の処理は、図7のステップS201の処理と同じである。
 (ステップS242:アクセス情報生成処理)
 ユーザ管理部213は、ステップS241で受け付けられたユーザ情報に含まれる装置IDに対応するソース情報を、連携情報記憶部221から読み出す。ユーザ管理部213は、読み出されたソース情報が示す取得先から、ステップS241で受け付けられたユーザ情報に含まれるユーザIDに対応する属性情報を取得する。ユーザ管理部213は、取得された属性情報をアクセス情報とする。
 (ステップS243:アクセス情報記憶処理)
 ユーザ管理部213は、ステップS241で受け付けられたユーザ情報に含まれる装置IDに対応するドメインを、連携情報記憶部221から読み出す。ユーザ管理部213は、通信インタフェース23を介して、アクセス情報を、ユーザID及びドメインに関連付けて、アクセス情報記憶部223に書き込む。その結果、図32に示すように、アクセス情報記憶部223には、ドメイン毎に、ユーザIDに対応付られたアクセス情報が記憶される。
 **データ保管処理**
 図33を参照して、実施の形態5に係るデータ保管処理を説明する。
 データ保管処理は、属性連携装置20と対象のデータ管理装置30とストレージ装置80とで実行される。データ保管処理は、実施の形態1の暗号化処理に対応する処理であり、データがストレージ装置80に記憶される。
 ステップS341からステップS342の処理は、図10のステップS301からステップS302の処理と同じである。
 (ステップS343:アクセス条件受付処理)
 対象のデータ管理装置30のアクセス条件設定部318は、通信インタフェース33を介して、データ管理装置30のユーザ50から、ステップS342で取得された各データ管理装置30で管理される属性情報を組合せたアクセス条件の入力を受け付ける。
 具体例としては、アクセス条件設定部318は、各データ管理装置30で管理される属性情報の属性型を表示装置に表示し、属性型に対してアクセス条件に設定する属性値を指定させることにより、復号条件を入力させる。アクセス条件は、「部=経理部 AND 課=予算課」のように、[属性型]=[属性値]の条件と、各条件を繋ぐ“AND”,“OR”といったオペレータと、論理式の評価の優先度を表す“()”との組合せで表現される。なお、オペレータとして否定を表す“NOT”が用いられる場合もある。
 (ステップS344:データ記憶処理)
 対象のデータ管理装置30のアクセス条件設定部318は、通信インタフェース33を介して、ステップS341で受信されたデータと、ステップS343で受け付けられたアクセス条件とを、ストレージ装置80に送信する。
 ストレージ装置80のデータ受付部811は、通信インタフェース83を介して、送信されたデータ及びアクセス条件を受け付ける。そして、データ受付部811は、データとアクセス条件とを関連付けて、データ記憶部821に書き込む。
 **データ取得処理**
 図34を参照して、実施の形態5に係るデータ取得処理を説明する。
 データ取得処理は、属性連携装置20と対象のデータ管理装置30とストレージ装置80とで実行される。データ取得処理は、実施の形態1の復号処理に対応する処理であり、ストレージ装置80に記憶されたデータが読み出される。
 データ取得処理の前提として、対象のデータ管理装置30にユーザ50がログインしているものとする。例えば、ユーザID及びパスワードによる認証、生体認証、又は、ICカードによる認証により、データ管理装置30がユーザ50を認証した上で、データ取得処理が開始される。ログインしているユーザ50を対象ユーザと呼ぶ。
 (ステップS441:データ指定処理)
 対象のデータ管理装置30のデータ取得部319は、通信インタフェース33を介して、対象ユーザからデータの指定を受け付ける。データ取得部319は、通信インタフェース33を介して、受け付けられた対象のデータを特定する情報と、対象のデータ管理装置30のドメインと、対象ユーザのユーザIDとが含められた、データの取得要求をストレージ装置80に送信する。
 (ステップS442:アクセス情報取得処理)
 ストレージ装置80の要求受付部812は、通信インタフェース83を介して、データの取得要求を受け付ける。アクセス情報取得部814は、通信インタフェース83を介して、ステップS441で送信された対象のデータ管理装置30のドメイン及び対象ユーザのユーザIDが含められた、アクセス情報の取得依頼を属性連携装置20に送信する。
 すると、属性連携装置20の条件配信部216は、アクセス情報記憶部223における復号鍵の取得依頼に含まれるドメインから、ユーザIDに対応するアクセス情報を読み出す。条件配信部216は、通信インタフェース23を介して、読み出されたアクセス情報をドメインとともに、ストレージ装置80に送信する。これにより、アクセス情報取得部814は、暗号文のヘッダ部に含まれるドメインに対応したアクセス情報を取得する。
 (ステップS443:アクセス条件判定処理)
 アクセス判定部813は、データの取得要求に含まれる情報から特定されるデータに関連付けられたアクセス条件を、データの取得要求に含まれるアクセス情報が満たすか否かを判定する。そして、アクセス条件をアクセス情報が満たす場合には、データ出力部815は、データ記憶部821からデータを読み出して、通信インタフェース83を介して、対象のデータ管理装置30に送信する。
 (ステップS444:データ出力処理)
 対象のデータ管理装置30のデータ出力部317は、通信インタフェース33を介して、ステップS443で送信されたデータを出力する。
 ***実施の形態5の効果***
 以上のように、実施の形態5に係るデータ管理システム10では、関数型暗号といった暗号を用いることなく、各データ管理装置30で管理されている属性情報の整合性をとりながらアクセス制御が実施可能である。
 実施の形態6.
 実施の形態6では、実施の形態5で説明したデータ管理システム10を応用し、あるデータ管理装置30である送信装置60から他のデータ管理装置30である受信装置70へデータを転送する転送システム11について説明する。実施の形態6では、実施の形態5と異なる部分を説明する。
 ***構成の説明***
 図35を参照して、実施の形態6に係る転送システム11の構成を説明する。
 転送システム11は、属性連携装置20と、複数のデータ管理装置30と、ストレージ装置80とを備える。属性連携装置20と各データ管理装置30とストレージ装置80とは、ネットワーク40を介して接続されている。
 ここで、あるデータ管理装置30が送信装置60であり、他のデータ管理装置30が受信装置70である。送信装置60は、データの送信元の装置であり、受信装置70は、データの送信先の装置である。以下の説明では、送信装置60のユーザ50を送信ユーザと呼び、受信装置70のユーザ50を受信ユーザと呼ぶ。
 ***動作の説明***
 図36から図37を参照して、実施の形態6に係る転送システム11の動作を説明する。
 実施の形態6に係る転送システム11の動作は、実施の形態6に係る転送方法に相当する。また、実施の形態6に係る転送システム11の動作は、実施の形態6に係る転送プログラムの処理に相当する。
 実施の形態6に係る転送システム11の動作は、連携サービス登録処理と、ユーザ登録処理と、送信処理と、受信処理とを含む。連携サービス登録処理と、ユーザ登録処理とは、実施の形態5と同じである。
 **送信処理**
 図36を参照して、実施の形態6に係る送信処理を説明する。
 送信処理は、送信装置60で実行される。送信処理では、データが送信装置60の送信ユーザから受信装置70の受信ユーザに送信される。
 ステップS351からステップS353の処理は、図33のステップS341からステップS343の処理と同じである。なお、ステップS353では、アクセス条件として、データの宛先となる受信ユーザの属性が指定される。
 (ステップS354:データ記憶処理)
 送信装置60のアクセス条件設定部318は、データ及びアクセス条件を、通信インタフェース33を介してストレージ装置80にアップロードする。
 すると、ストレージ装置80からデータが記憶された位置を示すURLが送信装置60に送信される。アクセス条件設定部318は、送信されたURLを受信装置70の受信ユーザに送信する。具体例としては、アクセス条件設定部318は、URLを示した電子メールを受信装置70の受信ユーザ宛てに送信する。
 **受信処理**
 図37を参照して、実施の形態6に係る受信処理を説明する。
 受信処理は、受信装置70で実行される。受信処理では、送信装置60の送信ユーザから送信されたデータを受信装置70の受信ユーザが受信する。
 ステップS452からステップS454の処理は、図34のステップS442からステップS444の処理と同じである。
 (ステップS451:データ指定処理)
 対象のデータ管理装置30のデータ取得部319は、通信インタフェース33を介して、対象ユーザからデータの指定を受け付ける。ここでは、ステップS337で送信されたURLが示されることにより、データが指定される。
 なお、ステップS452では、URLの送信元のMAC(Media Access Control)アドレス、IP(Internet Protocol)アドレス、SSL(Secure Sockets Layer)を使用している場合にはクライアント証明書といった情報を用いて、受信ユーザを認証してもよい。そして、受信ユーザの認証がとれた場合に、ステップS452以降の処理を実行するようにしてもよい。
 ***実施の形態6の効果***
 以上のように、実施の形態6に係る転送システム11では、送信装置60の送信ユーザから受信装置70の受信ユーザにデータを転送することができる。特に、送信装置60と受信装置70とで属性情報が別々に管理されている場合であっても、適切なアクセス制御を実現した上で、データを転送することができる。
 10 データ管理システム、11 転送システム、20 属性連携装置、21 プロセッサ、22 メモリ、23 通信インタフェース、211 連携管理部、212 マスタ鍵生成部、213 ユーザ管理部、214 復号鍵生成部、215 属性配信部、216 条件配信部、221 連携情報記憶部、222 鍵記憶部、223 アクセス情報記憶部、30 データ管理装置、31 プロセッサ、32 メモリ、33 通信インタフェース、311 データ受付部、312 復号条件設定部、313 暗号化鍵取得部、314 暗号化部、315 復号鍵取得部、316 復号部、317 データ出力部、318 アクセス条件設定部、319 データ取得部、321 データ記憶部、40 ネットワーク、50 ユーザ、60 送信装置、70 受信装置、80 ストレージ装置、81 プロセッサ、82 メモリ、83 通信インタフェース、811 データ受付部、812 要求受付部、813 アクセス判定部、814 アクセス情報取得部、815 データ出力部、821 データ記憶部。

Claims (10)

  1.  複数のデータ管理装置のいずれかのデータ管理装置に、前記複数のデータ管理装置それぞれで管理される属性情報を送信して、送信された前記属性情報によりデータへのアクセス条件を指定させた上で前記データを記憶させる属性配信部と、
     前記複数のデータ管理装置それぞれで管理される属性情報のうち対象ユーザについての属性情報が設定されたアクセス情報を送信して、前記アクセス情報により前記アクセス条件を満たすか判定させて、前記データへのアクセスを制御させる条件配信部と
    を備える属性連携装置。
  2.  前記属性配信部は、前記アクセス条件を設定して前記データを暗号化した暗号文を記憶させ、
     前記条件配信部は、前記対象ユーザについての属性情報が設定された復号鍵を前記アクセス情報として、前記復号鍵で前記暗号文を復号させることにより、前記データへのアクセスを制御させる
    請求項1に記載の属性連携装置。
  3.  前記対象ユーザは、前記複数のデータ管理装置のいずれかのデータ管理装置に属しており、
     前記条件配信部は、前記データ管理装置毎に、そのデータ管理装置で管理される前記対象ユーザについての属性情報を設定した復号鍵をそのデータ管理装置についてのアクセス情報として、前記対象ユーザが属するデータ管理装置に対応する復号鍵を送信する
    請求項2に記載の属性連携装置。
  4.  前記属性配信部は、前記データ管理装置毎に、そのデータ管理装置のマスタ公開鍵により前記データを暗号化した暗号文を記憶させ、
     前記条件配信部は、前記データ管理装置毎に、そのデータ管理装置のマスタ秘密鍵により生成された前記復号鍵をそのデータ管理装置についてのアクセス情報とする
    請求項3に記載の属性連携装置。
  5.  前記属性連携装置は、さらに、
     復号鍵の取得依頼が受け付けられると、前記復号鍵を生成する復号鍵生成部
    を備え、
     前記条件配信部は、前記復号鍵生成部によって生成された前記復号鍵で前記暗号文を復号させる
    請求項2から4までのいずれか1項に記載の属性連携装置。
  6.  前記属性配信部は、前記複数のデータ管理装置に共通のマスタ公開鍵により前記データを暗号化した暗号文を記憶させ、
     前記条件配信部は、前記データ管理装置毎に、前記複数のデータ管理装置に共通のマスタ秘密鍵により生成された前記復号鍵をそのデータ管理装置についてのアクセス情報とする
    請求項3に記載の属性連携装置。
  7.  請求項1に記載の属性連携装置と、前記複数のデータ管理装置のいずれかである送信装置及び受信装置とを備える転送システムであり、
     前記属性配信部は、前記属性情報を前記送信装置に送信し、前記条件配信部は、前記アクセス情報を前記受信装置に送信し、
     前記送信装置は、前記属性情報によりデータへのアクセス条件を指定してデータをストレージ装置に記憶し、
     前記受信装置は、前記アクセス情報が前記アクセス条件を満たす場合に、前記データへのアクセスが許可される転送システム。
  8.  請求項2から6までのいずれか1項に記載の属性連携装置と、前記複数のデータ管理装置のいずれかである送信装置及び受信装置とを備える転送システムであり、
     前記属性配信部は、前記属性情報を前記送信装置に送信し、前記条件配信部は、前記復号鍵を前記受信装置に送信し、
     前記送信装置は、前記属性情報によりデータへの前記アクセス条件を指定させ、指定された前記アクセス条件を設定して前記データを暗号化した前記暗号文をストレージ装置に記憶し、
     前記受信装置は、前記復号鍵で前記暗号文を復号する転送システム。
  9.  コンピュータが、複数のデータ管理装置のいずれかのデータ管理装置に、前記複数のデータ管理装置それぞれで管理される属性情報を送信して、送信された前記属性情報によりデータへのアクセス条件を指定させた上で前記データを記憶させ、
     コンピュータが、前記複数のデータ管理装置それぞれで管理される属性情報のうち対象ユーザについての属性情報が設定されたアクセス情報を送信して、前記アクセス情報により前記アクセス条件を満たすか判定させて、前記データへのアクセスを制御させる属性連携方法。
  10.  複数のデータ管理装置のいずれかのデータ管理装置に、前記複数のデータ管理装置それぞれで管理される属性情報を送信して、送信された前記属性情報によりデータへのアクセス条件を指定させた上で前記データを記憶させる属性配信処理と、
     前記複数のデータ管理装置それぞれで管理される属性情報のうち対象ユーザについての属性情報が設定されたアクセス情報を送信して、前記アクセス情報により前記アクセス条件を満たすか判定させて、前記データへのアクセスを制御させる条件配信処理と
    をコンピュータに実行させる属性連携プログラム。
PCT/JP2016/063187 2016-04-27 2016-04-27 属性連携装置、転送システム、属性連携方法及び属性連携プログラム WO2017187552A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201680084758.5A CN109074463A (zh) 2016-04-27 2016-04-27 属性协作装置、转送系统、属性协作方法以及属性协作程序
US16/081,391 US10691815B2 (en) 2016-04-27 2016-04-27 Attribute linkage apparatus, transfer system, attribute linkage method and computer readable medium
PCT/JP2016/063187 WO2017187552A1 (ja) 2016-04-27 2016-04-27 属性連携装置、転送システム、属性連携方法及び属性連携プログラム
JP2018514016A JP6366883B2 (ja) 2016-04-27 2016-04-27 属性連携装置、転送システム、属性連携方法及び属性連携プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/063187 WO2017187552A1 (ja) 2016-04-27 2016-04-27 属性連携装置、転送システム、属性連携方法及び属性連携プログラム

Publications (1)

Publication Number Publication Date
WO2017187552A1 true WO2017187552A1 (ja) 2017-11-02

Family

ID=60160314

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/063187 WO2017187552A1 (ja) 2016-04-27 2016-04-27 属性連携装置、転送システム、属性連携方法及び属性連携プログラム

Country Status (4)

Country Link
US (1) US10691815B2 (ja)
JP (1) JP6366883B2 (ja)
CN (1) CN109074463A (ja)
WO (1) WO2017187552A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110855439A (zh) * 2019-12-17 2020-02-28 深圳前海环融联易信息科技服务有限公司 Http加密方法、装置、计算机设备及存储介质
JP2021522627A (ja) * 2018-04-17 2021-08-30 ドーモ・インコーポレイテッド 分散型システムにおいてデータを安全に管理するためのシステムおよび方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11663298B2 (en) * 2019-12-11 2023-05-30 At&T Intellectual Property I, L.P. Managing enterprise software licenses for virtual network functions
US20230102111A1 (en) * 2021-09-30 2023-03-30 Lenovo Global Technology (United States) Inc. Securing customer sensitive information on private cloud platforms

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010244432A (ja) * 2009-04-08 2010-10-28 Nippon Telegr & Teleph Corp <Ntt> ファイル共有システム、共有ファイルサーバ装置、ファイル共有方法、共有ファイルサーバ装置のアクセス制御方法、及びこれらのプログラム
US7836510B1 (en) * 2004-04-30 2010-11-16 Oracle America, Inc. Fine-grained attribute access control
JP2011134037A (ja) * 2009-12-24 2011-07-07 Fujitsu Ltd ファイル管理装置、ファイル管理プログラム、およびファイル管理方法
US20150237041A1 (en) * 2014-02-20 2015-08-20 International Business Machines Corporation Attribute-based access control
WO2016060068A1 (ja) * 2014-10-15 2016-04-21 株式会社日立製作所 情報共有装置、及び、情報共有方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10260903A (ja) 1997-03-19 1998-09-29 Hitachi Ltd グループ暗号方法、及びファイル暗号システム
JP4945265B2 (ja) 2007-02-26 2012-06-06 株式会社Kddi研究所 サービス利用識別情報生成装置、サービス利用識別情報生成システム、サービス利用識別情報生成方法およびプログラム
JP4393580B1 (ja) 2009-04-16 2010-01-06 リプレックス株式会社 サービスシステム
WO2011073894A1 (en) * 2009-12-18 2011-06-23 Koninklijke Philips Electronics N.V. Digital rights management using attribute-based encryption
JP5424974B2 (ja) 2010-04-27 2014-02-26 三菱電機株式会社 暗号処理システム、鍵生成装置、暗号化装置、復号装置、署名処理システム、署名装置及び検証装置
JP5079054B2 (ja) 2010-06-15 2012-11-21 中国電力株式会社 コンテンツサーバ及びアクセス制御システム
JP2013150309A (ja) 2011-12-20 2013-08-01 Mitsubishi Electric Corp 情報処理装置および情報処理方法およびプログラム
JP2013150026A (ja) 2012-01-17 2013-08-01 Mitsubishi Electric Corp データ処理システム及び秘匿化装置及び秘密鍵生成装置及び秘匿化方法及び秘密鍵生成方法及びプログラム
JP5978759B2 (ja) 2012-05-21 2016-08-24 富士通株式会社 サービス要求装置、サービス提供システム、サービス要求方法およびサービス要求プログラム
JP5395938B1 (ja) 2012-09-25 2014-01-22 株式会社東芝 連携サービス提供システム及びサーバ装置
CN102916954B (zh) * 2012-10-15 2015-04-01 南京邮电大学 一种基于属性加密的云计算安全访问控制方法
WO2014083784A1 (ja) 2012-11-30 2014-06-05 日本電気株式会社 暗号システム、データ保存システム、それに用いる装置および方法
CN102945356B (zh) * 2012-12-12 2015-11-18 上海交通大学 云环境下搜索引擎的访问控制方法及系统
JP6082589B2 (ja) 2012-12-25 2017-02-15 株式会社日立ソリューションズ 暗号鍵管理プログラム、データ管理システム
WO2015008769A1 (ja) 2013-07-18 2015-01-22 日本電信電話株式会社 ディレクトリサービス装置、クライアント装置、鍵クラウドシステム、それらの方法、およびプログラム
JP2015033068A (ja) 2013-08-06 2015-02-16 日本電信電話株式会社 ファイル共有システム、情報提供装置、情報取得装置、及びその方法、プログラム
US10686604B2 (en) 2013-10-16 2020-06-16 Nippon Telegraph And Telephone Corporation Key device, key cloud system, decryption method, and program
JP2015099961A (ja) 2013-11-18 2015-05-28 三菱電機株式会社 情報配信システム、サーバ装置、情報生成装置、端末装置、情報配信方法及びプログラム
US10140460B2 (en) 2013-12-11 2018-11-27 Mitsubishi Electric Corporation File storage system and user terminal
CN103825903A (zh) * 2014-03-06 2014-05-28 武汉大学 基于移动社交网络的文件安全共享方法
CN104901942B (zh) * 2015-03-10 2019-03-12 重庆邮电大学 一种基于属性加密的分布式访问控制方法
CN104852901A (zh) * 2015-04-10 2015-08-19 中国民航大学 基于属性的swim网络授权方法
GB201508872D0 (en) * 2015-05-22 2015-07-01 Exate Technology Ltd Encryption and decryption system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7836510B1 (en) * 2004-04-30 2010-11-16 Oracle America, Inc. Fine-grained attribute access control
JP2010244432A (ja) * 2009-04-08 2010-10-28 Nippon Telegr & Teleph Corp <Ntt> ファイル共有システム、共有ファイルサーバ装置、ファイル共有方法、共有ファイルサーバ装置のアクセス制御方法、及びこれらのプログラム
JP2011134037A (ja) * 2009-12-24 2011-07-07 Fujitsu Ltd ファイル管理装置、ファイル管理プログラム、およびファイル管理方法
US20150237041A1 (en) * 2014-02-20 2015-08-20 International Business Machines Corporation Attribute-based access control
WO2016060068A1 (ja) * 2014-10-15 2016-04-21 株式会社日立製作所 情報共有装置、及び、情報共有方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021522627A (ja) * 2018-04-17 2021-08-30 ドーモ・インコーポレイテッド 分散型システムにおいてデータを安全に管理するためのシステムおよび方法
JP7404339B2 (ja) 2018-04-17 2023-12-25 ドーモ・インコーポレイテッド 分散型システムにおいてデータを安全に管理するためのシステムおよび方法
CN110855439A (zh) * 2019-12-17 2020-02-28 深圳前海环融联易信息科技服务有限公司 Http加密方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
US20190095634A1 (en) 2019-03-28
US10691815B2 (en) 2020-06-23
JPWO2017187552A1 (ja) 2018-10-11
JP6366883B2 (ja) 2018-08-01
CN109074463A (zh) 2018-12-21

Similar Documents

Publication Publication Date Title
US10938554B2 (en) Managing private key access in multiple nodes
KR102443857B1 (ko) 암호화키를 사용한 신뢰 실행 환경의 어드레싱 기법
CN110214440B (zh) 计算系统,传送受保护数据的方法和可读存储介质
US9088557B2 (en) Encryption key management program, data management system
JP6495629B2 (ja) 情報処理システム、読出装置、情報処理装置、および、情報処理方法
KR101130415B1 (ko) 비밀 데이터의 노출 없이 통신 네트워크를 통해 패스워드 보호된 비밀 데이터를 복구하는 방법 및 시스템
US7823187B2 (en) Communication processing method and system relating to authentication information
US20140380057A1 (en) Method, Server, Host, and System for Protecting Data Security
WO2013144553A1 (en) Method and system for network data access
AU2011313985A1 (en) Methods and systems for providing and controlling cryptographically secure communications across unsecured networks between a secure virtual terminal and a remote system
JP2017535091A (ja) 仮想化システムにおける暗号復号方法および装置、およびシステム
NZ556002A (en) Method for moving a rights object between devices and a method and device for using a content object based on the moving method and device
JP6366883B2 (ja) 属性連携装置、転送システム、属性連携方法及び属性連携プログラム
CN111193703B (zh) 在分散式网络中使用的通信装置和通信方法
CN110235134B (zh) 使用洁净室供应来寻址可信执行环境
KR20230041971A (ko) 분산적 컴퓨터 네트워크 상에서 안전한 데이터 전송을 위한 방법, 장치 및 컴퓨터 판독가능 매체
WO2018202109A1 (zh) 一种证书请求消息发送方法、接收方法和装置
JP6049914B2 (ja) 暗号システム、鍵生成装置及び再暗号化装置
JP2001244925A (ja) 暗号化データ管理システム及び方法、記憶媒体
JP2016189527A (ja) 情報処理装置及び情報処理システム及び情報処理方法及び情報処理プログラム
EP4016921A1 (en) Certificate management method and apparatus
US20140181508A1 (en) Communication device and computer program product
JP2019071552A (ja) 暗号通信方法、暗号通信システム、鍵発行装置、プログラム
JP2009212747A (ja) 電子署名システム
JP2020127084A (ja) 暗号化システム及び暗号化方法

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2018514016

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

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

Ref document number: 16900424

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16900424

Country of ref document: EP

Kind code of ref document: A1