KR101772522B1 - DLP(Data Loss Prevention) 시스템에서의 보다 정밀한 유출 탐지를 위한 다중 컬럼 키워드 패턴 매칭 장치 및 방법 - Google Patents

DLP(Data Loss Prevention) 시스템에서의 보다 정밀한 유출 탐지를 위한 다중 컬럼 키워드 패턴 매칭 장치 및 방법 Download PDF

Info

Publication number
KR101772522B1
KR101772522B1 KR1020160155947A KR20160155947A KR101772522B1 KR 101772522 B1 KR101772522 B1 KR 101772522B1 KR 1020160155947 A KR1020160155947 A KR 1020160155947A KR 20160155947 A KR20160155947 A KR 20160155947A KR 101772522 B1 KR101772522 B1 KR 101772522B1
Authority
KR
South Korea
Prior art keywords
keyword
matching
matching result
column
pattern
Prior art date
Application number
KR1020160155947A
Other languages
English (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 KR1020160155947A priority Critical patent/KR101772522B1/ko
Priority to US15/361,922 priority patent/US20180144048A1/en
Application granted granted Critical
Publication of KR101772522B1 publication Critical patent/KR101772522B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F17/30657
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques
    • G06F17/2705

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명에 따른 다중 컬럼 키워드 패턴 매칭 장치는, 주어진 텍스트에 대하여 복수 개의 행들과 복수 개의 열들로 구성되는 다중 컬럼 키워드 패턴을 매칭하는 장치로서, 상기 주어진 텍스트를 스캔하면서 상기 다중 컬럼 키워드 패턴에 포함된 키워드들을 검색하여, 검색된 키워드에 해당하는 키워드 매칭 결과로서, 상기 검색된 키워드의 상기 주어진 텍스트에서의 텍스트 위치 정보를 포함하는 키워드 매칭 결과를 생성하는 다중 키워드 매칭부; 소정 범위로 정의된 매칭 결과 윈도우에 상기 생성된 키워드 매칭 결과를 추가하고, 상기 매칭 결과 윈도우에 포함된 기존 키워드 매칭 결과의 텍스트 위치와 상기 생성된 키워드 매칭 결과의 텍스트 위치의 차이가 상기 소정 범위를 초과하면, 상기 매칭 결과 윈도우에서 상기 기존 키워드 매칭 결과를 제거하는 매칭 결과 윈도우 업데이트부; 및 상기 매칭 결과 윈도우에 포함된 키워드 매칭 결과들의 매칭 횟수를 유지하는 매칭 상태 테이블에 대하여, 상기 추가된 키워드 매칭 결과의 매칭 횟수 및 상기 제거된 키워드 매칭 결과의 매칭 횟수를 업데이트하는 매칭 상태 테이블 업데이트부를 포함한다.

Description

DLP(Data Loss Prevention) 시스템에서의 보다 정밀한 유출 탐지를 위한 다중 컬럼 키워드 패턴 매칭 장치 및 방법{Apparatus and method for multiple column keyword pattern matching for precise detection of loss in Data Loss Prevention system}
본 발명은 키워드 패턴 매칭 장치 및 방법에 관한 것으로, 보다 상세하게는 개인정보보호 또는 정보유출방지를 위해 텍스트가 포함된 문서 파일에서 다중 컬럼 키워드 패턴을 매칭하는 장치 및 방법에 관한 것이다.
정보유출방지 시스템(Data Loss Prevention system)에서 개인정보보호 또는 정보유출방지를 위해서, 디스크 또는 메일에 저장되어 있거나 네트워크, USB, 또는 프린터로 전송되는 문서에서 텍스트를 추출하여, 키워드 패턴 매칭, 정규표현식 패턴 매칭, 문서 유사도 비교 등 여러 가지 문서 매칭 기법으로 개인정보 또는 기밀정보 등 중요 정보가 포함된 문서인지 검사하고 있다.
키워드 패턴 매칭은 사전에 개인정보 또는 기밀정보에 해당하는 중요 키워드 패턴 집합을 등록하고, 저장되어 있거나 전송되는 문서에서 이를 검색하여 일정 개수 이상의 키워드 패턴이 매칭되는지 검사하는 방법으로, 일반적으로 Aho-Corasick, Rabin-Karp 알고리즘 등과 같은 다중 키워드 패턴 매칭 기법을 사용하게 된다.
(주민등록번호, 전화번호, 이름) 등과 같이 여러 열과 행으로 구성된 테이블 형태의 키워드 패턴 집합에 대하여 텍스트를 검색하려면, 텍스트를 일반적인 다중 키워드 패턴 매칭 기법으로 검색하여 생성된 매칭 결과인 (행 ID, 열 ID, 텍스트 위치)의 전체 집합으로부터, 텍스트의 일정한 인접 범위 내에서 일정한 열의 개수 이상으로 키워드 패턴이 매칭되는 행 ID를 찾아야 한다. 이를 위해서는 행 ID를 기준으로 매칭 결과를 그룹핑하고, 그룹핑된 매칭 결과를 텍스트 위치를 기준으로 다시 정렬한 후 일정한 인접 범위 내에서 일정한 열의 개수 이상으로 키워드 패턴이 매칭되는 행 ID를 순차적으로 찾아야 하기 때문에, 대량의 키워드 패턴 집합일 경우 계산 시간과 비용이 크게 증가되는 문제점이 있다.
따라서 본 발명이 이루고자 하는 기술적 과제는, 여러 열과 행으로 구성된 테이블 형태의 키워드 패턴 집합에 대하여, 주어진 텍스트의 일정한 인접 범위 내에서 일정한 열의 개수 이상으로 키워드 패턴이 매칭되는 행을 효율적으로 찾을 수 있는 다중 컬럼 키워드 패턴 매칭 장치 및 방법을 제공하는 데 있다.
상기 기술적 과제를 해결하기 위한 본 발명에 따른 다중 컬럼 키워드 패턴 매칭 장치는, 주어진 텍스트에 대하여 복수 개의 행들과 복수 개의 열들로 구성되는 다중 컬럼 키워드 패턴을 매칭하는 장치로서, 상기 주어진 텍스트를 스캔하면서 상기 다중 컬럼 키워드 패턴에 포함된 키워드들을 검색하여, 검색된 키워드에 해당하는 키워드 매칭 결과로서, 상기 검색된 키워드의 상기 주어진 텍스트에서의 텍스트 위치 정보를 포함하는 키워드 매칭 결과를 생성하는 다중 키워드 매칭부; 소정 범위로 정의된 매칭 결과 윈도우에 상기 생성된 키워드 매칭 결과를 추가하고, 상기 매칭 결과 윈도우에 포함된 기존 키워드 매칭 결과의 텍스트 위치와 상기 생성된 키워드 매칭 결과의 텍스트 위치의 차이가 상기 소정 범위를 초과하면, 상기 매칭 결과 윈도우에서 상기 기존 키워드 매칭 결과를 제거하는 매칭 결과 윈도우 업데이트부; 및 상기 매칭 결과 윈도우에 포함된 키워드 매칭 결과들의 매칭 횟수를 유지하는 매칭 상태 테이블에 대하여, 상기 추가된 키워드 매칭 결과의 매칭 횟수 및 상기 제거된 키워드 매칭 결과의 매칭 횟수를 업데이트하는 매칭 상태 테이블 업데이트부를 포함한다.
상기 다중 컬럼 키워드 패턴은, 상기 복수 개의 행들 각각의 행 ID 및 상기 복수 개의 열들 각각의 열 ID를 포함하고, 상기 키워드 매칭 결과는, 상기 검색된 키워드의 행 ID, 열 ID 및 상기 텍스트 위치 정보를 포함할 수 있다.
상기 매칭 상태 테이블은, 상기 다중 컬럼 키워드 패턴의 각 (행 ID, 열 ID)에 대하여 상기 매칭 횟수를 유지할 수 있다.
상기 다중 컬럼 키워드 패턴 매칭 장치는, 상기 매칭 상태 테이블에서, 상기 매칭 결과 윈도우에 추가된 키워드 매칭 결과의 행 ID에 대하여, 매칭 횟수가 0보다 큰 열의 개수가 소정 개수 이상이면 해당 행 ID의 키워드 패턴이 매칭된 것으로 판단하는 키워드 패턴 매칭 판단부를 더 포함할 수 있다.
상기 매칭 상태 테이블 업데이트부는, 상기 매칭 결과 윈도우에 추가된 키워드 매칭 결과의 매칭 횟수를 1 증가시키고, 상기 매칭 결과 윈도우에서 제거된 키워드 매칭 결과의 매칭 횟수를 1 감소시킬 수 있다.
상기 기술적 과제를 해결하기 위한 본 발명에 따른 다중 컬럼 키워드 패턴 매칭 방법은, 주어진 텍스트에 대하여 복수 개의 행들과 복수 개의 열들로 구성되는 다중 컬럼 키워드 패턴을 매칭하는 방법으로서, 상기 주어진 텍스트를 스캔하면서 상기 다중 컬럼 키워드 패턴에 포함된 키워드들을 검색하여, 검색된 키워드에 해당하는 키워드 매칭 결과로서, 상기 검색된 키워드의 상기 주어진 텍스트에서의 텍스트 위치 정보를 포함하는 키워드 매칭 결과를 생성하는 단계; 소정 범위로 정의된 매칭 결과 윈도우에 상기 생성된 키워드 매칭 결과를 추가하고, 상기 매칭 결과 윈도우에 포함된 기존 키워드 매칭 결과의 텍스트 위치와 상기 생성된 키워드 매칭 결과의 텍스트 위치의 차이가 상기 소정 범위를 초과하면, 상기 매칭 결과 윈도우에서 상기 기존 키워드 매칭 결과를 제거하는 단계; 및 상기 매칭 결과 윈도우에 포함된 키워드 매칭 결과들의 매칭 횟수를 유지하는 매칭 상태 테이블에서, 상기 추가된 키워드 매칭 결과의 매칭 횟수 및 상기 제거된 키워드 매칭 결과의 매칭 횟수를 업데이트하는 단계를 포함한다.
상기 다중 컬럼 키워드 패턴은, 상기 복수 개의 행들 각각의 행 ID 및 상기 복수 개의 열들 각각의 열 ID를 포함하고, 상기 키워드 매칭 결과는, 상기 검색된 키워드의 행 ID, 열 ID 및 상기 텍스트 위치 정보를 포함할 수 있다.
상기 매칭 상태 테이블은, 상기 다중 컬럼 키워드 패턴의 각 행 ID마다 각 열 ID에 대하여 매칭 횟수를 유지할 수 있다.
상기 다중 컬럼 키워드 패턴 매칭 방법은, 상기 매칭 상태 테이블에서, 상기 매칭 결과 윈도우에 추가된 키워드 매칭 결과의 행 ID에 대하여, 매칭 횟수가 0보다 큰 열의 개수가 소정 개수 이상이면 해당 행 ID의 키워드 패턴이 매칭된 것으로 판단하는 단계를 더 포함할 수 있다.
상기 매칭 횟수를 업데이트하는 단계는, 상기 매칭 결과 윈도우에 추가된 키워드 매칭 결과의 매칭 횟수를 1 증가시키고, 상기 매칭 결과 윈도우에서 제거된 키워드 매칭 결과의 매칭 횟수를 1 감소시킬 수 있다.
상기된 본 발명에 의하면, 주어진 텍스트를 스캔하여 키워드 매칭 결과를 생성하면서, 인접 범위에 해당하는 소정 범위로 정의된 매칭 결과 윈도우와 상기 매칭 결과 윈도우에 포함된 키워드 매칭 결과의 매칭 횟수를 유지하는 매칭 상태 테이블을 이용함으로써, 주어진 텍스트의 일정한 인접 범위 내에서 일정한 열의 개수 이상으로 키워드 패턴이 매칭되는 행을 효율적으로 찾을 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 다중 컬럼 키워드 패턴 매칭 장치의 구성을 나타낸다.
도 2는 다중 컬럼 키워드 패턴의 일 예를 나타낸다.
도 3은 키워드 패턴을 검색할 텍스트의 일 예를 나타낸다.
도 4는 도 2의 다중 컬럼 키워드 패턴에 포함된 키워드들을 행 ID 및 열 ID를 기준으로 정렬한 결과를 나타낸다.
도 5는 매칭 상태 테이블의 일 예로서, 초기 상태의 매칭 상태 테이블을 나타낸다.
도 6a 내지 6f는 도 3의 텍스트 스트림을 스캔하면서 생성되는 키워드 매칭 결과와, 각 키워드 매칭 결과에 따른 매칭 결과 윈도우 및 매칭 상태 테이블의 업데이트 결과를 나타낸다.
도 7a 내지 7f는 도 6a 내지 6f의 매칭 상태 테이블을 테이블 형태로 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 따른 다중 컬럼 키워드 패턴 매칭 방법의 흐름도를 나타낸다.
이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 이하 설명 및 첨부된 도면들에서 실질적으로 동일한 구성요소들은 각각 동일한 부호들로 나타냄으로써 중복 설명을 생략하기로 한다. 또한 본 발명을 설명함에 있어 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그에 대한 상세한 설명은 생략하기로 한다.
도 1은 본 발명의 일 실시예에 따른 다중 컬럼 키워드 패턴 매칭 장치의 구성을 나타낸다.
도 1을 참조하면 본 실시예에 따른 다중 컬럼 키워드 패턴 매칭 장치는, 입력부(110), 다중 키워드 매칭부(120), 매칭 결과 윈도우 업데이트부(130), 매칭 상태 테이블 업데이트부(140), 키워드 패턴 매칭 판단부(150), 및 키워드 패턴 매칭 결과 출력부(160)를 포함한다.
입력부(110)는 여러 열과 행으로 구성된 테이블 형태의 키워드 패턴 집합인 다중 컬럼 키워드 패턴과, 키워드 패턴을 검색할 문서의 텍스트를 입력받는다. 또한 입력부(110)는 검색된 키워드끼리 인접한 것으로 보는 기준인 인접 범위(r)와, 키워드 패턴이 매칭되는 것으로 보는 기준인 열의 개수(이하, 매칭 개수)(c)를 입력받을 수 있다. 여기서, 인접 범위(r)와 매칭 개수(c)는 입력받는 대신에 디폴트로 특정 값으로 설정될 수 있으며, 매칭 개수(c)는 다중 컬럼 키워드 패턴의 전체 열의 개수로 설정되거나, 전체 열의 개수보다 작은 특정 값으로 설정될 수도 있다.
도 2는 다중 컬럼 키워드 패턴의 일 예를 나타낸다. 도 2에 도시된 바와 같이 다중 컬럼 키워드 패턴은 다수 개의 행들 및 다수 개의 열들(도시된 예에서는 3개의 열)로 이루어져 있으며, 행과 열의 각 조합마다 대응되는 키워드가 존재하고, 각 행마다 행 ID가, 각 열마다 열 ID가 부여된다.
도 3은 키워드 패턴을 검색할 텍스트의 일 예를 나타낸다. 텍스트는 도시된 바와 같이 텍스트 스트림 형태일 수 있으며, 텍스트 스트림의 각 문자마다 텍스트 위치가 부여될 수 있다.
이하 본 발명의 실시예에서는, 편의상 도 3의 텍스트에서 도 2의 다중 컬럼 키워드 패턴을 검색하고, 인접 범위(r)는 30, 매칭 개수(c)는 3으로 예를 들어 설명하기로 한다. 다시 말하면, 도 2의 다중 컬럼 키워드 패턴의 어떤 행에 대하여, 도 3의 텍스트에서 30문자 범위 내에서 3개 이상의 키워드 패턴이 매칭되면 해당 행의 키워드 패턴이 매칭되는 것으로 보는 것이다.
다시 도 1을 참조하면, 다중 키워드 매칭부(120)는 텍스트를 스캔하면서 다중 컬럼 키워드 패턴에 포함된 키워드들을 검색하여, 검색된 키워드에 해당하는 키워드 매칭 결과로서, 검색된 키워드의 주어진 텍스트에서의 텍스트 위치 정보를 포함하는 키워드 매칭 결과를 생성한다. 여기서 키워드 검색을 위해 Aho-Corasick, Rabin-Karp 알고리즘 등 공지된 다중 키워드 패턴 매칭 기법이 사용될 수 있다. 또한 다중 키워드 패턴 매칭 기법의 적용을 위해, 도 2의 다중 컬럼 키워드 패턴에 포함된 키워드들을 예컨대 도 4에 도시된 바와 같이 행 ID 및 열 ID를 기준으로 정렬하고, 각 키워드(즉, 행 ID와 열 ID의 각 조합)마다 패턴 ID를 부여할 수 있다. 패턴 ID로는 행 ID와 열 ID의 조합을 사용하거나, 행 ID와 열 ID의 룩업테이블 등을 사용할 수 있다.
다중 키워드 매칭부(120)는 주어진 텍스트의 끝까지 스캔하면서 키워드들을 검색할 수도 있고, 텍스트의 끝에 도달하기 전이라도 소정의 종료 조건(예컨대, 키워드 패턴이 매칭된 행이 일정 개수 이상인 경우)이 만족되면 키워드 검색을 종료할 수도 있다.
다중 키워드 매칭부(120)의 키워드 매칭 결과는 검색된 키워드의 행 ID, 열 ID 및 텍스트 위치 정보를 포함할 수 있다. 예컨대 새로 생성되는 키워드 매칭 결과 new 는 다음과 같은 형태일 수 있다.
new = (new.rowid, new.colid, new.pos)
여기서, new.rowid, new.colid 및 new.pos는 각각 새로 생성되는 키워드 매칭 결과의 행 ID, 열 ID 및 텍스트 위치를 의미한다.
예를 들어 도 3 및 도 4를 참조하면, 텍스트 위치 4의 eins가 검색되면 키워드 매칭 결과로 (3121, 1, 4)가 생성되고, 텍스트 위치 12의 seoul이 검색되면 키워드 매칭 결과로 (3121, 3, 12)와 (1007, 3, 12)가 생성되고, 텍스트 위치 21의 041005가 검색되면 키워드 매칭 결과로 (3121, 2, 21)이 생성되고, 텍스트 위치 31의 twkim이 검색되면 키워드 매칭 결과로 (1007, 1, 31)이 생성된다.
다시 도 1을 참조하면, 매칭 결과 윈도우 업데이트부(130)는 인접 범위(r)의 매칭 결과 윈도우를 정의하고, 매칭 결과 윈도우에 다중 키워드 매칭부(120)에서 새로 생성된 키워드 매칭 결과를 추가한다. 또한 매칭 결과 윈도우 업데이트부(130)는, 매칭 결과 윈도우에 포함된 기존 키워드 매칭 결과의 텍스트 위치와 새로 생성된 키워드 매칭 결과의 텍스트 위치가 인접 범위(r)를 초과하면, 매칭 결과 윈도우에서 기존 키워드 매칭 결과를 제거한다. 만일 기존 키워드 매칭 결과의 텍스트 위치가 새로 생성된 키워드 매칭 결과의 텍스트 위치와 인접 범위(r) 내라면 기존 키워드 매칭 결과는 매칭 결과 윈도우에 유지된다. 따라서 매칭 결과 윈도우는 새로 생성된 키워드 매칭 결과와 텍스트 위치의 차이가 인접 범위(r) 이내인 키워드 매칭 결과들의 집합이 된다.
기존 매칭 결과 윈도우를 Win_old = {matched}(여기서, matched는 기존 매칭 결과 윈도우에 포함된 키워드 매칭 결과)라 하고, 매칭 결과 윈도우에 새로 포함되는 키워드 매칭 결과를 Shift_in = {new}라 하면, 매칭 결과 윈도우에서 제거되는 키워드 매칭 결과는 Shift_out = {matched ∈ Win_old | new.pos - matched.pos > r}로 표현될 수 있고, 업데이트된 매칭 결과 윈도우는 Win_new = (W_old - Shift_out) ∪ Shift_in 으로 표현될 수 있다.
이와 같은 매칭 결과 윈도우를 이용하면, 전체 키워드 패턴 매칭 결과를 유지할 필요 없이 일정한 범위 내의 키워드 패턴 매칭 결과만을 유지하면 되므로 효율적이다.
매칭 상태 테이블 업데이트부(140)는 매칭 결과 윈도우에 포함된 키워드 매칭 결과들의 매칭 횟수를 유지하는 매칭 상태 테이블을 정의하고, 매칭 결과 윈도우 업데이트부(130)에서 매칭 결과 윈도우에 추가되는 키워드 매칭 결과의 매칭 횟수를 업데이트하고, 매칭 결과 윈도우에서 제거되는 키워드 매칭 결과의 매칭 횟수를 업데이트한다.
도 5는 매칭 상태 테이블의 일 예로서, 매칭 상태 테이블은 다중 컬럼 키워드 패턴의 각 (행 ID, 열 ID)의 키워드에 대한 매칭 결과 윈도우 내의 매칭 횟수를 유지하며, 도시된 바와 같이 초기 상태의 매칭 상태 테이블은 매칭 횟수들이 모두 0으로 설정된다.
구체적으로 매칭 상태 테이블 업데이트부(140)는, 매칭 결과 윈도우에 추가되는 키워드 매칭 결과의 매칭 횟수는 1 증가시키고, 매칭 결과 윈도우에서 제거되는 키워드 매칭 결과의 매칭 횟수는 1 감소시킨다. 매칭 상태 테이블을 통해 최신 상태의 매칭 결과 윈도우의 키워드 매칭 결과의 매칭 횟수가 유지되며, 매칭 횟수는 (행 ID, 열 ID)의 인덱스로 바로 접근할 수 있다.
매칭 상태 테이블은 S{(행ID, 열ID, 매칭 횟수)}로 표현할 수 있고, 매칭 상태 테이블을 업데이트하는 과정은 다음과 같이 표현할 수 있다.
S(new.rowid, new.colid) += 1
∀ matched ∈ Shift_out, S(matched.rowid, matched.colid) -= 1
도 6a 내지 6f는 도 3의 텍스트 스트림을 스캔하면서 생성되는 키워드 매칭 결과와, 각 키워드 매칭 결과에 따른 매칭 결과 윈도우 및 매칭 상태 테이블의 업데이트 결과를 나타내고, 도 7a 내지 7f는 도 6a 내지 6f의 매칭 상태 테이블을 테이블 형태로 나타낸 도면이다.
도 6a를 참조하면, 텍스트 위치 4의 eins가 검색되면 키워드 매칭 결과로 (3121, 1, 4)가 생성되어 매칭 결과 윈도우에 (3121, 1, 4)가 추가된다. 따라서 도 6a 및 7a에 도시된 바와 같이 매칭 상태 테이블에서 (행 ID, 열 ID)=(3121, 1)의 매칭 횟수가 1이 된다.
도 6b를 참조하면, 텍스트 위치 12의 seoul이 검색되면 키워드 매칭 결과로 (3121, 3, 12)가 생성되어 매칭 결과 윈도우에 (3121, 3, 12)가 추가된다. 따라서 도 6b 및 7b에 도시된 바와 같이 매칭 상태 테이블에서 (행 ID, 열 ID)=(3121, 3)의 매칭 횟수가 1이 된다. 또한 키워드 매칭 결과로 (1007, 3, 12)가 생성되어 매칭 결과 윈도우에 (1007, 3, 12)가 추가되고, 매칭 상태 테이블에서 (행 ID, 열 ID)=(1007, 3)의 매칭 횟수가 1이 된다.
도 6c를 참조하면, 텍스트 위치 21의 041005가 검색되면 키워드 매칭 결과로 (3121, 2, 21)이 생성되어 매칭 결과 윈도우에 (3121, 2, 21)이 추가된다. 따라서 도 6c 및 7c에 도시된 바와 같이 매칭 상태 테이블에서 (행 ID, 열 ID)=(3121, 2)의 매칭 횟수가 1이 된다.
도 6d를 참조하면, 텍스트 위치 31의 twkim이 검색되면 키워드 매칭 결과로 (1007, 1, 31)이 생성되어 매칭 결과 윈도우에 (1007, 1, 31)이 추가된다. 따라서 도 6d 및 7d에 도시된 바와 같이 매칭 상태 테이블에서 (행 ID, 열 ID)=(1007, 1)의 매칭 횟수가 1이 된다.
도 6e를 참조하면, 텍스트 위치 40의 seoul이 검색되면 키워드 매칭 결과로 (3121, 3, 40)이 생성되어 매칭 결과 윈도우에 (3121, 3, 40)이 추가된다. 즉, 새로 생성된 키워드 매칭 결과의 텍스트 위치가 40인데, 기존의 키워드 매칭 결과 중 (3121, 1, 4)의 텍스트 위치는 4이므로, 텍스트 위치의 차이는 40-4=36으로 인접 범위(r) 30을 초과하게 된다. 따라서 기존의 키워드 매칭 결과 중 (3121, 1, 4)는 매칭 결과 윈도우에서 제거된다. 도 6e 및 7e에 도시된 바와 같이, 매칭 결과 윈도우에 (3121, 3, 40)이 추가됨에 따라 (행 ID, 열 ID)=(3121, 3)의 매칭 횟수는 1 증가되어 2가 되고, 매칭 결과 윈도우에서 (3121, 1, 4)가 제거됨에 따라 (행 ID, 열 ID)=(3121, 1)의 매칭 횟수는 1 감소되어 0이 된다. 또한 키워드 매칭 결과로 (1007, 3, 40)이 생성되어 매칭 결과 윈도우에 (1007, 3, 40)이 추가되고, 매칭 상태 테이블에서 (행 ID, 열 ID)=(1007, 3)의 매칭 횟수가 1 증가되어 2가 된다.
도 6f를 참조하면, 텍스트 위치 49의 720917이 검색되면 키워드 매칭 결과로 (1007, 2, 49)가 생성되어 매칭 결과 윈도우에 (1007, 2, 49)가 추가된다. 즉, 새로 생성된 키워드 매칭 결과의 텍스트 위치가 49인데, 기존의 키워드 매칭 결과 중 (3121,3,12)와 (1007,3,12)의 텍스트 위치는 12이므로, 텍스트 위치의 차이는 49-12=37로 인접 범위(r) 30을 초과하게 된다. 따라서 기존의 키워드 매칭 결과 중 (3121,3,12)와 (1007,3,12)는 매칭 결과 윈도우에서 제거된다.
도 6f 및 7f에 도시된 바와 같이, 매칭 결과 윈도우에 (1007, 2, 49)가 추가됨에 따라 (행 ID, 열 ID)=(1007, 2)의 매칭 횟수는 1 증가되어 2가 되고, 매칭 결과 윈도우에서 (3121,3,12) 및 (1007,3,12)가 제거됨에 따라 (행 ID, 열 ID)=(3121,3) 및 (행 ID, 열 ID)=(1007,3)의 매칭 횟수는 각각 1 감소되어 모두 1이 된다.
다시 도 1을 참조하면, 키워드 패턴 매칭 판단부(150)는, 매칭 상태 테이블 업데이트부(140)로부터의 매칭 상태 테이블에서, 매칭 결과 윈도우에 추가되는 키워드 매칭 결과의 행 ID에 대하여, 매칭 횟수가 0보다 큰 열의 개수가 매칭 개수(c) 이상이면 해당 행의 키워드 패턴이 매칭된 것으로 판단한다. 매칭 결과 윈도우에 추가되는 키워드 매칭 결과의 행 ID인 new.rowid 에 대하여, 키워드 패턴이 매칭된 것으로 판단하는 과정은 다음과 같이 표현할 수 있다.
|{colid | S(new.rowid, colid) > 0}| >= c 이면 행 ID new.rowid의 키워드 패턴 매칭
예컨대 도 6c 및 7c를 참조하면, 매칭 결과 윈도우에 추가되는 키워드 매칭 결과 (3121, 2, 21)의 행 ID는 3121이고, 매칭 상태 테이블에서 행 ID 3121에 대하여 매칭 횟수가 0보다 큰 열의 개수는 3으로서 매칭 개수(c)=3 이상이므로, 행 ID 3121의 키워드 패턴은 매칭된 것으로 판단된다. 즉, 행 ID 3121의 키워드 패턴 (eins, 0401005, seoul)은 인접 범위(r) 30문자 이내에서 3개 이상이 매칭된 것을 확인할 수 있다.
또한 도 6f 및 7f를 참조하면, 매칭 결과 윈도우에 추가되는 키워드 매칭 결과 (1007, 2, 49)의 행 ID는 1007이고, 매칭 상태 테이블에서 행 ID 1007에 대하여 매칭 횟수가 0보다 큰 열의 개수는 3으로서 매칭 개수(c)=3 이상이므로, 행 ID 1007의 키워드 패턴은 매칭된 것으로 판단된다. 즉, 행 ID 1007의 키워드 패턴 (twkim, 720917, seoul)은 인접 범위(r) 30문자 이내에서 3개 이상이 매칭된 것을 확인할 수 있다.
키워드 패턴 매칭 결과 출력부(160)는 키워드 패턴 매칭 판단부(150)를 통해 확인된 키워드 패턴 매칭 결과를 출력한다. 여기서 키워드 패턴 매칭 결과는, 키워드 패턴이 매칭된 행 ID, 키워드 패턴이 매칭된 행의 개수, 매칭된 키워드 패턴에 해당하는 키워드 조합 등이 될 수 있다.
상술한 다중 키워드 매칭부(120), 매칭 결과 윈도우 업데이트부(130), 매칭 상태 테이블 업데이트부(140), 키워드 패턴 매칭 판단부(150), 및 키워드 패턴 매칭 결과 출력부(160)의 동작은, 주어진 텍스트의 끝에 도달할 때까지 수행될 수도 있고, 텍스트의 끝에 도달하기 전이라도 소정의 종료 조건(예컨대, 키워드 패턴이 매칭된 행이 일정 개수 이상인 경우)이 만족되면 종료될 수도 있다. 후자의 경우, 키워드 패턴 매칭 결과 출력부(160)는 종료 조건이 만족될 때까지 확인된 키워드 패턴 매칭 결과를 출력할 수 있다.
도 8은 본 발명의 일 실시예에 따른 다중 컬럼 키워드 패턴 매칭 방법의 흐름도를 나타낸다. 본 실시예에 따른 다중 컬럼 키워드 패턴 매칭 방법은 전술한 다중 컬럼 키워드 패턴 매칭 장치에서 처리되는 단계들로 이루어진다. 따라서 이하 생략된 내용이라 하더라도 다중 컬럼 키워드 패턴 매칭 장치에 관하여 이상에서 기술된 내용은 본 실시예에 따른 다중 컬럼 키워드 패턴 매칭 방법에도 적용된다.
820단계에서, 다중 키워드 매칭부(120)는 주어진 텍스트를 스캔하면서 다중 컬럼 키워드 패턴에 포함된 키워드들을 검색한다.
823단계에서 키워드가 매칭되면, 825단계에서 다중 키워드 매칭부(120)는 검색된 키워드의 행 ID, 열 ID 및 텍스트 위치 정보를 포함하는 키워드 매칭 결과를 생성한다.
830단계에서 매칭 결과 윈도우 업데이트부(130)는 825단계에서 생성된 키워드 매칭 결과를 매칭 결과 윈도우에 추가한다.
833단계에서 매칭 결과 윈도우 업데이트부(130)는 825단계에서 생성된 키워드 매칭 결과의 텍스트 위치와, 매칭 결과 윈도우에 포함된 기존 키워드 매칭 결과의 텍스트 위치의 차이가 인접 범위(r)를 초과하는지 체크하고, 그렇다면 835단계에서 기존 키워드 매칭 결과를 매칭 결과 윈도우에서 제거한다.
840단계에서 매칭 상태 테이블 업데이트부(140)는 매칭 상태 테이블에서, 매칭 결과 윈도우에 추가된 키워드 매칭 결과의 매칭 횟수를 증가시킨다.
843단계에서, 매칭 상태 테이블 업데이트부(140)는 매칭 상태 테이블에서, 매칭 결과 윈도우에서 제거되는 키워드 매칭 결과의 매칭 횟수를 감소시킨다.
850단계에서, 키워드 패턴 매칭 판단부(150)는, 매칭 상태 테이블에서, 매칭 결과 윈도우에 추가되는 키워드 매칭 결과의 행 ID에 대하여, 매칭 횟수가 0보다 큰 열의 개수가 매칭 개수(c) 이상인지 체크하고, 그렇다면 853단계에서 해당 행의 키워드 패턴이 매칭된 것으로 판단한다.
860단계에서 키워드 패턴 매칭 결과 출력부(160)는 소정의 종료 조건(예컨대 주어진 텍스트의 끝에 도달하였거나, 키워드 패턴이 매칭된 행이 일정 개수 이상인 경우)을 만족하면, 워드 패턴이 매칭된 행 ID, 키워드 패턴이 매칭된 행의 개수, 매칭된 키워드 패턴에 해당하는 키워드 조합 등 키워드 패턴 매칭 결과를 출력한다.
본 발명의 실시예들에 따른 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다. 소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다. 여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
본 발명의 실시예들은 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 실시예는 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩 업 테이블(look-up table) 등과 같은 집적 회로 구성들을 채용할 수 있다. 본 발명에의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 실시예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 실시예는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. "매커니즘", "요소", "수단", "구성"과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
실시예에서 설명하는 특정 실행들은 일 실시예들로서, 어떠한 방법으로도 실시 예의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, "필수적인", "중요하게" 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (10)

  1. 주어진 텍스트에 대하여 복수 개의 행들과 복수 개의 열들로 구성되는 다중 컬럼 키워드 패턴을 매칭하는 장치로서,
    상기 주어진 텍스트를 스캔하면서 상기 다중 컬럼 키워드 패턴에 포함된 키워드들을 검색하여, 검색된 키워드에 해당하는 키워드 매칭 결과로서, 상기 검색된 키워드의 상기 주어진 텍스트에서의 텍스트 위치 정보를 포함하는 키워드 매칭 결과를 생성하는 다중 키워드 매칭부;
    소정 범위로 정의된 매칭 결과 윈도우에 상기 생성된 키워드 매칭 결과를 추가하고, 상기 매칭 결과 윈도우에 포함된 기존 키워드 매칭 결과의 텍스트 위치와 상기 생성된 키워드 매칭 결과의 텍스트 위치의 차이가 상기 소정 범위를 초과하면, 상기 매칭 결과 윈도우에서 상기 기존 키워드 매칭 결과를 제거하는 매칭 결과 윈도우 업데이트부; 및
    상기 매칭 결과 윈도우에 포함된 키워드 매칭 결과들의 매칭 횟수를 유지하는 매칭 상태 테이블에 대하여, 상기 추가된 키워드 매칭 결과의 매칭 횟수 및 상기 제거된 키워드 매칭 결과의 매칭 횟수를 업데이트하는 매칭 상태 테이블 업데이트부를 포함하는 다중 컬럼 키워드 패턴 매칭 장치.
  2. 제1항에 있어서,
    상기 다중 컬럼 키워드 패턴은, 상기 복수 개의 행들 각각의 행 ID 및 상기 복수 개의 열들 각각의 열 ID를 포함하고,
    상기 키워드 매칭 결과는, 상기 검색된 키워드의 행 ID, 열 ID 및 상기 텍스트 위치 정보를 포함하는 다중 컬럼 키워드 패턴 매칭 장치.
  3. 제2항에 있어서,
    상기 매칭 상태 테이블은, 상기 다중 컬럼 키워드 패턴의 각 (행 ID, 열 ID)에 대하여 상기 매칭 횟수를 유지하는 다중 컬럼 키워드 패턴 매칭 장치.
  4. 제3항에 있어서,
    상기 매칭 상태 테이블에서, 상기 매칭 결과 윈도우에 추가된 키워드 매칭 결과의 행 ID에 대하여, 매칭 횟수가 0보다 큰 열의 개수가 소정 개수 이상이면 해당 행 ID의 키워드 패턴이 매칭된 것으로 판단하는 키워드 패턴 매칭 판단부를 더 포함하는 다중 컬럼 키워드 패턴 매칭 장치.
  5. 제1항에 있어서,
    상기 매칭 상태 테이블 업데이트부는, 상기 매칭 결과 윈도우에 추가된 키워드 매칭 결과의 매칭 횟수를 1 증가시키고, 상기 매칭 결과 윈도우에서 제거된 키워드 매칭 결과의 매칭 횟수를 1 감소시키는 다중 컬럼 키워드 패턴 매칭 장치.
  6. 주어진 텍스트에 대하여 복수 개의 행들과 복수 개의 열들로 구성되는 다중 컬럼 키워드 패턴을 매칭하는 방법으로서,
    상기 주어진 텍스트를 스캔하면서 상기 다중 컬럼 키워드 패턴에 포함된 키워드들을 검색하여, 검색된 키워드에 해당하는 키워드 매칭 결과로서, 상기 검색된 키워드의 상기 주어진 텍스트에서의 텍스트 위치 정보를 포함하는 키워드 매칭 결과를 생성하는 단계;
    소정 범위로 정의된 매칭 결과 윈도우에 상기 생성된 키워드 매칭 결과를 추가하고, 상기 매칭 결과 윈도우에 포함된 기존 키워드 매칭 결과의 텍스트 위치와 상기 생성된 키워드 매칭 결과의 텍스트 위치의 차이가 상기 소정 범위를 초과하면, 상기 매칭 결과 윈도우에서 상기 기존 키워드 매칭 결과를 제거하는 단계; 및
    상기 매칭 결과 윈도우에 포함된 키워드 매칭 결과들의 매칭 횟수를 유지하는 매칭 상태 테이블에서, 상기 추가된 키워드 매칭 결과의 매칭 횟수 및 상기 제거된 키워드 매칭 결과의 매칭 횟수를 업데이트하는 단계를 포함하는 다중 컬럼 키워드 패턴 매칭 방법.
  7. 제6항에 있어서,
    상기 다중 컬럼 키워드 패턴은, 상기 복수 개의 행들 각각의 행 ID 및 상기 복수 개의 열들 각각의 열 ID를 포함하고,
    상기 키워드 매칭 결과는, 상기 검색된 키워드의 행 ID, 열 ID 및 상기 텍스트 위치 정보를 포함하는 다중 컬럼 키워드 패턴 매칭 방법.
  8. 제7항에 있어서,
    상기 매칭 상태 테이블은, 상기 다중 컬럼 키워드 패턴의 각 행 ID마다 각 열 ID에 대하여 매칭 횟수를 유지하는 다중 컬럼 키워드 패턴 매칭 방법.
  9. 제8항에 있어서,
    상기 매칭 상태 테이블에서, 상기 매칭 결과 윈도우에 추가된 키워드 매칭 결과의 행 ID에 대하여, 매칭 횟수가 0보다 큰 열의 개수가 소정 개수 이상이면 해당 행 ID의 키워드 패턴이 매칭된 것으로 판단하는 단계를 더 포함하는 다중 컬럼 키워드 패턴 매칭 방법.
  10. 제6항에 있어서,
    상기 매칭 횟수를 업데이트하는 단계는, 상기 매칭 결과 윈도우에 추가된 키워드 매칭 결과의 매칭 횟수를 1 증가시키고, 상기 매칭 결과 윈도우에서 제거된 키워드 매칭 결과의 매칭 횟수를 1 감소시키는 다중 컬럼 키워드 패턴 매칭 방법.
KR1020160155947A 2016-11-22 2016-11-22 DLP(Data Loss Prevention) 시스템에서의 보다 정밀한 유출 탐지를 위한 다중 컬럼 키워드 패턴 매칭 장치 및 방법 KR101772522B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160155947A KR101772522B1 (ko) 2016-11-22 2016-11-22 DLP(Data Loss Prevention) 시스템에서의 보다 정밀한 유출 탐지를 위한 다중 컬럼 키워드 패턴 매칭 장치 및 방법
US15/361,922 US20180144048A1 (en) 2016-11-22 2016-11-28 Apparatus and method for matching multiplecolumn keyword patterns

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160155947A KR101772522B1 (ko) 2016-11-22 2016-11-22 DLP(Data Loss Prevention) 시스템에서의 보다 정밀한 유출 탐지를 위한 다중 컬럼 키워드 패턴 매칭 장치 및 방법

Publications (1)

Publication Number Publication Date
KR101772522B1 true KR101772522B1 (ko) 2017-08-31

Family

ID=59760925

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160155947A KR101772522B1 (ko) 2016-11-22 2016-11-22 DLP(Data Loss Prevention) 시스템에서의 보다 정밀한 유출 탐지를 위한 다중 컬럼 키워드 패턴 매칭 장치 및 방법

Country Status (2)

Country Link
US (1) US20180144048A1 (ko)
KR (1) KR101772522B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110825925A (zh) * 2019-11-04 2020-02-21 沈华伟 一种快速进行多字符串匹配的方法
CN113673213A (zh) * 2021-08-25 2021-11-19 北京智通云联科技有限公司 基于模板的表格信息抽取方法及系统

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10831843B2 (en) * 2017-11-01 2020-11-10 International Business Machines Corporation Grouping aggregation with filtering aggregation query processing

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110825925A (zh) * 2019-11-04 2020-02-21 沈华伟 一种快速进行多字符串匹配的方法
CN110825925B (zh) * 2019-11-04 2023-05-26 沈华伟 一种快速进行多字符串匹配的方法
CN113673213A (zh) * 2021-08-25 2021-11-19 北京智通云联科技有限公司 基于模板的表格信息抽取方法及系统
CN113673213B (zh) * 2021-08-25 2023-11-07 北京智通云联科技有限公司 基于模板的表格信息抽取方法及系统

Also Published As

Publication number Publication date
US20180144048A1 (en) 2018-05-24

Similar Documents

Publication Publication Date Title
US7110540B2 (en) Multi-pass hierarchical pattern matching
US7941435B2 (en) Substring search algorithm optimized for hardware acceleration
US20070088955A1 (en) Apparatus and method for high speed detection of undesirable data content
US9418238B2 (en) Search system, search method of search system, and information processing device
CN111971931B (zh) 在区块链网络中验证交易的方法以及构成该网络的节点
KR101772522B1 (ko) DLP(Data Loss Prevention) 시스템에서의 보다 정밀한 유출 탐지를 위한 다중 컬럼 키워드 패턴 매칭 장치 및 방법
US20070179935A1 (en) Apparatus and method for efficient data pre-filtering in a data stream
US11080398B2 (en) Identifying signatures for data sets
US20080097983A1 (en) Fuzzy database matching
US10983718B2 (en) Method, device and computer program product for data backup
US20170277811A1 (en) Efficient conditional state mapping in a pattern matching automaton
CN109583201B (zh) 识别恶意中间语言文件的系统和方法
CN111767364A (zh) 数据处理方法、装置和设备
KR101765211B1 (ko) 랜섬웨어 예방 시스템 및 방법
US8495733B1 (en) Content fingerprinting using context offset sequences
US10339096B2 (en) Efficient pattern matching
US20130232341A1 (en) System and method for initializing tokens in a dictionary encryption scheme
CN111753312B (zh) 数据处理方法、装置、设备和系统
US7574742B2 (en) System and method of string matching for uniform data classification
KR20210028576A (ko) 네트워크 키 값 인덱싱 설계
US10846598B2 (en) Pattern matching
KR101327865B1 (ko) 악성코드에 감염된 홈페이지 탐지 장치 및 방법
CN110941744A (zh) 一种数据列表添加器及添加方法
JP6194180B2 (ja) 文章マスク装置及び文章マスクプログラム
CN114584362A (zh) 一种防止unicode编码绕过的检测方法和装置

Legal Events

Date Code Title Description
GRNT Written decision to grant