KR101977008B1 - Data hiding method using timestamp information capable of correcting time distortion - Google Patents
Data hiding method using timestamp information capable of correcting time distortion Download PDFInfo
- Publication number
- KR101977008B1 KR101977008B1 KR1020190001651A KR20190001651A KR101977008B1 KR 101977008 B1 KR101977008 B1 KR 101977008B1 KR 1020190001651 A KR1020190001651 A KR 1020190001651A KR 20190001651 A KR20190001651 A KR 20190001651A KR 101977008 B1 KR101977008 B1 KR 101977008B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- information
- time stamp
- time
- bits
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2151—Time stamp
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
Description
본 발명은 외부에 의한 보안 데이터의 접근 및 탐지를 방지하도록 컴퓨터 또는 모바일 단말기의 파일에 데이터를 숨기는 방법에 관한 것으로, 보다 상세하게는 윈도우즈 NTFS 파일시스템으로 관리되는 파일의 타임스탬프 정보 내에 시간 정보의 왜곡없이 데이터를 안전하게 저장할 수 있는 데이터 숨김방법에 관한 것이다.BACKGROUND OF THE
데이터 숨김 기술은 다양한 응용분야에서 관심이 집중되어 최근 그 중요성이 각광받고 있다. 예를 들어, 오디오, 비디오, 및 이미지 파일에 첨부되는 시리얼 코드와 같이 육안으로 식별되지는 않지만, 인가받지 않는 외부로부터의 접근이나 데이터의 변경이나 복사 등을 방지하기 위해 데이터가 숨겨져 첨부되고 있다. Data hiding technology has been attracting attention in recent years because of its focus on various applications. Data is hidden, for example, to prevent unauthorized external access or data modification or copying, such as serial code attached to audio, video, and image files, which is not identified by the naked eye.
컴퓨터 내에 데이터를 숨기는 방법이 여러 가지 방법이 있는데, 예를 들어 윈도우즈 파일시스템에서 파일의 통상적인 저장 장소가 아닌 대체 데이터 스트림(ADS)을 이용하여 데이터를 숨기는 방법과, 파일을 암호화하는 암호화 프로그램인 트루크립트(TrueCrypt), 디스크 전체를 암호화하는 윈도우 비트로커(Window BitLocker), 전달하는 정보를 파일내에 숨겨 저장하는 스테가노그라피 프로그램인 카무플라지(Camouflage), 오픈스테고(Openstego) 등의 프로그램이 있다.There are various methods of hiding data in a computer. For example, there is a method of hiding data using an alternative data stream (ADS) instead of a normal storage location of a file in a Windows file system, and a method of encrypting a file There are programs such as TrueCrypt, Windows BitLocker that encrypts the entire disk, Camouflage, which is a steganography program that stores the information to be transferred in a file, and Openstego. .
그리고, 대한민국 공개특허공보 제2001-0044804호, 제2006-0112682호에는 이미지에 데이터를 숨기고 복원하는 방법에 관한 기술이 제안되어 있고, 대한민국 등록특허공보 제10-0734940호와 공개특허공보 제2006-0062043호에는 사용자가 타인에게 노출되기를 원하지 않는 데이터가 표시되지 않도록 설정할 수 있도록 하는 이동통신 단말기에서의 선택적 데이터 숨김방법이 개시되어 있다.Korean Patent Laid-Open Publication Nos. 2001-0044804 and 2006-0112682 propose a technique for hiding and restoring data in an image. Korean Patent Publication No. 10-0734940 and Publication No. 2006- 0062043 discloses an optional data hiding method in a mobile communication terminal that allows a user to set not to display data that he does not want to be exposed to others.
본원 발명자는 대한민국 특허공개 제2018-0072158호의 "타임스탬프 정보를 이용한 데이터 숨김방법"을 개발하였는데, 상기 발명은 윈도우즈 NTFS 파일시스템으로 관리되는 파일의 타임스탬프 정보 내에 데이터를 숨기는 방법에 관한 발명이다. 하지만, 상기 선행발명은 2바이트를 데이터 숨기기에 할당하는 과정에서 오류가 발생할 소지가 있어 이하 설명한다.The inventor of the present invention has developed a method of hiding data using timestamp information in Korean Patent Laid-Open Publication No. 2018-0072158. The present invention relates to a method of hiding data in time stamp information of a file managed by a Windows NTFS file system. However, in the above-mentioned prior art, an error may occur in the process of allocating 2 bytes to data hiding, and will be described below.
윈도우즈 NTFS 파일시스템의 데이터 구조에서는 1초 미만의 시간을 밀리초(mili-second)와 나노초(nano-second)값 mmm:nnnn형식으로 10진 7자리를 사용하는데 이것은 정수값 0,000,000 ~ 9,999,999까지를 사용하는 것이다. 즉, 정수값 1이 100 나노초이기 때문에 1초는 10,000,000 나노초로 표현되고, 1초 미만의 자리의 7자리 10진 정수 값을 16진수 값으로 변환하면 0~0x98967F가 되는데, 24비트로 표현 가능한 숫자이다. 이 안에 데이터를 숨기기 위해 8바이트 코드 3개를 사용하여 24비트를 사용하면, 상위의 한 비트에서 겹치는 부분이 발생하기 때문에, 선행발명에서는 8바이트 2개의 데이터를 사용하여 안전하게 타임스탬프 안에 데이터를 숨기는 방법을 사용한 것이다.The data structure of the Windows NTFS file system uses
하지만, 타임스탬프를 표현하는 숫자는 10진 정수 단위로 계산이 이루어지고, 100 나노초 단위마다 1씩 증가하는 정수값을 표현하기 때문에 1초 이상의 시간을 나타내는데 하위 16비트 내에 유의미한 비트값이 포함될 수 있으며, 비트단위의 경계가 완벽하게 나눠지지 않는다는 점에서 문제가 발생한다.However, since the number representing the time stamp is calculated in units of decimal integers and represents an integer value incremented by 1 every 100 nanoseconds, it represents a time of 1 second or more, and a significant bit value may be included in the lower 16 bits , The problem arises that the boundary of the bit unit is not completely divided.
즉, 1초 미만의 값이 모두 0으로 되어 있는 경우를 살펴보면, 2018-08-31 03:34:56(UTC)의 경우에 정수값으로 131,801,600,960,000,000 표현된다. 이것을 16진수로 표현하면 0x01D440DB960C7000이 되는데, 하위 16비트는 "7000"으로 표시되기 때문에 이것을 임의로 변경하게 되면 초단위에서 1초의 변동이 발생한다. 다른 예로, 2018-04-28 10:35:58(UTC)의 경우도 이런 문제가 발생하는데, 이 시간은 10진수로는 131,693,853,580,000,000로 표현되고 16진수로는 0x01D3DEDCB1BCFB00로 표시된다. 하위 16비트에 데이터 숨기려면 모두 "0x0000"인 상태이어야 하는데 실제로는"0xFB00" 의 유의미한 값이 들어 있으며 원래 갖고 있던 값에서 1초의 오차가발생하게 된다. In other words, if all values less than 1 second are all 0, then in the case of 2018-08-31 03:34:56 (UTC), 131,801,600,960,000,000 is represented as an integer value. If this is expressed in hexadecimal, it becomes 0x01D440DB960C7000. Since the lower 16 bits are indicated as "7000", if it is arbitrarily changed, 1 second fluctuation occurs at the beginning. Another example, 2018-04-28 10:35:58 (UTC), has this problem, which is expressed as 131,693,853,580,000,000 in decimal and 0x01D3DEDCB1BCFB00 in hexadecimal. To hide data in the lower 16 bits, all of them should be "0x0000", but in reality they have a meaningful value of "0xFB00" and an error of 1 second occurs from the original value.
따라서, 본 발명은 본원 발명자가 개발한 선행발명을 보다 개선하기 위하여 창안된 것으로, 본 발명의 목적은 윈도우즈 NTFS 파일시스템으로 관리되는 파일의 타임스탬프 정보 내에 16비트에만 내용을 저장하여 숨기는데 사용하던 기술을 24비트에도 확장 적용하면서 시간 정보의 왜곡없이 데이터를 안전하게 저장할 수 있는 데이터 숨김방법을 제공하는데 있다. It is therefore an object of the present invention to provide a method and apparatus for storing and hiding content in only 16 bits in time stamp information of a file managed by a Windows NTFS file system, The present invention also provides a data hiding method capable of safely storing data without distorting time information while extending the technology to 24 bits.
이러한 목적을 달성하기 위하여 본 발명은 (a) 숨기고자 하는 데이터를 인코딩하는 단계, (b) 임의의 파일로부터 타임스탬프 정보를 추출하는 단계, (c) 추출된 타임스탬프 정보의 최하위 구간 비트를 마스크 비트로 제거하여 데이터 숨김영역을 설정하는 단계, (d) 상기 인코딩된 데이터와 상기 데이터 숨김영역이 설정된 타임스탬프 정보를 비트 논리합(OR) 연산하여 데이터 숨김영역 내에 데이터를 저장하는 단계, 및 (e) (d)단계에서 데이터가 저장된 타임스탬프 정보가 (b)단계에서 추출한 타임스탬프 정보와 차이가 발생하면 데이터가 저장된 타임스탬프의 정보를 보정하는 단계를 포함하는 시간정보 왜곡보정이 가능한 타임스탬프를 이용한 데이터 숨김방법을 제공한다.The method includes the steps of: (a) encoding data to be hidden; (b) extracting time stamp information from an arbitrary file; (c) assigning a least significant bit of the extracted time stamp information to a mask (D) storing data in a data-hidden area by performing an OR operation on the encoded data and the timestamp information set in the data-hidden area, and (e) and correcting information of the time stamp in which the data is stored if the time stamp information stored in the step (d) differs from the time stamp information extracted in the step (b), using a time stamp capable of correcting the time information distortion Provides a way to hide data.
본 발명에 있어서, 상기 (e)단계는 상기 데이터 숨김영역의 상위 비트값 및/또는 데이터 숨김영역 내의 최상위 비트값에 가감연산을 수행하여 데이터가 저장된 타임스탬프의 정보를 보정하는 것을 특징으로 한다. In the present invention, the step (e) may perform an addition / subtraction operation on the most significant bit value of the data hidden area and / or the most significant bit value in the data hidden area to correct the information of the time stamp on which the data is stored.
본 발명에 있어서, 상기 가감연산은 +1초 또는 -1초인 것을 특징으로 한다.In the present invention, the acceleration / deceleration calculation may be +1 second or -1 second.
본 발명에 있어서, 상기 데이터 숨김영역은 하위 16비트이며, 하위 제17번째 비트를 가감연산하는 것을 특징으로 한다. In the present invention, the data-hidden area is lower-order 16 bits, and the lower seventeenth bit is added and subtracted.
본 발명에 있어서, 상기 데이터 숨김영역은 하위 24비트이며, 하위 제24번째 비트 및/또는 하위 제25번째 비트를 가감연산하는 것을 특징으로 한다.In the present invention, the data hidden area is lower 24 bits, and the lower 24th and / or lower 25th bits are added / subtracted.
본 발명에 따르면 윈도우즈 NTFS 파일시스템에서 사용되는 타임스탬프 데이터(년, 월, 일, 시간, 분, 초)를 나타내는데 있어서 탐색기 창이나 파일목록에 표시되지 않는 1초미만의 시간을 표시하는 부분에 많은 량의 데이터를 숨겨서 외부에 의해 접근이나 탐지되지 않고 시간정보의 왜곡없이 안전하게 저장할 수 있다. According to the present invention, in displaying the time stamp data (year, month, day, hour, minute, second) used in the Windows NTFS file system, many The amount of data can be hidden and safely stored without being accessed or detected by the outside and without distorting the time information.
도 1은 본 발명에 따른 시간정보 왜곡보정이 가능한 타임스탬프를 이용한 데이터 숨김방법을 나타내는 순서도이다.
도 2 내지 도 4는 문자열 데이터를 대상파일의 타임스탬프의 하위 16비트에 숨기는 본 발명의 실시예1의 각 단계를 설명하기 위한 캡쳐화면이다.
도 5 내지 도 7은 문자열 데이터를 대상파일의 타임스탬프의 하위 24비트에 숨기는 본 발명의 실시예2의 각 단계를 설명하기 위한 캡쳐화면이다.FIG. 1 is a flowchart illustrating a data hiding method using time stamps capable of correcting time information distortion according to the present invention.
FIGS. 2 to 4 are screens for explaining each step of the first embodiment of the present invention in which character string data is hidden in the lower 16 bits of the time stamp of the target file.
5 to 7 are screens for explaining each step of the second embodiment of the present invention in which the character string data is hidden in the lower 24 bits of the timestamp of the target file.
이하, 첨부 도면을 참조하여 본 발명의 실시예를 상세히 설명한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
실시예를 설명하는데 있어서 원칙적으로 관련된 공지의 기능이나 공지의 구성과 같이 이미 당해 기술분야의 통상의 기술자에게 자명한 사항으로서 본 발명의 기술적 특징을 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다.In the following description of the embodiment, when it is determined that technical characteristics of the present invention may be unnecessarily obscured by those skilled in the art such as well-known functions and configurations well known in the art, It will be omitted.
도 1은 본 발명에 따른 시간정보 왜곡보정이 가능한 타임스탬프를 이용한 데이터 숨김방법을 나타내는 순서도이다. 도 1을 참조하면, 본 발명에 따른 데이터 숨김방법은, 숨기고자 하는 데이터를 인코딩하는 단계(S10), 임의의 파일로부터 타임스탬프 정보를 추출하는 단계(S20), 추출된 타임스탬프 정보의 최하위 구간 비트를 비트 마스크로 제거하여 데이터 숨김영역을 설정하는 단계(S30), 상기 인코딩된 데이터와 상기 데이터 숨김영역이 설정된 타임스탬프 정보를 비트 논리합(OR) 연산하여 데이터 숨김영역 내에 데이터를 저장하는 단계(S40), S40 단계에서 데이터가 저장된 타임스탬프 정보가 S20 단계에서 추출한 타임스탬프 정보와 차이가 발생하면 데이터가 저장된 타임스탬프의 정보를 보정하는 단계(S50)를 거쳐 이루어진다.FIG. 1 is a flowchart illustrating a data hiding method using time stamps capable of correcting time information distortion according to the present invention. Referring to FIG. 1, a data hiding method according to the present invention includes encoding (S10) data to be hidden, extracting time stamp information from an arbitrary file (S20), extracting the lowest- (Step S30) of setting a data-hidden area by removing a bit in the data-hidden area by performing a bit-OR operation on the encoded data and the timestamp information set in the data-hidden area, In step S40, if the time stamp information stored in step S40 is different from the time stamp information extracted in step S20, the information on the time stamp on which the data is stored is corrected (step S50).
숨기고자 하는 데이터를 인코딩하는 단계(S10)에서 숨기고자 하는 데이터는 다양한 데이터 유형이 적용될 수 있는데, 데이터가 문자인 경우 문자당 8비트로 인코딩되는 아스키코드나 문자당 16비트로 인코딩되는 유니코드로 인코딩될 수 있다. The data to be hidden in step S10 of encoding the data to be hidden may be applied to various data types, such as ASCII codes encoded with 8 bits per character or Unicode encoded with 16 bits per character if the data is characters .
임의의 파일로부터 타임스탬프 정보를 추출하는 단계(S20)는, 데이터를 저장하려는 단말기, 컴퓨터 또는 스마트폰과 같은 모바일 단말기로부터 데이터를 저장할 임의의 파일을 선택한다. 선택되는 파일은 윈도우즈 NTFS 파일시스템으로 운영되는 파일이라면 파일유형에 관계없이 선택될 수 있다. 숨기려는 데이터량이 많은 경우 복수개의 파일이 선택될 수 있는데, 복수개의 파일이 선택되면 데이터가 저장되는 파일순서가 별도의 데이터로 저장된다. 파일이 선택되면 해당 파일의 타임스탬프 정보를 추출한다. 타임스탬프는 파일의 생성시간(Tc), 수정시간(Tm), MFT엔트리 수정시간(Te), 읽기시간(Ta)의 정보를 속성군(Si)과 이름군(Fn)으로 구분된다. 즉, 파일의 타임스탬프가 가진 표준정보($STANDARD_INFORMATION, Si) 속성시간인 4가지 정보(Tc, Tm, Te, Ta)과 파일이름($FILE_NAME, Fn) 속성시간인 4가지 정보(Tc, Tm, Te, Ta)를 각각 추출한다.The step S20 of extracting the time stamp information from an arbitrary file selects any file to store data from a mobile terminal such as a terminal, a computer or a smart phone for storing data. The selected file can be selected regardless of the file type, if it is a file operated by the Windows NTFS file system. If the amount of data to be hidden is large, a plurality of files can be selected. If a plurality of files are selected, the file order in which data is stored is stored as separate data. When the file is selected, the time stamp information of the file is extracted. The time stamp is divided into the attribute group Si and the name group Fn as information on the file creation time Tc, the modification time Tm, the MFT entry modification time Te, and the read time Ta. That is, the four pieces of information Tc, Tm (Tc, Tm, Tm), which are attribute times of the four pieces of information (Tc, Tm, Te, Ta) and the file names ($ FILE_NAME, Fn) , Te, and Ta, respectively.
다음으로, 추출된 타임스탬프 정보의 하위 구간 비트를 마스크 비트로 제거하여 데이터 숨김영역을 설정하는 단계(S30)는, 64비트로 이루어진 타임스탬프 정보 중 하위 구간 비트, 즉 하위(LSB) 16비트 또는 24비트를 인코딩된 데이터가 저장될 수 있도록 '0'으로 설정한다. 이를 위해, 0xFFFFFFFFFFFF0000(최하위 16비트에 저장하는 경우) 또는 0xFFFFFFFFFF000000(최하위 24비트에 저장하는 경우)의 마스크 비트로 논리곱(AND) 연산을 수행한다. 24비트에 데이터를 저장할 경우 보다 많은 데이터를 저장할 수 있으나, 24비트에서 간혹 데이터가 넘치거나 줄어드는 현상이 발생하여 1초가 늘어나거나 1초가 줄어들어 시간왜곡 문제가 발생하는데, 이는 후술하는 바와 같이 24번째 비트 및/또는 25번째 비트의 값을 가감 연산하여 해결될 수 있다. A step S30 of removing the lower-order section bits of the extracted time stamp information with mask bits to set a data-hidden area includes a lower-order section bit of the 64-bit time stamp information, that is, lower 16 bits or lower 24 bits To " 0 " so that the encoded data can be stored. To do this, perform an AND operation with mask bits of 0xFFFFFFFFFFFF0000 (when storing in the lowermost 16 bits) or 0xFFFFFFFFFF000000 (when storing in the lowermost 24 bits). If the data is stored in 24 bits, more data can be stored. However, since the data overflows or shrinks at 24 bits, there is a time distortion problem due to 1 second increase or 1 second decrease. And / or the value of the 25 < th > bit.
그 다음, 인코딩된 데이터와 데이터 숨김영역이 설정된 타임스탬프 정보를 비트 논리합(OR) 연산하여 데이터 숨김영역 내에 데이터를 저장하는 단계(S40)는, 타임스탬프의 최하위 비트 구간인 데이터 숨김영역에 인코딩된 데이터를 저장하는 단계이다. 인코딩된 데이터의 길이가 데이터 숨김영역보다 같거나 적은 경우(예를 들어 인코딩된 데이터가 16비트 또는 8비트이고, 데이터 숨김영역이 16비트인 경우), 인코딩된 데이터와 타임스탬프 정보와 비트 논리합(OR) 연산되어 추출된 어느 하나의 타임스탬프 정보의 데이터 숨김영역에 데이터가 저장된다. 만일, 인코딩된 데이터의 길이가 데이터 숨김영역보다 큰 경우(예를 들어, 인코딩된 데이터가 192비트이고, 데이터 숨김영역이 24비트인 경우), 인코딩된 데이터를 데이터 숨김영역과 동일한 길이(24비트)로 순서대로 분할하고(8개), 분할된 데이터 파일 수(8개) 만큼 추출된 타임스탬프 정보(해당 파일의 표준정보와 파일이름으로부터 각 4가지 정보(Tc, Tm, Te, Ta), 합 8개의 타임스탬프 정보)와 분할된 데이터가 차례로 비트 논리합(OR) 연산하여 복수의 타임스탬프 정보에 데이터를 순서대로 저장한다. Next, a step (S40) of performing bitwise OR (OR) operation between the encoded data and the time stamp information set in the data-hidden area to store the data in the data-hidden area is performed in a step S40, And storing the data. If the length of the encoded data is less than or equal to the data-hidden area (for example, the encoded data is 16 bits or 8 bits and the data-hidden area is 16 bits), the encoded data and the time- OR), and the data is stored in the data-hidden area of any extracted time stamp information. If the length of the encoded data is larger than the data-hidden area (for example, if the encoded data is 192 bits and the data-hidden area is 24 bits) Tm, Te, Ta) from the standard information and the file name of the corresponding file, which are extracted by the number of divided data files (8 pieces) (Eight time stamp information in total) and the divided data are sequentially subjected to OR operation, thereby sequentially storing the data in a plurality of time stamp information.
다음으로 데이터가 저장된 타임스탬프 정보와 데이터 저장 전에 추출한 타임스탬프 정보와 차이가 발생하면 데이터가 저장된 타임스탬프의 정보를 보정하는 단계(S50)이다. 이 단계는 데이터 저장에 따라 타임스탬프 정보가 변경되어 시간정보가 왜곡여부를 판단하여, 시간정보가 왜곡되는 경우 비트보정 연산을 통하여 데이터 저장 전의 타임스탬프 정보와 동일하도록 수행하는 단계이다. 구체적으로는 데이터 숨기기 전의 타임스탬프를 기준으로 타임스탬프의 시간이 증가되면 증가된 시간만큼 감소시키고, 시간이 감소하면 감소된 시간만큼 증가시키는 기능을 수행한다. 사용되는 영역이 1초미만의 영역이기 때문에 시간의 증가와 감소의 최대치는 각각 1초이다. 만일, 타임스탬프의 최하위 16비트를 데이터 숨김영역으로 설정하면, 데이터 숨김영역의 상위비트인 최하위 제17번째 비트를 가감 연산함으로써 시간정보의 왜곡이 보정될 수 있고, 타임스탬프의 최하위 24비트를 데이터 숨김영역으로 설정하면, 데이터 숨김영역의 상위비트인 최하위 제25번째 비트 및/또는 데이터 숨김영역의 최상위 비트인 제24번째를 가감 연산함으로써 시간정보의 왜곡이 보정될 수 있는데, 이에 대해서는 후술하는 실시예를 통해 자세히 설명하기로 한다. 한편, 시간정보의 무결점을 위해 타임스탬프의 시간왜곡 여부는 데이터 저장이 이루어진 모든 파일에 대해 수행되어야 한다. Next, if there is a difference between the time stamp information in which the data is stored and the time stamp information extracted before the data storage, step S50 is performed to correct information of the time stamp in which the data is stored. In this step, the time stamp information is changed according to the data storage to determine whether the time information is distorted. If the time information is distorted, the step is performed so as to be equal to the time stamp information before data storage through bit correction calculation. More specifically, when the time stamp before the data hiding is based on the time stamp, the time stamp is decreased by the increased time and when the time is decreased by the decreased time. Since the area used is less than 1 second, the maximum value of the increase and decrease in time is 1 second each. If the least significant 16 bits of the time stamp are set to the data-hidden area, the distortion of the time information can be corrected by adding / subtracting the lowermost seventeenth bit, which is the upper bit of the data-hidden area, If it is set as a hidden area, the distortion of the time information can be corrected by adding / subtracting the least significant 25th bit, which is the upper bit of the data hidden area, and / or the 24th most significant bit of the data hidden area, An example will be described in detail. On the other hand, for the integrity of the time information, whether or not the time stamp is time-distorted should be performed for every file in which data is stored.
이와 같이 이루어지는 본 발명에 따른 데이터 숨김방법에 대한 구체적인 실시예를 이하 살펴본다. 실시예의 실험환경은 아래와 같다.Hereinafter, a data hiding method according to the present invention will be described in detail. The experimental environment of the embodiment is as follows.
<<실험환경>><< Experimental environment >>
- 운영체제 : Windows 10 Pro(Ver 10.0.17134.165)- Operating System: Windows 10 Pro (Ver 10.0.17134.165)
- 디스크 포맷 : NTFS v3.1 - Disk format: NTFS v3.1
- 저장 드라이브 : 2,5" HDD SCSI- Storage drive: 2,5 "HDD SCSI
- 저장공간 : 100GB 파티션(총 931GB 드라이브)- Storage space: 100GB partition (total 931GB drive)
- 디스크 할당 클러스트 사이즈 : 4,096 bytes - Disk allocation cluster size: 4,096 bytes
- 디스크 에디팅 프로그램 : WinHex Ver. 18.4- Disk editing program: WinHex Ver. 18.4
- 타임스탬프 조작 프로그램 : timestomp.exe. SetMace.exe- Timestamp manipulation program: timestomp.exe. SetMace.exe
<<실시예1>>≪ Example 1 >
실시예1은 "DataHidingMethod" 이라는 문자열 데이터를 대상파일인 "d: \SetMace.exe"의 타임스탬프의 하위 16비트에 숨기도록 아래와 같은 실험을 수행하였다. 각 단계를 설명하기 위한 캡쳐화면이 도 2 내지 4에 도시되어 있다. In the first embodiment, the following experiment was performed to hide the character string "DataHidingMethod" in the lower 16 bits of the time stamp of the target file "d: \ SetMace.exe". A screenshot for explaining each step is shown in Figs. 2 to 4. Fig.
대상파일의 타임스탬프가 도 2에 도시되어 있는데, 사각박스의 위치가 데이터를 숨길 2바이트(최하위 16비트)이며, 여기서의 데이터들은 리틀엔디언(Little Endian)방식으로 저장되기 때문에 8바이트 중의 작은 값이 먼저 저장된다. 그리고, 숨기고자 하는 데이터인 문자열 "DataHidingMethod" 을 아스키(ASCII) 코드로 인코딩하였다. 그 다음, 인코딩된 데이터를 대상파일의 타임스탬프의 최하위 16비트에 저장하였고, 데이터가 저장된 타임스탬프가 도 3에 도시되어 있다. 도 3을 참조하면, $SI속성의 "15 61 74"에서와 $FN속성의 "15 65 4D"에 시간정보가 왜곡되어 비트보정 연산이 적용되었다. 즉, 보정 전에는 '14'이었으나 보정후에 15'로 변경되었는데, "2014년 11월 10일 01:13: 12 "이 원래의 것이지만 데이터 감추기 후 "01:13: 11 "이 되어서 17번째 비트에서 올림하여 원래의 시간으로 보정되었다. 도 4는 데이터 숨기기 수행 후의 "SetMace.exe"파일의 속성창에서 시간정보는 데이터 숨기기 전후의 시간표시의 차이가 없음을 확인할 수 있다.The timestamp of the target file is shown in FIG. 2, where the position of the rectangular box is 2 bytes (least significant 16 bits) to hide the data, and the data here is stored in Little Endian, The value is stored first. Then, the character string "DataHidingMethod" which is data to be hidden is encoded into ASCII code. The encoded data is then stored in the least significant 16 bits of the timestamp of the target file, and the timestamp in which the data is stored is shown in FIG. Referring to FIG. 3, the time information is distorted by "15 61 74" of the $ SI attribute and "15 65 4D" of the $ FN attribute, and a bit correction operation is applied. In other words, it was changed to '14' yieoteuna 15 'After correction Before correction "on the 10th November 2014 01:13: 12" but then hide the original data: Become a "1:13 11." rolling on the 17th bit And corrected to the original time. 4, in the property window of the " SetMace.exe " file after performing the data hiding, it can be confirmed that there is no difference in the time information before and after the data hiding.
<<실시예2>> ≪ Example 2 >
실시예2는 "Steganographic data hiding in timestamps" 이라는 문자열 데이터를 대상파일인 "d: \dataHiding\targetFile.txt"의 타임스탬프의 하위 24비트에 숨기도록 아래와 같은 실험을 수행하였다. 각 단계를 설명하기 위한 캡쳐화면이 도 5 내지 8에 도시되어 있다. In the second embodiment, the following experiment was performed to hide the string data "Steganographic data hiding in timestamps" in the lower 24 bits of the timestamp of the target file "d: \ dataHiding \ targetFile.txt". A screenshot to illustrate each step is shown in Figures 5-8.
대상파일의 타임스탬프가 도 5에 도시되어 있는데, 사각박스의 위치가 데이터를 숨길 3바이트(최하위 24비트)이다. 그리고, 숨기고자 하는 데이터인 문자열 "Steganographic data hiding in timestamps" 을 아스키(ASCII) 코드로 인코딩하였다. 그 다음, 인코딩된 데이터를 대상파일의 타임스탬프의 최하위 24비트에 저장하였고, 데이터가 저장된 타임스탬프가 도 6에 도시되어 있다. 도 6을 참조하면, 데이터가 저장된 타임스탬프의 시간정보가 왜곡되어 비트보정 연산이 적용되었다. 즉, $SI속성의 수정시간이 "01 D4 23 F1 E6 1D 92 F2"→"01 D4 23 F1 E6 6E 61 67 "→"01 D4 23 F1 E5 EE 61 67 "로 변경되었는데, 데이터 숨기고 나면 "2018/07/25 08:31:35"→"08:31:36"으로 시간왜곡이 발생하여 25번째 비트를 0→1로 바꿔 "E6"→"E 5 "로 변경되었다. 이때 "08:31:34"로 바뀌는데, 원래의 시간과 차이가 나므로 "6E"의 상위비트(24번째 비트)를 0→1로 변경하여 " 6E "→" EE "로 변경되면서 원래의 "08:31:35"로 보정되었다. The timestamp of the target file is shown in Fig. 5, where the position of the square box is 3 bytes (the lowest 24 bits) to hide the data. Then, the string "Steganographic data hiding in timestamps", which is the data to be hidden, is encoded into ASCII code. The encoded data is then stored in the lowest 24 bits of the timestamp of the target file, and the timestamp in which the data is stored is shown in FIG. Referring to FIG. 6, time information of a time stamp in which data is stored is distorted, and a bit correction operation is applied. That is, when the modification time of $ SI attribute is changed from "01
그리고, $SI속성의 MFT엔트리 수정시간 "01 D4 2F 42 AA E5 37 9B "→"01 D4 2F 42 AA 72 67 6F "→"01 D4 2F 42 AA F2 67 6F "로 변경되었다. 데이터를 숨기고 나면 "2018/08/08 18:07:27"→"18:07:28"로 시간왜곡이 발생하여 이것을 보정하기 위해서 "72"의 상위비트를 1로 변경하여 "F2"로 바꾸면 "18:07:28"→"18:07:27"로 보정되었고, 이 경우는 24번째 비트만 1로 변경만 필요하고 25번째 비트에 대한 보정은 필요치 않았다. Then, the MFT entry modification time of the $ SI attribute was changed from "01
그리고, $FN(short)의 MFT엔트리 수정시간은 "01 D4 23 F1 E6 1D 92 F2 "→"01 D4 23 F1 E6 64 69 68 "→"01 D4 23 F1 E5 E4 69 68 "로 변경되었다. 데이터를 숨기고 나면 "2018/07/25 08:31:35"→"08:31:36"로 시간이 변경되어 이것을 보정하기 위하여 25번째 비트를 1→0로 바꿔 "E6"→"E 5 "로 변경되었다. 이때 "08:31:34"로 바뀌는데, "64"의 상위비트(24번째 비트)를 0→1로 변경하면 " 64 "→" E4 "로 변경되면서 원래의 "08:31:35"로 보정되었다. The modification time of the MFT entry of $ FN (short) was changed from "01
또한, $FN(long)의 수정시간은 "01 D4 23 F1 E6 1D 92 F2 "→ "01 D4 23 F1 E6 65 6D 69 "→"01 D4 23 F1 E 5 E5 6D 69 "로 변경되었다. 데이터를 숨기고 나면 "2018/07/25 08:31:35"→"08:31:36"로 시간이 변경되어 이것을 보정하기 위하여 25번째 비트를 1→0로 바꾸면 "E6"→"E 5 "로 변경된다. 이때 "08:31:34"로 바뀌는데, "65"의 상위비트(24번째 비트)를 0→1로 변경하면 " 64 "→" E4 "로 변경되면서 원래의 "08:31:35"로 보정되었다. 도 7은 데이터 숨기기 수행 전, 후의 대상파일의 타임스탬프 정보로, 시간정보는 변함없음을 확인할 수 있다.The modification time of $ FN (long) was changed from "01
이와 같이 본 발명에 따르면 1초 미만의 시간을 나타내는데 사용하는 타임스탬프 공간에 2바이트의 데이터를 숨길 시 1초의 시간이 잘못 표시되는 경우에 비트연산을 통해 시간왜곡 문제를 해결하였으며, 특히 파일스탬프의 하위 24비트에 보다 많은 데이터를 저장하면서도 비트연산을 통해 시간왜곡 없이 안전하게 데이터를 저장할 수 있다. As described above, according to the present invention, when 2-byte data is hidden in a time stamp space used for displaying a time of less than 1 second, a time-distortion problem is solved through bit operation when a time of 1 second is displayed incorrectly. By storing more data in the lower 24 bits, it is possible to store data securely without time distortion through bit operation.
이상과 같이 설명한 본 발명은 기재된 실시예에 한정되는 것은 아니고, 본 발명의 사상 및 범위를 벗어나지 않고 다양하게 수정 및 변형할 수 있음은 이 기술의 분야에서 통상의 지식을 가진 자에게 자명하다. 따라서 그러한 변형예 또는 수정예들은 본 발명의 특허청구범위에 속한다 해야 할 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the invention. It is therefore intended that such variations and modifications fall within the scope of the appended claims.
S10 : 데이터를 인코딩하는 단계
S20 : 임의의 파일로부터 파일스탬프 정보를 추출하는 단계
S30 : 파일스탬프의 하위 비트 구간을 데이터 숨김영역으로 설정하는 단계
S40 : 데이터 숨김영역에 인코딩된 데이터를 저장하는 단계
S50 : 데이터 저장 전,후의 타임스탬프 정보에 차이가 발생하면 데이터가 저장된 타임스탬프의 정보를 보정하는 단계S10: encoding the data
S20: Extracting file stamp information from an arbitrary file
S30: Set the lower bit section of the file stamp as a data-hidden area
S40: storing the encoded data in the data-hidden area
S50: Correction of the information of the time stamp in which the data is stored if there is a difference between the time stamp information before and after the data storage
Claims (6)
(a) 숨기고자 하는 데이터를 인코딩하는 단계;
(b) 임의의 파일로부터 타임스탬프 정보를 추출하는 단계;
(c) 추출된 타임스탬프 정보의 하위 구간 비트들을 마스크 비트로 제거하여 데이터 숨김영역을 설정하는 단계;
(d) 상기 인코딩된 데이터와 상기 데이터 숨김영역이 설정된 타임스탬프 정보를 비트 논리합(OR) 연산하여 데이터 숨김영역 내에 데이터를 저장하는 단계; 및
(e) (d)단계에서 데이터가 저장된 타임스탬프 정보가 (b)단계에서 추출한 타임스탬프 정보와 차이가 발생하면, 데이터 숨김영역인 하위 24비트 중 하위 제24번째 비트 및/또는 제25번째 비트를 가감연산하여 데이터가 저장된 타임스탬프의 정보를 보정하는 단계;를 포함하는 것을 특징으로 하는 시간정보 왜곡보정이 가능한 타임스탬프를 이용한 데이터 숨김방법.A method for hiding data without distorting time information in a portion of a Windows NTFS file system that displays time information of less than one second in a file's time stamp,
(a) encoding data to be hidden;
(b) extracting time stamp information from an arbitrary file;
(c) setting a data-hidden area by removing lower-order bits of the extracted time stamp information with mask bits;
(d) storing data in a data-hidden area by performing an OR operation on the encoded data and time stamp information set in the data-hidden area; And
(e) If the time stamp information stored in step (d) is different from the time stamp information extracted in step (b), the lower 24th and / or 25th bits of the lower 24 bits And correcting the information of the time stamp in which the data is stored by performing an addition / subtraction operation on the time stamp.
(a) 숨기고자 하는 데이터를 인코딩하는 단계;
(b) 임의의 파일로부터 타임스탬프 정보를 추출하는 단계;
(c) 추출된 타임스탬프 정보의 하위 구간 비트들을 마스크 비트로 제거하여 데이터 숨김영역을 설정하는 단계;
(d) 상기 인코딩된 데이터와 상기 데이터 숨김영역이 설정된 타임스탬프 정보를 비트 논리합(OR) 연산하여 데이터 숨김영역 내에 데이터를 저장하는 단계; 및
(e) (d)단계에서 데이터가 저장된 타임스탬프 정보가 (b)단계에서 추출한 타임스탬프 정보와 차이가 발생하면, 데이터 숨김영역인 하위 16비트 중 최하위 제17번째 비트를 가감연산하여 데이터가 저장된 타임스탬프의 정보를 보정하는 단계;를 포함하는 것을 특징으로 하는 시간정보 왜곡보정이 가능한 타임스탬프를 이용한 데이터 숨김방법.A method for hiding data without distorting time information in a portion of a Windows NTFS file system that displays time information of less than one second in a file's time stamp,
(a) encoding data to be hidden;
(b) extracting time stamp information from an arbitrary file;
(c) setting a data-hidden area by removing lower-order bits of the extracted time stamp information with mask bits;
(d) storing data in a data-hidden area by performing an OR operation on the encoded data and time stamp information set in the data-hidden area; And
(e) If the time stamp information storing the data in step (d) is different from the time stamp information extracted in step (b), the least significant 17th bit of the lower 16 bits, which is the data hidden area, And correcting the information of the time stamp based on the time stamp information.
상기 데이터는 문자로서 아스키코드 또는 유니코드로 인코딩된 것을 특징으로 하는 타임스탬프 정보를 이용한 데이터 숨김방법.3. The method according to claim 1 or 2,
Wherein the data is encoded as ASCII code or Unicode as a character.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190001651A KR101977008B1 (en) | 2019-01-07 | 2019-01-07 | Data hiding method using timestamp information capable of correcting time distortion |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190001651A KR101977008B1 (en) | 2019-01-07 | 2019-01-07 | Data hiding method using timestamp information capable of correcting time distortion |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101977008B1 true KR101977008B1 (en) | 2019-05-09 |
Family
ID=66546160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190001651A KR101977008B1 (en) | 2019-01-07 | 2019-01-07 | Data hiding method using timestamp information capable of correcting time distortion |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101977008B1 (en) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010023733A (en) * | 1997-09-05 | 2001-03-26 | 피터 엔. 데트킨 | Tamper resistant methods and apparatus |
KR20010044804A (en) | 2001-03-27 | 2001-06-05 | 왕성현 | A method saving and restoring secret data into/from graphic files |
KR20060062043A (en) | 2004-12-03 | 2006-06-12 | 엘지전자 주식회사 | The alternative data hiding method in the mobile communication terminal |
KR20060112682A (en) | 2003-12-05 | 2006-11-01 | 뉴저지 인스티튜트 오브 테크놀로지 | System and method for robust reversible data hiding and data recovery in the spatial domaim |
KR100734940B1 (en) | 2006-06-01 | 2007-07-06 | 삼성전자주식회사 | Method and apparatus for installing of hidden data in mobile communication terminal |
JP2012174151A (en) * | 2011-02-24 | 2012-09-10 | Mitsubishi Electric Corp | File tracking device, file tracking method and file tracking program |
KR20130126815A (en) * | 2012-04-26 | 2013-11-21 | 주식회사 엘지씨엔에스 | Method and apparatus for preventing forgery of multimedia data using timestamp |
KR20180072158A (en) | 2016-12-21 | 2018-06-29 | 동양대학교 산학협력단 | Methode for data hiding using timestamp information |
-
2019
- 2019-01-07 KR KR1020190001651A patent/KR101977008B1/en active IP Right Grant
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010023733A (en) * | 1997-09-05 | 2001-03-26 | 피터 엔. 데트킨 | Tamper resistant methods and apparatus |
KR20010044804A (en) | 2001-03-27 | 2001-06-05 | 왕성현 | A method saving and restoring secret data into/from graphic files |
KR20060112682A (en) | 2003-12-05 | 2006-11-01 | 뉴저지 인스티튜트 오브 테크놀로지 | System and method for robust reversible data hiding and data recovery in the spatial domaim |
KR20060062043A (en) | 2004-12-03 | 2006-06-12 | 엘지전자 주식회사 | The alternative data hiding method in the mobile communication terminal |
KR100734940B1 (en) | 2006-06-01 | 2007-07-06 | 삼성전자주식회사 | Method and apparatus for installing of hidden data in mobile communication terminal |
JP2012174151A (en) * | 2011-02-24 | 2012-09-10 | Mitsubishi Electric Corp | File tracking device, file tracking method and file tracking program |
KR20130126815A (en) * | 2012-04-26 | 2013-11-21 | 주식회사 엘지씨엔에스 | Method and apparatus for preventing forgery of multimedia data using timestamp |
KR20180072158A (en) | 2016-12-21 | 2018-06-29 | 동양대학교 산학협력단 | Methode for data hiding using timestamp information |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109767375B (en) | Image watermark embedding and tracing method and system | |
US7895439B2 (en) | Watermarked material processing | |
CN108829899B (en) | Data table storage, modification, query and statistical method | |
US20070186287A1 (en) | Data storage | |
CN111881422B (en) | Picture processing method and device based on block chain | |
CN106059772A (en) | Autonomous electronic evidence obtaining method and system | |
CN110263505B (en) | Picture processing method and device based on block chain | |
CN101625752B (en) | Image processing apparatus and image processing method | |
CN110851535B (en) | Data processing method and device based on block chain, storage medium and terminal | |
CN107105324B (en) | Method and client for protecting bullet screen information | |
KR101936999B1 (en) | Methode for data hiding using timestamp information | |
KR20220048700A (en) | Electronic document management server that supports security settings for some content embedded in electronic documents based on member identification information and operating method thereof | |
CN101996661B (en) | Recording medium production method, recording medium, and player for recording medium | |
JP4832692B2 (en) | Method and system for fingerprinting digital data | |
KR101977008B1 (en) | Data hiding method using timestamp information capable of correcting time distortion | |
CN110874456B (en) | Watermark embedding method, watermark extracting method, watermark embedding device, watermark extracting device and data processing method | |
CN109729076B (en) | Data desensitization and inverse desensitization method and device, storage medium and terminal | |
US11314879B2 (en) | Method for generating and storing a digital copy of a motor vehicle | |
Cao et al. | Approaches to obtaining fingerprints of steganography tools which embed message in fixed positions | |
Cho | Data Hiding in NTFS Timestamps for Anti-Forensics | |
CN101147152A (en) | Method and system of introducing physical device security for digitally encoded data | |
Lin et al. | A copyright protection scheme based on PDF | |
CN115098877A (en) | File encryption and decryption method and device, electronic equipment and medium | |
Baran et al. | Steganographic watermarking for documents | |
CN114626968A (en) | Watermark embedding method, watermark extracting method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |