WO2019053778A1 - 登録端末、検索端末、検索サーバ、検索システム、登録プログラム及び検索プログラム - Google Patents

登録端末、検索端末、検索サーバ、検索システム、登録プログラム及び検索プログラム Download PDF

Info

Publication number
WO2019053778A1
WO2019053778A1 PCT/JP2017/032857 JP2017032857W WO2019053778A1 WO 2019053778 A1 WO2019053778 A1 WO 2019053778A1 JP 2017032857 W JP2017032857 W JP 2017032857W WO 2019053778 A1 WO2019053778 A1 WO 2019053778A1
Authority
WO
WIPO (PCT)
Prior art keywords
search
key
ciphertext
unit
registration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2017/032857
Other languages
English (en)
French (fr)
Inventor
豊 川合
義博 小関
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to CN201780094589.8A priority Critical patent/CN111066076B/zh
Priority to EP17924972.7A priority patent/EP3675086B1/en
Priority to US16/628,974 priority patent/US11170123B2/en
Priority to JP2018511293A priority patent/JP6362811B1/ja
Priority to PCT/JP2017/032857 priority patent/WO2019053778A1/ja
Publication of WO2019053778A1 publication Critical patent/WO2019053778A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • 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/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • 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

Definitions

  • the present invention relates to a confidential search technology capable of searching data in an encrypted state.
  • the secret search technology is roughly classified into a public key type secret search method and a common key type secret search method, and each has merits and demerits.
  • the public key secret search method has an advantage that access control is possible.
  • the public key type secret search method has a disadvantage that it is slower than the common key type secret search method.
  • the secret search method of the common key type is advantageous in that it is faster than the secret search method of the public key type.
  • the secret search method of the common key type has a disadvantage that access control can not be performed.
  • An object of the present invention is to realize a secret search method capable of access control and capable of increasing processing speed.
  • the registration terminal is An encryption unit configured to generate a ciphertext CT X in which the access range X is set and the key K is encrypted with the access range X indicating the range in which access is permitted, and the key K; A key registration unit that registers in the key server a set of the access range X and the ciphertext CT X generated by the encryption unit; A tag generation unit that generates a tag t for search with the key K and a search keyword w as inputs; And a tag registration unit that registers the tag t generated by the tag generation unit in a search server.
  • a set of the access range X and the ciphertext CT X is registered in the key server, and the tag t is registered in the search server.
  • the search terminal can obtain the usable key K by acquiring the decryptable ciphertext CT X based on the access range X. Therefore, access control can be realized.
  • the search terminal can execute the search processing by the secret key search method of the common key type by generating the trap door which is information to be transmitted to the search server when searching based on the key K. Therefore, the search process can be executed at high speed as in the secret key search method of the common key type.
  • FIG. 2 is a block diagram of a registration terminal 10 according to the first embodiment.
  • FIG. 2 is a block diagram of a search terminal 20 according to the first embodiment.
  • FIG. 2 is a configuration diagram of a key server 30 according to the first embodiment.
  • FIG. 2 is a block diagram of a search server 40 according to the first embodiment. Explanatory drawing of operation
  • FIG. 6 is a flowchart of registration processing according to the first embodiment. 6 is a flowchart of search processing according to the first embodiment.
  • FIG. 10 is a flowchart of key generation processing according to Modification 1; 10 is a flowchart of data acquisition processing according to Modification 1; FIG. 10 is a block diagram of a registration terminal 10 according to a modification 3; FIG. 8 is a block diagram of a search terminal 20 according to a modification 3; FIG. 10 is a block diagram of a key server 30 according to a modification 3; FIG. 14 is a block diagram of a search server 40 according to a modification 3; FIG. 8 is a block diagram of a search server 40 according to a second embodiment. Explanatory drawing of operation
  • FIG. 11 is a flowchart of registration processing according to the third embodiment.
  • the secret search system 1 includes one or more registration terminals 10, one or more search terminals 20, a key server 30, and a search server 40.
  • the registration terminal 10, the key server 30, and the search server 40 are connected via the transmission path 91. Further, the search terminal 20, the key server 30, and the search server 40 are connected via the transmission path 91.
  • the configuration of the registration terminal 10 according to the first embodiment will be described with reference to FIG.
  • the registration terminal 10 includes hardware of a processor 11, a memory 12, a storage 13, and a communication interface 14.
  • the processor 11 is connected to other hardware via a signal line to control these other hardware.
  • the registration terminal 10 includes, as functional components, an encryption unit 111, a key registration unit 112, a tag generation unit 113, and a tag registration unit 114.
  • the function of each functional component of the registration terminal 10 is realized by software.
  • the storage 13 stores a program for realizing the function of each functional component of the registration terminal 10. The program is read into the memory 12 by the processor 11 and executed by the processor 11. Thereby, the function of each functional component of the registration terminal 10 is realized.
  • the search terminal 20 includes hardware of a processor 21, a memory 22, a storage 23, and a communication interface 24.
  • the processor 21 is connected to other hardware via a signal line to control these other hardware.
  • the search terminal 20 includes, as functional components, a request receiving unit 211, a ciphertext acquisition unit 212, a decryption unit 213, a trapdoor generation unit 214, and a data acquisition unit 215.
  • the function of each functional component of the search terminal 20 is realized by software.
  • the storage 23 stores a program for realizing the function of each functional component of the search terminal 20.
  • the program is read into the memory 22 by the processor 21 and executed by the processor 21. Thereby, the function of each functional component of the search terminal 20 is realized.
  • the configuration of the key server 30 according to the first embodiment will be described with reference to FIG.
  • the key server 30 includes hardware of a processor 31, a memory 32, a storage 33, and a communication interface 34.
  • the processor 31 is connected to other hardware via a signal line to control these other hardware.
  • the key server 30 includes a ciphertext acquisition unit 311, an attribute determination unit 312, and a ciphertext transmission unit 313 as functional components.
  • the function of each functional component of the key server 30 is realized by software.
  • the storage 33 stores programs for realizing the functions of the functional components of the key server 30.
  • the program is read into the memory 32 by the processor 31 and executed by the processor 31. Thereby, the functions of the functional components of the key server 30 are realized.
  • the search server 40 includes hardware of a processor 41, a memory 42, a storage 43, and a communication interface 44.
  • the processor 41 is connected to other hardware via a signal line to control these other hardware.
  • the search server 40 includes, as functional components, a tag acquisition unit 411, a trapdoor acquisition unit 412, and a tag extraction unit 413.
  • the function of each functional component of the search server 40 is realized by software.
  • the storage 43 stores a program for realizing the function of each functional component of the search server 40. This program is read by the processor 41 into the memory 42 and executed by the processor 41. Thereby, the function of each functional component of the search server 40 is realized.
  • the processors 11, 21, 31, and 41 are integrated circuits (ICs) that perform processing.
  • the processors 11, 21, 31, and 41 are, as a specific example, a central processing unit (CPU), a digital signal processor (DSP), and a graphics processing unit (GPU).
  • CPU central processing unit
  • DSP digital signal processor
  • GPU graphics processing unit
  • the memories 12, 22, 32, 42 are storage devices for temporarily storing data.
  • the memories 12, 22, 32, and 42 are, as a specific example, a static random access memory (SRAM) and a dynamic random access memory (DRAM).
  • SRAM static random access memory
  • DRAM dynamic random access memory
  • the storages 13, 23, 33, 43 are storage devices for storing data.
  • the storages 13, 23, 33, 43 are, as a specific example, HDDs (Hard Disk Drives).
  • the storages 13, 23, 33, 43 are SD (Secure Digital) memory cards, CF (Compact Flash), NAND flash, flexible disks, optical disks, compact disks, Blu-ray (registered trademark) disks, DVDs (Digital Versatile Disks) It may be a portable storage medium.
  • the communication interfaces 14, 24, 34, 44 are interfaces for communicating with an external device.
  • the communication interfaces 14, 24, 34 and 44 are ports of Ethernet (registered trademark), USB (Universal Serial Bus), and HDMI (registered trademark, High-Definition Multimedia Interface) as a specific example.
  • the operation of the confidential search system 1 according to the first embodiment corresponds to the secret search method according to the first embodiment. Further, the operation of the secret search system 1 according to the first embodiment corresponds to the processing of the secret search program according to the first embodiment.
  • the operation of the confidential search system 1 according to the first embodiment includes a registration process and a search process.
  • the registration process according to the first embodiment corresponds to the registration method according to the first embodiment. Further, the registration process according to the first embodiment corresponds to the process of the registration program according to the first embodiment.
  • the search process according to the first embodiment corresponds to the search method according to the first embodiment.
  • the search process according to the first embodiment corresponds to the process of the search program according to the first embodiment.
  • Step S11 Encryption Process
  • the encryption unit 111 of the registration terminal 10 receives an input of an access range X indicating a range for permitting access.
  • the access range X is, as a specific example, represented by a logical expression of an attribute.
  • the access range X is input by the user of the registration terminal 10 by operating the input device.
  • the encryption unit 111 uses the received access range X as an input to generate a ciphertext CT X in which the access range X is set and the key K is encrypted, and the key K. Specifically, the encryption unit 111 generates a ciphertext CT X and a key K by using a Key Encapsulating Mechanism (KEM) function of a public key encryption method capable of access control. For example, the encryption unit 111 generates a ciphertext CT X and a key K using the Enc algorithm of the functional encryption method described in Patent Document 2.
  • KEM Key Encapsulating Mechanism
  • the encryption unit 111 sets the access range X as the attribute set ⁇ , inputs the value 1 as the message m, executes the Enc algorithm, and generates the element c 0 and the element c t as the ciphertext CT X And generate the element cd + 1 as the key K.
  • Step S12 key registration process
  • the key registration unit 112 of the registration terminal 10 registers the set of the access range X accepted in step S11 and the ciphertext CT X generated in step S11 in the key server 30.
  • the key registration unit 112 transmits the set of the access range X and the ciphertext CT X to the key server 30 via the transmission path 91.
  • the ciphertext acquisition unit 311 of the key server 30 acquires a set of the transmitted access range X and the ciphertext CT X, and writes the acquired combination to the storage 33.
  • a set of the access range X and the ciphertext CT X is accumulated in the storage 33.
  • Step S13 tag generation process
  • the tag generation unit 113 of the registration terminal 10 receives the input of the search keyword w.
  • the keyword w is an arbitrary string.
  • the keyword w is input by the user of the registration terminal 10 by operating the input device.
  • the tag generation unit 113 generates a tag t for search using the key K generated in step S11 and the received keyword w for search as input. Specifically, the tag generation unit 113 receives the key K and the keyword w, and generates a tag t for search using a tag generation algorithm in the secret search scheme of the common key type. For example, the tag generation unit 113 receives the key K and the keyword w, calculates a hash function H, and generates a tag t for search. As the secret search method of the common key type, a partial match search method may be used.
  • Step S14 Tag registration process
  • the tag registration unit 114 of the registration terminal 10 registers the tag t generated in step S13 in the search server 40. Specifically, the tag registration unit 114 transmits the tag t to the search server 40 via the transmission path 91. Then, the tag acquisition unit 411 of the search server 40 acquires the transmitted tag t and writes the acquired tag t in the storage 43. Thus, the tag t is accumulated in the storage 43.
  • the tag generation unit 113 may receive the input of the message m, encrypt the message m using the key K according to the common key encryption method, and generate the ciphertext C. Then, in step S14, the tag registration unit 114 may register the set of the tag t and the ciphertext C in the search server 40.
  • Step S21 Ciphertext Acquisition Process
  • the ciphertext acquisition unit 212 of the search terminal 20 transmits the attribute Y to the key server 30, and acquires the ciphertext CT X in which the access range X including the attribute Y is set in the access permission range.
  • the attribute Y is an attribute of the user of the search terminal 20.
  • the ciphertext acquisition unit 212 transmits the attribute Y to the key server 30 via the transmission path 91.
  • the attribute determination unit 312 of the key server 30 extracts a set including the attribute Y in the access range X from the set of the access range X and the ciphertext CT X stored in the storage 33.
  • the ciphertext transmission unit 313 of the key server 30 transmits the extracted set of ciphertext CT X to the search terminal 20 via the transmission path 91.
  • the ciphertext transmission unit 313 transmits the ciphertext CT X of each set.
  • the ciphertext acquisition unit 212 acquires the transmitted ciphertext CT X.
  • Step S22 decryption process
  • the decryption unit 213 of the search terminal 20 decrypts the ciphertext CT X obtained at step S 21 with the decryption key sk Y in which the attribute Y is set to generate the key K. Specifically, the decryption unit 213 decrypts the ciphertext CT X with the decryption key sk Y using the decryption algorithm of the public key cryptosystem used in step S11.
  • the decryption unit 213 uses the Dec algorithm of the functional encryption scheme described in Patent Document 2 , Decrypt the ciphertext CT X with the decryption key sk Y.
  • the decoding unit 213 may generate the elements k * 0 ,. . . , K * L as the decryption key sk Y , the elements c 0 and c t that are the ciphertext CT X , and the elements k * 0 ,. . . , K * L are calculated, and a session key K is generated as the key K.
  • Step S23 Request Acceptance Process
  • the request receiving unit 211 of the search terminal 20 receives an input of a search request including the search keyword w ′.
  • the keyword w ' is an arbitrary string.
  • the keyword w ′ is input by the user of the search terminal 20 by operating the input device.
  • Step S24 Trap door generation processing
  • the trap door generation unit 214 generates a trap door t ′ for search, using the key K generated in step S22 and the search keyword w ′ received in step S23 as an input.
  • the trapdoor generation unit 214 receives the key K and the keyword w 'as input, and generates a trapdoor t' for search using a trapdoor generation algorithm in the secret key search scheme of the common key type.
  • the trapdoor generation unit 214 receives the key K and the keyword w 'as input, calculates the hash function H used in step S13 of FIG. 7, and generates a trapdoor t' for search.
  • Step S25 Data Acquisition Process
  • the data acquisition unit 215 of the search terminal 20 transmits the trapdoor t 'generated in step S24 to the search server 40, and acquires data corresponding to the keyword w'.
  • the data acquisition unit 215 transmits the trapdoor t ′ to the search server 40 via the transmission path 91.
  • the trapdoor acquisition unit 412 of the search server 40 acquires the transmitted trapdoor t '.
  • the tag extraction unit 413 of the search server 40 extracts the tag t corresponding to the trapdoor t ′ from the tag t stored in the storage 43 which is a storage device.
  • the tag extraction unit 413 extracts a tag t that matches the trapdoor t '.
  • the tag extraction unit 413 transmits data relating to the extracted tag t to the search terminal 20 via the transmission path 91.
  • the data related to the tag t is, as a specific example, an identifier of the tag t.
  • the data on the tag t may be the number of extracted tags t.
  • the data on the tag t may be the ciphertext C on the tag t.
  • the registration terminal 10 registers the set of the access range X and the ciphertext CT X in the key server 30, and registers the tag t in the search server 40. Keep it. Then, the search terminal 20 acquires the ciphertext CT X corresponding to the attribute Y from the key server 30, generates a key K, generates a trapdoor t 'with the key K, transmits it to the search server 40, and transmits the data. get. Thereby, in the secret search system 1 according to the first embodiment, the speed of search processing can be increased while realizing access control.
  • the key K that can be acquired by the search terminal 20 is limited to the key K that can be decrypted by the decryption key sk Y in which the attribute Y is set. Therefore, access control is realized.
  • the tag t and the trapdoor t ′ are generated by an algorithm in the secret key search method of the common key type. Therefore, the generation process of the tag t and the trapdoor t ′ and the matching process of the tag t and the trapdoor t ′ have the same speed as the secret key type secret search method.
  • the search process is one series of processes. However, the search process may be divided into two processes of key generation process and data acquisition process.
  • the key generation process is performed at an arbitrary timing different from the timing at which the request receiving unit 211 receives the search request. For example, key generation processing is performed periodically.
  • the processes of step S31 to step S32 correspond to the processes of step S21 to step S22 of FIG. That is, in step S31, the ciphertext acquisition unit 212 acquires the ciphertext CT X at an arbitrary timing different from the timing at which the request reception unit 211 receives the search request.
  • step S32 the decryption unit 213 decrypts the acquired ciphertext CT X with the decryption key sk Y to generate a key K, and stores the generated key K in the storage 23 as a storage device. .
  • the data acquisition process is executed at the timing when the request receiving unit 211 receives a search request.
  • the processes of steps S41 to S43 correspond to the processes of steps S23 to S25 of FIG. That is, in step S41, the request receiving unit 211 receives a search request.
  • the trapdoor generating unit 214 generates a trapdoor t 'for search, using the key K stored in the storage 23, which is a storage device, and the search keyword w' as input.
  • the data acquisition unit 215 transmits the trapdoor t 'to the search server 40, and acquires data corresponding to the keyword w'.
  • the process of generating the key K in step S32 is a decryption process of the public key cryptosystem, and takes a processing time. Therefore, if the search request is accepted and then executed, the response time from the acceptance of the search request to the acquisition of data becomes long. Therefore, key generation processing including time consuming decryption processing is performed before the search request is accepted. This can reduce the response time.
  • the set of the access range X and the ciphertext CT X is stored in the storage 33 of the key server 30.
  • the set of the access range X and the ciphertext CT X may be stored in a storage device external to the key server 30.
  • the tag t is stored in the storage 43 of the search server 40.
  • the tag t may be stored in a storage device external to the search server 40.
  • the functions of the functional components of the registration terminal 10, the search terminal 20, the key server 30, and the search server 40 are realized by software.
  • the functions of the functional components of the registration terminal 10, the search terminal 20, the key server 30, and the search server 40 may be realized by hardware. A point of difference with the first embodiment will be described with respect to the third modification.
  • the registration terminal 10 includes an electronic circuit 15 instead of the processor 11, the memory 12, and the storage 13.
  • the electronic circuit 15 is a dedicated electronic circuit that realizes the functions of each part of the registration terminal 10 and the functions of the memory 12 and the storage 13.
  • the search terminal 20 includes an electronic circuit 25 instead of the processor 21, the memory 22 and the storage 23.
  • the electronic circuit 25 is a dedicated electronic circuit that realizes the functions of each part of the search terminal 20 and the functions of the memory 22 and the storage 23.
  • the key server 30 includes an electronic circuit 35 instead of the processor 31, the memory 32, and the storage 33.
  • the electronic circuit 35 is a dedicated electronic circuit that realizes the functions of the components of the key server 30 and the functions of the memory 32 and the storage 33.
  • the search server 40 includes an electronic circuit 45 instead of the processor 41, the memory 42, and the storage 43.
  • the electronic circuit 45 is a dedicated electronic circuit that realizes the functions of each part of the search server 40 and the functions of the memory 42 and the storage 43.
  • the electronic circuits 15, 25, 35, 45 are a single circuit, a complex circuit, a programmed processor, a processor programmed in parallel, a logic IC, a gate array (GA), an application specific integrated circuit (ASIC), an FPGA (field- A programmable gate array) is assumed.
  • the function of each part of the registration terminal 10 may be realized by one electronic circuit 15, or the function of each part of the registration terminal 10 may be distributed to a plurality of electronic circuits 15.
  • the function of each part of the search terminal 20 may be realized by one electronic circuit 25, or the function of each part of the search terminal 20 may be distributed to a plurality of electronic circuits 25.
  • each part of the key server 30 may be realized by one electronic circuit 35, or the function of each part of the key server 30 may be distributed to a plurality of electronic circuits 35.
  • the function of each part of the search server 40 may be realized by one electronic circuit 45, or the function of each part of the search server 40 may be distributed to a plurality of electronic circuits 45.
  • ⁇ Modification 4> As a fourth modification, some functions may be realized by hardware and other functions may be realized by software. That is, among the functional components of the registration terminal 10, some functions may be realized by hardware, and other functions may be realized by software. Similarly, with regard to the search terminal 20, the key server 30, and the search server 40, among the functional components, some functions may be realized by hardware, and other functions may be realized by software.
  • the processors 11, 21, 31, 41, the memories 12, 22, 32, 42, the storages 13, 23, 33, 43 and the electronic circuits 15, 25, 35, 45 are referred to as processing circuits. That is, the functions of the registration terminal 10, the search terminal 20, the key server 30, and the search server 40 are realized by the processing circuit.
  • the second embodiment differs from the first embodiment in that the tag t to be processed is narrowed down with the attribute Y before the matching between the tag t and the trapdoor t ′. In the second embodiment, this difference will be described, and the description of the same point will be omitted.
  • the configuration of the search server 40 according to the second embodiment will be described with reference to FIG.
  • the search server 40 differs from the search server 40 illustrated in FIG. 5 in that the search server 40 includes an attribute extraction unit 414 as a functional component.
  • the attribute extraction unit 414 is realized by software or hardware as other functional components.
  • step S11 to step S13 is the same as that of the first embodiment.
  • Step S14 Tag registration process
  • the tag registration unit 114 of the registration terminal 10 registers, in the search server 40, a set of the access range X accepted in step S11 and the tag t generated in step S13.
  • step S21 to step S24 is the same as that of the first embodiment.
  • Step S25 Data Acquisition Process
  • the data acquisition unit 215 of the search terminal 20 transmits the combination of the attribute Y and the trapdoor t 'generated in step S24 to the search server 40, and acquires data corresponding to the keyword w'.
  • the data acquisition unit 215 transmits the set of the attribute Y and the trapdoor t ′ to the search server 40 via the transmission path 91.
  • the trapdoor acquisition unit 412 of the search server 40 acquires the set of the transmitted attribute Y and the trapdoor t ′.
  • the attribute extraction unit 414 of the search server 40 accesses the attribute Y included in the set acquired by the trapdoor acquisition unit 412 from the set of the access range X and the tag t stored in the storage 43 which is a storage device.
  • the tag extraction unit 413 Extracts a set including the access range X included in the permitted range.
  • the tag extraction unit 413 extracts a set including the tag t corresponding to the trapdoor t ′ included in the set acquired by the trapdoor acquisition unit 412 from the set extracted by the attribute extraction unit 414. Then, the tag extraction unit 413 transmits data relating to the extracted tag t to the search terminal 20 via the transmission path 91.
  • the registration terminal 10 registers the set of the access range X and the tag t in the search server 40 in advance. Then, the search terminal 20 transmits the set of the attribute Y and the trapdoor t ′ to the search server 40. Then, the search server 40 narrows down the tag t to be processed by the access range X and the attribute Y, and then extracts the tag t corresponding to the trapdoor t '. Thereby, in the confidential search system 1 according to the second embodiment, the speed of the search process can be made faster than in the first embodiment.
  • the tag t for which the user of the search terminal 20 does not have the access authority is also the target of the matching process with the trapdoor t '.
  • the tag t is narrowed down by the attribute Y before the matching process with the trapdoor t ′.
  • the narrowing of the tag t by the attribute Y can be performed at high speed by, for example, aligning the tag t by the access range X. Therefore, the speed of search processing can be increased.
  • the third embodiment is different from the first and second embodiments in that the tag t is generated using the same key K when specifying the same access range X. In the third embodiment, this difference will be described, and the description of the same point will be omitted. In the third embodiment, the case where a function is added to the first embodiment will be described. However, it is also possible to add a function to the second embodiment.
  • the registration terminal 10 differs from the registration terminal 10 illustrated in FIG. 2 in that the registration terminal 10 includes a ciphertext acquisition unit 115 and a decryption unit 116.
  • the ciphertext acquisition unit 115 and the decryption unit 116 are realized by software or hardware, as with other functional components.
  • the registration process according to the third embodiment will be described with reference to FIGS. 18 and 19.
  • Step S51 Ciphertext Acquisition Process
  • the encryption unit 111 of the registration terminal 10 receives an input of the range information X * .
  • the range information X * is a range to be the access range X of the tag t generated in step S56 described later.
  • the range information X * is, as a specific example, represented by a logical expression of an attribute.
  • the range information X * is input by the user of the registration terminal 10 by operating the input device.
  • the ciphertext acquisition unit 115 of the registration terminal 10 transmits the attribute Y 'and the range information X * indicating the range to the key server 30, and the registration range X' including the attribute Y 'is set in the range for which the registration is permitted. Obtain the ciphertext CT X.
  • the attribute Y ′ is an attribute of the user of the registration terminal 10.
  • the registration range X ′ indicates a range for permitting registration of the tag t using the key K.
  • the registration range X ′ is, as a specific example, represented by a logical expression of an attribute.
  • the ciphertext acquisition unit 115 transmits the attribute Y ′ to the key server 30 via the transmission path 91.
  • the attribute determination unit 312 of the key server 30 sets the access range X indicating the same range as the range information X * from the combination of the access range X, the registration range X ′ and the ciphertext CT X stored in the storage 33 And extract a set in which the registration range X ′ includes the attribute Y ′.
  • the key server 30 a set of an access range X, a registration range X ′, and a ciphertext CT X is registered.
  • the ciphertext transmission unit 313 of the key server 30 transmits the extracted set of ciphertext CT X to the registration terminal 10 via the transmission path 91.
  • the ciphertext acquisition unit 115 acquires the transmitted ciphertext CT X.
  • Step S52 Acquisition determination processing
  • the ciphertext acquisition unit 115 of the registration terminal 10 determines whether the ciphertext CT X has been acquired in step S52. When the ciphertext CT X is acquired, the ciphertext acquisition unit 115 proceeds with the process to step S53. On the other hand, when the ciphertext CT X is not acquired, the ciphertext acquisition unit 115 proceeds with the process to step S54.
  • Step S53 Decryption Process
  • the decryption unit 116 of the registration terminal 10 decrypts the ciphertext CT X obtained in step S51 with the decryption key sk Y ' in which the attribute Y' is set to generate the key K.
  • the specific process is the same as step S22 of FIG. 8 except that the decryption key sk Y ′ is used.
  • Step S54 Encryption Process
  • the encryption unit 111 of the registration terminal 10 receives an input of the registration range X ′ indicating the range for which the registration is permitted.
  • the registration range X ′ is input by the user of the registration terminal 10 operating the input device.
  • Step S56 tag generation processing
  • the tag generation unit 113 of the registration terminal 10 receives the input of the search keyword w.
  • the keyword w is an arbitrary string.
  • the keyword w is input by the user of the registration terminal 10 by operating the input device.
  • the tag generation unit 113 generates a tag t for search using the key K generated in step S53 or step S54 and the accepted search keyword w as an input.
  • the specific process is the same as step S13 in FIG.
  • Step S57 Tag registration process
  • the tag registration unit 114 of the registration terminal 10 registers the tag t generated in step S56 in the search server 40.
  • the specific process is the same as step S14 in FIG.
  • the registration terminal 10 generates the tag t using the same key K when specifying the same access range X.
  • the search terminal 20 only has to decrypt one ciphertext CT X for one access range X. That is, in the first embodiment, the search terminal 20 may have to decrypt a plurality of ciphertexts CT X in one access range X. Decryption of the ciphertext CT X is computationally intensive and takes time to process. However, in the third embodiment, the search terminal 20 only has to decrypt one ciphertext CT X for one access range X, so that the speed of key K generation can be increased.
  • the registration terminal 10M when the registration terminal 10M registers the tag t, it is assumed that there is no key K corresponding to the access range X. In this case, the registration terminal 10M generates a key K, registers the encrypted text CT X obtained by encrypting the key K in the key server 30, and generates a tag t using the key K and registers the tag t in the search server 40. . Thereafter, when the registration terminal 10N designates the access range X and registers another tag t, the registration terminal 10N acquires the ciphertext CT X from the key server 30 to obtain the key K generated by the registration terminal 10M. obtain.
  • the registration terminal 10N generates a tag t using the key K generated by the registration terminal 10M and registers the tag t in the search server 40.
  • the registration terminal 10M and the registration terminal 10N can generate the tag t with the same key K.
  • the search terminal 20 only has to decrypt one ciphertext CT X for one access range X.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

登録端末(10)は、アクセス範囲(X)が設定され鍵Kが暗号化された暗号文(CT)と、鍵(K)との組を鍵サーバ(30)に登録するとともに、鍵(K)と検索用のキーワード(w)とから生成された検索用のタグ(t)を検索サーバ(40)に登録する。検索端末(20)は、アクセスを許可する範囲に属性(Y)を含むアクセス範囲(X)が設定された暗号文(CT)を取得し、暗号文(CT)を、属性(Y)が設定された復号鍵(sk)によって復号して鍵(K)を生成する。検索端末(20)は、鍵(K)と検索用のキーワード(w')とから検索用のトラップドア(t')を生成して、検索サーバ(40)に送信し、キーワード(w')に対応するデータを取得する。

Description

登録端末、検索端末、検索サーバ、検索システム、登録プログラム及び検索プログラム
 この発明は、データを暗号化した状態で検索可能な秘匿検索技術に関する。
 秘匿検索技術には、大別して公開鍵型の秘匿検索方式と共通鍵型の秘匿検索方式とがあり、それぞれメリットとデメリットとがある。
 公開鍵型の秘匿検索方式は、アクセス制御が可能であるというメリットがある。しかし、公開鍵型の秘匿検索方式は、共通鍵型の秘匿検索方式に比べて低速であるというデメリットがある。一方、共通鍵型の秘匿検索方式は、公開鍵型の秘匿検索方式に比べて高速であるというメリットがある。しかし、共通鍵型の秘匿検索方式は、アクセス制御ができないというデメリットがある。
米国特許出願公開第2011/138190号明細書 特開2011-232475号公報
 アクセス制御が可能であり、かつ、共通鍵型の秘匿検索方式と同様に高速な秘匿検索方式は実現されていない。
 この発明は、アクセス制御が可能であり、かつ、処理速度を早くすることが可能な秘匿検索方式を実現することを目的とする。
 この発明に係る登録端末は、
 アクセスを許可する範囲を示すアクセス範囲Xを入力として、前記アクセス範囲Xが設定され鍵Kが暗号化された暗号文CTと、前記鍵Kとを生成する暗号化部と、
 前記アクセス範囲Xと前記暗号化部によって生成された前記暗号文CTとの組を鍵サーバに登録する鍵登録部と、
 前記鍵Kと検索用のキーワードwとを入力として、検索用のタグtを生成するタグ生成部と、
 前記タグ生成部によって生成された前記タグtを検索サーバに登録するタグ登録部と
を備える。
 この発明では、アクセス範囲Xと暗号文CTとの組を鍵サーバに登録するとともに、タグtを検索サーバに登録する。
 これにより、検索端末は、アクセス範囲Xに基づき復号可能な暗号文CTを取得することにより、利用可能な鍵Kを得ることができる。したがって、アクセス制御を実現できる。また、検索端末は、鍵Kに基づき検索する際に検索サーバへ送信する情報であるトラップドアを生成することにより、共通鍵型の秘匿検索方式により、検索処理を実行できる。したがって、共通鍵型の秘匿検索方式と同様に高速に検索処理を実行できる。
実施の形態1に係る秘匿検索システム1の構成図。 実施の形態1に係る登録端末10の構成図。 実施の形態1に係る検索端末20の構成図。 実施の形態1に係る鍵サーバ30の構成図。 実施の形態1に係る検索サーバ40の構成図。 実施の形態1に係る秘匿検索システム1の動作の説明図。 実施の形態1に係る登録処理のフローチャート。 実施の形態1に係る検索処理のフローチャート。 変形例1に係る鍵生成処理のフローチャート。 変形例1に係るデータ取得処理のフローチャート。 変形例3に係る登録端末10の構成図。 変形例3に係る検索端末20の構成図。 変形例3に係る鍵サーバ30の構成図。 変形例3に係る検索サーバ40の構成図。 実施の形態2に係る検索サーバ40の構成図。 実施の形態2に係る秘匿検索システム1の動作の説明図。 実施の形態3に係る登録端末10の構成図。 実施の形態3に係る秘匿検索システム1の動作の説明図。 実施の形態3に係る登録処理のフローチャート。
 実施の形態1.
 ***構成の説明***
 図1を参照して、実施の形態1に係る秘匿検索システム1の構成を説明する。
 秘匿検索システム1は、1台以上の登録端末10と、1台以上の検索端末20と、鍵サーバ30と、検索サーバ40とを備える。登録端末10と、鍵サーバ30及び検索サーバ40とは、伝送路91を介して接続されている。また、検索端末20と、鍵サーバ30及び検索サーバ40とは、伝送路91を介して接続されている。
 図2を参照して、実施の形態1に係る登録端末10の構成を説明する。
 登録端末10は、プロセッサ11と、メモリ12と、ストレージ13と、通信インタフェース14とのハードウェアを備える。プロセッサ11は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
 登録端末10は、機能構成要素として、暗号化部111と、鍵登録部112と、タグ生成部113と、タグ登録部114とを備える。登録端末10の各機能構成要素の機能はソフトウェアにより実現される。
 ストレージ13には、登録端末10の各機能構成要素の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ11によりメモリ12に読み込まれ、プロセッサ11によって実行される。これにより、登録端末10の各機能構成要素の機能が実現される。
 図3を参照して、実施の形態1に係る検索端末20の構成を説明する。
 検索端末20は、プロセッサ21と、メモリ22と、ストレージ23と、通信インタフェース24とのハードウェアを備える。プロセッサ21は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
 検索端末20は、機能構成要素として、要求受付部211と、暗号文取得部212と、復号部213と、トラップドア生成部214と、データ取得部215とを備える。検索端末20の各機能構成要素の機能はソフトウェアにより実現される。
 ストレージ23には、検索端末20の各機能構成要素の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ21によりメモリ22に読み込まれ、プロセッサ21によって実行される。これにより、検索端末20の各機能構成要素の機能が実現される。
 図4を参照して、実施の形態1に係る鍵サーバ30の構成を説明する。
 鍵サーバ30は、プロセッサ31と、メモリ32と、ストレージ33と、通信インタフェース34とのハードウェアを備える。プロセッサ31は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
 鍵サーバ30は、機能構成要素として、暗号文取得部311と、属性判定部312と、暗号文送信部313とを備える。鍵サーバ30の各機能構成要素の機能はソフトウェアにより実現される。
 ストレージ33には、鍵サーバ30の各機能構成要素の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ31によりメモリ32に読み込まれ、プロセッサ31によって実行される。これにより、鍵サーバ30の各機能構成要素の機能が実現される。
 図5を参照して、実施の形態1に係る検索サーバ40の構成を説明する。
 検索サーバ40は、プロセッサ41と、メモリ42と、ストレージ43と、通信インタフェース44とのハードウェアを備える。プロセッサ41は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
 検索サーバ40は、機能構成要素として、タグ取得部411と、トラップドア取得部412と、タグ抽出部413とを備える。検索サーバ40の各機能構成要素の機能はソフトウェアにより実現される。
 ストレージ43には、検索サーバ40の各機能構成要素の機能を実現するプログラムが記憶されている。このプログラムは、プロセッサ41によりメモリ42に読み込まれ、プロセッサ41によって実行される。これにより、検索サーバ40の各機能構成要素の機能が実現される。
 プロセッサ11,21,31,41は、プロセッシングを行うIC(Integrated Circuit)である。プロセッサ11,21,31,41は、具体例としては、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、GPU(Graphics Processing Unit)である。
 メモリ12,22,32,42は、データを一時的に記憶する記憶装置である。メモリ12,22,32,42は、具体例としては、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)である。
 ストレージ13,23,33,43は、データを保管する記憶装置である。ストレージ13,23,33,43は、具体例としては、HDD(Hard Disk Drive)である。また、ストレージ13,23,33,43は、SD(Secure Digital)メモリカード、CF(CompactFlash)、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD(Digital Versatile Disk)といった可搬記憶媒体であってもよい。
 通信インタフェース14,24,34,44は、外部の装置と通信するためのインタフェースである。通信インタフェース14,24,34,44は、具体例としては、Ethernet(登録商標)、USB(Universal Serial Bus)、HDMI(登録商標,High-Definition Multimedia Interface)のポートである。
 ***動作の説明***
 図6から図8を参照して、実施の形態1に係る秘匿検索システム1の動作を説明する。
 実施の形態1に係る秘匿検索システム1の動作は、実施の形態1に係る秘匿検索方法に相当する。また、実施の形態1に係る秘匿検索システム1の動作は、実施の形態1に係る秘匿検索プログラムの処理に相当する。
 実施の形態1に係る秘匿検索システム1の動作は、登録処理と検索処理とを含む。実施の形態1に係る登録処理は、実施の形態1に係る登録方法に相当する。また、実施の形態1に係る登録処理は、実施の形態1に係る登録プログラムの処理に相当する。実施の形態1に係る検索処理は、実施の形態1に係る検索方法に相当する。また、実施の形態1に係る検索処理は、実施の形態1に係る検索プログラムの処理に相当する。
 図6及び図7を参照して、実施の形態1に係る登録処理を説明する。
 (ステップS11:暗号化処理)
 登録端末10の暗号化部111は、アクセスを許可する範囲を示すアクセス範囲Xの入力を受け付ける。アクセス範囲Xは、具体例としては、属性の論理式によって表される。アクセス範囲Xは、登録端末10の利用者によって入力装置が操作され入力される。
 暗号化部111は、受け付けられたアクセス範囲Xを入力として、アクセス範囲Xが設定され鍵Kが暗号化された暗号文CTと、鍵Kとを生成する。
 具体的には、暗号化部111は、アクセス制御が可能な公開鍵暗号方式のKEM(Key Encapsulating Mechanism)機能を用いて、暗号文CTと、鍵Kとを生成する。例えば、暗号化部111は、特許文献2に記載された関数型暗号方式のEncアルゴリズムを用いて、暗号文CTと鍵Kとを生成する。この場合、例えば、暗号化部111は、アクセス範囲Xを属性集合Γとし、値1をメッセージmとして入力し、Encアルゴリズムを実行して、要素c及び要素cを暗号文CTとして生成し、要素cd+1を鍵Kとして生成する。
 (ステップS12:鍵登録処理)
 登録端末10の鍵登録部112は、ステップS11で受け付けられたアクセス範囲Xと、ステップS11で生成された暗号文CTとの組を鍵サーバ30に登録する。
 具体的には、鍵登録部112は、アクセス範囲Xと暗号文CTとの組を、伝送路91を介して鍵サーバ30に送信する。すると、鍵サーバ30の暗号文取得部311は、送信されたアクセス範囲Xと暗号文CTとの組を取得して、ストレージ33に書き込む。これにより、ストレージ33にアクセス範囲Xと暗号文CTとの組が蓄積される。
 (ステップS13:タグ生成処理)
 登録端末10のタグ生成部113は、検索用のキーワードwの入力を受け付ける。キーワードwは、任意の文字列である。キーワードwは、登録端末10の利用者によって入力装置が操作され入力される。
 タグ生成部113は、ステップS11で生成された鍵Kと、受け付けられた検索用のキーワードwとを入力として、検索用のタグtを生成する。
 具体的には、タグ生成部113は、鍵Kとキーワードwとを入力として、共通鍵型の秘匿検索方式におけるタグ生成アルゴリズムを用いて、検索用のタグtを生成する。例えば、タグ生成部113は、鍵Kとキーワードwとを入力として、ハッシュ関数Hを計算して、検索用のタグtを生成する。共通鍵型の秘匿検索方式としては、部分一致検索可能な方式であってもよい。
 (ステップS14:タグ登録処理)
 登録端末10のタグ登録部114は、ステップS13で生成されたタグtを検索サーバ40に登録する。
 具体的には、タグ登録部114は、タグtを、伝送路91を介して検索サーバ40に送信する。すると、検索サーバ40のタグ取得部411は、送信されたタグtを取得して、ストレージ43に書き込む。これにより、ストレージ43にタグtが蓄積される。
 なお、ステップS13でタグ生成部113は、メッセージmの入力を受け付け、メッセージmを鍵Kを用いて共通鍵暗号方式により暗号化して暗号文Cを生成してもよい。そして、ステップS14でタグ登録部114は、タグtと暗号文Cとの組を検索サーバ40に登録してもよい。
 図6及び図8を参照して、実施の形態1に係る検索処理を説明する。
 (ステップS21:暗号文取得処理)
 検索端末20の暗号文取得部212は、属性Yを鍵サーバ30に送信して、アクセスを許可する範囲に属性Yを含むアクセス範囲Xが設定された暗号文CTを取得する。属性Yは、検索端末20の利用者の属性である。
 具体的には、暗号文取得部212は、属性Yを伝送路91を介して鍵サーバ30に送信する。すると、鍵サーバ30の属性判定部312は、ストレージ33に記憶されたアクセス範囲Xと暗号文CTとの組から、アクセス範囲Xに属性Yが含まれる組を抽出する。鍵サーバ30の暗号文送信部313は、抽出された組の暗号文CTを伝送路91を介して検索端末20に送信する。暗号文送信部313は、複数の組が抽出されている場合には、各組の暗号文CTを送信する。暗号文取得部212は、送信された暗号文CTを取得する。
 (ステップS22:復号処理)
 検索端末20の復号部213は、ステップS21で取得された暗号文CTを、属性Yが設定された復号鍵skによって復号して鍵Kを生成する。
 具体的には、復号部213は、ステップS11で用いられた公開鍵暗号方式の復号アルゴリズムを用いて、暗号文CTを復号鍵skによって復号する。図7のステップS11で特許文献2に記載された関数型暗号方式のEncアルゴリズムが用いられた場合には、復号部213は、特許文献2に記載された関数型暗号方式のDecアルゴリズムを用いて、暗号文CTを復号鍵skによって復号する。この場合、例えば、復号部213は、要素k ,...,k を復号鍵skとし、暗号文CTである要素c及び要素cと、要素k ,...,k とのペアリング演算を計算して、セッション鍵Kを鍵Kとして生成する。
 (ステップS23:要求受付処理)
 検索端末20の要求受付部211は、検索用のキーワードw’を含む検索要求の入力を受け付ける。キーワードw’は、任意の文字列である。キーワードw’は、検索端末20の利用者によって入力装置が操作され入力される。
 (ステップS24:トラップドア生成処理)
 トラップドア生成部214は、ステップS22で生成された鍵Kと、ステップS23で受け付けられた検索用のキーワードw’とを入力として、検索用のトラップドアt’を生成する。
 具体的には、トラップドア生成部214は、鍵Kとキーワードw’とを入力として、共通鍵型の秘匿検索方式におけるトラップドア生成アルゴリズムを用いて、検索用のトラップドアt’を生成する。例えば、トラップドア生成部214は、鍵Kとキーワードw’とを入力として、図7のステップS13で用いられたハッシュ関数Hを計算して、検索用のトラップドアt’を生成する。
 (ステップS25:データ取得処理)
 検索端末20のデータ取得部215は、ステップS24で生成されたトラップドアt’を検索サーバ40に送信して、キーワードw’に対応するデータを取得する。
 具体的には、データ取得部215は、トラップドアt’を、伝送路91を介して検索サーバ40に送信する。すると、検索サーバ40のトラップドア取得部412は、送信されたトラップドアt’を取得する。検索サーバ40のタグ抽出部413は、記憶装置であるストレージ43に記憶されたタグtから、トラップドアt’に対応するタグtを抽出する。例えば、タグ抽出部413は、トラップドアt’と一致するタグtを抽出する。そして、タグ抽出部413は、抽出されたタグtに関するデータを、伝送路91を介して検索端末20に送信する。
 タグtに関するデータとは、具体例としては、タグtの識別子である。また、タグtに関するデータは、抽出されたタグtの個数であってもよい。また、タグtに関するデータは、タグtと暗号文Cとの組が検索サーバ40に登録されている場合には、タグtに関する暗号文Cであってもよい。
 ***実施の形態1の効果***
 以上のように、実施の形態1に係る秘匿検索システム1では、登録端末10はアクセス範囲Xと暗号文CTとの組を鍵サーバ30に登録するとともに、タグtを検索サーバ40に登録しておく。そして、検索端末20は、鍵サーバ30から属性Yに対応した暗号文CTを取得して鍵Kを生成し、鍵Kでトラップドアt’を生成して検索サーバ40に送信してデータを取得する。
 これにより、実施の形態1に係る秘匿検索システム1では、アクセス制御を実現しつつ、検索処理の速度を早くすることができる。具体的には、検索端末20が取得できる鍵Kは、属性Yが設定された復号鍵skで復号可能な鍵Kに限定される。したがって、アクセス制御が実現される。また、タグtとトラップドアt’とは、共通鍵型の秘匿検索方式におけるアルゴリズムで生成されている。したがって、タグtとトラップドアt’との生成処理、及び、タグtとトラップドアt’とのマッチング処理は、共通鍵型の秘匿検索方式と同じ速度になる。
 ***他の構成***
 <変形例1>
 実施の形態1では、検索処理を1つの一連の処理とした。しかし、検索処理は、鍵生成処理と、データ取得処理との2つの処理に分けてもよい。
 図9を参照して、変形例1に係る鍵生成処理を説明する。
 鍵生成処理は、要求受付部211によって検索要求が受け付けられたタイミングとは異なる任意のタイミングに実行される。例えば、鍵生成処理は、定期的に実行される。
 ステップS31からステップS32の処理は、図8のステップS21からステップS22の処理に対応する。つまり、ステップS31で暗号文取得部212は、要求受付部211によって検索要求が受け付けられたタイミングとは異なる任意のタイミングに、暗号文CTを取得する。そして、ステップS32で復号部213は、取得された暗号文CTを、復号鍵skによって復号して鍵Kを生成し、生成された鍵Kを記憶装置であるストレージ23に記憶しておく。
 図10を参照して、変形例1に係るデータ取得処理を説明する。
 データ取得処理は、要求受付部211によって検索要求が受け付けられたタイミングに実行される。
 ステップS41からステップS43の処理は、図8のステップS23からステップS25の処理に対応する。つまり、ステップS41で要求受付部211は、検索要求を受け付ける。すると、ステップS42でトラップドア生成部214は、記憶装置であるストレージ23に記憶された鍵Kと検索用のキーワードw’とを入力として、検索用のトラップドアt’を生成する。そして、ステップS43でデータ取得部215は、トラップドアt’を検索サーバ40に送信して、キーワードw’に対応するデータを取得する。
 ステップS32で鍵Kを生成する処理は、公開鍵暗号方式の復号処理であり、処理時間がかかる。そのため、検索要求が受け付けられてから実行すると、検索要求が受け付けられてからデータを取得するまでの応答時間が長くなってしまう。そこで、時間がかかる復号処理を含む鍵生成処理を、検索要求が受け付けられる前に実行しておく。これにより、応答時間を短くすることができる。
 <変形例2>
 実施の形態1では、アクセス範囲Xと暗号文CTとの組は、鍵サーバ30のストレージ33に記憶された。しかし、アクセス範囲Xと暗号文CTとの組は、鍵サーバ30の外部の記憶装置に記憶されてもよい。
 同様に、実施の形態1では、タグtは、検索サーバ40のストレージ43に記憶された。しかし、タグtは、検索サーバ40の外部の記憶装置に記憶されてもよい。
 <変形例3>
 実施の形態1では、登録端末10と検索端末20と鍵サーバ30と検索サーバ40との各機能構成要素の機能がソフトウェアで実現された。しかし、変形例3として、登録端末10と検索端末20と鍵サーバ30と検索サーバ40との各機能構成要素の機能はハードウェアで実現されてもよい。この変形例3について、実施の形態1と異なる点を説明する。
 図11を参照して、変形例3に係る登録端末10の構成を説明する。
 各機能構成要素の機能がハードウェアで実現される場合、登録端末10は、プロセッサ11とメモリ12とストレージ13とに代えて、電子回路15を備える。電子回路15は、登録端末10の各部の機能とメモリ12とストレージ13との機能とを実現する専用の電子回路である。
 図12を参照して、変形例3に係る検索端末20の構成を説明する。
 各機能構成要素の機能がハードウェアで実現される場合、検索端末20は、プロセッサ21とメモリ22とストレージ23とに代えて、電子回路25を備える。電子回路25は、検索端末20の各部の機能とメモリ22とストレージ23との機能とを実現する専用の電子回路である。
 図13を参照して、変形例3に係る鍵サーバ30の構成を説明する。
 各機能構成要素の機能がハードウェアで実現される場合、鍵サーバ30は、プロセッサ31とメモリ32とストレージ33とに代えて、電子回路35を備える。電子回路35は、鍵サーバ30の各部の機能とメモリ32とストレージ33との機能とを実現する専用の電子回路である。
 図14を参照して、変形例3に係る検索サーバ40の構成を説明する。
 各機能構成要素の機能がハードウェアで実現される場合、検索サーバ40は、プロセッサ41とメモリ42とストレージ43とに代えて、電子回路45を備える。電子回路45は、検索サーバ40の各部の機能とメモリ42とストレージ43との機能とを実現する専用の電子回路である。
 電子回路15,25,35,45は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)が想定される。
 登録端末10の各部の機能を1つの電子回路15で実現してもよいし、登録端末10の各部の機能を複数の電子回路15に分散させて実現してもよい。同様に、検索端末20の各部の機能を1つの電子回路25で実現してもよいし、検索端末20の各部の機能を複数の電子回路25に分散させて実現してもよい。同様に、鍵サーバ30の各部の機能を1つの電子回路35で実現してもよいし、鍵サーバ30の各部の機能を複数の電子回路35に分散させて実現してもよい。同様に、検索サーバ40の各部の機能を1つの電子回路45で実現してもよいし、検索サーバ40の各部の機能を複数の電子回路45に分散させて実現してもよい。
 <変形例4>
 変形例4として、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。つまり、登録端末10の各機能構成要素のうち、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。同様に、検索端末20と鍵サーバ30と検索サーバ40とについても、各機能構成要素のうち、一部の機能がハードウェアで実現され、他の機能がソフトウェアで実現されてもよい。
 プロセッサ11,21,31,41とメモリ12,22,32,42とストレージ13,23,33,43と電子回路15,25,35,45とを、処理回路という。つまり、登録端末10と検索端末20と鍵サーバ30と検索サーバ40との各部の機能は、処理回路により実現される。
 実施の形態2.
 実施の形態2は、タグtとトラップドアt’とのマッチングの前に、処理対象とするタグtを属性Yで絞り込む点が実施の形態1と異なる。実施の形態2では、この異なる点を説明し、同一の点については説明を省略する。
 ***構成の説明***
 図15を参照して、実施の形態2に係る検索サーバ40の構成を説明する。
 検索サーバ40は、機能構成要素として、属性抽出部414を備える点が図5に示す検索サーバ40と異なる。属性抽出部414は、他の機能構成要素と同様に、ソフトウェア又はハードウェアで実現される。
 ***動作の説明***
 図7及び図8と、図16とを参照して、実施の形態2に係る秘匿検索システム1の動作を説明する。
 図16及び図7を参照して、実施の形態2に係る登録処理を説明する。
 ステップS11からステップS13の処理は、実施の形態1と同じである。
 (ステップS14:タグ登録処理)
 登録端末10のタグ登録部114は、ステップS11で受け付けられたアクセス範囲Xと、ステップS13で生成されたタグtとの組を検索サーバ40に登録する。
 図16及び図8を参照して、実施の形態2に係る検索処理を説明する。
 ステップS21からステップS24の処理は、実施の形態1と同じである。
 (ステップS25:データ取得処理)
 検索端末20のデータ取得部215は、属性Yと、ステップS24で生成されたトラップドアt’の組を検索サーバ40に送信して、キーワードw’に対応するデータを取得する。
 具体的には、データ取得部215は、属性Yとトラップドアt’との組を、伝送路91を介して検索サーバ40に送信する。すると、検索サーバ40のトラップドア取得部412は、送信された属性Yとトラップドアt’との組を取得する。検索サーバ40の属性抽出部414は、記憶装置であるストレージ43に記憶されたアクセス範囲Xとタグtとの組から、トラップドア取得部412によって取得された組に含まれる属性Yを、アクセスを許可する範囲に含むアクセス範囲Xを含む組を抽出する。タグ抽出部413は、属性抽出部414によって抽出された組から、トラップドア取得部412によって取得された組に含まれるトラップドアt’に対応するタグtを含む組を抽出する。そして、タグ抽出部413は、抽出されたタグtに関するデータを、伝送路91を介して検索端末20に送信する。
 ***実施の形態2の効果***
 以上のように、実施の形態2に係る秘匿検索システム1では、登録端末10はアクセス範囲Xとタグtとの組を検索サーバ40に登録しておく。そして、検索端末20は、属性Yとトラップドアt’との組を検索サーバ40に送信する。すると、検索サーバ40は、アクセス範囲Xと属性Yとで処理対象のタグtを絞り込んだ上で、トラップドアt’に対応するタグtを抽出する。
 これにより、実施の形態2に係る秘匿検索システム1では、実施の形態1に比べ検索処理の速度を早くすることができる。つまり、実施の形態1では、検索端末20の利用者がアクセス権限を持たないタグtについても、トラップドアt’とのマッチング処理の対象になっていた。しかし、実施の形態2では、トラップドアt’とのマッチング処理の前に、属性Yによりタグtを絞り込んでおく。属性Yによるタグtの絞り込みは、アクセス範囲Xによってタグtを整列する等しておけば、高速に行うことが可能である。したがって、検索処理の速度を早くすることができる。
 実施の形態3.
 実施の形態3は、同じアクセス範囲Xを指定する場合に同じ鍵Kを用いてタグtが生成される点が実施の形態1,2と異なる。実施の形態3では、この異なる点を説明し、同一の点については説明を省略する。
 実施の形態3では、実施の形態1に機能を追加した場合を説明する。しかし、実施の形態2に機能を追加することも可能である。
 ***構成の説明***
 図17を参照して、実施の形態3に係る登録端末10の構成を説明する。
 登録端末10は、暗号文取得部115と、復号部116とを備える点が、図2に示す登録端末10と異なる。暗号文取得部115と、復号部116とは、他の機能構成要素と同様に、ソフトウェア又はハードウェアで実現される。
 ***動作の説明***
 図18及び図19を参照して、実施の形態3に係る秘匿検索システム1の動作を説明する。
 図18及び図19を参照して、実施の形態3に係る登録処理を説明する。
 (ステップS51:暗号文取得処理)
 登録端末10の暗号化部111は、範囲情報Xの入力を受け付ける。範囲情報Xは、後述するステップS56で生成されるタグtのアクセス範囲Xとなる範囲である。範囲情報Xは、具体例としては、属性の論理式によって表される。範囲情報Xは、登録端末10の利用者によって入力装置が操作され入力される。
 登録端末10の暗号文取得部115は、属性Y’と範囲を示す範囲情報Xとを鍵サーバ30に送信して、登録を許可する範囲に属性Y’を含む登録範囲X’が設定された暗号文CTを取得する。属性Y’は、登録端末10の利用者の属性である。登録範囲X’は、鍵Kを用いてタグtを登録することを許可する範囲を示す。登録範囲X’は、具体例としては、属性の論理式によって表される。
 具体的には、暗号文取得部115は、属性Y’を伝送路91を介して鍵サーバ30に送信する。すると、鍵サーバ30の属性判定部312は、ストレージ33に記憶されたアクセス範囲Xと登録範囲X’と暗号文CTとの組から、範囲情報Xと同じ範囲を示すアクセス範囲Xが設定され、かつ、登録範囲X’に属性Y’が含まれる組を抽出する。なお、後述するように、鍵サーバ30には、アクセス範囲Xと登録範囲X’と暗号文CTとの組が登録されている。鍵サーバ30の暗号文送信部313は、抽出された組の暗号文CTを伝送路91を介して登録端末10に送信する。暗号文取得部115は、送信された暗号文CTを取得する。
 (ステップS52:取得判定処理)
 登録端末10の暗号文取得部115は、ステップS52で暗号文CTが取得されたか否かを判定する。
 暗号文取得部115は、暗号文CTが取得された場合には、処理をステップS53に進める。一方、暗号文取得部115は、暗号文CTが取得されなかった場合には、処理をステップS54に進める。
 (ステップS53:復号処理)
 登録端末10の復号部116は、ステップS51で取得された暗号文CTを、属性Y’が設定された復号鍵skY’によって復号して鍵Kを生成する。具体的な処理は、復号鍵skY’を用いる点を除き、図8のステップS22と同じである。
 (ステップS54:暗号化処理)
 登録端末10の暗号化部111は、登録を許可する範囲を示す登録範囲X’の入力を受け付ける。登録範囲X’は、登録端末10の利用者によって入力装置が操作され入力される。
 暗号化部111は、アクセス範囲X(=範囲情報X)と登録範囲X’とを入力として、アクセス範囲X及び登録範囲X’が設定され鍵Kが暗号化された暗号文CTと、鍵Kとを生成する。
 具体的には、暗号化部111は、図7のステップS11と同様に、アクセス制御が可能な公開鍵暗号方式のKEM機能を用いて、暗号文CTと、鍵Kとを生成する。この際、暗号化部111は、アクセス範囲Xと登録範囲X’とがOR条件で結ばれた条件を暗号文CTの復号条件として設定する。つまり、暗号文CTは、アクセス範囲Xが示す範囲に含まれる属性と、登録範囲X’が示す範囲に含まれる属性との少なくともいずれかの属性が設定された復号鍵によって復号可能である。
 (ステップS55:鍵登録処理)
 登録端末10の鍵登録部112は、ステップS51で受け付けられたアクセス範囲X(=範囲情報X)と、ステップS54で受け付けられた登録範囲X’と、ステップS54で生成された暗号文CTとの組を鍵サーバ30に登録する。
 具体的には、鍵登録部112は、アクセス範囲Xと登録範囲X’と暗号文CTとの組を、伝送路91を介して鍵サーバ30に送信する。すると、鍵サーバ30の暗号文取得部311は、送信されたアクセス範囲Xと登録範囲X’と暗号文CTとの組を取得して、ストレージ33に書き込む。これにより、ストレージ33にアクセス範囲Xと登録範囲X’と暗号文CTとの組が蓄積される。
 (ステップS56:タグ生成処理)
 登録端末10のタグ生成部113は、検索用のキーワードwの入力を受け付ける。キーワードwは、任意の文字列である。キーワードwは、登録端末10の利用者によって入力装置が操作され入力される。
 タグ生成部113は、ステップS53又はステップS54で生成された鍵Kと、受け付けられた検索用のキーワードwとを入力として、検索用のタグtを生成する。具体的な処理は、図7のステップS13と同じである。
 (ステップS57:タグ登録処理)
 登録端末10のタグ登録部114は、ステップS56で生成されたタグtを検索サーバ40に登録する。具体的な処理は、図7のステップS14と同じである。
 ***実施の形態3の効果***
 以上のように、実施の形態3に係る秘匿検索システム1では、登録端末10は同じアクセス範囲Xを指定する場合に同じ鍵Kを用いてタグtを生成する。
 これにより、実施の形態3に係る秘匿検索システム1では、検索端末20は、1つのアクセス範囲Xについて1つの暗号文CTを復号すれば済む。つまり、実施の形態1では、検索端末20は、1つのアクセス範囲Xについて複数の暗号文CTを復号しなければならない場合があった。暗号文CTの復号は計算量が多く、処理時間がかかった。しかし、実施の形態3では、検索端末20は、1つのアクセス範囲Xについて1つの暗号文CTを復号すれば済むため、鍵Kの生成の速度を早くすることができる。
 例えば、図18において、登録端末10Mがタグtを登録するときには、アクセス範囲Xに対応する鍵Kがなかったとする。この場合には、登録端末10Mは、鍵Kを生成し、鍵Kを暗号化した暗号文CTを鍵サーバ30に登録するとともに、鍵Kによりタグtを生成して検索サーバ40に登録する。
 その後、登録端末10Nがアクセス範囲Xを指定して別のタグtを登録する場合、登録端末10Nは鍵サーバ30から暗号文CTを取得することにより、登録端末10Mによって生成された鍵Kを得る。そして、登録端末10Nは、登録端末10Mによって生成された鍵Kによりタグtを生成して検索サーバ40に登録する。
 このように、登録端末10M及び登録端末10Nが同じ鍵Kによりタグtを生成することができる。その結果、検索端末20は、1つのアクセス範囲Xについて1つの暗号文CTを復号すれば済む。
 1 秘匿検索システム、10 登録端末、11 プロセッサ、12 メモリ、13 ストレージ、14 通信インタフェース、15 電子回路、111 暗号化部、112 鍵登録部、113 タグ生成部、114 タグ登録部、115 暗号文取得部、116 復号部、20 検索端末、21 プロセッサ、22 メモリ、23 ストレージ、24 通信インタフェース、25 電子回路、211 要求受付部、212 暗号文取得部、213 復号部、214 トラップドア生成部、215 データ取得部、30 鍵サーバ、31 プロセッサ、32 メモリ、33 ストレージ、34 通信インタフェース、35 電子回路、311 暗号文取得部、312 属性判定部、313 暗号文送信部、40 検索サーバ、41 プロセッサ、42 メモリ、43 ストレージ、44 通信インタフェース、45 電子回路、411 タグ取得部、412 トラップドア取得部、413 タグ抽出部、414 属性抽出部、91 伝送路。

Claims (12)

  1.  アクセスを許可する範囲を示すアクセス範囲Xを入力として、前記アクセス範囲Xが設定され鍵Kが暗号化された暗号文CTと、前記鍵Kとを生成する暗号化部と、
     前記アクセス範囲Xと前記暗号化部によって生成された前記暗号文CTとの組を鍵サーバに登録する鍵登録部と、
     前記鍵Kと検索用のキーワードwとを入力として、検索用のタグtを生成するタグ生成部と、
     前記タグ生成部によって生成された前記タグtを検索サーバに登録するタグ登録部と
    を備える登録端末。
  2.  前記タグ登録部は、前記アクセス範囲Xと前記タグtとの組を前記検索サーバに登録する
    請求項1に記載の登録端末。
  3.  前記暗号化部は、前記アクセス範囲Xと、登録を許可する範囲を示す登録範囲X’とを入力として、前記アクセス範囲Xと前記登録範囲X’とが設定され前記鍵Kが暗号化された前記暗号文CTと、前記鍵Kとを生成し、
     前記鍵登録部は、前記アクセス範囲Xと前記登録範囲X’と前記暗号文CTとの組を前記鍵サーバに登録する
    請求項1又は2に記載の登録端末。
  4.  前記登録端末は、さらに、
     属性Y’を前記鍵サーバに送信して、登録を許可する範囲に前記属性Y’を含む登録範囲X’が設定された暗号文CTを取得する暗号文取得部と、
     前記暗号文取得部によって取得された前記暗号文CTを、前記属性Y’が設定された復号鍵skY’によって復号して鍵Kを生成する復号部と
    を備え、
     前記タグ生成部は、前記復号部によって生成された前記鍵Kと、前記キーワードwとを入力として、検索用のタグtを生成する
    請求項3に記載の登録端末。
  5.  前記暗号文取得部は、前記属性Y’と範囲を示す範囲情報Xとを前記鍵サーバに送信して、前記範囲情報Xと同じ範囲を示すアクセス範囲Xが設定され、かつ、登録を許可する範囲に前記属性Y’を含む登録範囲X’が設定された暗号文CTを取得する
    請求項4に記載の登録端末。
  6.  属性Yを鍵サーバに送信して、アクセスを許可する範囲に前記属性Yを含むアクセス範囲Xが設定された暗号文CTを取得する暗号文取得部と、
     前記暗号文取得部によって取得された前記暗号文CTを、前記属性Yが設定された復号鍵skによって復号して鍵Kを生成する復号部と、
     前記復号部によって生成された鍵Kと検索用のキーワードw’とを入力として、検索用のトラップドアt’を生成するトラップドア生成部と、
     前記トラップドア生成部によって生成された前記トラップドアt’を検索サーバに送信して、前記キーワードw’に対応するデータを取得するデータ取得部と
    を備える検索端末。
  7.  前記検索端末は、さらに、
     前記キーワードw’を含む検索要求の入力を受け付ける要求受付部
    を備え、
     前記暗号文取得部は、前記要求受付部によって前記検索要求が受け付けられたタイミングとは異なるタイミングに、前記暗号文CTを取得し、
     前記復号部は、前記暗号文取得部によって取得された前記暗号文CTを、前記復号鍵skによって復号して鍵Kを生成し、生成された前記鍵Kを記憶装置に記憶し、
     前記トラップドア生成部は、前記要求受付部によって前記検索要求が受け付けられると、前記記憶装置に記憶された鍵Kと検索用のキーワードw’とを入力として、検索用のトラップドアt’を生成する
    請求項6に記載の検索端末。
  8.  前記データ取得部は、前記属性Yと前記トラップドアt’とを前記検索サーバに送信して、前記キーワードw’に対応するデータを取得する
    請求項6又は7に記載の検索端末。
  9.  アクセス範囲Xと検索用のタグtとの組を登録端末から取得して、記憶装置に記憶するタグ取得部と、
     属性Yとトラップドアt’との組を検索端末から取得するトラップドア取得部と、
     前記記憶装置に記憶された組から、前記トラップドア取得部によって取得された組に含まれる前記属性Yを、アクセスを許可する範囲に含む前記アクセス範囲Xを含む組を抽出する属性抽出部と、
     前記属性抽出部によって抽出された組から、前記トラップドア取得部によって取得された組に含まれる前記トラップドアt’に対応する前記タグtを含む組を抽出するタグ抽出部と
    を備える検索サーバ。
  10.  登録端末と、検索端末と、鍵サーバと、検索サーバとを備える検索システムであり、
     前記登録端末は、
     アクセスを許可する範囲を示すアクセス範囲Xを入力として、前記アクセス範囲Xが設定され鍵Kが暗号化された暗号文CTと、前記鍵Kとを生成する暗号化部と、
     前記アクセス範囲Xと前記暗号化部によって生成された前記暗号文CTとの組を前記鍵サーバに登録する鍵登録部と、
     前記鍵Kと検索用のキーワードwとを入力として、検索用のタグtを生成するタグ生成部と、
     前記タグ生成部によって生成された前記タグtを前記検索サーバに登録するタグ登録部と
    を備え、
     前記検索端末は、
     属性Yを前記鍵サーバに送信して、アクセスを許可する範囲に前記属性Yを含むアクセス範囲Xが設定された暗号文CTを取得する暗号文取得部と、
     前記暗号文取得部によって取得された前記暗号文CTを、前記属性Yが設定された復号鍵skによって復号して鍵Kを生成する復号部と、
     前記復号部によって生成された鍵Kと検索用のキーワードw’とを入力として、検索用のトラップドアt’を生成するトラップドア生成部と、
     前記トラップドア生成部によって生成された前記トラップドアt’を前記検索サーバに送信して、前記キーワードw’に対応するデータを取得するデータ取得部と
    を備える検索システム。
  11.  アクセスを許可する範囲を示すアクセス範囲Xを入力として、前記アクセス範囲Xが設定され鍵Kが暗号化された暗号文CTと、前記鍵Kとを生成する暗号化処理と、
     前記アクセス範囲Xと前記暗号化処理によって生成された前記暗号文CTとの組を鍵サーバに登録する鍵登録処理と、
     前記鍵Kと検索用のキーワードwとを入力として、検索用のタグtを生成するタグ生成処理と、
     前記タグ生成処理によって生成された前記タグtを検索サーバに登録するタグ登録処理と
    をコンピュータに実行させる登録プログラム。
  12.  属性Yを鍵サーバに送信して、アクセスを許可する範囲に前記属性Yを含むアクセス範囲Xが設定された暗号文CTを取得する暗号文取得処理と、
     前記暗号文取得処理によって取得された前記暗号文CTを、前記属性Yが設定された復号鍵skによって復号して鍵Kを生成する復号処理と、
     前記復号処理によって生成された鍵Kと検索用のキーワードw’とを入力として、検索用のトラップドアt’を生成するトラップドア生成処理と、
     前記トラップドア生成処理によって生成された前記トラップドアt’を検索サーバに送信して、前記キーワードw’に対応するデータを取得するデータ取得処理と
    をコンピュータに実行させる検索プログラム。
PCT/JP2017/032857 2017-09-12 2017-09-12 登録端末、検索端末、検索サーバ、検索システム、登録プログラム及び検索プログラム Ceased WO2019053778A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201780094589.8A CN111066076B (zh) 2017-09-12 2017-09-12 登记终端、密钥服务器、检索系统和计算机能读取的存储介质
EP17924972.7A EP3675086B1 (en) 2017-09-12 2017-09-12 Registration terminal, search terminal, search server, search system, registration program, and search program
US16/628,974 US11170123B2 (en) 2017-09-12 2017-09-12 Registration terminal, key server, search system, and computer readable medium
JP2018511293A JP6362811B1 (ja) 2017-09-12 2017-09-12 登録端末、鍵サーバ、検索システム、登録プログラム
PCT/JP2017/032857 WO2019053778A1 (ja) 2017-09-12 2017-09-12 登録端末、検索端末、検索サーバ、検索システム、登録プログラム及び検索プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/032857 WO2019053778A1 (ja) 2017-09-12 2017-09-12 登録端末、検索端末、検索サーバ、検索システム、登録プログラム及び検索プログラム

Publications (1)

Publication Number Publication Date
WO2019053778A1 true WO2019053778A1 (ja) 2019-03-21

Family

ID=62976530

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/032857 Ceased WO2019053778A1 (ja) 2017-09-12 2017-09-12 登録端末、検索端末、検索サーバ、検索システム、登録プログラム及び検索プログラム

Country Status (5)

Country Link
US (1) US11170123B2 (ja)
EP (1) EP3675086B1 (ja)
JP (1) JP6362811B1 (ja)
CN (1) CN111066076B (ja)
WO (1) WO2019053778A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111930688A (zh) * 2020-09-23 2020-11-13 西南石油大学 云服务器中多关键词查询的密态数据可搜索方法及装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112163854B (zh) * 2020-09-14 2022-08-05 北京理工大学 一种层级化基于区块链公钥可搜索加密方法及系统
CN112883002B (zh) * 2021-03-31 2025-05-16 广东电网有限责任公司广州供电局 数据共享方法、装置、计算机设备和存储介质
CN117596085B (zh) * 2024-01-19 2024-06-18 华南理工大学 基于属性集的具有前后向隐私的可搜索加密方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187140A (ja) * 2008-02-04 2009-08-20 Kddi Corp アクセス制御装置、アクセス制御方法およびプログラム
US20100153403A1 (en) * 2008-12-12 2010-06-17 Electronics And Telecommunications Research Institute Method for data encryption and method for conjunctive keyword search of encrypted data
US20110138190A1 (en) 2009-12-09 2011-06-09 Microsoft Corporation Graph encryption
JP2011232475A (ja) 2010-04-27 2011-11-17 Mitsubishi Electric Corp 暗号処理システム、鍵生成装置、暗号化装置、復号装置、署名処理システム、署名装置及び検証装置
WO2013084957A1 (ja) * 2011-12-09 2013-06-13 日本電気株式会社 暗号化検索データベース装置、暗号化検索用データの追加削除方法および追加削除プログラム
JP2015106354A (ja) * 2013-12-02 2015-06-08 古河インフォメーション・テクノロジー株式会社 検索サジェスト装置、検索サジェスト方法、及び、プログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2434276A1 (en) * 2003-07-03 2005-01-03 Ibm Canada Limited - Ibm Canada Limitee Password management
JP4466911B2 (ja) * 2003-12-25 2010-05-26 日本輸送機株式会社 サヤフォーク
US8615668B2 (en) * 2010-01-15 2013-12-24 Mitsubishi Electric Corporation Confidential search system and cryptographic processing system
JP5432736B2 (ja) * 2010-01-18 2014-03-05 日本電信電話株式会社 暗号化された情報のためのキーワード検索システム、キーワード検索方法、検索要求装置、検索代行装置、プログラム、記録媒体
JP5412414B2 (ja) 2010-12-08 2014-02-12 株式会社日立製作所 検索可能暗号処理システム
EP2665052B1 (en) 2011-01-13 2018-08-15 Mitsubishi Electric Corporation Data processing device and data archiving device
JP2012164031A (ja) 2011-02-03 2012-08-30 Mitsubishi Electric Corp データ処理装置及びデータ保管装置及びデータ処理方法及びデータ保管方法及びプログラム
JP2013150026A (ja) 2012-01-17 2013-08-01 Mitsubishi Electric Corp データ処理システム及び秘匿化装置及び秘密鍵生成装置及び秘匿化方法及び秘密鍵生成方法及びプログラム
WO2013111284A1 (ja) * 2012-01-25 2013-08-01 三菱電機株式会社 データ検索装置、データ検索方法、データ検索プログラム、データ登録装置、データ登録方法、データ登録プログラムおよび情報処理装置
US10007803B2 (en) * 2012-10-26 2018-06-26 Infosys Limited Searching over encrypted keywords in a database
EP2945313B1 (en) * 2013-01-12 2017-09-06 Mitsubishi Electric Corporation Key generation device, key generation program, concealed data search system, and key distribution method
EP2947640B1 (en) 2013-01-18 2017-08-02 Mitsubishi Electric Corporation Data decryption device, attribute-based encryption system, random number element removing device, data decryption method, and data decryption programm.
EP3320447A4 (en) * 2015-07-07 2019-05-22 Private Machines Inc. SYSTEM AND METHOD FOR SECURELY SEARCHABLE AND COMMON-APPLICABLE REMOTE MEMORY
CN105323061B (zh) * 2015-12-02 2019-07-12 河海大学 一种可关键字搜索的外包密钥生成和解密的属性基系统及解密方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187140A (ja) * 2008-02-04 2009-08-20 Kddi Corp アクセス制御装置、アクセス制御方法およびプログラム
US20100153403A1 (en) * 2008-12-12 2010-06-17 Electronics And Telecommunications Research Institute Method for data encryption and method for conjunctive keyword search of encrypted data
US20110138190A1 (en) 2009-12-09 2011-06-09 Microsoft Corporation Graph encryption
JP2011232475A (ja) 2010-04-27 2011-11-17 Mitsubishi Electric Corp 暗号処理システム、鍵生成装置、暗号化装置、復号装置、署名処理システム、署名装置及び検証装置
WO2013084957A1 (ja) * 2011-12-09 2013-06-13 日本電気株式会社 暗号化検索データベース装置、暗号化検索用データの追加削除方法および追加削除プログラム
JP2015106354A (ja) * 2013-12-02 2015-06-08 古河インフォメーション・テクノロジー株式会社 検索サジェスト装置、検索サジェスト方法、及び、プログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
OKAMOTO; EIJI: "Cryptogram technology for realization of a bright information society 5. Distribution management of a cipher key", BIT, vol. 23, no. 12, 1 November 1991 (1991-11-01), pages 51 - 59, XP009516915, ISSN: 0385-6984 *
See also references of EP3675086A4
TAKATO HIRANO ET AL.: "22E3-3 Kakuteichi o Bubunteki ni Tsukatta Kosoku na Kyotsu Kagi Ango Base Hitoku Kensaku [Searchable Symmetric Encryption Partially Using Deterministic Values]", COMPUTER SECURITY SYMPOSIUM 2017 RONBUNSHU; 23 - 25 OCTOBER 2017, vol. 2017, 16 October 2017 (2017-10-16), JAPAN, pages 749 - 756, XP009519343, ISSN: 1882-0840, Retrieved from the Internet <URL:http://id.nii.ac.jp/1001/00187191/> *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111930688A (zh) * 2020-09-23 2020-11-13 西南石油大学 云服务器中多关键词查询的密态数据可搜索方法及装置

