[go: up one dir, main page]

KR101568211B1 - System and method for hiding and extracting reversible data - Google Patents

System and method for hiding and extracting reversible data Download PDF

Info

Publication number
KR101568211B1
KR101568211B1 KR1020140006761A KR20140006761A KR101568211B1 KR 101568211 B1 KR101568211 B1 KR 101568211B1 KR 1020140006761 A KR1020140006761 A KR 1020140006761A KR 20140006761 A KR20140006761 A KR 20140006761A KR 101568211 B1 KR101568211 B1 KR 101568211B1
Authority
KR
South Korea
Prior art keywords
information
bit
index
code
value
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020140006761A
Other languages
Korean (ko)
Other versions
KR20140095024A (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 고려대학교 산학협력단
Publication of KR20140095024A publication Critical patent/KR20140095024A/en
Application granted granted Critical
Publication of KR101568211B1 publication Critical patent/KR101568211B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems
    • H04N1/4446Hiding of documents or document information
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)
  • Document Processing Apparatus (AREA)

Abstract

이미 압축된 문서 파일에 은닉 정보 데이터가 인코딩된 정보 은닉 문서 파일로부터 가역 정보 추출 시, 기설정된 복원 포맷을 적용하여 정보 은닉 문서 파일을 기설정된 길이의 비트 블록 단위로 디코딩하고, 디코딩된 비트 블록에 포함된 복수의 문자를 기설정된 정보 분석 기준에 기초하여 분석하고, 분석한 결과에 따라 유의미 지수, 무의미 지수 및 문서 지수 중 적어도 하나를 포함하는 정보 지수를 산출하고, 산출된 정보 지수와 기설정된 정보 지수 임계값을 비교한 결과에 기초하여 비트 블록에 은닉된 은닉 정보 비트를 추출하고, 비트 블록 별로 디코딩 이전의 비트 값을 은닉 정보 비트의 값에 기초하여 변환시키고, 비트 값이 변환된 비트 블록을 복원 포맷으로 디코딩하여 원본 문서 파일로 복원한다.When extracting reversible information from an information concealment document file in which concealment information data is encoded in a document file already compressed, a predetermined restoration format is applied to decode the information concealment document file in units of a predetermined length of a bit block, A plurality of characters included in the information are analyzed on the basis of a predetermined information analysis criterion, and an information index including at least one of a significant index, a no-good index and a document index is calculated according to a result of the analysis, Extracts the hidden information bits hidden in the bit block based on the comparison result of the exponential threshold value, converts the bit value before decoding based on the value of the secret information bit for each bit block, Decodes it into a restoration format and restores it to the original document file.

Description

가역 정보 은닉 시스템 및 방법{SYSTEM AND METHOD FOR HIDING AND EXTRACTING REVERSIBLE DATA}[0001] SYSTEM AND METHOD FOR HIDING AND EXTRACTING REVERSIBLE DATA [0002]

본 발명은 압축된 문서 파일에 정보 데이터를 가역적으로 은닉하고, 압축 문서 상에 은닉된 정보 데이터를 추출하는 시스템 및 방법에 관한 것이다.The present invention relates to a system and method for reversibly concealing information data in a compressed document file and extracting concealed information data on the compressed document.

많은 정보들이 디지털 형태로 저장됨에 따라, 쉽게 복사되거나 변경될 수 있는 디지털 매체를 보호하기 위하여 여러 가지 정보 보호 기법들이 개발되고 있다.As more information is stored in digital form, various information protection techniques are being developed to protect digital media that can be easily copied or changed.

그 중 정보 은닉(information hiding) 기법은 암호화와 함께 기밀성을 보장하기 위해 널리 사용되고 있다. 이러한, 정보 은닉 기법은 디지털 매체를 변경함으로써 디지털 매체에 데이터를 삽입할 수 있다.Among them, information hiding is widely used to ensure confidentiality with encryption. Such an information concealment technique can insert data into a digital medium by changing the digital medium.

이와 관련하여, 대한민국공개특허 제 10-2007-0076130호(발명의 명칭: 문서 인증을 위한 정보 삽입 및 추출 방법)는, 정보의 삽입 및 추출 과정에서 원정보(Original Data)의 손실이 발생하지 않는 무손실 정보 은닉(Losseless Data Embedding) 방법에 관한 것으로, 이미지를 다수개의 블록으로 분할하고, 분할된 각 블록을 서브블록으로 분할하고, 분할된 각 서브블록 중 하나의 픽셀에 인증 정보를 삽입하되, 서브블록 중 최소 픽셀값을 갖는 픽셀에 인증 정보(이진정보)를 삽입하는 기술이 개시되어 있다.In this regard, Korean Patent Laid-Open No. 10-2007-0076130 (entitled " Inserting and Extracting Information for Document Authentication ") discloses a method for extracting and extracting information, The present invention relates to a lossless data embedding method in which an image is divided into a plurality of blocks, each divided block is divided into sub-blocks, authentication information is inserted into one of the divided sub-blocks, Discloses a technique of inserting authentication information (binary information) into a pixel having a minimum pixel value among blocks.

그러나 문서를 압축할 경우 난수 수준의 출력이 생성됨에 따라, 원본 문서가 아닌 압축된 문서에 가역적으로 정보를 은닉하는 것은 용이하지 않다는 한계가 있었다.However, when a document is compressed, a random number level output is generated. Therefore, there is a limit in that it is not easy to conceal information reversibly to a compressed document other than an original document.

본 발명의 실시예는 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 이미 압축된 문서 파일에 추가로 은닉 정보 데이터를 인코딩하는 정보 은닉 장치 및 방법과, 정보가 은닉된 압축 문서 파일로부터 은닉 정보 데이터를 추출하는 정보 추출 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is to solve the problems of the prior art described above, and it is an object of the present invention to provide an information concealment apparatus and method for encoding concealed information data in addition to an already compressed document file, And a method for extracting information.

다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.It should be understood, however, that the technical scope of the present invention is not limited to the above-described technical problems, and other technical problems may exist.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 측면에 따른 가역 정보 은닉 장치는, 원본 문서 파일을 기설정된 압축 포맷으로 인코딩하여 압축 문서 파일을 출력하는 문서 압축부; 상기 압축 문서 파일의 비트스트림을 각각 기설정된 제 1 길이를 갖는 복수의 비트 블록으로 분할하고, 기설정된 은닉 정보 데이터를 각각 기설정된 제 2 길이를 갖는 복수의 은닉 정보 비트로 분할하여 상기 복수의 비트 블록에 각각 할당하고, 할당된 상기 은닉 정보 비트의 값에 기초하여 상기 비트 블록의 비트 값을 변환시키는 정보 은닉 처리부; 및 상기 비트 값을 변환시킨 비트 블록들을 포함하는 정보 은닉 문서 파일을 제공하는 정보 은닉 문서 제공부를 포함한다.According to an aspect of the present invention, there is provided a reversible information concealment apparatus comprising: a document compression unit that encodes an original document file into a predetermined compression format to output a compressed document file; Dividing the bit stream of the compressed document file into a plurality of bit blocks each having a predetermined first length and dividing the predetermined hidden information data into a plurality of hidden information bits each having a predetermined second length, And an information concealment unit for converting the bit values of the bit block based on the value of the allocated secret information bits; And an information hiding document providing unit for providing an information hiding document file including the bit blocks obtained by converting the bit values.

본 발명의 다른 측면에 따른 가역 정보 추출 장치는, 압축 문서 파일에 은닉 정보 데이터가 인코딩된 정보 은닉 문서 파일을 입력받는 압축 문서 입력부; 기설정된 복원 포맷을 적용하여 상기 정보 은닉 문서 파일을 기설정된 길이의 비트 블록 단위로 디코딩하는 복원 전처리부; 상기 디코딩된 비트 블록에 포함된 복수의 문자를 기설정된 정보 분석 기준에 기초하여 분석하고, 상기 분석한 결과에 따라 유의미 지수, 무의미 지수 및 문서 지수 중 적어도 하나를 포함하는 정보 지수를 산출하는 정보 분석부; 산출된 상기 정보 지수와 기설정된 정보 지수 임계값을 비교한 결과에 기초하여 상기 비트 블록에 은닉된 은닉 정보 비트를 추출하고, 상기 비트 블록 별로 상기 디코딩 이전의 비트 값을 상기 은닉 정보 비트의 값에 기초하여 변환시키는 은닉 정보 추출부; 및 상기 은닉 정보 추출부를 통해 상기 비트 값이 변환된 상기 비트 블록을 상기 복원 포맷으로 디코딩하여 원본 문서 파일로 복원하는 문서 복원부를 포함한다.According to another aspect of the present invention, there is provided a reversible information extraction apparatus comprising: a compressed document input unit receiving an information hiding document file in which hidden information data is encoded in a compressed document file; A restoration preprocessing unit for decoding the information hiding document file in units of a predetermined length by applying a preset restoration format; An information analysis unit for analyzing a plurality of characters included in the decoded bit block based on a predetermined information analysis criterion and calculating an information index including at least one of a significance index, part; Extracting a hidden information bit hidden in the bit block based on a result of comparing the calculated information index and a predetermined information index threshold value, and comparing the bit value before decoding with the value of the hidden information bit for each bit block, A concealed information extracting unit for converting the concealed information based on the concealed information; And a document decompression unit decoding the bit block into which the bit value has been converted through the secret information extracting unit into the restoration format and restoring the same into an original document file.

본 발명의 또 다른 측면에 따른 가역 정보 은닉 장치가 기압축된 문서 파일에 정보를 은닉하는 방법은, (a) 원본 문서 파일을 기설정된 압축 포맷으로 인코딩하여 압축 문서 파일을 출력하는 단계; (b) 상기 압축 문서 파일의 비트스트림을 각각 기설정된 제 1 길이를 갖는 복수의 비트 블록으로 분할하는 단계; (c) 기설정된 은닉 정보 데이터를 기설정된 제 2 길이 단위로 분할한 복수의 은닉 정보 비트를 상기 복수의 비트 블록에 할당하는 단계; (d) 할당된 상기 은닉 정보 비트의 값에 기초하여 상기 비트 블록의 비트 값을 변환시키는 단계; 및 (e) 상기 비트 값을 변환시킨 비트 블록들을 포함하는 정보 은닉 문서 파일을 제공하는 단계를 포함한다.According to another aspect of the present invention, a method for concealing information in a precompressed document file includes the steps of: (a) encoding an original document file in a predetermined compression format to output a compressed document file; (b) dividing the bit stream of the compressed document file into a plurality of bit blocks each having a predetermined first length; (c) allocating a plurality of concealment information bits obtained by dividing predetermined concealment information data by a predetermined second length unit to the plurality of bit blocks; (d) converting a bit value of the bit block based on the value of the allocated secret information bit; And (e) providing an information hiding document file including bit blocks obtained by converting the bit values.

본 발명의 또 다른 측면에 따른 가역 정보 추출 장치가 정보 은닉 문서 파일에 은닉된 은닉 정보 데이터를 추출하는 방법은, (a) 압축 문서 파일에 은닉 정보 데이터가 인코딩된 상기 정보 은닉 문서 파일을 입력받는 단계; (b) 기설정된 복원 포맷을 적용하여 상기 정보 은닉 문서 파일을 기설정된 길이의 비트 블록 단위로 디코딩하는 단계; (c) 상기 디코딩된 비트 블록에 포함된 복수의 문자를 기설정된 정보 분석 기준에 기초하여 분석하여, 상기 분석한 결과에 따라 유의미 지수, 무의미 지수 및 문서 지수 중 적어도 하나를 포함하는 정보 지수를 산출하는 단계; (d) 산출된 상기 정보 지수와 기설정된 정보 지수 임계값을 비교한 결과에 기초하여 상기 비트 블록에 은닉된 은닉 정보 비트를 추출하는 단계; (e) 상기 비트 블록 별로 상기 디코딩 이전의 비트 값을 상기 은닉 정보 비트의 값에 기초하여 변환시키는 단계; 및 (f) 상기 비트 값이 변환된 비트 블록을 상기 복원 포맷으로 디코딩하여 원본 문서 파일로 복원하는 단계를 포함한다.A method for extracting secret information data hidden in an information hiding document file according to another aspect of the present invention includes the steps of (a) receiving the information hiding document file in which secret information data is encoded in a compressed document file step; (b) decoding the information hiding document file in units of a predetermined length by applying a preset restoration format; (c) analyzing a plurality of characters included in the decoded bit block based on a predetermined information analysis criterion, and calculating an information index including at least one of a significance index, a meaningless index, and a document index according to the analyzed result ; (d) extracting the hidden information bits hidden in the bit block based on a result of comparing the calculated information index with a preset information index threshold value; (e) converting the bit value before decoding according to the value of the secret information bit for each bit block; And (f) decoding the bit block in which the bit value has been converted into the restoration format and restoring the decoded bit block into an original document file.

