KR101889062B1 - Server and method for generating security file - Google Patents
Server and method for generating security file Download PDFInfo
- Publication number
- KR101889062B1 KR101889062B1 KR1020180024860A KR20180024860A KR101889062B1 KR 101889062 B1 KR101889062 B1 KR 101889062B1 KR 1020180024860 A KR1020180024860 A KR 1020180024860A KR 20180024860 A KR20180024860 A KR 20180024860A KR 101889062 B1 KR101889062 B1 KR 101889062B1
- Authority
- KR
- South Korea
- Prior art keywords
- file
- data
- security
- encrypted data
- server
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
Description
보안파일 생성서버 및 방법에 관한 것으로 구체적으로, 웹 하드, 클라우드, 아카이브 등 다양한 스토리지에 저장된 파일이 해킹되거나 인증되지 않은 사용자에 의해 열리지 않도록 암호화 하는 보안파일 생성서버 및 방법에 관한 것이다. And more particularly, to a secure file creation server and method for encrypting a file stored in various storage devices such as a web hard, a cloud, and an archive so as not to be opened by a hacked or unauthorized user.
본 명세서에서 달리 표시되지 않는 한, 이 섹션에 설명되는 내용들은 이 출원의 청구항들에 대한 종래 기술이 아니며, 이 섹션에 포함된다고 하여 종래 기술이라고 인정되는 것은 아니다.Unless otherwise indicated herein, the contents set forth in this section are not prior art to the claims of this application and are not to be construed as prior art to be included in this section.
인터넷 등장 후 개인 PC 와 스마트폰이 보급되면서, 디지털 파일은 기하급수적으로 증가하고 있다. 사진, 영상 등의 개인 기록뿐만 아니라, 일상생활에서 접하는 모든 미디어와 업무결과가 디지털화되면서, 중요한 디지털 정보를 안전하게 저장하고 보관하는 서비스에 대한 니즈가 높다. 이에 따라, 웹 하드, 클라우드 등 일정요량의 저장공간을 확보해 문서나 파일을 저장, 열람, 편집하고 다수의 사람과 파일을 공유할 수 있는 인터넷 파일 관리 서비스가 등장하였다. 특히, 디지털 아카이브(digital archive)는 시간 경과에 따라 훼손되거나 없어질 우려가 있는 정보들을 디지털화하여 보관하는 저장소로서, 디지털 정보의 항구적인 기록과 보존 및 이용을 가능하게 한다. 디지털 아카이브는 소장품이나 자료 등을 디지털 정보로 바꾸어서 보관하며, 자료 간의 관련을 유지하고 관리하는 데이터베이스의 일종이다. As personal PCs and smartphones become popular after the Internet, digital files are increasing exponentially. In addition to personal records such as photos and videos, all the media and business results in everyday life are digitized, and there is a high need for services to securely store and store important digital information. As a result, Internet file management services have emerged that can store, view, edit and share documents and files with a certain amount of storage space such as web hard and cloud. In particular, a digital archive is a repository for digitizing and storing information that may be damaged or destroyed over time, allowing for the permanent recording, preservation and use of digital information. Digital archives are a kind of database that maintains and maintains the relationship between data, keeping collections or materials as digital information.
이렇게 기업이나 조직의 모든 정보가 컴퓨터에 저장되면서, 정보 보안을 위해 외부에서 내부, 내부에서 외부의 정보통신망에 불법으로 접근하는 것을 차단하고는 있다. 하지만, 해커 등 강력한 비 인증 사용자에 의해 방화벽이 뚫리는 경우에는 웹 하드, 클라우드, 아카이브 등의 스토리지에 저장된 기업이나 조직, 개개인의 모든 정보가 속수무책으로 유출된다. 이에 대비하고자 시스템 보안을 아무리 강화한들, 강화된 보안 시스템을 무너뜨리는 해킹 기술이 등장하는 것은 자명하다. 따라서, 보안시스템에 의존하지 않더라도 데이터 유출을 막을 수 있는 보안기술이 필요하다. In this way, all information of a corporation or organization is stored in a computer, thereby preventing illegal access from the outside to the inside or outside of the information communication network for information security. However, if a firewall is opened by a strong unauthorized user such as a hacker, all the information of the enterprise, organization, and individual stored in storage such as web hard, cloud, and archive is leaked to the user. To prepare for this, it is obvious that hacking technology that breaks down the security system which strengthened system security no matter how strong it is. Therefore, there is a need for a security technology that can prevent data leakage even if it does not depend on the security system.
보안파일 생성 서버에 파일을 저장할 때, 파일 내 암호화 데이터를 삽입하여 암호화 하고, 암호화된 데이터를 복호화 하는 복호화키의 위치정보 및 파일에 삽입된 암호화 데이터의 위치정보를 암호화한 값을 따로 저장함으로써, 업로드 된 파일의 보안을 강화한다. When a file is stored in the secure file creation server, encrypts the encrypted data in the file, encrypts the location information of the decryption key for decrypting the encrypted data, and stores the encrypted value of the location information of the encrypted data inserted in the file, Enhance the security of uploaded files.
보안파일 생성서버로부터 파일을 다운로드 할 때는, 사용자 인증이 완료된 이후, 파일에 기록된 데이터 위치 정보에 따라 파일에 삽입된 암호화 데이터가 분리되어야만 파일이 정상적으로 열릴 수 있도록 하여, 비인증 사용자가 보안파일 생성서버에 저장되었던 파일을 열 수 없도록 한다. When a file is downloaded from the secure file generation server, the file can be normally opened only after the encrypted data inserted in the file is separated according to the data location information recorded in the file after the user authentication is completed, So that it can not be opened.
실시예에 따른 보안파일 생성방법에 보안파일 생성방법은 (A) 보안파일 생성서버에서 사용자 단말로부터 파일의 이름, 경로, 크기를 포함하는 파일정보를 추출하고, 스토리지 서버에서 파일이 저장될 서버의 위치정보와 가상파일네임(virtual file name)을 추출하는 단계; (B) 보안파일 생성서버에서 파일이 저장될 서버의 위치정보 및 가상파일네임을 이용하여 저장파일데이터를 생성하고, 저장파일데이터를 암호화 알고리즘을 통해 암호화한 1차 암호화 데이터를 생성하는 단계; (C) 보안파일 생성서버에서 1차 암호화 데이터를 복호화 하는 복호화키를 1차 암호화 데이터에 삽입하여 2차 암호화 데이터를 생성하고, 2차 암호화 데이터에서 복호화키가 삽입된 위치를 나타내는 복호화키 위치 정보를 기록하는 단계; (D) 보안파일 생성서버에서 사용자 단말로 파일 전송을 요청하고, 사용자 단말에서 보안파일 생성서버로 파일을 전송하는 단계; (E) 사용자 단말에서 보안파일 생성서버로 파일을 전송하는 도중에, 보안파일 생성서버는 사용자 단말로부터 전송되는 파일의 이름을 가상파일네임으로 변경하고, 2차 암호화 데이터를 변조하여 변조된 2차 암호화 데이터를 전송되는 파일에 삽입하는 단계; 및 (F) 보안파일 생성서버에서 파일 이름, 저장 경로, 파일 크기, 소유자, 2차 암호화 데이터 및 복호화키 위치정보 암호화 값인 데이터키와 파일 내 삽입된 2차 암호화 데이터의 위치 정보 암호화 값인 파일키를 포함하는 보안 데이터를 생성하는 단계; 를 포함한다.A method for generating a security file in a security file generation method according to an embodiment includes the steps of (A) extracting file information including a name, a path, and a size of a file from a user terminal at a secure file generation server, Extracting location information and a virtual file name; (B) generating secure file data by using the location information and the virtual file name of the server in which the file is to be stored in the secure file creation server, and generating the first encrypted data by encrypting the stored file data through an encryption algorithm; (C) generating a security file; generating a secondary encryption data by inserting a decryption key for decrypting the primary encrypted data into the primary encrypted data; and generating decryption key position information indicating a position where the decryption key is inserted in the secondary encrypted data ; (D) requesting a file transfer from the security file creation server to the user terminal and transferring the file from the user terminal to the secure file creation server; (E) While transferring a file from the user terminal to the secure file creation server, the secure file creation server changes the name of the file transmitted from the user terminal to the virtual file name, modulates the second encryption data, Inserting data into a file to be transferred; And (F) generating a security file. The server generates a file key, which is a location information encryption value of the data key, which is the encryption value of the file name, the storage path, the file size, the owner, the secondary encryption data and the decryption key position information, Generating security data including the security data; .
바람직한 실시예에서, (F) 파일을 복원하여 스마트 단말로 전송하는 단계; 는 (a) 보안파일 생성서버에서 사용자 단말로부터 사용자 인증정보를 수신하고, 사용자 인증을 완료한 경우, 사용자 단말로부터 파일이름, 경로, 크기, 사용자를 포함하는 파일정보를 전송 받는 단계; (b) 보안파일 생성서버에서 사용자 단말로부터 전송된 파일정보를 기반으로 보안파일 생성서버에 저장된 보안데이터를 검색하는 단계; (c) 검색된 보안데이터를 추출하고, 추출된 보안데이터에서 2차 암호화 데이터의 위치를 확인하고, 2차 암호화 데이터에서 복호화키 위치를 확인하는 단계; (d) 복호화키를 분리하여 2차 암호화 데이터를 1차 암호화 데이터로 변환하고, 1차 암호화 데이터를 분리된 복호화키로 해독하여 저장파일 데이터로 복원하는 단계; (e) 복원된 저장파일데이터에 기록된 파일이 저장된 스토리지 서버의 위치를 확인하고, 파일 내 변조된 2차 암호화 데이터의 위치를 확인하는 단계; 및 (f) 파일 내 변조된 2차 암호화 데이터를 분리하고, 보안파일에 포함된 데이터 변조를 복원하는 단계; 를 포함한다. In a preferred embodiment, (F) restoring the file and transmitting it to the smart terminal; (A) receiving user authentication information from a user terminal at a secure file generation server and receiving file information including a file name, a path, a size, and a user from a user terminal when the user authentication is completed; (b) retrieving security data stored in the secure file creation server based on file information transmitted from the user terminal at the secure file creation server; (c) extracting the retrieved security data, confirming the position of the secondary encrypted data in the extracted security data, and confirming the decryption key position in the secondary encrypted data; (d) separating the decryption key to convert the secondary encrypted data into primary encrypted data, decrypting the primary encrypted data with a separate decryption key, and restoring the decrypted data into stored file data; (e) confirming the location of the storage server in which the file recorded in the restored storage file data is stored, and confirming the location of the modulated secondary encrypted data in the file; And (f) separating the modulated secondary encrypted data in the file and restoring the data modulation contained in the security file; .
이상에서와 같은 보안파일 생성 서버 및 보안파일 생성 방법은 비 인증 사용자에게 기업이나 조직의 스토리지에 저장된 파일이 전달되더라도, 파일에 암호화 데이터가 삽입되어 이를 복호화 하여 분리시키지 못하는 경우, 비 인증 사용자가 열 수 없도록 함으로써, 시스템 보안이 취약한 상황에서도 중요한 데이터를 안전하게 보관할 수 있도록 한다.In the security file generation server and security file generation method as described above, even if a file stored in a storage of a corporation or an organization is delivered to an unauthenticated user, if encrypted data is inserted into a file and decrypted and can not be separated, So that important data can be safely stored even in a situation where system security is low.
보안 시스템뿐만 아니라 파일 자체에서 비 인증 사용자의 접근을 제한함으로써 정보 보안성을 향상시킨다. It improves information security by restricting unauthorized users' access to the file itself as well as the security system.
본 발명의 효과는 상기한 효과로 한정되는 것은 아니며, 본 발명의 상세한 설명 또는 특허청구범위에 기재된 발명의 구성으로부터 추론 가능한 모든 효과를 포함하는 것으로 이해되어야 한다.It should be understood that the effects of the present invention are not limited to the above effects and include all effects that can be deduced from the detailed description of the present invention or the configuration of the invention described in the claims.
도 1은 실시예에 따른 보안파일 생성 시스템 구성을 나타낸 도면
도 2는 실시예에 따른 보안파일 생성서버의 데이터 처리 블록을 나타낸 블록도
도 3은 실시예에 따른 보안파일 생성서버의 보다 구체적인 구성을 나타낸 도면
도 4는 실시예에 따른 데이터 생성과정에서의 데이터 구조
도 5는 실시예에 따른 파일 암호화 처리 과정
도 6은 실시예에 따른 데이터 구조를 나타낸 도면
도 7은 실시예에 따른 보안파일 생성 시스템의 신호 흐름도로서, 스마트 단말에서 보안파일 생성서버로 파일을 업로드 할 경우 데이터 처리 흐름을 나타낸 도면
도 8은 실시예에 따라 스마트 단말에서 보안파일 생성서버로 파일을 업로드 할 경우 데이터 처리 과정을 보다 자세히 나타낸 흐름도
도 9는 실시예에 따른 보안파일 생성 시스템의 신호 흐름도로서, 스마트 단말에서 보안파일 생성 서버로부터 파일을 다운로드 할 경우 데이터 처리 흐름을 나타낸 도면
도 10은 실시예에 따라 스마트 단말에서 보안파일 생성 서버로 파일을 다운로드 할 경우 서버에서의 데이터 처리 과정을 보다 자세히 나타낸 흐름도
도 11은 실시예에 따른 암호화 데이터를 보다 자세히 설명하기 위한 도면1 is a diagram illustrating a configuration of a security file generation system according to an embodiment;
2 is a block diagram illustrating a data processing block of a secure file generation server according to an embodiment;
3 is a diagram showing a more specific configuration of the secure file creation server according to the embodiment
FIG. 4 is a diagram illustrating a data structure
5 is a flowchart illustrating a process of encrypting a file according to an embodiment
6 is a diagram illustrating a data structure according to an embodiment;
FIG. 7 is a signal flow diagram of a security file generation system according to an embodiment. FIG. 7 is a diagram illustrating a data processing flow when a file is uploaded from a smart terminal to a secure file generation server
8 is a flowchart illustrating a data processing procedure in a case where a file is uploaded from a smart terminal to a secure file creation server according to an exemplary embodiment of the present invention.
FIG. 9 is a signal flow diagram of a security file generation system according to an embodiment. FIG. 9 is a diagram illustrating a data processing flow when a smart terminal downloads a file from a secure file generation server
10 is a flowchart illustrating a data processing procedure in a server in a case where a file is downloaded from a smart terminal to a secure file creation server according to an embodiment
11 is a diagram for explaining the encryption data according to the embodiment in more detail;
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 도면부호는 동일 구성 요소를 지칭한다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and the manner of achieving them, will be apparent from and elucidated with reference to the embodiments described hereinafter in conjunction with the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Is provided to fully convey the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like numbers refer to like elements throughout.
본 발명의 실시 예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시 예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The following terms are defined in consideration of the functions in the embodiments of the present invention, which may vary depending on the intention of the user, the intention or the custom of the operator. Therefore, the definition should be based on the contents throughout this specification.
도 1은 실시예에 따른 보안파일 생성 시스템 구성을 나타낸 도면이다. 1 is a diagram illustrating a configuration of a security file generation system according to an embodiment.
도 1을 참조하면, 실시예에 따른 보안파일 생성 시스템은 보안파일 생성 서버(100) 및 사용자 스마트 단말(200)을 포함하여 구성될 수 있다. Referring to FIG. 1, the security file generation system according to the embodiment may include a security
보안파일 생성서버(100)는 웹 하드, 클라우드, 아카이브 등 다양한 스토리지에 저장된 파일이 해킹되거나 인증되지 않은 사용자에게 전달된 경우, 파일에 내장된 암호화 데이터로 비 인증 사용자의 접근(access)을 허용하지 않는 보안파일을 생성한다. 예컨대, 보안파일 생성서버(100)는 사용자 스마트 단말(200)에서 파일을 다운로드 완료하더라도, 파일에 내장된 암호화 데이터의 복호화 과정을 거치고, 암호화 데이터가 보안파일에서 분리되지 않은 경우, 사용자 단말(200)에서 다운로드 한 파일이 열리지 않도록 한다. 실시예에 따른 보안파일 생성서버(100)는 사용자 단말(200)로부터 수신한 파일을 업로드 할 때는, 수신한 파일을 암호화한 보안파일과 보안 데이터를 생성하여 저장한다. 예컨대, 암호화 된 보안파일을 복호화 하는 보안데이터를 데이터베이스에 따로 저장하고, 사용자 인증이 완료된 경우에만 보안파일이 복호화 되도록 한다. When a file stored in various storage devices such as web hard, cloud, and archive is hacked or delivered to an unauthenticated user, the secure
실시예에서 사용자 단말(200)이 보안파일 생성서버(100)로부터 파일을 다운로드 하는 경우에는, 사용자 단말(200)의 인증이 완료된 경우, 보안데이터로 스토리지 서버에 저장된 보안파일을 복호화 하여, 복호화가 완료된 파일을 사용자 단말(200)에서 다운 받을 수 있도록 한다. 이로써, 비 인증 사용자에게 스토리지 서버에 저장된 보안파일이 전달되더라도, 전달된 보안파일은 암호화 데이터가 삽입된 열수 없는 파일이기 때문에, 시스템 보안이 취약한 상황에서도 중요한 파일을 안전하게 보관할 수 있도록 하고 불법 다운로드를 막는다. 또한 실시예를 통해 스토리지 서버의 보안 시스템뿐만 아니라 파일 자체에서 비 인증 사용자의 접근을 제한함으로써 정보 보안성을 향상 시킬 수 있도록 한다.When the
사용자의 스마트 단말(200)은 보안파일 생성서버(100)로부터 영상, 음악, 문서, 도면, 그림 등 각종 디지털 파일을 다운로드 받아 이용한다. 실시예에 따른 스마트 단말(200)은 태블릿 PC(Tablet PC), 랩톱(Laptop), 개인용 컴퓨터(PC: Personal Computer), 스마트폰(Smart Phone), 개인휴대용 정보단말기(PDA: Personal Digital Assistant) 및 이동통신 단말기(Mobile Communication Terminal) 등 중 어느 하나일 수 있다. 즉, 단말(200)은 유무선 통신망을 경유하여 서버(100)에 접속하기 위한 특정 어플리케이션을 저장하기 위한 메모리, 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하고 있는 단말기를 의미한다. 즉, 단말(200)는 개인 PC인 것이 일반적이지만, 서버(100)와 서버-클라이언트 통신이 가능하다면 그 어떠한 단말기도 가능하며, 노트북 컴퓨터, 이동통신 단말기, PDA 등 여하한 통신 컴퓨팅 장치를 모두 포함하는 넓은 개념이다. 한편, 단말(200)은 터치 스크린을 구비한 형태로 제작되는 것이 바람직하나 반드시 이에 한정되는 것은 아니다.The
도 2는 실시예에 따른 보안파일 생성 서버의 데이터 처리 블록을 나타낸 블록도이다.2 is a block diagram showing a data processing block of the security file generation server according to the embodiment.
도 2를 참조하면, 실시예에 따른 보안파일 생성서버(100)는 저장모듈(10), 추출모듈(110), 보안데이터 생성모듈(130), 보안모듈(150), 데이터검증모듈(170) 및 파일검증모듈(190)을 포함하여 구성될 수 있다. 본 명세서에서 사용되는 '모듈' 이라는 용어는 용어가 사용된 문맥에 따라서, 소프트웨어, 하드웨어 또는 그 조합을 포함할 수 있는 것으로 해석되어야 한다. 예를 들어, 소프트웨어는 기계어, 펌웨어(firmware), 임베디드코드(embedded code), 및 애플리케이션 소프트웨어일 수 있다. 또 다른 예로, 하드웨어는 회로, 프로세서, 컴퓨터, 집적 회로, 집적 회로 코어, 센서, 멤스(MEMS; Micro-Electro-Mechanical System), 수동 디바이스, 또는 그 조합일 수 있다. 2, the secure
저장모듈(10)은 보안파일을 저장하는 스토리지(11)와 보안데이터를 저장하는 데이터베이스(13)를 포함할 수 있다. 실시예에서 보안파일은 보안파일 생성 서버(100)와 통신하는 스토리지 서버(도면 미도시)에도 저장 될 수 있다.The
추출모듈(110)은 파일에서 파일이름, 경로, 크기를 포함하는 파일정보를 추출하고, 스토리지 서버에서 파일이 저장될 서버의 위치정보와 가상파일네임(virtual file name)을 추출한다.The
보안데이터 생성모듈(130)은 파일이 저장될 서버의 위치정보 및 가상파일네임을 이용하여 저장파일데이터를 생성한다. 이후, 저장파일 데이터를 암호화 알고리즘을 통해 암호화한 1차 암호화 데이터를 생성한다. 실시예에 따른 저장파일데이터는 아이디, 데이터크기, 해시정보, 파일크기, 파일이름, 사용자, 파일 생성 데이터, 스토리지 서버, 저장폴더이름, 가상파일이름 등이 기록될 수 있다. The security
보안데이터 생성모듈(130)은 1차 암호화 데이터를 복호화 하는 복호화키를 1차 암호화 데이터에 삽입하여 2차 암호화 데이터를 생성하고, 2차 암호화 데이터에서 복호화키가 삽입된 위치를 나타내는 복호화키 위치 정보를 기록한다.The security
보안모듈(150)은 2차 암호화 데이터를 변조처리하고, 파일에 삽입된 변조된 2차 암호화 데이터의 위치정보를 암호화한다. The
보안데이터 검증모듈(170)은 파일 다운로드 신호가 전달된 경우, 보안 데이터 내의 암호화된 복호화키의 위치정보를 추출하여, 보안데이터 내에 삽입된 2차 암호화 데이터를 복호화키로 복호화하여 1차 암호화 데이터를 생성하고, 1차 암호화 데이터를 해독하여 저장파일 데이터로 복원한다. 이후, 저장 파일데이터의 스토리지 서버, 저장 폴더 이름 및 가상 파일 네임을 확인하여, 스토리지 서버에 저장된 보안 파일을 찾도록 한다When the file download signal is transmitted, the secure
파일검증모듈(190)은 보안파일내의 변조된 2차 암호화 데이터의 위치정보를 추출하고, 파일 내 삽입된 단일블록 또는 다중블록의 변조된 2차 암호화 데이터를 보안 데이터로 복호화하여 분리한다. 이후, 2차 암호화 데이터가 분리된 파일의 변조를 복원하여 파일의 무결성을 검증한다. The
실시예에서, 추출모듈(110), 보안데이터 생성모듈(13)0 및 보안모듈(150)은, 보안데이터와 변조된 2차 암호화 데이터가 삽입된 보안 파일을 생성하는 기능을 수행하여 사용자 단말(100)에서 보안파일 생성 서버(100)로 파일 업로드 시 주로 시용된다. In the embodiment, the
이에 반해 데이터 검증모듈(170)과 파일 검증모듈(190)은 변조된 2차 암호화 데이터를 분리하기 위한 복호화 작업과 무결성 검증을 수행하여, 사용자 단말(200)에서 파일 다운로드 시 주로 사용된다. On the other hand, the
실시예에 따른 정보추출, 저장파일데이터생성, 1차 암호화 데이터 및 2차 암호화 데이터 생성, 보안파일 생성 과정은 사용자 단말로부터 전송된 파일이 전송 완료 후 처리되는 것이 아니라, 전송 중에 처리된다. The information extraction, storage file data generation, primary encryption data generation, secondary encryption data generation, and security file generation process according to the embodiment are not processed after the transmission of the file from the user terminal but during the transmission.
도 3은 실시예에 따른 보안파일 생성서버의 보다 구체적인 구성을 나타낸 도면이다.3 is a diagram illustrating a more specific configuration of a secure file generation server according to an embodiment.
도 3을 참조하면, 실시예에 따른 보안파일 생성서버(100)의 추출모듈(110)은 제1추출부(111) 및 제 2 추출부(113)을 포함하여 구성될 수 있고, 보안 데이터 생성모듈(130)은 데이터 생성부(131), 암호화 처리부(133), 복호화키처리부(135) 및 위치기록부(137)를 포함하여 구성될 수 있고, 보안모듈(150)은 데이터 변조부(151), 데이터 블록화부(153) 및 위치기록부(155)를 포함하여 구성될 수 있고, 데이터 검증모듈(170)은 위치 추출부(171), 복호화키 분리부(173), 복호화처리부(175) 및 정보확인부(177)을 포함하여 구성될 수 있고, 파일검증모듈(190)은 위치 추출부(191), 데이터 분리부(193) 및 무결성 검증부(195)를 포함하여 구성될 수 있다. 도 3에 도시된 각 데이터 블록을 설명함에 있어 이해를 돕기 위해 실시예에 따른 데이터 생성과정의 데이터 구조를 나타낸 도 4와 파일 암호화 처리 과정을 나타낸 도 5를 함께 설명 하도록 한다.3, the
제 1추출부(111)는 파일에서 파일의 기본정보를 추출한다. 실시예에 있어서 기본정보는 파일의 메타 데이터로서, 최초생성일시, 최초수정일시, 사용자 아이디, 사이즈 등을 포함할 수 있다. 도 4에 도시된 실시예에서와 같이, 제 1 추출부(111)는 사용자 단말에서 파일을 업로드 하려는 경우, 단말기의 파일 정보를 추출할 수 있다. 이때, 추출된 파일 정보는 해쉬(Hash), 파일크기(filesize), 파일네임(filename), 사용자 아이디와 업로더 한 사용자 정보(owner), 파일 생성 데이터(File creation date), 파일정보 1(File information1) 및 파일정보 2(File information2)를 포함할 수 있다.The first extracting
제2 추출부(113)는 서버에서 파일이 저장될 위치정보 및 가상파일네임을 추출한다. 파일이 저장될 위치정보는 폴더 명이나 경로 정보를 포함할 수 있고, 가상파일네임은 해시, 파일크기, 파일 생성일 등 제1추출부에서 추출된 파일정보를 이용하여 생성될 수 있다.The second extracting
도 4에 도시된 실시예에서와 같이 제2추출부에서 추출되는 정보는 저장서버(Storage server), 저장 폴더이름(Save folder name), 가상파일네임(Virtual file name)이 포함될 수 있다. 예컨대, 제2 추출부(113)는 계층화된 폴더 정보를 추출할 수 있다. 구체적으로, 건축도면파일의 저장 위치정보를 추출하는 경우, 제2추출부는 폴더의 상위 카테고리인 '도면' 카테고리에서 1층, 2층 3층 과 같은 하위 카테고리 정보를 추출할 수 있다. 실시예에서 가상파일네임은 해시와 파일크기 및 파일 생성일을 조합하여 만들어 낼 수 있다. As in the embodiment shown in FIG. 4, the information extracted by the second extracting unit may include a storage server, a save folder name, and a virtual file name. For example, the second extracting
보안데이터 생성모듈(130)의 데이터 생성부(131)는 제 1 추출부(111)에서 추출된 파일정보와 제 2추출부(113)에서 추출된 스토리지 서버 저장 위치정보 및 가상파일네임으로 저장파일데이터를 생성한다. 암호화 처리부(133)는 저장파일데이터에 암호화 알고리즘을 적용한 1차 암호화 데이터를 생성한다. The
복호화키 처리부(135)는 1차 암호화된 데이터에 복호화키를 삽입하여 2차 암호화 데이터를 생성한다. The decryption
위치 기록부(137)는 2차 암호화 데이터에 삽입된 복호화키의 위치정보를 암호화한다. The location recording unit 137 encrypts the location information of the decryption key inserted into the secondary encrypted data.
보안모듈(150)의 데이터 변조부(151)은 2차 암호화 데이터를 변조처리 한다. 파일 내 단일블록으로 2차 암호화 데이터가 적용될 경우 쉽게 복원할 수 있기 때문에 실시예에서는 데이터 변조부(151)에서 2차 암호화 데이터를 변조한다. The data modulator 151 of the
데이터 블록화부(153)는 변조된 2차 암호화 데이터를 단일블록 또는 다중블록 처리하여 파일에 삽입한다. 도 5에 도시된 바와 같이, 단일블록 처리는 변조된 2차 암호화 데이터를 단일블록으로 파일에 삽입하거나, 복수개의 변조된 2차 암호화 데이터 블록을 파일의 데이터 곳곳에 삽입할 수 있다. The
위치 기록부(155)는 파일 내 삽입된 변조된 2차 암호화 데이터의 위치정보를 암호화한다. The position recording unit 155 encrypts the positional information of the modulated secondary encrypted data inserted in the file.
실시예에서 보안데이터 생성모듈(130)의 데이터 생성부(131)는 사용자 단말(200)에서 보안파일 생성서버(100)로 파일을 업로드 하는 도중에, 사용자 단말(200)로부터 전송되는 파일 이름을 가상파일네임으로 변경하고, 2차 암호화 데이터를 변조하여 변조된 2차 암호화 데이터를 사용자 단말(200)로부터 전송되는 파일에 삽입하고, 스토리지 서버에 저장한다. 이후, 파일 이름, 저장 경로, 파일 크기, 소유자, 2차 암호화 데이터 및 복호화키 위치 정보 암호화 값인 데이터키와 저장파일 내 삽입된 2차 암호화 데이터의 위치 정보 암호화 값인 파일키를 포함하는 보안 데이터를 생성한다. 실시예에서 데이터 생성부(131)는 소유자와 변조된 2차 암호화 데이터의 삽입 위치정보를 암호화한 값을 파일키로 저장하여 보안 데이터를 생성할 수 있고, 소유자 및 복호화키 삽입 위치정보를 암호화한 값을 데이터키로 저장하여 보안 데이터를 생성할 수 있다.The
실시예에 따른 보안파일 생성서버의 가장 중요한 특징은, 서버에서 보안파일 생성을 위한 모든 데이터 처리가 전송 완료 후 수행되는 것이 아니라, 전송 중 수행되는 과정이라는 것이다. 실시예의 메타 정보 등 전송되는 모든 데이터는 파일 형태가 아닌 메모리 형태로 서버에 보관된 후 데이터 처리 과정을 거치며 보안 파일이 생성이 시작 되는 순간 처리된(이용된) 데이터는 휘발(volatile)될 수 있다.The most important characteristic of the security file generation server according to the embodiment is that all data processing for generating a security file in the server is not performed after completion of transmission but is performed during transmission. All data transferred, such as the meta information of the embodiment, is stored in the server in the form of a memory rather than a file, and then the data is processed and the processed (used) data can be volatilized .
데이터 검증모듈(170)의 위치추출부(171)는 보안데이터의 2차 암호화 데이터 내의 암호화된 복호화키의 위치정보를 추출한다. The position extraction unit 171 of the
복호화키 분리부(173)는 데이터 내에 삽입된 복호화키를 분리한다. The decryption
복호화부(175)는 분리된 복호화키로 암호화 데이터를 해제(복호화)하여 2차 암호화 데이터를 1차 암호화 데이터로 복원한다.The
정보확인부(177)는 복원된 데이터 내의 서버위치 및 가상파일네임 등을 확인한다.The information confirmation unit 177 confirms the server location and the virtual file name in the restored data.
파일 검증모듈(190)의 위치추출부(191)는 파일 내의 암호화된 데이터의 위치정보를 추출한다.The location extracting unit 191 of the
데이터 분리부(193) 파일 내 삽입된 단일블록 또는 다중블록의 변조된 2차 암호화 데이터 추출 후, 복호화키로 복호화 된 된 2차 암호화 데이터를 보안파일에서 분리한다. The
무결성 검증부(195)는 변조된 2차 암호화 데이터가 분리된 파일의 데이터 변조를 복원하여 데이터베이스의 데이터와 비교하여 동일한지 검증한다. The
도 6은 실시예에 따른 저장파일데이터 구조를 나타낸 도면이다.6 is a diagram illustrating a storage file data structure according to an embodiment.
도 6에 도시된 바와 같이, 추출된 파일정보로 생성되는 실시예에 따른 저장파일데이터는 청크 아이디(ChunkID), 데이터 크기(Data Size)를 기록하는 헤더블록과 해쉬(Hash), 파일크기(filesize), 파일네임(filename), 사용자 아이디와 업로더 한 사용자 정보(owner), 파일 생성 데이터(File creation date), 저장 서버 (Storage server), 저장 폴더 이름 (Save folder name), 가상 파일네임 (Virtual file name)을 기록하는 데이터 블록과, 임의의 제 1정보 크기(InfoSize1), 임의의 제 1파일 정보(File information1), 임의의 제2정보 크기 (InfoSize2) 및 임의의 제2파일 정보 (File information2) 등 변화 가능한 데이터를 기록하는 가변데이터 블록을 포함하여 구성될 수 있다. 특히 가변 데이터 블록의 저장 서버 (Storage server), 저장 폴더 이름 (Save folder name), 가상 파일네임 (Virtual file name) 은 파일이 저장된 위치 정보를 기록하여 암호화 데이터를 제거할 파일을 찾을 수 있도록 한다.As shown in FIG. 6, the storage file data generated according to the extracted file information includes a header block for recording a chunk ID, a data size, a hash, a file size A user name and uploader user information, a file creation date, a storage server, a save folder name, a virtual file name (Virtual File Name) a first data size (InfoSize1), a first arbitrary first file information (File information1), a second arbitrary information size (InfoSize2) and an arbitrary second file information (File information2 And a variable data block for recording changeable data such as a variable data block. In particular, the storage server of the variable data block, the save folder name, and the virtual file name record the location information of the file to locate the file to be deleted.
실시예에서 가변 데이터 블록은 파일종류에 따라 달라질 수 있다. In an embodiment, the variable data block may vary depending on the file type.
이하에서는 보안파일 생성 방법에 대해서 차례로 설명한다. 보안파일 생성 방법의 작용(기능)은 보안파일 생성 시스템 및 서버상의 기능과 본질적으로 같은 것이므로 도 1 내지 도 6과 중복되는 설명은 생략하도록 한다.Hereinafter, the security file generation method will be described in turn. Since the function (function) of the security file generation method is essentially the same as the function on the security file generation system and the server, a description overlapping with those of FIGS. 1 to 6 will be omitted.
도 7은 실시예에 따른 보안파일 생성 시스템의 신호 흐름도로서, 스마트 단말에서 보안파일 생성 서버로 파일을 업로드 할 경우 보안파일을 생성하는 데이터 처리 흐름을 나타낸 도면이다. FIG. 7 is a signal flow diagram of a security file generation system according to an embodiment of the present invention. FIG. 7 illustrates a data processing flow for generating a security file when a file is uploaded from a smart terminal to a secure file generation server.
S10 단계에서는 사용자 단말(200)에서 파일 생성서버(100)로 사용자 인증 정보를 전송한다. S15 단계에서는 파일 생성서버(100)에서 사용자 인증을 수행하고, 인증이 성공적으로 완료된 경우, S20 단계에서 사용자 인증 완료 정보를 전달한다. In step S10, user authentication information is transmitted from the
S25 단계에서는 인증 완료 후 단말기 파일 정보를 추출하고 S30 단계에서는 추출한 파일 정보를 서버(100)로 전송한다.In step S25, after the authentication is completed, the terminal file information is extracted and the extracted file information is transmitted to the
S35 단계에서는 파일 생성서버(100)에서 서버 정보를 추출하고, S40 단계에서는 추출된 서버정보와 파일 정보로 저장파일데이터를 생성한다. S45 단계에서는 생성된 저장파일데이터를 암호화 한 1차 암호화 데이터를 생성하고, S50 단계에서는 암호화 데이터를 해제 할 수 있는 복호화키를 삽입하여 2차 암호화 데이터를 생성한다.In step S35, the server information is extracted from the
S55 단계에서는 복호화키 위치를 기록하고, S60 단계에서는 2차 암호화 데이터를 변조 처리 한다. S60 단계는 변조 후 데이터를 다중 블록화 하는 과정을 포함할 수 있다. S65 단계에서는 파일 내에 파일 암호화를 해제할 수 있는 데이터의 위치를 기록한다. S70 단계에서는 서버(100)에서 단말(200)로 파일 전송 요청을 전달하면, S75 단계에서는 단말(200)에서 파일 전송 대기 후, S80 단계에서 서버(100)로 파일을 전송한다. The decryption key position is recorded in step S55, and the secondary encryption data is modulated in step S60. Step S60 may include a process of multiplying the data after modulation. In step S65, the location of the data that can release the file encryption in the file is recorded. In step S70, the
S85 단계에서는 수신한 파일을 저장하고, 변조된 2차 암호화 데이터를 사용자 단말(200)으로부터 수신한 파일에 삽입한다. 이후, S90 단계에서 파일 전송 완료를 단말(200)로 통보한다. In step S85, the received file is stored, and the modulated secondary encrypted data is inserted into the file received from the
도 8은 실시예에 따라 스마트 단말에서 보안파일 생성 서버로 파일을 업로드 할 경우 데이터 처리 과정을 보다 자세히 나타낸 흐름도이다.FIG. 8 is a flowchart illustrating a data processing procedure in a case where a file is uploaded from a smart terminal to a secure file generation server according to an exemplary embodiment of the present invention.
S810 단계에서 사용자 단말(100)로부터 전송된 파일정보를 추출한다.The file information transmitted from the
S820 단계에서는 파일정보를 기반으로 파일 각각에 다한 가상파일네임(virtual file name)을 생성한다. 실시예에 있어서, 가상파일네임은 해쉬, 파일사이즈, 파일생성일 등 파일의 메타 데이터를 이용해 만들어 질 수 있다. S821 단계에서 데이터 추출은 단말기(1차)에서 파일정보(해시값, 파일사이즈, 파일이름, 소유자, 파일생성일자, 파일정보1, 파일정보2를 추출하고, 서버(2차)에서 스토리지 서버, 저장 폴더 이름, 가상 파일 네임을 추출한다.In step S820, a virtual file name corresponding to each file is generated based on the file information. In an embodiment, the virtual file name may be created using metadata of the file, such as a hash, a file size, a file creation date, and the like. In step S821, the data extraction is performed by extracting file information (hash value, file size, file name, owner, file creation date, file
S823 단계에서는 추출된 정보를 조합하고 S824 단계에서는 조합된 데이터로 저장파일데이터를 생성한다.In step S823, the extracted information is combined, and in step S824, the storage file data is generated from the combined data.
S825 단계에서는 암호화 알고리즘을 통해 저장파일데이터를 암호화하여 1차 암호화 데이터를 생성하고, S826 단계에서는 복호화키를 생성한다. In step S825, the storage file data is encrypted through the encryption algorithm to generate primary encrypted data, and in step S826, a decryption key is generated.
S827 단계에서는 1차 암호화 데이터에 복호화키를 삽입하여 2차 암호화 데이터를 생성한다. In step S827, the secondary encryption data is generated by inserting the decryption key into the primary encryption data.
S828 단계에서는 2차 암호화 데이터를 저장모듈의 데이터베이스에 저장하고, S829 단계에서는 데이터에 삽입된 복호화키 위치정보를 암호화한 값을 저장한다. In step S828, the secondary encryption data is stored in the database of the storage module. In step S829, a value obtained by encrypting the decryption key position information embedded in the data is stored.
S830 단계에서는 업로드 된 파일네임을 가상파일네임으로 변경한다.In step S830, the uploaded file name is changed to the virtual file name.
S840 단계에서는 파일의 가변위치에 배열 변조된 2차 암호화 데이터를 삽입한다.In step S840, the secondary encrypted data array-modulated is inserted into the variable position of the file.
S860 단계에서는 저장모듈의 데이터에이스에 파일정보와 2차 암호화 데이터의 위치정보를 저장하고 S870 단계에서는 파일에 삽입된 암호화 데이터, 위치정보를 암호화한 값을 저장한다. In step S860, the file information and the location information of the secondary encrypted data are stored in the data ace of the storage module. In step S870, the encrypted data and the location information embedded in the file are encrypted.
도 9는 실시예에 따른 보안파일 생성 시스템의 신호 흐름도로서, 스마트 단말에서 보안파일 생성 서버로부터 파일을 다운로드 할 경우 데이터 흐름을 나타낸 도면이다. FIG. 9 is a signal flow diagram of a security file generation system according to an embodiment, and shows a data flow when a file is downloaded from a security file generation server in a smart terminal.
S10 단계에서는 사용자 단말(200)에서 파일 생성서버(100)로 사용자 인증 정보를 전송한다. S12 단계에서는 파일 생성서버(100)에서 사용자 인증을 수행하고, 인증이 성공적으로 완료된 경우, S14 단계에서 사용자 인증 완료 정보를 전달하고, S16 단계에서는 사용자 단말(200)에서 파일 정보를 확인한다. S18 단계에서는 단말(200)에서 서버(100)로 파일 이름 등 파일 정보를 전송한다.In step S10, user authentication information is transmitted from the
S20 단계에서는 서버(100)에서 2차 암호화 데이터의 위치를 확인하고, S22 단계에서 복호화키 위치를 확인한다. S24 단계에서는 복호화키를 분리하여 S26 단계에서는 1차 암호화 데이터를 해독한다. S28 단계에서는 데이터 내 파일의 서버 위치정보를 확인하고, S30 단계에서는 파일 내 변조된 2차 암호화 데이터의 위치를 확인한다. S32 단계에서는 2차 암호화 데이터를 추출하고, S34 단계에서는 변조된 데이터를 복원한다. S36 단계에서는 복원된 데이터의 무결성 검증을 수행하고, 이상이 없는 경우, S38 단계에서 단말(200)로 파일 전송 대기를 통보한다. S40 단계에서는 단말(200)에서 서버(100)으로 파일 전송을 요청하고, S42 단계에서는 파일에서 변조된 2차 암호화 데이터를 분리한다. In step S20, the
S44 단계에서는 서버(100)에서 단말(200)로 파일네임을 전송하고, S46 단계에서는 서버(100)에서 단말(200)로 파일을 전송한다. In step S44, the
S48 단계에서는 단말(200)에서 전송된 파일을 사용자가 접근 가능하도록 생성한다. S50 단계에서는 서버(100)에서 단말(200)로 파일 전송완료를 통보하면, S52 단계에서는 사용자 단말(200)에서 사용자가 접근 가능한 온전한 파일 생성을 완료한다. In step S48, the file transmitted from the terminal 200 is generated so that the user can access the file. In step S50, the
도 10은 실시예에 따라 스마트 단말에서 보안파일 생성 서버로 파일을 다운로드 할 경우 서버에서의 데이터 처리 과정을 보다 자세히 나타낸 흐름도이다.10 is a flowchart illustrating a data processing procedure in a server in a case where a file is downloaded from a smart terminal to a secure file generation server according to an embodiment of the present invention.
S910 단계에서는 단말로부터 파일 다운로드 요청을 수신한다.In step S910, a file download request is received from the terminal.
S911 단계에서는 제어부에서 다운로드 한 파일정보를 확인한다. 파일정보에는 파일네임, 경로, 사이즈, 업로더 등이 포함될 수 있다. In step S911, the control unit checks the downloaded file information. The file information may include a file name, a path, a size, an uploader, and the like.
S912 단계에서는 2차 변조된 암호화 데이터(암호키, 복호화키)의 위치를 확인한다. S913 단계에서는 데이터에 삽입된 복호화키 위치 정보를 암호화한 값을 확인한다. 이후 암호 해독과정을 거쳐 S914 단계에서 데이터에 삽입된 복호화키 위치를 확인한다. In step S912, the position of the secondarily modulated encrypted data (encryption key and decryption key) is confirmed. In step S913, a value obtained by encrypting the decryption key position information embedded in the data is confirmed. After the decryption process, the decryption key position inserted in the data is checked in step S914.
S915 단계에서는 2차 변조된 암호화 데이터의 복호화키를 분리하고 S916 단계에서는 1차 암호화 데이터를 획득한다. 이후 암호 해독 과정을 통해 S917 단계에서 데이터를 획득한다. In step S915, the decryption key of the secondarily modulated encrypted data is separated, and the primary encrypted data is obtained in step S916. Thereafter, in step S917, data is obtained through a decryption process.
S918 저장파일데이터의 정보 즉, 해시값, 파일사이즈, 파일이름, 소유자, 파일생성일자, 파일정보1, 파일정보2, 스토리지 서버, 저장 폴더 이름, 가상 파일 네임정보를 확인한다. S918 Checks the information of the storage file data, that is, the hash value, file size, file name, owner, file creation date, file
S919 단계에서는 저장부에서 가상파일네임 스토리지 서버 및 저장 폴더 위치를 확인하고 S920 단계에서는 파일을 확인한다. In step S919, the storage unit checks the virtual file name storage server and the storage folder location, and checks the file in step S920.
S921 단계에서는 파일에 삽입된 암호화 데이터 위치정보를 암호화한 값을 확인한다.In step S921, a value obtained by encrypting the encrypted data location information inserted in the file is confirmed.
S922 단계에서는 파일에 삽입된 배열 변조 처리된 암호화 데이터 위치를 확인하고, S923 단계에서는 무결성 검증을 수행한다. 무결성 검증에서는 가변위치에 배열 변조되어 삽입된 암호화 데이터를 제외하고 파일을 전송한다. S924 단계에서는 파일네임을 전송하여 S925 단계에서는 파일을 오픈 시킨다.In step S922, the location of the encrypted data inserted in the file is checked. In step S923, integrity verification is performed. In the integrity verification, the file is transmitted except for the encrypted data inserted in the variable position array. The file name is transmitted in step S924, and the file is opened in step S925.
도 11은 실시예에서 생성하는 보안파일과, 보안파일의 복호화 방법을 설명하기 위한 도면이다. 11 is a diagram for explaining a security file generated in the embodiment and a security file decryption method.
도 11에 도시된 바와 같이, 보안파일 생성서버 저장모듈의 스토리지에는 변조된 2차 암호화 데이터가 내장된 암호화된 파일이 저장되고, 데이터베이스에는 암호화된 파일을 복호화 시킬 수 있는 복호화키의 위치정보 및 2차 암호화 데이터의 위치정보 등 보안데이터가 저장된다.11, the storage of the secure file generation server storage module stores an encrypted file in which the modulated second-order encrypted data is stored. In the database, the location information of the decryption key for decrypting the encrypted file, Security data such as positional information of the encrypted data is stored.
스토리지에 저장된 변조된 2차 암호화 데이터를 내장한 파일을 복원하기 위해, 사용자 단말에서 다운로드 하고자 하는 파일정보를 입력 받으면, 입력된 파일 정보에 해당하는 보안데이터를 추출한다. 보안데이터가 추출되면, 보안데이터에 기록된 2차 암호화 데이터와, 2차 암호화 데이터에 기록된 복호화키 위치 기록을 이용하여 복호화키를 분리하여 1차 암호화 데이터를 생성하고, 1차 암호화 데이터를 복호화키로 복호화 하여 저장파일 데이터로 복원한다. 저장파일데이터에는 사용자가 다운로드 하려는 파일의 저장위치, 예컨대, 스토리지 서버, 저장폴더이름, 가상파일네임이 기록되어 있다. 스토리지 서버, 저장폴더이름, 가상파일네임을 통해 스토리지 서버에서 파일을 찾고, 보안데이터에 기록된, 변조된 2차 암호화 데이터의 위치정보 암호화 값을 통해 파일 내 변조된 2차 암호화 데이터를 분리한다. 이후, 파일에 포함된 데이터 변조를 복원하고 무결성 검증을 수행한 후 스토리지 서버에 저장된 파일을 사용자 단말로 전송한다. Upon receipt of the file information to be downloaded from the user terminal, the security data corresponding to the inputted file information is extracted in order to restore the file containing the modulated secondary encryption data stored in the storage. When the security data is extracted, the primary encryption data is generated by separating the decryption key using the secondary encryption data recorded in the security data and the decryption key positional record recorded in the secondary encryption data, and the primary encryption data is decrypted Key, and restores the data into the storage file data. The storage file data includes a storage location of a file to be downloaded by the user, for example, a storage server, a storage folder name, and a virtual file name. The storage server, the storage folder name, and the virtual file name are searched for a file in the storage server, and the secondary encrypted data in the file is separated through the location information encryption value of the modulated secondary encrypted data recorded in the secure data. Thereafter, the data modulation included in the file is restored, the integrity verification is performed, and the file stored in the storage server is transmitted to the user terminal.
데이터베이스에 저장된 보안 데이터는 2차 암호화 데이터와, 데이터 키 및 파일 키를 포함한다. 실시예에서 데이터키는 데이터 내 삽입된 복호화키의 위치정보 암호화 값을 의미하고 파일키는 파일 내 삽입된 변조된 2차 암호화 데이터의 위치 정보 암호화 값을 의미한다. Security data stored in the database includes secondary encryption data, a data key, and a file key. In the embodiment, the data key refers to the location information encryption value of the decryption key inserted in the data, and the file key refers to the location information encryption value of the modulated secondary encrypted data inserted in the file.
2차 암호화 데이터는 1차 암호화 데이터에 복호화키 위치 정보와, 복호화키 길이, 복호화키가 내장된 데이터이고, 복호화키를 추출하여 1차 암호화 데이터를 해독하면 데이터를 획득할 수 있다. 이를 통해 실시예에서는 정상적인 인증 과정을 거치지 않은 불법 사용자에게는 2차 암호화 데이터가 내장된 파일을 제공하여, 파일을 열 수 없도록 한다. The secondary encryption data is data in which the decryption key position information, the decryption key length, and the decryption key are embedded in the primary encryption data. When the decryption key is extracted and the primary encryption data is decrypted, the data can be acquired. Accordingly, in the embodiment, a file containing the secondary encryption data is provided to an illegal user who has not undergone the normal authentication process, so that the file can not be opened.
저장파일 데이터를 암호화한 1차 암호화 데이터에 복호화키를 삽입할 때는, 복호화키 길이 정보를 일정 비트로 2차암호화 데이터에 함께 기록한다. 실시예에서는 기록된 복호화키길이 만큼이 복호화키 이므로, 복호화키 길이 정보에 의해 복호화 키 위치를 파악하고, 복호화키를 추출할 수 있도록 할 수 있다. 마찬가지로, 변조된 2차 암호화 데이터를 파일에 삽입할 때도, 파일에 변조된 2차 암호화 데이터 길이 정보를 일정 비트로 변조된 2차 암호화 데이터와 함께 기록한다. 파일에 삽입된 2차 암호화 데이터길이 만큼 2차 암호화 데이터 이므로, 파일에서 변조된 2차 암호화 데이터를 추출할 때, 변조된 2차 암호화 데이터 길이 정보로 파일 내 데이터 위치를 파악 할 수 있도록 할 수 있다. When inserting the decryption key into the primary encrypted data in which the storage file data is encrypted, the decryption key length information is recorded in the secondary encrypted data together with a certain bit. In this embodiment, since the decryption key is the same length as the decryption key length, it is possible to grasp the decryption key position by using the decryption key length information and to extract the decryption key. Similarly, when inserting the modulated second-order encrypted data into a file, the second-order encrypted data length information modulated in the file is recorded together with the second-order encrypted data modulated with a certain bit. It is possible to grasp the position of the data in the file with the modulated secondary encrypted data length information when extracting the secondary encrypted data modulated in the file since it is secondary encrypted data of the length of the secondary encrypted data inserted in the file .
실시예에 따른 보안파일 생성서버 및 보안파일 생성 방법은 데이터에 내장된 암호화 데이터를 복호화 하지 못하는 경우, 파일이 열리지 않도록 하여 불법다운로드 되거나 해킹된 데이터 유출을 막는다. 또한 비 인증 사용자에게 기업이나 조직의 스토리지에 저장된 파일이 전달되더라도, 복호화키 등 데이터의 위치 정보를 알 수 없는 경우 파일을 열수 없도록 하기 때문에, 시스템 보안이 취약한 상황에서도 중요한 데이터를 안전하게 보관할 수 있다. 아울러, 보안 시스템뿐만 아니라 파일 자체에서 비 인증 사용자의 접근을 제한함으로써 정보 보안성을 향상시킨다.The secure file generation server and the secure file creation method according to the embodiment prevent illegal downloading or hacked data leakage by preventing the file from being opened when the encrypted data embedded in the data can not be decrypted. Also, even if the file stored in the storage of the enterprise or the organization is delivered to the unauthorized user, the file can not be opened if the location information of the data such as the decryption key is unknown, so that the important data can be safely stored even in a situation where the system security is weak. In addition, it improves information security by restricting unauthorized users' access to the file itself as well as the security system.
개시된 내용은 예시에 불과하며, 특허청구범위에서 청구하는 청구의 요지를 벗어나지 않고 당해 기술분야에서 통상의 지식을 가진 자에 의하여 다양하게 변경 실시될 수 있으므로, 개시된 내용의 보호범위는 상술한 특정의 실시예에 한정되지 않는다.It is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. It is not limited to the embodiment.
110: 추출모듈
130: 보안데이터 생성모듈
150: 보안모듈
170: 데이터 검증모듈
190: 파일 검증모듈
110: Extraction module
130: Security data generation module
150: Security module
170: Data validation module
190: File Validation Module
Claims (9)
(A) 보안파일 생성서버에서 사용자 단말로부터 파일의 이름, 경로, 크기를 포함하는 파일정보를 추출하고, 스토리지 서버에서 파일이 저장될 서버의 위치정보와 가상파일네임(virtual file name)을 추출하는 단계;
(B) 보안파일 생성서버에서 상기 파일이 저장될 서버의 위치정보 및 가상파일네임을 이용하여 저장파일데이터를 생성하고, 상기 저장파일데이터를 암호화 알고리즘을 통해 암호화한 1차 암호화 데이터를 생성하는 단계;
(C) 보안파일 생성서버에서 상기 1차 암호화 데이터를 복호화 하는 복호화키를 상기 1차 암호화 데이터에 삽입하여 2차 암호화 데이터를 생성하고, 2차 암호화 데이터에서 상기 복호화키가 삽입된 위치를 나타내는 복호화키 위치 정보를 기록하는 단계;
(D) 보안파일 생성서버에서 사용자 단말로 파일 전송을 요청하고, 상기 사용자 단말에서 보안파일 생성서버로 파일을 전송하는 단계;
(E) 상기 사용자 단말에서 보안파일 생성서버로 파일을 전송하는 도중에, 보안파일 생성서버는 사용자 단말로부터 전송되는 파일의 이름을 가상파일네임으로 변경하고, 2차 암호화 데이터를 변조하여 변조된 2차 암호화 데이터를 상기 전송되는 파일에 삽입하여 스토리지 서버에 저장하는 단계; 및
(F) 보안파일 생성서버에서 파일 이름, 저장 경로, 파일 크기, 소유자, 2차 암호화 데이터 및 복호화키 위치정보 암호화 값인 데이터키와 파일 내 삽입된 2차 암호화 데이터의 위치 정보 암호화 값인 파일키를 포함하는 보안 데이터를 생성하는 단계; 를 포함하는 보안파일 생성방법.
In a security file generation method,
(A) Generating a security file The server extracts file information including the name, path, and size of a file from the user terminal, extracts the location information of the server on which the file is to be stored and a virtual file name step;
(B) generating storage file data by using the location information and the virtual file name of the server in which the file is to be stored in the secure file creation server, and generating the first encryption data by encrypting the stored file data through the encryption algorithm ;
(C) generating a security file by inserting a decryption key for decrypting the primary encrypted data in the primary encrypted data to generate secondary encrypted data, decrypting the secondary encrypted data by using a decryption key indicating a position where the decrypted key is inserted Recording key position information;
(D) requesting a file transfer from the security file creation server to the user terminal, and transferring the file from the user terminal to the security file creation server;
(E) During transmission of a file from the user terminal to the secure file generation server, the secure file generation server changes the name of a file transmitted from the user terminal to a virtual file name, modulates the second- Inserting encrypted data into the transferred file and storing the encrypted data in a storage server; And
(F) Generate a secure file. Includes a file key, which is the location information encryption value of the data key, which is the encryption value of the file name, the storage path, the file size, the owner, the secondary encryption data and the decryption key position information, and the secondary encryption data inserted in the file. Generating security data to be transmitted; And a security file.
상기 파일키는 소유자와 변조된 2차 암호화 데이터의 삽입 위치정보를 암호화한 값으로 생성되는 것을 특징으로 하는 보안파일 생성방법.
The method of claim 1, further comprising: (F) generating security data; in
Wherein the file key is generated by encrypting insertion location information of the owner and the modulated secondary encryption data.
상기 데이터키는 소유자 및 복호화키 삽입 위치정보를 암호화한 값으로 생성되는 것을 특징으로 하는 보안파일 생성방법.
The method of claim 1, further comprising: (F) generating security data; in
Wherein the data key is generated by encrypting an owner and decryption key insertion location information.
상기 변조된 2차 암호화 데이터를 다중블록처리 하는 단계; 및
상기 다중 블록 처리된 변조된 2차 암호화 데이터를 상기 전송되는 파일에 삽입하는 단계; 를 포함하는 것을 특징으로 하는 보안파일 생성방법.
2. The method of claim 1, further comprising: (E) modulating the secondary encrypted data, inserting the modulated secondary encrypted data into the transferred file, and storing the inserted secondary encrypted data in a storage server; The
Performing multi-block processing on the modulated secondary encrypted data; And
Inserting the multi-block processed modulated secondary encrypted data into the transferred file; And generating a security file.
상기 변조된 2차 암호화 데이터를 단일블록처리 하는 단계; 및
상기 단일블록 처리된 변조된 2차 암호화 데이터를 상기 전송되는 파일에 삽입하는 단계; 를 포함하는 것을 특징으로 하는 보안파일 생성방법.
The method of claim 1, further comprising the steps of: modulating the secondary encrypted data to insert the modulated secondary encrypted data into the transferred file and storing the inserted secondary encrypted data in the storage server; The
Processing the modulated secondary encryption data in a single block; And
Inserting the single block processed modulated secondary encrypted data into the transferred file; And generating a security file.
(G) 상기 사용자 단말에서 상기 스토리지 서버에 저장된 파일을 다운로드 하려는 경우, 상기 파일을 복원하여 스마트 단말로 전송하는 단계; 를 더 포함하는 것을 특징으로 하는 보안파일 생성방법.
2. The method of claim 1,
(G) restoring the file and transmitting the restored file to the smart terminal when the user terminal downloads the file stored in the storage server; Further comprising the steps of:
(a) 상기 보안파일 생성서버에서 사용자 단말로부터 사용자 인증정보를 수신하고, 사용자 인증을 완료한 경우, 상기 사용자 단말로부터 파일이름, 경로, 크기, 사용자를 포함하는 파일정보를 전송 받는 단계;
(b) 보안파일 생성서버에서 상기 사용자 단말로부터 전송된 파일정보를 기반으로 상기 보안파일 생성서버에 저장된 보안데이터를 검색하는 단계;
(c) 상기 검색된 보안데이터를 추출하고, 추출된 보안데이터에서 2차 암호화 데이터의 위치를 확인하고, 상기 2차 암호화 데이터에서 복호화키 위치를 확인하는 단계;
(d) 상기 복호화키를 분리하여 2차 암호화 데이터를 1차 암호화 데이터로 변환하고, 상기 1차 암호화 데이터를 상기 분리된 복호화키로 해독하여 저장파일 데이터로 복원하는 단계;
(e) 상기 복원된 저장파일데이터에 기록된 파일이 저장된 스토리지 서버의 위치를 확인하고, 상기 파일 내 변조된 2차 암호화 데이터의 위치를 확인하는 단계; 및
(f) 상기 파일 내 변조된 2차 암호화 데이터를 분리하고, 상기 보안파일에 포함된 데이터 변조를 복원하는 단계; 를 포함하는 것을 특징으로 하는 보안파일 생성방법.
The method of claim 6, further comprising: restoring the file (F) and transmitting the file to the smart terminal; The
(a) receiving user authentication information from a user terminal in the secure file generation server, and receiving file information including a file name, a path, a size, and a user from the user terminal when the user authentication is completed;
(b) retrieving security data stored in the secure file creation server based on file information transmitted from the user terminal in the secure file creation server;
(c) extracting the retrieved security data, checking the position of the secondary encrypted data in the extracted security data, and checking the decryption key position in the secondary encrypted data;
(d) separating the decryption key to convert the secondary encrypted data into primary encrypted data, decrypting the primary encrypted data with the decrypted decryption key, and restoring the decrypted primary key into the stored file data;
(e) checking the location of the storage server where the file recorded in the restored storage file data is stored, and checking the location of the modulated secondary encrypted data in the file; And
(f) separating the modulated secondary encrypted data in the file and restoring the data modulation included in the security file; And generating a security file.
상기 복원된 데이터의 무결성 검증을 수행하고, 상기 보안 파일에서 변조된 2차 암호화 데이터를 분리하여 상기 사용자 단말로 파일을 전송하는 단계;
를 포함하는 것을 특징으로 하는 보안파일 생성방법.
8. The method of claim 7, further comprising: (f) separating the modulated secondary encrypted data in the file and restoring data modulation contained in the file; The
Performing integrity verification of the restored data, separating the secondary encrypted data modulated in the secure file and transferring the file to the user terminal;
And generating a security file.
상기 사용자 단말에서 상기 보안파일 생성 서버로부터 파일을 수신하면, 상기 사용자 단말에서 파일 생성을 수행하고, 상기 보안파일 생성서버로부터 수신한 파일이름 정보를 전송 받아 파일 생성을 완료하는 것을 특징으로 하는 보안파일 생성방법.The method of claim 8, further comprising: separating the secondary encrypted data modulated in the secure file and transferring the file to the user terminal; The
Wherein when the user terminal receives the file from the secure file creation server, the user terminal performs file creation and receives the file name information received from the secure file creation server to complete file creation. Generation method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180024860A KR101889062B1 (en) | 2018-02-28 | 2018-02-28 | Server and method for generating security file |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180024860A KR101889062B1 (en) | 2018-02-28 | 2018-02-28 | Server and method for generating security file |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101889062B1 true KR101889062B1 (en) | 2018-08-17 |
Family
ID=63408212
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180024860A KR101889062B1 (en) | 2018-02-28 | 2018-02-28 | Server and method for generating security file |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101889062B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102335199B1 (en) * | 2020-05-28 | 2021-12-07 | 조성래 | System for managing file and method thereof |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001027964A (en) | 1997-09-12 | 2001-01-30 | Hitachi Software Eng Co Ltd | Data storing method, system therefor and recording medium for data storage processing |
JP2008242665A (en) | 2007-03-26 | 2008-10-09 | Sony Ericsson Mobilecommunications Japan Inc | Encryption processing device, encryption processing method and file dividing and storing system |
US20140156533A1 (en) | 1996-06-28 | 2014-06-05 | Arvato Digital Services Llc | System for dynamically encrypting information for secure internet commerce and providing embedded fulfillment software |
KR101675134B1 (en) | 2015-05-08 | 2016-11-22 | 김의준 | Data storage system and method for storing information distributed |
KR101687492B1 (en) | 2015-08-06 | 2016-12-16 | 주식회사 엘지씨엔에스 | Storing method of data dispersively and credential processing unit |
-
2018
- 2018-02-28 KR KR1020180024860A patent/KR101889062B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140156533A1 (en) | 1996-06-28 | 2014-06-05 | Arvato Digital Services Llc | System for dynamically encrypting information for secure internet commerce and providing embedded fulfillment software |
JP2001027964A (en) | 1997-09-12 | 2001-01-30 | Hitachi Software Eng Co Ltd | Data storing method, system therefor and recording medium for data storage processing |
JP2008242665A (en) | 2007-03-26 | 2008-10-09 | Sony Ericsson Mobilecommunications Japan Inc | Encryption processing device, encryption processing method and file dividing and storing system |
KR101675134B1 (en) | 2015-05-08 | 2016-11-22 | 김의준 | Data storage system and method for storing information distributed |
KR101687492B1 (en) | 2015-08-06 | 2016-12-16 | 주식회사 엘지씨엔에스 | Storing method of data dispersively and credential processing unit |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102335199B1 (en) * | 2020-05-28 | 2021-12-07 | 조성래 | System for managing file and method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3784635B2 (en) | Data operation method | |
CN107111723B (en) | User terminal, service providing apparatus, driving method of user terminal, driving method of service providing apparatus, and search system based on encryption index | |
US7685594B2 (en) | Method and data structure for reconfiguring a software package | |
WO2017143879A1 (en) | File permission management method and device | |
JP6096186B2 (en) | Method and apparatus for using nonvolatile memory device | |
EP3386144B1 (en) | File encryption device, file decryption device, system, and program | |
AU2020386382B2 (en) | Cryptographic key management | |
KR20090101945A (en) | Upgrading a memory card that has security mechanisms that prevent copying of secure content and applications | |
US20180139208A1 (en) | Secure virtualization of remote storage systems | |
KR20190018869A (en) | System and method for providing storage service based on block chain | |
JP2006178930A (en) | Right information management method and right information management device | |
KR102391784B1 (en) | A primary device, an accessory device, and methods for processing operations on the primary device and the accessory device | |
US10740473B2 (en) | Method and system for implementing an encryption SDK | |
CN111242611B (en) | Method and system for recovering digital wallet key | |
TWI536198B (en) | System and method for encrypting document | |
CA2891610C (en) | Agent for providing security cloud service and security token device for security cloud service | |
KR101889062B1 (en) | Server and method for generating security file | |
US20180137291A1 (en) | Securing files at rest in remote storage systems | |
CN105825136A (en) | Method and device for realizing electronic file safe transmission by combining hardware and software | |
CN106663158A (en) | Managing user data for software services | |
US20150269360A1 (en) | Control method and system | |
US20180276349A1 (en) | Digital content editing apparatus, digital content playback apparatus, digital content decrypting apparatus, web content playback apparatus, web content decrypting apparatus, digital content encrypting/decrypting system, and digital content encrypting/decrypting method | |
KR101263922B1 (en) | System for managing copyright using individual identifier code and method therefor | |
JP6778033B2 (en) | Take-out file simple encryption system and take-out file simple encryption program | |
KR20210000479A (en) | System for electronic prescription management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |