KR20160146623A - A Method for securing contents in mobile environment, Recording medium for storing the method, and Security sytem for mobile terminal - Google Patents

A Method for securing contents in mobile environment, Recording medium for storing the method, and Security sytem for mobile terminal Download PDF

Info

Publication number
KR20160146623A
KR20160146623A KR1020160168873A KR20160168873A KR20160146623A KR 20160146623 A KR20160146623 A KR 20160146623A KR 1020160168873 A KR1020160168873 A KR 1020160168873A KR 20160168873 A KR20160168873 A KR 20160168873A KR 20160146623 A KR20160146623 A KR 20160146623A
Authority
KR
South Korea
Prior art keywords
file
security
contents
stored
mobile
Prior art date
Application number
KR1020160168873A
Other languages
Korean (ko)
Inventor
백종경
Original Assignee
킹스정보통신(주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 킹스정보통신(주) filed Critical 킹스정보통신(주)
Priority to KR1020160168873A priority Critical patent/KR20160146623A/en
Publication of KR20160146623A publication Critical patent/KR20160146623A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)

Abstract

The present invention relates to a method for protecting a plurality of content in a mobile terminal. The method for protecting the plurality of content in the mobile terminal includes: separating and storing a header part having an entry of a file and folder structure of the plurality of content stored therein, and a body part having a file binary value of the plurality of content stored therein when the plurality of content is stored in the mobile terminal; and partially encoding the plurality of file binaries.

Description

휴대용 단말에서 컨텐츠를 보호하는 방법, 상기 방법을 컴퓨터 프로그램으로 기록하기 위한 기록매체, 및 휴대단말 보안 시스템 {A Method for securing contents in mobile environment, Recording medium for storing the method, and Security sytem for mobile terminal}TECHNICAL FIELD [0001] The present invention relates to a method for protecting content in a portable terminal, a recording medium for recording the method in a computer program, and a security system for mobile terminal,

본 발명은 휴대용 단말에서 복수개의 컨텐츠 파일을 보안하는 방법에 관한 것이다.The present invention relates to a method for securing a plurality of content files in a portable terminal.

최근 정보화 사회가 발달함에 따라 스마트폰 등의 휴대용 단말의 사용이 급증하고 있다. 이에 따라 휴대용 단말에서의 각종 컨텐츠를 보안하는 방법에 대한 요구도 커지고 있는 상황이다.Recently, as the information society is developed, the use of portable terminals such as smart phones is increasing rapidly. Accordingly, there is a growing demand for a method for securing various contents in a portable terminal.

예를 들어, 클라우드 서비스가 제공되는 환경이 구축되어 있는 업무환경에서 특히 문제가 심각할 수 있다. 따라서, 휴대용 단말의 보안 문제에 대해 클라우드 서비스가 제공되는 환경을 예로 들어 설명한다.For example, a problem can be particularly severe in a work environment where an environment is provided in which a cloud service is provided. Therefore, the environment in which the cloud service is provided for the security problem of the portable terminal will be described as an example.

클라우드 서비스란, 웹 기반 애플리케이션을 활용하여 대용량 데이터베이스를 인터넷 가상 공간에서 분산 처리하고 이 데이터를 데스크탑 PC, 휴대전화, 노트북 PC, PDA등 다양한 단말기에서 불러오거나 가공할 수 있게 하는 환경이다.Cloud service is an environment that can distribute large data base in internet virtual space by utilizing web based application and import / process the data from various terminals such as desktop PC, mobile phone, notebook PC, PDA.

이때, 사용자는 운영체제(Operation System), 스토리지(Storage), 어플리케이션(Application), 보안(Security) 등의 필요한 자원을 사용자 소유의 단말에 직접 설치하여 사용하는 것이 아니라, 가상화 기술을 통해 생성된 가상 공간상의 게스트머신(이는 가상공간상의 논리적 장비의 개념으로, 운영체제와 보안 등을 포함하는 일종의 가상머신으로 이해될 수 있다)을 원하는 시점에 원하는 만큼 골라서 사용하게 되므로, 사용자는 각 컴퓨팅 자원의 구입비용을 지불하는 것이 아니라 사용량에 기반하여 대가를 지불하므로 경제적이다.At this time, the user does not install and use necessary resources such as an operating system, a storage, an application, security, and the like directly on the user's own terminal but uses the virtual space The user selects the desired guest machine (which can be understood as a kind of virtual machine including the operating system and security as the concept of the logical equipment in the virtual space) at a desired point in time, It is economical because you pay the price based on usage rather than paying.

또한, 사용자는 어떠한 장소에서든 네트워크 접속과 기본적인 연산기능을 수행하는 단말을 통해 클라우드 망에 접속하여 대용량의 저장장치와 고성능 컴퓨팅 리소스가 필요한 작업들을 수행하고 고도화된 서비스들도 제공받을 수 있는 장점이 있다.In addition, the user has the advantage of accessing the cloud network through a terminal performing network connection and basic computation functions at any place, performing tasks requiring a large-capacity storage device, high-performance computing resource, and providing advanced services .

그러나, 이러한 클라우딩 컴퓨팅 환경에서는 휴대용 단말에 일시적으로 영구적으로 저장되는 컨텐츠에 대한 외부의 해킹 공격 등의 보안 위협이 가장 핵심 이슈로 부각되고 있다. 또한, 구태여 클라우드 환경이 아니라 하더라도 휴대용 단말 환경에서는 보안이 결정적인 이슈로 대두되고 있다.However, in such a cloud computing environment, security threats such as an external hacking attack on contents temporarily stored in a portable terminal are highlighted as the most important issue. In addition, security is a crucial issue in a portable terminal environment even if it is not a cloud environment.

그럼에도 휴대용 단말에서의 보안에 대해서는 효과적인 방안이 마련된 것이 없고 많은 연구가 필요한 실정이다.Nevertheless, there is no effective method for security in portable terminals, and much research is needed.

본 발명은 전술한 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 휴대전화, 테블릿 pc, 등 다양한 휴대용 단말에서 각종 컨텐츠를 보호하기 위해 보안 파일을 구성하는 것이다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems, and it is an object of the present invention to provide a security file for protecting various contents from various portable terminals such as a mobile phone, a tablet PC and the like.

상술한 문제점을 해결하기 위한 기술적 수단으로서, 본 발명의 일측면은 휴대용 단말에서 복수개의 컨텐츠를 보호하여 저장하기 위한 보안 파일에 있어서, 상기 복수개의 컨텐츠의 파일 및 폴더 구조의 엔트리가 저장된 헤더부분; 및 상기 복수개의 컨텐츠의 파일바이너리 값이 저장된 바디부분을 포함하고, 상기 복수개의 파일바이너리가 부분 암호화되는 것을 특징으로 하는 보안 파일을 제공한다.As a technical means for solving the above problems, one aspect of the present invention is a security file for protecting and storing a plurality of contents in a portable terminal, the security file comprising: a header part storing entries of a file and a folder structure of the plurality of contents; And a body portion storing a file binary value of the plurality of contents, wherein the plurality of file binaries are partially encrypted.

바람직하게는, 복수개의 컨텐츠 각각은 시초부 중간, 말단부를 구비하고 있다.Preferably, each of the plurality of contents includes an intermediate portion and an end portion of the beginning portion.

또한. 상기 복수개의 컨텐츠 각각의 파일 바이너리는 서로 다른 파일바이너리와 뒤섞는 것이 보안성과 동작 속도를 모두 만족시킬 수 있는 방법일 수 있다.Also. The file binaries of the plurality of contents may be mixed with different file binaries to achieve both security and operation speed.

본 발명의 다른 측면은 휴대용 단말에서 복수개의 컨텐츠를 보호하는 방법에 있어서, 상기 복수개의 컨텐츠를 상기 휴대용 단말에 저장할 때, 상기 복수개의 컨텐츠의 파일 및 폴더 구조의 엔트리가 저장된 헤더부분과 상기 복수개의 컨텐츠의 파일바이너리 값이 저장된 바디부분으로 분리하여 저장하되, 상기 복수개의 파일바이너리가 부분 암호화되는 것을 특징으로 하는 휴대용 단말에서 복수개의 컨텐츠를 보호하는 방법을 제공한다.According to another aspect of the present invention, there is provided a method for protecting a plurality of contents in a portable terminal, the method comprising: when a plurality of contents are stored in the portable terminal, The method comprising: storing a file binary value of a content in a body part storing the file binary value, wherein the plurality of file binaries are partially encrypted.

본 발명의 또 다른 측면은 상술한 방법을 컴퓨터 프로그램으로 기록하기 위한 기록매체를 제공하는 것이다.Another aspect of the present invention is to provide a recording medium for recording the above-described method by a computer program.

본 발명에 의하면, 사용자 단말에 저장되는 파일을 효과적으로 보안 상태를 유지하게 하면서도 사용자가 손쉽게 해당 파일을 이용할 수 있는 효과가 있다.According to the present invention, there is an effect that a user can easily use a file stored in a user terminal while maintaining a security state effectively.

본 발명에 의하면, 안드로이드, IOS 오퍼레이팅 등이 탑재된 휴대용 단말에 있어서도 윈도우즈의 가상 디스크 드라이버와 같은 기능을 이용하지 않더라도 효과적으로 보안 효과를 진행할 수 있다.According to the present invention, even in a portable terminal equipped with an Android, an IOS operating, or the like, the security effect can be effectively promoted without using the same function as the virtual disk driver of Windows.

또한, 본 발명에 의하면, 보안파일을 부분적으로 암호화함으로써 암호화 속도를 향상시키면서, 컨텐츠의 파일 바이너리들을 서로 Suffle 함으로서 보안성을 유지할 수 있게 된다.In addition, according to the present invention, security can be maintained by suffixing file binaries of contents while improving encryption speed by partially encrypting a security file.

도 1은 본 발명의 실시예가 적용되는 휴대용 단말 보안 시스템 전체의 개략적인 구성도이다.
도 2는 본 발명의 클라우드 컴퓨팅 시스템에서 휴대용 단말에 탑재된 모바일 어플리케이션(1100)의 개략적인 구성도이다.
도 3은 도 2의 모바일 어플리케이션(1100)을 휴대 단말에 설치하는 과정을 설명한 흐름도이다.
도 4는 본 발명의 보안파일의 구조를 설명하기 위한 도면이다.
도 5는 본 발명의 보안파일을 부분 암호화하는 방법을 도시한 그림이다.
도 6은 도 2의 모바일 어플리케이션(1100)을 이용하여 파일 읽기를 실행하는 과정을 예로 들어 설명하기 위한 흐름도이다.
FIG. 1 is a schematic configuration diagram of a whole portable terminal security system to which an embodiment of the present invention is applied.
2 is a schematic configuration diagram of a mobile application 1100 mounted in a portable terminal in a cloud computing system of the present invention.
FIG. 3 is a flowchart illustrating a process of installing the mobile application 1100 of FIG. 2 in a portable terminal.
4 is a diagram for explaining the structure of the security file of the present invention.
5 is a diagram illustrating a method of partially encrypting a security file according to the present invention.
FIG. 6 is a flowchart illustrating a process of reading a file using the mobile application 1100 of FIG.

이하, 첨부 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. 그러나, 다음에 예시하는 본 발명의 실시예는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 다음에 상술하는 실시예에 한정되는 것은 아니다. 본 발명의 실시예는 당업계에서 통상의 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되어지는 것이다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, the following embodiments of the present invention may be modified into various other forms, and the scope of the present invention is not limited to the embodiments described below. The embodiments of the present invention are provided to enable those skilled in the art to more fully understand the present invention.

도 1은 본 발명의 실시예가 적용되는 휴대용 단말 보안 시스템 전체의 개략적인 구성도이다.FIG. 1 is a schematic configuration diagram of a whole portable terminal security system to which an embodiment of the present invention is applied.

도 1을 참조하면, 휴대 단말 보안 시스템은 다수의 휴대단말(1000, 2000)이 네트워크를 통해 서버(10)와 접속되어 있다.Referring to FIG. 1, a portable terminal security system includes a plurality of portable terminals 1000 and 2000 connected to a server 10 via a network.

휴대 단말들(1000, 2000)은 네트워크 환경에서 네트워크 상의 서버(10) 자원을 이용하는 주체로, 모바일 어플리케이션(1100, 2100)을 구비하는 것으로 도시되어 있다.The mobile terminals 1000 and 2000 are illustrated as having mobile applications 1100 and 2100 as a subject using resources of the server 10 on a network in a network environment.

서버(10)는 네트워크상에서 복수의 휴대 단말들(1000, 2000)과 연결되어 휴대 단말들(1000, 2000)에게 각종 컨텐츠의 제공, 클라우딩 서비스 제공 등의 서비스를 제공하는 주체이다.The server 10 is connected to a plurality of portable terminals 1000 and 2000 on a network and provides services such as providing various contents and providing a cloud service to the portable terminals 1000 and 2000.

클라우딩 서비스 환경을 예로 들면, 서버는 시스템 자원(이는 OS, CPU, 메모리, 저장장치 등을 포함하는 개념이다)을 휴대용 단말에 제공하는 물리적 장비로, 복수의 서버가 네트워크상에서 복수의 휴대 단말들(1000, 2000)과 연결되며, 이때 클라우드 서버(10)는 다수의 서버들을 포함하는 개념으로 도시된 것이다. 예컨대, 가상화 기술을 통해 생성된 가상 공간상의 게스트 머신을 통해 휴대 단말들(1000, 2000)이 시스템 자원을 사용할 수 있도록 분배하게 된다. 이러한 사항들은 공지의 일반적인 개념들로 이해될 수 있다.For example, in a clouding service environment, a server is a physical device that provides system resources (which include OS, CPU, memory, storage device, etc.) to a portable terminal, and a plurality of servers are connected to a plurality of portable terminals (1000, 2000). At this time, the cloud server 10 is shown as including a plurality of servers. For example, the mobile terminals 1000 and 2000 distribute system resources through a guest machine on a virtual space created through virtualization technology. These may be understood as general notions.

도 2는 본 발명의 클라우드 컴퓨팅 시스템에서 휴대용 단말에 탑재된 모바일 어플리케이션(1100)의 개략적인 구성도이다.2 is a schematic configuration diagram of a mobile application 1100 mounted in a portable terminal in a cloud computing system of the present invention.

도 2를 참조하면, 모바일 어플리케이션(1100)은 인증 모듈(1110), 통신 모듈(1120), 제어모듈(1130), 보안모듈(1140), 디스플레이 모듈(1150) 등을 구비한다. 통신모듈(1120)은 서버(10)와의 통신하는 기능을 수행한다.Referring to FIG. 2, the mobile application 1100 includes an authentication module 1110, a communication module 1120, a control module 1130, a security module 1140, a display module 1150, and the like. The communication module 1120 performs a function of communicating with the server 10.

제어모듈(1130)은 각종 어플리케이션의 주된 기능을 수행하기 위한 모듈이다. 예를 들어, 모바일 어플리케이션이 이메일 어플리케이션이라고 하면, 이메일을 송신, 수신, 편집, 디스플레이 등의 일반적인 기능을 수행하는 것으로 이해할 수 있다.The control module 1130 is a module for performing main functions of various applications. For example, if the mobile application is an email application, it can be understood that it performs general functions such as sending, receiving, editing, and displaying an email.

또한, 모바일 어플리케이션이 클라우드 서비스를 제공하기 위한 어플리케이션이라면, 클라우드 서버로부터 자료를 다운받아오는 기능, 저장하는 기능, 각종 편집을 수행하는 기능 등을 포함하여 클라우드 서비스를 수행하기 위한 다양한 기능들을 구비한다. In addition, if the mobile application is an application for providing a cloud service, it has various functions for performing a cloud service including a function of downloading data from the cloud server, a function of storing data, and a function of performing various edits.

보안모듈(1140)은 본 발명의 주된 보안 기능을 수행하는 모듈로, 휴대용 단말에 해당 파일의 파일이름과 바이너리 데이터를 가져와서 보안파일을 만든다.The security module 1140 is a module that performs the main security function of the present invention and creates a security file by fetching the file name and binary data of the file to the portable terminal.

인증모듈(1110)은 사용자가 로그인을 진행하면, 이 과정에서 서버(10)와 통신하여 사용자를 인증하기 위한 모듈이다.The authentication module 1110 is a module for authenticating a user by communicating with the server 10 in the course of a login.

디스플레이 모듈(1150)은 사용자 단말에 UI를 제공하는 모듈로 예를 들어 사용자가 실행 아이콘을 클릭하여 실행시키면 로그인을 위한 화면이 제공된다.The display module 1150 is a module for providing a UI to the user terminal. For example, when the user clicks and executes the execution icon, a screen for login is provided.

도 3은 도 2의 모바일 어플리케이션(1100)을 휴대 단말에 설치하는 과정을 설명한 흐름도이다.FIG. 3 is a flowchart illustrating a process of installing the mobile application 1100 of FIG. 2 in a portable terminal.

사용자는 사용자 단말(1000)에 설치용 어플리케이션을 다운받아 모바일 어플리케이션의 설치를 개시한다(S1110). 모바일 어플리케이션(1100)의 설치가 완료되면, 사용자 단말(1000)에는 아이콘이 생성된다(S1120). 사용자가 해당 아이콘을 클릭하여 실행시키면 로그인을 위한 화면이 제공된다(S1130). 사용자가 로그인을 진행하면, 이 과정에서 모바일 어플리케이션(1100)의 인증모듈(1110)은 통신부(1131)를 통해 서버(10)와 통신하여 사용자를 인증하게 된다(S1140). 사용자의 인증이 완료되면, 모바일 어플리케이션(1100)은 본 모바일 어플리케이션을 실행한다. 이 과정에서 보안 파일이 생성한다(S1150). 그런 다음, 모바일 어플리케이션(1100)은 실행되어 실행화면이 제공된다(S1160).The user downloads the installation application to the user terminal 1000 and starts installation of the mobile application (S1110). When the installation of the mobile application 1100 is completed, an icon is created in the user terminal 1000 (S1120). When the user clicks the corresponding icon and executes it, a screen for login is provided (S1130). When the user proceeds to log in, the authentication module 1110 of the mobile application 1100 communicates with the server 10 through the communication unit 1131 to authenticate the user (S1140). When the authentication of the user is completed, the mobile application 1100 executes the mobile application. In this process, a security file is generated (S1150). Then, the mobile application 1100 is executed and an execution screen is provided (S1160).

한편, 도 4는 본 발명의 보안파일의 구조를 설명하기 위한 도면이다.4 is a diagram for explaining the structure of the security file of the present invention.

도 4를 참조하면, 보안파일은 헤더부분과 바디 부분을 가지고 있으며, 헤더부분(a 영역)에는 파일 및 폴더구조의 엔트리가, 바디부분(b 영역)에는 파일 바이너리 값이 있다.Referring to FIG. 4, the security file has a header portion and a body portion. In the header portion (a region), an entry of a file and folder structure, and the body portion (b region) has a file binary value.

한편, 보안파일의 헤더영역과 바디영역은 모두 암호화되어 저장되어 있다. 헤더 부분에 있는 구체적인 정보로는 메타데이터(파일 이름, 논리적인 구조경로, 바이너리의 위치, 암호화되기 전 바이너리 사이즈, 암호화된 바이너리의 해쉬값 등)이다.On the other hand, both the header area and the body area of the security file are encrypted and stored. Specific information in the header section is metadata (file name, logical structure path, binary location, binary size before encryption, hash value of encrypted binary, etc.).

또한, 암호화는 미국의 연방 표준 알고리즘으로서 Advanced Encryption Standard (AES) 알고리즘을 사용할 수 있으나 특별히 한정되지 않은 다양한 종류의 암호화 알고리즘이 도입가능하다.In addition, the encryption can use the Advanced Encryption Standard (AES) algorithm as a US federal standard algorithm, but various types of encryption algorithms can be introduced without limitation.

보안 파일을 이러한 구조로 생성하는 것은 문서, 비디오, 이메일 정보 등의 컨텐츠를 다운 받아서 저장할 때 이를 보호하기 위한 것이다.Creating a security file with this structure is to protect it when downloading and storing contents such as document, video, and e-mail information.

예를 들어, 모바일 어플리케이션이 이메일 어플리케이션이고, 해당 이메일들이 보안파일의 컨텐츠로 저장되어 있다. 이 경우, 사용자가 이메일 리스트를 보기를 원하는 경우 보안파일을 복호화한 후 파일 헤더영역을 읽어와 사용자에게 보여준다. 또한, 사용자가 열기를 요청할 경우 해당 파일의 헤더 영역을 읽어 파일 바이너리 영역의 위치를 얻어와 그 위치에 접근하여 열기를 한다.For example, a mobile application is an email application, and the emails are stored as content in a security file. In this case, if the user desires to view the e-mail list, the security file is decrypted and the file header area is read and displayed to the user. Also, when the user requests to open the file, the header area of the file is read, the position of the file binary area is obtained, and the file is accessed and opened.

한편, 보안파일은 스마트폰 디바이스에 존재하는 통상의 뷰어 프로그램, 메일 프로그램, 동영상, 사진 등의 컨텐츠 재생 프로그램 등의 프로그램과 함께 내장하여 사용하는 것 이외에 별도로 분리되어 사용하는 것도 가능하다. 예를 들어, 별도로 분리된 컨텐츠 보안파일이 만들어지고 각종 어플리케이션들이 필요한 경우 보안 파일에서 해당 컨텐츠를 불러오는 것이 가능하다.On the other hand, the security file can be separately used in addition to a built-in and used with a program such as a normal viewer program, a mail program, a moving picture, and a content reproduction program existing in a smart phone device. For example, if a separate content security file is created and various applications are required, it is possible to retrieve the content from the security file.

보안파일을 MS의 윈도우즈 가상디스크 드라이버 기술을 사용하지 않고 구현할 수 있는 장점이 있다. MS의 윈도우 가상드라이버는 보안 파일을 윈도우 EXPLORER에 보여지기 위해 암호화와 변환을 수행해 주는 드라이버이다. 본 발명에서는 예를 들어, 안드로이드, IOS 등의 모바일 OS에서 보안파일을 임의로 정해진 포맷을 읽기 때문에 MS 가상디스크 드라이버 기능을 사용하지 않을 수 있다. 이는 MS 가상디스크 드라이버 기능을 사용하지 못하는 OS 시스템에 상술한 보안 파일 구조와 보안 기능을 적용할 수 있게 된다.There is an advantage that security file can be implemented without using Microsoft's Windows virtual disk driver technology. Microsoft's Windows virtual driver is a driver that performs encryption and conversion to show the security file in the window EXPLORER. In the present invention, for example, since a security file is arbitrarily read in a predetermined format in a mobile OS such as Android and IOS, the MS virtual disk driver function may not be used. This makes it possible to apply the above-described security file structure and security function to an OS system that can not use the MS virtual disk driver function.

본 발명의 실시예에 따른 암호화, 복호화 방식 등 기타 상세한 내용은 본 출원인의 한국특허출원 제2013-23961호 (2013. 3. 6. 출원), 제2013-48330호 (2013. 4. 30. 출원)이 본 명세서에 병합될 수 있다.Other details such as the encryption and decryption method according to the embodiment of the present invention are disclosed in Korean Patent Application No. 2013-23961 (filed on March 3, 2013) and No. 2013-48330 ) May be incorporated herein.

본 실시예에 따르면, 복수개의 컨텐츠들인 파일 바이너리들이 바디부분(b 영역)에 저장된다. 또한, (a) 영역과 (b) 영역은 서로 다른 별도의 암호화키로 암호화가 되어 키들에 대한 복제 방어를 제공할 수 있는데, 하나의 키를 사용하는 것 보다 2개의 키를 이용하여 만든 파일이 더욱 안전할 수 있다.According to the present embodiment, file binaries, which are a plurality of contents, are stored in a body part (area b). In addition, (a) area and (b) area may be encrypted with different encryption keys to provide copy protection for the keys. In this case, a file created using two keys It can be safe.

PKI (Pubic Key Infrastructure) 방식은 별도의 인증서 (예를 들어, 공인인증서)를 생성하여 키교환하는 방식이다. 여기서, 키란 메세지를 열고 잠그는 상 수(constant)를 의미한다. 이 방식은 키 교환의 위험성이 최근에 보고됨에 따라 위험성이 높아져 문제가 되고 있다. 최근 한국 정부기관에서는 인증서 교환 과정을 거치지 않고 키를 생성하고 관리할 수 있는 방안에 대해 요청하고 있다. 본 발명의 키 생성 방식은 이러한 문제점을 해결할 수 있다.In the PKI (Pubic Key Infrastructure) method, a separate certificate (for example, a public certificate) is generated and a key is exchanged. Here, a key means a constant that opens and locks a message. This method is problematic due to the increased risk due to the recently reported risk of key exchange. Recently, Korean government agencies are asking for ways to generate and manage keys without going through a certificate exchange process. The key generation method of the present invention can solve such a problem.

사용자 단말기(예를 들어, 모바일 어플리케이션)에서는 인증정보(ID, PW, 기기 고유값, MAC, 전화번호 등)을 이용하여 2개의 소수를 생성한다. 이 2개의 소수를 이용하여 RSA 키쌍 공개키와 개인키를 생성한다. 그런 다음, 다시 생성된 공개키와 개인키를 병합하여 AES(Advanced Encryption Standard) 개인키1을 생성한다. 다른 방식으로는 AES(Advanced Encryption Standard) 개인키1은 RSA 개인키와 인증정보을 이용하여 셍성할 수 있다. 또한, RSA 개인키와 AES 개인키1을 병합하여 AES 개인키2를 생성한다.In a user terminal (for example, a mobile application), two prime numbers are generated using authentication information (ID, PW, device unique value, MAC, telephone number, etc.). These two prime numbers are used to generate RSA key pair public key and private key. Then, the generated public key and the private key are merged to generate Advanced Encryption Standard (AES) private key 1. Alternatively, the Advanced Encryption Standard (AES) private key 1 may be authenticated using the RSA private key and authentication information. Also, the RSA private key and the AES private key 1 are merged to generate the AES private key 2.

AES 개인키 1은 상술한 보안 파일의 헤더의 암호화에 쓰이고, AES 개인키 2는 보안 파일의 바디를 암호화 할 때 사용한다. 이 때 대칭키 알고리즘의 키의 취약성이 노출이 될 수 있으므로 RSA 공개키로 암호화를 진행한다. 키 변경과 분실에 대응하기 위한 것이다.The AES private key 1 is used for encrypting the header of the above-mentioned security file, and the AES private key 2 is used for encrypting the body of the security file. At this time, since the vulnerability of the key of the symmetric key algorithm may be exposed, encryption is performed with the RSA public key. This is to cope with key change and loss.

한편, 클라우드 서버에서 키 관리하는 방법은 모바일 어플리케이션 인증시 요청 받은 정보(ID, PW, 기기고유값, MAC,전화번호 등)를 사용자 단말과 동일하게 2 개의 소수를 생성하여 키를 관리한다.Meanwhile, a method of managing keys in a cloud server manages keys by generating two prime numbers of the requested information (ID, PW, device unique value, MAC, telephone number, etc.) in the same manner as a user terminal in authentication of a mobile application.

클라우드 서버(키 관리 서버)에서는 관리자가 비밀번호 관리 주기를 설정한다. 그 주기로 설정 된 값, 예를 들어 1달이라고 가정할 경우, 뒤에는, 사용자 또는 타의에 의해 비밀번호가 변경되면서, 인증시 요청 정보도 같이 변경되어 기존에 암호화 되어 있던 AES 개인키 1, 2로 복호화된다. 그리고, 상술한 방식으로 새로 생성된 AES키들로 재 암호화 된다. 키의 폐기는 인증정보가 폐기가 되면 같이 폐기가 된다.In the cloud server (key management server), the administrator sets the password management period. Assuming that the value is set to the period, for example, one month, the password is changed by the user or the other person, and the authentication request information is also changed and decrypted to the previously encrypted AES private key 1, 2 . Then, it is re-encrypted with newly created AES keys in the above-described manner. The revocation of the key is discarded when the authentication information is revoked.

AES키를 사용자 단말기에 저장하는 이유는 키 변경시 복원을 해야 되기 때문이다. 또한, RSA 키쌍을 생성하는 이유는 저장된 키를 암호화하기 위함이다.The reason for storing the AES key in the user terminal is that it must be restored when the key is changed. In addition, the reason for generating the RSA key pair is to encrypt the stored key.

위와 같은 방식에 의하면, 키 교환이 필요 없으며, 인증서 교환도 필요 없다. 이는 네트워크 스니핑이나 스푸핑에 의한 키 노출에 대해 보안이 강한 효과가 있다. 또한 최근 발견 된 HeartBleed 이슈같은 보안사고가 나오더라도 보안에 취약하지 않게 된다.According to the above method, no key exchange is required, and no certificate exchange is required. This has a strong security effect against key exposures due to network sniffing or spoofing. Also, security incidents such as the recently discovered HeartBleed issue are not vulnerable.

한편, 보안 파일은 특정한 OS에 속하지 않기 때문에 다양한 종류의 OS에 적용가능하다. 또한, 상술한 보안파일은 root admin privilege (rooting)를 요구하지 않고 생성가능하다. 따라서, 복잡한 인스톨레이션 과정을 거치지 않고 간단한 인스톨레이션 과정으로 보안파일을 생성할 수 있다.On the other hand, since the security file does not belong to a specific OS, it can be applied to various kinds of OS. In addition, the above-described security file can be created without requiring root admin privilege (rooting). Therefore, a security file can be generated by a simple installation process without complicated installation process.

도 5는 본 발명의 보안파일을 부분 암호화하는 방법을 도시한 그림이다.5 is a diagram illustrating a method of partially encrypting a security file according to the present invention.

보안파일에 임의의 파일이 저장되는 경우, 파일과 관련된 메타데이터는 수집되어 헤더영역(a)에 저장된다. 또한, 파일 바이너리는 시초부(beginning), 중간부(middle), 그리고 말단부(end)로 분리되고 약 10%에서 최대 100% 비율로 부분적으로 암호화를 수행한다. 부분적인 암호화를 수행하는 경우는 암/복호화 속도가 현저히 향상될 수 있다. 암호화가 수행되면, 바디영역(b)은 암호화된 파일 바이너리에 의해 업데이트된다.When an arbitrary file is stored in the security file, the metadata associated with the file is collected and stored in the header area (a). Also, file binaries are separated into beginning, middle, and end, and perform partial encryption at a ratio of about 10% to 100%. When performing partial encryption, the encryption / decryption rate can be significantly improved. When encryption is performed, the body area (b) is updated by the encrypted file binary.

도 5를 참조하면, 컨텐츠1과 컨텐츠2는 각각 시초부(beginning), 중간부(middle), 그리고 말단부(end)를 구비하는데 이 각 부분들은 부분적으로만 암호화된다. 바람직하게는, 10% 내지 90%로 부분적으로 암호화를 수행할 수 있다. 암호화되는 정도가 적으면 속도는 향상될 수 있지만 보안성에 문제가 생길 여지가 있고, 암호화 되는 부분이 많으면 속도는 느려지지만 보안성은 향상된다. 따라서, 필요에 따라 적절한 암호화를 수행하는 것이 바람직한데, 30 내지 70% 정도의 부분 암호화가 바람직하다.Referring to FIG. 5, contents 1 and 2 have a beginning, a middle, and an end, respectively, each of which is partially encrypted. Preferably, the encryption can be partially performed at 10% to 90%. If the degree of encryption is small, the speed can be improved but there is a possibility of security problems. If there are many parts to be encrypted, the speed is slower but the security is improved. Therefore, it is preferable to perform proper encryption as necessary, and partial encryption of about 30 to 70% is preferable.

한편, 부분적인 암호화로 인해서는 암호화되지 않은 파일의 부분이 위험에 노출될 가능성이 있다. 이러한 문제점을 해결하기 위해서 파일 바이너리들은 서로 다른 파일 바이너리들과 뒤섞여진다(shuffle). 이러한 과정에 의해서 보안의 레벨은 높아질 수 있게 된다.On the other hand, partial encryption can potentially expose unencrypted portions of the file. To solve this problem, file binaries are shuffled with different file binaries. With this process, the level of security can be increased.

이하, 뒤섞는 방식을 상세히 설명한다. 뒤섞기에 필요한 별도의 S-BOX가 존재하며, 이를 이용하여 셔플을 한다. 셔플은 암호화 운용모드인 CBC (Cipher-block chaining) 알고리즘에서의 S-BOX와 방식을 변경하여 적용할 수 있다. 이는 암호화 운용모드를 사용 시 속도에 대한 지연을 없애기 위한 목적이다.Hereinafter, a method of shuffling will be described in detail. There is a separate S-BOX required for shuffling, and shuffling is performed using this. Shuffle can be applied by changing the S-BOX and method in the cipher-block chaining (CBC) algorithm, which is an encryption operation mode. This is to eliminate the delay in speed when using cryptographic operation mode.

또한, 별도의 S-BOX를 사용하는 이유는 알고리즘이 노출될 경우 복호화가 가능하기 때문에 알고리즘을 숨기기 위한 목적으로 생성하는 것이 바람직하다. 이 S-BOX 또한 단말기와 서버의 인증정보를 가지고 생성하게 된다. 따라서, 인증정보가 변경되면 S-BOX가 변경되고, 각각 단말기마다 다른 S-BOX를 가지게 되어 한 쪽의 단말기가 크랙이 되었다고 하더라도 다른 단말기는 다시 분석해야 하기 때문에 기밀성이 높다고 할 수 있다.Also, the reason for using a separate S-BOX is that it can be decrypted when the algorithm is exposed, so it is desirable to create it for the purpose of hiding the algorithm. This S-BOX is also generated with the authentication information of the terminal and the server. Therefore, if the authentication information is changed, the S-BOX is changed, and each terminal has a different S-BOX, so that even if one terminal is cracked, the other terminals need to analyze again so that the confidentiality is high.

도 5를 참조하면 셔플 과정은 블록 단위로 셔플하되 컨텐츠1의 끝점일 경우 컨텐츠2와 셔플을 수행한다. 셔플 후 별도의 S-BOX를 이용하여 버퍼 값을 치환한다.Referring to FIG. 5, the shuffling process shuffles in units of blocks, and in the case of the end point of the content 1, the content 2 and the shuffle are performed. After the shuffle, the buffer value is replaced using a separate S-BOX.

한편, 사용자에 의해 파일이 삭제되면, 해당 파일의 메타 정보는 보안파일의 헤더 영역(a)에서 제거된다. 동시에 바디영역(b)에서는 파일 바이너리가 삭제되고(empty) 바디 영역(b)이 업데이트된다. 만약 파일 바이너리가 부분적인 암호화가 되면 뒤섞인 파일 바이너리 부분은 회복되고(restore), 해당 저장이 삭제된다.On the other hand, when the file is deleted by the user, the meta information of the file is removed from the header area (a) of the security file. At the same time, in the body area (b), the file binaries are empty and the body area (b) is updated. If the file binary is partially encrypted, the scrambled file binary part is restored and the corresponding stored file is deleted.

파일이 새로운 이름으로 변경되면, 오직 헤더의 메타데이터 정보만 새로 변경된다. 한편, 수정의 경우는 바이너리 영역을 새로 변경할 수 있다.When a file is changed to a new name, only the metadata information of the header is changed. On the other hand, in the case of modification, a binary region can be newly changed.

전체 파일 바디를 복호화할 필요 없이 헤더 영역에 있는 로직 구조는 리스팅을 위해 읽혀진다. 뷰어 동작은 파일을 여는 과정이 아니므로, 리스트 파일 헤더들은 파일/폴더들을 리스팅하는 속도를 증가시킬 수 있다.The logic structure in the header area is read for listing without having to decode the entire file body. Listener file headers can increase the speed at which files / folders are listed, since viewer behavior is not a process of opening a file.

보안파일을 이용하여 보안을 구현하는 경우는 추가적인 보안 작업이 요구되는 부분이 있을 수 있다.When security is implemented using a security file, there may be a portion where additional security work is required.

첫째로, 파일이 오픈된 경우, 예컨대 문서 파일, 스크린 캡쳐와 클립보드에 의한 복사 작업이 금지하는 것이 좋다.First, when a file is opened, for example, copying by a document file, a screen capture and a clipboard is prohibited.

둘째로, 파일 공유의 경우, 해당 파일이 다른 이름으로 보안파일 외부에 저장되는 것을 방지하는 것이 바람직하다.Second, in the case of file sharing, it is desirable to prevent the file from being stored outside the security file under a different name.

셋째로, 파일 공유의 경우, 이메일이나 다른 온라인 수단을 통해서 파일이 공유되는 것을 방지해야 한다.Third, in the case of file sharing, you should prevent files from being shared via email or other online means.

첫 번째 요구를 충족시키기 위하여, 별도의 서비스가 스크린 캡쳐와 클립보드 Activity를 방지하기 위해 제공될 필요가 있다. 각각의 스마트폰 제조사는 스크린 캡쳐에 관한한 별도의 특별한 시스템을 가지고 있다. 대표적인 OS인 안드로이드와 IOS는 양자 공히 기본적으로 스크린 캡쳐를 제공한다. 하드웨어 제조사들은 그러한 캡쳐 방식을 지원한다.To meet the first requirement, a separate service needs to be provided to prevent screen capture and clipboard activity. Each smartphone manufacturer has a special system for screen capture. Both Android and IOS, which are typical OS, provide screen capture by default. Hardware manufacturers support such capture methods.

스크린 캡쳐의 다양한 방식들로부터 컨텐츠를 보호하기 위해서 앱의 여분의 서비스 타입을 구동함으로써 투명한 "Activity"를 액티브한다. 좀 더 상세히 설명하면, 안드로이드의 경우, 만약 유저들이 윈도우 뷰어에 연관된 Activity를 등록하고 그 Activity를 스마트폰 디스플레이와 거의 동일한 사이즈로 확대할 수 있다. 이런 방식에 의하면, 유저들이 캡쳐 동작을 수행하면, 이미 등록된 뷰 이미지가 캡쳐되고 보호되어야할 컨텐츠 정보는 스크린 캡쳐되지 않게 된다.To protect your content from the various ways of screen capture, you activate a transparent "Activity" by driving an app's extra service type. More specifically, in the case of Android, users can register an activity associated with the window viewer and extend the activity to almost the same size as the smartphone display. According to this method, when the users perform the capture operation, the already registered view image is captured and the content information to be protected is not screen-captured.

이하, 캡쳐 방지 코드를 아래와 같다. Hereinafter, the capture prevention code is as follows.

Figure pat00001
Figure pat00001

모바일 환경에서, 클립보드가 작동하는 방식은 컨텐츠가 복사될 때 복사된 컨텐츠는 클립보드의 메니저로 보내지고, 매니저는 복사된 컨텐츠를 모바일 디바이스의 앱에 전송한다. 만약 우리가 클립보드로부터 데이터를 이용하면 우리는 클립보드 매니저에 의해 전송된 데이터를 이용한다. 이러한 클립보드에 의한 복사에 보안 도입이 필요하다.In a mobile environment, the manner in which the clipboard operates is such that when the content is copied, the copied content is sent to the manager of the clipboard, and the manager transmits the copied content to the mobile device's app. If we use the data from the clipboard, we use the data sent by the clipboard manager. Security must be introduced for copying by the clipboard.

클립보드에 복사된 컨텐츠를 보호할 필요가 있을 때, 다음 방법이 사용된다. 일단 클립보드 매니저로부터 다른 앱으로 전송되도록 하는 카피를 받으면, 모바일 어플리케이션에서 빈 버퍼나 경고 메시지로 클립보드에 응답한다. 클립보드에 데이터를 보낼 때는 3-7번 연속해서 데이터를 보내는 것이 좋다. 복수개의 클립보드들을 저장하는 디바이스들도 있기 때문이다. 다른 앱에서 클립보드를 사용하고자 하는 경우 클립보드에서 카피된 데이터가 아니라 우리가 교체한 데이터가 전달될 것이다.When it is necessary to protect the content copied to the clipboard, the following method is used. Once you receive a copy from the clipboard manager to be transferred to another app, the mobile application responds to the clipboard with an empty buffer or warning message. When sending data to the clipboard, it is recommended to send data 3-7 times consecutively. There are devices that store multiple clipboards. If you want to use the clipboard in other apps, you will receive the data that we replaced, not the data copied from the clipboard.

두 번째 조건을 위해서는 내부 또는 외부 메모리에 저장된 파일을 모니터링하고 보호하기 위해 지속적인 관찰수단이 필요하다. 이러한 이벤트가 발생하면 파일은 관찰수단에 의해 삭제된다.For the second condition, continuous monitoring is required to monitor and protect files stored in internal or external memory. When such an event occurs, the file is deleted by the observation means.

세 번째 조건에 대해서는 파일들은 보안파일 내부에 삽입되어 있기 때문에 이메일 또는 온라인으로 어떠한 형태의 파일 공유도 이루어질 수 없다. 보안 파일에 접근할 수 있는 유일한 방식은 보안파일 인터페이스를 통해서다.For the third condition, files can not be shared via e-mail or online because they are embedded inside the security file. The only way to access secure files is through a secure file interface.

본 발명에 의한 시스템의 보안성을 확인하기 위해, OS의 web Sandbox를 무력화한 후 보안파일에 접근을 시도하였다. 보안파일에 접근하기 위해 시도하였을 때, 파일 바이너리 공간 또는 가상공간의 로지컬 파일 경로에 접근이 불가능함을 확인하였다. 보안성이 유지되고 있는 것이다. 한편, 부분 암호화/복호화에 따른 속도를 측정하였다. 테이블 1은 기존 방식과 본 제안 방식 사이의 속도 비교를 나타내고 있다.In order to confirm the security of the system according to the present invention, an attempt was made to access the security file after disabling the web sandbox of the OS. When attempting to access the security file, it is confirmed that the file binary space or the virtual file path of the virtual space can not be accessed. Security is maintained. On the other hand, the rate of partial encryption / decryption was measured. Table 1 shows the speed comparison between the proposed scheme and the proposed scheme.

Table 1. Table 1.

Figure pat00002
Figure pat00002

동일한 조건에서 10, 20, 30 파일들을 사용하여 암호화 속도를 비교하였다. 파일당 키 생성을 위한 기존 방식은 본 제안 방식 보다 덜 효과적이었다. 많은 파일들이 생성될 수로, 더 큰 차이가 발생하였다. 50개의 다른 파일들이 동시에 암호화될 대 기존 방식과 제안 방식의 최대 시간 갭은 38초였다. 이것은 암호화 속도가 개선되었음을 의미한다.The encryption speed was compared using 10, 20, and 30 files under the same conditions. The existing method for key generation per file was less effective than the proposed method. As more files can be created, a bigger difference has occurred. The maximum time gap between the old and proposed schemes was 38 seconds, as 50 different files were encrypted at the same time. This means that the encryption speed is improved.

도 6은 도 2의 모바일 어플리케이션(1100)을 이용하여 파일 읽기를 실행하는 과정을 예로 들어 설명하기 위한 흐름도이다.FIG. 6 is a flowchart illustrating a process of reading a file using the mobile application 1100 of FIG.

도 6을 참조하면, 사용자는 해당 폴더를 확인한 후(S1210), 해당 폴더에서 임의의 파일을 선택할 수 있다. 해당 폴더는 보안 파일의 헤더영역의 정보를 가공하여 컨텐츠 리스트를 확인하도록 구성한다.Referring to FIG. 6, after confirming the corresponding folder (S1210), the user can select an arbitrary file in the folder. The folder is configured to check the contents list by processing the information of the header area of the security file.

여기서는 임의의 문서 파일(111.doc)을 클릭했다고 하자(S1230). 이 경우, 모바일 어플리케이션(1100)은 해당 파일을 오픈할지 저장할 지 여부를 선택하기 위한 이벤트를 띄울 수 있다(S1240).Here, it is assumed that an arbitrary document file (111.doc) is clicked (S1230). In this case, the mobile application 1100 may launch an event for selecting whether to open the file or not (S1240).

먼저, 사용자가 해당 파일을 오픈하기를 선택한 경우, 예컨대, 안드로이드는 "data/data/xxx.xxxx(Application File name)/" 영역에, 아이폰인 경우는 "xxx.xxxxprivate/var/mobile/Applications/(Application File name)/Document"에 임시파일을 저장한다. 임시파일은 암호화되어 있지 않은 상태이므로 시스템 영역에 저장함으로써 해킹을 방지하기 위함이다.First, if the user has selected to open the file, for example, Android will be in the "data / data / xxx.xxxx (Application File name) /" area and if the iPhone is in the "xxx.xxxxprivate / var / (Application File name) / Document ". Since temporary files are not encrypted, they are stored in the system area to prevent hacking.

그런 다음, 모바일 어플리케이션(1100)은 문서 파일(111.doc)을 여는 기능을 수행한다. 필요에 따라서는 모바일 어플리케이션(1100)은 open하는 파일의 형식에 맞는 어플리케이션과 연동하여 구동할 수도 있다(S1260).Then, the mobile application 1100 performs a function of opening the document file 111.doc. If necessary, the mobile application 1100 may operate in conjunction with an application corresponding to the format of the file to be opened (S1260).

즉, 문서 파일(111.doc)의 열기를 하는 경우는 모바일 어플리케이션(1100)은 사용자의 휴대 단말 내부에 설치된 문서 어플리케이션과 연동하여 구동한다. 사용자는 문서 어플리케이션을 사용하여 문서를 확인할 수 있게 된다.That is, when opening the document file 111.doc, the mobile application 1100 operates in conjunction with the document application installed in the portable terminal of the user. The user will be able to view the document using the document application.

만약, 열기가 필요한 문서가 doc파일이라면, 아래와 같은 코드를 이용하여 구현할 수 있다. If the document that needs to be opened is a doc file, you can implement it using the following code.

File_extend.equals, intent. setDataAndType 등의 명령어들은 자바의 명령어들이고, 파일의 확장자가 doc 또는 docx라면 msword에 연동이 가능한 뷰어를 화면에 보여준다. File_extend.equals, intent. setDataAndType Are commands of Java, and if the extension of the file is doc or docx, it shows the viewer which can be linked with msword.

한편, 문서 어플리케이션이 구동되는 동안 모바일 어플리케이션(1100)의 보안모듈(1140)은 해당 문서 어플리케이션이 저장되는지 종료되는 지 여부를 실시간으로 모니터링한다(S1270). 모니터링 결과, 문서 어플리케이션이 저장, 종료를 수행하는 경우는 필요한 조치를 수행한다(S1280).Meanwhile, while the document application is running, the security module 1140 of the mobile application 1100 monitors in real time whether or not the corresponding document application is stored or terminated (S1270). As a result of the monitoring, if the document application performs storage and termination, necessary action is taken (S1280).

실시간 모니터링은 안드로이드를 예로 들어 설명하면, 안드로이드의 "FileObserver" 클래스를 사용한다. 아래 코드를 예시한다.Real-time monitoring uses Android's "FileObserver" class as an example. The code below is illustrated.

fileobserver(NotifyEvent, 감시 경로)fileobserver (NotifyEvent, watchdog path)

위와 같이 설정 후 OnEvent()함수를 안드로이드 운영체제에서 호출 해준다다. 이러한 방식은 CallBack이라 한다.After setting as above, OnEvent () function is called from Android OS. This method is called CallBack.

OnEvent(NotifyEvent, 변경된 파일 경로)OnEvent (NotifyEvent, changed file path)

위의 함수를 통하여 변경 된 경로와 위의 이벤트 종류의 알림을 전달 받게 된다.Through the above function, you will receive notification of the changed path and the above event type.

위와 같이 설정 후 OnEvent()함수를 안드로이드 운영체제에서 호출 해준다다. 이러한 방식은 CallBack이라 한다. After setting as above, OnEvent () function is called from Android OS. This method is called CallBack.

OnEvent(NotifyEvent, 변경된 파일 경로)OnEvent (NotifyEvent, changed file path)

한편, 문서 어플리케이션이 종료되는 경우는 시스템 영역에 저장한 임시파일을 삭제한다. 문서 어플리케이션이 해당 사용자 단말의 임의의 장소에 저장을 시도하는 경우는 모바일 어플리케이션(1100)이 다른 장소에 저장이 불가능하도록 구현하거나 저장된 파일을 기억하고 있다가 문서 어플리케이션이 종료되는 경우 임시파일을 삭제하며, 열린 문서가 수정이 되었다면 보안파일을 업데이터하고 서버로 동기화 요청을 하도록 할 수 있다. 또 다른 방식으로는, 문서 어플리케이션이 보안파일에 저장하는 경우는 저장이 가능하도록 구현하는 것도 가능하다.On the other hand, if the document application is terminated, the temporary file stored in the system area is deleted. In the case where the document application tries to store at a certain place of the corresponding user terminal, the mobile application 1100 implements such that it can not be stored in another place, or stores the stored file, and deletes the temporary file when the document application is terminated , And if the open document has been modified, you can update the security file and ask the server to synchronize. Alternatively, if the document application is stored in a security file, the document application can be stored so that it can be stored.

본 실시예는 모바일 어플리케이션이 클라우드 서버를 통해서 컨텐츠를 다운로드 받고 이를 보호하는 것을 기준으로 설명하였으나, 모바일 단말에 복수의 컨텐츠를 보호하기 위한 것이면 한정되지 않은 다양한 형태로 적용가능하다.Although the present embodiment has been described on the basis that the mobile application downloads and protects the content through the cloud server, the present invention can be applied to various forms not limited to the mobile terminal, as long as it protects a plurality of contents.

