KR101638398B1 - Image segmentation and combination method and computer readable recording media storing program for executing the method - Google Patents
Image segmentation and combination method and computer readable recording media storing program for executing the method Download PDFInfo
- Publication number
- KR101638398B1 KR101638398B1 KR1020150117205A KR20150117205A KR101638398B1 KR 101638398 B1 KR101638398 B1 KR 101638398B1 KR 1020150117205 A KR1020150117205 A KR 1020150117205A KR 20150117205 A KR20150117205 A KR 20150117205A KR 101638398 B1 KR101638398 B1 KR 101638398B1
- Authority
- KR
- South Korea
- Prior art keywords
- image
- divided
- authentication key
- user
- client terminal
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 238000003709 image segmentation Methods 0.000 title description 6
- 230000005540 biological transmission Effects 0.000 claims abstract description 5
- 238000004891 communication Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 6
- 230000002265 prevention Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000013497 data interchange Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000003702 image correction Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0021—Image watermarking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
Description
본 발명은 디지털 이미지 컨텐츠 보안을 위한 이미지 분할 및 이미지 병합 기술에 관한 것이다.The present invention relates to image segmentation and image merging techniques for digital image content security.
더욱 상세하게는 원본 이미지를 m×n개의 작은 직사각형 이미지로 분할하여 서버에 저장하고, 클라이언트가 이미지 요청시 1회용 인증키를 발급하여 클라이언트와 서버간 비동기식 통신으로 인증키를 주고받으며 워터마크가 삽입된 분할 이미지를 임의의 순서대로 전송하는 디지털 이미지 다중 보안 시스템에 관한 것이다.More specifically, the original image is divided into m × n small rectangular images and stored in a server. When a client requests an image, a one-time authentication key is issued to transmit and receive an authentication key in asynchronous communication between a client and a server, The present invention relates to a digital image multiple security system for transmitting divided images in arbitrary order.
최근 인터넷에서 다양한 유료 디지털 이미지 컨텐츠 서비스가 증가하고 있으나 웹브라우저 기능이 고도화됨에 따라 클릭 몇 번 만으로 누구나 손쉽게 원본 이미지에 접근하여 파일을 그대로 복사할 수 있을 뿐 아니라 원본 URL 노출로 외부 트래픽이 유발되는 등 다양한 공격에 쉽게 노출되어 있다.Recently, various paid digital image content services have been increasing on the Internet. However, since the web browser function is advanced, it is possible to easily access the original image and copy the file as it is with just a few clicks, It is easily exposed to various attacks.
현재, 인터넷으로 디지털 이미지 컨텐츠를 전송하면, 마우스 우클릭으로 이미지를 쉽게 복제하거나, 우클릭 기능을 무력화하더라도, 임시 인터넷 파일 폴더에 남아 있는 이미지 파일에 사용자가 손쉽게 접근할 수 있어, 저작권 있는 컨텐츠가 그대로 복제될 수 있는 보안상의 취약점이 존재한다. Currently, when digital image contents are transferred to the Internet, the user can easily access the image file remaining in the temporary Internet file folder even if the image is easily copied with the right-click of the mouse or the right-click function is disabled, There are security vulnerabilities that can be exploited.
기존 인터넷 서비스 업체들은 마우스 우클릭 방지, 드래그 방지, 토큰키 발급 등 다양한 자바스크립트 보안 및 인증 기술을 이용해 원본 파일로의 접근을 어렵게 하고 있으나, 웹브라우저에서 자바스크립트 동작을 일시 중단하는 기능을 실행하면 복잡한 자바스크립트 보안 기술도 한순간에 무용지물이 되고, 일단 웹브라우저에 이미지가 표시되기만 하면 임시 인터넷 폴더에 원본 이미지 파일이 저장되기 때문에 누구나 손쉽게 원본 파일에 접근할 수 있다는 문제가 있다.Existing Internet service providers are using various JavaScript security and authentication technologies, such as mouse right-click prevention, drag prevention, and token key issuance, to make access to the original file difficult, but suspending JavaScript actions in a Web browser JavaScript security technology becomes obsolete at once, and once the image is displayed in a web browser, the original image file is stored in the temporary Internet folder, so that anyone can easily access the original file.
따라서 자바스크립트 보안에 의존하지 않으면서 근본적으로 원본 이미지 파일의 유출을 막을 수 있는 여러 단계의 다중 보안 시스템이 필요한 상황이다.Therefore, there is a need for multi-level security systems that can fundamentally prevent leakage of original image files without resorting to JavaScript security.
본 발명은 디지털 이미지 컨텐츠의 불법 복제 방지를 통한 저작권 보호를 목적으로 한다. The present invention aims at copyright protection through prevention of illegal copying of digital image contents.
본 발명은 이러한 종래 이미지 컨텐츠 서비스의 보안 취약성을 개선하기 위해 고안한 것으로, 웹브라우저에서의 원본 이미지 접근을 근본적으로 차단하기 위해, 원본 이미지를 타인이 알아볼 수 없는 복수의 작은 이미지 조각으로 분할하여 서버에 저장하고, 이용자의 요청시 분할된 이미지를 전송하여 원본 이미지 형태로 병합 표시함으로써 원천적으로 원본 이미지 파일에 접근할 수 없게 하였다. 또한 매 요청시마다 새로 발급되는 1회용 인증키를 발급하여 브라우저와 웹서버간 비동기 방식으로 통신하여 인증받게 함으로써 이미지 고유의 URL을 매번 다르게 하여, URL을 통한 이미지 접근을 원천 차단하였다. 또한 분할 이미지를 무작위 순서로 요청, 전송하도록 함으로써 웹브라우저 임시 폴더에 분할 이미지가 첫 번째 조각부터 마지막 조각까지 순차적으로 저장되는 것을 방지하여 매크로 등 프로그래밍 된 복제 시도에도 대응할 수 있게 하였다. 마지막으로, 1개 이상의 분할 이미지에 컨텐츠 정보와 이용자 정보 등이 담긴 암호문을 QR코드로 워터마크 삽입함으로써 화면 캡쳐 등에 의한 복제이미지 유통시 최초 유출자를 가려낼 수 있게 하였다.In order to fundamentally block access to an original image in a web browser, the present invention divides an original image into a plurality of small image fragments that can not be recognized by others, And when the user requests it, the divided image is transmitted and merged with the original image so that the original image file can not be accessed originally. In addition, each request is issued a new one-time authentication key to communicate with the web server in asynchronous manner between the browser and the web server. In addition, by requesting and sending the divided images in random order, it is possible to prevent the divided images from being stored sequentially from the first piece to the last piece in the web browser temporary folder, thereby coping with a programmed replication attempt such as a macro. Finally, watermark embedding of a cipher text containing content information and user information in one or more divided images is carried out by using a QR code.
상기와 같은 과제를 해결하기 위한 본 발명은 디지털 이미지 컨텐츠 보안을 위해 이미지를 분할 및 병합하는 방법을 포함하고 있다. 상기 방법은 웹서버의 임시 폴더에 저장된 원본 이미지의 분할 및 전송을 처리하는 웹서버가, 클라이언트 단말기가 이미지를 요청할 때, According to an aspect of the present invention, there is provided a method for dividing and merging an image in order to secure digital image contents. The above-described method is characterized in that the web server, which processes the division and transmission of the original image stored in the temporary folder of the web server,
상기 원본 이미지와 관련된 데이터를 저장하는 DB서버로부터 소정의 시간 주기로 이미지 분할을 실행할 이미지 데이터를 하나씩 읽고, 상기 원본 이미지의 가로, 세로 사이즈를 각각 m 및 n으로 나눈 나머지 픽셀을 잘라낸 수정된 이미지를 생성하고, 상기 수정된 이미지로부터 분할된 m×n개의 분할 이미지 파일을 파일서버에 저장하는 단계;The image data to be subjected to image division is read one by one from the DB server storing the data related to the original image at predetermined time intervals, and a modified image is generated by cutting out the remaining pixels obtained by dividing the horizontal and vertical sizes of the original image by m and n, respectively Storing m × n divided image files divided from the modified image in a file server;
클라이언트 단말기의 웹브라우저 화면에, 수정된 이미지와 동일한 크기의 빈 이미지 영역을 표시하고, 그 내부를 가로 m개, 세로 n개의 직사각형 영역으로 나누는 단계;Displaying a blank image area of the same size as the modified image on the web browser screen of the client terminal and dividing the inside into a rectangular area of m by n and a length of n;
상기 분할 이미지 파일을 상기 클라이언트 단말기에 랜덤 순서로 전송하는 단계; 및Transmitting the divided image files to the client terminal in a random order; And
상기 분할 이미지 파일을 요청 순서에 맞는 위치의 직사각형 영역에 여백 없이 표시하는 단계를 포함하고 있다. And displaying the divided image file in a rectangular area at a position corresponding to a request order without any margin.
본 발명의 다른 특징에 따라, 상기 웹서버는, 상기 클라이언트 단말기가 이미지를 요청할 때, According to another aspect of the present invention, when the client terminal requests an image,
상기 클라이언트 단말기의 이미지 요청시마다 새로 발급되는 1회용 인증키를 발급하고; Issuing a newly issued one-time authentication key for each image request of the client terminal;
이미지 파일명 + 타임스탬프 + 이용자 ID + 이용자 IP의 정보를 하나의 스트링값으로 묶은 다음 암호화한 1회용 인증키를 생성하여 HTML 문서에 포함시키고, 클라이언트 단말기의 이미지 요청시 상기 HTML 문서를 클라이언트 단말기에 전송하고;The image file name + time stamp + user ID + user IP information is combined into a single string value, and then an encrypted one-time authentication key is generated and included in the HTML document, and the HTML document is transmitted to the client terminal and;
상기 인증키의 위변조를 막기 위해 상기 인증키의 특정 위치에 1바이트 크기의 유효성 체크값을 심고; Planting a 1-byte validity check value at a specific location of the authentication key to prevent forgery and falsification of the authentication key;
상기 클라이언트 단말기의 웹브라우저에 빈 이미지 영역이 표시됨과 동시에 상기 클라이언트와 웹서버간 비동기 통신을 통해 웹서버에 인증키를 요청한다. A blank image area is displayed on the web browser of the client terminal and an authentication key is requested to the web server through asynchronous communication between the client and the web server.
본 발명의 또 다른 특징에 따라, 상기 클라이언트와 웹서버간 비동기 통신은, 상기 웹서버가, According to another aspect of the present invention, the asynchronous communication between the client and the web server comprises:
요청받은 인증키의 특정 위치에 있는 체크값을 체크하여 인증키의 유효성을 검증하고, 검증된 경우 이미지 파일명, 타임스탬프, 이용자 ID, 이용자 IP 정보를 읽는 단계; Checking the validity of the authentication key by checking a check value at a specific location of the requested authentication key, and reading the image file name, time stamp, user ID, and user IP information when verified;
상기 타임스탬프와 현재시간을 비교해 유효성을 체크하는 단계;Comparing the time stamp with a current time and checking validity;
상기 이용자 ID 정보를 바탕으로 비회원, 회원 또는 회원 등급별로 선별적으로 응답하는 단계; Selectively responding to the non-member, member, or member class based on the user ID information;
상기 이용자 IP 정보를 통해 이용자가 접속한 국가를 검출하여 특정 국가에서의 이미지 접근을 거부하는 단계;Detecting a country accessed by a user through the user IP information and denying access to an image in a specific country;
상기 인증키를 통한 인증이 끝나면, 상기 이미지 파일명으로부터 분할된 이미지 파일명을 생성하는 단계; Generating a divided image file name from the image file name after the authentication through the authentication key is completed;
상기 분할 이미지 각각에 대해 분할 이미지 파일명 + 타임스탬프 + 이용자 ID + 이용자 IP를 다시 암호화한 1회용 인증키를 생성하는 단계; Generating a one-time authentication key obtained by encrypting the divided image file name + time stamp + user ID + user IP again for each of the divided images;
상기 인증키의 위변조를 막기 위해, 인증키의 특정 위치에 1바이트 크기의 유효성 체크값을 심는 단계; Inserting a validity check value of 1 byte size at a specific position of the authentication key to prevent forgery and falsification of the authentication key;
각 분할 이미지 정보를 담은 인증키 m×n 개의 시작과 끝에 허수의 인증키를 한 개씩 생성하여 총 (m×n)+2개의 인증키를 생성하여 이미지 요청에 대한 응답값으로 클라이언트 단말기에 전송하는 단계; (M × n) +2 authentication keys are generated by generating one imaginary authentication key at the beginning and end of the authentication key m × n containing the divided image information, and transmitted to the client terminal as a response value for the image request step;
1부터 m×n까지 정수를 랜덤 순서대로 나열하고, 임의로 설정된 순서에 대응하는 각 분할 이미지 영역의 이미지 URL에 순차적으로 분할이미지 URL를 지정하는 단계를 포함하고 있다. 1 to m x n in random order and sequentially designating the divided image URL to the image URL of each divided image region corresponding to the arbitrarily set order.
본 발명의 또 다른 특징에 따라, 상기 분할 이미지 파일을 전송하는 단계는, 상기 웹서버가, According to another aspect of the present invention, the step of transmitting the divided image file includes:
a) 요청받은 인증키의 체크값을 체크하여 인증키의 유효성을 검증하고, 올바른 인증키일 경우 분할 이미지 파일명 + 타임스탬프 + 이용자 ID + 이용자 IP 정보를 읽는 단계;a) verifying the validity of the authentication key by checking the check value of the requested authentication key, and reading the divided image file name + time stamp + user ID + user IP information when the authentication key is a correct authentication key;
b) 인증키에 대한 인증이 끝나면, 상기 웹서버가 파일서버에 분할 이미지를 요청하고, 이미지 데이터를 가져오는 단계;b) when the authentication of the authentication key is completed, the web server requests the divided image to the file server and fetches the image data;
c) 특정 분할 이미지에, 원본 파일명 + 타임스탬프 + 이용자 ID + 이용자 IP 정보를 암호화한 QR코드 이미지를 병합하는 방식으로 워터마크를 삽입하는 단계;c) inserting a watermark into a specific divided image by merging a QR code image obtained by encrypting the original file name + time stamp + user ID + user IP information;
d) 분할 이미지 데이터에 이미지 헤더값을 추가하여 이용자에게 전송하는 단계;d) adding an image header value to the divided image data and transmitting it to the user;
e) 이용자 웹브라우저에 분할 이미지를 지정된 영역에 표시하는 단계;e) displaying a segmented image in a designated area in a user web browser;
f) 상기 단계 a) ~ e)를 총 m×n회 반복하여 모든 분할 이미지를 웹브라우저에 표시하는 단계를 포함하고 있다. f) repeating the steps a) to e) for a total of m x n times to display all divided images on a web browser.
본 발명의 또 다른 특징에 따라, 상기 원본 이미지와 관련된 데이터는 이미지 파일명, 파일 포맷, 업로드 시간, 이미지 분할 여부를 포함하고 있다. According to another aspect of the present invention, the data related to the original image includes an image file name, a file format, an upload time, and whether the image is divided.
본 발명의 또 다른 특징에 따라, 본 발명은 웹서버로 하여금 상기 방법을 실행하도록 하는 프로그램이 저장된 컴퓨터 판독가능 기록매체를 포함하고 있다.According to another aspect of the present invention, the present invention includes a computer-readable recording medium storing a program for causing a web server to execute the method.
상기 설명한 바와 같이 본 발명은, 원본 이미지를 타인이 알아볼 수 없는 복수의 이미지로 분할한 후 서버에 저장하고, 원본 이미지 요청시 1회용 인증키를 발급하여 비동기 통신 방식으로 인증 절차를 거친 후 워터마크가 삽입된 이미지 데이터를 전송하기 때문에 원본 이미지 파일이 그대로 유출되는 것을 막을 수 있을 뿐만 아니라, 프로그래밍된 복제 공격을 차단하고, 화면 캡쳐 등을 통한 복제물 무단 유출시 저작자의 저작권을 보호하고, 불법 복제물 유포로 인한 경제적 손실을 예방할 수 있다.As described above, according to the present invention, an original image is divided into a plurality of images that can not be recognized by others and is then stored in a server, a one-time authentication key is issued when an original image is requested, an authentication process is performed using an asynchronous communication method, It is possible to prevent the original image file from being leaked as it is, as well as to prevent the programmed copying attack, protect the copyright of the copying person when the copy is leaked through screen capture, Economic losses due to
도 1은 본 발명의 하나의 실시예에 따른 디지털 이미지 컨텐츠 보안을 위한 이미지 분할 및 병합 시스템을 도시하는 도면이다.
도 2는 본 발명의 하나의 실시예에 따라 원본 이미지를 분할하는 과정을 도시한 도면이다.
도 3은 본 발명의 하나의 실시예에 따라 분할 이미지를 병합하는 과정을 도시한 도면이다. 1 is a diagram illustrating an image segmentation and merging system for digital image content security according to one embodiment of the present invention.
2 is a diagram illustrating a process of dividing an original image according to an embodiment of the present invention.
3 is a view illustrating a process of merging divided images according to one embodiment of the present invention.
본 발명의 디지털 이미지 컨텐츠 보안을 위한 이미지 분할 및 병합 시스템은 이미지 분할 및 전송을 처리하는 웹서버, 이미지 관련 데이터를 저장하는 DB서버, 분할된 이미지 파일을 보관하는 파일서버로 구성되어 있다. The image segmentation and merging system for digital image content security of the present invention comprises a web server for processing image segmentation and transmission, a DB server for storing image related data, and a file server for storing divided image files.
1. 이미지 업로드 단계 (/upload)1. Image upload phase (/ upload)
이해를 쉽게 하기 위해 sample.jpg (사이즈 800px×600px) 파일을 가로 3조각, 세로 3조각으로 분할하고, 병합하는 것을 가정하여 설명한다. For ease of understanding, it is assumed that a file sample.jpg (size 800px 600px) is divided into 3 pieces of width and 3 pieces of length and merged.
a. 원본이미지 소유자 또는 저작권자가 웹서버에 접속해 파일을 업로드하면, 웹서버는 업로드된 디지털 문서 또는 이미지가 유효한 파일 포맷인지 검출한다. 파일 포맷은 PDF문서 또는 JPG이미지로 제한하였다.a. When the original image owner or the copyright holder accesses the web server and uploads the file, the web server detects whether the uploaded digital document or image is in a valid file format. The file format was limited to PDF documents or JPG images.
b. 파일이 PDF 문서 파일이면(sample.pdf) 문서의 각 페이지를 JPG 이미지 포맷으로 변환한 후, 각각의 이미지(sample_1.jpg, sample_2.jpg, sample_3.jpg,...)를 웹서버의 임시 폴더(temp/sample.pdf/...)에 저장한다.b. If the file is a PDF document file (sample.pdf), convert each page of the document to a JPG image format, and then copy each image (sample_1.jpg, sample_2.jpg, sample_3.jpg, ...) (temp / sample.pdf / ...).
c. 파일이 JPG 이미지 파일이면(sample.jpg) 이미지 파일 그대로 웹서버의 임시 폴더(temp/sample.jpg/...)에 저장한다.c. If the file is a JPG image file (sample.jpg), the image file is stored in a temporary folder (temp / sample.jpg / ...) on the Web server.
d. 저장된 이미지에 관한 데이터(이미지 파일명, 파일 포맷, 업로드 시간, 이미지 분할 여부 등)를 DB서버에 저장한다.d. Data (image file name, file format, upload time, image division, etc.) about the stored image is stored in the DB server.
2. 웹서버에서 이미지를 분할하는 단계 (/divide)2. Partitioning the image from the web server (/ divide)
e. 웹서버에서 매 10초마다 /divide를 자동으로 수행하도록 스레드(thread)를 실행한다.e. Run a thread on the web server to automatically perform / divide every 10 seconds.
f. 매 10초마다 /divide는 DB서버에서 이미지 분할을 수행할 이미지 데이터를 하나씩 읽어, 다음의 이미지 보정 및 이미지 분할을 수행한다.(예 sample.jpg)f. Every 10 seconds, / divide reads the image data to be divided by the DB server one by one and performs the following image correction and image segmentation (example sample.jpg).
g. 먼저, 웹서버의 임시 폴더에서 원본 이미지 파일(sample.jpg)을 읽어 이미지의 가로, 세로 사이즈를 픽셀 단위로 검출한다. 이미지를 가로 m개, 세로 n개의 동일한 직사각형 조각으로 정확히 분할하려면, 이미지의 가로 사이즈가 m으로 나누어 떨어지고, 세로 사이즈가 n으로 나누어 떨어져야 한다. 따라서 가로, 세로 사이즈를 m, n으로 나눈 나머지 만큼 가로, 세로 픽셀을 잘라낸다. 즉, 도 2에 도시된 바와 같이, 가로 사이즈가 m으로 나누어 떨어지도록 나머지 만큼 우측 픽셀을 잘라내고, 세로 사이즈가 n으로 나누어 떨어지도록 나머지 만큼 하단 픽셀을 잘라내어 원본 이미지 사이즈를 수정한다. 도 2에서는 우측과 하단 픽셀을 잘라내었지만, 좌측과 상단 픽셀을 잘라낼 수도 있다. sample.jpg의 경우, 이미지를 가로 3개 × 세로 3개 = 총 9개로 분할하고자 하면, 가로 800 = 3*266 + 2(나머지), 세로 600 = 3*200이므로, 원본 이미지의 가로를 2픽셀만큼 잘라내 원본 이미지 사이즈 800×600픽셀을 798×600픽셀로 수정한다.g. First, the original image file (sample.jpg) is read from the temporary folder of the web server and the horizontal and vertical sizes of the image are detected in pixel units. To correctly divide an image into equal m rectangles of length m and length n, the image should be divided by m, and the vertical size divided by n. Therefore, the horizontal and vertical pixels are cut out by the width and the vertical size divided by m and n. That is, as shown in FIG. 2, the right pixel is cut by the remaining number so that the horizontal size is divided by m, and the original image size is corrected by cutting out the bottom pixel as much as the vertical size is divided by n. Although the right and bottom pixels are cut out in Fig. 2, the left and top pixels may be cut out. In the case of sample.jpg, if we divide the image into 3 horizontal × 3 vertical = 9 total, the width of the original image is 2 pixels (horizontal) because 800 = 3 * 266 + 2 To correct the original image size of 800 x 600 pixels to 798 x 600 pixels.
h. 가로 사이즈(w)를 m으로 나눈 값을 w/m, 세로 사이즈(h)를 n으로 나눈 값을 h/n이라 하면, 분할된 이미지의 각 조각 사이즈는 w/m × h/n 픽셀이 된다. 원본 이미지의 좌측 상단 (0,0)부터 시작하여 w/m × h/n 크기의 직사각형으로 이미지를 순차적으로 자르고(Crop), 잘려진 m×n개의 이미지를 이미지명_m×n.jpg라는 파일명으로 파일서버에 저장한다.h. Assuming that a value obtained by dividing the horizontal size (w) by m by w / m and the vertical size (h) by n is h / n, each piece size of the divided image is w / m × h / n pixels . The image is sequentially cropped (Crop) by a rectangle of w / m x h / n starting from the upper left corner (0, 0) of the original image, and the cropped m x n images are named as the image name _mxn.jpg To the file server.
예)Yes)
sample_1x1.jpg , sample_1x2.jpg , sample_1x3.jpgsample_1x1.jpg, sample_1x2.jpg, sample_1x3.jpg
sample_2x1.jpg , sample_2x2.jpg , sample_2x3.jpgsample_2x1.jpg, sample_2x2.jpg, sample_2x3.jpg
sample_3x1.jpg , sample_3x2.jpg , sample_3x3.jpgsample_3x1.jpg, sample_3x2.jpg, sample_3x3.jpg
파일서버에는 제한된 접근 권한을 설정하고, 웹서버에만 이미지를 전송할 수 있게 한다.The file server has limited access privileges and allows the image to be transferred only to the web server.
3. 이미지 요청 단계 (/view)3. Image request step (/ view)
i. 이용자는 컴퓨터(PC 또는 스마트폰)로부터 웹서버에 접속하여 sample.jpg라는 이미지에 접근하기 위해 HTML 형태로 웹서버에 이미지를 요청한다. http://www.test.com/view?v=sample.jpgi. The user accesses the web server from the computer (PC or smart phone) and requests the image to the web server in HTML form to access the image called sample.jpg. http://www.test.com/view?v=sample.jpg
j. 웹서버는 가로 m개, 세로 n개의 이미지 영역으로 구성된 HTML 문서를 생성한다. 각 이미지 영역의 <img> 태그는 이미지 URL (src 속성)이 지정되어 있지 않은 빈 이미지 태그이다.j. The web server generates an HTML document composed of m image areas and n image areas. The <img> tag in each image region is a blank image tag with no image URL (src attribute) specified.
k. 웹서버는 이미지 파일명(sample.jpg) + 타임스탬프(2015-01-01 12:00:00) + 이용자 ID(guest) + 이용자 IP(255.255.255.255) 등의 정보를 하나의 String값으로 묶은 후, AES(Advanced Encryption Standard) 128bit 대칭키 암호 알고리즘을 이용하여 암호화한 1회용 인증키를 생성하여, HTML문서에 포함한다. 이때, 암호문의 위변조를 막기 위해 암호문의 특정 위치에 1바이트 크기의 유효성 체크값을 심는다. (체크값은 암호문을 구성하는 36진수 각 자리를 10진수로 변환한 후 모두 더하고, 이를 다시 36으로 나눠 그 나머지에 해당하는 값을 36진수로 변환한 값이다.) 이를 통해 Brute force attack(무작위 대입 공격)으로부터 시스템을 효율적으로 방어하고, 암호문의 위조, 변조를 막을 수 있다.k. The Web server bundles information such as an image file name (sample.jpg) + time stamp (2015-01-01 12:00:00) + user ID (guest) + user IP (255.255.255.255) into one String value , An AES (Advanced Encryption Standard) 128-bit symmetric key encryption algorithm is used to generate a one-time authentication key and included in the HTML document. At this time, a validity check value of 1 byte size is planted at a specific position of the cipher text in order to prevent forgery and falsification of the cipher text. (The check value is the value obtained by converting each digit of the ciphertext constituting the ciphertext to decimal number, adding all the digits, dividing the decimal number by 36, and converting the remaining digits to 36 digits). This allows a brute force attack The system can be efficiently defended from the attack, and the forgery and tampering of the ciphertext can be prevented.
l. 웹서버는 XMLHttpRequest를 이용한 비동기 자바스크립트 데이터 교환 방식(Ajax)으로 클라이언트와 웹서버가 통신하면서 인증키를 웹서버에 전송하고 분할 이미지 정보를 수신하고, 랜덤 순서대로 웹서버에 분할 이미지를 요청하는 자바스크립트 기능을 HTML문서에 포함한다. 이때, 랜덤 순서를 결정하는 함수는 웹서버에서 실행되게 할 수도 있고, 자바스크립트 기능에 포함시켜 이용자 웹브라우저에서 실행되게 할 수도 있다. 본 실시예에서는 자바스크립트 기능에 포함시키는 것으로 가정한다.l. The web server is an asynchronous JavaScript data interchange method (Ajax) using XMLHttpRequest. It communicates the client and the web server while transmitting the authentication key to the web server, receives the divided image information, and requests the divided image to the web server in random order. Include script functionality in the HTML document. At this time, the function for determining the random order may be executed in the web server, or may be included in the JavaScript function to be executed in the user's web browser. In the present embodiment, it is assumed to be included in the JavaScript function.
m. 웹서버는 이용자가 이미지 요청시(/view) j, k, l 기능이 포함된 HTML문서를 이용자에게 전송한다.m. The web server transmits the HTML document containing the j, k, and l functions to the user when the user requests the image (/ view).
n. 이용자의 웹브라우저에는 가로 m개, 세로 n개의 빈 이미지 영역이 표시되며, 각 이미지 영역의 가로 사이즈는 width:(100/m)%, 세로 사이즈는 주어진 이미지의 가로, 세로 비율에 맞춰 자동 조절되므로 height:auto로 설정한다.n. In the user's web browser, a width m and width n image areas are displayed. The width of each image area is width (100 / m)%, and the size of the image is automatically adjusted to the width and height ratio of a given image Set to height: auto.
o. 이용자 웹브라우저에 빈 이미지 영역이 표시됨과 동시에 비동기 자바스크립트 통신을 통해 웹서버에 ‘/page?v=인증키’를 요청한다.o. At the same time that a blank image area is displayed on the user's web browser, '/ page? V = authentication key' is requested to the web server through asynchronous JavaScript communication.
4. 클라이언트, 4. Client, 웹서버간Between Web servers 비동기 통신 단계 (/page) Asynchronous communication phase (/ page)
p. 웹서버의 /page는 요청받은 인증키의 특정 위치에 있는 체크값을 체크하여 인증키의 유효성을 검증하고, 올바른 인증키일 경우 암호문을 비밀키로 풀어, 이미지 파일명(sample.jpg), 타임스탬프(2015-01-01 12:00:00), 이용자 ID(guest), 이용자 IP(255.255.255.255) 정보를 읽는다.p. The page / page of the web server verifies the validity of the authentication key by checking a check value at a specific location of the requested authentication key, decrypts the cipher text with the secret key if it is a valid authentication key, and stores the image file name (sample.jpg) -01-01 12:00:00), the user ID (guest), and the user IP (255.255.255.255).
q. 타임스탬프와 현재시간을 비교해 유효성을 체크한다. 예를 들어 타임스탬프와 현재시간의 차이가 5초 이상이면 웹서버는 응답을 거부한다.q. The timestamp is compared with the current time to check the validity. For example, if the difference between the timestamp and the current time is more than 5 seconds, the web server rejects the response.
r. 이용자 ID 정보를 바탕으로 비회원, 회원 또는 회원 등급별로 선별적으로 응답할 수 있다.r. Based on the user ID information, it can respond selectively to non-members, members, or member classes.
s. 이용자 IP 주소를 통해 이용자가 접속한 국가를 검출하여 특정 국가에서의 이미지 접근을 거부할 수 있다.p. It is possible to detect the accessing country of the user through the user IP address and deny access to the image in the specific country.
t. 인증키를 통한 인증이 끝나면, 이미지 파일명으로부터 다음과 같이 분할된 이미지 파일명을 생성한다. t. When the authentication through the authentication key is completed, the image file name is divided as follows from the image file name.
sample_1x1.jpg, sample_1x2.jpg, sample_1x3.jpg,sample_1x1.jpg, sample_1x2.jpg, sample_1x3.jpg,
sample_2x1.jpg, sample_2x2.jpg, sample_2x3.jpg,sample_2x1.jpg, sample_2x2.jpg, sample_2x3.jpg,
sample_3x1.jpg, sample_3x2.jpg, sample_3x3.jpgsample_3x1.jpg, sample_3x2.jpg, sample_3x3.jpg
u. 분할된 이미지 각각에 대해 분할이미지 파일명 + 타임스탬프 + 이용자 ID + 이용자 IP를 다시 AES 대칭키 암호 알고리즘으로 암호화한 1회용 인증키를 생성한다.u. For each of the divided images, a one-time authentication key is generated by encrypting the divided image file name + time stamp + user ID + user IP with the AES symmetric key encryption algorithm.
sample_1x1.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255sample_1x1.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255
sample_1x2.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255sample_1x2.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255
sample_1x3.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255sample_1x3.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255
sample_2x1.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255sample_2x1.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255
sample_2x2.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255sample_2x2.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255
sample_2x3.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255sample_2x3.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255
sample_3x1.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255sample_3x1.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255
sample_3x2.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255sample_3x2.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255
sample_3x3.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255sample_3x3.jpg + 2015-01-01 12:00:00 + guest + 255.255.255.255
앞에서와 마찬가지로 암호문의 위변조를 막기 위해, 암호문의 특정 위치에 1바이트 크기의 유효성 체크값을 심는다.In order to prevent forgery and alteration of the ciphertext, a validity check value of 1 byte size is placed at a specific position in the ciphertext.
v. 각 분할 이미지 정보를 담은 인증키 m×n개(3×3=9개)의 시작과 끝에 허수의 인증키를 한 개씩 생성하여 총 (m×n)+2개의 암호문을 JSON 타입의 데이터로 생성해 /page 요청에 대한 응답값으로 전송한다.(callback)v. (M × n) + 2 ciphertexts are generated as JSON type data by generating one imaginary authentication key at the beginning and end of m × n authentication keys (3 × 3 = 9) Sends the response as a response to the request.
예)Yes)
"00f39ff19a28fc8f16648dcc2aa2f735c051531b2b70f714a45437c7bb","00f39ff19a28fc8f16648dcc2aa2f735c051531b2b70f714a45437c7bb",
"c547b85e1c6bfe3e5c965ac888408e5d587f4fd9c67853a0e003a42a7","c547b85e1c6bfe3e5c965ac888408e5d587f4fd9c67853a0e003a42a7",
"b33b8e3b63a6ca74ecbad9f1df38a0d51f3fe616c1c1d58b0b4cf3ccb","b33b8e3b63a6ca74ecbad9f1df38a0d51f3fe616c1c1d58b0b4cf3ccb",
"00f39ff19a28fc8f16648dcc2aa2f735a25ebe960edab47cfddda80fcd","00f39ff19a28fc8f16648dcc2aa2f735a25ebe960edab47cfddda80fcd",
"613de86a7e8b87d299ca35f46c05285213c64b960fe8cf4109a80fcd5","613de86a7e8b87d299ca35f46c05285213c64b960fe8cf4109a80fcd5",
"00f39ff19a28fc8f16648d012cf1444bc718d082d4c213f04109a80fcd5","00f39ff19a28fc8f16648d012cf1444bc718d082d4c213f04109a80fcd5",
"39417e43b5552ca8fdcab4b87a3cab1afa2025033de8bc4109a80fcd5","39417e43b5552ca8fdcab4b87a3cab1afa2025033de8bc4109a80fcd5",
"ccd6ca0269b79a46b5943e5ec3a90946737d9fbaa4fce24109a80fcd5","ccd6ca0269b79a46b5943e5ec3a90946737d9fbaa4fce24109a80fcd5",
"b33b8e3b63a6cf7d4b73ee7ba4477d5690218bba9057d4109a80fcd5","b33b8e3b63a6cf7d4b73ee7ba4477d5690218bba9057d4109a80fcd5",
"b33b8e3b63a6ca74ecbad9f193043d0c3d9cf69db0a8ff4109a80fcd5","b33b8e3b63a6ca74ecbad9f193043d0c3d9cf69db0a8ff4109a80fcd5",
"c547b85e1c6bfe3e5c965b3214220074531a11c8aa2064109a80fcd5""c547b85e1c6bfe3e5c965b3214220074531a11c8aa2064109a80fcd5"
w. 웹브라우저 자바스크립트는 첫 번째와 마지막 데이터를 제외한 JSON 데이터를 배열 변수에 저장한다.w. Web browser JavaScript stores JSON data in array variables, except for the first and last data.
x. 웹브라우저 자바스크립트는 임의의 순서대로 이미지를 요청하기 위해 1부터 m×n까지 정수를 랜덤 순서대로 나열하고, 임의로 설정된 순서에 대응하는 각 분할 이미지 영역의 이미지 URL (src 속성)에 순차적으로 분할이미지 URL인 "/piece?v=암호문" 을 지정한다. 웹브라우저는 각 이미지의 URL (src 속성)이 지정됨과 동시에 웹서버에 이미지 요청을 하게 된다.x. In order to request an image in random order, the web browser JavaScript lists the integers from 1 to m × n in random order and sequentially divides the image into the image URL (src attribute) of each divided image area corresponding to the randomly set order Specify the URL "/ piece? V = passphrase". The web browser requests the image from the web server at the same time that the URL (src attribute) of each image is specified.
5. 분할 이미지 전송 단계 (/piece)5. Split image transfer step (/ piece)
y. 웹서버의 /piece는 요청받은 인증키의 체크값을 체크하여 인증키의 유효성을 검증하고, 올바른 인증키일 경우 암호문을 비밀키로 풀어, 분할이미지 파일명(sample_1x1.jpg) + 타임스탬프(2015-01-01 12:00:00) + 이용자 ID(guest) + 이용자 IP(255.255.255.255) 정보를 읽는다.y. / Piece of the web server checks the check value of the requested authentication key to verify the validity of the authentication key, decrypts the cipher text with the secret key if it is a valid authentication key, and outputs the divided image file name (sample_1x1.jpg) + time stamp (2015-01- 01 12:00:00) + user ID (guest) + user IP (255.255.255.255).
z. 앞의 q, r, s에서와 마찬가지로 값에 대한 인증키에 대한 인증이 끝나면, 웹서버는 파일서버에 sample_1x1.jpg 이미지를 요청하고, 이미지 데이터를 가져온다.z. After authentication of the authentication key for the value is finished, as in q, r, s above, the web server requests sample_1x1.jpg image to the file server, and fetches the image data.
aa. 특정 분할 이미지에는, 원본 파일명(sample.jpg) + 타임스탬프(2015-01-01-12:00:00) + 이용자ID(guest) + 이용자 IP(255.255.255.255) 정보를 AES 대칭키 암호 알고리즘으로 암호화한 QR코드 이미지를 병합하는 방식으로 워터마크를 삽입한다.aa. In the specific divided image, the original file name (sample.jpg) + time stamp (2015-01-01-12: 00: 00) + user ID (guest) + user IP (255.255.255.255) The watermark is inserted by merging the encrypted QR code image.
ab. 분할 이미지 데이터에 이미지 헤더값을 추가하여 이용자에게 전송한다. ab. Adds the image header value to the divided image data, and transmits it to the user.
ac. 이용자 웹브라우저에는 분할 이미지가 각 위치의 직사각형의 지정된 영역에 여백 없이 표시된다. 이때 이미지 URL에는 파일명, 파일서버 URL이 직접 노출되지 않고 암호화된 1회용 인증키 정보만 표시되어 직접적인 URL 접근을 차단한다.ac. In the user's web browser, the divided image is displayed in the designated area of the rectangle of each position with no margin. At this time, the image URL does not directly disclose the file name and the file server URL, but only the encrypted one-time authentication key information is displayed, thereby blocking direct URL access.
ad. x에서 결정된 랜덤 순서대로 분할 이미지를 순차적으로 요청하는 y~ac 과정이 총 m×n회 반복되면 웹서버는 각 분할된 영역에 해당하는 분할 이미지 파일을 랜덤 순서대로 전송하여, 모든 분할 이미지가 화면에 표시된다. 클라이언트 단말기 화면에 분할된 이미지가 여백없이 연결되어 원본 이미지와 똑같이 보이도록 표시된다. 즉, 이용자에게는 원본 이미지와 동일하게 보이는 이미지가 보여져 이용자는 분할된 이미지임을 인식할 수 없다. 따라서, 이용자는 파일을 복제하기 위해 접근하더라도 조각난 이미지 파일에만 접근할 수 있다.name. If the y-ac process that sequentially requests the divided images in random order determined by x is repeated m × n times in total, the web server transmits the divided image files corresponding to each divided area in random order, . The divided images on the client terminal screen are displayed without margins so that they look exactly like the original image. That is, the user can not recognize that the image is the same as the original image, so that the user can recognize that the image is the divided image. Therefore, the user can only access the fragmented image file even if he or she approaches to copy the file.
상기에서 구체적인 실시예에 의해 본 발명을 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이나 수정이 가능하다. 따라서, 본 발명의 기술적 범위는 설명된 실시예에 국한되어 정해져서는 아니되며 후술하는 청구의 범위뿐만 아니라, 이 청구의 범위와 균등한 것들에 의해 정해져야 한다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. Therefore, the technical scope of the present invention should not be limited to the described embodiments, but should be determined by the scope of the claims as well as the following claims.
디지털 이미지 저작물의 무단 복제를 차단함으로써 저작자의 저작권을 보호하고, 불법 복제물 유포로 인한 경제적 손실을 예방할 수 있다. By preventing the unauthorized copying of digital image works, it is possible to protect the copyright of the author and prevent the economic loss due to the dissemination of illegal copy.
Claims (6)
상기 원본 이미지와 관련된 데이터를 저장하는 DB서버로부터 소정의 시간 주기로 이미지 분할을 실행할 이미지 데이터를 하나씩 읽고, 상기 원본 이미지의 가로, 세로 사이즈를 각각 m 및 n으로 나눈 나머지 픽셀을 잘라낸 수정된 이미지를 생성하고, 상기 수정된 이미지로부터 분할된 m×n개의 분할 이미지 파일을 파일서버에 저장하는 단계;
클라이언트 단말기의 웹브라우저 화면에, 수정된 이미지와 동일한 크기의 빈 이미지 영역을 표시하고, 그 내부를 가로 m개, 세로 n개의 직사각형 영역으로 나누는 단계;
상기 분할 이미지 파일을 상기 클라이언트 단말기에 랜덤 순서로 전송하는 단계; 및
상기 분할 이미지 파일을 요청 순서에 맞는 위치의 직사각형 영역에 여백 없이 표시하는 단계를 포함하고,
상기 웹서버는, 상기 클라이언트 단말기가 이미지를 요청할 때,
상기 클라이언트 단말기의 이미지 요청시마다 새로 발급되는 1회용 인증키를 발급하고;
이미지 파일명 + 타임스탬프 + 이용자 ID + 이용자 IP의 정보를 하나의 스트링값으로 묶은 다음 암호화한 1회용 인증키를 생성하여 HTML 문서에 포함시키고, 클라이언트 단말기의 이미지 요청시 상기 HTML 문서를 클라이언트 단말기에 전송하고;
상기 인증키의 위변조를 막기 위해 상기 인증키의 특정 위치에 1바이트 크기의 유효성 체크값을 심고;
상기 클라이언트 단말기의 웹브라우저에 빈 이미지 영역이 표시됨과 동시에 상기 클라이언트와 웹서버간 비동기 통신을 통해 웹서버에 인증키를 요청하는 것을 특징으로 하는 이미지 분할 및 병합 방법.A method for splitting and merging images for digital image content security, the method comprising: when the client terminal requests an image, the web server processing the division and transmission of the original image stored in the temporary folder of the web server,
The image data to be subjected to image division is read one by one from the DB server storing the data related to the original image at predetermined time intervals, and a modified image is generated by cutting out the remaining pixels obtained by dividing the horizontal and vertical sizes of the original image into m and n, respectively Storing m × n divided image files divided from the modified image in a file server;
Displaying a blank image area of the same size as the modified image on the web browser screen of the client terminal and dividing the inside into a rectangular area of m by n and a length of n;
Transmitting the divided image files to the client terminal in a random order; And
And displaying the divided image file in a rectangular area of a position corresponding to a request order with no margin,
The web server, when the client terminal requests an image,
Issuing a newly issued one-time authentication key for each image request of the client terminal;
The image file name + time stamp + user ID + user IP information is combined into a single string value, and then the encrypted one-time authentication key is generated and included in the HTML document. When the image of the client terminal is requested, the HTML document is transmitted to the client terminal and;
Planting a 1-byte validity check value at a specific location of the authentication key to prevent forgery and falsification of the authentication key;
Wherein a blank image area is displayed on the web browser of the client terminal and an authentication key is requested to the web server through asynchronous communication between the client and the web server.
상기 클라이언트와 웹서버간 비동기 통신은, 상기 웹서버가,
요청받은 인증키의 특정 위치에 있는 체크값을 체크하여 인증키의 유효성을 검증하고, 검증된 경우 이미지 파일명, 타임스탬프, 이용자 ID, 이용자 IP 정보를 읽는 단계;
상기 타임스탬프와 현재시간을 비교해 유효성을 체크하는 단계;
상기 이용자 ID 정보를 바탕으로 비회원, 회원 또는 회원 등급별로 선별적으로 응답하는 단계;
상기 이용자 IP 정보를 통해 이용자가 접속한 국가를 검출하여 특정 국가에서의 이미지 접근을 거부하는 단계;
상기 인증키를 통한 인증이 끝나면, 상기 이미지 파일명으로부터 분할된 이미지 파일명을 생성하는 단계;
상기 분할 이미지 각각에 대해 분할 이미지 파일명 + 타임스탬프 + 이용자 ID + 이용자 IP를 다시 암호화한 1회용 인증키를 생성하는 단계;
상기 인증키의 위변조를 막기 위해, 인증키의 특정 위치에 1바이트 크기의 유효성 체크값을 심는 단계;
각 분할 이미지 정보를 담은 인증키 m×n 개의 시작과 끝에 허수의 인증키를 한 개씩 생성하여 총 (m×n)+2개의 인증키를 생성하여 이미지 요청에 대한 응답값으로 클라이언트 단말기에 전송하는 단계; 및
1부터 m×n까지 정수를 랜덤 순서대로 나열하고, 임의로 설정된 순서에 대응하는 각 분할 이미지 영역의 이미지 URL에 순차적으로 분할이미지 URL를 지정하는 단계를 포함하는 것을 특징으로 하는 이미지 분할 및 병합 방법.The method according to claim 1,
Wherein the asynchronous communication between the client and the web server comprises:
Checking the validity of the authentication key by checking a check value at a specific location of the requested authentication key, and reading the image file name, time stamp, user ID, and user IP information when verified;
Comparing the time stamp with a current time and checking validity;
Selectively responding to the non-member, member, or member class based on the user ID information;
Detecting a country accessed by a user through the user IP information and denying access to an image in a specific country;
Generating a divided image file name from the image file name after the authentication through the authentication key is completed;
Generating a one-time authentication key obtained by encrypting the divided image file name + time stamp + user ID + user IP again for each of the divided images;
Inserting a validity check value of 1 byte size at a specific position of the authentication key to prevent forgery and falsification of the authentication key;
(M × n) +2 authentication keys are generated by generating one imaginary authentication key at the beginning and end of the authentication key m × n containing the divided image information, and transmitted to the client terminal as a response value for the image request step; And
And arranging the integers from 1 to m 占 n in random order and sequentially designating the divided image URLs to the image URLs of the respective divided image areas corresponding to the arbitrarily set order.
상기 원본 이미지와 관련된 데이터를 저장하는 DB서버로부터 소정의 시간 주기로 이미지 분할을 실행할 이미지 데이터를 하나씩 읽고, 상기 원본 이미지의 가로, 세로 사이즈를 각각 m 및 n으로 나눈 나머지 픽셀을 잘라낸 수정된 이미지를 생성하고, 상기 수정된 이미지로부터 분할된 m×n개의 분할 이미지 파일을 파일서버에 저장하는 단계;
클라이언트 단말기의 웹브라우저 화면에, 수정된 이미지와 동일한 크기의 빈 이미지 영역을 표시하고, 그 내부를 가로 m개, 세로 n개의 직사각형 영역으로 나누는 단계;
상기 분할 이미지 파일을 상기 클라이언트 단말기에 랜덤 순서로 전송하는 단계; 및
상기 분할 이미지 파일을 요청 순서에 맞는 위치의 직사각형 영역에 여백 없이 표시하는 단계를 포함하고,
상기 분할 이미지 파일을 전송하는 단계는, 상기 웹서버가,
a) 요청받은 인증키의 체크값을 체크하여 인증키의 유효성을 검증하고, 올바른 인증키일 경우 분할 이미지 파일명 + 타임스탬프 + 이용자 ID + 이용자 IP 정보를 읽는 단계;
b) 인증키에 대한 인증이 끝나면, 상기 웹서버가 파일서버에 분할 이미지를 요청하고, 이미지 데이터를 가져오는 단계;
c) 특정 분할 이미지에, 원본 파일명 + 타임스탬프 + 이용자 ID + 이용자 IP 정보를 암호화한 QR코드 이미지를 병합하는 방식으로 워터마크를 삽입하는 단계;
d) 분할 이미지 데이터에 이미지 헤더값을 추가하여 이용자에게 전송하는 단계;
e) 이용자 웹브라우저에 분할 이미지를 지정된 영역에 표시하는 단계; 및
f) 상기 단계 a) ~ e)를 총 m×n회 반복하여 모든 분할 이미지를 웹브라우저에 표시하는 단계를 포함하는 것을 특징으로 하는 이미지 분할 및 병합 방법.A method for splitting and merging images for digital image content security, the method comprising: when the client terminal requests an image, the web server processing the division and transmission of the original image stored in the temporary folder of the web server,
The image data to be subjected to image division is read one by one from the DB server storing the data related to the original image at predetermined time intervals, and a modified image is generated by cutting out the remaining pixels obtained by dividing the horizontal and vertical sizes of the original image by m and n, respectively Storing m × n divided image files divided from the modified image in a file server;
Displaying a blank image area of the same size as the modified image on the web browser screen of the client terminal and dividing the inside into a rectangular area of m by n and a length of n;
Transmitting the divided image files to the client terminal in a random order; And
And displaying the divided image file in a rectangular area of a position corresponding to a request order with no margin,
Wherein the step of transmitting the divided image file comprises:
a) verifying the validity of the authentication key by checking the check value of the requested authentication key, and reading the divided image file name + time stamp + user ID + user IP information when the authentication key is a correct authentication key;
b) when the authentication of the authentication key is completed, the web server requests the divided image to the file server and fetches the image data;
c) inserting a watermark into a specific divided image by merging a QR code image obtained by encrypting the original file name + time stamp + user ID + user IP information;
d) adding an image header value to the divided image data and transmitting it to the user;
e) displaying a segmented image in a designated area in a user web browser; And
f) repeating steps a) to e) for a total of m x n times to display all the divided images on a web browser.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150117205A KR101638398B1 (en) | 2015-08-20 | 2015-08-20 | Image segmentation and combination method and computer readable recording media storing program for executing the method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150117205A KR101638398B1 (en) | 2015-08-20 | 2015-08-20 | Image segmentation and combination method and computer readable recording media storing program for executing the method |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101638398B1 true KR101638398B1 (en) | 2016-07-12 |
Family
ID=56505327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150117205A KR101638398B1 (en) | 2015-08-20 | 2015-08-20 | Image segmentation and combination method and computer readable recording media storing program for executing the method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101638398B1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101919286B1 (en) | 2018-06-12 | 2018-11-15 | 이성훈 | method of preventing copying online image on webserver |
KR102155647B1 (en) * | 2019-09-06 | 2020-09-14 | 주식회사 테르텐 | Method for operating purchase evidence management server and method for managing content transactions based on block chains |
KR20220074199A (en) | 2020-11-27 | 2022-06-03 | 주식회사 테르텐 | Computer program for dividing original file into multiple pieces, encrypting divided files and restoring original file by decrypting encrypted files, and method thereof |
CN115514494A (en) * | 2022-09-16 | 2022-12-23 | 长城汽车股份有限公司 | Image transmission method and device, electronic equipment and readable storage medium |
KR20230115713A (en) * | 2022-01-27 | 2023-08-03 | 주식회사 넥스팟솔루션 | Managing system for electronic document using qr code and method thereof |
KR102708495B1 (en) * | 2024-02-13 | 2024-09-23 | 주식회사 비지웰 | Security enhancement system and method for editing drawings |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100321771B1 (en) * | 1998-08-12 | 2002-03-08 | 이계철 | Image composition system and method based on the cell division |
JP2004252992A (en) * | 2003-02-20 | 2004-09-09 | Vr Photo Co Ltd | Method and equipment of asp service for multi-resolution image on environment of multi-web server |
-
2015
- 2015-08-20 KR KR1020150117205A patent/KR101638398B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100321771B1 (en) * | 1998-08-12 | 2002-03-08 | 이계철 | Image composition system and method based on the cell division |
JP2004252992A (en) * | 2003-02-20 | 2004-09-09 | Vr Photo Co Ltd | Method and equipment of asp service for multi-resolution image on environment of multi-web server |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101919286B1 (en) | 2018-06-12 | 2018-11-15 | 이성훈 | method of preventing copying online image on webserver |
KR102155647B1 (en) * | 2019-09-06 | 2020-09-14 | 주식회사 테르텐 | Method for operating purchase evidence management server and method for managing content transactions based on block chains |
KR20220074199A (en) | 2020-11-27 | 2022-06-03 | 주식회사 테르텐 | Computer program for dividing original file into multiple pieces, encrypting divided files and restoring original file by decrypting encrypted files, and method thereof |
KR20230115713A (en) * | 2022-01-27 | 2023-08-03 | 주식회사 넥스팟솔루션 | Managing system for electronic document using qr code and method thereof |
KR102715674B1 (en) * | 2022-01-27 | 2024-10-11 | 주식회사 넥스팟솔루션 | Managing system for electronic document using qr code and method thereof |
CN115514494A (en) * | 2022-09-16 | 2022-12-23 | 长城汽车股份有限公司 | Image transmission method and device, electronic equipment and readable storage medium |
KR102708495B1 (en) * | 2024-02-13 | 2024-09-23 | 주식회사 비지웰 | Security enhancement system and method for editing drawings |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101638398B1 (en) | Image segmentation and combination method and computer readable recording media storing program for executing the method | |
EP3560136B1 (en) | Distributed blockchain-based method for saving the location of a file | |
US7293293B2 (en) | Apparatus and method for detecting illegitimate change of web resources | |
US11496512B2 (en) | Detecting realtime phishing from a phished client or at a security server | |
US8887290B1 (en) | Method and system for content protection for a browser based content viewer | |
JP2020511059A (en) | Information authentication method and system | |
US7555784B2 (en) | Method and system for safely disclosing identity over the internet | |
US20040030784A1 (en) | Methods of accessing and using web-pages | |
KR20130086380A (en) | A system and method to protect user privacy in multimedia uploaded to internet sites | |
CN104077624A (en) | Methods and systems for generating and checking electronic note with anti-counterfeiting two-dimension code | |
Lax et al. | Digital document signing: Vulnerabilities and solutions | |
Wang et al. | 2D barcodes for visual cryptography | |
Focardi et al. | Security threats and solutions for two-dimensional barcodes: a comparative study | |
US6954854B1 (en) | Electronic authentication method, electronic authentication apparatus and electronic authentication storage medium | |
CN111177666A (en) | Forensic document anti-counterfeiting and anti-tampering method and system based on fragile watermark | |
KR20160077747A (en) | Apparatus and method for protecting contents included in a Hyper-text Markup Language document | |
KR100434653B1 (en) | Web page browsing limiting method and server system | |
US7739500B2 (en) | Method and system for consistent recognition of ongoing digital relationships | |
KR20190120498A (en) | System and method for printing security of computerised documentation | |
Dakroury et al. | Protecting GIS data using cryptography and digital watermarking | |
KR102490756B1 (en) | A server providing encrypted document content, a viewer device of the document contents | |
CN114760078A (en) | Method and system for preventing malicious tampering of page request parameters | |
CN102054132A (en) | Security component of database system | |
CN109543364B (en) | System and method for preventing data from being copied | |
US20230385811A1 (en) | Secure and decentralized payment for digital media content via certificates with wallet information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |