KR20220039193A - File history tracking system in collaboration tools through steganography and method of the same - Google Patents

File history tracking system in collaboration tools through steganography and method of the same Download PDF

Info

Publication number
KR20220039193A
KR20220039193A KR1020200122000A KR20200122000A KR20220039193A KR 20220039193 A KR20220039193 A KR 20220039193A KR 1020200122000 A KR1020200122000 A KR 1020200122000A KR 20200122000 A KR20200122000 A KR 20200122000A KR 20220039193 A KR20220039193 A KR 20220039193A
Authority
KR
South Korea
Prior art keywords
file
tracking
steganography
history tracking
data
Prior art date
Application number
KR1020200122000A
Other languages
Korean (ko)
Other versions
KR102425613B1 (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 KR1020200122000A priority Critical patent/KR102425613B1/en
Publication of KR20220039193A publication Critical patent/KR20220039193A/en
Application granted granted Critical
Publication of KR102425613B1 publication Critical patent/KR102425613B1/en

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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • 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/22Indexing; Data structures therefor; Storage structures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Abstract

Disclosed are file history tracking system in collaboration tools using steganography, which implements efficient collaboration and easy security accident handling and includes a version management function to increase work efficiency when files are operated through collaboration tools, and a method thereof. According to one embodiment of the present invention, the file history tracking system comprises: a tracking ID generation module configured to generate a file history tracking ID for a file generated from an original file through a collaboration tool; a steganography insertion module configured to insert file history tracking data including the file history tracking ID into the file by using steganography; and a tracking ID database in which the file history tracking data is stored.

Description

스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템 및 그 방법{File history tracking system in collaboration tools through steganography and method of the same}File history tracking system in collaboration tools through steganography and method of the same}

본 발명은 스테가노그라피(Steganography)를 이용한 협업 도구에서의 파일 이력 추적 시스템 및 그 방법에 관한 것이다.The present invention relates to a file history tracking system and method in a collaboration tool using steganography.

개인용 메신저나, 기업용 메신저 혹은 협업을 위해 파일을 주고받는 다양한 시스템에서 파일 보안을 위해 워터마크를 이용하고 있다. 예를 들어, 문서나 디지털 콘텐츠 등의 협업을 위해 사용자들 간에 파일을 전달할 때, 문서 배경에 전달받는 사람의 이름을 기입하거나, 녹음시 전달받는 사람의 이름을 함께 녹음하는 등의 워터마킹을 하는 경우가 있다.Watermarks are used for file security in personal messengers, corporate messengers, or various systems that exchange files for collaboration. For example, when transferring files between users for collaboration of documents or digital content, watermarking such as writing the name of the recipient in the background of the document or recording the name of the recipient when recording There are cases.

그러나, 이러한 종래의 워터마크를 이용한 파일 보안 방식은 파일 송신자가 워터마크를 수동적으로 실행해야 하는 불편함이 있으며, 파일 수신자 측에서도 워터마크로 인해 업무 효율이 저하되는 문제가 있다. 또한, 기존의 워터마킹 방식은 인간이 인식할 수 있는 형태로 제공되고, 워터마크의 위치를 이해할 수 있어 사용자가 워터마크를 제거하려고 하면 높은 확률로 무력화에 성공할 수 있는 문제가 존재한다. 더불어, 종래의 워터마크 방식의 파일 보안 관리 기술은 파일 버전 관리 기능을 제공하지 않아 업무 효율성에 있어서 한계가 있다.However, this conventional file security method using a watermark is inconvenient in that the file sender has to manually execute the watermark, and there is a problem in that work efficiency is lowered due to the watermark on the file receiver side as well. In addition, there is a problem that the existing watermarking method is provided in a form that can be recognized by humans and the location of the watermark can be understood. In addition, the conventional watermark-type file security management technology does not provide a file version management function, so there is a limit in work efficiency.

본 발명은 효율적인 협업과 쉬운 보안 사고 수습이 가능하며, 버전 관리 기능을 제공할 수 있어, 협업 도구를 거쳐 파일을 작업할 때의 업무 효율성을 높일 수 있는 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템 및 그 방법을 제공하기 위한 것이다.The present invention enables efficient collaboration and easy security incident management, and can provide a version management function, so that the file history in a collaboration tool using steganography can increase work efficiency when working with files through the collaboration tool To provide a tracking system and method therefor.

또한, 본 발명은 파일 송신자 측에서는 매번 파일을 보낼 때 워터마크 삽입을 위해 시간을 낭비하지 않아도 되며, 파일 수신자 측에서는 워터마크로 인해 작업을 방해받지 않을 수 있는 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템 및 그 방법을 제공하기 위한 것이다.In addition, according to the present invention, the file sender does not have to waste time to insert a watermark when sending a file every time, and on the file receiver side, the file history tracking in a collaboration tool using steganography can not be interrupted by the watermark. To provide a system and a method therefor.

또한, 본 발명은 사용자가 인식하기 어려운 형태로 파일 이력 추적이 수행되어 워터마크 훼손 시도와 같은 문제가 발생하지 않는 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템 및 그 방법을 제공하기 위한 것이다.In addition, the present invention is to provide a file history tracking system and method in a collaboration tool using steganography that does not cause problems such as watermark damage attempts because file history tracking is performed in a form that is difficult for a user to recognize. .

또한, 본 발명은 파일 유출과 같은 보안 사고 발생 시, 유출 파일의 스테가노그라피 분석 및 유향 비순환 그래프 데이터 분석을 통해 어느 경로에서 파일 유출이 발생한 것인지를 효과적으로 탐지할 수 있는 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템 및 그 방법을 제공하기 위한 것이다.In addition, the present invention is a collaboration tool using steganography that can effectively detect in which path the file leak occurred through steganography analysis of the leaked file and directed acyclic graph data analysis when a security incident such as a file leak occurs. To provide a file history tracking system and method in

본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템은: 원본 파일로부터 협업 도구를 거쳐 생성되는 파일에 대해 파일 이력 추적 ID를 생성하도록 구성되는 추적 ID 생성 모듈; 상기 파일에 스테가노그라피를 이용하여 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 삽입하도록 구성되는 스테가노그라피 삽입 모듈; 및 상기 파일 이력 추적 데이터가 저장되는 추적 ID 데이터베이스를 포함한다.A file history tracking system in a collaboration tool using steganography according to an embodiment of the present invention includes: a tracking ID generation module configured to generate a file history tracking ID for a file generated from an original file through the collaboration tool; a steganography insertion module configured to insert file history tracking data including a file history tracking ID into the file using steganography; and a tracking ID database in which the file history tracking data is stored.

상기 추적 ID 생성 모듈은: 상기 파일에 대해 상기 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 생성하도록 구성되는 파일 이력 추적 데이터 생성부; 상기 파일 이력 추적 ID를 기반으로 상기 파일에 대해 유향 비순환 그래프 데이터를 생성하도록 구성되는 유향 비순환 데이터 생성부; 및 상기 파일 이력 추적 ID 및 상기 유향 비순환 그래프 데이터를 상기 추적 ID 데이터베이스에 저장하도록 구성되는 데이터 저장부를 포함할 수 있다.The tracking ID generation module may include: a file history tracking data generator configured to generate file history tracking data including the file history tracking ID for the file; a directed acyclic data generation unit configured to generate directed acyclic graph data for the file based on the file history tracking ID; and a data storage unit configured to store the file history tracking ID and the directed acyclic graph data in the tracking ID database.

상기 유향 비순환 그래프 데이터는 상기 원본 파일로부터 상기 파일까지의 방향성 유래 경로에 관한 데이터를 포함할 수 있다.The directed acyclic graph data may include data on a direction-derived path from the original file to the file.

상기 파일 이력 추적 데이터는 상기 파일 이력 추적 ID, 파일 원본 해쉬 데이터, 현재 버전 파일 해쉬 데이터, 사용자 ID, 현재 버전 저장 시간 및 현재 버전 최종 열람 시간을 포함할 수 있다.The file history tracking data may include the file history tracking ID, file original hash data, current version file hash data, user ID, current version storage time, and current version last view time.

본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템은: 파일 이력 추적의 대상인 추적 대상 파일로부터 스테가노그라피 분석에 의해 보안 검사를 수행하도록 구성되는 스테가노그라피 추적 모듈을 더 포함할 수 있다.A file history tracking system in a collaboration tool using steganography according to an embodiment of the present invention includes: a steganography tracking module configured to perform a security check by steganography analysis from a tracking target file that is a target of file history tracking may include more.

상기 스테가노그라피 추적 모듈은: 스테가노그라피 분석에 의해 상기 추적 대상 파일로부터 파일 이력 추적 ID와 현재 버전 파일 해쉬 데이터를 추출하도록 구성되는 스테가노그라피 추출부; 상기 파일 이력 추적 ID를 상기 추적 ID 데이터베이스에 조회하여 상기 추적 대상 파일과 관련된 제1 파일을 식별하도록 구성되는 제1 식별부; 및 상기 유향 비순환 그래프 데이터를 기반으로 상기 제1 파일의 상위 경로에 해당하는 제2 파일을 식별하도록 구성되는 제2 식별부를 포함할 수 있다.The steganography tracking module includes: a steganography extraction unit configured to extract a file history tracking ID and current version file hash data from the tracking target file by steganography analysis; a first identification unit configured to query the file history tracking ID in the tracking ID database to identify a first file related to the tracking target file; and a second identification unit configured to identify a second file corresponding to an upper path of the first file based on the directed acyclic graph data.

본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템은: 상기 파일의 제1 파일 형식 및 상기 추적 대상 파일의 제2 파일 형식을 분석하도록 구성되는 파일 형식 분석 모듈을 더 포함할 수 있다.A file history tracking system in a collaboration tool using steganography according to an embodiment of the present invention further includes: a file format analysis module configured to analyze a first file format of the file and a second file format of the file to be tracked may include

상기 스테가노그라피 삽입 모듈은 상기 제1 파일 형식에 따라 스테가노그라피를 기반으로 상기 파일에 파일 이력 추적 ID를 삽입하도록 구성될 수 있다. 상기 스테가노그라피 추출부는 상기 제2 파일 형식에 따라 상기 추적 대상 파일로부터 파일 이력 추적 ID를 추출하도록 구성될 수 있다.The steganography insertion module may be configured to insert a file history tracking ID into the file based on steganography according to the first file format. The steganography extraction unit may be configured to extract a file history tracking ID from the tracking target file according to the second file format.

본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법은: 추적 ID 생성 모듈에 의해, 원본 파일로부터 협업 도구를 거쳐 생성되는 파일에 대해 파일 이력 추적 ID를 생성하는 단계; 스테가노그라피 삽입 모듈에 의해, 상기 파일에 스테가노그라피를 이용하여 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 삽입하는 단계; 및 상기 파일 이력 추적 데이터를 추적 ID 데이터베이스에 저장하는 단계를 포함한다.A file history tracking method in a collaboration tool using steganography according to an embodiment of the present invention includes: generating, by a tracking ID generation module, a file history tracking ID for a file generated from an original file through the collaboration tool; inserting, by the steganography insertion module, file history tracking data including a file history tracking ID into the file using steganography; and storing the file history tracking data in a tracking ID database.

상기 파일 이력 추적 ID를 생성하는 단계는: 상기 파일에 대해 상기 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 생성하는 단계; 상기 파일 이력 추적 ID를 기반으로 상기 파일에 대해 유향 비순환 그래프 데이터를 생성하는 단계; 및 상기 유향 비순환 그래프 데이터를 상기 추적 ID 데이터베이스에 저장하는 단계를 포함할 수 있다.The generating of the file history tracking ID may include: generating file history tracking data including the file history tracking ID for the file; generating directed acyclic graph data for the file based on the file history tracking ID; and storing the directed acyclic graph data in the tracking ID database.

본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법은: 스테가노그라피 추적 모듈에 의해, 파일 이력 추적의 대상인 추적 대상 파일로부터 스테가노그라피 분석에 의해 보안 검사를 수행하는 단계를 더 포함할 수 있다.A file history tracking method in a collaboration tool using steganography according to an embodiment of the present invention is: by a steganography tracking module, performing a security check by steganography analysis from a tracking target file that is a target of file history tracking It may include further steps.

상기 스테가노그라피 분석에 의해 보안 검사를 수행하는 단계는: 스테가노그라피 분석에 의해 상기 추적 대상 파일로부터 파일 이력 추적 ID와 현재 버전 파일 해쉬 데이터를 추출하는 단계; 상기 파일 이력 추적 ID를 상기 추적 ID 데이터베이스에 조회하여 상기 추적 대상 파일과 관련된 제1 파일을 식별하는 단계; 및 상기 유향 비순환 그래프 데이터를 기반으로 상기 제1 파일의 상위 경로에 해당하는 제2 파일을 식별하는 단계를 포함할 수 있다.The step of performing the security check by steganography analysis includes: extracting a file history tracking ID and current version file hash data from the tracking target file by steganography analysis; querying the file history tracking ID in the tracking ID database to identify a first file related to the tracking target file; and identifying a second file corresponding to an upper path of the first file based on the directed acyclic graph data.

본 발명의 실시예에 따르면, 상기 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법을 실행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체가 제공된다.According to an embodiment of the present invention, there is provided a computer-readable recording medium in which a program for executing the file history tracking method in the collaboration tool using the steganography is recorded.

본 발명의 실시예에 의하면, 효율적인 협업과 쉬운 보안 사고 수습이 가능하며, 버전 관리 기능을 제공할 수 있어, 협업 도구를 거쳐 파일을 작업할 때의 업무 효율성을 높일 수 있는 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템 및 그 방법이 제공된다.According to an embodiment of the present invention, efficient collaboration and easy security incident management are possible, and a version management function can be provided, so collaboration using steganography can increase work efficiency when working with files through a collaboration tool. A system and method for tracking file history in a tool are provided.

또한, 본 발명의 실시예에 의하면, 파일 송신자 측에서는 매번 파일을 보낼 때 워터마크 삽입을 위해 시간을 낭비하지 않아도 되며, 파일 수신자 측에서는 워터마크로 인해 작업을 방해받지 않을 수 있는 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템 및 그 방법이 제공된다.In addition, according to an embodiment of the present invention, the file sender does not have to waste time to insert a watermark when sending a file every time, and the file receiver side is a collaboration tool using steganography that can not interfere with work due to the watermark A file history tracking system and method are provided.

또한, 본 발명의 실시예에 의하면, 사용자가 인식하기 어려운 형태로 파일 이력 추적이 수행되어 워터마크 훼손 시도와 같은 문제가 발생하지 않는 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템 및 그 방법이 제공된다.In addition, according to an embodiment of the present invention, file history tracking system and method in a collaboration tool using steganography that does not cause problems such as watermark damage attempts because file history tracking is performed in a form that is difficult for a user to recognize this is provided

또한, 본 발명의 실시예에 의하면, 파일 유출과 같은 보안 사고 발생 시, 유출 파일의 스테가노그라피 분석 및 유향 비순환 그래프 데이터 분석을 통해 어느 경로에서 파일 유출이 발생한 것인지를 효과적으로 탐지할 수 있다.In addition, according to an embodiment of the present invention, when a security incident such as a file leak occurs, it is possible to effectively detect in which path the file leak occurs through steganography analysis of the leaked file and directed acyclic graph data analysis.

도 1은 본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템의 구성도이다.
도 2는 본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템을 구성하는 추적 ID 생성 모듈의 구성도이다.
도 3은 본 발명의 실시예에 따라 생성된 파일 이력 추적 데이터의 예시도이다.
도 4는 본 발명의 실시예에 따라 생성되는 유향 비순환 그래프 데이터의 개념도이다.
도 5는 본 발명의 실시예에 따라 생성되는 유향 비순환 그래프 데이터의 예시도이다.
도 6은 본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템을 구성하는 스테가노그라피 추적 모듈의 구성도이다.
도 7은 본 발명의 실시예에 따라 추적 대상 파일을 추적하는 방법을 설명하기 위한 예시도이다.
도 8은 본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법의 순서도이다.
도 9는 본 발명의 실시예에 따라 파일 이력 추적 데이터와 유향 비순환 그래프 데이터를 기반으로 추적 대상 파일의 유출 경로를 추적하는 방법을 나타낸 순서도이다.
1 is a configuration diagram of a file history tracking system in a collaboration tool using steganography according to an embodiment of the present invention.
2 is a block diagram of a tracking ID generation module constituting a file history tracking system in a collaboration tool using steganography according to an embodiment of the present invention.
3 is an exemplary diagram of file history tracking data generated according to an embodiment of the present invention.
4 is a conceptual diagram of directed acyclic graph data generated according to an embodiment of the present invention.
5 is an exemplary diagram of directed acyclic graph data generated according to an embodiment of the present invention.
6 is a block diagram of a steganography tracking module constituting a file history tracking system in a collaboration tool using steganography according to an embodiment of the present invention.
7 is an exemplary diagram for explaining a method of tracking a tracking target file according to an embodiment of the present invention.
8 is a flowchart of a file history tracking method in a collaboration tool using steganography according to an embodiment of the present invention.
9 is a flowchart illustrating a method of tracking an outflow path of a tracking target file based on file history tracking data and directed acyclic graph data according to an embodiment of the present invention.

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

본 명세서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 본 명세서에서 사용되는 '~부, ~모듈'은 적어도 하나의 기능이나 동작을 처리하는 단위로서, 예를 들어 소프트웨어, FPGA 또는 하드웨어 구성요소를 의미할 수 있다. '~부, ~모듈'에서 제공하는 기능은 복수의 구성요소에 의해 분리되어 수행되거나, 다른 추가적인 구성요소와 통합될 수도 있다. 본 명세서의 '~부, ~모듈'은 반드시 소프트웨어 또는 하드웨어에 한정되지 않으며, 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고, 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 이하에서는 도면을 참조하여 본 발명의 실시예에 대해서 구체적으로 설명하기로 한다.In the present specification, when a part "includes" a certain component, it means that other components may be further included, rather than excluding other components, unless otherwise stated. As used herein, '~ unit, ~ module' is a unit that processes at least one function or operation, and may refer to, for example, software, FPGA, or hardware component. The functions provided by '~ unit, ~ module' may be performed separately by a plurality of components, or may be integrated with other additional components. 'Part, ~ module' in this specification is not necessarily limited to software or hardware, and may be configured to be in an addressable storage medium, or may be configured to reproduce one or more processors. Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.