이상, 본 발명의 일 실시예에 대하여 설명하였으나, 해당 기술 분야에서 통상의 지식을 가진 자라면 특허청구범위에 기재된 본 발명의 사상으로부터 벗어나지 않는 범위 내에서, 구성 요소의 부가, 변경, 삭제 또는 추가 등에 의해 본 발명을 다양하게 수정 및 변경시킬 수 있을 것이며, 이 또한 본 발명의 권리범위 내에 포함된다고 할 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit of the invention as set forth in the appended claims. The present invention can be variously modified and changed by those skilled in the art, and it is also within the scope of the present invention.

Claims (5)

적어도 하나의 휴대단말이 네트워크를 통해 서버와 접속되어 있는 휴대 단말 보안 시스템에 있어서,
상기 휴대단말은 모바일 어플리케이션을 구비하고, 상기 모바일 어플리케이션은 보안파일을 구비하되,
상기 보안 파일은,
복수개의 컨텐츠의 파일 이름과 폴더 구조를 포함하는 메타데이터가 저장된 헤더 부분; 및 상기 복수개의 컨텐츠의 파일 바이너리 값이 저장된 바디 부분을 포함하고, 상기 복수개의 파일 바이너리는 부분 암호화 되고, 서로 다른 파일 바이너리들과 뒤섞여지는 것을 특징으로 하는 휴대 단말 보안 시스템.
A portable terminal security system in which at least one portable terminal is connected to a server via a network,
Wherein the mobile terminal comprises a mobile application, the mobile application has a security file,
The security file includes:
A header portion in which metadata including a file name and a folder structure of a plurality of contents are stored; And a body part storing a file binary value of the plurality of contents, wherein the plurality of file binaries are partially encrypted and mixed with different file binaries.
제1 항에 있어서,
상기 복수개의 컨텐츠 각각은 시초부, 중간부, 말단부를 구비하는 것을 특징으로 하는 휴대 단말 보안 시스템.
The method according to claim 1,
Wherein each of the plurality of contents includes a start portion, an intermediate portion, and a terminal portion.
모바일 단말에서 복수개의 컨텐츠를 보호하는 방법에 있어서,
상기 복수개의 컨텐츠를 상기 모바일 단말에 저장할 때, 상기 복수개의 컨텐츠의 컨텐츠의 파일 이름과 폴더 구조를 포함하는 메타데이터가 저장된 헤더 부분과 상기 복수개의 컨텐츠의 파일바이너리 값이 저장된 바디부분으로 분리하여 저장하되,
상기 복수개의 파일바이너리가 부분 암호화되고, 서로 다른 파일 바이너리들과 뒤섞여지는 것을 특징으로 하는 모바일 단말에서 복수개의 컨텐츠를 보호하는 방법.
A method for protecting a plurality of contents in a mobile terminal,
When storing the plurality of contents in the mobile terminal, separating the header part in which the metadata including the file name and the folder structure of the contents of the plurality of contents are stored and the body part in which the file binary values of the plurality of contents are stored, However,
Wherein the plurality of file binaries are partially encrypted and interleaved with different file binaries.
제 3 항에 있어서,
상기 복수개의 컨텐츠 각각은 시초부, 중간부, 말단부를 구비하는 것을 특징으로 하는 모바일 단말에서 복수개의 컨텐츠를 보호하는 방법.
The method of claim 3,
Wherein each of the plurality of contents includes a start portion, an intermediate portion, and a terminal portion.
제 3 항 또는 제 4 항 중 어느 한 항에 의한 방법을 수행하는 컴퓨터 프로그램이 기록된 컴퓨터 판독가능 기록매체
A computer program for carrying out the method according to any one of claims 3 and 4,
KR1020160168873A 2016-12-12 2016-12-12 A Method for securing contents in mobile environment, Recording medium for storing the method, and Security sytem for mobile terminal KR20160146623A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160168873A KR20160146623A (en) 2016-12-12 2016-12-12 A Method for securing contents in mobile environment, Recording medium for storing the method, and Security sytem for mobile terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160168873A KR20160146623A (en) 2016-12-12 2016-12-12 A Method for securing contents in mobile environment, Recording medium for storing the method, and Security sytem for mobile terminal

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020140113741A Division KR101703847B1 (en) 2014-08-29 2014-08-29 A Method for securing contents in mobile environment, Recording medium for storing the method, and Security sytem for mobile terminal

Publications (1)

Publication Number Publication Date
KR20160146623A true KR20160146623A (en) 2016-12-21

Family

ID=57735087

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160168873A KR20160146623A (en) 2016-12-12 2016-12-12 A Method for securing contents in mobile environment, Recording medium for storing the method, and Security sytem for mobile terminal

Country Status (1)

Country Link
KR (1) KR20160146623A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102005974B1 (en) * 2018-04-20 2019-10-21 주식회사 클라우드퓨전 System and method for protecting electronic contents using virtual machine
KR102335199B1 (en) * 2020-05-28 2021-12-07 조성래 System for managing file and method thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102005974B1 (en) * 2018-04-20 2019-10-21 주식회사 클라우드퓨전 System and method for protecting electronic contents using virtual machine
KR102335199B1 (en) * 2020-05-28 2021-12-07 조성래 System for managing file and method thereof

Similar Documents

Publication Publication Date Title
JP6609010B2 (en) Multiple permission data security and access
US9832016B2 (en) Methods, systems and computer program product for providing verification code recovery and remote authentication
US10462114B2 (en) System and associated software for providing advanced data protections in a defense-in-depth system by integrating multi-factor authentication with cryptographic offloading
US9135464B2 (en) Secure storage system for distributed data
US9202076B1 (en) Systems and methods for sharing data stored on secure third-party storage platforms
WO2021164166A1 (en) Service data protection method, apparatus and device, and readable storage medium
US9203815B1 (en) Systems and methods for secure third-party data storage
US9961048B2 (en) System and associated software for providing advanced data protections in a defense-in-depth system by integrating multi-factor authentication with cryptographic offloading
EP3082123B1 (en) File storage system, file storage apparatus, and user terminal
CN113806777B (en) File access realization method and device, storage medium and electronic equipment
WO2014144961A1 (en) Establishing trust between applications on a computer
EP2973140A1 (en) Establishing trust between applications on a computer
CN103546547A (en) Cryptosystem for cloud storage files
CA3139189A1 (en) Computer system, device, and method for securing sensitive data in the cloud
US20230222230A1 (en) Key distribution system in a secure enclave
CN114091058A (en) Method and system for secure sharing of data between a first area and a second area
WO2020000765A1 (en) Off-line data storage method and apparatus, computer device and storage medium
KR20160146623A (en) A Method for securing contents in mobile environment, Recording medium for storing the method, and Security sytem for mobile terminal
CN103532712B (en) digital media file protection method, system and client
CN108154037B (en) Inter-process data transmission method and device
CN113342896B (en) Scientific research data safety protection system based on cloud fusion and working method thereof
EP3754531B1 (en) Virtualization for privacy control
US20160063264A1 (en) Method for securing a plurality of contents in mobile environment, and a security file using the same
KR101703847B1 (en) A Method for securing contents in mobile environment, Recording medium for storing the method, and Security sytem for mobile terminal
CN108985079B (en) Data verification method and verification system

Legal Events

Date Code Title Description
A107 Divisional application of patent
WITN Withdrawal due to no request for examination