KR20090108849A - 파일 저장/검색 장치 및 방법 - Google Patents
파일 저장/검색 장치 및 방법 Download PDFInfo
- Publication number
- KR20090108849A KR20090108849A KR1020080034160A KR20080034160A KR20090108849A KR 20090108849 A KR20090108849 A KR 20090108849A KR 1020080034160 A KR1020080034160 A KR 1020080034160A KR 20080034160 A KR20080034160 A KR 20080034160A KR 20090108849 A KR20090108849 A KR 20090108849A
- Authority
- KR
- South Korea
- Prior art keywords
- search
- file
- token
- input
- generating
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/168—Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
파일 저장/검색 장치 및 방법이 개시된다. 메뉴생성부는 검색조건을 입력받기 위한 검색메뉴화면을 생성하며, 토큰 생성부는 검색메뉴화면을 통해 입력되는 적어도 하나의 검색조건을 해싱(hashing)하여 토큰(token)을 생성하며, 파일 검색부는 검색할 적어도 하나의 파일에 포함되어 있는 각 파일정보와 생성된 토큰을 비교하여 검색조건에 매칭되는 파일을 검색한다.
해쉬, 파일 보안, 암호화, 난수
Description
본 발명은 파일 저장/검색 장치 및 방법에 관한 것으로, 더욱 상세하게는 파일의 상세정보를 해싱하여 저장하고, 다수의 검색조건을 해싱하여 파일을 검색할 수 있는 파일 저장/검색 장치 및 방법에 관한 것이다.
최근 정보 노출 또는 개인 프라이버시의 침해를 예방하기 위하여, 파일과 파일명을 암호화하는 기술에 대한 연구가 활발히 진행되고 있다. 문서보안을 위한 기술은 일반적으로 보안이 필요한 파일을 암호화하여 저장하고, 필요한 파일을 복호화하는 과정을 수반한다.
기존의 문서보안을 위한 기술은 파일을 암호화하여 저장할 때 파일명을 개별적으로 암호화하여 저장한다. 따라서, 암호화된 파일들 중 원하는 파일을 검색하려는 경우, 사용자는 암호화된 파일명을 일일이 복호화한 후, 사용자가 원하는 파일명이 검색되며, 검색된 파일명에 해당하는 원본 파일을 복호화한다.
이 때, 종래의 방식으로 암호화된 파일명은 원본 파일명보다 큰 크기를 갖는다. 따라서, 원하는 파일을 검색하는 경우, 암호화된 파일명을 개별적으로 복호화 하므로, 파일명의 복호화에 많은 시간이 소요되며, 암호화된 파일들이 많을수록, 파일을 찾는 시간은 증가하게 된다. 또한, 종래의 기술은 파일명에 의한 검색 외에 추가적인 검색기능을 제공하지 못하며, 복호화에 의해 파일명과 같은 정보가 외부에 쉽게 노출되는 문제가 있다.
따라서, 본 발명의 목적은 파일명을 복호화하는 과정없이 원하는 파일을 검색하고, 또한, 파일명 외의 다양한 검색어를 이용하여 파일을 검색할 수 있는 파일 저장/검색 장치 및 방법을 제공하고자 하는 데 있다.
본 발명의 다른 목적은 파일명과 같은 상세정보를 암호화하지 않고 해쉬함수를 이용하여 저장하고, 다수의 상세정보를 저장하여, 보다 자세한 검색을 제공할 수 있는 파일 저장/검색 장치 및 방법을 제공하고자 하는 데 있다.
상기 목적을 달성하기 위한 본 발명에 따른 파일 저장/검색 장치는, 검색조건을 입력받기 위한 검색메뉴화면을 생성하는 메뉴생성부; 상기 검색메뉴화면을 통해 입력되는 적어도 하나의 검색조건을 해싱(hashing)하여 토큰(token)을 생성하는 토큰 생성부; 및 검색할 적어도 하나의 파일에 포함되어 있는 각 파일정보와 상기 생성된 토큰을 비교하여 상기 검색조건에 매칭되는 파일을 검색하는 파일 검색부;를 포함한다.
상기 메뉴생성부는, 검색모드에서, 검색을 위하여 구분된 다수의 검색항 목(Search Field) 및 상기 각 검색항목 별로 검색조건을 입력받기 위한 영역을 포함하는 상기 검색메뉴화면을 생성한다.
상기 토큰 생성부는, 상기 다수의 검색항목 중 적어도 하나의 검색항목에 입력되는 검색조건을 해싱하여 최종 해쉬값(hash)산출하고, 상기 산출된 최종 해쉬값과 상기 검색조건에 대응하는 검색항목의 식별자를 조합하여 상기 토큰을 생성한다.
상기 토큰 생성부는 다수의 검색조건이 입력되면, 상기 입력되는 다수의 검색조건에 대해 개별적으로 임시 해쉬값을 산출하고, 상기 산출된 각 임시 해쉬값에 대해 논리연산을 적용하여 상기 최종 해쉬값을 산출한다.
상기 논리 연산은 XOR 연산 및 AND 연산 중 하나이며, 사용자에 의해 선택가능하다.
상기 메뉴생성부는 상기 적어도 하나의 파일을 보안모드로 저장하는 경우, 상기 검색모드에서 사용되는 다수의 검색항목 및 상기 각 검색항목에 대한 상세정보를 입력받기 위한 영역을 포함하는 보안메뉴화면을 생성한다.
상기 다수의 검색항목 중 적어도 하나의 검색항목에 입력되는 상세정보를 해싱하여 상기 검색항목 별로 상기 파일정보를 생성하는 파일정보 생성부;를 더 포함한다.
상기 파일정보 생성부는, 상기 적어도 하나의 파일을 고급보안모드로 저장하는 경우, 난수를 생성하여 상기 적어도 하나의 파일에 추가하고, 상기 적어도 하나의 검색항목에 입력되는 상세정보와 상기 생성된 난수를 해싱하여 상기 검색항목 별로 파일정보를 생성한다.
상기 토큰 생성부는 상기 다수의 검색항목 중 적어도 하나의 검색항목에 입력되는 검색조건과 상기 적어도 하나의 파일에 추가된 난수를 해싱하여 최종 해쉬값을 산출하고, 상기 산출된 최종 해쉬값과 상기 검색조건에 대응하는 검색항목의 식별자를 조합하여 상기 토큰을 생성한다.
상기 파일 검색부는, 상기 토큰에 포함된 검색항목의 식별자를 확인하고, 상기 적어도 하나의 파일에 포함된 상기 확인된 식별자에 대응하는 검색항목의 파일정보와 상기 토큰에 포함된 최종 해쉬값을 비교한다.
상기 적어도 하나의 파일을 보안모드로 저장하는 요청신호 및 상기 적어도 하나의 파일을 검색하는 요청신호 중 하나를 출력하는 사용자 입력부; 및 상기 출력되는 요청신호에 응답하여 상기 메뉴생성부에서 선택적으로 생성되는 상기 보안메뉴화면 및 상기 검색메뉴화면 중 하나를 표시하는 표시부;를 더 포함한다.
한편, 상기 목적을 달성하기 위한 본 발명에 따른 파일 저장/검색 방법은, 검색조건을 입력받기 위한 검색메뉴화면을 생성하는 단계; 상기 검색메뉴화면을 통해 입력되는 적어도 하나의 검색조건을 해싱(hashing)하여 토큰(token)을 생성하는 단계; 및 검색할 적어도 하나의 파일에 포함되어 있는 각 파일정보와 상기 생성된 토큰을 비교하여 상기 검색조건에 매칭되는 파일을 검색하는 단계;를 포함한다.
상기 토큰을 생성하는 단계는, 상기 다수의 검색항목 중 적어도 하나의 검색항목에 입력되는 검색조건을 해싱하여 최종 해쉬값을 산출하는 단계; 및 상기 산출된 최종 해쉬값과 상기 검색조건에 대응하는 검색항목의 식별자를 조합하여 상기 토큰을 생성하는 단계;를 포함한다.
상기 토큰을 생성하는 단계는, 다수의 검색조건이 입력되면, 상기 입력되는 다수의 검색조건에 대해 개별적으로 임시 해쉬값을 산출하는 단계; 상기 산출된 각 임시 해쉬값에 대해 논리연산을 적용하여 상기 최종 해쉬값을 산출하는 단계; 및 상기 산출된 최종 해쉬값과 상기 식별자를 조합하여 상기 토큰을 생성하는 단계;를 포함한다.
상기 적어도 하나의 파일을 보안모드로 저장하는 경우, 상기 검색모드에서 사용되는 다수의 검색항목 및 상기 각 검색항목에 대한 상세정보를 입력받기 위한 영역을 포함하는 보안메뉴화면을 생성하여 표시하는 단계; 상기 표시되는 보안메뉴화면을 통해 상기 적어도 하나의 검색항목에 대한 상세정보를 입력받는 단계; 상기 적어도 하나의 검색항목에 입력되는 상세정보를 해싱하여 상기 검색항목 별로 상기 파일정보를 생성하는 단계; 상기 생성된 파일정보를 상기 검색항목 별로 상기 적어도 하나의 파일에 추가하는 단계; 및 상기 파일정보가 추가된 상기 적어도 하나의 파일을 저장하는 단계;를 더 포함한다.
상기 적어도 하나의 파일을 고급보안모드로 저장하는 경우, 난수를 생성하여 상기 적어도 하나의 파일에 추가하는 단계; 및 상기 적어도 하나의 검색항목에 입력되는 상세정보와 상기 생성된 난수를 해싱하여 상기 검색항목 별로 파일정보를 생성하는 단계;를 더 포함한다.
상기 토큰을 생성하는 단계는, 상기 다수의 검색항목 중 적어도 하나의 검색항목에 입력되는 검색조건과 상기 적어도 하나의 파일에 추가된 난수를 해싱하여 최종 해쉬값을 산출하는 단계; 및 상기 산출된 최종 해쉬값과 상기 검색조건에 대응하는 검색항목의 식별자를 조합하여 상기 토큰을 생성하는 단계;를 포함한다.
상기 검색하는 단계는, 상기 생성된 토큰에 포함된 검색항목의 식별자를 확인하고, 상기 확인된 식별자에 대응하는 검색항목의 파일정보와 상기 토큰에 포함된 최종 해쉬값을 비교한다.
상기 적어도 하나의 파일을 보안모드로 저장하는 요청신호 및 상기 적어도 하나의 파일을 검색하는 요청신호 중 하나를 수신하는 단계;를 더 포함하며, 상기 표시하는 단계는, 상기 수신되는 요청신호에 응답하여 상기 보안메뉴화면 및 상기 검색메뉴화면 중 하나를 선택적으로 표시한다.
본 발명에 따른 파일 저장/검색 장치 및 방법에 의하면, 파일을 암호화하여 저장하는 경우 파일의 상세정보는 암호화하지 않고 해싱하므로 파일 크기를 축소할 수 있으며, 다수의 상세정보를 입력하는 것이 가능하다. 이로써, 파일 검색 시 다수의 검색조건에 의해 파일을 검색하는 것이 가능하며 이는 보다 정확하고 신속하게 파일을 검색할 수 있도록 한다.
또한, 본 발명에 의하면, 파일 검색 시 검색조건을 해싱하여 파일에 저장된 파일정보와 비교함으로써 사용자에게 파일에 저장된 파일정보를 공개하지 않는 것이 가능하다. 이는 파일 및 파일정보의 보안유지를 보다 강화할 수 있도록 한다.
특히, 본 발명에 의하면, 고급보안모드로 파일을 저장하고, 고급검색모드로 검색하는 경우 파일에 포함된 난수를 이용하여 상세정보 또는 검색조건을 해싱하므 로 보다 업그레이드된 방식으로 파일의 보안을 유지할 수 있다.
또한, 본 발명에 의하면, 검색모드에서 하나의 검색영역에 두 개 이상의 검색조건을 입력할 수 있으므로 보다 다양하고 구체화된 방식으로 파일을 검색하는 것이 가능하다.
이하 첨부된 도면들을 참조하여 본 발명의 일 실시예를 보다 상세하게 설명한다. 다만, 본 발명을 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그에 대한 상세한 설명은 생략한다.
도 1은 본 발명의 바람직한 실시예에 따른 파일 저장/검색 장치를 도시한 블록도이다.
본 발명의 실시예에 따른 파일 저장/검색 장치(100)는 파일의 실제 데이터는 암호화하고, 파일명, 파일작성일 등의 상세정보는 해싱하여 저장하며, 암호화된 파일 검색시, 상세정보를 복호화하는 과정없이 해싱함수를 사용하여 검색하는 것이 가능하다. 이를 위하여, 파일 저장/검색 장치(100)는 메뉴생성부(110), 파일정보 생성부(120), 토큰 생성부(130) 및 파일 검색부(140)를 포함한다.
메뉴생성부(110)는 파일을 암호화하여 저장하는 경우 파일의 상세정보를 입력하기 위한 보안메뉴화면 및 암호화된 적어도 하나의 파일 중 원하는 파일(이하, '타겟파일'이라 한다)을 검색하기 위한 검색메뉴화면을 생성한다. 보안메뉴화면 및 검색메뉴화면은 도 3 및 도 4를 참조하여 보다 자세히 후술한다.
파일정보 생성부(120)는 보안메뉴화면을 통해 입력되는 적어도 하나의 상세정보를 각각 해싱(hashing)하여 해쉬값을 산출한 후, 산출된 각 해쉬값을 파일정보로서 출력한다. 생성된 적어도 하나의 파일정보는 암호화된 파일에 추가되어 저장된다.
토큰 생성부(130)는 검색메뉴화면을 통해 입력되는 적어도 하나의 검색조건을 각각 해싱하여 해쉬값을 산출한다. 산출된 각 해쉬값은 각 검색조건에 대응하는 토큰(token)으로 사용된다.
파일 검색부(140)는 파일정보 생성부(120)에서 생성된 적어도 하나의 파일정보와 토큰 생성부(130)에서 생성된 토큰을 비교하여 입력된 검색조건에 매칭되는 타겟 파일을 검색한다. 즉, 파일 검색부(140)는 다수의 파일을 순차적으로 검색하며, 다수의 파일 중 현재 검색 중인 파일에 포함된 적어도 하나의 파일정보와 토큰 생성부(130)에서 생성된 토큰을 비교하여 동일하면, 현재 검색 중인 파일이 상기 찾고자 하는 타겟파일인 것으로 판단한다. 파일 검색부(140)는 검색된 타겟파일이 사용자에게 보고(reporting)되도록 한다.
도 2는 본 발명의 다른 실시예에 따른 파일 저장/검색 장치를 도시한 블록도이다.
도 2에 도시된 본 발명에 따른 파일 저장/검색 장치(200)는 파일의 보안이 요구되는 경우, 파일을 암호화하고 파일명과 같은 파일의 상세정보는 해싱하여 저장함으로써 외부인에게 파일과 관련된 정보가 유출되는 것을 방지한다. 또한, 장치(200)는 암호화된 파일 중 필요한 파일을 검색하는 경우, 파일명과 같은 상세정 보를 복호화하지 않고 검색하는 것이 가능하도록 한다. 특히, 다수의 검색조건을 이용하여 검색하는 것이 가능하므로, 본원발명은 사용자에 의해 입력되는 각 검색조건을 해싱하여 타겟파일을 검색한다.
이를 위하여, 파일 저장/검색 장치(200)는 사용자 입력부(210), 표시부(215), 저장부(220), 메뉴생성부(230), 파일정보 생성부(240), 파일 암호화부(250), 토큰 생성부(260), 파일 검색부(270), 인터페이스(I/F)부(280) 및 제어부(290)를 포함한다.
사용자 입력부(210)는 사용자와 파일 저장/검색 장치(200) 간의 인터페이스를 지원하며, 특히, 적어도 하나의 파일을 보안모드로 저장할 것을 요청하는 저장요청신호와, 보안모드로 저장된 파일들의 검색을 요청하는 검색요청신호를 출력한다. 보안모드로 파일을 저장하는 것은 실제 데이터는 암호화하며, 파일의 상세정보는 해싱하여 저장하는 것을 의미한다. 파일의 상세정보는 파일명, 파일의 카테고리, 파일 작성일, 키워드 등 파일과 관련된 다양한 속성정보를 포함하며, 이는 검색시 사용할 검색항목과 동일하다.
표시부(215)는 사용자 입력부(210)로부터 출력되는 요청신호에 응답하여, 패스워드의 입력을 요청하는 GUI, 보안메뉴화면 및 검색메뉴화면 중 하나를 선택적으로 표시한다. 또한, 표시부(2150)는 파일의 저장이 완료되었거나, 또는, 파일의 검색이 완료되었음을 나타내는 메시지를 표시하여 사용자에게 통지한다.
저장부(220)는 본 발명에 따른 파일 저장 및 검색을 지원하기 위한 프로그램을 저장하며, 파일 저장/검색 장치(200)의 동작에 필요한 각종 제어프로그램을 저 장한다. 또한, 저장부(220)는 암호화된 다수의 파일을 저장한다.
메뉴생성부(230)는 사용자 입력부(210)로부터 보안모드에 의한 저장요청신호가 출력되면, 패스워드의 입력을 요청하는 GUI를 생성하며, 도 3에 도시된 바와 같은 보안메뉴화면(300)을 생성한다. 또한, 메뉴생성부(230)는 검색요청신호가 출력되면, 패스워드의 입력을 요청하는 GUI를 생성하며, 도 6과 같은 검색메뉴화면(600)을 생성한다. 보안메뉴화면(300)은 파일을 암호화하여 저장하는 경우 파일의 상세정보를 입력하기 위한 GUI이며, 검색메뉴화면(600)은 암호화된 파일들 중 원하는 파일(이하, '타겟파일'이라 한다)을 검색하기 위한 GUI이다.
도 3을 참조하면, 보안메뉴화면(300)은 파일의 상세정보를 입력받기 위한 영역(A1~A6) 및 각 상세정보의 속성을 나타내는 속성필드(F1~F6)를 포함한다. 속성필드(F1~F6)는 파일 검색시 사용되는 검색항목(F1'~F6')과 동일하며, 각 속성필드(F1~F6)에 매칭되는 영역(A1~A6)에 입력되는 상세정보는 파일 검색시 사용된다. 각 영역(A1~A6)에는 한 개 또는 다수의 상세정보가 입력될 수 있다.
속성필드(F1)에 대응하는 '카테고리'는 파일이 속하는 분야이며, 속성필드(F4)에 대응하는 '색인어'는 파일의 핵심 키워드를 의미하며, 속성필드(F6)에 대응하는 '파일 마지막 생성일'은 파일을 마지막으로 편집, 저장한 날짜를 의미한다.
사용자는 보안메뉴화면(300)을 통해 속성필드(F1~F6)에 각각 대응하는 영역(A1~A6) 중 적어도 하나에 상세정보를 입력할 수 있다. 예를 들어, 사용자는 '파일명(F2)'에 대응하는 영역(A2)에 'AA'라는 파일명을 입력하고, '파일 확장자(F3)'에 대응하는 영역(A3)에 'doc'를 입력할 수 있다.
일반보안모드(301)는 파일을 암호화하고 입력되는 적어도 하나의 상세정보를 각각 해싱하여 저장하는 경우 선택되며, 고급보안모드(302)는 파일을 암호화하고, 난수를 발생하여 난수와 적어도 하나의 상세정보를 해싱하여 저장하는 경우 선택된다.
파일정보 생성부(240)는 보안메뉴화면(300)을 통해 입력되는 적어도 하나의 상세정보를 각각 해싱(hashing)하여 파일정보를 생성한다. 즉, 파일정보는 상세정보가 입력된 속성필드의 개수만큼 생성된다. 생성된 적어도 하나의 파일정보는 암호화된 파일에 추가되어 저장부(220) 또는 이동식 저장매체(10)에 저장된다.
사용자가 일반보안모드(301)를 선택하면, 파일정보 생성부(240)는 파일의 실제 데이터를 암호화하고, 다음의 [수학식 1]을 이용하여, 상세정보가 입력된 속성필드(F1~F6)들의 파일정보를 생성한다.
[수학식 1]에서 파일정보는 해쉬값, H는 해쉬함수, SK는 사용자에 의해 입력된 패스워드, WN은 보안메뉴화면(300)을 통해 입력된 각 속성필드의 상세정보, N은 양수로서 속성필드가 6개인 경우 N은 1~6이 될 수 있다. WN은 입력된 상세정보만을 포함하거나 또는 상세정보가 입력된 속성필드의 식별자(예를 들어, F1)를 추가적으로 포함할 수 있다. 예를 들어, WN은 파일명으로서 'AAA'만으로 표시되거나 또는 파일명에 대응하는 식별자인 F2를 포함하여 'F2:AAA'로 표시될 수 있다. WN이 식별자를 포함하는 경우, 파일검색시 유용하게 사용될 수 있다. 예를 들어, 검색메뉴화면에서 사용자가 카테고리 항목에 입력하는 검색조건과 파일명에 입력하는 검색조건이 동일한 경우, WN이 식별자를 포함하지 않으면 파일검색은 보다 지연될 수 있으며, 많은 파일이 검색될 수 있다.
사용자가 고급보안모드(302)를 선택하면, 파일정보 생성부(240)는 파일의 실제 데이터를 암호화하고, 각 파일 별로 난수를 발생하며, [수학식 2]를 이용하여, 상세정보가 입력된 속성필드(F1~F6)들의 파일정보를 생성한다.
[수학식 2]에서 R은 각 파일에 추가하기 위하여 발생되는 난수이며, 그 외는 [수학식 1]에서 설명한 것과 동일하다. 고급보안으로 저장하는 모드는 파일정보 생성시 파일정보 생성부(240)가 랜덤값, 즉, 난수를 생성하고, 난수와 패스워드와 하나의 상세정보를 해싱하여 하나의 속성필드에 대한 파일정보를 생성한다. 즉, 고급보안모드는 입력된 상세정보 각각에 대해 난수와 패스워드를 [수학식 2]에 적용하여 해싱함으로써 상세정보가 입력된 각 속성필드에 대한 파일정보를 생성한다.
예를 들어, 상세정보가 속성필드(F1, F2)에 대해 입력되면, 파일정보 생성부(240)는 속성필드(F1)에 대한 제1파일정보와 속성필드(F2)에 대한 제2파일정보를 [수학식 2]를 이용하여 생성한다.
파일 암호화부(250)는 파일의 실제 데이터를 암호화하고, 파일정보 생성부(240)에서 생성된 적어도 하나의 파일정보를 암호화된 데이터에 추가하여 암호화된 파일을 생성한다. 일반보안모드(301)가 선택된 경우, 파일 암호화부(250)에서 생성되는 파일은 도 4와 같은 구조를 갖는다. 도 4를 참조하면, 제1 내지 제6파일정보는 각각 속성필드(F1~F6)에 대응하는 파일정보로서, 보안메뉴화면(300)을 통해 사용자가 영역(A1~A6)에 상세정보를 모두 입력하였음을 의미한다.
한편, 고급보안모드(302)가 선택된 경우, 파일 암호화부(250)에서 생성되는 파일은 도 5와 같은 구조를 갖는다. 도 5를 참조하면, 파일은 난수가 저장되는 영역(R)을 포함하며, 난수와 패스워드와 각 상세정보를 해싱한 결과인 제1 내지 제6파일정보(H(SK||W1||R), H(SK||W2||R), H(SK||W3||R), H(SK||W4||R), H(SK||W5||R), H(SK||W6||R))를 포함한다. 보안메뉴화면(300)을 통해 사용자가 영역(A1)에만 상세정보를 입력하면, 파일은 암호화된 데이터, 난수 및 제1파일정보(H(SK||W1||R))를 포함한다.
도 6a는 검색메뉴화면의 일 예를 설명하기 위한 도면이다. 도 6a를 참조하면, 검색메뉴화면(600)은 다수의 검색항목(Search Field, F1'~F6')과 각 검색항목(F1'~F6')의 검색조건을 입력받기 위한 영역(A1'~A6')을 포함한다. 검색항목(F1'~F6')은 도 3에 도시된 보안메뉴화면(300)의 속성항목(F1~F6)과 동일한 것이 바람직하나 이에 한정되지 않는다.
XOR 검색(601)은 다수의 검색조건이 입력되면, 즉, 영역(A1'~A6') 중 두 개 이상의 영역에 검색조건이 사용자로부터 입력되거나, 하나의 영역에 다수의 검색조 건이 입력되면, 입력되는 검색조건들을 [수학식 1] 또는 [수학식 2]를 이용하여 각각 해싱한 후, 해싱된 각 결과들을 XOR 연산하여 타겟 파일을 검색하도록 한다. XOR 연산은 예를 들어 두 개의 검색조건이 입력되면, 두 개의 검색조건에 일치하는 파일정보를 가지는 파일을 검색한다.
AND 검색(602)은 다수의 검색조건이 입력되면, 입력되는 검색조건들을 [수학식 1] 또는 [수학식 2]를 이용하여 각각 해싱한 후, 해싱된 각 결과들을 AND 연산하여 타겟 파일을 검색하도록 한다. AND 연산은 예를 들어, 두 개의 검색조건이 입력되면 두 개의 검색조건 중 적어도 하나에 일치하는 파일정보를 가지는 파일을 검색한다. 따라서, AND 검색에 의한 결과의 개수가 XOR 검색에 의한 결과의 개수보다 많을 수 있다. XOR 연산 및 AND 연산은 논리연산방식 중 하나이며, 도 6b와 같은 화면을 통해 사용자가 선택할 수 있다.
검색메뉴화면(600) 중 고급(603)이 선택되면 메뉴생성부(230)는 도 6b와 같은 GUI를 생성한다. 도 6b는 파일 검색시 일반검색모드로 진행할지 또는 고급검색모드로 진행할지 선택하도록 하는 UI이다. 일반검색모드는 암호화된 파일에 난수가 포함되어 있지 않은 경우 사용되는 검색이며, 고급검색모드는 암호화된 파일에 난수가 포함되어 있는 경우 난수를 고려하여 수행되는 검색이다.
다시 도 2를 참조하면, 토큰 생성부(260)는 검색메뉴화면을 통해 입력되는 적어도 하나의 검색조건을 각각 해싱하여 해쉬값을 산출한다. 산출된 각 해쉬값은 각 검색조건에 대응하는 토큰(token)으로 사용된다. 사용자 입력부(210)로부터 검색요청신호가 출력되면, 메뉴생성부(230)는 패스워드 입력화면을 표시하고, 패스워 드가 사용자에 의해 입력되면, 도 6a와 같은 검색메뉴화면(600)을 생성한다. 표시부(215)는 검색메뉴화면(600)을 표시한다.
표시된 검색메뉴화면(600)을 통해 하나의 검색조건이 입력되면, 토큰 생성부(260)는 입력되는 검색조건과 패스워드를 [수학식 1] 또는 [수학식 2]에 대입하여 최종해쉬값을 산출한다. 예를 들어, 도 6a와 같은 화면에서 XOR 검색(601) 또는 AND 검색(602)이 선택된 경우, 현재 검색할 파일에 난수가 포함되어 있으면, 토큰 생성부(260)는 파일에 포함된 난수(R) 및 [수학식 2]를 이용하여 최종 해쉬값을 산출한다. 또는, 도 6b와 같은 화면에서 고급검색모드가 선택되면 토큰 생성부(260)는 [수학식 2]를 이용하여 최종 해쉬값을 산출한다. 즉, 토큰 생성부(260)는 현재 검색할 파일에 포함된 난수(R)를 확인하고, 확인된 난수(R) 및 [수학식 2]를 이용하여 최종 해쉬값을 산출한다.
한편, 검색메뉴화면(600)을 통해 다수의 검색조건이 입력되면, 토큰 생성부(260)는 입력되는 검색조건 각각과 패스워드를 [수학식 1] 또는 [수학식 2]에 대입하여 다수의 임시 해쉬값을 산출한다. 즉, 각 검색조건에 대응하는 임시 해쉬값이 산출된다. 검색메뉴화면(600)에서 XOR 검색(601)이 선택된 경우, 토큰 생성부(260)는 산출된 다수의 임시 해쉬값을 XOR 연산하여 최종 해쉬값을 산출한다. XOR 연산의 결과값은 해싱에 사용되는 해쉬함수의 길이와 동일하다.
그리고, 토큰 생성부(260)는 산출된 최종 해쉬값과, 검색조건이 입력된 각 검색항목의 식별자를 조합하여 검색에 사용되는 토큰을 생성한다. 도 7은 토큰 생성부에서 생성되는 토큰의 구조를 설명하기 위한 도면이다. 검색항목(F1'~F6')의 식별자는 N 비트로 표현될 수 있다.
예를 들어, 도 6a와 같은 검색메뉴화면(600)을 통해 검색항목(F2', F3')에 대응하는 영역(A2', A3')에 검색조건 'AAA'와 'doc'가 입력되고, XOR 검색(601)이 선택되면, 토큰 생성부(260)는 [수학식 1]을 사용하여 검색조건 'AAA'에 대한 제1임시 해쉬값을 산출하고, [수학식 1]을 사용하여 검색조건 'doc'에 대한 제2임시 해쉬값을 산출한다. 그리고, 토큰 생성부(260)는 산출된 제1 및 제2임시 해쉬값을 XOR 연산하여 최종 해쉬값을 산출하며, 검색항목(F2', F3')에 대한 식별자로서 '011000'을 생성한다. '011000'에서, 첫 번째 '0'은 검색항목(F1')에 대해서는 영역(A1')에 검색조건이 입력되지 않았음을 의미하며, 두 번째 및 세 번째의 '11'은 검색항목(F2', F3')에 대해서는 영역(A2', A3')에 검색조건이 입력된 것을 의미한다.
다시 도 2를 참조하면, 파일 검색부(270)는 적어도 하나의 파일정보와 토큰 생성부(260)에서 생성된 토큰을 비교하여, 입력된 검색조건에 매칭되는 타겟 파일을 검색한다. 적어도 하나의 파일정보는 파일 저장시, 파일정보 생성부(240)에서 생성되어 파일에 이미 포함되어 있는 정보이다.
검색조건이 하나 입력된 경우, 파일 검색부(270)는 다수의 파일 중 현재 검색 중인 파일에 포함된 적어도 하나의 파일정보와 토큰 생성부(260)에서 생성된 토큰을 비교하여 동일하면, 현재 검색 중인 파일이 찾고자 하는 타겟파일인 것으로 판단한다.
검색조건이 다수 입력된 경우, 파일 검색부(270)는 토큰에 포함된 적어도 하 나의 식별자를 확인하고, 확인된 적어도 하나의 식별자에 대응하는 파일정보를 현재 검색 중인 파일로부터 추출한다. 검색메뉴화면(600)에서 XOR 검색(601)이 선택된 경우, 파일 검색부(270)는 추출된 적어도 하나의 파일정보를 XOR 연산하고, 연산결과와 생성된 토큰의 최종 해쉬값을 비교한다. 비교결과 동일하면, 파일 검색부(270)는 현재 검색 중인 파일이 타겟 파일인 것으로 판단하고, 다음 파일을 호출하여 상기의 검색동작을 수행한다.
I/F부(280)는 이동식 저장매체(10)와의 통신 인터페이스를 제공한다. 이동식 저장매체(10)는 휴대가 가능하며 암호화된 파일을 저장할 수 있다.
제어부(290)는 파일의 암호화 저장 또는 검색이 요청되면 해당 프로그램이 실행되어 상기의 동작이 수행되도록 하며, 파일의 검색이 완료되면, 검색된 파일들을 복호화하고, 검색 결과를 사용자에게 통지한다.
도 8은 본 발명의 실시예에 따른 파일 저장/검색 방법 중 파일 저장 방법을 설명하기 위한 흐름도이다.
도 1 내지 도 8을 참조하면, 사용자 입력부(210)로부터 파일의 암호화가 요청되면(S805), 패스워드 입력화면이 메뉴생성부(230)에 의해 생성되어 표시부(215)에 표시된다(S810).
패스워드 입력화면을 통해 패스워드가 입력되면(S815), 파일 암호화부(250)는 파일의 데이터를 암호화하고(S820), 보안메뉴화면(300)이 생성되어 표시된다(S825).
보안메뉴화면(300)의 영역(A1~A6)에 적어도 하나의 상세정보가 입력되 고(S830), 일반보안모드(301)가 선택되면(S835), 파일정보 생성부(240)는 입력된 패스워드와 각 상세정보를 [수학식 1]에 적용하여 해싱하고, 그 결과 적어도 하나의 파일정보를 생성한다(S840).
파일 암호화부(250)는 S840단계에서 생성되는 적어도 하나의 파일정보를 S820단계에서 암호화된 데이터에 추가하여 도 4와 같은 파일을 생성한다(S845).
한편, S830단계 후 고급보안모드(302)가 선택되면(S850), 파일정보 생성부(240)는 난수(R)을 발생하고(S855), 난수(R)와 입력된 패스워드와 각 상세정보를 [수학식 2]에 적용하여 해싱한다(S860). 그 결과 파일정보 생성부(240)는 S830단계에서 입력된 상세정보의 개수에 해당하는 파일정보를 생성하고, 파일 암호화부(250)는 도 5와 같은 파일을 생성한다(S845).
도 9는 본 발명의 실시예에 따른 파일 저장/검색 방법 중 일반모드로 파일을 검색하는 방법을 설명하기 위한 흐름도이다.
도 1 내지 도 9를 참조하면, 사용자 입력부(210)로부터 파일의 검색이 요청되면(S905), 패스워드 입력화면이 표시부(215)에 표시된다(S910).
패스워드 입력화면을 통해 패스워드가 입력되면(S915), 검색메뉴화면(600)이 표시부(215)에 표시된다(S920).
검색메뉴화면(600)을 통해 다수의 검색조건이 입력되고, 일반검색모드가 선택되면(S925), 토큰 생성부(260)는 입력된 각 검색조건과 패스워드를 [수학식 1]에 의해 해싱하여 다수의 임시 해쉬값을 산출한다(S930).
S920단계에서 표시된 검색메뉴화면(600)에서 XOR 검색(601)이 선택된 경우, 토큰 생성부(260)는 산출된 다수의 임시 해쉬값을 XOR 연산하며, AND 검색(602)이 선택된 경우, 토큰 생성부(260)는 산출된 다수의 임시 해쉬값을 AND 연산하여 최종 해쉬값을 산출한다(S935).
S935단계 후, 토큰 생성부(260)는 S925단계에서 입력된 각 검색조건에 대응하는 검색항목의 식별자와 S935단계에서 산출된 최종 해쉬값을 조합하여 도 7과 같은 토큰을 생성한다(S940).
반면, 표시된 검색메뉴화면(600)을 통해 하나의 검색조건이 입력되면, 토큰 생성부(260)는 하나의 검색조건과 패스워드를 [수학식 1]에 의해 해싱하여 최종 해쉬값을 산출한다(S945).
그리고, 토큰 생성부(260)는 S925단계에서 입력된 하나의 검색조건에 대응하는 검색항목의 식별자와 S945단계에서 산출된 최종 해쉬값을 조합하여 도 7과 같은 토큰을 생성한다(S950).
도 10은 도 9에서 생성된 토큰을 이용하여 파일을 검색하는 방법의 일 예를 설명하기 위한 흐름도이다.
도 1 내지 도 10을 참조하면, S940단계 또는 S950단계에서 생성된 토큰이 입력되면(S1005), 파일 검색부(270)는 검색할 파일이 존재하는지 확인한다(S1010). 검색할 파일은 사용자가 지정한 폴더 또는 디렉토리 등이 될 수 있으며, 저장부(220) 또는 이동식 저장매체(10)에 저장되어 있을 수 있다.
검색할 파일이 있으면, 파일 검색부(270)는 현재 검색할 파일을 호출한다(S1015). 호출된 파일은 암호화되어 있으며 도 4와 같은 구조를 갖는다.
파일 검색부(270)는 S1005단계에서 입력받은 토큰에 포함된 각 검색항목의 식별자를 확인하고, 확인된 적어도 하나의 식별자에 대응하는 파일정보를 호출된 파일로부터 확인한다(S1020). 예를 들어, 확인된 식별자가 '011000'이면, 파일 검색부(270)는 호출된 파일에 포함된 적어도 하나의 파일정보들 중 제2 및 제3파일정보를 확인한다. '011000'는 S925단계에서 검색항목(F2', F3')에 대응하는 영역(A2', A3')에 검색조건이 입력되었음을 의미하기 때문이다.
S1020단계 후, 파일 검색부(270)는 확인된 각 파일정보를 XOR 연산 또는 AND 연산한다(S1025). S1025단계를 자세히 설명하면, 하나의 파일정보가 확인된 경우 파일 검색부(270)는 XOR 연산 또는 AND 연산을 생략할 수 있다. 또한, 다수의 파일정보가 확인된 경우, 검색메뉴화면(600)에서 XOR 검색(601)이 선택되면, 파일 검색부(270)는 다수의 파일정보를 XOR 연산한다.
파일 검색부(270)는 S1025단계에 의한 연산 결과와 S1005단계에서 입력된 토큰에 포함된 최종 해쉬값이 동일한지 비교한다(S1030). 이는, 파일정보는 이미 해싱에 의해 산출된 해쉬값이기 때문이다.
비교결과 동일하면, 제어부(290)는 S1015단계에서 호출된 파일을 복호화하여 임시 저장한다(S1035). S1035단계 후, 파일 검색부(270)는 S1010단계로 진입하여 검색되지 않은 파일이 더 있는지 확인한다. 모든 파일의 검색이 완료되면, 제어부(290)는 검색조건에 매칭되는 파일이 검색된 개수를 사용자에게 통지하고, 사용자의 요청이 있으면 임시저장된 복호화된 데이터를 제공할 수 있다. 파일의 복호화는 선택적으로 수행될 수 있다.
도 11은 본 발명의 실시예에 따른 파일 저장/검색 방법 중 고급모드로 파일을 검색하는 방법을 설명하기 위한 흐름도이다.
도 1 내지 도 11을 참조하면, 사용자 입력부(210)로부터 파일의 검색이 요청되면(S1105), 패스워드 입력화면이 표시부(215)에 표시된다(S1110).
패스워드 입력화면을 통해 패스워드가 입력되면(S1115), 검색메뉴화면(600)이 표시부(215)에 표시된다(S1120).
검색메뉴화면(600)을 통해 적어도 하나의 검색조건이 입력되고, 고급검색모드가 선택되면(S1125), 파일 검색부(270)는 사용자가 선택한 검색대상 파일, 검색대상 폴더 등에 검색할 파일이 존재하는지 확인한다(S1130).
검색할 파일이 있으면, 파일 검색부(270)는 현재 검색할 파일을 호출하고(S1135), 토큰 생성부(260)는 호출된 파일에 포함된 난수(R)을 확인한다(S1140). 각 파일에 포함된 난수는 동일하거나 다를 수 있다.
토큰 생성부(260)는 S1125단계에서 입력된 검색조건과 난수와 패스워드를 [수학식 2]에 의해 해싱하여 임시 해쉬값을 산출한다(S1145). S1125단계에서 검색조건이 다수 입력된 경우, S1145단계에서 임시 해쉬값은 다수 산출된다.
S1120단계에서 표시된 검색메뉴화면(600)에서 XOR 검색(601)이 선택된 경우, 토큰 생성부(260)는 산출된 다수의 임시 해쉬값을 XOR 연산하며, AND 검색(602)이 선택된 경우, 토큰 생성부(260)는 산출된 다수의 임시 해쉬값을 AND 연산하여 최종 해쉬값을 산출한다(S1150).
또한, 파일 검색부(270)는 S1125단계에서 검색조건이 입력된 각 검색항목의 식별자를 확인하고, 확인된 적어도 하나의 식별자에 대응하는 파일정보를 호출된 파일로부터 확인하여, 확인된 각 파일정보를 XOR 연산 또는 AND 연산한다(S1155). 이는 S1020단계 및 S1025단계와 유사하므로 상세한 설명은 생략한다.
파일 검색부(270)는 S1150단계에서 산출된 최종 해쉬값과 S1155단계에서 산출된 연산결과를 비교한다(S1160). 비교결과 서로 동일하면, 제어부(290)는 S1135단계에서 호출된 파일을 복호화하여 임시 저장한다(S1165). S1165단계 후, 파일 검색부(270)는 S1130단계로 진입하여 검색되지 않은 파일이 더 있는지 확인한다. 모든 파일의 검색이 완료되면, 제어부(290)는 검색조건에 매칭되는 파일이 검색된 개수를 사용자에게 통지할 수 있다.
이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형 실시예들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
도 1은 본 발명의 바람직한 실시예에 따른 파일 저장/검색 장치를 도시한 블록도,
도 2는 본 발명의 다른 실시예에 따른 파일 저장/검색 장치를 도시한 블록도,
도 3은 보안메뉴화면의 일 예시도,
도 4는 일반보안모드가 선택되는 경우 파일 암호화부에서 생성되는 파일의 일 예를 도시한 도면,
도 5는 고급보안모드가 선택되는 경우, 파일 암호화부에서 생성되는 파일의 일 예를 도시한 도면,
도 6은 검색메뉴화면의 일 예시도,
도 7은 토큰 생성부에서 생성되는 토큰의 구조를 설명하기 위한 도면,
도 8은 본 발명의 실시예에 따른 파일 저장/검색 방법 중 파일 저장 방법을 설명하기 위한 흐름도,
도 9는 본 발명의 실시예에 따른 파일 저장/검색 방법 중 일반모드로 파일을 검색하는 방법을 설명하기 위한 흐름도,
도 10은 도 9에서 생성된 토큰을 이용하여 파일을 검색하는 방법의 일 예를 설명하기 위한 흐름도,
도 11은 본 발명의 실시예에 따른 파일 저장/검색 방법 중 고급모드로 파일을 검색하는 방법을 설명하기 위한 흐름도이다.
* 도면의 주요부분에 대한 부호의 설명 *
100, 200 : 파일 저장/검색 장치 210 : 사용자 입력부
215 : 표시부 220 : 저장부
110, 230 : 메뉴생성부 120, 240 : 파일정보 생성부
130. 260 : 토큰 생성부 140, 270 : 파일 검색부
250 : 파일 암호화부 280 : 인터페이스부
290 : 제어부 10 : 이동식 저장매체
Claims (21)
- 검색조건을 입력받기 위한 검색메뉴화면을 생성하는 메뉴생성부;상기 검색메뉴화면을 통해 입력되는 적어도 하나의 검색조건을 해싱(hashing)하여 토큰(token)을 생성하는 토큰 생성부; 및검색할 적어도 하나의 파일에 포함되어 있는 각 파일정보와 상기 생성된 토큰을 비교하여 상기 검색조건에 매칭되는 파일을 검색하는 파일 검색부;를 포함하는 것을 특징으로 하는 파일 저장 및 검색 장치.
- 제 1항에 있어서,상기 메뉴생성부는, 검색모드에서, 검색을 위하여 구분된 다수의 검색항목(Search Field) 및 상기 각 검색항목 별로 검색조건을 입력받기 위한 영역을 포함하는 상기 검색메뉴화면을 생성하는 것을 특징으로 하는 파일 저장 및 검색 장치.
- 제 2항에 있어서,상기 토큰 생성부는, 상기 다수의 검색항목 중 적어도 하나의 검색항목에 입력되는 검색조건을 해싱하여 최종 해쉬값(hash)산출하고, 상기 산출된 최종 해쉬값과 상기 검색조건에 대응하는 검색항목의 식별자를 조합하여 상기 토큰을 생성하는 것을 특징으로 하는 파일 저장 및 검색 장치.
- 제 3항에 있어서,상기 토큰 생성부는 다수의 검색조건이 입력되면, 상기 입력되는 다수의 검색조건에 대해 개별적으로 임시 해쉬값을 산출하고, 상기 산출된 각 임시 해쉬값에 대해 논리연산을 적용하여 상기 최종 해쉬값을 산출하는 것을 특징으로 하는 파일 저장 및 검색 장치.
- 제 4항에 있어서,상기 논리 연산은 XOR 연산 및 AND 연산 중 하나이며, 사용자에 의해 선택가능한 것을 특징으로 하는 파일 저장 및 검색 장치.
- 제 1항에 있어서,상기 메뉴생성부는 상기 적어도 하나의 파일을 보안모드로 저장하는 경우, 상기 검색모드에서 사용되는 다수의 검색항목 및 상기 각 검색항목에 대한 상세정보를 입력받기 위한 영역을 포함하는 보안메뉴화면을 생성하는 것을 특징으로 하는 파일 저장 및 검색 장치.
- 제 6항에 있어서,상기 다수의 검색항목 중 적어도 하나의 검색항목에 입력되는 상세정보를 해싱하여 상기 검색항목 별로 상기 파일정보를 생성하는 파일정보 생성부;를 더 포함 하는 것을 특징으로 하는 파일 저장 및 검색 장치.
- 제 7항에 있어서,상기 파일정보 생성부는, 상기 적어도 하나의 파일을 고급보안모드로 저장하는 경우, 난수를 생성하여 상기 적어도 하나의 파일에 추가하고, 상기 적어도 하나의 검색항목에 입력되는 상세정보와 상기 생성된 난수를 해싱하여 상기 검색항목 별로 파일정보를 생성하는 것을 특징으로 하는 파일 저장 및 검색 장치.
- 제 8항에 있어서,상기 토큰 생성부는 상기 다수의 검색항목 중 적어도 하나의 검색항목에 입력되는 검색조건과 상기 적어도 하나의 파일에 추가된 난수를 해싱하여 최종 해쉬값을 산출하고, 상기 산출된 최종 해쉬값과 상기 검색조건에 대응하는 검색항목의 식별자를 조합하여 상기 토큰을 생성하는 것을 특징으로 하는 파일 저장 및 검색 장치.
- 제 3항 또는 제 9항에 있어서,상기 파일 검색부는, 상기 토큰에 포함된 검색항목의 식별자를 확인하고, 상기 적어도 하나의 파일에 포함된 상기 확인된 식별자에 대응하는 검색항목의 파일정보와 상기 토큰에 포함된 최종 해쉬값을 비교하는 것을 특징으로 하는 파일 저장 및 검색 장치.
- 제 6항에 있어서,상기 적어도 하나의 파일을 보안모드로 저장하는 요청신호 및 상기 적어도 하나의 파일을 검색하는 요청신호 중 하나를 출력하는 사용자 입력부; 및상기 출력되는 요청신호에 응답하여 상기 메뉴생성부에서 선택적으로 생성되는 상기 보안메뉴화면 및 상기 검색메뉴화면 중 하나를 표시하는 표시부;를 더 포함하는 것을 특징으로 하는 파일 저장 및 검색 장치.
- 검색조건을 입력받기 위한 검색메뉴화면을 생성하는 단계;상기 검색메뉴화면을 통해 입력되는 적어도 하나의 검색조건을 해싱(hashing)하여 토큰(token)을 생성하는 단계; 및검색할 적어도 하나의 파일에 포함되어 있는 각 파일정보와 상기 생성된 토큰을 비교하여 상기 검색조건에 매칭되는 파일을 검색하는 단계;를 포함하는 것을 특징으로 하는 파일 저장 및 검색 방법.
- 제 12항에 있어서,상기 검색메뉴화면은, 검색을 위하여 구분된 다수의 검색항목(Search Field) 및 상기 각 검색항목 별로 검색조건을 입력받기 위한 영역을 포함하는 것을 특징으로 하는 파일 저장 및 검색 방법.
- 제 13항에 있어서,상기 토큰을 생성하는 단계는,상기 다수의 검색항목 중 적어도 하나의 검색항목에 입력되는 검색조건을 해싱하여 최종 해쉬값을 산출하는 단계; 및상기 산출된 최종 해쉬값과 상기 검색조건에 대응하는 검색항목의 식별자를 조합하여 상기 토큰을 생성하는 단계;를 포함하는 것을 특징으로 하는 파일 저장 및 검색 방법.
- 제 13항에 있어서,상기 토큰을 생성하는 단계는,다수의 검색조건이 입력되면, 상기 입력되는 다수의 검색조건에 대해 개별적으로 임시 해쉬값을 산출하는 단계;상기 산출된 각 임시 해쉬값에 대해 논리연산을 적용하여 상기 최종 해쉬값을 산출하는 단계; 및상기 산출된 최종 해쉬값과 상기 식별자를 조합하여 상기 토큰을 생성하는 단계;를 포함하는 것을 특징으로 하는 파일 저장 및 검색 방법.
- 제 15항에 있어서,상기 논리 연산은 XOR 연산 및 AND 연산 중 하나이며, 사용자에 의해 선택가능한 것을 특징으로 하는 파일 저장 및 검색 방법.
- 제 12항에 있어서,상기 적어도 하나의 파일을 보안모드로 저장하는 경우,상기 검색모드에서 사용되는 다수의 검색항목 및 상기 각 검색항목에 대한 상세정보를 입력받기 위한 영역을 포함하는 보안메뉴화면을 생성하여 표시하는 단계;상기 표시되는 보안메뉴화면을 통해 상기 적어도 하나의 검색항목에 대한 상세정보를 입력받는 단계;상기 적어도 하나의 검색항목에 입력되는 상세정보를 해싱하여 상기 검색항목 별로 상기 파일정보를 생성하는 단계;상기 생성된 파일정보를 상기 검색항목 별로 상기 적어도 하나의 파일에 추가하는 단계; 및상기 파일정보가 추가된 상기 적어도 하나의 파일을 저장하는 단계;를 더 포함하는 것을 특징으로 하는 파일 저장 및 검색 방법.
- 제 17항에 있어서,상기 적어도 하나의 파일을 고급보안모드로 저장하는 경우,난수를 생성하여 상기 적어도 하나의 파일에 추가하는 단계; 및상기 적어도 하나의 검색항목에 입력되는 상세정보와 상기 생성된 난수를 해싱하여 상기 검색항목 별로 파일정보를 생성하는 단계;를 더 포함하는 것을 특징으 로 하는 파일 저장 및 검색 방법.
- 제 18항에 있어서,상기 토큰을 생성하는 단계는,상기 다수의 검색항목 중 적어도 하나의 검색항목에 입력되는 검색조건과 상기 적어도 하나의 파일에 추가된 난수를 해싱하여 최종 해쉬값을 산출하는 단계; 및상기 산출된 최종 해쉬값과 상기 검색조건에 대응하는 검색항목의 식별자를 조합하여 상기 토큰을 생성하는 단계;를 포함하는 것을 특징으로 하는 파일 저장 및 검색 방법.
- 제 14항 또는 제 19항에 있어서,상기 검색하는 단계는,상기 생성된 토큰에 포함된 검색항목의 식별자를 확인하고, 상기 확인된 식별자에 대응하는 검색항목의 파일정보와 상기 토큰에 포함된 최종 해쉬값을 비교하는 것을 특징으로 하는 파일 저장 및 검색 방법.
- 제 20항에 있어서,상기 적어도 하나의 파일을 보안모드로 저장하는 요청신호 및 상기 적어도 하나의 파일을 검색하는 요청신호 중 하나를 수신하는 단계;를 더 포함하며,상기 표시하는 단계는, 상기 수신되는 요청신호에 응답하여 상기 보안메뉴화면 및 상기 검색메뉴화면 중 하나를 선택적으로 표시하는 것을 특징으로 하는 파일 저장 및 검색 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20080034160A KR101496347B1 (ko) | 2008-04-14 | 2008-04-14 | 파일 저장/검색 장치 및 방법 |
US12/367,735 US20090259658A1 (en) | 2008-04-14 | 2009-02-09 | Apparatus and method for storing and retrieving files |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20080034160A KR101496347B1 (ko) | 2008-04-14 | 2008-04-14 | 파일 저장/검색 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090108849A true KR20090108849A (ko) | 2009-10-19 |
KR101496347B1 KR101496347B1 (ko) | 2015-02-27 |
Family
ID=41164827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20080034160A KR101496347B1 (ko) | 2008-04-14 | 2008-04-14 | 파일 저장/검색 장치 및 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20090259658A1 (ko) |
KR (1) | KR101496347B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014003249A1 (ko) * | 2012-10-17 | 2014-01-03 | 주식회사 리얼타임테크 | 해쉬를 이용한 전문 기반 논리 연산 수행 방법 |
WO2015190732A1 (ko) * | 2014-06-11 | 2015-12-17 | 한국전력공사 | 디지털변전소의 지능형 시스템 운영을 위한 에이전트 시스템 및 이의 동작 방법 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10817614B2 (en) * | 2014-08-27 | 2020-10-27 | Netiq Corporation | Automatic detection of relatedness in pools of encrypted data |
US11895240B2 (en) * | 2016-12-15 | 2024-02-06 | Nec Corporation | System, apparatus, method and program for preventing illegal distribution of an access token |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9715256D0 (en) * | 1997-07-21 | 1997-09-24 | Rank Xerox Ltd | Token-based docement transactions |
US6032132A (en) * | 1998-06-12 | 2000-02-29 | Csg Systems, Inc. | Telecommunications access cost management system |
JP2001084260A (ja) | 1999-09-13 | 2001-03-30 | Mitsubishi Electric Corp | データベースシステム |
US7599856B2 (en) * | 2002-11-19 | 2009-10-06 | Amazon Technologies, Inc. | Detection of fraudulent attempts to initiate transactions using modified display objects |
US8694607B2 (en) | 2006-10-06 | 2014-04-08 | Google Inc. | Recursive subscriptions to content feeds |
US8275842B2 (en) * | 2007-09-30 | 2012-09-25 | Symantec Operating Corporation | System and method for detecting content similarity within email documents by sparse subset hashing |
-
2008
- 2008-04-14 KR KR20080034160A patent/KR101496347B1/ko not_active IP Right Cessation
-
2009
- 2009-02-09 US US12/367,735 patent/US20090259658A1/en not_active Abandoned
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014003249A1 (ko) * | 2012-10-17 | 2014-01-03 | 주식회사 리얼타임테크 | 해쉬를 이용한 전문 기반 논리 연산 수행 방법 |
CN103874996A (zh) * | 2012-10-17 | 2014-06-18 | 实时科技株式会社 | 用于利用散列来执行基于全文的逻辑运算的方法 |
KR101416586B1 (ko) * | 2012-10-17 | 2014-07-08 | 주식회사 리얼타임테크 | 해쉬를 이용한 전문 기반 논리 연산 수행 방법 |
CN103874996B (zh) * | 2012-10-17 | 2017-02-08 | 实时科技株式会社 | 用于利用散列来执行基于全文的逻辑运算的方法 |
WO2015190732A1 (ko) * | 2014-06-11 | 2015-12-17 | 한국전력공사 | 디지털변전소의 지능형 시스템 운영을 위한 에이전트 시스템 및 이의 동작 방법 |
US10379935B2 (en) | 2014-06-11 | 2019-08-13 | Korea Electric Power Corporation | Agent system for intelligent system management by digital substation and operation method therefor |
Also Published As
Publication number | Publication date |
---|---|
US20090259658A1 (en) | 2009-10-15 |
KR101496347B1 (ko) | 2015-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5412414B2 (ja) | 検索可能暗号処理システム | |
US10985902B2 (en) | Dynamic symmetric searchable encryption | |
KR100737359B1 (ko) | 암호화된 컬럼의 인덱스 구축방법 | |
JP6048414B2 (ja) | データベース装置と方法及びプログラム | |
US9602278B2 (en) | Encryption device, cipher-text comparison system, cipher-text comparison method, and cipher-text comparison program | |
US10037433B2 (en) | Secure text retrieval | |
JP2002108910A (ja) | 暗号化ファイルシステム及び暗号化ファイル検索方法並びにコンピュータ可読記録媒体 | |
JP2015035072A (ja) | 検索可能暗号処理システム及び方法 | |
US11184163B2 (en) | Value comparison server, value comparison encryption system, and value comparison method | |
Rizomiliotis et al. | ORAM based forward privacy preserving dynamic searchable symmetric encryption schemes | |
KR20090108849A (ko) | 파일 저장/검색 장치 및 방법 | |
CN116186108A (zh) | 加密敏感字段支持模糊查询的方法 | |
JPWO2017168798A1 (ja) | 暗号化検索インデックスマージサーバ、暗号化検索インデックスマージシステム、及び暗号化検索インデックスマージ方法 | |
CN115694921A (zh) | 一种数据存储方法、设备及介质 | |
US10769144B2 (en) | Database search system, database search method, and non-transitory recording medium | |
Handa et al. | An efficient approach for secure information retrieval on cloud | |
CN110830252B (zh) | 数据加密的方法、装置、设备和存储介质 | |
JP2007310603A (ja) | 文書処理装置及び文書処理プログラム | |
CN116701493B (zh) | 支持模糊查询的数据库操作方法及用户端 | |
KR100924796B1 (ko) | 베타 전개를 이용한 순서 보존 수치 데이타 암호화 시스템및 방법 | |
Tan et al. | A client-server prototype of a symmetric key searchable encryption scheme using open-source applications | |
KR102062979B1 (ko) | 암호화 장치 및 방법과, 암호화 방식의 추천 방법 | |
US20130036474A1 (en) | Method and Apparatus for Secure Data Representation Allowing Efficient Collection, Search and Retrieval | |
CN115688132A (zh) | 一种支持sql查询的数据库字段加密方法及装置 | |
Rezapour et al. | Efficient common prefix search on encrypted data as an additional service on the top of the storage providers |
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 | ||
LAPS | Lapse due to unpaid annual fee |