도 1은 본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템의 구성도이다. 도 1을 참조하면, 본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템(10)은 파일 관리 서버(100)를 포함할 수 있다.1 is a configuration diagram of a file history tracking system in a collaboration tool using steganography according to an embodiment of the present invention. Referring to FIG. 1 , a file history tracking system 10 in a collaboration tool using steganography according to an embodiment of the present invention may include a file management server 100 .

파일 관리 서버(100)는 사용자가 작성하여 업로드한 각종 문서나, 사진, 오디오 데이터, 동영상 데이터 등의 파일을 사용자 단말기(20)로부터 전송받아 이를 저장하고, 파일의 보안 관리를 위한 프로세스를 수행할 수 있다.The file management server 100 receives files such as various documents created and uploaded by the user, photos, audio data, and video data from the user terminal 20, stores them, and performs a process for security management of files. can

사용자 단말기(20)는 사용자가 사용하는 단말기로서, 예를 들어, 스마트폰, 스마트패드, 노트북, 랩탑 PC, 데스크탑 PC 등의 단말기일 수 있으나, 이에 한정되는 것은 아니다.The user terminal 20 is a terminal used by a user, and may be, for example, a terminal such as a smartphone, a smart pad, a notebook computer, a laptop PC, or a desktop PC, but is not limited thereto.

관리자 단말기(30)는 파일 관리 서버(100)를 관리하는 관리자가 사용하는 단말기로서, 예를 들어, 스마트폰, 스마트패드, 노트북, 랩탑 PC, 데스크탑 PC 등의 단말기일 수 있으나, 이에 한정되는 것은 아니다.The manager terminal 30 is a terminal used by an administrator who manages the file management server 100, and may be, for example, a terminal such as a smartphone, a smart pad, a notebook computer, a laptop PC, or a desktop PC, but is limited thereto. not.

파일 관리 서버(100)는 사용자가 파일 다운로드를 요청하면, 해당 사용자가 다운로드를 요청한 파일에 스테가노그라피(Steganography)를 이용하여 파일 이력 추적 ID를 자동으로 삽입하여 사용자 단말기(20)로 전송할 수 있다.The file management server 100 may automatically insert a file history tracking ID into the file requested by the user to download the file by using steganography and transmit it to the user terminal 20 when the user requests the file download. .

또한, 파일 관리 서버(100)는 원본 파일로부터 협업 도구를 거쳐 순차적으로 생성된 하나 이상의 파일의 버전 관리를 위해, 파일 다운로드시마다 파일에 새로운 파일 이력 추적 ID를 삽입하여 사용자 단말기(20)로 전송할 수 있다.In addition, the file management server 100 inserts a new file history tracking ID into the file every time a file is downloaded for version management of one or more files sequentially generated from the original file through the collaboration tool, and can be transmitted to the user terminal 20. there is.

관리자 단말기(30)는 권한이 없는 제3자에게 추적 대상 파일(40)을 유출한 사용자를 추적하기 위해, 파일 이력 추적의 대상인 추적 대상 파일(40)을 파일 관리 서버(100)에 업로드할 수 있다.The manager terminal 30 can upload the tracking target file 40 that is the target of file history tracking to the file management server 100 in order to track the user who leaked the tracking target file 40 to an unauthorized third party. there is.

파일 관리 서버(100)는 추적 대상 파일(40)의 스테가노그라피를 추출하여 파일 이력 추적 ID를 분석하고, 이로부터 추적 대상 파일(40)을 유출한 사용자를 추적할 수 있다.The file management server 100 may extract the steganography of the tracking target file 40 to analyze the file history tracking ID, and track the user who leaked the tracking target file 40 therefrom.

또한, 파일 관리 서버(100)는 추적 대상 파일(40) 이전에 생성된, 원본 파일과 원본 파일로부터 생성된 추적 대상 파일(40)의 상위 경로에 해당하는 파일을 추적할 수 있다.In addition, the file management server 100 may track a file corresponding to an original file generated before the tracking target file 40 and a higher path of the tracking target file 40 generated from the original file.

실시예에서, 파일 관리 서버(100)는 파일 형식 분석 모듈(110), 스테가노그라피 분석 모듈(120), 파일 데이터베이스(130), 추적 ID 생성 모듈(140), 스테가노그라피 삽입 모듈(150), 추적 ID 데이터베이스(160) 및 스테가노그라피 추적 모듈(170)을 포함할 수 있다.In an embodiment, the file management server 100 includes a file format analysis module 110 , a steganography analysis module 120 , a file database 130 , a tracking ID generation module 140 , and a steganography insertion module 150 . , a tracking ID database 160 and a steganography tracking module 170 .

파일 형식 분석 모듈(110)은 사용자 단말기(20) 및/또는 관리자 단말기(30)에 의해 업로드된 파일의 파일 형식을 분석할 수 있다.The file format analysis module 110 may analyze the file format of the file uploaded by the user terminal 20 and/or the manager terminal 30 .

파일 형식 분석 모듈(110)은 파일이 예를 들어, PDF 형식, MP3 형식, 혹은 기타 파일 형식 중 어느 형식인지 분석할 수 있다. 파일 형식 분석 모듈(110)에 의해 분석되는 파일 형식은 이에 제한되지 않고, 다양하게 변경될 수 있다.The file format analysis module 110 may analyze whether the file is in, for example, a PDF format, an MP3 format, or other file format. The file format analyzed by the file format analysis module 110 is not limited thereto, and may be variously changed.

스테가노그라피 분석 모듈(120)은 파일 형식 분석 모듈(110)에 의해 분석된 파일 형식에 따라 스테가노그라피 분석을 수행할 수 있다.The steganography analysis module 120 may perform steganography analysis according to the file format analyzed by the file format analysis module 110 .

일 예로, 파일 형식이 PDF 문서인 경우, 자폭, 자간, 행간 비율 등에 숨겨져 들어오는 대역 내 신호 방식(In-band signaling)으로 스테가노그라피 분석을 수행할 수 있다.For example, when the file format is a PDF document, steganography analysis may be performed using in-band signaling that is hidden in self-explosion, inter-character spacing, and leading ratio.

다른 예로, 파일 형식이 MP3 파일이나 기타 오디오 파일인 경우, 오디오 데이터 뒤에 확산-대역 위상-이동(spread-spectrum phase-shift) 데이터 분석에 의해 스테가노그라피 분석을 수행할 수 있다.As another example, when the file format is an MP3 file or other audio file, steganographic analysis may be performed by analyzing the spread-spectrum phase-shift data after the audio data.

파일 데이터베이스(130)는 사용자에 의해 업로드된 파일을 저장할 수 있다. 업로드된 파일에 파일 이력 추적 ID가 포함되어 있는 경우, 해당 파일은 파일 이력 추적 ID가 포함된 상태 그대로 파일 데이터베이스(130)에 저장된다.The file database 130 may store a file uploaded by a user. When the uploaded file includes the file history tracking ID, the file is stored in the file database 130 as it is in the state including the file history tracking ID.

추적 ID 생성 모듈(140)은 원본 파일로부터 협업 도구를 거쳐 생성되는 파일에 대해 파일 이력 추적 ID를 생성할 수 있다.The tracking ID generation module 140 may generate a file history tracking ID for a file generated from an original file through a collaboration tool.

스테가노그라피 삽입 모듈(150)은 사용자가 파일 다운로드 요청시 해당 다운로드 요청된 파일을 파일 데이터베이스(130)에서 추출하고, 해당 파일에 스테가노그라피를 이용하여 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 삽입할 수 있다.The steganography insertion module 150 extracts the download requested file from the file database 130 when the user requests a file download, and uses steganography on the file to track file history data including the file history tracking ID. can be inserted.

이때, 다운로드 요청된 파일에는 이전 버전의 파일에 삽입된 파일 이력 추적 ID와 상이한 새로운 파일 이력 추적 ID가 삽입될 수 있다.In this case, a new file history tracking ID different from the file history tracking ID inserted in the previous version of the file may be inserted into the download-requested file.

스테가노그라피 삽입 모듈(150)은 파일 형식 분석 모듈(110)에 의해 분석된 파일의 제1 파일 형식에 따라 스테가노그라피를 기반으로 파일에 파일 이력 추적 ID를 삽입할 수 있다.The steganography insertion module 150 may insert the file history tracking ID into the file based on the steganography according to the first file format of the file analyzed by the file format analysis module 110 .

일 예로, 다운로드 요청된 파일이 PDF 문서인 경우, 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 자폭, 자간, 행간 비율로 인코드한 다음, PDF 객체를 움직여 삽입하는 스테가노그라피 방식으로 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 삽입할 수 있다.For example, if the file requested to be downloaded is a PDF document, the file history tracking data including the file history tracking ID is encoded with self-explosion, kerning, and leading ratio, and then the file history is inserted by moving the PDF object in a steganography method. You can insert file history tracking data that includes the tracking ID.

아래의 표 1은 스테가노그라피에 의해 PDF 문서에 파일 이력 추적 ID를 삽입하는 것을 예시한 것이다.Table 1 below illustrates the insertion of a file history tracking ID into a PDF document by steganography.

Figure pat00001
Figure pat00001

스테가노그라피 삽입 모듈(150)은 예를 들어, PDF 문서에서 자간을 1mm 단위로 조정하여, 다른 글자보다 짧은 자간은 1을 인코드하고, 보통 길이의 자간을 0으로 인코드하는 방법으로 스테가노그라피에 의해 파일 이력 추적 ID를 PDF 문서에 삽입할 수 있다.Steganography insertion module 150, for example, by adjusting the spacing in the PDF document in units of 1 mm, encoding 1 for short spacing than other characters, and encoding the spacing with normal length as 0 Stegano File history tracking IDs can be inserted into PDF documents by graphy.

또한, 자간 데이터로부터 은닉 정보를 읽어냄과 동시에, 스테가노그라피 기법을 통해 추가된 데이터의 은닉성을 높이기 위하여, 파일 이력 추적 ID를 맨체스터 코드를 이용하여 부호화한 후 삽입하는 것도 가능하다. 이와 같은 추가적 부호화 과정을 통해, 파일 이력 추적 ID 인식의 오류 긍정(false positive) 비율을 줄이고, 자간의 변동이 덜 눈에 띄게 구현할 수 있다.In addition, in order to read the hidden information from the inter-character data and to increase the confidentiality of the data added through the steganography technique, it is possible to insert the file history tracking ID after encoding it using the Manchester code. Through such an additional encoding process, a false positive rate of file history tracking ID recognition can be reduced, and variations between characters can be implemented less conspicuously.

PDF 문서에 인코드된 데이터를 임베딩할 때는, 지정된 위치가 아닌 문서 전체의 여러 곳의 임의 위치에 흩뿌려서 임베딩을 수행할 수 있다. 이는 데이터 발견의 확률을 높이고, 문서의 일부분이 편집되더라도 워터마크가 생존할 확률을 높여주게 된다.When embedding encoded data in a PDF document, embedding can be performed by scattering the encoded data in various places throughout the document rather than in a designated location. This increases the probability of data discovery and increases the probability that the watermark will survive even if a part of the document is edited.

다른 예로, 다운로드 요청된 파일이 MP3 파일이나 기타 오디오 파일인 경우, 확산-대역 위상-이동(spread-spectrum phase-shift) 데이터를 인코딩하여 오디오 파일 내용에 섞는 스테가노그라피 방식으로 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 삽입할 수 있다.As another example, if the file requested to be downloaded is an MP3 file or other audio file, the file history tracking ID is obtained in a steganographic manner that encodes spread-spectrum phase-shift data and blends it into the audio file content. Included file history tracking data can be inserted.

추적 ID 데이터베이스(160)는 추적 ID 생성 모듈(140)에 의해 생성된 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터와, 후술되는 유향 비순환 그래프 데이터를 저장할 수 있다.The tracking ID database 160 may store file history tracking data including the file history tracking ID generated by the tracking ID generation module 140 and directed acyclic graph data to be described later.

스테가노그라피 추적 모듈(170)은 추적 ID 데이터베이스(160)에 저장된 파일 이력 추적 데이터와, 후술되는 유향 비순환 그래프 데이터를 기반으로, 추적 대상 파일(40)로부터 스테가노그라피 분석에 의해 보안 검사를 수행할 수 있다.Steganography tracking module 170, based on the file history tracking data stored in the tracking ID database 160 and directed acyclic graph data to be described later, performs a security check by steganography analysis from the tracking target file 40 can do.

도 2는 본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템을 구성하는 추적 ID 생성 모듈의 구성도이다. 도 3은 본 발명의 실시예에 따라 생성된 파일 이력 추적 데이터의 예시도이다.2 is a block diagram of a tracking ID generation module constituting a file history tracking system in a collaboration tool using steganography according to an embodiment of the present invention. 3 is an exemplary diagram of file history tracking data generated according to an embodiment of the present invention.

도 1 및 도 2를 참조하면, 추적 ID 생성 모듈(140)은 파일 이력 추적 데이터 생성부(142), 유향 비순환 데이터 생성부(144) 및 데이터 저장부(146)를 포함할 수 있다.1 and 2 , the tracking ID generation module 140 may include a file history tracking data generation unit 142 , a directional acyclic data generation unit 144 , and a data storage unit 146 .

파일 이력 추적 데이터 생성부(142)는 사용자 단말기(20)에 의해 다운로드 요청된 파일에 대해 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 생성할 수 있다.The file history tracking data generating unit 142 may generate file history tracking data including a file history tracking ID for a file requested to be downloaded by the user terminal 20 .

도 3은 본 발명의 실시예에 따라 생성된 파일 이력 추적 데이터의 예시도이다. 도 1 내지 도 3을 참조하면, 파일 이력 추적 데이터 생성부(142)는 파일 이력 추적 ID, 파일 원본 해쉬 데이터, 현재 버전 파일 해쉬 데이터, 사용자 ID, 현재 버전 저장 시간 및 현재 버전 최종 열람 시간을 포함하는 파일 이력 추적 데이터(50)를 생성할 수 있다.3 is an exemplary diagram of file history tracking data generated according to an embodiment of the present invention. 1 to 3 , the file history tracking data generation unit 142 includes a file history tracking ID, file original hash data, current version file hash data, user ID, current version storage time, and current version final viewing time It is possible to create a file history tracking data (50).

이러한 파일 이력 추적 데이터(50)는 스테가노그라피에 의해 사용자에 의해 다운로드 요청된 파일에 삽입될 수 있다. 파일 이력 추적 데이터(50)가 삽입된 파일은 해당 파일의 다운로드를 요청한 사용자 단말기(20)로 전송될 수 있다.This file history tracking data 50 may be inserted into a file requested to be downloaded by the user by steganography. The file into which the file history tracking data 50 is inserted may be transmitted to the user terminal 20 requesting the download of the file.

유향 비순환 데이터 생성부(144)는 사용자 단말기(20)에 의해 다운로드 요청된 파일에 대해, 파일 이력 추적 데이터 생성부(142)에 의해 생성된 파일 이력 추적 ID를 기반으로 유향 비순환 그래프 데이터를 생성할 수 있다.The directed acyclic data generation unit 144 generates directed acyclic graph data based on the file history tracking ID generated by the file history tracking data generation unit 142 for the file requested to be downloaded by the user terminal 20 . can

도 4는 본 발명의 실시예에 따라 생성되는 유향 비순환 그래프 데이터의 개념도이다. 도 5는 본 발명의 실시예에 따라 생성되는 유향 비순환 그래프 데이터의 예시도이다.4 is a conceptual diagram of directed acyclic graph data generated according to an embodiment of the present invention. 5 is an exemplary diagram of directed acyclic graph data generated according to an embodiment of the present invention.

도 1, 도 2, 도 4 및 도 5를 참조하면, 유향 비순환 그래프 데이터(60, 70)는 원본 파일로부터 다운로드 요청된 파일까지의 방향성 유래 경로에 관한 데이터를 포함할 수 있다.Referring to FIGS. 1, 2, 4 and 5 , the directed acyclic graph data 60 and 70 may include data on a direction-derived path from an original file to a file requested to be downloaded.

유향 비순환 그래프 데이터(60, 70)는 방향 순환이 없는 무한 유향 그래프로서, 파일의 버전 관리를 위해 이러한 자료 구조가 사용될 수 있다.The directed acyclic graph data 60 and 70 are infinite directed graphs without directional circulation, and this data structure may be used for version management of files.

유향 비순환 데이터 생성부(144)는 이전 버전의 파일에서 스테가노그라피에 의해 추출된 파일 이력 추적 데이터를 통해 이전 파일의 파일 이력 추적 ID를 확인할 수 있으며 해당 버전 관계를 기반으로 유향 비순환 그래프 데이터(60, 70)를 생성할 수 있다.The directed acyclic data generation unit 144 may check the file history tracking ID of the previous file through the file history tracking data extracted by steganography from the previous version of the file, and based on the version relationship, the directed acyclic graph data (60 , 70) can be created.

도 4 및 도 5의 예에서, 알파벳 대문자 A ~ G는 원본 파일로부터 다양한 사용자에 의해 순차적으로 다운로드되어 업데이트된 파일을 버전 순으로 나타낸 것이다.In the examples of FIGS. 4 and 5 , uppercase letters A to G indicate files that are sequentially downloaded and updated by various users from the original file in the order of version.

도 4 및 도 5에 도시된 예에서, 알파벳 대문자 A는 사용자 A가 생성하여 서버에 업로드한 원본 파일을 나타내고, 원본 파일 A를 사용자 B 및 사용자 D가 각각 서버에서 다운로드한 것을 나타낸다.In the examples shown in FIGS. 4 and 5 , a capital letter A of the alphabet indicates an original file created by the user A and uploaded to the server, and indicates that the user B and the user D have downloaded the original file A from the server, respectively.

도 5의 예에서, 세로 방향의 필드들에는 이전 버전의 파일들을 나타내는 파일 이력 추적 ID들이 나열되고, 가로 방향의 필드들에는 신규 버전의 파일들을 나타내는 파일 이력 추적 ID들이 나열되어 있다.In the example of FIG. 5 , file history tracking IDs indicating previous versions of files are listed in vertical fields, and file history tracking IDs indicating new versions of files are listed in horizontal fields.

도 4의 예에서 원본 파일 A는 사용자 B 및 사용자 D에 의해 각각 서버로부터 다운로드되었으므로, 도 5에서 원본 파일 A에 해당하는 행의 'B' 열과, 'D' 열의 필드값이 '1'로 기록되어 있다.In the example of FIG. 4, since the original file A was downloaded from the server by the user B and the user D, respectively, the field values of the 'B' column and the 'D' column of the row corresponding to the original file A in FIG. 5 are recorded as '1'. has been

또한, 도 4의 예에서 파일 B는 사용자 C에 의해 서버에서 다운로드되었으므로, 도 5에서 파일 B에 해당하는 행의 'C' 열의 필드값이 '1'로 기록되어 있다.In addition, in the example of FIG. 4 , since file B was downloaded from the server by user C, the field value of column 'C' of the row corresponding to file B in FIG. 5 is recorded as '1'.

이러한 유향 비순환 그래프 데이터(60, 70)로부터 원본 파일로부터 순차적으로 파일들을 다운로드한 내역을 파악할 수 있으며, 이에 따라 파일의 버전 관리가 가능하다.From the directed acyclic graph data 60 and 70, it is possible to grasp the history of downloading files sequentially from the original file, and accordingly, the version management of the file is possible.

데이터 저장부(146)는 파일 이력 추적 데이터 생성부(142)에 의해 생성된 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터 및 유향 비순환 데이터 생성부(144)에 의해 생성된 유향 비순환 그래프 데이터를 추적 ID 데이터베이스(160)에 저장할 수 있다.The data storage unit 146 tracks the file history tracking data including the file history tracking ID generated by the file history tracking data generation unit 142 and the directed acyclic graph data generated by the directed acyclic data generation unit 144 . It may be stored in the ID database 160 .

도 6은 본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템을 구성하는 스테가노그라피 추적 모듈의 구성도이다.6 is a block diagram of a steganography tracking module constituting a file history tracking system in a collaboration tool using steganography according to an embodiment of the present invention.

도 1 및 도 6을 참조하면, 스테가노그라피 추적 모듈(170)은 스테가노그라피 추출부(172), 제1 식별부(174) 및 제2 식별부(176)를 포함할 수 있다.1 and 6 , the steganography tracking module 170 may include a steganography extraction unit 172 , a first identification unit 174 , and a second identification unit 176 .

스테가노그라피 추출부(172)는 스테가노그라피 분석에 의해 추적 대상 파일(40)로부터 파일 이력 추적 ID와 현재 버전 파일 해쉬 데이터를 추출할 수 있다.The steganography extraction unit 172 may extract the file history tracking ID and the current version file hash data from the tracking target file 40 by steganography analysis.

이때, 스테가노그라피 추출부(172)는 추적 대상 파일(40)의 파일 형식을 분석하고, 분석된 파일 형식에 따라 스테가노그라피에 의해 추적 대상 파일(40)로부터 파일 이력 추적 ID를 추출할 수 있다.At this time, the steganography extraction unit 172 analyzes the file format of the tracking target file 40, and extracts the file history tracking ID from the tracking target file 40 by steganography according to the analyzed file format. there is.

추적 대상 파일(40)에는 이를 서버에서 다운로드받을 때에 생성된 파일 이력 추적 데이터가 스테가노그라피에 의해 삽입되어 있으므로, 이로부터 파일 이력 추적 ID와 현재 버전 파일 해쉬 데이터를 추출할 수 있다.Since the file history tracking data generated when it is downloaded from the server is inserted into the tracking target file 40 by steganography, the file history tracking ID and the current version file hash data can be extracted therefrom.

제1 식별부(174)는 스테가노그라피 추출부(172)에 의해 추출된 파일 이력 추적 ID를 추적 ID 데이터베이스(160)에 조회하여 추적 대상 파일(40)과 관련된 제1 파일을 식별할 수 있다.The first identification unit 174 may identify the first file related to the tracking target file 40 by inquiring the file history tracking ID extracted by the steganography extraction unit 172 to the tracking ID database 160 . .

제2 식별부(176)는 유향 비순환 그래프 데이터를 기반으로 제1 파일의 상위 경로에 해당하는 제2 파일을 식별할 수 있다.The second identification unit 176 may identify the second file corresponding to the upper path of the first file based on the directed acyclic graph data.

도 7은 본 발명의 실시예에 따라 추적 대상 파일을 추적하는 방법을 설명하기 위한 예시도이다. 도 4에서 파일 E가 유출된 추적 대상 파일(40)인 경우를 예로 들어 설명한다.7 is an exemplary diagram for explaining a method of tracking a tracking target file according to an embodiment of the present invention. A case in which the file E is the leaked tracking target file 40 in FIG. 4 will be described as an example.

제2 식별부(176)는 유향 비순환 그래프 데이터에서 파일 E의 파일 이력 추적 ID(ID1)에 해당하는 열(CE)에서 필드값이 '1'인 행을 조회할 수 있다.The second identification unit 176 may inquire a row having a field value of '1' in the column CE corresponding to the file history tracking ID ID1 of the file E in the directed acyclic graph data.

도 4 및 도 7의 예에서는, 제1 파일인 파일 E의 이전 버전에 해당하는 파일 D의 파일 이력 추적 ID(ID2)에 해당하는 행에서 필드값이 '1'이므로, 해당 파일 D가 파일 E의 상위 경로에 해당하는 제2 파일로 결정될 수 있다.In the example of FIGS. 4 and 7 , since the field value is '1' in the line corresponding to the file history tracking ID (ID2) of the file D corresponding to the previous version of the file E, which is the first file, the corresponding file D is the file E It may be determined as the second file corresponding to the upper path of .

또한, 파일 D의 상위 경로에 해당하는 파일은 파일 D의 파일 이력 추적 ID(ID2)에 해당하는 열(CD)에서 필드값이 '1'인 행을 조회함으로써 결정할 수 있다.In addition, the file corresponding to the upper path of the file D can be determined by inquiring the row in which the field value is '1' in the column (CD) corresponding to the file history tracking ID (ID2) of the file D.

도 4 및 도 7의 예에서는 파일 D의 상위 경로에 해당하는 파일은 원본 파일 A이므로, 원본 파일 A도 제1 파일인 파일 E의 상위 경로에 해당하는 제2 파일로 결정될 수 있다. 이와 달리, 파일 B, C, F, G는 파일 E의 상위 경로에 해당하지 않으므로, 제2 파일로 결정되지 않는다.In the examples of FIGS. 4 and 7 , since the file corresponding to the upper path of the file D is the original file A, the original file A may also be determined as the second file corresponding to the upper path of the file E which is the first file. On the other hand, since files B, C, F, and G do not correspond to a higher path of file E, they are not determined as the second file.

또한, 스테가노그라피 추적 모듈(170)은 추적 대상 파일(40)에 해당하는 제1 파일의 파일 이력 추적 ID(ID1)와, 그 상위 경로에 해당하는 제2 파일들의 파일 이력 추적 ID들(ID2, ID3)을 이용하여 추적 ID 데이터베이스(160)를 조회함으로써, 제1 파일 및 제2 파일들과 관련된 사용자 ID를 통해 추적 대상 파일(40)의 유출과 관련된 하나 이상의 사용자를 인식할 수 있다.In addition, the steganography tracking module 170 includes the file history tracking ID (ID1) of the first file corresponding to the tracking target file 40, and the file history tracking IDs (ID2) of the second files corresponding to the upper path. , ID3) by inquiring the tracking ID database 160 , it is possible to recognize one or more users related to the leakage of the tracking target file 40 through the user ID related to the first file and the second file.

또한, 스테가노그라피 추적 모듈(170)은 추적 대상 파일(40)에서 스테가노그라피 분석에 의해 분석한 파일 이력 추적 데이터에서 해쉬 데이터를 추출하고, 이를 추적 ID 데이터베이스(160)에 저장된 해쉬 데이터와 일치하는지 비교하여 추적 대상 파일(40)의 조작 여부를 판단할 수 있다.In addition, the steganography tracking module 170 extracts hash data from the file history tracking data analyzed by steganography analysis from the tracking target file 40 , and it matches the hash data stored in the tracking ID database 160 . It can be compared whether or not the tracking target file 40 is manipulated.

도 8은 본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법의 순서도이다. 도 1 및 도 8을 참조하면, 사용자 단말기(20)로부터 파일 다운로드 요청시, 추적 ID 생성 모듈(140)은 원본 파일로부터 협업 도구를 거쳐 생성되는 파일에 대해 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 생성할 수 있다(S110).8 is a flowchart of a file history tracking method in a collaboration tool using steganography according to an embodiment of the present invention. 1 and 8 , when a file download request is made from the user terminal 20 , the tracking ID generation module 140 traces the file history including the file history tracking ID for the file generated from the original file through the collaboration tool. Data can be generated (S110).

스테가노그라피 삽입 모듈(150)은 사용자가 파일 다운로드 요청시 해당 다운로드 요청된 파일을 파일 데이터베이스(130)에서 추출하고, 해당 파일에 스테가노그라피를 이용하여 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 자동 삽입할 수 있다(S120).The steganography insertion module 150 extracts the download requested file from the file database 130 when the user requests a file download, and uses steganography on the file to track file history data including the file history tracking ID. can be automatically inserted (S120).

파일 이력 추적 데이터는 파일 이력 추적 ID, 파일 원본 해쉬 데이터, 현재 버전 파일 해쉬 데이터, 사용자 ID, 현재 버전 저장 시간 및 현재 버전 최종 열람 시간을 포함할 수 있다.The file history tracking data may include a file history tracking ID, a file original hash data, a current version file hash data, a user ID, a current version storage time, and a current version last view time.

사용자 단말기(20)에 의해 다운로드 요청된 파일에는 이전 버전의 파일에 삽입된 파일 이력 추적 ID와 상이한 새로운 파일 이력 추적 ID가 삽입될 수 있다.A new file history tracking ID different from the file history tracking ID inserted in the file of the previous version may be inserted into the file requested to be downloaded by the user terminal 20 .

스테가노그라피 삽입 모듈(150)은 파일 형식 분석 모듈(110)에 의해 분석된 파일의 제1 파일 형식에 따라 스테가노그라피를 기반으로 파일에 파일 이력 추적 ID를 삽입할 수 있다.The steganography insertion module 150 may insert the file history tracking ID into the file based on the steganography according to the first file format of the file analyzed by the file format analysis module 110 .

실시예에서, 다운로드 요청된 파일이 PDF 문서인 경우, 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 자폭, 자간, 행간 비율로 인코드한 다음, PDF 객체를 움직여 삽입하는 스테가노그라피 방식으로 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 삽입할 수 있다.In the embodiment, when the file requested to be downloaded is a PDF document, the file history tracking data including the file history tracking ID is encoded with self-explosion, kerning, and leading ratio, and then the PDF object is moved and inserted in a steganography method. You can insert file history tracking data including the history tracking ID.

스테가노그라피 삽입 모듈(150)은 예를 들어, PDF 문서에서 자간을 1mm 단위로 조정하여, 다른 글자보다 짧은 자간은 1을 인코드하고, 보통 길이의 자간을 0으로 인코드하는 방법으로 스테가노그라피에 의해 파일 이력 추적 ID를 PDF 문서에 삽입할 수 있다.Steganography insertion module 150, for example, by adjusting the spacing in the PDF document in units of 1 mm, encoding 1 for short spacing than other characters, and encoding the spacing with normal length as 0 Stegano File history tracking IDs can be inserted into PDF documents by graphy.

다른 예로, 다운로드 요청된 파일이 MP3 파일이나 기타 오디오 파일인 경우, 확산-대역 위상-이동(spread-spectrum phase-shift) 데이터를 인코딩하여 오디오 파일 내용에 섞는 스테가노그라피 방식으로 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 삽입할 수 있다.As another example, if the file requested to be downloaded is an MP3 file or other audio file, the file history tracking ID is obtained in a steganographic manner that encodes spread-spectrum phase-shift data and blends it into the audio file content. Included file history tracking data can be inserted.

이러한 파일 이력 추적 데이터는 스테가노그라피에 의해 사용자에 의해 다운로드 요청된 파일에 삽입될 수 있다. 파일 이력 추적 데이터가 삽입된 파일은 해당 파일의 다운로드를 요청한 사용자 단말기(20)로 전송될 수 있다.Such file history tracking data may be inserted into a file requested for download by the user by steganography. The file into which the file history tracking data is inserted may be transmitted to the user terminal 20 requesting the download of the file.

추적 ID 생성 모듈(140)은 사용자 단말기(20)에 의해 다운로드 요청된 파일에 대해, 파일 이력 추적 ID를 기반으로 유향 비순환 그래프 데이터를 생성할 수 있다(S130).The tracking ID generation module 140 may generate directed acyclic graph data based on the file history tracking ID for the file requested to be downloaded by the user terminal 20 ( S130 ).

유향 비순환 그래프 데이터는 원본 파일로부터 다운로드 요청된 파일까지의 방향성 유래 경로에 관한 데이터를 포함할 수 있다. 유향 비순환 그래프 데이터는 방향 순환이 없는 무한 유향 그래프로서, 파일의 버전 관리를 위해 이러한 자료 구조가 사용될 수 있다.The directed acyclic graph data may include data on a direction-derived path from an original file to a file requested to be downloaded. Directed acyclic graph data is an infinite directed graph without directed circulation, and this data structure can be used for version control of files.

추적 ID 생성 모듈(140)은 이전 버전의 파일에서 스테가노그라피에 의해 추출된 파일 이력 추적 데이터를 통해 이전 파일의 파일 이력 추적 ID를 확인할 수 있으며 해당 버전 관계를 기반으로 유향 비순환 그래프 데이터를 생성할 수 있다.The tracking ID generation module 140 may check the file history tracking ID of the previous file through the file history tracking data extracted by steganography from the file of the previous version, and generate directed acyclic graph data based on the version relationship. can

이러한 유향 비순환 그래프 데이터로부터 원본 파일로부터 순차적으로 파일들을 다운로드한 내역을 파악할 수 있으며, 이에 따라 파일의 버전 관리가 가능하다.From this directed acyclic graph data, it is possible to determine the history of downloading files sequentially from the original file, and accordingly, file version management is possible.

추적 ID 생성 모듈(140)은 유출 파일에 해당하는 추적 대상 파일(40)의 유출 경로 파악을 위해, 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터 및 유향 비순환 그래프 데이터를 추적 ID 데이터베이스(160)에 저장할 수 있다.The tracking ID generation module 140 records the file history tracking data including the file history tracking ID and the directed acyclic graph data to the tracking ID database 160 to determine the outflow path of the tracking target file 40 corresponding to the outflow file. can be saved

도 9는 본 발명의 실시예에 따라 파일 이력 추적 데이터와 유향 비순환 그래프 데이터를 기반으로 추적 대상 파일의 유출 경로를 추적하는 방법을 나타낸 순서도이다.9 is a flowchart illustrating a method of tracking an outflow path of a tracking target file based on file history tracking data and directed acyclic graph data according to an embodiment of the present invention.

도 1, 도 6 및 도 9를 참조하면, 스테가노그라피 추출부(172)는 스테가노그라피 분석에 의해 추적 대상 파일(40)로부터 파일 이력 추적 ID와 현재 버전 파일 해쉬 데이터를 추출할 수 있다(S210).1, 6 and 9, the steganography extraction unit 172 may extract the file history tracking ID and the current version file hash data from the tracking target file 40 by steganography analysis ( S210).

이때, 스테가노그라피 추출부(172)는 추적 대상 파일(40)의 파일 형식을 분석하고, 분석된 파일 형식에 따라 스테가노그라피에 의해 추적 대상 파일(40)로부터 파일 이력 추적 ID를 추출할 수 있다.At this time, the steganography extraction unit 172 analyzes the file format of the tracking target file 40, and extracts the file history tracking ID from the tracking target file 40 by steganography according to the analyzed file format. there is.

추적 대상 파일(40)에는 이를 서버에서 다운로드받을 때에 생성된 파일 이력 추적 데이터가 스테가노그라피에 의해 삽입되어 있으므로, 이로부터 파일 이력 추적 ID와 현재 버전 파일 해쉬 데이터를 추출할 수 있다.Since the file history tracking data generated when it is downloaded from the server is inserted into the tracking target file 40 by steganography, the file history tracking ID and the current version file hash data can be extracted therefrom.

제1 식별부(174)는 스테가노그라피 추출부(172)에 의해 추출된 파일 이력 추적 ID를 추적 ID 데이터베이스(160)에 조회하여 추적 대상 파일(40)과 관련된 제1 파일을 식별할 수 있다(S220).The first identification unit 174 may identify the first file related to the tracking target file 40 by inquiring the file history tracking ID extracted by the steganography extraction unit 172 to the tracking ID database 160 . (S220).

제2 식별부(176)는 유향 비순환 그래프 데이터를 기반으로 추적 대상 파일(40)의 유출 경로에 해당하는 제1 파일의 상위 경로에 해당하는 제2 파일을 식별할 수 있다(S230).The second identification unit 176 may identify the second file corresponding to the upper path of the first file corresponding to the outflow path of the tracking target file 40 based on the directed acyclic graph data (S230).

이와 같이, 스테가노그라피 추적 모듈(170)은 추적 대상 파일(40)에 해당하는 제1 파일의 파일 이력 추적 ID와, 그 상위 경로에 해당하는 제2 파일들의 파일 이력 추적 ID들을 이용하여 추적 ID 데이터베이스(160)를 조회함으로써, 제1 파일 및 제2 파일들과 관련된 사용자 ID를 통해 추적 대상 파일(40)의 유출 경로를 추적할 수 있다.As such, the steganography tracking module 170 uses the file history tracking ID of the first file corresponding to the tracking target file 40 and the file history tracking IDs of the second files corresponding to the upper path of the tracking ID. By inquiring the database 160, the outflow path of the tracking target file 40 may be traced through the user ID associated with the first file and the second file.

또한, 스테가노그라피 추적 모듈(170)은 추적 대상 파일(40)에서 스테가노그라피 분석에 의해 분석한 파일 이력 추적 데이터에서 해쉬 데이터를 추출하고, 이를 추적 ID 데이터베이스(160)에 저장된 해쉬 데이터와 일치하는지 비교하여 추적 대상 파일(40)의 조작 여부를 판단할 수도 있다.In addition, the steganography tracking module 170 extracts hash data from the file history tracking data analyzed by steganography analysis from the tracking target file 40 , and it matches the hash data stored in the tracking ID database 160 . It is also possible to determine whether the tracking target file 40 has been manipulated by comparing it.

상술한 바와 같은 본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법에 의하면, 파일 송신자 측에서는 매번 파일을 보낼 때 워터마크 삽입을 위해 시간을 낭비하지 않아도 되며, 파일 수신자 측에서는 워터마크로 인해 작업을 방해받지 않는 이점이 있다.According to the file history tracking method in the collaboration tool using steganography according to the embodiment of the present invention as described above, the file sender does not have to waste time to insert a watermark when sending a file every time, and the file receiver does not have to The advantage is that the work is not interrupted by the watermark.

또한, 워터마크의 경우 인간이 이해할 수 있는 형태로 이루어져 워터마크의 훼손을 시도할 우려가 있는 것과 달리, 본 발명의 실시예에 의하면, 사용자가 인식하기 어려운 형태로 파일 이력 추적이 수행되므로, 워터마크 훼손 시도와 같은 문제가 발생하지 않는다.In addition, unlike the watermark being in a form that can be understood by humans and there is a risk of attempting to damage the watermark, according to the embodiment of the present invention, since file history tracking is performed in a form that is difficult for the user to recognize, the watermark There are no problems such as attempts to tamper with the mark.

또한, 본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법에 의하면, 파일 유출과 같은 보안 사고 발생 시, 유출 파일의 스테가노그라피 분석 및 유향 비순환 그래프 데이터 분석을 통해 어느 경로에서 파일 유출이 발생한 것인지를 효과적으로 탐지할 수 있다.In addition, according to the file history tracking method in the collaboration tool using steganography according to an embodiment of the present invention, when a security incident such as a file leak occurs, which It can effectively detect whether a file leak has occurred in the path.

뿐만 아니라, 본 발명의 실시예에 따른 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법에 의하면, 효율적인 협업과 쉬운 보안 사고 수습이 가능하며, 버전 관리 기능을 제공할 수 있어, 협업 도구를 거쳐 파일을 작업할 때의 업무 효율성을 높일 수 있다.In addition, according to the file history tracking method in the collaboration tool using steganography according to an embodiment of the present invention, efficient collaboration and easy security incident management are possible, and a version management function can be provided, so that the You can increase work efficiency when working with files.

이상에서 설명된 실시예들의 구성 중 적어도 일부는 하드웨어 구성요소, 소프트웨어 구성요소, 및/ 또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(Arithmetic Logic Unit), 디지털 신호 프로세서(Digital Signal Processor), 마이크로컴퓨터, FPGA(Field Programmable Gate Array), PLU(Programmable Logic Unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다.At least some of the configurations of the embodiments described above may be implemented as a hardware component, a software component, and/or a combination of the hardware component and the software component. For example, the apparatus, method, and component described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate (FPGA). Array), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose or special purpose computers.

처리 장치는 운영 체제 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술 분야에서 통상의 지식을 가진 자는 처리 장치가 복수 개의 처리 요소(Processing Element) 및/또는 복수 유형의 처리요소를 포함할 수 있음을 이해할 것이다.The processing device may run an operating system and one or more software applications running on the operating system. A processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, a processing device is sometimes described as being used, but a person of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It will be understood that this may include

예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(Parallel Processor) 와 같은, 다른 처리 구성(Processing configuration)도 가능하다. 소프트웨어는 컴퓨터 프로그램(Computer Program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다.For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a Parallel Processor. The software may include a computer program, code, instructions, or a combination of one or more thereof, which configures a processing device to operate as desired or is independently or collectively processed You can command the device.

소프트웨어 및/ 또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody) 될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or device, to be interpreted by or provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software.

컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CDROM, DVD와 같은 광기록 매체(optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CDROMs and DVDs, and ROM, RAM, and flash memory. Hardware devices specially configured to store and execute program instructions, such as, etc. are included. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.As described above, although the embodiments have been described with reference to the limited embodiments and drawings, various modifications and variations are possible from the above description by those skilled in the art. For example, the described techniques are performed in an order different from the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result. Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

10: 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템
20: 사용자 단말기
30: 관리자 단말기
40: 추적 대상 파일
50: 파일 이력 추적 데이터
60, 70: 유향 비순환 그래프 데이터
100: 파일 관리 서버
110: 파일 형식 분석 모듈
120: 스테가노그라피 분석 모듈
130: 파일 데이터베이스
140: 추적 ID 생성 모듈
142: 파일 이력 추적 데이터 생성부
144: 유향 비순환 데이터 생성부
146: 데이터 저장부
150: 스테가노그라피 삽입 모듈
160: 추적 ID 데이터베이스
170: 스테가노그라피 추적 모듈
172: 스테가노그라피 추출부
174: 제1 식별부
176: 제2 식별부
10: File history tracking system in collaboration tools using steganography
20: user terminal
30: administrator terminal
40: Trace target file
50: file history trace data
60, 70: directed acyclic graph data
100: file management server
110: file format analysis module
120: steganography analysis module
130: file database
140: tracking ID generation module
142: file history trace data generation unit
144: directed acyclic data generation unit
146: data storage unit
150: steganography insertion module
160: tracking ID database
170: Steganography tracking module
172: Steganography extraction unit
174: first identification unit
176: second identification unit

Claims (10)

원본 파일로부터 협업 도구를 거쳐 생성되는 파일에 대해 파일 이력 추적 ID를 생성하도록 구성되는 추적 ID 생성 모듈;
상기 파일에 스테가노그라피를 이용하여 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 삽입하도록 구성되는 스테가노그라피 삽입 모듈; 및
상기 파일 이력 추적 데이터가 저장되는 추적 ID 데이터베이스를 포함하는, 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템.
a tracking ID generating module, configured to generate a file history tracking ID for a file generated from the original file via the collaboration tool;
a steganography insertion module configured to insert file history tracking data including a file history tracking ID into the file using steganography; and
A file history tracking system in a collaboration tool using steganography, including a tracking ID database in which the file history tracking data is stored.
제1항에 있어서,
상기 추적 ID 생성 모듈은:
상기 파일에 대해 상기 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 생성하도록 구성되는 파일 이력 추적 데이터 생성부;
상기 파일 이력 추적 ID를 기반으로 상기 파일에 대해 유향 비순환 그래프 데이터를 생성하도록 구성되는 유향 비순환 데이터 생성부; 및
상기 파일 이력 추적 ID 및 상기 유향 비순환 그래프 데이터를 상기 추적 ID 데이터베이스에 저장하도록 구성되는 데이터 저장부를 포함하고,
상기 유향 비순환 그래프 데이터는 상기 원본 파일로부터 상기 파일까지의 방향성 유래 경로에 관한 데이터를 포함하는, 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템.
According to claim 1,
The tracking ID generation module includes:
a file history tracking data generating unit configured to generate file history tracking data including the file history tracking ID for the file;
a directed acyclic data generation unit configured to generate directed acyclic graph data for the file based on the file history tracking ID; and
a data storage configured to store the file history tracking ID and the directed acyclic graph data in the tracking ID database;
The directed acyclic graph data is a file history tracking system in a collaboration tool using steganography, including data on a direction-derived path from the original file to the file.
제2항에 있어서,
상기 파일 이력 추적 데이터는 상기 파일 이력 추적 ID, 파일 원본 해쉬 데이터, 현재 버전 파일 해쉬 데이터, 사용자 ID, 현재 버전 저장 시간 및 현재 버전 최종 열람 시간을 포함하는, 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템.
3. The method of claim 2,
The file history tracking data is a file in a collaboration tool using steganography, including the file history tracking ID, file original hash data, current version file hash data, user ID, current version storage time and current version final viewing time Traceability system.
제3항에 있어서,
파일 이력 추적의 대상인 추적 대상 파일로부터 스테가노그라피 분석에 의해 보안 검사를 수행하도록 구성되는 스테가노그라피 추적 모듈을 더 포함하고,
상기 스테가노그라피 추적 모듈은:
스테가노그라피 분석에 의해 상기 추적 대상 파일로부터 파일 이력 추적 ID와 현재 버전 파일 해쉬 데이터를 추출하도록 구성되는 스테가노그라피 추출부;
상기 파일 이력 추적 ID를 상기 추적 ID 데이터베이스에 조회하여 상기 추적 대상 파일과 관련된 제1 파일을 식별하도록 구성되는 제1 식별부; 및
상기 유향 비순환 그래프 데이터를 기반으로 상기 제1 파일의 상위 경로에 해당하는 제2 파일을 식별하도록 구성되는 제2 식별부를 포함하는, 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템.
4. The method of claim 3,
Further comprising a steganography tracking module configured to perform a security check by steganography analysis from the tracking target file that is the target of file history tracking,
The steganographic tracking module includes:
a steganography extraction unit configured to extract a file history tracking ID and current version file hash data from the tracking target file by steganography analysis;
a first identification unit configured to query the file history tracking ID in the tracking ID database to identify a first file related to the tracking target file; and
A file history tracking system in a collaboration tool using steganography, comprising a second identification unit configured to identify a second file corresponding to an upper path of the first file based on the directed acyclic graph data.
제4항에 있어서,
상기 파일의 제1 파일 형식 및 상기 추적 대상 파일의 제2 파일 형식을 분석하도록 구성되는 파일 형식 분석 모듈을 더 포함하고,
상기 스테가노그라피 삽입 모듈은 상기 제1 파일 형식에 따라 스테가노그라피를 기반으로 상기 파일에 파일 이력 추적 ID를 삽입하도록 구성되고,
상기 스테가노그라피 추출부는 상기 제2 파일 형식에 따라 상기 추적 대상 파일로부터 파일 이력 추적 ID를 추출하도록 구성되는, 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 시스템.
5. The method of claim 4,
a file format analysis module, configured to analyze a first file format of the file and a second file format of the tracked file;
the steganography insertion module is configured to insert a file history tracking ID into the file based on steganography according to the first file format;
The file history tracking system in the collaboration tool using steganography, wherein the steganography extraction unit is configured to extract a file history tracking ID from the tracking target file according to the second file format.
추적 ID 생성 모듈에 의해, 원본 파일로부터 협업 도구를 거쳐 생성되는 파일에 대해 파일 이력 추적 ID를 생성하는 단계;
스테가노그라피 삽입 모듈에 의해, 상기 파일에 스테가노그라피를 이용하여 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 삽입하는 단계; 및
상기 파일 이력 추적 데이터를 추적 ID 데이터베이스에 저장하는 단계를 포함하는, 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법.
generating, by the tracking ID generating module, a file history tracking ID for a file generated from an original file through a collaboration tool;
inserting, by the steganography insertion module, file history tracking data including a file history tracking ID into the file using steganography; and
A file history tracking method in a collaboration tool using steganography, comprising the step of storing the file history tracking data in a tracking ID database.
제6항에 있어서,
상기 파일 이력 추적 ID를 생성하는 단계는:
상기 파일에 대해 상기 파일 이력 추적 ID를 포함하는 파일 이력 추적 데이터를 생성하는 단계; 및
상기 파일 이력 추적 ID를 기반으로 상기 파일에 대해 유향 비순환 그래프 데이터를 생성하는 단계; 및
상기 유향 비순환 그래프 데이터를 상기 추적 ID 데이터베이스에 저장하는 단계를 포함하고,
상기 유향 비순환 그래프 데이터는 상기 원본 파일로부터 상기 파일까지의 방향성 유래 경로에 관한 데이터를 포함하는, 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법.
7. The method of claim 6,
The step of generating the file history tracking ID is:
generating file history tracking data including the file history tracking ID for the file; and
generating directed acyclic graph data for the file based on the file history tracking ID; and
storing the directed acyclic graph data in the tracking ID database;
The directed acyclic graph data is a file history tracking method in a collaboration tool using steganography, including data on a direction-derived path from the original file to the file.
제7항에 있어서,
상기 파일 이력 추적 데이터는 상기 파일 이력 추적 ID, 파일 원본 해쉬 데이터, 현재 버전 파일 해쉬 데이터, 사용자 ID, 현재 버전 저장 시간 및 현재 버전 최종 열람 시간을 포함하는, 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법.
8. The method of claim 7,
The file history tracking data is a file in a collaboration tool using steganography, including the file history tracking ID, file original hash data, current version file hash data, user ID, current version storage time and current version final viewing time History tracking method.
제8항에 있어서,
스테가노그라피 추적 모듈에 의해, 파일 이력 추적의 대상인 추적 대상 파일로부터 스테가노그라피 분석에 의해 보안 검사를 수행하는 단계를 더 포함하고,
상기 스테가노그라피 분석에 의해 보안 검사를 수행하는 단계는:
스테가노그라피 분석에 의해 상기 추적 대상 파일로부터 파일 이력 추적 ID와 현재 버전 파일 해쉬 데이터를 추출하는 단계;
상기 파일 이력 추적 ID를 상기 추적 ID 데이터베이스에 조회하여 상기 추적 대상 파일과 관련된 제1 파일을 식별하는 단계; 및
상기 유향 비순환 그래프 데이터를 기반으로 상기 제1 파일의 상위 경로에 해당하는 제2 파일을 식별하는 단계를 포함하는, 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법.
9. The method of claim 8,
Further comprising, by the steganography tracking module, performing a security check by steganography analysis from the tracking target file that is the target of file history tracking,
The step of performing the security check by the steganographic analysis is:
extracting a file history tracking ID and current version file hash data from the tracking target file by steganography analysis;
querying the file history tracking ID in the tracking ID database to identify a first file related to the tracking target file; and
A file history tracking method in a collaboration tool using steganography, comprising the step of identifying a second file corresponding to a higher path of the first file based on the directed acyclic graph data.
제6항 내지 제9항 중 어느 한 항에 기재된 스테가노그라피를 이용한 협업 도구에서의 파일 이력 추적 방법을 실행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.A computer-readable recording medium in which a program for executing the file history tracking method in the collaboration tool using steganography according to any one of claims 6 to 9 is recorded.
KR1020200122000A 2020-09-22 2020-09-22 File history tracking system in collaboration tools through steganography and method of the same KR102425613B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200122000A KR102425613B1 (en) 2020-09-22 2020-09-22 File history tracking system in collaboration tools through steganography and method of the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200122000A KR102425613B1 (en) 2020-09-22 2020-09-22 File history tracking system in collaboration tools through steganography and method of the same

Publications (2)

Publication Number Publication Date
KR20220039193A true KR20220039193A (en) 2022-03-29
KR102425613B1 KR102425613B1 (en) 2022-07-26

Family

ID=80997293

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200122000A KR102425613B1 (en) 2020-09-22 2020-09-22 File history tracking system in collaboration tools through steganography and method of the same

Country Status (1)

Country Link
KR (1) KR102425613B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040028766A (en) * 2001-05-29 2004-04-03 코닥 폴리크룸 그래픽스 엘엘씨 Embedding color profiles in raster image data using data hiding techniques
KR20190143228A (en) * 2018-06-20 2019-12-30 주식회사 파수닷컴 Method for object management using trace identifier, apparatus for the same, computer program for the same, and recording medium storing computer program thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040028766A (en) * 2001-05-29 2004-04-03 코닥 폴리크룸 그래픽스 엘엘씨 Embedding color profiles in raster image data using data hiding techniques
KR20190143228A (en) * 2018-06-20 2019-12-30 주식회사 파수닷컴 Method for object management using trace identifier, apparatus for the same, computer program for the same, and recording medium storing computer program thereof

Also Published As

Publication number Publication date
KR102425613B1 (en) 2022-07-26

Similar Documents

Publication Publication Date Title
US5765176A (en) Performing document image management tasks using an iconic image having embedded encoded information
WO2018196661A1 (en) Image processing device and method
US20120317421A1 (en) Fingerprinting Executable Code
CN110674477A (en) Document source tracing method and device based on electronic file security identification
JP5735539B2 (en) System, apparatus and method for encrypting and decrypting data transmitted over a network
TWI528218B (en) Method for discriminating sensitive data and data loss prevention system using the method
US11409849B2 (en) System, method and program for preventing unauthorized copies of webcomics and tracking replicated webcomics
CN115114598A (en) Watermark generation method, and method and device for file tracing by using watermark
CN113254408B (en) Invisible mark adding method, device, medium and electronic equipment
CN112800398A (en) PDF file circulation tracking method
JP7314243B2 (en) How to Generate Malicious Behavior Feature Information for Malware
Gong et al. Detecting fingerprints of audio steganography software
US20080050016A1 (en) Image processing apparatus, image processing method, computer readable medium, and computer data signal
KR102425613B1 (en) File history tracking system in collaboration tools through steganography and method of the same
Castiglione et al. Hiding Information into OOXML Documents: New Steganographic Perspectives.
CN104765986B (en) A kind of code protection and restoring method based on Steganography
JP2007011560A (en) Document data management system
JP2004185312A (en) Document managing device
JP5207402B2 (en) Information processing apparatus, information processing method, and program
CN113343186A (en) Method and device for embedding invisible watermark of DOCX document, electronic equipment and storage medium
CN108881472B (en) The processing method of electronic book documentary, electronic equipment, storage medium
CN111986065A (en) Digital watermark embedding method and device
CN103824006A (en) Method and system for mobile phone application software to automatically generate watermark
CN116881915B (en) File detection method, electronic device and storage medium
KR102531477B1 (en) Server and user terminal of the thesis making system that provides information on the extracted original text

Legal Events

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