Also Published As

Publication number Publication date
JPWO2019053778A1 (ja) 2019-11-07
EP3675086B1 (en) 2021-10-27
US11170123B2 (en) 2021-11-09
CN111066076B (zh) 2023-03-17
US20200226279A1 (en) 2020-07-16
EP3675086A1 (en) 2020-07-01
JP6362811B1 (ja) 2018-07-25
CN111066076A (zh) 2020-04-24
EP3675086A4 (en) 2020-08-26

Similar Documents

Publication Publication Date Title
JP5875441B2 (ja) データを暗号化する装置及び方法
US20120269340A1 (en) Hierarchical encryption/decryption device and method thereof
CN104145274A (zh) 基于生物测定数据的媒体加密
JP2019502211A (ja) メモリ動作の暗号化
JP2020535693A (ja) 記憶データ暗号化/復号化装置及び方法
CN103907308A (zh) 主机设备、半导体存储器设备以及认证方法
JP6362811B1 (ja) 登録端末、鍵サーバ、検索システム、登録プログラム
WO2019184741A1 (zh) 应用程序信息的存储、处理方法及装置
US11431478B2 (en) Encryption and decryption system, encryption device, decryption device and encryption and decryption method
EP3317798B1 (en) Decrypting and decoding media assets through a secure data path
US20170032108A1 (en) Licensable function for securing stored data
US12598164B2 (en) System and method for encrypting and decrypting data
US10057054B2 (en) Method and system for remotely keyed encrypting/decrypting data with prior checking a token
US11321475B2 (en) Entropy data based on error correction data
JP6797337B2 (ja) メッセージ認証装置、メッセージ認証方法及びメッセージ認証プログラム
JP6462968B1 (ja) データ管理装置、データ管理方法及びデータ管理プログラム
WO2018054144A1 (zh) 对称密钥动态生成方法、装置、设备及系统
US10936757B2 (en) Registration destination determination device, searchable encryption system, destination determination method, and computer readable medium
JP7625168B1 (ja) 準同型演算装置、準同型演算方法、準同型演算プログラム及び秘匿情報処理システム
WO2017221308A1 (ja) データ管理装置、データ管理方法、データ管理プログラム、検索装置、検索方法及び検索プログラム
WO2025210930A1 (ja) 準同型演算装置、準同型演算方法、準同型演算プログラム及び秘匿情報処理システム
WO2020245898A1 (ja) 検索装置、サーバ装置、検索方法、情報処理方法、検索プログラム及び情報処理プログラム

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2018511293

Country of ref document: JP

Kind code of ref document: A

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

Ref document number: 17924972

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2017924972

Country of ref document: EP

Effective date: 20200325