KR20210009782A - Encryption system, apparatus and method for providing searchable having forward stability - Google Patents

Encryption system, apparatus and method for providing searchable having forward stability Download PDF

Info

Publication number
KR20210009782A
KR20210009782A KR1020190086794A KR20190086794A KR20210009782A KR 20210009782 A KR20210009782 A KR 20210009782A KR 1020190086794 A KR1020190086794 A KR 1020190086794A KR 20190086794 A KR20190086794 A KR 20190086794A KR 20210009782 A KR20210009782 A KR 20210009782A
Authority
KR
South Korea
Prior art keywords
user
identifier
file
identity
encrypted
Prior art date
Application number
KR1020190086794A
Other languages
Korean (ko)
Other versions
KR102248756B1 (en
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 KR1020190086794A priority Critical patent/KR102248756B1/en
Publication of KR20210009782A publication Critical patent/KR20210009782A/en
Application granted granted Critical
Publication of KR102248756B1 publication Critical patent/KR102248756B1/en

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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

According to the present invention, a searchable encryption apparatus having forward stability comprises: an encryption unit to use the identity of a user to be given a right to search for a file to encrypt a file identifier; a re-encryption unit to re-encrypt the encrypted identifier after constructing the identity of the user, a related keyword, and a search count (SC) of the user in layers; a transceiving unit to transmit the encrypted identifier and the re-encrypted identifier to a server; a search acquisition unit to acquire a total search count value of the user and a search state (KS) of a keyword to be searched up to now; a secret key generation unit to use a user key, the identity of the user, the related keyword, the total search count value, and the search state to generate a lower secret key; an identifier request unit to transmit the generated lower secret key to the server to request a file identifier; and an information acquisition unit to use an upper secret key pre-distributed from a key manager terminal to decrypt the encrypted identifier provided from the server to acquire the file identifier.

Description

순방향 안정성을 갖는 탐색 가능한 암호화 시스템과 그 장치 및 방법{ENCRYPTION SYSTEM, APPARATUS AND METHOD FOR PROVIDING SEARCHABLE HAVING FORWARD STABILITY}A searchable encryption system with forward stability and its device and method {ENCRYPTION SYSTEM, APPARATUS AND METHOD FOR PROVIDING SEARCHABLE HAVING FORWARD STABILITY}

본 발명은 순방향 안정성을 갖는 암호화 기법에 관한 것으로, 더욱 상세하게는 공개키 암호화 기법 중 하나인 계층적 신원 기반 암호화 기법을 사용하여 다수의 사용자 환경에서 활용 가능한 순방향 안정성을 갖는 탐색 가능한 암호화 시스템과 그 장치 및 방법에 관한 것이다.The present invention relates to an encryption scheme having forward stability, and more particularly, a searchable encryption system having forward stability that can be utilized in a plurality of user environments by using a hierarchical identity-based encryption scheme, which is one of public key encryption schemes, and its It relates to an apparatus and method.

알려진 바와 같이, 기존의 탐색 가능한 암호화 방법은 사용자가 자신의 데이터를 서버로 보낸 이후에, 데이터에 대한 정보를 노출하지 않으면서 동시에 적절한 키워드 탐색을 가능하게 하는 암호화 방법이다.As is known, the existing searchable encryption method is an encryption method that enables an appropriate keyword search at the same time without exposing information on data after a user sends his or her data to a server.

이러한 기존의 탐색 가능한 암호화 방법은 사용자 데이터의 기밀성을 보장하면서 데이터에 대한 활용도를 높이는 효과를 볼 수 있는 것으로, 대칭키 암호화 기법 혹은 공개 암호화 기법을 사용한다.These existing searchable encryption methods can increase the utilization of data while guaranteeing the confidentiality of user data, and use a symmetric key encryption technique or a public encryption technique.

대칭키 암호화 기법을 사용하여 효율적으로 단일의 사용자를 위한 탐색 가능한 암호화 방법을 구성할 수 있으며, 또한 공개키 암호화 기법을 사용하여 느리지만, 다수의 사용자를 위한 안전한 데이터 공유에서 사용될 수 있는 탐색 가능한 암호화 방법을 구성할 수 있다.Using a symmetric key encryption technique, you can efficiently construct a navigable encryption method for a single user, and also use a public key encryption technique, which is slow but can be used for secure data sharing for multiple users. You can configure the way.

반면에, 기존 탐색 가능한 암호화 방법의 안전성을 효율적으로 공격하는 방법들이 최근 발표되고 있는데, 이것은 악의적인 공격자나 서버 스스로가 사용될 확률이 높은 키워드를 중심으로 임의의 데이터를 암호화하고 희생자의 데이터베이스에 삽입한다.On the other hand, methods to efficiently attack the safety of existing searchable encryption methods have been recently announced, which encrypt arbitrary data around keywords that are likely to be used by malicious attackers or the server itself and insert them into the victim's database. .

그리고, 이전에 사용된 사용자의 탐색 질의를 재사용하여, 공격자가 삽입한 임의의 데이터가 반환되는지를 관찰한다.Then, by reusing the previously used search query of the user, we observe whether any data inserted by the attacker is returned.

만약, 공격자가 삽입한 임의의 데이터가 반환된다면 희생자의 탐색 질의에 포함된 키워드를 쉽게 유추할 수 있는데, 이러한 공격을 파일 삽입 공격(File Injection Attack)이라고 부른다.If arbitrary data inserted by an attacker is returned, the keyword included in the victim's search query can be easily inferred. Such an attack is called a file injection attack.

이러한 파일 삽입 공격을 막기 위해서는 공격자로 인하여 새로 삽입되는 데이터를 이전에 사용된 사용자의 탐색 질의로는 찾을 수 없도록 하는 순방향 안전성(Forward Security)을 보장하여야 한다.In order to prevent such a file insertion attack, it is necessary to ensure forward security that the newly inserted data cannot be found by the user's search query used previously.

근래 들어, 파일 삽입 공격으로부터 사용자의 질의 기밀성을 보장하기 위해서 순방향 안전 탐색이 가능한 암호화 방법이 제안되고 있다. 그러나, 제안된 기존의 순방향 안전 탐색이 가능한 암호화 방법들은 대칭키 암호화 기법을 사용하여 단일의 사용자 환경만을 고려하고 있다.Recently, in order to guarantee the confidentiality of a user's query from a file injection attack, an encryption method capable of forward safe search has been proposed. However, the proposed encryption methods capable of forward safe search only consider a single user environment by using a symmetric key encryption technique.

단순히, 기존의 것을 사용하여 다수의 사용자 환경으로 확장한다면 비효율적인 키 분배 과정과 사용자의 큰 저장 비용을 필요로 하게 되는 문제가 있다.Simply, if the existing one is used to expand to a plurality of user environments, there is a problem that an inefficient key distribution process and a large storage cost of the user are required.

그리고, 현재로서는 공개키 암호화 기법을 활용한 순방향 안전 탐색이 가능한 암호화 방법이 아직 제안된 바 없는 실정이다.And, at present, an encryption method capable of safe forward search using public key encryption techniques has not yet been proposed.

한국공개특허 제2017-0087120호(공개일: 2017. 07. 28.)Korean Patent Publication No. 2017-0087120 (Publication date: 2017. 07. 28.)

본 발명은, 계층적 신원 기반 암호화 기법을 사용하여 다수의 사용자 환경에서 활용 가능한 순방향 안정성을 갖는 탐색 가능한 암호화 시스템과 그 장치 및 방법을 제공하고자 한다.An object of the present invention is to provide a searchable encryption system having forward stability that can be utilized in a plurality of user environments, and an apparatus and method thereof using a hierarchical identity-based encryption technique.

본 발명은, 순방향 안정성을 갖는 탐색 가능한 암호화 방법을 프로세서가 수행하도록 하는 컴퓨터 프로그램을 저장하고 있는 컴퓨터 판독 가능한 기록매체를 제공하고자 한다.An object of the present invention is to provide a computer-readable recording medium storing a computer program that causes a processor to perform a searchable encryption method with forward stability.

본 발명은, 순방향 안정성을 갖는 탐색 가능한 암호화 방법을 프로세서가 수행하도록 하는 컴퓨터 프로그램이 컴퓨터 판독 가능한 기록매체에 저장되어 있는 컴퓨터 프로그램을 제공하고자 한다.An object of the present invention is to provide a computer program in which a computer program for causing a processor to perform a searchable encryption method having forward stability is stored in a computer-readable recording medium.

본 발명이 해결하고자 하는 과제는 상기에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재들로부터 본 발명이 속하는 통상의 지식을 가진 자에 의해 명확하게 이해될 수 있을 것이다.The problem to be solved by the present invention is not limited to the ones mentioned above, and another problem to be solved that is not mentioned can be clearly understood by those of ordinary skill in the art from the following descriptions. will be.

본 발명은, 일 관점에 따라, 사용자의 신원을 이용하여 상위 비밀키를 생성하고, 생성된 상기 상위 비밀키를 사용자 단말에 분배하는 키 관리자 단말과, 상기 사용자의 신원을 이용하여 파일 식별자를 암호화하고, 암호화된 식별자, 상기 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(SC)를 계층적으로 구성한 후 재 암호화하며, 파일, 상기 파일 식별자, 상기 암호화된 식별자와 상기 재 암호화된 식별자를 서버로 전송하는 상기 사용자 단말과, 상기 파일, 상기 파일 식별자, 상기 암호화된 식별자와 상기 재 암호화된 식별자를 저장 및 관리하며, 상기 사용자 단말로부터 하위 비밀키를 이용한 파일 식별자의 요청이 수신되면, 상기 하위 비밀키를 이용하여 재 암호화된 식별자를 복호화하고, 복호화된 식별자와 같은 쌍의 암호화된 식별자를 비교하여 일치하면 상기 암호화된 식별자를 상기 사용자 단말에 제공하는 상기 서버를 포함하고, 상기 사용자 단말은, 상기 서버로부터 제공되는 상기 암호화된 식별자를 기 분배된 상기 상위 비밀키를 이용하여 복호화함으로써 파일 식별자를 획득하고, 획득된 상기 파일 식별자를 통해 상기 서버로부터 상응하는 파일을 획득하는 순방향 안정성을 갖는 탐색 가능한 암호화 시스템을 제공할 수 있다.According to an aspect of the present invention, a key manager terminal for generating a higher private key using the user's identity and distributing the generated higher private key to a user terminal, and a file identifier using the user's identity are encrypted. And, after hierarchically configuring the encrypted identifier, the user's identity, the related keyword, and the number of searches (SC) of the user, and re-encrypting the file, the file identifier, the encrypted identifier and the re-encrypted identifier to the server Stores and manages the transmitting user terminal, the file, the file identifier, the encrypted identifier and the re-encrypted identifier, and when a request for a file identifier using a lower secret key is received from the user terminal, the lower secret And the server that decrypts the re-encrypted identifier using a key, compares the encrypted identifier of the same pair with the decrypted identifier, and provides the encrypted identifier to the user terminal if they match, and the user terminal comprises: Searchable encryption with forward stability in which a file identifier is obtained by decrypting the encrypted identifier provided from a server using the previously distributed upper secret key, and a corresponding file is obtained from the server through the obtained file identifier System can be provided.

본 발명의 상기 키 관리자 단말은, 계층적 신원 기반 암호화 기법을 이용하여 공개 인자(Public Parameter)를 생성하고, 생성된 상기 공개 인자에 기반하여 상위 비밀키를 생성할 수 있다.The key manager terminal of the present invention may generate a public parameter using a hierarchical identity-based encryption technique, and generate a higher private key based on the generated public factor.

본 발명의 상기 사용자 단말은, 계층적 신원 기반 암호화 기법을 이용하여 상기 암호화된 식별자를 재 암호화할 수 있다.The user terminal of the present invention may re-encrypt the encrypted identifier using a hierarchical identity-based encryption technique.

본 발명의 상기 사용자 단말은, 탐색하고자 하는 키워드의 현재까지의 탐색 상태(KS)와 사용자의 총 탐색 카운트 값을 획득하고, 사용자 키, 사용자의 신원, 관련 키워드, 상기 총 탐색 카운트 값 및 상기 탐색 상태를 이용하여 상기 하위 비밀키를 생성할 수 있다.The user terminal of the present invention acquires a search state (KS) of the keyword to be searched up to now and a total search count value of the user, and the user key, the identity of the user, the related keyword, the total search count value, and the search The lower private key can be generated using the state.

본 발명은, 다른 관점에 따라, 파일을 탐색할 수 있는 권한을 부여하고자 하는 사용자의 신원을 이용하여 파일 식별자를 암호화하는 암호화부와, 상기 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(SC)를 계층적으로 구성한 후 암호화된 식별자를 재 암호화하는 재 암호화부와, 상기 암호화된 식별자와 상기 재 암호화된 식별자를 서버로 전송하는 송수신부와, 탐색하고자 하는 키워드의 현재까지의 탐색 상태(KS)와 사용자의 총 탐색 카운트 값을 획득하는 탐색 획득부와, 사용자 키, 상기 사용자의 신원, 상기 관련 키워드, 상기 총 탐색 카운트 값 및 상기 탐색 상태를 이용하여 하위 비밀키를 생성하는 비밀키 생성부와, 생성된 상기 하위 비밀키를 서버로 전송하여 파일 식별자를 요청하는 식별자 요청부와, 상기 서버로부터 제공되는 상기 암호화된 식별자를 키 관리자 단말로부터 기 분배된 상위 비밀키를 이용하여 복호화함으로써, 상기 파일 식별자를 획득하는 정보 획득부를 포함하는 순방향 안정성을 갖는 탐색 가능한 암호화 장치를 제공할 수 있다.According to another aspect, the present invention includes an encryption unit for encrypting a file identifier using the identity of a user who wishes to grant permission to search a file, and the identity of the user, related keywords, and the number of searches by the user (SC). A re-encryption unit for re-encrypting the encrypted identifier after hierarchical configuration of, and a transmission/reception unit for transmitting the encrypted identifier and the re-encrypted identifier to the server, and the search status of the keyword to be searched up to the present (KS) And a search acquisition unit that obtains a total search count value of the user, and a secret key generation unit that generates a lower secret key using a user key, the user's identity, the related keyword, the total search count value, and the search state. , An identifier request unit that transmits the generated lower private key to a server to request a file identifier, and the encrypted identifier provided from the server is decrypted using a higher private key previously distributed from a key manager terminal, and the file It is possible to provide a searchable encryption device having forward stability including an information obtaining unit that obtains an identifier.

본 발명의 상기 재 암호화부는, 계층적 신원 기반 암호화 기법을 이용하여 상기 암호화된 식별자를 재 암호화할 수 있다.The re-encryption unit of the present invention may re-encrypt the encrypted identifier using a hierarchical identity-based encryption technique.

본 발명의 상기 서버는, 상기 하위 비밀키를 이용하여 재 암호화된 식별자를 복호화하고, 복호화된 식별자와 같은 쌍의 암호화된 식별자를 비교하여 서로 일치하면 상기 암호화된 식별자를 상기 사용자 단말에 제공할 수 있다.The server of the present invention decrypts the re-encrypted identifier using the lower secret key, compares the encrypted identifier of the same pair as the decrypted identifier, and if they match, provides the encrypted identifier to the user terminal. have.

본 발명은, 또 다른 관점에 따라, 파일을 탐색할 수 있는 권한을 부여하고자 하는 사용자의 신원을 이용하여 파일 식별자를 암호화하는 단계와, 상기 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(SC)를 계층적으로 구성한 후 암호화된 식별자를 재 암호화하는 단계와, 탐색하고자 하는 키워드의 현재까지의 탐색 상태(KS)와 사용자의 총 탐색 카운트 값을 획득하는 단계와, 사용자 키, 상기 사용자의 신원, 상기 관련 키워드, 상기 총 탐색 카운트 값 및 상기 탐색 상태를 이용하여 하위 비밀키를 생성하는 단계와, 상기 생성된 하위 비밀키를 상기 서버로 전송하여 파일 식별자를 요청하는 단계와, 상기 서버로부터 제공되는 암호화된 식별자를 키 관리자 단말로부터 기 분배된 상위 비밀키를 이용하여 복호화함으로써, 상기 파일의 식별자를 획득하는 단계를 포함하는 순방향 안정성을 갖는 탐색 가능한 암호화 방법을 제공할 수 있다.According to another aspect of the present invention, the step of encrypting a file identifier using the identity of a user who wishes to grant permission to search a file, and the identity of the user, a related keyword, and the number of searches by the user (SC) Re-encrypting the encrypted identifier after hierarchically configuring, and obtaining a search state (KS) of the keyword to be searched up to now and a total search count value of the user, a user key, the identity of the user, Generating a lower private key using the related keyword, the total search count value, and the search status, and requesting a file identifier by transmitting the generated lower private key to the server, and provided from the server. It is possible to provide a searchable encryption method having forward stability including the step of obtaining an identifier of the file by decrypting the encrypted identifier using the upper secret key previously distributed from the key manager terminal.

본 발명의 상기 재 암호화하는 단계는, 계층적 신원 기반 암호화 기법을 이용하여 상기 암호화된 식별자를 재 암호화할 수 있다.In the re-encrypting step of the present invention, the encrypted identifier may be re-encrypted using a hierarchical identity-based encryption technique.

본 발명의 상기 서버는, 상기 하위 비밀키를 이용하여 재 암호화된 식별자를 복호화하고, 복호화된 식별자와 같은 쌍의 암호화된 식별자를 비교하여 서로 일치하면 상기 암호화된 식별자를 상기 사용자 단말에 제공하는 단계를 포함할 수 있다.The server of the present invention decrypts the re-encrypted identifier using the lower private key, compares the encrypted identifier of the same pair with the decrypted identifier, and if they match, provides the encrypted identifier to the user terminal It may include.

본 발명은, 또 다른 관점에 따라, 컴퓨터 프로그램을 저장하고 있는 컴퓨터 판독 가능 기록매체로서, 상기 컴퓨터 프로그램은, 프로세서에 의해 실행되면, 파일을 탐색할 수 있는 권한을 부여하고자 하는 사용자의 신원을 이용하여 파일 식별자를 암호화하는 단계와, 상기 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(SC)를 계층적으로 구성한 후 암호화된 식별자를 재 암호화하는 단계와, 탐색하고자 하는 키워드의 현재까지의 탐색 상태(KS)와 사용자의 총 탐색 카운트 값을 획득하는 단계와, 사용자 키, 상기 사용자의 신원, 상기 관련 키워드, 상기 총 탐색 카운트 값 및 상기 탐색 상태를 이용하여 하위 비밀키를 생성하는 단계와, 상기 생성된 하위 비밀키를 상기 서버로 전송하여 파일 식별자를 요청하는 단계와, 상기 서버로부터 제공되는 암호화된 식별자를 키 관리자 단말로부터 기 분배된 상위 비밀키를 이용하여 복호화함으로써, 상기 파일의 식별자를 획득하는 단계를 포함하는 방법을 상기 프로세서가 수행하도록 하기 위한 명령어를 포함하는 컴퓨터 판독 가능한 기록매체를 제공할 수 있다.According to another aspect, the present invention is a computer-readable recording medium storing a computer program, wherein the computer program, when executed by a processor, uses the identity of a user who wishes to grant permission to search a file. And encrypting the file identifier; re-encrypting the encrypted identifier after hierarchically configuring the user's identity, the related keyword, and the number of searches (SC) of the user; and the search status of the keyword to be searched up to the present time (KS) and acquiring a total search count value of the user, generating a lower secret key using a user key, the user's identity, the related keyword, the total search count value, and the search state, and the Transmitting the generated lower private key to the server to request a file identifier, and obtaining the file identifier by decrypting the encrypted identifier provided from the server using the upper private key previously distributed from the key manager terminal. It is possible to provide a computer-readable recording medium including instructions for causing the processor to perform a method including the step of.

본 발명은, 또 다른 관점에 따라, 컴퓨터 판독 가능한 기록매체에 저장되어 있는 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은, 프로세서에 의해 실행되면, 파일을 탐색할 수 있는 권한을 부여하고자 하는 사용자의 신원을 이용하여 파일 식별자를 암호화하는 단계와, 상기 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(SC)를 계층적으로 구성한 후 암호화된 식별자를 재 암호화하는 단계와, 탐색하고자 하는 키워드의 현재까지의 탐색 상태(KS)와 사용자의 총 탐색 카운트 값을 획득하는 단계와, 사용자 키, 상기 사용자의 신원, 상기 관련 키워드, 상기 총 탐색 카운트 값 및 상기 탐색 상태를 이용하여 하위 비밀키를 생성하는 단계와, 상기 생성된 하위 비밀키를 상기 서버로 전송하여 파일 식별자를 요청하는 단계와, 상기 서버로부터 제공되는 암호화된 식별자를 키 관리자 단말로부터 기 분배된 상위 비밀키를 이용하여 복호화함으로써, 상기 파일의 식별자를 획득하는 단계를 포함하는 방법을 상기 프로세서가 수행하도록 하기 위한 명령어를 포함하는 컴퓨터 프로그램을 제공할 수 있다.The present invention, according to another aspect, is a computer program stored in a computer-readable recording medium, wherein the computer program, when executed by a processor, uses the identity of a user who wishes to grant permission to search files. And encrypting the file identifier; re-encrypting the encrypted identifier after hierarchically configuring the user's identity, the related keyword, and the number of searches (SC) of the user; and the search status of the keyword to be searched up to the present time (KS) and acquiring a total search count value of the user, generating a lower secret key using a user key, the user's identity, the related keyword, the total search count value, and the search state, and the Transmitting the generated lower private key to the server to request a file identifier, and obtaining the file identifier by decrypting the encrypted identifier provided from the server using the upper private key previously distributed from the key manager terminal. A computer program including instructions for causing the processor to perform a method including the step of performing may be provided.

본 발명의 실시예에 따르면, 계층적 신원 기반 암호화 기법을 사용하여 다수의 사용자 환경에서 활용 가능한 순방향 안전 탐색이 가능한 암호화를 실현할 수 있다.According to an embodiment of the present invention, it is possible to implement encryption capable of forward safe search that can be used in a plurality of user environments by using a hierarchical identity-based encryption technique.

본 발명의 실시예에 따르면, 클라우드 및 원격 서버로부터 안전한 데이터 탐색을 보장함과 동시에 다수의 사용자 환경에 탐색 가능한 암호화 방법을 적용할 수 있다.According to an embodiment of the present invention, it is possible to apply a searchable encryption method to multiple user environments while ensuring safe data search from a cloud and a remote server.

본 발명의 실시예에 따르면, 파일 삽입 공격으로부터 안전하며 자주 사용되는 키워드를 탐색할 경우 성능이 더욱 증진되는 효과를 얻을 수 있다.According to an embodiment of the present invention, it is possible to obtain an effect of further enhancing performance when searching for a keyword that is safe from file insertion attacks and is frequently used.

도 1은 본 발명의 실시예에 따른 순방향 안정성을 갖는 탐색 가능한 암호화 시스템에 대한 계통도이다.
도 2는 본 발명의 실시예에 따른 순방향 안정성을 갖는 탐색 가능한 암호화 장치에 대한 블록 구성도이다.
도 3은 본 발명의 실시예에 따라 사용자 단말이 파일, 파일 식별자, 암호화된 식별자, 재 암호화된 식별자로 된 데이터를 생성하여 서버로 전송하는 주요 과정을 도시한 순서도이다.
도 4는 본 발명의 실시예에 따라 사용자 단말이 서버로부터 제공되는 암호화된 식별자에 의거하여 파일 식별자 및 파일을 획득하는 주요 과정을 도시한 순서도이다.
도 5는 본 발명의 실현을 위해 사용자 단말에서 보관 및 관리되는 키워드별 탐색 상태표의 예시이다.
1 is a schematic diagram of a searchable encryption system having forward stability according to an embodiment of the present invention.
2 is a block diagram of a searchable encryption device having forward stability according to an embodiment of the present invention.
3 is a flow chart showing a main process of generating data in a file, a file identifier, an encrypted identifier, and a re-encrypted identifier by a user terminal and transmitting the data to the server according to an embodiment of the present invention.
4 is a flowchart illustrating a main process of obtaining a file identifier and a file by a user terminal based on an encrypted identifier provided from a server according to an embodiment of the present invention.
5 is an example of a search status table for each keyword stored and managed in a user terminal for realization of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 범주는 청구항에 의해 정의될 뿐이다.Advantages and features of the present invention, and a method of achieving them will become apparent with reference to the embodiments described below in detail together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various forms, and only these embodiments make the disclosure of the present invention complete, and those skilled in the art to which the present invention pertains. It is provided to fully inform the person of the scope of the invention, and the scope of the invention is only defined by the claims.

본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명은 본 발명의 실시예들을 설명함에 있어 실제로 필요한 경우 외에는 생략될 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In describing the embodiments of the present invention, detailed descriptions of known functions or configurations will be omitted except when actually necessary in describing the embodiments of the present invention. In addition, terms to be described later are terms defined in consideration of functions in an embodiment of the present invention, which may vary according to the intention or custom of users or operators. Therefore, the definition should be made based on the contents throughout this specification.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세하게 설명한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 순방향 안정성을 갖는 탐색 가능한 암호화 시스템에 대한 계통도이다. 1 is a schematic diagram of a searchable encryption system having forward stability according to an embodiment of the present invention.

도 1을 참조하면, 탐색 가능한 암호화 시스템은 키 관리자 단말(110), 다수의 사용자 단말(120/1 ~ 120/n)로 된 사용자 단말 그룹(120), 네트워크(130), 서버(140) 및 관리 DB(150) 등을 포함할 수 있다.Referring to FIG. 1, a searchable encryption system includes a key manager terminal 110, a user terminal group 120 consisting of a plurality of user terminals 120/1 to 120/n, a network 130, a server 140, and It may include a management DB (150) and the like.

먼저, 키 관리자 단말(110)은, 예컨대 개인용 컴퓨터, 노트북 등과 같은 유선 단말 또는 스마트폰, 휴대폰, 스마트패드 등과 같은 무선 단말을 의미할 수 있는 것으로, 키 설정 프로토콜에 통해 사용자의 신원을 이용하여 상위 비밀키(Secret Key)를 생성하고, 생성된 상위 비밀키(상위 계층의 비밀키)를 네트워크(130)를 통해 각 사용자 단말(예컨대, 120/1 ~ 120/n)에 분배하는 등의 기능을 제공할 수 있다.First, the key manager terminal 110 may refer to a wired terminal such as a personal computer, a notebook, or a wireless terminal such as a smart phone, mobile phone, or a smart pad, and uses the user's identity through a key setting protocol. Functions such as generating a secret key and distributing the generated upper secret key (the upper layer secret key) to each user terminal (eg, 120/1 to 120/n) through the network 130 Can provide.

예컨대, 키 관리자 단말(110)은 공개키 암호화 기법 중의 하나인 계층적 신원 기반 암호화 기법을 이용하여 공개 인자(Public Parameter)를 생성하고, 생성된 공개 인자에 기반하여 상위 비밀키를 생성하는 등의 기능을 수행할 수 있다.For example, the key manager terminal 110 generates a public parameter using a hierarchical identity-based encryption technique, which is one of public key encryption techniques, and generates a higher private key based on the generated public factor. Function can be performed.

그리고, 사용자 단말 그룹(120) 내의 각 사용자 단말(120/1 ~ 120/n)은, 예컨대 개인용 컴퓨터, 노트북 등과 같은 유선 단말 또는 스마트폰, 휴대폰, 스마트패드 등과 같은 무선 단말을 의미할 수 있는 것으로, 사용자의 신원을 이용하여 파일 식별자(Identifier)를 암호화하고, 암호화된 식별자, 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(Search Count: SC)를 계층적으로 구성한 후 계층적 신원 기반 암호화 기법을 이용하여 재 암호화하며, 파일, 파일 식별자, 암호화된 식별자와 재 암호화된 식별자로 된 데이터를 네트워크(130)를 통해 원격지의 서버(140)로 전송하는 등의 기능을 제공할 수 있다.In addition, each user terminal (120/1 to 120/n) in the user terminal group 120 may mean a wired terminal such as a personal computer, a laptop, or a wireless terminal such as a smart phone, a mobile phone, and a smart pad. , The file identifier is encrypted using the user's identity, and the encrypted identifier, the user's identity, the related keyword, and the user's search count (SC) are hierarchically configured, and a hierarchical identity-based encryption technique is used. It is re-encrypted by using, and a function such as transmitting a file, a file identifier, and data in an encrypted identifier and a re-encrypted identifier to the remote server 140 through the network 130 may be provided.

또한, 각 사용자 단말은 하위 비밀키를 이용한 단말 사용자의 요청에 따라 네트워크(130)를 통해 서버(140)로부터 제공되는 암호화된 식별자를 키 관리자 단말(110)에 의해 기 분배된 상위 비밀키를 이용하여 복호화함으로써 파일 식별자를 획득하고, 획득된 파일 식별자를 통해 서버(140)로부터 상응하는 파일을 획득하는 등의 기능을 제공할 수 있다.In addition, each user terminal uses an encrypted identifier provided from the server 140 through the network 130 at the request of the terminal user using the lower private key, and the upper private key previously distributed by the key manager terminal 110 is used. Thus, it is possible to provide functions such as obtaining a file identifier by decrypting and obtaining a corresponding file from the server 140 through the obtained file identifier.

여기에서, 하위 비밀키는 탐색하고자 하는 키워드의 현재까지의 탐색 상태(Keyword State: KS)와 사용자의 총 탐색 카운트 값을 획득하고, 사용자 키, 사용자의 신원, 관련 키워드, 총 탐색 카운트 값 및 탐색 상태를 이용하여 생성될 수 있다. 이때, 하위 비밀키는, 예컨대 토큰(Token)으로 정의될 수 있으며, 이를 위해 각 사용자 단말에는 토큰 생성 알고리즘이 탑재될 수 있다.Here, the lower secret key acquires the search state (Keyword State: KS) of the keyword to be searched and the total search count value of the user, and the user key, the identity of the user, related keywords, the total search count value and search It can be created using states. In this case, the lower secret key may be defined as, for example, a token, and for this purpose, each user terminal may be equipped with a token generation algorithm.

각 사용자 단말에서 수행되는 구체적인 기능들에 대해서는 도 2 내지 도 4를 참조하여 후에 상세하게 기술될 것이다.Specific functions performed in each user terminal will be described in detail later with reference to FIGS. 2 to 4.

여기에서, 네트워크(130)는 유선 인터넷 등을 포함하는 유선 통신망과 2세대(2G), 3세대(3G), 4세대(4G), 5세대(5G) 및 차세대의 이동 통신망 중 어느 하나 또는 둘 이상을 포함하는 무선 통신망 등을 통합적으로 포괄하는 복합 통신망을 의미할 수 있다.Here, the network 130 is a wired communication network including a wired Internet, and one or two of a second generation (2G), a third generation (3G), a fourth generation (4G), a fifth generation (5G), and a next generation mobile communication network. It may refer to a complex communication network that comprehensively includes a wireless communication network including the above.

한편, 서버(140)는 각 사용자 단말(120/1 ~ 120/n로부터 네트워크(130)를 통해 제공되는 파일, 파일 식별자, 암호화된 식별자와 재 암호화된 식별자 등을 포함하는 데이터를 관리 DB(150)에 저장 및 관리하며, 임의의 사용자 단말로부터 하위 비밀키(토큰)를 이용한 파일 식별자의 요청이 수신되면, 수신된 하위 비밀키를 이용하여 재 암호화된 식별자를 복호화하고, 복호화된 식별자와 같은 쌍의 암호화된 식별자를 비교하여 일치하면 암호화된 식별자를 네트워크(130)를 통해 해당 사용자 단말에 제공하는 등의 기능을 제공할 수 있다.On the other hand, the server 140 manages data including files, file identifiers, encrypted identifiers and re-encrypted identifiers, etc. provided through the network 130 from each user terminal 120/1 to 120/n. ), and when a request for a file identifier using a lower private key (token) is received from an arbitrary user terminal, the re-encrypted identifier is decrypted using the received lower private key, and the same pair as the decrypted identifier If the encrypted identifiers of are compared and matched, a function such as providing the encrypted identifier to the corresponding user terminal through the network 130 may be provided.

도 2는 본 발명의 실시예에 따른 순방향 안정성을 갖는 탐색 가능한 암호화 장치에 대한 블록 구성도이다.2 is a block diagram of a searchable encryption device having forward stability according to an embodiment of the present invention.

도 2를 참조하면, 탐색 가능한 암호화 장치는, 각 사용자 단말에 장착될 수 있는 것으로, 데이터 송수신부(202), 암호화부(204), 재 암호화부(206), 탐색 획득부(208), 비밀키 생성부(210), 식별자 요청부(212), 정보 획득부(214) 및 저장부(216) 등을 포함할 수 있다.Referring to FIG. 2, a searchable encryption device, which can be installed in each user terminal, is a data transmission/reception unit 202, an encryption unit 204, a re-encryption unit 206, a search acquisition unit 208, and a secret. A key generation unit 210, an identifier request unit 212, an information acquisition unit 214, and a storage unit 216 may be included.

먼저, 데이터 송수신부(202)는 네트워크(130)를 통해 서버(140)로부터 제공되는 데이터들을 수신하여 단말 내의 관련 구성부재에 제공하고, 사용자 단말 내의 각 구성부재로부터 제공되는 각종 데이터들을 네트워크(130)를 통해 서버(140)로 전송하는 등의 기능을 수행할 수 있다.First, the data transmission/reception unit 202 receives data provided from the server 140 through the network 130 and provides it to a related component in the terminal, and provides various data provided from each component in the user terminal to the network 130 ) Through the server 140 may perform a function such as transmission.

암호화부(204)는 파일을 탐색할 수 있는 권한을 부여하려는 다른 사용자의 신원을 이용하여 파일 식별자를 암호화하는데, 여기에서 파일 식별자의 암호화는, 예컨대 공개키 암호화 기법 중의 하나인 계층적 신원 기반 암호화 기법을 이용하여 수행될 수 있다.The encryption unit 204 encrypts the file identifier using the identity of another user who intends to grant permission to browse the file, wherein the encryption of the file identifier is, for example, hierarchical identity-based encryption, which is one of public key encryption techniques. It can be done using a technique.

재 암호화부(206)는 암호화부(204)를 통해 암호화된 식별자, 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(SC)를 계층적으로 구성한 후 계층적 신원 기반 암호화 기법을 이용하여 재 암호화하는 등의 기능을 제공할 수 있다.The re-encryption unit 206 hierarchically configures the encrypted identifier, the user's identity, the related keyword, and the number of searches (SC) of the user through the encryption unit 204, and then re-encrypts it using a hierarchical identity-based encryption technique. It can provide functions such as.

여기에서, 파일, 파일 식별자, 암호화된 식별자 및 재 암호화된 식별자를 포함하는 데이터들은 데이터 송수신부(202) 및 네트워크(130)를 경유하는 전송 경로를 통해 서버(140)로 전송될 수 있다. 즉, 서버(140)에서는 각 사용자 단말들이 제공하는 파일, 파일 식별자, 암호화된 식별자 및 재 암호화된 식별자를 포함하는 데이터들을 관리 DB(150)에 저장해 두고 관리할 수 있다.Here, data including a file, a file identifier, an encrypted identifier, and a re-encrypted identifier may be transmitted to the server 140 through a transmission path through the data transmission/reception unit 202 and the network 130. That is, the server 140 may store and manage data including files, file identifiers, encrypted identifiers, and re-encrypted identifiers provided by each user terminal in the management DB 150.

탐색 획득부(208)는 단말 사용자가 탐색하고자 하는 키워드의 현재까지의 탐색 상태(KS)와 단말 사용자의 총 탐색 카운트 값을 획득하는 등의 기능을 제공할 수 있다. 여기에서, 도 5는 본 발명의 실현을 위해 사용자 단말에서 보관 및 관리되는 키워드별 탐색 상태표의 예시이다.The search acquisition unit 208 may provide a function of acquiring a search state (KS) of a keyword to be searched by the terminal user and a total search count value of the terminal user. Here, FIG. 5 is an example of a search status table for each keyword stored and managed in a user terminal for realization of the present invention.

비밀키 생성부(210)는 사용자 키, 사용자의 신원, 탐색하고자 하는 키워드, 총 탐색 카운트 값 및 탐색 상태를 이용하여 다수의 하위 비밀키(즉, 토큰)를 생성하는 등의 기능을 제공할 수 있다. 여기에서, 하위 비밀키는 총 탐색 카운트 값을 줄이면서 탐색 상태 값에 도달할 때까지 같은 방식으로 여러 개의 하위 비밀키로 생성될 수 있다.The secret key generation unit 210 can provide a function such as generating a plurality of lower secret keys (ie, tokens) using a user key, a user's identity, a keyword to be searched, a total search count value, and a search state. have. Here, the lower private key may be generated with several lower private keys in the same manner until the search state value is reached while reducing the total search count value.

식별자 요청부(212)는 비밀키 생성부(210)를 통해 생성된 하위 비밀키들(토큰들)을 데이터 송수신부(202) 및 네트워크(130)를 경유하는 전송 경로를 통해 서버(140)로 전송하여 파일 식별자를 요청하는 등의 기능을 제공할 수 있다.The identifier request unit 212 transmits the lower secret keys (tokens) generated through the secret key generation unit 210 to the server 140 through a transmission path through the data transmission/reception unit 202 and the network 130 Thus, a function such as requesting a file identifier can be provided.

여기에서, 서버(140)는 사용자 단말로부터 파일 식별자의 요청이 수신되면, 유효한 비밀키들을 이용하여 재 암호화된 식별자를 복호화하고, 복호화된 식별자와 같은 쌍의 암호화된 식별자를 비교하여 서로 일치하면 암호화된 식별자를 사용자 단말로 반환(제공)하는 등의 기능을 수행할 수 있다. 이때, 사용자 단말로 반환된 암호화된 식별자는 저장부(216)에 저장될 수 있다.Here, when a request for a file identifier is received from the user terminal, the server 140 decrypts the re-encrypted identifier using valid secret keys, compares the encrypted identifier of the same pair with the decrypted identifier, and encrypts if they match. It can perform functions such as returning (providing) the generated identifier to the user terminal. In this case, the encrypted identifier returned to the user terminal may be stored in the storage unit 216.

그리고, 저장부(216)에는 사용자 키, 사용자의 신원, 각종 키워드, 총 탐색 카운트 값 및 탐색 상태 등의 데이터들이 암호호된 식별자와 함께 저장될 수 있다.In the storage unit 216, data such as a user key, a user's identity, various keywords, a total search count value, and a search status may be stored together with an encrypted identifier.

정보 획득부(216)는 단말 사용자의 요청에 따라 서버(140)로부터 반환되어 네트워크(130) 및 데이터 송수신부(202)를 통해 수신된 암호화된 식별자를 기 분배된 상위 비밀키를 이용하여 복호화함으로써, 자신이 탐색하고자 하는 파일의 파일 식별자를 획득하고, 이 획득된 파일 식별자를 이용하여 서버(140)로부터 해당 파일을 획득하는 등의 기능을 제공할 수 있다.The information acquisition unit 216 decrypts the encrypted identifier returned from the server 140 at the request of the terminal user and received through the network 130 and the data transmission/reception unit 202 using a previously distributed upper secret key. , It is possible to provide a function of acquiring a file identifier of a file to be searched for, and acquiring a corresponding file from the server 140 using the obtained file identifier.

도 3은 본 발명의 실시예에 따라 사용자 단말이 파일, 파일 식별자, 암호화된 식별자, 재 암호화된 식별자로 된 데이터를 생성하여 서버로 전송하는 주요 과정을 도시한 순서도이다.3 is a flow chart showing a main process of generating data in a file, a file identifier, an encrypted identifier, and a re-encrypted identifier by a user terminal and transmitting the data to the server according to an embodiment of the present invention.

먼저, 키 관리자 단말(110)에서는 키 설정 프로토콜에 통해 사용자의 신원을 이용하여 상위 비밀키(Secret Key)를 생성하고, 생성된 상위 비밀키(상위 계층의 비밀키)를 네트워크(130)를 통해 각 사용자 단말(예컨대, 120/1 ~ 120/n)에 분배한다(단계 302).First, the key manager terminal 110 generates a higher secret key using the user's identity through a key setting protocol, and transmits the generated upper secret key (the upper layer secret key) through the network 130. It is distributed to each user terminal (eg, 120/1 to 120/n) (step 302).

다음에, 임의의 사용자 단말 내의 암호화부(204)에서는 파일을 탐색할 수 있는 권한을 부여하려는 다른 사용자의 신원을 이용하여 파일 식별자를 암호화한다(단계 304). 여기에서 파일 식별자의 암호화는, 예컨대 공개키 암호화 기법 중의 하나인 계층적 신원 기반 암호화 기법을 이용하여 수행될 수 있다.Next, the encryption unit 204 in an arbitrary user terminal encrypts the file identifier using the identity of another user who intends to grant permission to search the file (step 304). Here, the encryption of the file identifier may be performed using, for example, a hierarchical identity-based encryption technique, which is one of public key encryption techniques.

그리고, 재 암호화부(206)에서는 암호화된 식별자, 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(SC)를 계층적으로 구성한 후 계층적 신원 기반 암호화 기법을 이용하여 재 암호화한다(단계 306).Then, the re-encryption unit 206 hierarchically configures the encrypted identifier, the user's identity, the relevant keyword, and the number of searches SC of the user, and then re-encrypts it using a hierarchical identity-based encryption technique (step 306).

이후, 데이터 송수신부(202)에서는 파일, 파일 식별자, 암호화된 식별자 및 재 암호화된 식별자를 포함하는 데이터들을 네트워크(130)를 경유하는 전송 경로를 통해 서버(140)로 전송한다(단계 308).Thereafter, the data transmission/reception unit 202 transmits data including a file, a file identifier, an encrypted identifier and a re-encrypted identifier to the server 140 through a transmission path via the network 130 (step 308).

따라서, 서버(140)에서는 사용자 단말이 제공하는 파일, 파일 식별자, 암호화된 식별자 및 재 암호화된 식별자를 포함하는 데이터들을 관리 DB(150)에 저장해 두고 관리할 수 있다(단계 310).Accordingly, the server 140 may store and manage data including a file, a file identifier, an encrypted identifier, and a re-encrypted identifier provided by the user terminal in the management DB 150 (step 310).

도 4는 본 발명의 실시예에 따라 사용자 단말이 서버로부터 제공되는 암호화된 식별자에 의거하여 파일 식별자 및 파일을 획득하는 주요 과정을 도시한 순서도이다.4 is a flowchart illustrating a main process of obtaining a file identifier and a file by a user terminal based on an encrypted identifier provided from a server according to an embodiment of the present invention.

도 4를 참조하면, 탐색 획득부(208)에서는 단말 사용자가 탐색하고자 하는 키워드의 현재까지의 탐색 상태(KS)와 단말 사용자의 총 탐색 카운트 값을 획득한다(단계 402).Referring to FIG. 4, the search acquisition unit 208 acquires a search state (KS) of a keyword to be searched by the terminal user and a total search count value of the terminal user (step 402).

그리고, 비밀키 생성부(210)에서는 사용자 키, 사용자의 신원, 탐색하고자 하는 키워드, 총 탐색 카운트 값 및 탐색 상태를 이용하여 다수의 하위 비밀키(즉, 토큰)를 생성한다(단계 404). 이때, 하위 비밀키는 총 탐색 카운트 값을 줄이면서 탐색 상태 값에 도달할 때까지 같은 방식으로 여러 개의 하위 비밀키로 생성될 수 있다.In addition, the secret key generation unit 210 generates a plurality of lower secret keys (ie, tokens) using the user key, the user's identity, the keyword to be searched, the total search count value, and the search state (step 404). In this case, the lower private key may be generated as several lower private keys in the same manner until the search state value is reached while reducing the total search count value.

다음에, 식별자 요청부(212)에서는 하위 비밀키들(토큰들)을 데이터 송수신부(202) 및 네트워크(130)를 경유하는 전송 경로를 통해 서버(140)로 전송하여 파일 식별자를 요청한다(단계 406).Next, the identifier request unit 212 transmits the lower private keys (tokens) to the server 140 through the transmission path through the data transmission/reception unit 202 and the network 130 to request a file identifier (step 406).

그리고, 서버(140)에서는 임의의 사용자 단말로부터 파일 식별자의 요청이 수신되면, 유효한 비밀키들을 이용하여 재 암호화된 식별자를 복호화하고, 복호화된 식별자와 같은 쌍의 암호화된 식별자를 비교하여 일치하는지의 여부를 체크한다(단계 408).In addition, when a request for a file identifier is received from an arbitrary user terminal, the server 140 decrypts the re-encrypted identifier using valid secret keys, and compares the encrypted identifier of the same pair with the decrypted identifier to determine whether they match. Whether or not it is checked (step 408).

상기 단계(408)에서의 비교 결과 서로 일치하면, 서버(140)에서는 암호화된 식별자를 해당 사용자 단말로 제공한다(단계 410).If the result of the comparison in step 408 coincide with each other, the server 140 provides the encrypted identifier to the user terminal (step 410).

이후, 사용자 단말 내의 정보 획득부(216)에서는 단말 사용자의 요청에 따라 서버(140)로부터 반환되어 네트워크(130) 및 데이터 송수신부(202)를 통해 수신된 암호화된 식별자를 기 분배된 상위 비밀키를 이용하여 복호화함으로써, 자신이 탐색하고자 하는 파일의 파일 식별자를 획득하고(단계 412), 이 획득된 파일 식별자를 이용하여 서버(140)로부터 해당 파일을 획득한다(단계 414).Thereafter, in the information acquisition unit 216 in the user terminal, the encrypted identifier returned from the server 140 at the request of the terminal user and received through the network 130 and the data transmission/reception unit 202 is a previously distributed upper secret key. By decrypting using, a file identifier of a file to be searched is obtained (step 412), and a corresponding file is obtained from the server 140 by using the obtained file identifier (step 414).

한편, 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다.Meanwhile, combinations of each block of the attached block diagram and each step of the flowchart may be performed by computer program instructions. Since these computer program instructions can be mounted on a processor of a general purpose computer, special purpose computer, or other programmable data processing equipment, the instructions executed by the processor of the computer or other programmable data processing equipment are shown in each block or flow chart of the block diagram. Each step creates a means to perform the functions described.

이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리 등에 저장되는 것도 가능하므로, 그 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다.These computer program instructions can also be stored in a computer-usable or computer-readable memory, etc., which can be directed to a computer or other programmable data processing equipment to implement a function in a specific manner, so that the computer-usable or computer-readable memory It is also possible to produce an article of manufacture in which the instructions stored in the block diagram contain instruction means for performing the functions described in each block or flow chart.

그리고, 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.In addition, since computer program instructions can be mounted on a computer or other programmable data processing equipment, a series of operation steps are performed on a computer or other programmable data processing equipment to create a process that is executed by a computer, It is also possible for the instructions to perform possible data processing equipment to provide steps for executing the functions described in each block of the block diagram and each step of the flowchart.

또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 적어도 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block or each step may represent a module, segment, or part of code including at least one or more executable instructions for executing the specified logical function(s). It should also be noted that in some alternative embodiments, functions mentioned in blocks or steps may occur out of order. For example, two blocks or steps shown in succession may in fact be performed substantially simultaneously, or the blocks or steps may sometimes be performed in the reverse order depending on the corresponding function.

이상의 설명은 본 발명의 기술사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경 등이 가능함을 쉽게 알 수 있을 것이다. 즉, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것으로서, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다.The above description is merely illustrative of the technical idea of the present invention, and those of ordinary skill in the art to which the present invention pertains, various substitutions, modifications, and changes, etc., within the scope not departing from the essential characteristics of the present invention. It will be easy to see that this is possible. That is, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention, but to explain the technical idea, and the scope of the technical idea of the present invention is not limited by these embodiments.

따라서, 본 발명의 보호 범위는 후술되는 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.Accordingly, the scope of protection of the present invention should be interpreted by the claims to be described later, and all technical thoughts within the scope equivalent thereto should be interpreted as being included in the scope of the present invention.

110 : 키 관리자 단말
120 : 사용자 단말 그룹
120/1 ~ 120/n : 사용자 단말
140 : 서버
150 : 관리 DB
202 : 데이터 송수신부
204 : 암호화부
206 : 재 암호화부
208 : 탐색 획득부
210 : 비밀키 생성부
212 : 식별자 요청부
214 : 정보 획득부
216 : 저장부
110: key manager terminal
120: user terminal group
120/1 ~ 120/n: User terminal
140: server
150: management DB
202: data transmission/reception unit
204: encryption unit
206: re-encryption unit
208: search acquisition unit
210: secret key generation unit
212: identifier request unit
214: information acquisition unit
216: storage unit

Claims (12)

사용자의 신원을 이용하여 상위 비밀키를 생성하고, 생성된 상기 상위 비밀키를 사용자 단말에 분배하는 키 관리자 단말과,
상기 사용자의 신원을 이용하여 파일 식별자를 암호화하고, 암호화된 식별자, 상기 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(SC)를 계층적으로 구성한 후 재 암호화하며, 파일, 상기 파일 식별자, 상기 암호화된 식별자와 상기 재 암호화된 식별자를 서버로 전송하는 상기 사용자 단말과,
상기 파일, 상기 파일 식별자, 상기 암호화된 식별자와 상기 재 암호화된 식별자를 저장 및 관리하며, 상기 사용자 단말로부터 하위 비밀키를 이용한 파일 식별자의 요청이 수신되면, 상기 하위 비밀키를 이용하여 재 암호화된 식별자를 복호화하고, 복호화된 식별자와 같은 쌍의 암호화된 식별자를 비교하여 일치하면 상기 암호화된 식별자를 상기 사용자 단말에 제공하는 상기 서버를 포함하고,
상기 사용자 단말은,
상기 서버로부터 제공되는 상기 암호화된 식별자를 기 분배된 상기 상위 비밀키를 이용하여 복호화함으로써 파일 식별자를 획득하고, 획득된 상기 파일 식별자를 통해 상기 서버로부터 상응하는 파일을 획득하는
순방향 안정성을 갖는 탐색 가능한 암호화 시스템.
A key manager terminal for generating a higher private key using the user's identity and distributing the generated higher private key to a user terminal;
The file identifier is encrypted using the user's identity, the encrypted identifier, the user's identity, the related keyword, and the user's search count (SC) are hierarchically configured and re-encrypted, and the file, the file identifier, and the encryption The user terminal for transmitting the encrypted identifier and the re-encrypted identifier to the server,
Stores and manages the file, the file identifier, the encrypted identifier, and the re-encrypted identifier, and when a request for a file identifier using a lower private key is received from the user terminal, it is re-encrypted using the lower private key. Comprising the server for decrypting the identifier, comparing the encrypted identifier of the same pair as the decrypted identifier, and providing the encrypted identifier to the user terminal if they match,
The user terminal,
Obtaining a file identifier by decrypting the encrypted identifier provided from the server using the previously distributed upper secret key, and obtaining a corresponding file from the server through the obtained file identifier
A searchable encryption system with forward stability.
제 1 항에 있어서,
상기 키 관리자 단말은,
계층적 신원 기반 암호화 기법을 이용하여 공개 인자(Public Parameter)를 생성하고, 생성된 상기 공개 인자에 기반하여 상위 비밀키를 생성하는
순방향 안정성을 갖는 탐색 가능한 암호화 시스템.
The method of claim 1,
The key manager terminal,
Generates a public parameter using a hierarchical identity-based encryption technique, and generates a higher private key based on the generated public parameter.
A searchable encryption system with forward stability.
제 1 항에 있어서,
상기 사용자 단말은,
계층적 신원 기반 암호화 기법을 이용하여 상기 암호화된 식별자를 재 암호화하는
순방향 안정성을 갖는 탐색 가능한 암호화 시스템.
The method of claim 1,
The user terminal,
Re-encrypting the encrypted identifier using a hierarchical identity-based encryption technique
A searchable encryption system with forward stability.
제 1 항에 있어서,
상기 사용자 단말은,
탐색하고자 하는 키워드의 현재까지의 탐색 상태(KS)와 사용자의 총 탐색 카운트 값을 획득하고, 사용자 키, 사용자의 신원, 관련 키워드, 상기 총 탐색 카운트 값 및 상기 탐색 상태를 이용하여 상기 하위 비밀키를 생성하는
순방향 안정성을 갖는 탐색 가능한 암호화 시스템.
The method of claim 1,
The user terminal,
Acquires the search status (KS) of the keyword to be searched up to the present time and the total search count value of the user, and uses the user key, the identity of the user, the related keyword, the total search count value, and the search status to the lower secret key To generate
A searchable encryption system with forward stability.
파일을 탐색할 수 있는 권한을 부여하고자 하는 사용자의 신원을 이용하여 파일 식별자를 암호화하는 암호화부와,
상기 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(SC)를 계층적으로 구성한 후 암호화된 식별자를 재 암호화하는 재 암호화부와,
상기 암호화된 식별자와 상기 재 암호화된 식별자를 서버로 전송하는 송수신부와,
탐색하고자 하는 키워드의 현재까지의 탐색 상태(KS)와 사용자의 총 탐색 카운트 값을 획득하는 탐색 획득부와,
사용자 키, 상기 사용자의 신원, 상기 관련 키워드, 상기 총 탐색 카운트 값 및 상기 탐색 상태를 이용하여 하위 비밀키를 생성하는 비밀키 생성부와,
생성된 상기 하위 비밀키를 서버로 전송하여 파일 식별자를 요청하는 식별자 요청부와,
상기 서버로부터 제공되는 상기 암호화된 식별자를 키 관리자 단말로부터 기 분배된 상위 비밀키를 이용하여 복호화함으로써, 상기 파일 식별자를 획득하는 정보 획득부를 포함하는
순방향 안정성을 갖는 탐색 가능한 암호화 장치.
An encryption unit that encrypts the file identifier using the identity of the user who wants to grant permission to browse the file,
A re-encryption unit that re-encrypts the encrypted identifier after hierarchically configuring the user's identity, the related keyword, and the number of searches (SC) of the user;
A transceiver for transmitting the encrypted identifier and the re-encrypted identifier to a server,
A search acquisition unit that obtains a search status (KS) of the keyword to be searched up to the present and a total search count value of the user;
A secret key generation unit that generates a lower secret key using a user key, the user's identity, the related keyword, the total search count value, and the search state,
An identifier requesting unit for requesting a file identifier by transmitting the generated lower private key to a server,
Including an information acquisition unit for obtaining the file identifier by decrypting the encrypted identifier provided from the server using a higher secret key previously distributed from a key manager terminal
A searchable encryption device with forward stability.
제 5 항에 있어서,
상기 재 암호화부는,
계층적 신원 기반 암호화 기법을 이용하여 상기 암호화된 식별자를 재 암호화하는
순방향 안정성을 갖는 탐색 가능한 암호화 장치.
The method of claim 5,
The re-encryption unit,
Re-encrypting the encrypted identifier using a hierarchical identity-based encryption technique
A searchable encryption device with forward stability.
제 5 항에 있어서,
상기 서버는,
상기 하위 비밀키를 이용하여 재 암호화된 식별자를 복호화하고, 복호화된 식별자와 같은 쌍의 암호화된 식별자를 비교하여 서로 일치하면 상기 암호화된 식별자를 상기 사용자 단말에 제공하는
순방향 안정성을 갖는 탐색 가능한 암호화 장치.
The method of claim 5,
The server,
Decrypting the re-encrypted identifier using the lower secret key, comparing the encrypted identifier of the same pair with the decrypted identifier, and providing the encrypted identifier to the user terminal if they match.
A searchable encryption device with forward stability.
파일을 탐색할 수 있는 권한을 부여하고자 하는 사용자의 신원을 이용하여 파일 식별자를 암호화하는 단계와,
상기 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(SC)를 계층적으로 구성한 후 암호화된 식별자를 재 암호화하는 단계와,
탐색하고자 하는 키워드의 현재까지의 탐색 상태(KS)와 사용자의 총 탐색 카운트 값을 획득하는 단계와,
사용자 키, 상기 사용자의 신원, 상기 관련 키워드, 상기 총 탐색 카운트 값 및 상기 탐색 상태를 이용하여 하위 비밀키를 생성하는 단계와,
상기 생성된 하위 비밀키를 상기 서버로 전송하여 파일 식별자를 요청하는 단계와,
상기 서버로부터 제공되는 암호화된 식별자를 키 관리자 단말로부터 기 분배된 상위 비밀키를 이용하여 복호화함으로써, 상기 파일의 식별자를 획득하는 단계를 포함하는
순방향 안정성을 갖는 탐색 가능한 암호화 방법.
Encrypting the file identifier using the identity of the user who wishes to grant permission to browse the file,
Re-encrypting the encrypted identifier after hierarchically configuring the user's identity, the related keyword, and the number of searches (SC) of the user; and
Obtaining a search state (KS) of the keyword to be searched up to the present and a total search count value of the user; and
Generating a lower private key using a user key, the user's identity, the related keyword, the total search count value, and the search state; and
Transmitting the generated lower private key to the server to request a file identifier;
Comprising the step of decrypting the encrypted identifier provided from the server using the upper secret key previously distributed from the key manager terminal, thereby obtaining the identifier of the file
A searchable encryption method with forward stability.
제 8 항에 있어서,
상기 재 암호화하는 단계는,
계층적 신원 기반 암호화 기법을 이용하여 상기 암호화된 식별자를 재 암호화하는
순방향 안정성을 갖는 탐색 가능한 암호화 방법.
The method of claim 8,
The re-encrypting step,
Re-encrypting the encrypted identifier using a hierarchical identity-based encryption technique
A searchable encryption method with forward stability.
제 8 항에 있어서,
상기 서버는,
상기 하위 비밀키를 이용하여 재 암호화된 식별자를 복호화하고, 복호화된 식별자와 같은 쌍의 암호화된 식별자를 비교하여 서로 일치하면 상기 암호화된 식별자를 상기 사용자 단말에 제공하는 단계를 포함하는
순방향 안정성을 갖는 탐색 가능한 암호화 방법.
The method of claim 8,
The server,
Decrypting the re-encrypted identifier using the lower secret key, comparing the encrypted identifier of the same pair with the decrypted identifier, and providing the encrypted identifier to the user terminal if they match.
A searchable encryption method with forward stability.
컴퓨터 프로그램을 저장하고 있는 컴퓨터 판독 가능 기록매체로서,
상기 컴퓨터 프로그램은, 프로세서에 의해 실행되면,
파일을 탐색할 수 있는 권한을 부여하고자 하는 사용자의 신원을 이용하여 파일 식별자를 암호화하는 단계와,
상기 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(SC)를 계층적으로 구성한 후 암호화된 식별자를 재 암호화하는 단계와,
탐색하고자 하는 키워드의 현재까지의 탐색 상태(KS)와 사용자의 총 탐색 카운트 값을 획득하는 단계와,
사용자 키, 상기 사용자의 신원, 상기 관련 키워드, 상기 총 탐색 카운트 값 및 상기 탐색 상태를 이용하여 하위 비밀키를 생성하는 단계와,
상기 생성된 하위 비밀키를 상기 서버로 전송하여 파일 식별자를 요청하는 단계와,
상기 서버로부터 제공되는 암호화된 식별자를 키 관리자 단말로부터 기 분배된 상위 비밀키를 이용하여 복호화함으로써, 상기 파일의 식별자를 획득하는 단계를 포함하는 방법을 상기 프로세서가 수행하도록 하기 위한 명령어를 포함하는,
컴퓨터 판독 가능한 기록매체.
As a computer-readable recording medium storing a computer program,
The computer program, when executed by a processor,
Encrypting the file identifier using the identity of the user who wishes to grant permission to browse the file,
Re-encrypting the encrypted identifier after hierarchically configuring the user's identity, the related keyword, and the number of searches (SC) of the user; and
Obtaining a search state (KS) of the keyword to be searched up to the present and a total search count value of the user; and
Generating a lower private key using a user key, the user's identity, the related keyword, the total search count value, and the search state; and
Transmitting the generated lower private key to the server to request a file identifier;
Including instructions for causing the processor to perform a method comprising the step of obtaining an identifier of the file by decrypting the encrypted identifier provided from the server using a higher secret key previously distributed from a key manager terminal,
Computer-readable recording medium.
컴퓨터 판독 가능한 기록매체에 저장되어 있는 컴퓨터 프로그램으로서,
상기 컴퓨터 프로그램은, 프로세서에 의해 실행되면,
파일을 탐색할 수 있는 권한을 부여하고자 하는 사용자의 신원을 이용하여 파일 식별자를 암호화하는 단계와,
상기 사용자의 신원, 관련 키워드, 사용자의 탐색 횟수(SC)를 계층적으로 구성한 후 암호화된 식별자를 재 암호화하는 단계와,
탐색하고자 하는 키워드의 현재까지의 탐색 상태(KS)와 사용자의 총 탐색 카운트 값을 획득하는 단계와,
사용자 키, 상기 사용자의 신원, 상기 관련 키워드, 상기 총 탐색 카운트 값 및 상기 탐색 상태를 이용하여 하위 비밀키를 생성하는 단계와,
상기 생성된 하위 비밀키를 상기 서버로 전송하여 파일 식별자를 요청하는 단계와,
상기 서버로부터 제공되는 암호화된 식별자를 키 관리자 단말로부터 기 분배된 상위 비밀키를 이용하여 복호화함으로써, 상기 파일의 식별자를 획득하는 단계를 포함하는 방법을 상기 프로세서가 수행하도록 하기 위한 명령어를 포함하는,
컴퓨터 프로그램.
As a computer program stored in a computer-readable recording medium,
The computer program, when executed by a processor,
Encrypting the file identifier using the identity of the user who wishes to grant permission to browse the file,
Re-encrypting the encrypted identifier after hierarchically configuring the user's identity, the related keyword, and the number of searches (SC) of the user; and
Obtaining a search state (KS) of the keyword to be searched up to the present and a total search count value of the user; and
Generating a lower private key using a user key, the user's identity, the related keyword, the total search count value, and the search state; and
Transmitting the generated lower private key to the server to request a file identifier;
Including instructions for causing the processor to perform a method comprising the step of obtaining an identifier of the file by decrypting the encrypted identifier provided from the server using a higher secret key previously distributed from a key manager terminal,
Computer program.
KR1020190086794A 2019-07-18 2019-07-18 Encryption system, apparatus and method for providing searchable having forward stability KR102248756B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190086794A KR102248756B1 (en) 2019-07-18 2019-07-18 Encryption system, apparatus and method for providing searchable having forward stability

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190086794A KR102248756B1 (en) 2019-07-18 2019-07-18 Encryption system, apparatus and method for providing searchable having forward stability