전술한 본 발명의 과제 해결 수단에 의하면, 원본 데이터를 수정하지 않고도 완전하게 데이터를 복원할 수 있는 가역 인코딩 기법을 통해, 기압축된 상태의 문서 파일의 데이터 손실없이도 은닉 정보 데이터를 추가로 인코딩할 수 있다.According to the above-mentioned object of the present invention, it is possible to further encode the secret information data without data loss of the document file in the precompressed state through the reversible encoding technique which can completely restore the data without modifying the original data .

또한, 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 압축 문서 파일 상에 은닉 정보 데이터가 추가 인코딩된 문서 파일을, 비트 블록 별로 포함된 문자의 속성에 따라 산출한 정보 지수에 기초하여 디코딩함으로써 정확한 디코딩 결과를 획득할 수 있다.Further, according to any one of the tasks of the present invention, a document file in which secret information data is additionally encoded on a compressed document file is decoded based on an information index calculated according to the attribute of characters included in each bit block, The decoding result can be obtained.

도 1은 본 발명의 일 실시예에 따른 가역 정보 은닉 시스템의 구성을 나타낸 블록도이다.
도 2는 본 발명의 일 실시예에 따른 가역 정보 은닉 장치의 구성을 나타낸 블록도이다.
도 3은 본 발명의 일 실시예에 따른 압축 문서 파일의 비트스트림 구조를 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 문서 파일의 비트 블록에 포함된 문자를 설명하기 위한 일례이다.
도 5는 본 발명의 일 실시예에 따른 가역 정보 은닉 방법을 설명하기 위한 순서도이다.
도 6은 본 발명의 일 실시예에 따른 가역 정보 추출 장치의 구성을 나타낸 블록도이다.
도 7은 본 발명의 일 실시예에 따른 정보 지수를 산출하는 방식을 설명하기 위한 아스키 코드 테이블이다.
도 8은 본 발명의 일 실시예에 따른 가역 정보 추출 방법을 설명하기 위한 순서도이다.
1 is a block diagram illustrating a configuration of a reversible information concealment system according to an embodiment of the present invention.
2 is a block diagram illustrating a configuration of a reversible information concealment apparatus according to an embodiment of the present invention.
3 is a diagram for explaining a bitstream structure of a compressed document file according to an embodiment of the present invention.
FIG. 4 illustrates an example of a character included in a bit block of a document file according to an exemplary embodiment of the present invention. Referring to FIG.
5 is a flowchart illustrating a reversible information concealment method according to an embodiment of the present invention.
6 is a block diagram illustrating a configuration of a reversible information extraction apparatus according to an embodiment of the present invention.
7 is an ASCII code table for explaining a method of calculating an information index according to an embodiment of the present invention.
8 is a flowchart for explaining a reversible information extraction method according to an embodiment of the present invention.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is referred to as being "connected" to another part, it includes not only "directly connected" but also "electrically connected" with another part in between . Also, when an element is referred to as "comprising ", it means that it can include other elements as well, without departing from the other elements unless specifically stated otherwise.

도 1은 본 발명의 일 실시예에 따른 가역 정보 은닉 시스템의 구성을 나타낸 블록도이다.1 is a block diagram illustrating a configuration of a reversible information concealment system according to an embodiment of the present invention.

도 1에서와 같이, 본 발명의 일 실시예에 따른 가역 정보 은닉 시스템(10)은, 가역 정보 은닉 장치(100) 및 가역 정보 추출 장치(200)를 포함한다.1, the reversible information concealment system 10 according to an embodiment of the present invention includes a reversible information concealment apparatus 100 and a reversible information extraction apparatus 200. As shown in FIG.

구체적으로, 가역 정보 은닉 장치(100)는 설정된 압축 포맷으로 1차 인코딩된 압축 문서(Xk)에 은닉 정보 데이터(bk)를 은닉시키는 2차 인코딩을 처리하고, 2차 인코딩 결과에 따른 정보 은닉 문서(Yk)을 출력한다.More specifically, reversible information hiding apparatus 100 is secret information data (b k) the hidden secondary processing the encoding, and the information according to the result of the second encoding of the set compression document (X k) with a compressed format primary encoding And outputs a concealed document (Y k ).

가역 정보 추출 장치(200)는 가역 정보 은닉 장치(100)로부터 제공된 정보 은닉 문서(Yk)를 입력받아, 정보 은닉 문서(Yk)로부터 은닉 정보 데이터(bk)를 추출하여 압축 문서(Xk)를 획득한다. 그리고, 가역 정보 추출 장치(200)는 추출된 은닉 정보 데이터(bk)에 기초하여 압축 문서(Xk)을 디코딩하여 원본 문서를 복원한다.Reversible information extraction device 200 extracts the secret information data (b k) from receiving the information hiding document (Y k) supplied from the reversible information hiding apparatus 100, information hiding document (Y k) compressing the document (X k . Then, the reversible information extracting apparatus 200 decodes the compressed document X k based on the extracted secret information data b k to restore the original document.

이하, 도 2 내지 도 5를 참조하여 본 발명의 일 실시예에 따른 가역 정보 은닉 장치의 구성 및 동작에 대해서 상세히 설명하도록 한다.Hereinafter, the configuration and operation of the reversible information concealment apparatus according to an embodiment of the present invention will be described in detail with reference to FIGS. 2 to 5. FIG.

도 2는 본 발명의 일 실시예에 따른 가역 정보 은닉 장치의 구성을 나타낸 블록도이다.2 is a block diagram illustrating a configuration of a reversible information concealment apparatus according to an embodiment of the present invention.

도 2에서와 같이, 본 발명의 일 실시예에 따른 가역 정보 은닉 장치(100)는 문서 압축부(110), 정보 은닉 처리부(120), 정보 은닉 문서 제공부(130) 및 정보 지수 임계값 설정부(140)를 포함한다.2, the reversible information concealment apparatus 100 according to an exemplary embodiment of the present invention includes a document compression unit 110, an information concealment processing unit 120, an information concealment document providing unit 130, (140).

문서 압축부(110)는 원본 문서 파일을 기설정된 압축 포맷으로 인코딩(이하, ‘1차 인코딩’이라고 지칭함)하여 압축 문서 파일을 출력한다.The document compressing unit 110 encodes the original document file into a predetermined compression format (hereinafter, referred to as 'primary encoding') and outputs a compressed document file.

정보 은닉 처리부(120)는 문서 압축부(110)로부터 출력된 압축 문서 파일의 비트 스트림을 복수의 비트 블록으로 변환하고, 각 비트 블록에 은닉 정보 데이터를 할당 및 은닉 처리한다.The information concealment processing unit 120 converts the bit stream of the compressed document file output from the document compressing unit 110 into a plurality of bit blocks, and allocates and conceals secret information data to each bit block.

구체적으로, 정보 은닉 처리부(120)는 압축 문서 파일의 비트스트림을 각각 기설정된 길이(이하, ‘L’이라고 지칭함)를 갖는 복수의 비트 블록으로 분할한다. 참고로, 하기에서 설명할 가역 정보 추출 장치(200)의 은닉 정보 추출 처리를 위하여, 정보 은닉 처리부(120)는 정보 은닉 문서 제공부(130)를 통해 비트 블록의 길이 정보(즉, ‘L’)를 더 제공할 수 있다.Specifically, the information concealment processing unit 120 divides the bit stream of the compressed document file into a plurality of bit blocks each having a predetermined length (hereinafter referred to as "L"). For information, the information concealment processing unit 120 extracts the length information of the bit block (i.e., 'L') through the information hiding document providing unit 130 for the hidden information extracting process of the reversible information extracting apparatus 200, ). ≪ / RTI >

그리고, 정보 은닉 처리부(120)는 사전에 설정된 은닉 정보 데이터의 비트스트림을 기설정된 길이(즉, 비트 자릿수)의 비트 단위로 분할하여 복수의 은닉 정보 비트를 생성한다. 이때, 정보 은닉 처리부(120)는 은닉 정보 데이터를 한 자릿수의 비트 단위 또는 두 자릿수 이상의 비트 단위로 분할할 수 있다.The information concealment processing unit 120 generates a plurality of concealment information bits by dividing the bit stream of the previously set concealment information data in units of bits of a predetermined length (i.e., bit digits). At this time, the information concealment processing unit 120 may divide the secret information data into one-bit bit units or two-bit or more bit units.

예를 들어, 도 3은 본 발명의 일 실시예에 따른 압축 문서 파일의 비트스트림 구조를 설명하기 위한 도면이다.For example, FIG. 3 illustrates a bitstream structure of a compressed document file according to an embodiment of the present invention.

도 3에 도시한 바와 같이, 압축 문서 파일의 비트스트림은 헤더 및 페이로드로 구성되며, 정보 은닉 처리부(120)는 압축 문서 파일의 비트스트림 중 헤더를 제외한 페이로드의 비트스트림을 기설정된 길이(즉, L) 단위로 분할하여 복수개의 비트 블록(Xk)을 구분한다. 이때, 정보 은닉 처리부(120)는 은닉할 은닉 정보 데이터의 크기에 기초하여 비트 블록의 길이를 설정할 수 있다. 즉, 정보 은닉 처리부(120)는 압축 문서 파일의 비트스트림을 은닉 정보 비트의 개수에 대응하는 개수의 비트 블록으로 분할할 수 있다.3, the bit stream of the compressed document file is composed of a header and a payload, and the information concealment processing unit 120 converts the bit stream of the payload excluding the header of the compressed document file into a bit stream of a predetermined length ( That is, L) to divide the plurality of bit blocks X k . At this time, the information concealment processing unit 120 can set the length of the bit block based on the size of the secret information data to be concealed. That is, the information concealment processing unit 120 may divide the bitstream of the compressed document file into a number of bit blocks corresponding to the number of hidden information bits.

정보 은닉 처리부(120)는 각각의 비트 블록 별로 은닉 정보 비트를 할당하고, 할당된 은닉 정보 비트의 값에 따라 해당 비트 블록의 비트 값을 변환시키는 인코딩(이하, ‘2차 인코딩’이라고 지칭함)을 수행한다.The information concealment processing unit 120 allocates secret information bits for each bit block and encodes (hereinafter referred to as " secondary encoding ") which transforms the bit values of the corresponding bit block according to the value of the allocated secret information bits .

구체적으로, 정보 은닉 처리부(120)는 각 비트 블록에 한 자릿수 비트 단위의 은닉 정보 비트가 할당된 경우, 해당 은닉 정보 비트의 값에 따라 비트 블록의 비트 값을 1비트 단위로 유지 또는 반전시킨다.Specifically, when the secret information bits of one bit unit are allocated to each bit block, the information concealment processing unit 120 maintains or inverts the bit values of the bit block in units of one bit according to the value of the corresponding secret information bit.

예를 들어, 정보 은닉 처리부(120)는 압축 문서 파일의 페이로드의 각 비트 블록들에 대해 하기 수학식 1에 따른 연산을 적용하여 정보를 은닉한다.For example, the information concealment processing unit 120 applies the operation according to Equation (1) to each bit block of the payload of the compressed document file to conceal the information.

<수학식 1>&Quot; (1) &quot;

Figure 112014005699907-pat00001
Figure 112014005699907-pat00001

즉, 은닉 정보 비트의 값이 한 자릿수 비트인 ‘0’인 경우, 비트 블록(Xk)의 비트를 그대로 유지시켜 출력한다. 반면, 은닉 정보 비트의 값이 한 자릿수 비트인 ‘1’인 경우, 비트 블록(Xk)의 비트를 1 비트 단위로 반전시켜 출력한다. 참고로, 비트 블록의 비트 값을 유지시키거나 또는 반전시키는 은닉 정보 비트의 값은 상호 변경될 수 있다. That is, when the value of the secret information bit is '0' which is one-digit bit, the bit of the bit block X k is maintained as it is. On the other hand, when the value of the secret information bit is '1' which is one-digit bit, the bit of the bit block X k is inverted in units of 1 bit and output. For reference, the value of the secret information bit for holding or inverting the bit value of the bit block can be mutually changed.

또한, 정보 은닉 처리부(120)는 각 비트 블록에 두 자릿수 이상의 비트 단위의 은닉 정보 비트를 은닉시킬 수 있다.In addition, the information concealment processing unit 120 may conceal the bit information of two or more digits of bits in each bit block.

구체적으로, 정보 은닉 처리부(120)는 비트 블록의 길이와 대응된 길이를 갖는 복수의 난수 비트스트림을 생성하고, 할당된 은닉 정보 비트의 값 별로 서로 상이한 난수 비트스트림을 매칭시킨다. 그리고, 정보 은닉 처리부(120)는 할당된 은닉 정보 비트에 매칭된 난수 비트스트림과 해당 비트 블록을 1 비트 단위로 배타적 논리합(XOR)(또는 배타적 부정 논리합(XNOR)) 연산시켜 2차 인코딩을 처리한다.Specifically, the information concealment processing unit 120 generates a plurality of random bit streams having lengths corresponding to the lengths of the bit blocks, and matches different random bit streams according to the values of the allocated secret information bits. Then, the information concealment processing unit 120 performs an exclusive OR (XOR) (or XOR operation) on the random bit stream matched with the allocated secret information bits and the corresponding bit block in units of one bit to perform the secondary encoding do.

