KR101282281B1 - 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법 및 장치 - Google Patents

프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법 및 장치 Download PDF

Info

Publication number
KR101282281B1
KR101282281B1 KR1020110087400A KR20110087400A KR101282281B1 KR 101282281 B1 KR101282281 B1 KR 101282281B1 KR 1020110087400 A KR1020110087400 A KR 1020110087400A KR 20110087400 A KR20110087400 A KR 20110087400A KR 101282281 B1 KR101282281 B1 KR 101282281B1
Authority
KR
South Korea
Prior art keywords
keyword
search
document
encrypted
vector
Prior art date
Application number
KR1020110087400A
Other languages
English (en)
Other versions
KR20130024144A (ko
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 KR1020110087400A priority Critical patent/KR101282281B1/ko
Publication of KR20130024144A publication Critical patent/KR20130024144A/ko
Application granted granted Critical
Publication of KR101282281B1 publication Critical patent/KR101282281B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 복호화 과정없이 지정된 키워드와 연관성이 높은 암호화 문서를 검색하여 프라이버시를 보장함은 물론, 키워드별로 가중치를 부여하여 보다 신뢰성있는 검색 결과를 얻을 수 있는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법 및 장치에 관한 것으로서, 각 문서에 대하여, 각 문서에 포함된 키워드에 대한 정보를 변형하여 각 문서의 인덱스를 설정하고, 각 문서를 암호화한 암호화 문서를 생성하고, 상기 설정된 인덱스와 함께 저장한 후, 중요도에 따라서 가중치가 부여된 하나 이상의 검색 키워드에 대한 정보를 변형하여 생성된 검색 토큰과, 상기 저장된 암호화 문서에 대응하는 각 인덱스와 상기 검색 토큰의 연산을 통해서, 각 암호화 문서에 대한 유사도를 계산하고, 유사도가 높은 하나 이상의 암호화 문서를 추출하여 제공하도록 구현된다.

Description

프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법 및 장치{Weighted keyword searching method for perserving privacy, and apparatus thereof}
본 발명은 키워드를 기반으로 상기 키워드와 연관된 문서를 검색하는 키워드 검색 방법에 관한 것으로서, 더욱 상세하게는 정보 보호를 위해 암호화 문서 중에서 키워드에 연관된 문서를 검색하는데 있어서 검색 결과에 대한 신뢰도를 높이면서 검색 결과가 신뢰할 수 있는 지를 검증할 수 있는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법 및 장치에 관한 것이다.
민감한 개인 정보와 같이 보안이 요구되는 정보들을 보호하기 위해 대다수의 문서들이 암호화하되어 관리되고 있는데, 이러한 데이터 암호화는 검색의 효율의 급격히 저하시킨다.
이러한 문제를 해결하기 위하여 최근 복호화 과정 없이 암호화된 데이터에서 검색이 가능한 방법들에 대한 연구가 활발히 이루어지고 있다.
암호화된 데이터에서의 검색 기술의 일 예로서, 대칭키 기반과 공개키 기반의 검색 기술을 들 수 있다. 이중 대칭키 기반의 키워드 검색은 자신의 대칭키로 문서를 암호화하여 저장한 후, 자신의 대칭키를 이용하여 문서를 검색하는 방법으로 암호화에 사용한 대칭키를 소유한 사람만이 검색이 가능하다. 반면 공개키 기반의 키워드 검색은 암호화된 문서와 함께 문서 검색 정보를 어떤 사용자의 공개키로 암호화하여 서버에 저장하는데 암호화에 사용된 공개키에 대한 비밀키를 소유한 사람만이 검색이 가능하다. 그런데 대칭키 기반 및 공개키 기반의 검색 기술 모두 문서 암호화시 특정 사용자를 염두에 두고 암호화하기 때문에 특정 사용자만이 검색이 가능하며, 여러 사용자가 문서를 공유하는 환경에서는 적합하지 않다.
한편, 대표적인 검색 기법으로는 지정된 키워드와 연관된 문서를 검색하는 키워드 검색 기법을 들 수 있다. 이러한 키워드 검색에 있어서, 다양한 키워드를 가지는 데이터를 검색 시에는 특정 키워드에 대한 포함 유무가 아니라 사용자가 검색하고자 하는 키워드들이 문서에 얼마나 많이 포함되었는지에 따라서 검색된다. 그러나, 보편적으로 다양한 키워드가 선정되는 경우 키워드 간에 문서와의 연관성에 차이를 가질 수 있는데, 이때, 기존의 검색 기법에 따르면 핵심 키워드는 포함되지 않더라도 다른 키워드들이 많이 포함하는 문서들이 검색되어 신뢰성 있는 결과를 얻을 수 없다.
키워드 검색에 있어서 보다 신뢰성있는 결과를 얻기 위해서는 키워드별로 가중치를 다르게 줄 수 있어야 하며, 이는 암호화 데이터에 대해서만 동일하게 적용되어야 한다.
즉, 암호화 데이터에 대한 키워드 검색을 수행하는데 있어서, 복호화 과정없이 검색이 가능하면서, 키워드별로 서로 다른 가중치를 부여하여 검색할 수 있는 새로운 검색 방법이 요구된다.
본 발명은 종래의 문제점을 해결하기 위하여 제안된 것으로서, 복호화 과정없이 지정된 키워드와 연관성이 높은 암호화 문서를 검색하여 프라이버시를 보장함은 물론, 키워드별로 가중치를 부여하여 보다 신뢰성있는 검색 결과를 얻을 수 있는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법 및 장치를 제공하고자 한다.
본 발명은 상술한 과제를 해결하기 위한 수단으로서, 각 문서에 대하여, 각 문서에 포함된 키워드에 대한 정보를 변형하여 각 문서의 인덱스를 설정하는 단계; 각 문서를 암호화한 암호화 문서를 생성하고, 상기 설정된 인덱스와 함께 저장하는 단계; 클라이언트로부터 중요도에 따라서 가중치가 부여된 하나 이상의 검색 키워드에 대한 정보를 변형하여 생성된 검색 토큰을 포함하는 질의를 수신하는 단계; 상기 저장된 암호화 문서에 대응하는 각 인덱스와 상기 검색 토큰의 연산을 통해서, 각 암호화 문서에 대한 유사도를 계산하는 단계; 및 유사도가 높은 하나 이상의 암호화 문서를 추출하여 상기 클라이언트로 제공하는 단계를 포함하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법을 제공한다.
또한, 본 발명은 상술한 과제를 해결하기 위한 다른 수단으로서, 검색하고자 하는 하나 이상의 검색 키워드에 대한 정보 및 상기 하나 이상의 검색 키워드별 중요도에 따른 가중치를 확인하는 단계; 상기 확인된 가중치가 부여된 하나 이상의 검색 키워드에 대한 정보를 변형하여 검색 토큰을 생성하는 단계; 상기 생성한 검색 토큰을 포함하는 질의를 전송하는 단계; 및 상기 질의에 대한 응답으로 유사도가 높은 하나 이상의 암호화 문서를 수신하는 단계를 포함하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법을 제공한다.
더하여, 본 발명은 상술한 과제를 해결하기 위한 다른 수단으로서, 검색하고자 하는 하나 이상의 검색 키워드에 대한 정보 및 상기 하나 이상의 검색 키워드별 중요도에 따른 가중치를 확인하여, 상기 확인된 가중치가 부여된 하나 이상의 검색 키워드에 대한 정보를 변형하여 검색 토큰을 생성하는 검색토큰 생성 모듈; 상기 검색 토큰 생성 모듈에서 생성된 검색토큰을 포함하는 질의 메시지를 생성하여 전송하고, 그 응답으로서 검색 결과를 수신하며, 검색 결과로 수신된 암호화 문서를 복호화하는 질의 및 응답 수신 모듈; 및 상기 수신한 암호화 문서로부터 추출된 해당 문서에 포함된 키워드에 대한 정보와 상기 검색 토큰을 이용하여 상기 수신한 검색 결과가 정당한 것인지를 검증하는 검증 모듈을 포함하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 장치를 제공한다.
또한, 본 발명은 상술한 과제를 해결하기 위한 또 다른 수단으로서, 검색 대상이 될 암호화 문서가 저장되는 데이터베이스; 각 문서에 대하여, 각 문서에 포함된 키워드에 대한 정보를 변형하여 각 문서의 인덱스를 생성하고, 각 문서를 암호화하여 암호화 문서를 생성하고, 상기 암호화 문서와 인덱스를 함께 상기 데이터베이스에 저장하는 암호화 문서 관리부; 검색을 요청하는 질의 메시지를 수신하면, 중요도에 따라서 가중치가 부여된 하나 이상의 검색 키워드에 대한 정보를 변형하여 생성된 검색 토큰을 상기 질의 메시지에서 추출하고, 상기 데이터베이스에 저장된 암호화 문서의 각 인덱스와 상기 검색 토큰의 연산을 통해서, 각 암호화 문서에 대한 유사도를 계산하고, 유사도가 높은 하나 이상의 암호화 문서를 추출하여 상기 클라이언트로 제공하는 검색 엔진부를 포함하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 장치를 제공한다.
상술한 과제의 해결 수단에 따르면, 본 발명은 검색 토큰의 생성시 키워드별로 서로 다른 가중치를 부여하고, 검색 토큰과 암호화된 문서에 대한 유사도를 산출하는데 있어서, 가중치가 높은 키워드가 포함된 경우에 유사도가 더 높게 산출되도록 함으로써, 복호화 과정없이 암호화 문서에 대하여 키워드 검색을 실행할 수 있으면서, 검색 결과의 정확도를 더 향상시킬 수 있는 우수한 효과가 있다.
또한, 본 발명은 문서의 암호화 시에, 해당 문서에 포함된 키워드를 나타내는 인덱스를 함께 암호화하여 저장하고, 검색 결과를 수신하는 측에서 수신한 암호화 문서가 유사도가 높은 문서인지 아닌지를 검증할 수 있도록 함으로써, 검색 결과에 대한 신뢰성을 더 향상시킬 수 있는 우수한 효과가 있다.
도 1은 본 발명이 적용되는 검색 시스템의 구조를 간단하게 나타낸 블럭도이다.
도 2는 본 발명의 일 실시 예에 따른 프라이버시를 보장하는 가중치 기반의 키워드 검색 방법을 나타낸 흐름도이다.
도 3은 본 발명의 일 실시 예에 따른 프라이버시를 보장하는 가중치 기반의 키워드 검색 방법에 있어서, 암호화 문서에 대한 인덱스 생성 과정을 구체적으로 나타낸 흐름도이다.
도 4는 본 발명의 일 실시 예에 따른 프라이버시를 보장하는 가중치 기반의 키워드 검색 방법에 있어서, 검색 토큰 생성 과정을 구체적으로 나타낸 흐름도이다.
도 5는 본 발명의 일 실시 예에 따른 프라이버시를 보장하는 가중치 기반의 키워드 검색 장치로서, 클라이언트 측의 구성을 나타낸 블럭도이다.
도 6은 본 발명의 일 실시 예에 따른 프라이버시를 보장하는 가중치 기반의 키워드 검색 장치로서, 서버 측의 구성을 나타낸 블럭도이다.
이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
도 1은 본 발명이 적용되는 검색 시스템의 구조를 간단하게 나타낸 블럭도이다.
도 1에 도시된 바와 같이, 본 발명에 의한 검색 시스템은 키워드를 지정하여 검색을 요청하는 클라이언트(100)와, 암호화 문서를 관리하면서 클라이언트(100)로부터의 질의에 대한 응답으로 검색을 실행하여 검색 결과를 제공하는 서버(200)로 이루어진다. 이때, 서버(200)는 키워드 검색을 실행하여 그 결과를 출력하는 검색 엔진(210)과 다양한 암호화 문서들이 저장된 데이터베이스(220)를 포함할 수 있다.
상기 클라이언트(100)와 서버(200)는 직접 연결될 수도 있으나, 인터넷, LAN 등과 같은 통신망을 통해서 연결될 수도 있다.
더불어, 본 발명에 의한 검색 시스템은 다양한 분야에 적용될 수 있으며, 이때, 서버(200)는 암호화 문서를 관리하고 제공하는 측에 설치되며, 클라이언트(100)는 암호화 문서를 제공받아 이용하는 사용자 측에 설치된다.
예를 들면, 본 발명에 의한 검색 시스템은, 전력망에 정보기술(IT)를 결합함으로써, 전력공급자와 소비자가 양방향으로 실시간 정보를 교환하여 에너지 요율을 최적화하기 위한 지능형 전력망 시스템인 스마트그리드(Smart Grid)에 있어서, 다수의 사용자로부터 수집된 다양한 정보(예를 들어, 전기 사용량, 공급량, 요금 체계, 사용자 정보 등)를 암호화하여 저장하고, 이 중에서 개인 사용자 또는 관리자가 지정한 키워드에 관련된 문서를 효율적이고 정확하게 검색하여 제공하는 경우에 적용 가능하다. 특히, 스마트그리드 환경에서, 서버측에서 관리되는 내용들은, 개인 정보나, 개인의 전기 사용량, 요금 등과 같이 보호가 필요한 정보들이 많이 포함된다. 따라서, 이러한 정보들의 보호를 위하여, 송수신시는 물론 데이터베이스에 저장시에 암호화가 권고되고 있다. 본 발명은 스마트그리드 환경에서 암호화된 데이터(문서)에 대한 효율적인 키워드 검색을 가능하게 할 수 있다.
상술한 검색 시스템을 기반으로 하여 이루어지는 본 발명에 따른 프라이버시를 보장하는 가중치 기반의 키워드 검색 방법을 도 2 내지 도 3의 흐름도를 참조하여 설명한다.
도 2는 본 발명의 일 실시 예에 따른 프라이버시를 보장하는 가중치 기반의 키워드 검색 방법을 나타낸 흐름도이며, 도 3 및 도 4는 상기 가중치 기반의 키워드 검색 방법에 있어서, 인덱스 생성 과정 및 검색 토큰의 생성 과정을 더 구체적으로 나타낸 순서도이다.
먼저, 도 2를 참조하면, 서버(200)는 암호화 문서에 대한 키워드 검색을 위한 초기화 작업으로, 검색을 실행하기 전, S105 단계를 실행하여, 각 문서에 대한 검색을 위한 인덱스를 생성한다. 더 구체적으로, 암호화되기 전의 각 문서에 포함된 키워드 정보를 변형하여 각 문서의 인덱스를 생성하여 설정한다. 여기서, 인덱스 생성을 위하여 kNN 계산(k-nearest neighbor computation) 기술이 이용될 수 있다.
kNN 계산 기술은 데이터베이스의 레코드(=데이터 벡터)
Figure 112011067726217-pat00001
와 검색 벡터 q이의 유클리디안(Euclidean) 거리가 가까운 k 개의 데이터베이스 레코드를 찾아주는 기술로서, 본 발명에 대한 이해를 돕기 위해 간단히 설명하면 그 원리는 다음과 같다.
kNN 계산에서 이용되는 비밀 키는 (d+1) 비트 벡터 S와 두 개의
Figure 112011067726217-pat00002
행렬 M1, M2이다. 여기서 두 행렬 M1, M2는 역행렬이 존재하는 행렬로 선택한다. d는 각각의 레코드
Figure 112011067726217-pat00003
에 대한 필드(field)의 수를 나타낸다.
kNN 계산에 있어서는 우선, 모든 데이터 벡터
Figure 112011067726217-pat00004
와 검색 벡터 q는 (d+1) 차원의 벡터
Figure 112011067726217-pat00005
Figure 112011067726217-pat00006
로 변환되며, (d+1) 차원의 값은
Figure 112011067726217-pat00007
와 1로 각각 설정한다. 추가적으로
Figure 112011067726217-pat00008
벡터는 난수 r>0 에 의해서 (rq, r)로 크기를 변경한다. 그리고 나서
Figure 112011067726217-pat00009
Figure 112011067726217-pat00010
벡터를 (d+1) 비트 벡터 S를 사용하여, 각각 두 개의 임의의 벡터인
Figure 112011067726217-pat00011
Figure 112011067726217-pat00012
로 분열한다. 만약에 비트 벡터 S의 j번째 비트가 0이면
Figure 112011067726217-pat00013
Figure 112011067726217-pat00014
Figure 112011067726217-pat00015
와 같게 설정하고,
Figure 112011067726217-pat00016
Figure 112011067726217-pat00017
는 두 개의 난수의 합이
Figure 112011067726217-pat00018
와 일치하게 각각 난수를 설정한다. S의 j번째 비트가 1이면 위의 과정을 반대로 수행한다. 그리고, 분열한 데이터 벡터
Figure 112011067726217-pat00019
Figure 112011067726217-pat00020
로 암호화하고, 분열된 검색 벡터
Figure 112011067726217-pat00021
Figure 112011067726217-pat00022
로 암호화한다. 검색 과정에서 데이터 벡터와 검색 벡터의 연산 값은 결국
Figure 112011067726217-pat00023
가 된다. 이 값은 유클리디안 거리를 판단하는 지표인
Figure 112011067726217-pat00024
의 역할을 하며, 이를 기준으로 k개의 유사한 값을 찾아내며, 비밀 키를 모르는 경우, 검색을 수행한 후에라도 데이터 벡터나 검색 벡터를 알아낼 수 없다.
본 발명은 S105 단계에서 인덱스를 생성하는데 있어서 상술한 kNN 계산 기술을 이용하는데, 그 과정을 도 3의 순서도를 참조하여 더 구체적으로 설명하면 다음과 같다.
각 문서의 인덱스 생성을 위하여, 서버(200)는 먼저, 도 3의 S205 단계에서, 초기화 과정으로서 문서 집합으로부터 서로 다른 키워드를 추출하여 키워드 집합 W를 생성한다. 상기 문서 집합은, 검색 대상이 될 다수의 문서를 의미하며, 상기 키워드 집합에 포함된 각 키워드는 상기 다수의 문서 중 하나 이상의 문서에 포함되게 된다.
이어서, 서버(200)는 S210 단계에서, 각 문서
Figure 112011067726217-pat00025
에 포함된 키워드에 대한 정보를 생성하게 되는데, 상기 각 문서
Figure 112011067726217-pat00026
에 포함된 키워드에 대한 정보를, 상기 키워드 집합 W의 각 키워드에 대한 포함 여부로 나타낸 이진 데이터 벡터 Di로 생성한다. 즉, 이진 데이터 벡터 Di에서,
Figure 112011067726217-pat00027
는 j번째 키워드 wj가 문서
Figure 112011067726217-pat00028
에 포함되는지에 따라 1과 0을 구성한다. 예를 들어, 상기 이진 데이터 벡터 Di는 {00011001...0}로 표현될 수 있는데, 여기서, 이진 데이터 벡터의 각 비트별로 상기 키워드 집합의 각 키워드가 할당되며, 각 비트의 값은 할당된 키워드가 해당 문서에 포함되어 있는지의 여부를 나타내게 된다. 예를 들어, 비트 값이 1이면 해당 키워드가 문서에 포함된 것이며, 비트 값이 0이면, 해당 키워드가 문서에 포함되지 않은 것이다. 이렇게 생성된 이진 데이터 벡터는 앞서 설명한 kNN 계산에서의 데이터 벡터에 대응될 수 있다.
이와 같이 각 문서
Figure 112011067726217-pat00029
에 포함된 키워드에 대한 정보인 이진 데이터 백터 Di가 생성되면, S215 단계에서, 서버(200)는 상기 생성한 이진 데이터 백터 Di를 기 설정된 비트 벡터 S의 길이로 확장한다. 여기서, 기 설정된 비트 벡터 S는 인덱스 및 검색 토큰의 생성을 위하여 미리 설정되는 것으로서,
Figure 112011067726217-pat00030
이다. 이때, n은 데이터베이스의 레코드에 대한 필드 수로서, 상기 키워드 집합 W에 포함된 키워드의 수가 되며,
Figure 112011067726217-pat00031
는 검색시 발생하는 추론 공격을 방지하기 위해 키워드 집합에 삽입되는 더머(dummy) 키워드의 개수이다. 상기 비트 벡터 S의 길이로 확장된 이진 데이터 벡터는
Figure 112011067726217-pat00032
로 정의되며,
Figure 112011067726217-pat00033
에 대하여 (n+j+1)번째 값을 난수
Figure 112011067726217-pat00034
로 설정하고,
Figure 112011067726217-pat00035
번째는 1로 설정한다.
그리고 서버(200)는 S220 단계에서, 상기 확장된 이진 데이터 벡터
Figure 112011067726217-pat00036
를 kNN 계산에서와 마찬가지로 분열하여,
Figure 112011067726217-pat00037
를 생성한다.
마지막으로, S225 단계에서, 서버(200)는 상기 분열된
Figure 112011067726217-pat00038
를 기 설정된 가역행렬
Figure 112011067726217-pat00039
,
Figure 112011067726217-pat00040
를 이용하여
Figure 112011067726217-pat00041
로 암호화하고, 이를 문서
Figure 112011067726217-pat00042
에 대한 인덱스
Figure 112011067726217-pat00043
로 설정한다.
참고로, 상술한 인덱스 생성 및 후술할 검색 벡터의 생성을 위해 이용되는 비트 벡터 S, 두 가역 행렬 M1 , M2, 그리고, 후에 문서의 암호화에 이용될 비밀 키 k가 본 발명에서 암호화 문서의 검색에 이용되는 비밀 키 sk가 되며(
Figure 112011067726217-pat00044
), 이들은 초기화 과정에서 미리 설정된다.
다시 도 2를 참조하면, 상술한 방법에 따라서 각 문서 Fi의 인덱스를 생성한 후, 서버(200)는 S110 단계를 실행하여, 각 문서 Fi를 암호화하여 암호화 문서를 생성하고, 상기 암호화 문서를 상기 생성한 인덱스 Ii와 함께 데이터베이스(220)에 저장한다. 즉, 데이터베이스(220)에 저장되는 데이터는
Figure 112011067726217-pat00045
가 된다. 여기서, Ci는 암호화 문서를 나타내며, 이는 해당 문서 Fi및 상기 문서에 포함된 키워드에 대한 정보, 즉 앞서 인덱스 생성시에 이용된 이진 데이터 벡터 Di를 포함할 수 있다. 즉, 상기 암호화 문서는
Figure 112011067726217-pat00046
로 정의될 수 있다. 상기 수식은 문서
Figure 112011067726217-pat00047
와 해당 문서의 이진 데이터 벡터
Figure 112011067726217-pat00048
를 비밀 키 k로 암호화하였음을 나타낸다. 여기서, 문서의 암호화를 위해서는 대칭키 암호화 기술을 사용할 수 있다.
상기 암호화 문서에 포함된 키워드에 대한 정보, 즉, 이진 데이터 벡터
Figure 112011067726217-pat00049
는, 추후 클라이언트(100) 측에서 검색 결과를 검증하는데 이용될 수 있다.
서버(200)는 데이터베이스(220)에 저장하는 모든 문서에 대하여, 즉, 검색 대상이 될 모든 문서에 대하여, 상기 S105, S110 단계를 실행하게 된다.
한편, 클라이언트(100)는 S115 단계에서, 검색에 사용할 하나 이상의 검색 키워드에 대한 정보 및 각 키워드에 대한 가중치를 확인한다. 상기 하나 이상의 검색 키워드에 대한 정보 및 각 키워드에 대한 가중치는, 검색을 요청한 사용자에 의해 지정되거나 입력될 수 있다.
이어 S120 단계에서, 클라이언트(100)는 상기 확인된 가중치가 부여된 검색 키워드에 대한 정보를 변형하여 검색 토큰을 생성하고, S125 단계에서 생성한 검색 토큰을 포함하는 질의를 서버(200)로 전송한다. 여기서, 검색 토큰의 생성을 위하여 앞서 인덱스의 생성시에 마찬가지로 kNN 기술을 이용할 수 있으며, 이 경우, 검색 토큰은
Figure 112011067726217-pat00050
로 정의될 수 있다. 여기서,
Figure 112011067726217-pat00051
는 검색 토큰이고,
Figure 112011067726217-pat00052
는 기 설정된 비트 벡터 S의 길이로 확장된 검색 키워드 집합의 이진 데이터 벡터인 검색 벡터
Figure 112011067726217-pat00053
를 분열한 값이다.
상술한 바와 같은 검색 토큰을 생성하는 과정을 도 4를 참조하여 더 구체적으로 설명하면 다음과 같다.
도 4에 도시된 바와 같이, 클라이언트(100)는 검색 토큰
Figure 112011067726217-pat00054
의 생성을 위하여, 우선 S305 단계에서, 확인된 검색 키워드에 대한 정보를 기 설정된 키워드 집합 W의 각 키워드에 대한 포함 여부로 나타낸 검색 벡터
Figure 112011067726217-pat00055
를 생성한다. 상술한 검색 백터
Figure 112011067726217-pat00056
는 앞서 설명한 각 문서 Fi에 대한 이진 데이터 벡터
Figure 112011067726217-pat00057
와 동일한 방식으로 생성될 수 있다. 이를 위하여, 클라이언트(100)와 서버(200)는 키워드 집합 W에 대한 정보를 공유할 수 있다.
그리고, S310 단계에서, 클라이언트(100)는 상기 생성한 검색 백터
Figure 112011067726217-pat00058
에 대하여 상기 확인된 키워드별 가중치를 부여한다. 여기서, 해당 문서에 포함된 키워드에 대해서는 기본적으로 1이 부여되는데, 상기 문서에 포함된 키워드 중에서 중요한 키워드에 대해서는 가중치에 따라서 1보다 큰 값을 설정한다. 예를 들어, 검색 벡터
Figure 112011067726217-pat00059
가 {0001010011...0}인 경우, 가중치가 부여됨에 따라서, {0001030011...0}이 될 수 있다. 여기서, 6번째 키워드에 가중치가 부여된다.
다음으로, S315 단계에서, 클라이언트(100)는 상기 가중치가 부여된 검색 벡터
Figure 112011067726217-pat00060
를 기 설정된 비트 벡터 S의 길이로 확장한다. 비트 벡터 S의 길이로 확장한 검색 벡터를
Figure 112011067726217-pat00061
로 정의한다. 더 구체적으로 설명하면, n부터
Figure 112011067726217-pat00062
까지는 U로부터 더미 키워드를
Figure 112011067726217-pat00063
개 만큼 생성하여, j번째 키워드의 포함 유부에 따라서
Figure 112011067726217-pat00064
를 1 또는 0으로 확장한다. 추가적으로 난수 r>0과 t를 선택하여,
Figure 112011067726217-pat00065
의 길이를 가지는
Figure 112011067726217-pat00066
로 확장하는 것이다.
이어서 클라이언트(100)는 S320 단계에서, 상기 확장된 검색 벡터
Figure 112011067726217-pat00067
를 분열하여,
Figure 112011067726217-pat00068
를 생성하고, S325 단계에서, 상기 분열된
Figure 112011067726217-pat00069
를 기 설정된 가역행렬
Figure 112011067726217-pat00070
,
Figure 112011067726217-pat00071
를 이용하여
Figure 112011067726217-pat00072
로 암호화하고, S325 단계에서 상기 암호화된 값을 변형하여 검색 토큰을
Figure 112011067726217-pat00073
을 설정한다.
상술한 바에 따르면, 가중치가 부여된 검색 키워드에 대한 정보를 변형함에 의해 검색 토큰을 생성하므로, 질의 과정, 검색, 검색 결과의 전송 중에, 키워드 정보가 노출될 가능성이 적으며, 이를 통해 보안성을 더 높일 수 있다.
다시 도 2을 참조하면, S130 단계에서, 서버(200)는 상술한 방법에 따라서 생성된 검색 토큰을 포함하는 질의를 클라이언트(100)로부터 수신하는 경우, 상기 저장된 암호화 문서에 대응하는 각 인덱스와 상기 검색 토큰의 연산을 통해서, 각 암호화 문서에 대한 유사도를 계산한다. 상기 유사도는 주어진 검색 키워드의 포함 여부에 따라서 부여되는 것으로, 검색 키워드가 많이 포함될 수 록, 특히 가중치가 큰 검색 키워드가 많이 포함될 수 유사도가 높게 산출된다. 여기서, 유사도 계산은 kNN 기술을 이용하여 이루어지며, 하기의 수학식과 같이 계산될 수 있다.
Figure 112011067726217-pat00074
즉, 문서
Figure 112011067726217-pat00075
의 유사도는, 해당 문서
Figure 112011067726217-pat00076
에 설정된 인덱스
Figure 112011067726217-pat00077
와 수신한 검색 토큰
Figure 112011067726217-pat00078
의 곱으로 계산된다.
그리고, 상기 서버(200)는, S135 단계에서 각 암호화 문서별로 산출된 유사도에 따라서 암호화 문서를 정렬하여 유사도가 높은 하나 이상의 암호화 문서를 추출하고, 추출한 암호화 문서를 클라이언트(100)로 제공한다.
S145 단계에서, 질의에 대한 응답으로 검색된 암호화 문서를 수신한 클라이언트(100)는, 수신한 암호화 문서를 복호화하여 원래의 문서를 사용자에게 제공할 수 있다.
더불어, 클라이언트(100)는, S150 단계에서, 상기 복호화된 암호화 문서로부터 해당 문서에 포함된 키워드 정보에 대한 정보를 추출하고, 상기 추출한 키워드에 대한 정보와 앞서 S125 단계에서 질의 시에 전송한 검색 토큰을 연산하여, 수신한 암호화 문서에 대한 유사도를 검증할 수 있다.
즉, 클라이언트(100) 측에서 자신이 요청한 검색 질의에 대한 응답으로 수신한 검색 결과가 정당한 결과인지를 검증할 수 있게 된다.
본 발명에 따른 키워드 검색 방법은 다양한 컴퓨터 수단을 통하여 판독 가능한 소프트웨어 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM, Random Access Memory), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
다음으로, 도 5 및 도 6은 상술한 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 장치를 나타낸 것으로서, 도 5는 상기 클라이언트(100)의 구성을 나타내며, 도 6은 서버(200)의 구성을 나타낸다.
도 5를 참조하면, 클라이언트(100)는 검색토큰 생성 모듈(110)과, 질의 및 응답 수신 모듈(120)과, 검증 모듈(130)을 포함할 수 있다.
상기 검색토큰 생성 모듈(110)는 하나 이상의 검색 키워드 및 각 검색 키워드에 대한 가중치를 확인하고, 이를 기반으로 검색 토큰을 생성한다. 이때, 상기 검색토큰 생성 모듈(100)은 도 4에서 나타낸 과정을 수행하여 검색 토큰을 생성하게 된다.
상기 질의 및 응답 수신 모듈(120)는 상기 검색 토큰 생성 모듈(110)에서 생성된 검색토큰을 포함하는 질의 메시지를 생성하여 서버(200)로 전송하고, 그 응답으로서 검색 결과를 수신하며, 검색 결과로 수신된 암호화 문서를 지정된 비밀키로 복호화할 수 있다. 이때, 암호화 문서로부터 해당 문서에 포함된 키워드에 대한 정보를 추출하여 검증 모듈(130)로 제공할 수 있다.
상기 검증 모듈(130)은 상기 검색 결과로서 수신한 암호화 문서에 포함된 키워드에 대한 정보와 앞서 검색 토큰 생성 모듈(110)에서 생성된 검색 토큰을 이용하여 상기 암호화 문서가 실제로 유사도가 높은 문서인지의 여부를 검증한다. 즉, 검증 모듈(130)은 수신한 검색 결과가 정당한 것인지 아닌지를 판별하게 된다.
아울러, 도 6을 참조하면, 서버(200)는 클라이언트(100)로부터 질의를 수신하면, 질의에 포함된 검색 토큰을 이용하여 저장된 암호화 문서를 검색하여 유사도가 높은 하나 이상의 암호화 문서를 추출하여 클라이언트(100)로 제공하는 검색 엔진부(210)와, 암호화 문서가 각각의 설정된 인덱스와 매칭되어 저장되는 데이터베이스(220), 각 문서에 대한 인덱스를 생성하고 각 문서를 암호화하여 함께 상기 데이터베이스(200)에 저장하는 암호화 문서 관리부(230)를 포함한다.
상기 검색 엔진부(210)는, 질의에 포함된 검색 토큰을 이용하여 각 암호화 문서들과 해당 검색 키워드 간의 유사도를 산출하는 유사도 산출 모듈(211)과, 각 암호화 문서들을 유사도에 따라서 정렬하여 유사도가 높은 하나 이상의 암호화 문서를 클라이언트(100)에 제공하는 검색결과 출력 모듈(212)을 포함하여 이루어질 수 있다.
그리고, 암호화 문서 관리부(230)는, 데이터베이스(220)에 저장될, 그리고 검색 대상이 될 각 문서에 대한 검색을 위한 인덱스를 생성하여 설정하는 인덱스 설정 모듈(231)과, 각 문서 및 각 문서에 포함된 키워드에 대한 정보를 암호화하는 암호화 모듈(232)을 포함하여 이루어질 수 있다.
상술한 바와 같이 구성된 클라이언트(100) 및 서버(200)의 동작은 도 2 내지 도 3을 참조하여 설명한 프라이버시를 보장하는 가중치 기반의 키워드 검색 방법에 따라서 이루어지는 것으로서, 유사도 산출, 인덱스 생성, 검색 토큰 생성, 문서의 암호화 등의 과정은 상기 도 2내지 도 3을 참조하여 설명으로부터 이해될 수 있으므로, 여기서는 그 상세한 설명을 생략하기로 한다.
이상과 같이, 본 명세서와 도면에는 본 발명의 바람직한 실시 예에 대하여 개시하였으나, 여기에 개시된 실시 예외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한, 본 명세서와 도면에서 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다.
100: 클라이언트
110: 검색토큰 생성 모듈
120: 질의 및 응답 수신 모듈
130: 검증 모듈
200: 서버
210: 검색 엔진부
220: 데이터베이스
230: 암호화 문서 관리부

Claims (11)

  1. 키워드 검색을 실행하는 장치가,
    다수의 문서들에 포함된 서로 다른 키워드를 추출하여 키워드 집합을 생성하는 단계;
    상기 키워드 집합의 키워드별로 비트를 할당하고, 각 문서에 포함된 키워드 정보를 비트별 해당 키워드의 포함 여부로 나타낸 이진 데이터 백터를 생성하고, 상기 이진 데이터 벡터를 변형하여 각 문서의 인덱스를 설정하는 단계;
    각문서를 암호화한 암호화 문서를 생성하고, 암호화 문서와 해당 문서에 대응하여 설정된 인덱스를 함께 저장하는 단계;
    클라이언트로부터, 상기 키워드 집합의 각 키워드에 할당된 비트에, 해당 키워드가 검색 키워드로 포함되었는 지의 여부 및 포함된 경우의 해당 키워드에 대하여 부여된 가중치로 나타낸 검색 벡터를 변형하여 생성된 검색 토큰을 포함하는 질의를 수신하는 단계;
    상기 저장된 암호화 문서에 대응하는 각 인덱스와 상기 검색 토큰의 연산을 통해서, 각 암호화 문서별로 대응하는 인덱스와 검색 토큰 간의 유사도를 계산하는 단계; 및
    계산된 유사도를 기준으로 하나 이상의 암호화 문서를 추출하여 상기 클라이언트로 제공하는 단계를 포함하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법.
  2. 삭제
  3. 제1항에 있어서, 상기 각 문서의 인덱스를 설정하는 단계는
    상기 생성한 이진 데이터 백터를 기 설정된 비트 벡터의 길이로 확장하는 단계;
    상기 확장된 이진 데이터 벡터를 두 개의 벡터 집합으로 분열하는 단계;
    상기 분열된 두 개의 벡터 집합을 기 설정된 가역행렬을 이용하여 암호화하고, 이를 상기 문서에 대한 인덱스로 설정하는 단계를 포함하여 이루어지는 것을 특징으로 하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법.
  4. 제1항에 있어서, 상기 하나 이상의 암호화 문서는
    키워드 집합의 각 키워드별로 할당된 비트에 해당 키워드가 문서에 포함되어 있는 지 여부를 나타낸 이진 데이터 백터로 표현된 암호화된 문서에 포함된 키워드 정보를 포함하는 것을 특징으로 하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법.
  5. 키워드 검색을 실행하고자 하는 클라이언트가,
    검색하고자 하는 하나 이상의 검색 키워드에 대한 정보 및 상기 하나 이상의 검색 키워드별 중요도에 따른 가중치를 확인하는 단계;
    기 설정된 키워드 집합을 기준으로, 상기 키워드 집합의 각 키워드에 할당된 비트에, 해당 키워드가 상기 확인한 검색 키워드 중에 포함되어 있는 지의 여부 및 포함된 경우 해당 키워드에 대하여 확인된 가중치를 부여한 검색 벡터를 생성하는 단계;
    상기 생성한 검색 벡터를 변형하여 검색 토큰을 생성하는 단계;
    상기 생성한 검색 토큰을 포함하는 질의를 전송하는 단계; 및
    상기 질의에 대한 응답으로, 문서에 포함된 키워드 정보를 비트별 해당 키워드의 포함 여부로 나타낸 이진 데이터 백터를 변형하여 생성한 각 문서의 인덱스와 상기 검색 토큰 간의 유사도를 기준으로 선정된 하나 이상의 암호화 문서를 수신하는 단계를 포함하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법.
  6. 제5항에 있어서, 상기 하나 이상의 암호화 문서는
    키워드 집합의 각 키워드별로 할당된 비트에 해당 키워드가 문서에 포함되어 있는 지 여부를 나타낸 이진 데이터 백터로 표현된 암호화된 각 문서에 포함된 키워드 정보를 포함하는 것을 특징으로 하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법.
  7. 삭제
  8. 제6항에 있어서,
    상기 수신한 암호화 문서를 복호화하여 해당 문서에 포함된 키워드 정보를 추출하고, 상기 문서에 포함된 키워드 정보와 상기 검색 토큰을 이용하여 유사도를 검증하는 단계를 더 포함하는 것을 특징으로 하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법.
  9. 제5항에 있어서, 상기 검색 토큰을 생성하는 단계는
    상기 가중치가 부여된 검색 벡터를 기 설정된 비트 벡터의 길이로 확장하는 단계;
    확장된 검색 벡터를 분열하여, 두 개의 벡터 집합을 생성하는 단계;
    상기 분열된 두 개의 벡터 집합을 기 설정된 가역행렬을 이용하여 암호화하고, 암호화된 값을 이용하여 검색 토큰을 설정하는 단계를 포함하는 것을 특징으로 하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법.
  10. 검색하고자 하는 하나 이상의 검색 키워드에 대한 정보 및 상기 하나 이상의 검색 키워드별 중요도에 따른 가중치를 확인하여, 기 설정된 키워드 집합을 기준으로, 상기 키워드 집합의 각 키워드에 할당된 비트에, 해당 키워드가 상기 확인한 검색 키워드 중에 포함되어 있는 지의 여부 및 포함된 경우 해당 키워드에 대하여 확인된 가중치를 부여한 검색 벡터를 생성하고, 생성한 검색 벡터를 변형하여 검색 토큰을 생성하는 검색토큰 생성 모듈;
    상기 검색 토큰 생성 모듈에서 생성된 검색토큰을 포함하는 질의 메시지를 생성하여 전송하고, 그 응답으로서 검색 결과를 수신하며, 검색 결과로 수신된 암호화 문서를 복호화하는 질의 및 응답 수신 모듈; 및
    상기 수신한 암호화 문서로부터, 상기 키워드 집합의 각 키워드별로 할당된 비트에 해당 키워드가 문서에 포함되어 있는 지 여부를 나타낸 이진 데이터 백터를 추출하고, 상기 추출한 이진 데이터 벡터와 상기 검색 토큰을 이용하여 상기 수신한 검색 결과가 정당한 것인지를 검증하는 검증 모듈을 포함하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 장치.
  11. 검색 대상이 될 다수의 암호화 문서가 저장되는 데이터베이스;
    다수의 문서에 포함된 키워드 집합의 키워드별로 비트를 할당하고, 각 문서에 대하여, 비트별로 대응하는 키워드가 해당 문서에 포함되어 있는 지의 여부를 이진값으로 표현한 이진 데이터 벡터를 생성하고, 상기 이진 데이터 벡터를 변형하여 각 문서의 인덱스를 생성하고, 각 문서를 암호화한 상기 암호화 문서와 상기 생성한 인덱스를 함께 상기 데이터베이스에 저장하는 암호화 문서 관리부;
    검색을 요청하는 질의 메시지를 수신하면, 기 설정된 키워드 집합을 기준으로, 상기 키워드 집합의 각 키워드에 할당된 비트에, 해당 키워드가 검색 키워드로 포함되는 지의 여부 및 포함된 경우 해당 키워드에 대한 가중치가 부여된 검색 벡터를 변형하여 생성한 검색 토큰을 상기 질의 메시지에서 추출하고, 상기 데이터베이스에 저장된 암호화 문서의 각 인덱스와 상기 검색 토큰의 연산을 통해서, 인덱스와 검색 토큰 간의 유사도를 계산하고, 계산된 유사도를 기준으로 하나 이상의 암호화 문서를 추출하여 클라이언트로 제공하는 검색 엔진부를 포함하는 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 장치.
KR1020110087400A 2011-08-30 2011-08-30 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법 및 장치 KR101282281B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110087400A KR101282281B1 (ko) 2011-08-30 2011-08-30 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110087400A KR101282281B1 (ko) 2011-08-30 2011-08-30 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20130024144A KR20130024144A (ko) 2013-03-08
KR101282281B1 true KR101282281B1 (ko) 2013-08-23

Family

ID=48176264

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110087400A KR101282281B1 (ko) 2011-08-30 2011-08-30 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101282281B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109766707A (zh) * 2019-01-17 2019-05-17 南方科技大学 基于区块链的数据处理方法、装置、设备和介质

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101489876B1 (ko) * 2013-08-30 2015-02-06 고려대학교 산학협력단 암호화 문서 검색 시스템 및 방법
KR20180081261A (ko) * 2017-01-06 2018-07-16 경희대학교 산학협력단 왜곡된 데이터에 대한 프라이버시 보호 시스템 및 방법
CN109471964B (zh) * 2018-10-23 2021-10-01 三亚哈尔滨工程大学南海创新发展基地 一种基于同义词集的模糊多关键词可搜索加密方法
CN111859421A (zh) * 2020-07-08 2020-10-30 中国软件与技术服务股份有限公司 一种基于词向量的多关键字密文存储、检索方法及系统
CN114254212A (zh) * 2021-12-20 2022-03-29 平安普惠企业管理有限公司 基于区块链的地址检索方法、系统、电子设备及存储介质
CN114547647B (zh) * 2022-02-18 2024-04-12 河北大学 一种基于差分隐私的模式保护动态可搜索加密方法
KR102613986B1 (ko) * 2023-03-31 2023-12-14 고려대학교산학협력단 신뢰 실행 환경 기반의 동적 탐색 가능한 암호화에서 정보 유출을 최소화하는 방법, 장치 및 시스템
KR102613985B1 (ko) * 2023-03-31 2023-12-14 고려대학교산학협력단 탐색 가능한 암호화에서 역방향 안정성 하향 공격에 대한 방어 방법, 장치 및 시스템
CN116881739B (zh) * 2023-09-07 2023-12-01 山东省计算中心(国家超级计算济南中心) 一种面向空间关键字相似性的密文安全检索方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080035295A (ko) * 2006-10-19 2008-04-23 고려대학교 산학협력단 암호화된 데이터베이스 검색 방법 및 그 시스템
KR20090031079A (ko) * 2007-09-21 2009-03-25 고려대학교 산학협력단 암호화된 문서의 근사 스트링 매칭 방법, 이를 기록한기록매체 및 그 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080035295A (ko) * 2006-10-19 2008-04-23 고려대학교 산학협력단 암호화된 데이터베이스 검색 방법 및 그 시스템
KR20090031079A (ko) * 2007-09-21 2009-03-25 고려대학교 산학협력단 암호화된 문서의 근사 스트링 매칭 방법, 이를 기록한기록매체 및 그 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109766707A (zh) * 2019-01-17 2019-05-17 南方科技大学 基于区块链的数据处理方法、装置、设备和介质

Also Published As

Publication number Publication date
KR20130024144A (ko) 2013-03-08

Similar Documents

Publication Publication Date Title
KR101282281B1 (ko) 프라이버시를 보장하는 가중치 기반의 키워드 검색을 위한 방법 및 장치
CN110224986B (zh) 一种基于隐藏策略cp-abe的高效可搜索访问控制方法
KR101190059B1 (ko) 데이터 암호화 방법 및 암호화된 데이터의 결합 키워드 검색방법
CN109145079B (zh) 基于个人兴趣用户模型的云端可搜索加密方法
CN102314580A (zh) 一种基于向量和矩阵运算的支持计算的加密方法
CN110413652B (zh) 一种基于边缘计算的大数据隐私化检索方法
CN109493017A (zh) 基于区块链的可信外包存储方法
CN107359998A (zh) 一种便携式智能口令管理体制的建立与操作方法
EP3511845B1 (en) Encrypted message search method, message transmission/reception system, server, terminal and programme
Liu et al. Verifiable ranked search over dynamic encrypted data in cloud computing
CN111026788A (zh) 一种混合云中基于同态加密的多关键词密文排序检索方法
CN114417073B (zh) 一种加密图的邻居节点查询方法及装置、电子设备
CN111339539B (zh) 一种多用户环境下的高效加密图像检索方法
Guo et al. Enabling secure cross-modal retrieval over encrypted heterogeneous IoT databases with collective matrix factorization
KR20220092811A (ko) 암호화 데이터를 저장하는 방법 및 장치
KR101232385B1 (ko) 대칭키 기반의 암호 생성 및 검색 방법과 그 시스템
Yang et al. Privacy‐Preserving Query Scheme (PPQS) for Location‐Based Services in Outsourced Cloud
CN115694921B (zh) 一种数据存储方法、设备及介质
KR100951034B1 (ko) 암호문 크기를 줄이기 위한 공개키 기반의 검색가능암호문생성 방법과, 그에 따른 공개키 기반의 데이터 검색 방법
CN113904823B (zh) 常数级授权计算复杂度的属性基可搜索加密方法及系统
KR102010644B1 (ko) 가블드 회로 기반 k-NN 분류 처리 방법 및 가블드 회로 기반 k-NN 분류 처리 시스템
Aritomo et al. A privacy-preserving similarity search scheme over encrypted word embeddings
KR101916228B1 (ko) 가블드 회로 기반 k-NN 질의 처리 방법 및 k-NN 질의 처리 시스템
Mlgheit et al. Security Model for Preserving Privacy over Encrypted Cloud Computing
Sude et al. Authenticated CRF based improved ranked multi-keyword search for multi-owner model in cloud computing

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160225

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170328

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180406

Year of fee payment: 6