Publications (2)

Publication Number Publication Date
KR20210009782A true KR20210009782A (en) 2021-01-27
KR102248756B1 KR102248756B1 (en) 2021-05-07

Family

ID=74238212

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190086794A KR102248756B1 (en) 2019-07-18 2019-07-18 Encryption system, apparatus and method for providing searchable having forward stability

Country Status (1)

Country Link
KR (1) KR102248756B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115037556A (en) * 2022-08-09 2022-09-09 晨越建设项目管理集团股份有限公司 Authorized sharing method for encrypted data in smart city system
CN116629804A (en) * 2023-06-06 2023-08-22 河北华正信息工程有限公司 Letters, interviews, supervision and tracking management system and management method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130134932A (en) * 2012-05-31 2013-12-10 주식회사 이노티움 Method for producing an encrypted file and decrypting the encrypted file, computer readable recording medium a program for implementing the methods
KR20140050477A (en) * 2012-10-19 2014-04-29 경희대학교 산학협력단 Method for searchable encryption and method for searching of encrypted data
JP2014174661A (en) * 2013-03-07 2014-09-22 Ibaraki Univ Retrieval system, retrieval method and retrieval program
KR20170087120A (en) 2016-01-19 2017-07-28 고려대학교 산학협력단 Certificateless public key encryption system and receiving terminal

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130134932A (en) * 2012-05-31 2013-12-10 주식회사 이노티움 Method for producing an encrypted file and decrypting the encrypted file, computer readable recording medium a program for implementing the methods
KR20140050477A (en) * 2012-10-19 2014-04-29 경희대학교 산학협력단 Method for searchable encryption and method for searching of encrypted data
JP2014174661A (en) * 2013-03-07 2014-09-22 Ibaraki Univ Retrieval system, retrieval method and retrieval program
KR20170087120A (en) 2016-01-19 2017-07-28 고려대학교 산학협력단 Certificateless public key encryption system and receiving terminal

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Wang, Xiaofen 외 2명, "Hierarchical ID-Based Searchable Encryption with Constant Size Ciphertext in Cloud." 2015 IEEE International Conference on Smart City/SocialCom/SustainCom (2015) *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115037556A (en) * 2022-08-09 2022-09-09 晨越建设项目管理集团股份有限公司 Authorized sharing method for encrypted data in smart city system
CN115037556B (en) * 2022-08-09 2022-11-11 晨越建设项目管理集团股份有限公司 Authorized sharing method for encrypted data in smart city system
CN116629804A (en) * 2023-06-06 2023-08-22 河北华正信息工程有限公司 Letters, interviews, supervision and tracking management system and management method
CN116629804B (en) * 2023-06-06 2024-01-09 河北华正信息工程有限公司 Letters, interviews, supervision and tracking management system and management method

Also Published As

Publication number Publication date
KR102248756B1 (en) 2021-05-07

Similar Documents

Publication Publication Date Title
CN106254324B (en) A kind of encryption method and device of storage file
Samanthula et al. A secure data sharing and query processing framework via federation of cloud computing
Kaaniche et al. A secure client side deduplication scheme in cloud storage environments
Salam et al. Implementation of searchable symmetric encryption for privacy-preserving keyword search on cloud storage
EP2940959B1 (en) Apparatuses and system for the privacy and security of user files stored at a cloud server
KR100839220B1 (en) Method for searching encrypted database and System thereof
CN103731432A (en) Multi-user supported searchable encryption system and method
JP2016513840A (en) Method, server, host, and system for protecting data security
CN104063334A (en) Encryption method and system based on data attributions
JP2010061103A (en) Method, device and system for fast searchable encryption
KR20100062013A (en) Method for data encryption and method for data search using conjunctive keyword
CN112835912B (en) Data storage method and device based on block chain and storage medium
CN115801276B (en) Automobile network threat information secure sharing method, system and storage medium
CN106326666A (en) Health record information management service system
KR102248756B1 (en) Encryption system, apparatus and method for providing searchable having forward stability
Islam et al. A simple and secured cryptography system of cloud computing
KR101140576B1 (en) Multi?user search system and method of encrypted document
Yan et al. Secure and efficient big data deduplication in fog computing
Kaci et al. Access control aware search on the cloud computing
CN107317823A (en) Encryption method and system in a kind of cloud storage system
CN105518696A (en) Performing an operation on a data storage
CN115563151A (en) System, method, device and medium for ciphertext search in multi-party cooperation
Charanya et al. Attribute based encryption for secure sharing of E-health data
CN115134084A (en) Search method, device and equipment based on elliptic curve password and storage medium
KR102386717B1 (en) Data access control system based anonymous user attribute and method thereof

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right