예를 들어, 정보 은닉 처리부(120)는 은닉 정보 비트가 두 자릿수 비트인 경우, 하기 수학식 2를 적용하여, 각 비트 값 별로 매칭된 난수 비트스트림에 따라 각 비트 블록의 비트 값을 변형시킨다.For example, when the secret information bit is a two-bit bit, the information concealment processing unit 120 transforms the bit value of each bit block according to a matched random bit stream for each bit value using the following equation (2).

<수학식 2>&Quot; (2) &quot;

Figure 112014005699907-pat00002
Figure 112014005699907-pat00002

즉, 은닉 정보 비트(bk)의 값이 두 자릿수 비트인 ‘002’ 인 경우 난수 비트스트림 ‘R0’이 매칭되며, 비트 블록(Xk)과 난수 비트스트림(R0)의 각 자릿수의 비트를 XOR(또는 ‘NXOR’) 연산하여 정보가 은닉된 비트 블록을 출력한다. 이와 같은 방식으로, K개의 서로 다른 난수를 난수 비트스트림으로 사용할 경우, 각 비트 블록 당 ‘log2K’의 은닉 정보 비트를 은닉시킬 수 있다.That is, the value of the secret information bits (b k) of the two-digit bit in the case of '002, the random number bit stream, and the "R 0" matching, bit block (X k) and the random number bit stream, each digit of the (R 0) XOR (or &quot; NXOR &quot;) operation of the bit to output the bit block whose information is concealed. In this way, when K different random numbers are used as a random number bit stream, the secret information bits of 'log 2 K' can be concealed for each bit block.

이처럼, 두 자릿수 이상의 은닉 정보 비트를 비트 블록에 은닉시킬 경우, 하기에서 설명할 가역 정보 추출 장치(200)의 은닉 정보 추출 처리를 위하여, 정보 은닉 처리부(120)는 정보 은닉 문서 제공부(130)를 통해 각 은닉 정보 비트의 값 별로 매칭된 난수 비트스트림을 더 제공할 수 있다.When the two or more secret information bits are concealed in the bit block, the information concealment processing unit 120 extracts the concealment information of the reversible information extraction device 200 from the information hiding document providing unit 130, And further provide a matched random bitstream for each value of each hidden information bit.

한편, 도 3에서와 같이, 압축 문서 파일의 비트스트림을 기설정된 길이 L로 분할할 경우, L보다 작은 길이를 갖는 비트 블록이 잔여할 수 있다. 즉, 도 3에서는 압축 문서 파일이 n개의 비트 블록(즉, X1 내지 Xn)으로 분할되되, 마지막 비트 블록(즉, Xn)의 길이가 L보다 작은 M인 것을 나타내었다. 이때, 정보 은닉 처리부(120)는 비트 블록에 대해 기설정된 길이(즉, L) 미만의 잔여 비트를 제외한 비트 블록들에 은닉 정보 비트를 할당할 수 있다.3, when a bit stream of a compressed document file is divided by a predetermined length L, a bit block having a length smaller than L may remain. That is, in FIG. 3, the compressed document file is divided into n number of bit blocks (i.e., X 1 to X n ), and the length of the last bit block (i.e., X n ) is M smaller than L. At this time, the information concealment processing unit 120 may allocate the secret information bits to the bit blocks excluding the remaining bits less than a predetermined length (i.e., L) for the bit block.

정보 은닉 문서 제공부(130)는 2차 인코딩된(즉, 비트 값을 변환시킨) 비트 블록들을 포함하는 정보 은닉 문서 파일을 가역 정보 추출 장치(200)로 제공한다.The information hiding document providing unit 130 provides the information hiding document file including the secondarily encoded (i.e., bit-converted) bit blocks to the reversible information extracting apparatus 200.

한편, 하기에서 설명할 가역 정보 추출 장치(200)가 정보 은닉 문서 파일에 은닉된 은닉 정보 데이터의 추출 및 원본 문서 파일의 복원을 성공적으로 처리하기 위해서는, 원본 문서 파일의 비트 블록 별로 포함된 복수의 ‘문자’의 속성을 분석하여 산출된 정보 지수가 필요하다. 참고로, 본 발명의 일 실시예에서 ‘문자’는 글자, 숫자, 부호, 제어 문자 등 의사 소통을 위한 모든 기호 체계를 의미한다.On the other hand, in order for the reversible information extraction apparatus 200 to be described below to successfully extract the hidden information data hidden in the information hiding document file and to restore the original document file, a plurality of The information index calculated by analyzing the attribute of 'character' is needed. For reference, in one embodiment of the present invention, 'character' means all symbol systems for communication such as letters, numbers, symbols, and control characters.

이를 위해, 본 발명의 일 실시예에 따른 가역 정보 은닉 장치(100)는 정보 지수 임계값 설정부(140)를 포함한다.To this end, the reversible information concealment apparatus 100 according to an embodiment of the present invention includes an information index threshold value setting unit 140.

정보 지수 임계값 설정부(140)는 원본 문서 파일의 비트스트림을 기설정된 크기를 갖는 복수의 비트 블록으로 분할하고, 각 비트 블록의 비트 값에 대응된 문자에 대해 기설정된 정보 지수를 산출한다. 본 발명의 일 실시예에서, 기설정된 정보 지수는 유의미 지수, 무의미 지수 및 문서 지수를 포함한다. 그리고, 정보 지수 임계값 설정부(140)는 산출된 정보 지수를 정보 지수 임계값으로서 설정한다.The information index threshold setting unit 140 divides the bit stream of the original document file into a plurality of bit blocks having a predetermined size and calculates a predetermined information index for the characters corresponding to the bit values of the respective bit blocks. In one embodiment of the present invention, the predetermined information index includes a significance index, a meaningless index, and a document index. Then, the information index threshold setting unit 140 sets the calculated information index as an information index threshold value.

정보 지수 임계값 설정부(140)는 정보 은닉 문서 제공부(130)를 통해 정보 지수 임계값을 가역 정보 은닉 추출 장치(200)로 제공한다.The information index threshold setting unit 140 provides the information index threshold value to the reversible information concealment extracting apparatus 200 through the information concealment document providing unit 130. [

구체적으로, 도 4는 본 발명의 일 실시예에 따른 문서 파일의 비트 블록에 포함된 문자를 설명하기 위한 일례이다.Specifically, FIG. 4 illustrates an example of a character included in a bit block of a document file according to an exemplary embodiment of the present invention.

도 4의 (a)에서는 문서 파일의 비트 블록에 유의미한 문자들이 포함된 경우를 나타내었다. 이때, 도 4의 (a)에 도시된 문자들이 원본 문서 파일의 비트 블록에 포함된 문자들인 것으로 가정하면, 정보 지수 임계값 설정부(140)는 해당 비트 블록의 문자들에 포함된 단어 및 기설정된 정보 분석 기준에 기초하여 유의미 지수 임계값을 산출한다. 이때, 기설정된 정보 분석 기준은 사전(dictionary) 데이터로서, 현존하는 단어가 저장된 데이터베이스로부터 획득할 수 있다. 참고로, 정보 지수 임계값 설정부(140)는 자체적으로 사전 데이터베이스를 포함하거나 외부 사전 데이터베이스를 이용하여 정보 분석 기준을 적용할 수 있다.FIG. 4A shows a case where significant characters are included in a bit block of a document file. Assuming that the characters shown in FIG. 4A are the characters included in the bit block of the original document file, the information index threshold setting unit 140 sets the information index threshold value to the word and the And calculates a significance index threshold value based on the set information analysis criterion. At this time, the predetermined information analysis criterion can be obtained from a database in which existing words are stored as dictionary data. For reference, the information index threshold setting unit 140 may include a dictionary database by itself or may apply an information analysis standard using an external dictionary database.

한편, 도 4의 (b)에서는 문서 파일의 비트 블록에 무의미한 문자들이 포함된 경우를 나타내었다. 이때, 도 4의 (b)에 도시된 문자들이 원본 문서 파일의 비트 블록에 포함된 문자들인 것으로 가정하면, 정보 지수 임계값 설정부(140)는 해당 비트 블록의 문자 별 속성과 기설정된 정보 분석 기준에 기초하여 무의미 지수 임계값 및 문서 지수 임계값을 설정할 수 있다. 이때, 기설정된 정보 분석 기준은 아스키 코드(ASCII) 및 유니코드(UNICODE) 등의 컴퓨터 표준 코드 데이터로 설정된다.On the other hand, FIG. 4B shows a case where meaningless characters are included in a bit block of a document file. Assuming that the characters shown in FIG. 4B are the characters included in the bit block of the original document file, the information index threshold setting unit 140 sets the information index threshold value setting unit 140 to set the character attributes of the corresponding bit block, An uncertainty index threshold value and a document index threshold value can be set based on the criterion. At this time, the predetermined information analysis standard is set as computer standard code data such as ASCII code and UNICODE.

이처럼, 정보 지수 임계값 설정부(140)는 원본 문서 파일의 비트 블록에 포함된 문자의 속성을 기설정된 정보 분석 기준에 기초하여 분석하고, 분석의 결과에 따라 유의미 지수 임계값, 무의미 지수 임계값 및 문서 지수 임계값 중 적어도 하나를 설정한다.As described above, the information index threshold setting unit 140 analyzes the attributes of the characters included in the bit blocks of the original document file based on predetermined information analysis criteria, and outputs the significance index threshold value, the no- And a document index threshold value.

한편, 정보 지수 임계값 설정부(140)가 원본 문서 파일에 기준하여 정보 지수 임계값을 산출하는 방식은, 하기에서 설명할 가역 정보 추출 장치(200)가 정보 은닉 문서 파일의 비트 블록 별로 처리하는 정보 지수 산출 방식과 대응된다. 따라서, 설명의 편의상 정보 지수 임계값 설정부(140)가 정보 지수 임계값을 산출하는 방식에 대한 상세한 설명은 생략하도록 한다.On the other hand, the information index threshold value setting unit 140 calculates the information index threshold value based on the original document file by using the reversible information extraction apparatus 200 to process each bit block of the information hiding document file Correspond to the information index calculation method. Therefore, for convenience of description, a detailed description of the method of calculating the information index threshold value by the information index threshold value setting unit 140 will be omitted.

이하, 도 5를 참조하여 본 발명의 일 실시예에 따른 가역 정보 은닉 방법에 대해서 상세히 설명하도록 한다.Hereinafter, a reversible information concealment method according to an embodiment of the present invention will be described in detail with reference to FIG.

도 5는 본 발명의 일 실시예에 따른 가역 정보 은닉 방법을 설명하기 위한 순서도이다.5 is a flowchart illustrating a reversible information concealment method according to an embodiment of the present invention.

먼저, 원본 문서 파일을 기설정된 압축 포맷으로 인코딩하여 압축 문서 파일을 출력한다(S510).First, an original document file is encoded in a predetermined compression format to output a compressed document file (S510).

그리고, 압축 문서 파일의 비트스트림을 각각 기설정된 길이를 갖는 복수의 비트 블록으로 분할한다(S520).Then, the bit stream of the compressed document file is divided into a plurality of bit blocks each having a predetermined length (S520).

그런 다음, 기설정된 은닉 정보 데이터를 기설정된 길이 단위로 분할한 복수의 은닉 정보 비트를 상기 복수의 비트 블록에 할당한다(S530).Then, a plurality of hidden information bits obtained by dividing the predetermined secret information data by a predetermined length unit are allocated to the plurality of bit blocks (S530).

그런 후, 할당된 은닉 정보 비트의 값에 기초하여 해당 비트 블록의 비트 값을 변환시킨다(S540).Then, the bit value of the corresponding bit block is converted based on the value of the allocated secret information bit (S540).

구체적으로, 상기 단계 (S540)에서는 한 자릿수 비트인 은닉 정보 비트가 할당된 경우 은닉 정보 비트의 값에 따라 해당 비트 블록의 비트 값을 1비트 단위로 유지 또는 반전시킬 수 있다.More specifically, in the step S540, when the hidden information bit is assigned, the bit value of the corresponding bit block may be maintained or reversed in units of one bit according to the value of the hidden information bit.

또한, 상기 단계(S540)에서는 적어도 두 자릿수 비트인 은닉 정보 비트가 할당된 경우, 각 은닉 정보 비트 값에 매칭된 난수 비트스트림을 적용하여 비트 블록의 비트 값을 변환시킬 수 있다. 이때, 비트 블록의 길이와 대응된 길이를 갖는 복수의 난수 비트스트림을 생성하고, 할당된 은닉 정보 비트의 값 별로 서로 상이한 난수 비트스트림을 매칭시킨 후, 할당된 은닉 정보 비트에 매칭된 난수 비트스트림 및 해당 비트 블록을 1 비트 단위로 배타적 논리합(XOR) 또는 배타적 부정 논리합(XNOR) 연산한다.In the step S540, when a secret information bit of at least two digits is allocated, a bit value of the bit block may be transformed by applying a random bit stream matched to each secret information bit value. At this time, a plurality of random bitstreams having a length corresponding to the length of the bit block are generated, and the random bitstreams are matched with each other according to the values of the allocated secret information bits. And performs the exclusive OR (XOR) or exclusive NOR (XNOR) operation on the corresponding bit block in units of one bit.

다음으로, 비트 값을 변환시킨 비트 블록들을 포함하는 정보 은닉 문서 파일을 가역 정보 추출 장치로 제공한다(S550).Next, the information hiding document file including the bit blocks obtained by converting the bit values is provided to the reversible information extracting apparatus (S550).

이때, 상기 단계 (S550)에서는 은닉 정보 비트의 값 별로 매칭된 난수 비트스트림 및 비트 블록에 대해 기설정된 길이의 정보를 가역 정보 추출 장치(200)로 더 제공할 수 있다.At this time, in step S550, the reversible information extracting apparatus 200 may further provide information on a random bit stream matched according to the value of the secret information bit and information of a predetermined length to the bit block.

한편, 상기 (S520) 단계에서는 압축 문서 파일의 헤더를 제외한 페이로드의 비트스트림을 상기 복수의 비트 블록으로 분할하며, 이에 따라 상기 단계 (S530) 및 (S540)은 헤더를 제외한 페이로드의 비트 블록에 대해 처리될 수 있다.In step S520, the bit stream of the payload excluding the header of the compressed document file is divided into the plurality of bit blocks. Accordingly, in steps S530 and S540, Lt; / RTI &gt;

또한, 상기 단계 (S550) 이전에, 원본 문서 파일의 비트스트림을 각각 기설정된 크기를 갖는 복수의 비트 블록으로 분할하고, 비트 블록 별로 포함된 문자에 대한 유의미 지수, 무의미 지수 및 문서 지수 중 적어도 하나에 대한 정보 지수 임계값를 산출하는 단계를 더 포함할 수 있다. 이때, 상기 단계 (S550)에서는, 가역 정보 추출 장치(200)로 정보 지수 임계값을 더 제공할 수 있다.Also, before the step S550, the bit stream of the original document file is divided into a plurality of bit blocks each having a predetermined size, and at least one of a significance index, a no- And a step of calculating an information index threshold value. At this time, in step S550, the reversible information extraction apparatus 200 may further provide an information index threshold value.

이하, 도 6 내지 도 8을 참조하여 본 발명의 일 실시예에 따른 가역 정보 추출 장치(200)의 구성 및 동작에 대해서 상세히 설명하도록 한다.Hereinafter, the configuration and operation of the reversible information extraction apparatus 200 according to an embodiment of the present invention will be described in detail with reference to FIGS. 6 to 8. FIG.

도 6은 본 발명의 일 실시예에 따른 가역 정보 추출 장치의 구성을 나타낸 블록도이다.6 is a block diagram illustrating a configuration of a reversible information extraction apparatus according to an embodiment of the present invention.

도 6에서와 같이, 본 발명의 일 실시예에 따른 가역 정보 추출 장치(200)는, 압축 문서 입력부(210), 복원 전처리부(220), 정보 분석부(230), 정보 분석 기준 데이터베이스(231), 은닉 정보 추출부(240) 및 문서 복원부(250)를 포함한다.6, the reversible information extraction apparatus 200 according to an embodiment of the present invention includes a compressed document input unit 210, a restoration preprocessing unit 220, an information analysis unit 230, an information analysis reference database 231 A concealment information extracting unit 240, and a document restoring unit 250.

압축 문서 입력부(210)는 가역 정보 은닉 장치(100)로부터 압축 문서 파일에 은닉 정보 데이터가 인코딩된 정보 은닉 문서 파일을 입력받는다.The compressed document input unit 210 receives the information concealment document file in which the confidential information data is encoded in the compressed document file from the reversible information concealment apparatus 100. [

이때, 압축 문서 입력부(210)는 가역 정보 은닉 장치(100)로부터 원본 문서 파일의 비트 블록 당 정보 지수에 기초하여 설정된 정보 지수 임계값 및 비트 블록 단위에 대한 길이 정보를 더 입력 받을 수 있다.At this time, the compressed document input unit 210 may further receive the information index threshold value and the length information for the bit block unit, which are set based on the information index per bit block of the original document file, from the reversible information concealment apparatus 100.

복원 전처리부(220)는 정보 은닉 문서 파일을 기설정된 복원 포맷으로 디코딩하되, 기설정된 길이(즉, ‘L’)의 비트 블록 단위로 디코딩(이하, ‘1차 디코딩’이라고 지칭함)한다. 이때, 기설정된 복원 포맷은 가역 정보 은닉 장치(100)가 원본 문서 파일을 압축하는데 사용한 압축 포맷과 대응된 포맷이다.The restoration preprocessing unit 220 decodes the information hiding document file into a predetermined restoration format, and decodes the information hiding document file in units of a bit block of a predetermined length (i.e., 'L') (hereinafter referred to as 'primary decoding'). At this time, the predetermined restoration format is a format corresponding to the compression format used by the reversible information concealment apparatus 100 for compressing the original document file.

정보 분석부(230)는 1차 디코딩된 비트 블록 별로 포함된 문자 및 기설정된 정보 분석 기준에 기초하여 정보 지수를 산출한다. 참고로, 정보 지수는 비트 블록에 포함된 문자 또는 문자의 집합 별 속성에 따른 값으로서, 유의미 지수, 무의미 지수 및 문서 지수를 포함한다.The information analyzer 230 calculates the information index based on the characters included in the first decoded bit block and predetermined information analysis criteria. For reference, the information index is a value according to a set property of a character or a character included in a bit block, and includes a significance index, a meaningless index, and a document index.

구체적으로, 정보 분석부(230)는 ‘사전(dictionary)’ 데이터를 정보 분석 기준으로 사용하여, 1차 디코딩된 비트 블록에 포함된 문자에 의한 단어 중 ‘사전’에 포함된 단어(이하, ‘유의미 단어’라고 지칭함)를 추출한다. 이때, 정보 분석부(230)는 정보 분석 기준 데이터베이스(231)에 기저장되어 있는 사전 데이터를 사용하거나, 외부 사전 데이터베이스로부터 정보 분석 기준을 획득하여 사용할 수 있다. 또한, 정보 분석부(230)는 비트 블록의 문자에서 공백에 기준하여 단어를 구분할 수 있다. 즉, 비트 블록의 문자 중 두 빈칸 사이에 위치한 적어도 하나의 문자를 단어로 판단한다.Specifically, the information analyzing unit 230 uses the 'dictionary' data as an information analysis criterion to identify words included in 'dictionaries' (hereinafter, referred to as' Quot; significant word &quot;). At this time, the information analysis unit 230 may use the dictionary data previously stored in the information analysis reference database 231, or may acquire and use the information analysis standard from the external dictionary database. In addition, the information analysis unit 230 can distinguish words based on spaces from the characters of the bit block. That is, at least one character positioned between two spaces among the characters of the bit block is determined as a word.

그리고, 정보 분석부(230)는 추출된 유의미 단어의 개수에 기초하여 유의미 지수를 산출한다. 예를 들어, 정보 분석부(230)는 해당 비트 블록의 문자에 포함된 단어 중 ‘사전’에 포함된 유의미 단어의 개수를 비트 블록의 문자에 포함된 전체 단어의 개수로 나눈 값을 유의미 지수로 산출할 수 있다.Then, the information analyzing unit 230 calculates a significance index based on the number of extracted meaning words. For example, the information analysis unit 230 may divide the number of significant words included in the 'dictionary' among the words included in the character of the corresponding bit block by the total number of words included in the characters of the bit block, Can be calculated.

또한, 정보 분석부(230)는 ‘컴퓨터 표준 코드’를 정보 분석 기준으로 사용하여, 1차 디코딩된 비트 블록의 문자 별 속성에 따른 무의미 지수 및 문서 지수를 산출한다. 이때, 정보 분석부(230)는 해당 비트 블록에 포함된 문자 별로 대응된 컴퓨터 표준 코드를 추출하고, 추출된 컴퓨터 표준 코드 중 기설정된 특정 코드에 대응된 문자의 개수에 기초하여 무의미 지수 및 문서 지수를 산출할 수 있다.Also, the information analyzing unit 230 calculates the nonsensitivity index and the document index according to the attribute of each character of the first decoded bit block using the 'computer standard code' as an information analysis standard. At this time, the information analyzing unit 230 extracts a computer standard code corresponding to each character included in the corresponding bit block, and based on the number of characters corresponding to the predetermined code among the extracted computer standard codes, Can be calculated.

참고로, 정보 분석부(230)는 정보 분석 기준 데이터베이스(231)에 기저장되어 있는 컴퓨터 표준 코드 테이블을 사용하거나, 외부 컴퓨터 표준 코드 데이터베이스로부터 정보 분석 기준을 획득하여 사용할 수 있다. 또한, 컴퓨터 표준 코드는 문자 속성에 따라 글자 코드, 숫자 코드, 부호 코드 및 제어 코드로 분류될 수 있다.For reference, the information analysis unit 230 may use a computer standard code table stored in the information analysis standard database 231 or may acquire an information analysis standard from an external computer standard code database. In addition, the computer standard codes can be classified into a letter code, a numeric code, a code code, and a control code according to character attributes.

구체적으로, 도 7은 본 발명의 일 실시예에서 문서 파일의 정보 지수를 산출하는 방식을 설명하기 위한 아스키 코드 테이블이다.Specifically, FIG. 7 is an ASCII code table for explaining a method of calculating an information index of a document file in an embodiment of the present invention.

아스키 코드(ASCII CODE)는 키보드에서 표현되는 모든 문자(예를 들어, ’A, a, B, b, C, c….’ 등의 ‘글자’, ‘0, 1, 2…’ 등의 ‘숫자’, ‘@, #, $....’ 등의 ‘부호’ 및 ‘제어’ 문자)의 코드를 포함한다. 도 7의 아스키 코드 테이블에 따르면, 코드 번호 ‘65’부터 ‘90’까지는 알파벳 대문자를 의미하고, 코드 번호 ‘97’부터 ‘122’까지는 알파벳 소문자를 의미하는 ‘글자’ 코드이다. 이와 같은, 글자 코드 집합을 ‘ASCII-A’라 지칭하도록 한다. 또한, 코드 번호 ‘48’부터 ‘57’까지는 ‘숫자’를 의미하며, 이러한 숫자 코드 집합을 ‘ASCII-N’이라 지칭하도록 한다. 또한, 코드 번호 ‘32’부터 ‘126’까지는 ‘부호’를 의미하며, 이러한 부호 코드 집합을 ‘ASCII-S’라 지칭하도록 한다. 그리고, 코드 번호 ‘I0’부터 ‘31’까지 및 코드 번호 ‘127’은 제어 문자를 의미하며, 이러한 제어 코드 집합을 ‘ASCII-C’라 지칭하도록 한다.ASCII CODE is an ASCII code that is used to represent all characters represented on the keyboard (eg, 'letters' such as' A, a, B, b, C, Quot; and &quot; control &quot; characters, such as &quot; number &quot;, &quot; @, #, According to the ASCII code table of FIG. 7, code numbers '65' to '90' signify uppercase alphabetic characters, and code numbers '97' to '122' signify lowercase alphabetic characters. Such a set of character codes is referred to as 'ASCII-A'. In addition, the code numbers '48' to '57' mean 'number', and this numeric code set is referred to as 'ASCII-N'. In addition, code numbers '32' to '126' mean 'code', and this code code set is referred to as 'ASCII-S'. The code numbers 'I0' to '31' and the code number '127' represent control characters, and the control code set is referred to as 'ASCII-C'.

이때, 정보 분석부(230)는 해당 비트 블록에 포함된 문자 별로 대응하는 아스키 코드를 추출하고, 추출된 아스키 코드 중 ASCII-C에 대응된 문자 개수에 따라 무의미 지수를 산출할 수 있다.At this time, the information analyzing unit 230 may extract the corresponding ASCII code for each character included in the corresponding bit block, and calculate the nonsense index according to the number of characters corresponding to ASCII-C among the extracted ASCII codes.

한편, 일반적으로 ASCII-C에 대응된 문자(이하, ‘ASCII-C 문자’라고 지칭함)는 일반적인 문서 파일(이하, ‘보통 문서 파일’이라고 함)에서는 발견되지 않으며, 길이가 매우 긴 문서 등의 특별한 문서(이하, ‘특정 문서 파일’이라고 함)에서 ASCII 코드 번호 ‘13’(즉, ‘CR’) 등의 ASCII-C 문자가 사용된다.On the other hand, in general, a character corresponding to ASCII-C (hereinafter referred to as an 'ASCII-C character') is not found in a general document file (hereinafter referred to as a ' ASCII-C characters such as ASCII code number '13' (i.e., 'CR') are used in a special document (hereinafter referred to as a specific document file).

이에 따라, 정보 분석부(230)는 해당 비트 블록에 포함된 문자 별로 대응하는 아스키 코드를 추출하고, 추출된 아스키 코드 중 ASCII-C 문자 및 ASCII-S 문자의 개수와 ASCII-A 문자 및 ASCII-N 문자의 개수 간의 관계에 기초하여 문서 지수를 산출한다. 예를 들어, 정보 분석부(230)는 ASCII-C 문자 및 ASCII-S 문자의 개수를 ASCII-A 문자 및 ASCII-N 문자의 개수로 나눈 값을 문서 지수로서 산출할 수 있다.Accordingly, the information analyzing unit 230 extracts a corresponding ASCII code for each character included in the corresponding bit block, extracts the number of ASCII-C characters and ASCII-S characters, ASCII-A characters, and ASCII- The document index is calculated based on the relationship between the number of N characters. For example, the information analysis unit 230 may calculate a value obtained by dividing the number of ASCII-C characters and ASCII-S characters by the number of ASCII-A characters and ASCII-N characters as a document index.

참고로, 보통 문서 파일의 경우, ASCII-A와 ASCII-N의 수가 ASCII-C 및 ASCII-S의 수보다 월등히 많을 것으로 예상된다. 예들 들어, ‘소설’ 및 ‘보고서’ 등의 문서 파일에서는 ASCII-A 문자의 개수가 압도적으로 많으며, ‘회계 장부’ 등의 문서 파일에서는 ASCII-N 문자의 개수가 압도적으로 많은 것이 정상적이다. 이에 따라, 정보 분석부(230)는 문서 파일의 종류에 따라 ASCII-C, ASCII-S, ASCII-A 및 ASCII-N 문자의 개수 간의 관계에 따른 연산을 처리할 수 있다.For reference, the number of ASCII-A and ASCII-N is expected to be significantly higher than the number of ASCII-C and ASCII-S for normal document files. For example, the number of ASCII-A characters in a document file such as 'novel' and 'report' is overwhelming, and the number of ASCII-N characters in a document file such as 'accounting book' is overwhelming. Accordingly, the information analyzing unit 230 can process an operation according to the relationship between the number of ASCII-C, ASCII-S, ASCII-A, and ASCII-N characters according to the type of the document file.

그리고, 정보 분석부(230)는 유의미 지수, 무의미지수 및 문서지수를 혼용하여 정보 지수를 산출하는 것도 가능하다.The information analyzing unit 230 may calculate the information index by using the significance index, the nonsense index, and the document index.

또한, 도 7에서는 정보 분석 기준으로서 아스키 코드 테이블만을 나타내었으나, 본 발명의 일 실시예에 따른 정보 분석부(230)는 정보 분석 기준으로서 유니코드 등의 다른 표준 코드들을 사용할 수 있다. 즉, 정보 분석 기준으로서 유니코드를 사용할 경우, 부호 코드 집합(‘UNICODE-C’로 지칭할 수 있음)과 대응된 문자의 개수를 무의미 지수로 산출할 수 있다. 이때, 유니코드 및 아스키코드 등 복수의 표준 코드를 혼용하여 정보 분석 기준으로서 사용하는 것도 가능하다.In FIG. 7, only the ASCII code table is shown as the information analysis standard. However, the information analysis unit 230 according to the embodiment of the present invention can use other standard codes such as Unicode as the information analysis standard. That is, when Unicode is used as the information analysis standard, the number of characters corresponding to the code code set (which may be referred to as 'UNICODE-C') can be calculated as a meaningless index. At this time, it is also possible to use a plurality of standard codes such as Unicode and ASCII codes as a standard for analyzing information.

다시 도 6으로 돌아가서, 은닉 정보 추출부(240)는 상기 1차 디코딩의 결과 및 상기 산출된 정보 지수에 기초하여 각 비트 블록에 은닉된 은닉 정보 비트를 추출한다. 그리고, 은닉 정보 추출부(240)는 비트 블록 별로 1차 디코딩 이전의 비트 값을 상기 추출된 은닉 정보 비트의 값에 기초하여 변환시키는 2차 디코딩을 처리한다.Returning to FIG. 6, the concealment information extracting unit 240 extracts the concealed information bits hidden in each bit block based on the result of the primary decoding and the calculated information index. Then, the concealment information extracting unit 240 performs a second-order decoding for converting the bit value before the first-order decoding for each bit block based on the value of the extracted conceal information bit.

구체적으로, 정보 은닉 문서 파일을 상기 복원 포맷으로 1차 디코딩한 결과, 해당 비트 블록의 디코딩이 실패한 경우, 은닉 정보 비트는 해당 비트 블록의 비트 값을 반전시키도록 설정된 값을 갖는다.Specifically, when decoding of the corresponding bit block fails as a result of first decoding the information hiding document file in the restoration format, the hidden information bit has a value set to invert the bit value of the corresponding bit block.

예를 들어, 가역 정보 은닉 장치(100)에서 압축 문서 파일의 비트 블록의 비트 값을 반전시키는 2차 인코딩을 수행하도록 설정된 은닉 정보 비트의 값이 ‘1’인 경우, 상기 1차 디코딩 실패 시 해당 비트 블록에 은닉 정보 비트 ‘1’이 은닉된 것을 알 수 있다. 이때, 은닉 정보 추출부(240)는 은닉 정보 비트 ‘1’을 추출하고 해당 비트 블록의 비트 값을 1 비트 단위로 반전시킨다. 참고로, 해당 비트 블록의 비트 값을 반전시키는 은닉 정보 비트의 값은 ‘1’ 또는 ‘0’ 중 어느 하나로 설정될 수 있다.For example, when the value of the secret information bit set to perform the secondary encoding for inverting the bit value of the bit block of the compressed document file is '1' in the reversible information concealment apparatus 100, It can be seen that the secret information bit '1' is hidden in the bit block. At this time, the concealment information extracting unit 240 extracts the concealed information bit '1' and inverts the bit value of the corresponding bit block in units of one bit. For reference, the value of the secret information bit for inverting the bit value of the corresponding bit block may be set to either '1' or '0'.

반면, 상기 1차 디코딩이 성공한 경우, 해당 비트 블록에 은닉된 은닉 정보 비트는 ‘1’ 또는 ‘0’일 가능성이 있다. 이에 따라, 은닉 정보 추출부(240)는 1차 디코딩이 성공된 비트 블록에 대해 산출된 정보 지수와 기설정된 정보 지수 임계값을 비교한 결과에 기초하여 은닉 정보 비트를 추출한다. 참고로, 은닉 정보 추출부(240)는 압축 문서 입력부(210)를 통해 가역 정보 은닉 장치(100)로부터 입력된 정보 지수 임계값을 획득할 수 있다.On the other hand, when the primary decoding is successful, there is a possibility that the secret information bit hidden in the corresponding bit block is '1' or '0'. Accordingly, the concealment information extracting unit 240 extracts the concealed information bits based on the result of comparing the information index calculated for the bit block for which the first-order decoding has been successfully performed and the predetermined information index threshold value. For reference, the concealment information extracting unit 240 can obtain the information index threshold value input from the reversible information concealment apparatus 100 through the compressed document input unit 210. [

이때, 은닉 정보 추출부(240)는 1차 디코딩된 비트 블록에 대해 산출된 정보 지수 중 유의미 지수, 무의미 지수 및 문서 지수 중 적어도 하나에 기초하여 은닉 정보 비트를 추출할 수 있다.At this time, the concealment information extracting unit 240 may extract the concealment information bits based on at least one of the significance index, the meaninglessness index, and the document index among the information indexes calculated for the first decoded bit block.

구체적으로, 은닉 정보 추출부(240)는 산출된 유의미 지수가 기설정된 유의미 지수 임계값보다 일정 범위 이상으로 낮은 경우, 원본 문서 파일에 비해 해당 비트 블록에 유의미 단어가 일정 기준 이하로 적게 포함된 것으로 판단한다.Specifically, if the calculated significance index is lower than a predetermined range of significance indexes, the concealment information extracting unit 240 determines that the significance word is less than a certain standard in the corresponding bit block as compared with the original document file .

예를 들어, 도 4의 (b)의 비트 블록을 상기 1차 디코딩된 비트 블록인 것으로 가정하고, 도 4의 (a)의 비트 블록을 원본 문서 파일의 비트 블록인 것으로 가정할 수 있다. 이때, 원본 문서 파일의 비트 블록에 포함된 문자에 기초하여 산출된 유의미 지수 임계값에 비해, 1차 디코딩된 비트 블록에 포함된 문자에 기초하여 산출된 유의미 지수가 현격히 낮을 것을 예측할 수 있다.For example, it is assumed that the bit block of FIG. 4B is the first decoded bit block, and that the bit block of FIG. 4A is a bit block of the original document file. At this time, it can be predicted that the significance index calculated based on the characters included in the first decoded bit block is significantly lower than the significance index threshold calculated based on the characters included in the bit block of the original document file.

이처럼, 산출된 유의미 지수가 유의미 지수 임계값에 비해 낮은 경우 1차 디코딩의 결과가 비성공적으로 판단할 수 있다. 즉, 해당 비트 블록이 원본 문서 파일의 비트 블록에서의 비트 값이 그대로 유지되지 않고 반전된 것으로 판단한다. 이에 따라, 은닉 정보 추출부(240)는 해당 비트 블록에 은닉된 은닉 정보 비트로서, 비트 값을 반전시키도록 사전에 설정된 값을 갖는 은닉 정보 비트를 추출한다. 그리고, 은닉 정보 추출부(240)는 해당 비트 블록의 1차 디코딩 이전의 비트 값을 1 비트 단위로 반전시킨다.As such, if the calculated significance index is lower than the significance index threshold value, the result of the first decoding can be judged unsuccessfully. That is, it is determined that the corresponding bit block is inverted without maintaining the bit value in the bit block of the original document file. Accordingly, the concealment information extracting unit 240 extracts the concealed information bits having the previously set values so as to invert the bit values, as the concealed information bits concealed in the corresponding bit block. Then, the concealment information extracting unit 240 inverts the bit value before the primary decoding of the bit block in units of one bit.

반면, 은닉 정보 추출부(240)는 산출된 유의미 지수가 유의미 지수 임계값과 동일 또는 일정 범위 이내로 높은 경우, 해당 비트 블록에 원본 문서 파일과 동일 또는 유사한 개수의 유의미 단어가 포함된 것으로 판단한다. 이에 따라, 은닉 정보 추출부(240)는 해당 비트 블록에 은닉된 은닉 정보 비트로서, 비트 블록의 비트 값을 유지시키도록 사전에 설정된 값을 갖는 은닉 정보 비트를 추출한다. 그리고, 은닉 정보 추출부(240)는 해당 비트 블록의 1차 디코딩 이전의 비트 값을 유지시킨다.On the other hand, if the calculated significance index is equal to or smaller than the threshold value of the significance index, the concealment information extracting unit 240 determines that the corresponding bit block includes the same or similar number of significant words as the original document file. Accordingly, the concealment information extracting unit 240 extracts concealment information bits having a preset value so as to hold the bit values of the bit block, as the concealed information bits concealed in the corresponding bit block. Then, the concealment information extracting unit 240 maintains the bit value before the primary decoding of the corresponding bit block.

한편, 은닉 정보 추출부(240)는 1차 디코딩된 비트 블록에 대해 산출된 무의미 지수가 기설정된 무의미 지수 임계값 보다 일정 범위 이상으로 높은 경우, 해당 비트 블록에 원본 문서 파일에 비해 일정 기준 이상으로 많은 무의미 문자가 포함된 것으로 판단한다.Meanwhile, the concealment information extracting unit 240 extracts the concealment index of the first-decoded bit block from the original document file by a predetermined criterion or more It is judged that many meaningless characters are included.

예를 들어, 상기 도 4의 (b)의 비트 블록은 두 개의 ASCII-N(즉, ‘5’ 및 ‘4’) 문자, 네 개의 ASCII-S(즉, ‘*’, ‘^’, ‘$’ 및 ‘?’) 문자를 포함하고 있다. 반면, 도 4의 (a)의 비트 블록은 ASCII-N 문자와 ASCII-S 문자를 포함하고 있지 않다. 도 4의 (b)의 비트 블록을 상기 1차 디코딩된 비트 블록인 것으로 가정하고, 도 4의 (a)의 비트 블록을 원본 문서 파일의 비트 블록인 것으로 가정할 때, 1차 디코딩된 비트 블록은 원본 문서 파일의 비트 블록에 비해 다수의 ASCII-C 문자를 포함하고 있으므로, 1차 디코딩이 비성공적이라 판단된다. 이에 따라, 은닉 정보 추출부(240)는 1차 디코딩된 비트 블록으로부터, 비트 블록의 비트 값을 반전시키도록 사전에 설정된 값을 갖는 은닉 정보 비트를 추출할 수 있다. 그리고, 은닉 정보 추출부(240)는 추출된 은닉 정보 비트에 따라 해당 비트 블록의 1차 디코딩 이전의 비트 값을 1 비트 단위로 반전시킨다.For example, the bit block of FIG. 4B includes two ASCII-N (i.e., '5' and '4') characters, four ASCII-S $ 'And'? ') Characters. On the other hand, the bit block in FIG. 4A does not include the ASCII-N character and the ASCII-S character. Assuming that the bit block of FIG. 4B is the first decoded bit block and that the bit block of FIG. 4A is a bit block of the original document file, the first decoded bit block Is comprised of a number of ASCII-C characters compared to the bit block of the original document file, it is determined that the primary decoding is unsuccessful. Accordingly, the concealment information extracting unit 240 can extract, from the first decoded bit block, the concealment information bit having a preset value to invert the bit value of the bit block. Then, the concealment information extracting unit 240 inverts the bit value before the first-order decoding of the bit block in units of one bit according to the extracted concealment information bit.

반면, 은닉 정보 추출부(240)는 산출된 무의미 지수가 무의미 지수 임계값 이하이거나 ‘0’인 경우, 해당 비트 블록에 원본 문서 파일과 동일 또는 유사한 개수의 무의미 문자가 포함된 것으로 판단한다. 즉, 1차 디코딩이 성공적이라 판단한다. 이에 따라, 은닉 정보 추출부(240)는 1차 디코딩된 비트 블록으로부터, 비트 블록의 비트 값을 유지시키도록 사전에 설정된 값을 갖는 은닉 정보 비트를 추출한다. 그리고, 은닉 정보 추출부(240)는 추출된 은닉 정보 비트의 값에 따라 해당 비트 블록의 1차 디코딩 이전의 비트 값을 유지시킨다.On the other hand, the concealment information extracting unit 240 judges that, if the calculated insignificant index is less than or equal to the meaningless index threshold value, the bit block includes the same or a similar number of meaningless characters as the original document file. That is, it is determined that the primary decoding is successful. Accordingly, the concealment information extracting unit 240 extracts the concealed information bits having the preset values from the first decoded bit block to hold the bit values of the bit blocks. Then, the concealment information extractor 240 maintains the bit value of the bit block before the first-order decoding according to the value of the extracted concealment information bit.

한편, 은닉 정보 추출부(240)는 1차 디코딩된 비트 블록에 대해 산출된 문서 지수가 기설정된 문서 지수 임계값 보다 일정 범위 이상으로 높은 경우, 해당 비트 블록에 원본 문서 파일에 비해 특정 문서에만 포함되는 특정 문자들이 일정 기준 이상으로 많이 포함된 것으로 판단한다. 즉, 해당 비트 블록이 원본 문서 파일의 비트 블록에서의 비트 값이 그대로 유지되지 않고 반전된 것으로 판단한다. 이에 따라, 은닉 정보 추출부(240)는 해당 비트 블록에 은닉된 은닉 정보 비트로서, 비트 값을 반전시키도록 사전에 설정된 값을 갖는 은닉 정보 비트를 추출한다. 그리고, 은닉 정보 추출부(240)는 해당 비트 블록의 1차 디코딩 이전의 비트 값을 1 비트 단위로 반전시킨다.On the other hand, when the document index calculated for the first decoded bit block is higher than a preset threshold value of the document index, the concealment information extracting unit 240 inserts only the specific document into the corresponding bit block It is judged that a certain number of characters are included more than a predetermined standard. That is, it is determined that the corresponding bit block is inverted without maintaining the bit value in the bit block of the original document file. Accordingly, the concealment information extracting unit 240 extracts the concealed information bits having the previously set values so as to invert the bit values, as the concealed information bits concealed in the corresponding bit block. Then, the concealment information extracting unit 240 inverts the bit value before the primary decoding of the bit block in units of one bit.

반면, 은닉 정보 추출부(240)는 산출된 문서 지수가 문서 지수 임계값 이하이거나 ‘0’인 경우, 해당 비트 블록에 원본 문서 파일과 동일 또는 유사한 개수의 상기 특정 문자가 포함된 것으로 판단한다. 즉, 즉, 1차 디코딩이 성공적이라 판단한다. 이에 따라, 은닉 정보 추출부(240)는 1차 디코딩된 비트 블록으로부터, 비트 블록의 비트 값을 유지시키도록 사전에 설정된 값을 갖는 은닉 정보 비트를 추출한다. 그리고, 은닉 정보 추출부(240)는 추출된 은닉 정보 비트의 값에 따라 해당 비트 블록의 1차 디코딩 이전의 비트 값을 유지시킨다.On the other hand, if the calculated document index is less than or equal to the document index threshold value, the concealment information extracting unit 240 determines that the specific block has the same or similar number as the original document file in the corresponding bit block. That is, it is determined that the primary decoding is successful. Accordingly, the concealment information extracting unit 240 extracts the concealed information bits having the preset values from the first decoded bit block to hold the bit values of the bit blocks. Then, the concealment information extractor 240 maintains the bit value of the bit block before the first-order decoding according to the value of the extracted concealment information bit.

다시 도 6으로 돌아가서, 문서 복원부(250)는 은닉 정보 추출부(240)를 통해 상기 비트 값이 변환(즉, ‘반전’ 또는 ‘유지’)된 비트 블록을 상기 복원 포맷으로 디코딩하여 원본 문서 파일로 복원한다.Referring back to FIG. 6, the document restoring unit 250 decodes the bit block converted (i.e., 'inverted' or 'maintained') by the bit value into the restoration format through the hidden information extracting unit 240, Restore to a file.

이하, 도 8을 참조하여 본 발명의 일 실시예에 따른 가역 정보 추출 방법에 대해서 상세히 설명하도록 한다.Hereinafter, a method for extracting reversible information according to an embodiment of the present invention will be described in detail with reference to FIG.

도 8은 본 발명의 일 실시예에 따른 가역 정보 추출 방법을 설명하기 위한 순서도이다.8 is a flowchart for explaining a reversible information extraction method according to an embodiment of the present invention.

먼저, 가역 정보 은닉 장치(100)로부터 압축 문서 파일에 은닉 정보 데이터가 인코딩된 정보 은닉 문서 파일을 입력받는다(S810).First, the reversible information concealment apparatus 100 receives the information concealment document file in which the confidential information data is encoded in the compressed document file (S810).

이때, 상기 단계 (S810)에서는, 원본 문서 파일의 비트 블록에 포함된 문자에 기초하여 산출된 정보 지수 임계값 및, 비트 블록의 길이 정보 중 적어도 하나를 더 입력 받을 수 있다.At this time, at step S810, at least one of the information index threshold value calculated based on the characters included in the bit block of the original document file and the length information of the bit block may be further input.

그런 후, 기설정된 복원 포맷을 적용하여 정보 은닉 문서 파일을 기설정된 길이의 비트 블록 단위로 디코딩한다(S820).Then, the information hiding document file is decoded in units of a predetermined length by applying a preset restoration format (S820).

다음으로, 상기 디코딩된 비트 블록에 포함된 복수의 문자에 기초하여 정보 지수를 산출한다(S830).Next, an information index is calculated based on the plurality of characters included in the decoded bit block (S830).

구체적으로, 상기 디코딩된 비트 블록에 포함된 문자를 기설정된 정보 분석 기준에 기초하여 분석하고, 분석한 결과에 따라 유의미 지수, 무의미 지수 및 문서 지수 중 적어도 하나의 정보 지수를 산출한다.Specifically, a character included in the decoded bit block is analyzed based on a predetermined information analysis criterion, and at least one information index among a significance index, a meaninglessness index, and a document index is calculated according to a result of the analysis.

이때, 기설정된 ‘사전’을 정보 분석 기준으로 사용하여, 비트 블록에 포함된 복수의 문자에 의한 단어 중 ‘사전’에 포함된 유의미 단어를 추출하고, 유의미 단어의 개수에 기초하여 유의미 지수를 산출할 수 있다.At this time, by using a predetermined 'dictionary' as an information analysis standard, a significant word included in a 'dictionary' among words by a plurality of characters included in a bit block is extracted and a significance index is calculated based on the number of significant words can do.

그리고, 기설정된 글자 코드, 숫자 코드, 부호 코드 및 제어 코드를 포함하는 컴퓨터 표준 코드를 정보 분석 기준으로 사용하여, 비트 블록에 포함된 복수의 문자 별로 대응하는 컴퓨터 표준 코드를 추출하고, 추출된 컴퓨터 표준 코드 중 부호 코드에 대응된 문자의 개수에 기초하여 무의미 지수를 산출할 수 있다.Then, a computer standard code including a predetermined character code, a numeric code, a code code, and a control code is used as an information analysis standard to extract a corresponding computer standard code for each of a plurality of characters included in the bit block, The meaninglessness index can be calculated based on the number of characters corresponding to the code code in the standard code.

또한, 기설정된 글자 코드, 숫자 코드, 부호 코드 및 제어 코드를 포함하는 컴퓨터 표준 코드를 정보 분석 기준으로 사용하여, 비트 블록에 포함된 복수의 문자 별로 대응하는 컴퓨터 표준 코드를 추출하고, 추출된 컴퓨터 표준 코드 중 글자 코드 및 숫자 코드 중 적어도 하나에 대응된 문자의 개수와 부호 코드 및 제어 코드 중 적어도 하나에 대응된 문자의 개수에 기초하여 문서 지수를 산출할 수 있다.Further, a computer standard code including a predetermined character code, a numeric code, a code code, and a control code is used as an information analysis standard to extract a corresponding computer standard code for each of a plurality of characters included in a bit block, The document index can be calculated based on the number of characters corresponding to at least one of the letter code and the numeric code in the standard code, and the number of characters corresponding to at least one of the code code and the control code.

다음으로, 산출된 정보 지수와 기설정된 정보 지수 임계값을 비교한 결과에 기초하여 비트 블록에 은닉된 은닉 정보 비트를 추출한다(S840).Next, the hidden information bits hidden in the bit block are extracted based on a result of comparing the calculated information index and a preset information index threshold (S840).

이때, 비트 블록 당 한 자릿수 비트 단위의 은닉 정보 비트를 추출하되, 산출한 정보 지수와 정보 지수 임계값을 비교한 결과에 따라 제 1 비트 값을 갖는 제 1 은닉 정보 비트를 추출하거나 또는 제 1 비트 값이 반전된 제 2 비트 값을 갖는 제 2 은닉 정보 비트를 추출할 수 있다.At this time, a secret information bit of one bit unit per bit block is extracted. The first secret information bit having the first bit value is extracted according to the result of comparing the calculated information index and the information index threshold value, The second hidden information bit having the second bit value whose value is inverted can be extracted.

그런 후, 비트 블록 별로 디코딩 이전의 비트 값을 은닉 정보 비트의 값에 기초하여 변환시킨다(S850).Then, the bit value before decoding is converted for each bit block based on the value of the secret information bit (S850).

구체적으로, 추출된 은닉 정보 비트의 값에 따라 비트 블록 별 비트 값을 1 비트 단위로 유지 또는 반전시킨다.Specifically, the bit value of each bit block is maintained or inverted in units of one bit according to the value of the extracted hidden information bit.

그런 후, 비트 값이 변환된 비트 블록을 상기 복원 포맷으로 디코딩하여 원본 문서 파일로 복원한다(S860).Then, the bit block in which the bit value is converted is decoded into the restoration format and restored to the original document file (S860).

이상 도 6 내지 도 8에서는, 가역 정보 추출 장치(200)가 정보 은닉 문서 파일의 비트 블록 당 한 자릿수 비트 단위의 은닉 정보 비트를 추출한 후 2차 디코딩한 것을 설명하였다.6 to 8, the reversible information extracting apparatus 200 extracts the secret information bits in units of one bit per bit block of the information hiding document file and then performs secondary decoding on the extracted information bits.

그런데, 본 발명의 다른 실시예에 따른 가역 정보 추출 장치(200)는 정보 은닉 문서 파일의 비트 블록 당 두 자릿수 이상의 비트 단위의 은닉 정보 비트를 추출하여 2차 디코딩을 처리하는 것도 가능하다. 이때, 가역 정보 추출 장치(200)는 가역 정보 은닉 장치(100)로부터 은닉 정보 비트의 값 별로 매칭된 난수 비트스트림을 수신한다. 그리고, 가역 정보 추출 장치(200)는 정보 은닉 문서 파일의 각 비트 블록 별로 산출된 정보 지수와 기설정된 정보 지수 임계값을 비교한 결과, 및 난수 비트스트림에 기초하여 비트 블록 별 은닉 정보 비트를 추출한다. 또한, 가역 정보 추출 장치(200)는 추출된 비트 블록 별 은닉 정보 비트에 기초하여 정보 은닉 문서 파일에 대한 2차 디코딩을 수행한다.However, the reversible information extracting apparatus 200 according to another embodiment of the present invention can extract the secret information bits of two or more bits per bit block of the information hiding document file to process the secondary decoding. At this time, the reversible information extraction apparatus 200 receives a random number bit stream matched by the value of the secret information bit from the reversible information concealment apparatus 100. [ The reversible information extracting apparatus 200 extracts the hidden information bits for each bit block based on the comparison result between the information index calculated for each bit block of the information hiding document file and the predetermined information index threshold value, do. In addition, the reversible information extracting apparatus 200 performs the secondary decoding on the information hiding document file based on the extracted bit information for each bit block.

본 발명의 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다. Embodiments of the present invention may also be embodied in the form of a recording medium including instructions executable by a computer, such as program modules, being executed by a computer. Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. In addition, the computer-readable medium may include both computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically includes any information delivery media, including computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transport mechanism.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.It will be understood by those skilled in the art that the foregoing description of the present invention is for illustrative purposes only and that those of ordinary skill in the art can readily understand that various changes and modifications may be made without departing from the spirit or essential characteristics of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single entity may be distributed and implemented, and components described as being distributed may also be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.

10: 가역 정보 은닉 시스템
100: 가역 정보 은닉 장치
200: 가역 정보 추출 장치
10: reversible information concealment system
100: reversible information concealment device
200: reversible information extraction device

Claims (20)

가역 정보 은닉 장치에 있어서,
원본 문서 파일을 기설정된 압축 포맷으로 1차 인코딩하여 압축 문서 파일을 출력하는 문서 압축부;
상기 압축 문서 파일의 비트스트림을 각각 기설정된 제 1 길이를 갖는 복수의 비트 블록으로 분할하고, 기설정된 은닉 정보 데이터를 각각 기설정된 제 2 길이를 갖는 복수의 은닉 정보 비트로 분할하여 상기 복수의 비트 블록에 각각 할당하고, 할당된 상기 은닉 정보 비트의 값에 기초하여 상기 비트 블록의 비트 값을 변환시키는 2차 인코딩을 처리하는 정보 은닉 처리부; 및
상기 비트 값을 변환시킨 비트 블록들을 포함하는 정보 은닉 문서 파일을 제공하는 정보 은닉 문서 제공부를 포함하는 가역 정보 은닉 장치.
A reversible information concealment apparatus comprising:
A document compression unit for primarily encoding an original document file into a predetermined compression format and outputting a compressed document file;
Dividing the bit stream of the compressed document file into a plurality of bit blocks each having a predetermined first length and dividing the predetermined hidden information data into a plurality of hidden information bits each having a predetermined second length, And an information concealment processing unit for processing a second encoding process for converting a bit value of the bit block based on the value of the allocated secret information bit; And
And an information hiding document providing unit for providing an information hiding document file including the bit blocks obtained by converting the bit values.
제 1 항에 있어서,
상기 정보 은닉 처리부는,
상기 할당된 은닉 정보 비트의 값에 따라 상기 비트 블록의 비트 값을 1 비트 단위로 유지 또는 반전시키는 가역 정보 은닉 장치.
The method according to claim 1,
The information concealment processing unit,
And the bit value of the bit block is maintained or reversed in units of one bit according to the value of the allocated secret information bit.
제 1 항에 있어서,
상기 정보 은닉 처리부는,
상기 비트 블록의 길이와 대응된 길이를 갖는 복수의 난수 비트스트림을 생성하고,
상기 할당된 은닉 정보 비트에 매칭된 난수 비트스트림 및 상기 비트 블록을 1 비트 단위로 배타적 논리합(XOR) 또는 배타적 부정 논리합(XNOR) 연산하는 가역 정보 은닉 장치.
The method according to claim 1,
The information concealment processing unit,
Generating a plurality of random bit streams having a length corresponding to the length of the bit block,
A random number bit stream matched with the allocated secret information bits, and an XOR operation or an XOR operation of the bit blocks in units of one bit.
제 1 항에 있어서,
상기 원본 문서 파일의 비트스트림을 복수의 비트 블록으로 구분하고, 상기 비트 블록 별로 포함된 복수의 문자를 기설정된 정보 분석 기준에 따라 분석하여 유의미 지수, 무의미 지수, 및 문서 지수 중 적어도 하나를 산출하고, 상기 산출된 유의미 지수, 무의미 지수, 및 문서 지수 중 적어도 하나를 정보 지수 임계값으로 설정하는 정보 지수 임계값 설정부를 더 포함하되,
상기 정보 은닉 문서 제공부는,
상기 정보 지수 임계값을 가역 정보 추출 장치로 제공하는 가역 정보 은닉 장치.
The method according to claim 1,
A bit stream of the original document file is divided into a plurality of bit blocks, and a plurality of characters included in each of the bit blocks are analyzed according to a predetermined information analysis standard to calculate at least one of a significance index, a meaninglessness index, and a document index And an information index threshold value setting unit for setting at least one of the calculated significance index, the meaninglessness index, and the document index as an information index threshold value,
Wherein the information hiding document providing unit comprises:
And provides the information index threshold value to the reversible information extracting apparatus.
제 4 항에 있어서,
상기 정보 분석 기준은,
기설정된 사전(dictionary) 및 컴퓨터 표준 코드 중 적어도 하나로 설정된 가역 정보 은닉 장치.
5. The method of claim 4,
The above-
Wherein the predetermined information is set to at least one of a predetermined dictionary and a computer standard code.
가역 정보 추출 장치에 있어서,
압축 문서 파일에 은닉 정보 데이터가 인코딩된 정보 은닉 문서 파일을 입력받는 압축 문서 입력부;
기설정된 복원 포맷을 적용하여 상기 정보 은닉 문서 파일을 기설정된 길이의 비트 블록 단위로 1차 디코딩하는 복원 전처리부;
상기 1차 디코딩된 비트 블록에 포함된 복수의 문자를 기설정된 정보 분석 기준에 기초하여 분석하고, 상기 분석한 결과에 따라 유의미 지수, 무의미 지수 및 문서 지수 중 적어도 하나를 포함하는 정보 지수를 산출하는 정보 분석부;
산출된 상기 정보 지수와 기설정된 정보 지수 임계값을 비교한 결과에 기초하여 상기 비트 블록에 은닉된 은닉 정보 비트를 추출하고, 상기 비트 블록 별로 상기 1차 디코딩 이전의 비트 값을 상기 은닉 정보 비트의 값에 기초하여 변환시키는 2차 디코딩을 처리하는 은닉 정보 추출부; 및
상기 은닉 정보 추출부를 통해 상기 비트 값이 변환된 상기 비트 블록을 상기 복원 포맷으로 디코딩하여 원본 문서 파일로 복원하는 문서 복원부를 포함하는 가역 정보 추출 장치.
A reversible information extracting apparatus comprising:
A compressed document input unit for receiving an information hiding document file in which secret information data is encoded in a compressed document file;
A restoration preprocessor for first decoding the information hiding document file in units of a predetermined number of bit blocks by applying a predetermined restoration format;
Analyzing a plurality of characters included in the first decoded bit block based on a predetermined information analysis criterion and calculating an information index including at least one of a significance index, a meaningless index, and a document index according to the analyzed result Information Analysis Department;
Extracting a hidden information bit hidden in the bit block based on a result of comparing the calculated information index and a predetermined information exponent threshold value and outputting a bit value before the primary decoding for each bit block, A concealment information extracting unit for processing the second decoding to convert the second information based on the value; And
And a document decompression unit decoding the bit block into which the bit value is converted through the secret information extracting unit into the restoration format and restoring the bit block into an original document file.
제 6 항에 있어서,
상기 은닉 정보 추출부는,
상기 비트 블록 당 한 자릿수 비트 단위의 상기 은닉 정보 비트를 추출하며,
상기 산출한 정보 지수와 상기 정보 지수 임계값을 비교한 결과에 따라 제 1 비트 값을 갖는 제 1 은닉 정보 비트 또는 상기 제 1 비트 값이 반전된 제 2 비트 값을 갖는 제 2 은닉 정보 비트를 추출하되,
추출된 상기 은닉 정보 비트의 값에 따라 상기 비트 블록 별 비트 값을 1 비트 단위로 유지 또는 반전시키는 가역 정보 추출 장치.
The method according to claim 6,
Wherein the hidden information extracting unit extracts,
Extracting the secret information bits in units of one bit per bit block,
Extracting a first hidden information bit having a first bit value or a second hidden information bit having a second bit value in which the first bit value is inverted according to a result of comparing the calculated information index and the information index threshold value, However,
And the bit value for each bit block is maintained or inverted in units of one bit according to the value of the extracted secret information bit.
제 6 항에 있어서,
상기 압축 문서 입력부는,
가역 정보 은닉 장치로부터 상기 원본 문서 파일의 비트 블록 별로 산출된 상기 정보 지수 임계값을 더 입력받으며,
상기 정보 지수 임계값은,
상기 유의미 지수, 무의미 지수 및 문서 지수 중 적어도 하나의 임계값을 포함하는 가역 정보 추출 장치.
The method according to claim 6,
Wherein the compressed document input unit comprises:
The information index threshold value calculated for each bit block of the original document file is further input from the reversible information concealment apparatus,
The information index threshold value is a value
And a threshold value of at least one of the significance index, the no-sense index, and the document index.
제 6 항에 있어서,
상기 정보 분석부는,
기설정된 사전(dictionary)을 상기 정보 분석 기준으로 사용하여, 상기 비트 블록에 포함된 복수의 문자에 의한 단어 중 상기 사전에 포함된 유의미 단어를 추출하고,
상기 유의미 단어의 개수에 기초하여 상기 유의미 지수를 산출하는 가역 정보 추출 장치.
The method according to claim 6,
The information analyzing unit,
Extracting a meaning word included in the dictionary from a plurality of characters included in the bit block using a predetermined dictionary as the information analysis criterion,
And calculating the significance index based on the number of the significant words.
제 6 항에 있어서,
상기 정보 분석부는,
기설정된 글자 코드, 숫자 코드, 부호 코드 및 제어 코드를 포함하는 컴퓨터 표준 코드를 상기 정보 분석 기준으로 사용하여, 상기 비트 블록에 포함된 복수의 문자 별로 대응하는 상기 컴퓨터 표준 코드를 추출하고, 상기 추출된 컴퓨터 표준 코드 중 상기 부호 코드에 대응된 문자의 개수에 기초하여 상기 무의미 지수를 산출하는 가역 정보 추출 장치.
The method according to claim 6,
The information analyzing unit,
Extracting a corresponding computer standard code for each of a plurality of characters included in the bit block by using a computer standard code including a predetermined character code, a numeric code, a code code and a control code as the information analysis reference, And the number of characters corresponding to the code code among the computer standard codes is calculated.
제 6 항에 있어서,
상기 정보 분석부는,
기설정된 글자 코드, 숫자 코드, 부호 코드 및 제어 코드를 포함하는 컴퓨터 표준 코드를 상기 정보 분석 기준으로 사용하여, 상기 비트 블록에 포함된 복수의 문자 별로 대응하는 상기 컴퓨터 표준 코드를 추출하고, 상기 추출된 컴퓨터 표준 코드 중 상기 글자 코드 및 숫자 코드 중 적어도 하나에 대응된 문자의 제 1 개수와 상기 부호 코드 및 제어 코드 중 적어도 하나에 대응된 문자의 제 2 개수에 기초하여 상기 문서 지수를 산출하는 가역 정보 추출 장치.
The method according to claim 6,
The information analyzing unit,
Extracting a corresponding computer standard code for each of a plurality of characters included in the bit block by using a computer standard code including a predetermined character code, a numeric code, a code code and a control code as the information analysis reference, Calculating a document index based on a first number of characters corresponding to at least one of the letter code and the numeric code among the computer standard codes and a second number of characters corresponding to at least one of the code code and the control code Information extraction device.
가역 정보 은닉 장치가 기압축된 문서 파일에 정보를 은닉하는 방법에 있어서,
(a) 원본 문서 파일을 기설정된 압축 포맷으로 1차 인코딩하여 압축 문서 파일을 출력하는 단계;
(b) 상기 압축 문서 파일의 비트스트림을 각각 기설정된 제 1 길이를 갖는 복수의 비트 블록으로 분할하는 단계;
(c) 기설정된 은닉 정보 데이터를 기설정된 제 2 길이 단위로 분할한 복수의 은닉 정보 비트를 상기 복수의 비트 블록에 할당하는 단계;
(d) 할당된 상기 은닉 정보 비트의 값에 기초하여 상기 비트 블록의 비트 값을 변환시키는 2차 인코딩을 처리하는 단계; 및
(e) 상기 비트 값을 변환시킨 비트 블록들을 포함하는 정보 은닉 문서 파일을 제공하는 단계를 포함하는 가역 정보 은닉 방법.
A method for concealing information in a precompressed document file by a reversible information concealment device,
(a) outputting a compressed document file by first encoding an original document file in a predetermined compression format;
(b) dividing the bit stream of the compressed document file into a plurality of bit blocks each having a predetermined first length;
(c) allocating a plurality of concealment information bits obtained by dividing predetermined concealment information data by a predetermined second length unit to the plurality of bit blocks;
(d) processing a secondary encoding that transforms the bit value of the bit block based on the value of the allocated secret information bit; And
(e) providing an information hiding document file including the bit blocks into which the bit values are transformed.
제 12 항에 있어서,
상기 (d) 단계는,
상기 할당된 은닉 정보 비트의 값에 따라 상기 비트 블록의 비트 값을 1비트 단위로 유지 또는 반전시키는 가역 정보 은닉 방법.
13. The method of claim 12,
The step (d)
And the bit value of the bit block is maintained or inverted in units of one bit according to the value of the allocated secret information bit.
제 12 항에 있어서,
상기 (d) 단계는,
상기 비트 블록의 길이와 대응된 길이를 갖는 복수의 난수 비트스트림을 생성하는 단계;
상기 할당된 은닉 정보 비트의 값 별로 서로 상이한 상기 난수 비트스트림을 매칭시키는 단계; 및
상기 할당된 은닉 정보 비트에 매칭된 난수 비트스트림 및 상기 비트 블록을 1 비트 단위로 배타적 논리합(XOR) 또는 배타적 부정 논리합(XNOR) 연산하는 단계를 포함하는 가역 정보 은닉 방법.
13. The method of claim 12,
The step (d)
Generating a plurality of random bit streams having a length corresponding to the length of the bit block;
Matching the random bitstreams different for each value of the allocated secret information bits; And
A random number bit stream matched with the allocated secret information bits, and XORing or XORing the bit blocks in units of one bit.
제 12 항에 있어서,
상기 (e) 단계 이전에,
상기 원본 문서 파일의 비트스트림을 복수의 비트 블록으로 구분하는 단계;
상기 원본 문서 파일의 비트 블록 별로 포함된 복수의 문자를 기설정된 정보 분석 기준에 따라 분석하여 유의미 지수, 무의미 지수, 및 문서 지수 중 적어도 하나를 산출하는 단계; 및
상기 산출된 유의미 지수, 무의미 지수, 및 문서 지수 중 적어도 하나를 정보 지수 임계값으로 설정하는 단계를 더 포함하되,
상기 (e) 단계는,
상기 정보 지수 임계값을 가역 정보 추출 장치로 더 제공하는 가역 정보 은닉 방법.
13. The method of claim 12,
Prior to step (e)
Dividing a bit stream of the original document file into a plurality of bit blocks;
Calculating at least one of a significance index, a meaninglessness index, and a document index by analyzing a plurality of characters included in each of the bit blocks of the original document file according to a predetermined information analysis criterion; And
Setting at least one of the calculated significance index, the meaninglessness index, and the document index to an information index threshold value,
The step (e)
Wherein the information index threshold value is further provided to a reversible information extracting apparatus.
가역 정보 추출 장치가 정보 은닉 문서 파일에 은닉된 은닉 정보 데이터를 추출하는 방법에 있어서,
(a) 압축 문서 파일에 은닉 정보 데이터가 인코딩된 상기 정보 은닉 문서 파일을 입력받는 단계;
(b) 기설정된 복원 포맷을 적용하여 상기 정보 은닉 문서 파일을 기설정된 길이의 비트 블록 단위로 1차 디코딩하는 단계;
(c) 상기 1차 디코딩된 비트 블록에 포함된 복수의 문자를 기설정된 정보 분석 기준에 기초하여 분석하여, 상기 분석한 결과에 따라 유의미 지수, 무의미 지수 및 문서 지수 중 적어도 하나를 포함하는 정보 지수를 산출하는 단계;
(d) 산출된 상기 정보 지수와 기설정된 정보 지수 임계값을 비교한 결과에 기초하여 상기 비트 블록에 은닉된 은닉 정보 비트를 추출하는 단계;
(e) 상기 비트 블록 별로 상기 1차 디코딩 이전의 비트 값을 상기 은닉 정보 비트의 값에 기초하여 변환시키는 2차 디코딩을 처리하는 단계; 및
(f) 상기 비트 값이 변환된 비트 블록을 상기 복원 포맷으로 디코딩하여 원본 문서 파일로 복원하는 단계를 포함하는 가역 정보 추출 방법.
A method for extracting secret information data hidden in an information hiding document file by a reversible information extraction device,
(a) receiving the information hiding document file in which secret information data is encoded in a compressed document file;
(b) first decoding the information hiding document file in units of a predetermined length by applying a preset restoration format;
(c) analyzing a plurality of characters included in the first decoded bit block on the basis of a predetermined information analysis criterion, and calculating an information index including at least one of a significance index, a no- ;
(d) extracting the hidden information bits hidden in the bit block based on a result of comparing the calculated information index with a preset information index threshold value;
(e) processing a secondary decoding for converting the bit value before the primary decoding on the bit block basis based on the value of the secret information bit; And
(f) decoding the bit block into which the bit value has been converted into the restoration format and restoring the same into an original document file.
제 16 항에 있어서,
상기 (d) 단계는,
상기 비트 블록 당 한 자릿수 비트 단위의 상기 은닉 정보 비트를 추출하되,
상기 산출한 정보 지수와 상기 정보 지수 임계값을 비교한 결과에 따라 제 1 비트 값을 갖는 제 1 은닉 정보 비트 또는 상기 제 1 비트 값이 반전된 제 2 비트 값을 갖는 제 2 은닉 정보 비트를 추출하고,
상기 (e) 단계는,
상기 추출된 은닉 정보 비트의 값에 따라 상기 비트 블록 별 비트 값을 1 비트 단위로 유지 또는 반전시키는 가역 정보 추출 방법.
17. The method of claim 16,
The step (d)
Extracting the secret information bits in units of one bit per bit block,
Extracting a first hidden information bit having a first bit value or a second hidden information bit having a second bit value in which the first bit value is inverted according to a result of comparing the calculated information index and the information index threshold value, and,
The step (e)
Wherein the bit value of each bit block is maintained or inverted in units of one bit according to the value of the extracted hidden information bit.
제 16 항에 있어서,
상기 (c) 단계는,
기설정된 사전(dictionary)을 상기 정보 분석 기준으로 사용하여, 상기 비트 블록에 포함된 복수의 문자에 의한 단어 중 상기 사전에 포함된 유의미 단어를 추출하는 단계; 및
상기 유의미 단어의 개수에 기초하여 상기 유의미 지수를 산출하는 단계를 포함하는 가역 정보 추출 방법.
17. The method of claim 16,
The step (c)
Extracting a meaning word included in the dictionary from among a plurality of characters included in the bit block using a predetermined dictionary as the information analysis reference; And
And calculating the significance index based on the number of the significant words.
제 16 항에 있어서,
상기 (c) 단계는,
기설정된 글자 코드, 숫자 코드, 부호 코드 및 제어 코드를 포함하는 컴퓨터 표준 코드를 상기 정보 분석 기준으로 사용하여, 상기 비트 블록에 포함된 복수의 문자 별로 대응하는 상기 컴퓨터 표준 코드를 추출하는 단계; 및
상기 추출된 컴퓨터 표준 코드 중 상기 부호 코드에 대응된 문자의 개수에 기초하여 상기 무의미 지수를 산출하는 단계를 포함하는 가역 정보 추출 방법.
17. The method of claim 16,
The step (c)
Extracting a corresponding computer standard code for each of a plurality of characters included in the bit block using a computer standard code including a predetermined character code, a numeric code, a code code, and a control code as the information analysis reference; And
And calculating the nonsense index based on the number of characters corresponding to the code code among the extracted computer standard codes.
제 16 항에 있어서,
상기 (c) 단계는,
기설정된 글자 코드, 숫자 코드, 부호 코드 및 제어 코드를 포함하는 컴퓨터 표준 코드를 상기 정보 분석 기준으로 사용하여, 상기 비트 블록에 포함된 복수의 문자 별로 대응하는 상기 컴퓨터 표준 코드를 추출하는 단계; 및
상기 추출된 컴퓨터 표준 코드 중 상기 글자 코드 및 숫자 코드 중 적어도 하나에 대응된 문자의 제 1 개수와 상기 부호 코드 및 제어 코드 중 적어도 하나에 대응된 문자의 제 2 개수에 기초하여 상기 문서 지수를 산출하는 단계를 포함하는 가역 정보 추출 방법.
17. The method of claim 16,
The step (c)
Extracting a corresponding computer standard code for each of a plurality of characters included in the bit block using a computer standard code including a predetermined character code, a numeric code, a code code, and a control code as the information analysis reference; And
Calculating the document index based on a first number of characters corresponding to at least one of the letter code and the numeric code among the extracted computer standard codes and a second number of characters corresponding to at least one of the code code and the control code And extracting the reversible information.
KR1020140006761A 2013-01-23 2014-01-20 System and method for hiding and extracting reversible data Active KR101568211B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020130007602 2013-01-23
KR20130007602 2013-01-23

Publications (2)

Publication Number Publication Date
KR20140095024A KR20140095024A (en) 2014-07-31
KR101568211B1 true KR101568211B1 (en) 2015-11-11

Family

ID=51740467

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140006761A Active KR101568211B1 (en) 2013-01-23 2014-01-20 System and method for hiding and extracting reversible data

Country Status (1)

Country Link
KR (1) KR101568211B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10439995B2 (en) * 2016-01-12 2019-10-08 Acronis International Gmbh Method and system for secure private communications
CN114998084B (en) * 2022-05-30 2024-10-18 杭州电子科技大学上虞科学与工程研究院有限公司 Encryption image data hiding method based on full-permutation transformation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006208992A (en) * 2005-01-31 2006-08-10 Fujitsu Ltd Data compression method, data restoration method, data compression device, data restoration device, data compression program, and data restoration program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006208992A (en) * 2005-01-31 2006-08-10 Fujitsu Ltd Data compression method, data restoration method, data compression device, data restoration device, data compression program, and data restoration program

Also Published As

Publication number Publication date
KR20140095024A (en) 2014-07-31

Similar Documents

Publication Publication Date Title
JP4893750B2 (en) Data compression apparatus and data decompression apparatus
JP5315054B2 (en) Secure protection of biometric templates
US7821427B2 (en) Data processing system and method
WO2019153867A1 (en) Two-dimensional code generation and identification
CN109657769B (en) Two-dimensional code information hiding method based on run length coding
US11902417B2 (en) Computer-implemented method of performing format-preserving encryption of a data object of variable size
CN105976303B (en) A kind of reversible information based on vector quantization hides and extracting method
US9462152B2 (en) System and method for hiding reversible information
CN101610088A (en) System and method for encoding data based on compression techniques with security features
Kumar et al. A high capacity email based text steganography scheme using Huffman compression
Moulin et al. New results on steganographic capacity
CN116156072B (en) Steganographic image generation method, steganographic information extraction method and related devices
KR101568211B1 (en) System and method for hiding and extracting reversible data
CN105721882B (en) Method for separating coding and decoding
US20190036543A1 (en) A Method of Protecting Data Using Compression Algorithms
US7925012B2 (en) Method and system for the secure distribution of compressed digital texts
Bhardwaj et al. An Approach for Enhancing Data Storage Capacity in Quick Response Code using Zip Compression Technique
JP2003179500A (en) Method of compressing data
Al-Jarrah et al. Word-based encryption algorithm using dictionary indexing with variable encryption key length
US6101281A (en) Method for improving data encoding and decoding efficiency
Kareem et al. Text steganography method based on modified run length encoding
US10216942B1 (en) Method for preserving the integrity of stored data
Bezzateev et al. Image encryption in code based compression algorithms based on multilevel image structure model
Nechta Steganographic message transformation with the partial antidisturbance property
HANDRIZAL et al. SECURING AND COMPRESSING TEXT FILES USING THE AES 256 ALGORITHM AND LEVENSTEIN CODE

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20140120

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20150421

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20151028

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20151105

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20151106

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20181025

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20181025

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20201208

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20220926

Start annual number: 8

End annual number: 8

PR1001 Payment of annual fee