KR102033040B1 - Method and apparatus for protecting data using volatile memory - Google Patents
Method and apparatus for protecting data using volatile memory Download PDFInfo
- Publication number
- KR102033040B1 KR102033040B1 KR1020190079677A KR20190079677A KR102033040B1 KR 102033040 B1 KR102033040 B1 KR 102033040B1 KR 1020190079677 A KR1020190079677 A KR 1020190079677A KR 20190079677 A KR20190079677 A KR 20190079677A KR 102033040 B1 KR102033040 B1 KR 102033040B1
- Authority
- KR
- South Korea
- Prior art keywords
- storage
- data
- memory
- location
- application program
- 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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/145—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
-
- 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/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
Abstract
Description
본 명세서에서 개시되는 실시예들은 휘발성 메모리를 이용한 데이터 보호 방법 및 장치에 관한 것으로, 보다 상세하게는 컴퓨팅장치가 구동되며 생성되는 데이터를 전원이 공급되는 동안에만 데이터를 유지하는 휘발성 특징이 있는 메모리 영역에 저장되도록 하여 데이터를 보호하는 방법 및 장치에 관한 것이다.Embodiments disclosed herein relate to a data protection method and apparatus using a volatile memory, and more particularly, a memory region having a volatile feature that maintains data only while a computing device is driven and powers generated data. A method and apparatus for protecting data by being stored in the same.
최근 들어 통신 기술의 발전으로 컴퓨팅장치를 이용하여 다양한 업무를 온라인으로 처리할 수 있게 되면서 다양한 애플리케이션이 개발되었다.Recently, with the development of communication technology, various applications have been developed using computing devices to perform various tasks online.
예를 들어, 과거 오프라인으로 상품을 구매하던 것이 PC 또는 스마트기기에 설치된 온라인 쇼핑몰 애플리케이션을 통해 온라인 상으로 상품을 구매할 수 있게 되었으며, 은행업무 역시 스마트기기에 설치된 은행 애플리케이션을 통해 온라인으로 처리할 수 있게 되었다. 또한 스마트기기를 통해 인스턴트 메시지를 송수신할 수 있게 되었다.For example, in the past, when purchasing products offline, it was possible to purchase products online through an online shopping mall application installed on a PC or smart device, and banking can be processed online through a bank application installed on a smart device. It became. You can also send and receive instant messages through your smart device.
이와 같이 컴퓨팅장치를 이용하여 개인의 다양한 업무를 처리하는 과정에서 개인의 사적인정보가 포함된 파일이 컴퓨팅장치의 저장소에 저장된다. As such, in the process of processing various tasks of an individual using the computing device, a file containing personal information of the individual is stored in a storage of the computing device.
하지만, 파일이 삭제되어도 컴퓨팅장치의 저장소에 저장되어 있는 데이터에 접근하기 위한 커넥션이 단절되는 것일 뿐, 저장소에 물리적으로 저장된 데이터가 삭제되는 것이 아니다. However, even if the file is deleted, the connection for accessing the data stored in the storage of the computing device is only disconnected, and the data physically stored in the storage is not deleted.
이로 인해, 응용프로그램을 통해서 임시로 생성된 파일과 사용자가 저장한 데이터가 단말기의 보조기억장치에 저장되면 삭제를 해도 복구가 가능하다. 그러므로 데이터를 복구하지 못하도록 영구삭제를 하기 위해서는 별도의 영구삭제프로그램, 로우포맷(Low Level Format), 디가우징(Degaussing) 등을 해야 한다. For this reason, if a file temporarily created by the application and the data stored by the user are stored in the auxiliary memory device of the terminal, it can be recovered even if deleted. Therefore, in order to permanently delete data from recovery, a separate permanent erase program, low level format, degaussing, etc. must be performed.
영구삭제프로그램은 파일을 삭제할 때 데이터가 저장된 메모리에 임의 값을 기록하여 기존에 기록된 데이터를 복구하지 못하도록 한다. 하지만 기 저장된 데이터의 용량보다 큰 값을 덮어 쓰기 때문에 시간이 오래 걸린다. 그리고 로우포맷은 메모리 전체를 포맷하기 때문에 전체 데이터가 삭제되며 운영체제 및 응용프로그램을 다시 설치해야 하기 때문에 시간이 오래 걸리고 매우 비효율적이다. 또한, 디가우징은 보조기억장치를 강한 자기장을 이용하여 복구할 수 없도록 하지만 하드디스크가 망가져 더 이상 사용이 불가능하다는 문제점이 있다.When you delete a file, the permanent deletion program writes a random value into the memory where the data is stored, preventing you from restoring the previously recorded data. However, it takes a long time because it overwrites a value larger than the stored data. And since low-format formats the entire memory, the entire data is erased and the operating system and applications need to be reinstalled, which is time consuming and very inefficient. In addition, the degaussing does not allow the auxiliary memory device to be recovered using a strong magnetic field, but the hard disk is broken and thus cannot be used anymore.
특히, 공용PC 및 업무PC를 이용한 경우, 사용자는 매번 중요한 보안문서작업, 메신저 대화 내용, 브라우저 검색 등의 흔적을 지우기 위해 파일을 일일이 찾아 영구삭제프로그램을 통해 삭제하거나 로우포맷 또는 디가우징 등을 수행해야 하는 문제점이 있다.In particular, when using a public PC or a work PC, the user searches for files one by one and deletes them through a permanently deleted program, or deletes or deletes them. There is a problem that needs to be done.
관련하여 선행기술 문헌인 한국특허공개번호 제10-2011-0034351호는 보안 유에스비 메모리를 통한 정보 유출 방지시스템 및 방법에 관한 것으로 I/O를 후킹된 파일내용을 기초로 유출방지리스트에 포함되어 있는지 식별하여 정보의 유출을 방지하지만, 보안정보가 포함된 파일을 삭제하여도 저장소에 데이터가 남아있어 보안정보가 유출될 수 있는 문제점을 해결할 수 없다. In the related art, Korean Patent Publication No. 10-2011-0034351, which is related to the prior art document, relates to a system and method for preventing information leakage through secure USB memory, and whether the I / O is included in the leakage prevention list based on the contents of the hooked file. By identifying and preventing the leakage of information, even if the file containing the security information is deleted, the data remains in the repository, so that the security information may not be solved.
따라서 상술된 문제점을 해결하기 위한 기술이 필요하게 되었다.Therefore, there is a need for a technique for solving the above problems.
한편, 전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.On the other hand, the background art described above is technical information that the inventors possess for the derivation of the present invention or acquired in the derivation process of the present invention, and is not necessarily a publicly known technique disclosed to the general public before the application of the present invention. .
본 명세서에서 개시되는 실시예들은, 휘발성 메모리를 이용한 데이터 보호 방법 및 장치를 제시하는데 목적이 있다. Embodiments disclosed herein are intended to provide a data protection method and apparatus using a volatile memory.
본 명세서에서 개시되는 실시예들은, 휘발성 특성을 갖는 주 메모리의 일 영역을 데이터가 저장되는 저장소로 설정하는 휘발성 메모리를 이용한 데이터 보호 방법 및 장치를 제시하는데 목적이 있다. Embodiments disclosed herein are directed to a method and apparatus for protecting data using a volatile memory that sets a region of a main memory having volatile characteristics as a storage where data is stored.
본 명세서에서 개시되는 실시예들은, 응용프로그램의 동작시 발생하는 임시데이터의 저장위치를 메모리에 설정된 저장소로 변경하는 휘발성 메모리를 이용한 데이터 보호 방법 및 장치를 제시하는 데 목적이 있다. Embodiments disclosed in the present specification are to provide a data protection method and apparatus using a volatile memory for changing the storage location of the temporary data generated during the operation of the application to the storage set in the memory.
본 명세서에서 개시되는 실시예들은, 운영체제에서 이용하는 가상메모리에 데이터를 메모리에 설정된 저장소로 이동시키는 휘발성 메모리를 이용한 데이터 보호 방법 및 장치를 제시하는 데 목적이 있다.Embodiments disclosed herein are directed to a data protection method and apparatus using a volatile memory for moving data to a storage set in a memory in a virtual memory used by an operating system.
본 명세서에서 개시되는 실시예들은, 데이터의 페이징여부를 감지하여 페이징되는 데이터가 메모리에 설정된 저장소에 저장되도록 하는 휘발성 메모리를 이용한 데이터 보호 방법 및 장치를 제시하는 데 목적이 있다.Embodiments disclosed in the present specification are to provide a data protection method and apparatus using a volatile memory to detect whether the data is paged so that the paged data is stored in the storage set in the memory.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 일 실시예에 따르면, 데이터 보호 장치에 있어서, 휘발성 메모리 또는 상기 데이터 보호 장치와 분리가능한 메모리 중 하나를 저장소로 설정하는 저장소관리부 및 보안적용대상 응용프로그램을 식별하고, 식별된 응용프로그램에서 생성되는 응용데이터의 저장위치를 상기 저장소로 설정하는 응용프로그램관리부를 포함할 수 있다. As a technical means for achieving the above-described technical problem, according to an embodiment, in the data protection device, the storage management unit and the security target application program for setting one of the volatile memory or the memory removable from the data protection device as a storage And it may include an application management unit for setting the storage location of the application data generated in the identified application program to the storage.
다른 실시예에 따르면, 데이터보호장치가 데이터를 보호하는 방법에 있어서, 데이터보호장치가 데이터를 보호하는 방법에 있어서, 휘발성 메모리 또는 상기 데이터 보호 장치와 분리가능한 메모리 중 하나를 저장소로 설정하는 단계, 보안적용대상 응용프로그램을 식별하는 단계 및 식별된 응용프로그램에서 생성되는 응용데이터의 저장위치를 상기 저장소로 설정하는 단계를 포함하는 단계를 포함할 수 있다.According to another embodiment, a method of protecting data by a data protection device, the method of protecting data by a data protection device, comprising: setting one of a volatile memory or a memory detachable from the data protection device as storage; And identifying a security target application program and setting a storage location of the application data generated by the identified application program as the storage.
또 다른 실시예에 따르면, 데이터보호방법을 수행하는 프로그램이 기록된 컴퓨터 판독이 가능한 기록매체로서, 상기 데이터보호방법은, 휘발성 메모리 또는 상기 데이터 보호 장치와 분리가능한 메모리 중 하나를 저장소로 설정하는 단계, 보안적용대상 응용프로그램을 식별하는 단계 및 식별된 응용프로그램에서 생성되는 응용데이터의 저장위치를 상기 저장소로 설정하는 단계를 포함하는 단계를 포함할 수 있다.According to another embodiment, a computer-readable recording medium having a program for executing a data protection method recorded thereon, the data protection method comprising: setting one of a volatile memory or a memory detachable from the data protection device as a storage; And identifying a security target application program and setting a storage location of the application data generated in the identified application program as the storage.
다른 실시예에 따르면, 데이터보호장치에 의해 수행되며, 데이터보호방법을 수행하기 위해 기록매체에 저장된 컴퓨터프로그램으로서, 상기 데이터보호방법은, 휘발성 메모리 또는 상기 데이터 보호 장치와 분리가능한 메모리 중 하나를 저장소로 설정하는 단계, 보안적용대상 응용프로그램을 식별하는 단계 및 식별된 응용프로그램에서 생성되는 응용데이터의 저장위치를 상기 저장소로 설정하는 단계를 포함하는 단계를 포함할 수 있다.According to another embodiment, a computer program executed by a data protection device and stored in a recording medium for performing the data protection method, the data protection method comprising: storing one of a volatile memory or a memory detachable from the data protection device. And setting the storage location of the application data generated by the identified application program as the storage.
전술한 과제 해결 수단 중 어느 하나에 의하면, 휘발성 메모리를 이용한 데이터 보호 방법 및 장치를 제시할 수 있다. According to any one of the above-described problem solving means, it is possible to provide a data protection method and apparatus using a volatile memory.
전술한 과제 해결 수단 중 어느 하나에 의하면, 문서편집, 브라우저, 메신저와 같은 응용프로그램을 통해 사용자가 생성한 데이터 또는 응용프로그램의 실행시 생성된 임시파일을 휘발성인 주기억장치의 일부 영역을 보조기억장치 저장소로 인식시켜 저장하거나 별도의 휘발성 보조기억장치 저장소에 저장하여 전원이 꺼지면 어떠한 데이터도 남지 않도록 하는 휘발성 메모리를 이용한 데이터 보호 방법 및 장치를 제시할 수 있다. According to any one of the above-mentioned means for solving the problem, the auxiliary storage device to a part of the main memory volatile data generated by the user through the application, such as document editing, browser, messenger or temporary files generated when the application is executed A data protection method and apparatus using volatile memory that can be stored as a storage or stored in a separate volatile auxiliary storage device so that no data remains when the power is turned off can be provided.
전술한 과제 해결 수단 중 어느 하나에 의하면, 복수의 단말 각각에서 공유된 중요 데이터를 응용프로그램에서 이용하는 경우, 생성된 임시파일 등이 각 단말에 저장되는 것이 아닌 지정된 저장소에 저장되도록 함으로써 보안을 집중할 수 있는 휘발성 메모리를 이용한 데이터 보호 방법 및 장치를 제시할 수 있다. According to any one of the above-described problem solving means, in the case of using the important data shared in each of the plurality of terminals in the application, security can be concentrated by having the generated temporary files, etc. are stored in the designated storage rather than stored in each terminal A data protection method and apparatus using a volatile memory can be provided.
전술한 과제 해결 수단 중 어느 하나에 의하면, 지정된 저장소에 데이터가 저장되도록 함으로써 보안 대상을 집중시킴으로써 보안의 취약점을 줄이는 휘발성 메모리를 이용한 데이터 보호 방법 및 장치를 제시할 수 있다. According to any one of the above-described problem solving means, it is possible to provide a data protection method and apparatus using volatile memory to reduce the vulnerability of security by centralizing the security target by allowing data to be stored in a designated storage.
전술한 과제 해결 수단 중 어느 하나에 의하면, 사용자가 단말을 분실하거나 탈취당하여도 전원 차단만으로 데이터를 영구히 삭제할 수 있어 데이터의 유출을 방지할 수 있는 휘발성 메모리를 이용한 데이터 보호 방법 및 장치를 제시할 수 있다.According to any one of the above-mentioned means for solving the problem, it is possible to present a data protection method and apparatus using a volatile memory that can prevent data leakage by permanently deleting the data even if the user loses or is taken over by the user. have.
전술한 과제 해결 수단 중 어느 하나에 의하면, 전원 차단만으로 데이터를 영구히 삭제할 수 있어 데이터의 영구 삭제를 위한 데이터의 삭제 비용 및 시간을 줄일 수 있는 휘발성 메모리를 이용한 데이터 보호 방법 및 장치를 제시할 수 있다.According to any one of the above-mentioned means for solving the problem, it is possible to present a data protection method and apparatus using a volatile memory that can permanently delete the data only by turning off the power, thereby reducing the cost and time of data deletion for permanent deletion of the data. .
개시되는 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 개시되는 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects obtainable in the disclosed embodiments are not limited to the effects mentioned above, and other effects not mentioned above are apparent to those skilled in the art to which the embodiments disclosed from the following description belong. Can be understood.
도 1은 일 실시예에 따른 데이터보호장치를 도시한 블록도이다.
도 2 내지 도 4 는 일 실시예에 따른 데이터보호방법을 설명하기 위한 순서도이다. 1 is a block diagram illustrating a data protection device according to an embodiment.
2 to 4 are flowcharts illustrating a data protection method according to an embodiment.
아래에서는 첨부한 도면을 참조하여 다양한 실시예들을 상세히 설명한다. 아래에서 설명되는 실시예들은 여러 가지 상이한 형태로 변형되어 실시될 수도 있다. 실시예들의 특징을 보다 명확히 설명하기 위하여, 이하의 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 널리 알려져 있는 사항들에 관해서 자세한 설명은 생략하였다. 그리고, 도면에서 실시예들의 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, various embodiments will be described in detail with reference to the accompanying drawings. The embodiments described below may be embodied in various different forms. In order to more clearly describe the features of the embodiments, detailed descriptions of the matters well known to those skilled in the art to which the following embodiments belong are omitted. In the drawings, parts irrelevant to the description of the embodiments are omitted, and like reference numerals designate like parts throughout the specification.
명세서 전체에서, 어떤 구성이 다른 구성과 "연결"되어 있다고 할 때, 이는 ‘직접적으로 연결’되어 있는 경우뿐 아니라, ‘그 중간에 다른 구성을 사이에 두고 연결’되어 있는 경우도 포함한다. 또한, 어떤 구성이 어떤 구성을 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한, 그 외 다른 구성을 제외하는 것이 아니라 다른 구성들을 더 포함할 수도 있음을 의미한다.Throughout the specification, when a configuration is "connected" to another configuration, this includes not only 'directly connected' but also 'connected' between different configurations. In addition, when a configuration "includes" a certain configuration, this means that, unless specifically stated otherwise, it may further include other configurations other than the other configuration.
이하 첨부된 도면을 참고하여 실시예들을 상세히 설명하기로 한다.Hereinafter, exemplary embodiments will be described in detail with reference to the accompanying drawings.
다만 이를 설명하기에 앞서, 아래에서 사용되는 용어들의 의미를 먼저 정의한다. However, before describing this, the meanings of the terms used below are first defined.
‘데이터’는 메모리에 물리적으로 저장되는 값이다. 그리고 ‘파일’은 메모리에 저장된 데이터에 접근하기 위한 연결관계를 포함한 링크이다. 'Data' is a value that is physically stored in memory. A file is a link that contains a link to access data stored in memory.
‘응용데이터’는 응용프로그램에 의해 생성되는 데이터로 응용프로그램의 실행 중 일시적으로 생성되는 데이터 또는 응용프로그램을 통해 저장되는 데이터를 포함할 수 있다. 'Application data' is data generated by an application program and may include data temporarily generated during execution of an application program or data stored through the application program.
‘주기억장치’는 중앙처리장치에서 이용되는 데이터를 일시적으로 저장하는 메모리로 전원이 공급되는 동안 데이터의 저장이 유지되지만 전원 공급이 중단되면 물리적으로 초기화되어 데이터가 삭제된다.The main memory is a memory that temporarily stores data used by the central processing unit. Data is maintained while the power is supplied, but is physically initialized and deleted when the power is interrupted.
‘보조기억장치’는 주기억장치를 제외한 데이터가 저장되는 메모리로 예를 들어, 전원공급이 중단되어도 데이터를 저장하는 HDD(Hard Disk Drive), SSD(Solid State Drive), USB(Universal Serial Bus) 등이 포함될 수 있으며, 전원공급이 중단되면 데이터가 휘발되는 RAM이 포함될 수 있다. 'Auxiliary memory' is a memory that stores data except main memory, for example, HDD (Hard Disk Drive), SSD (Solid State Drive), USB (Universal Serial Bus), etc. It may be included, RAM may be included when the power supply is interrupted data.
‘저장소’는 주기억장치 또는 보조기억장치 중 적어도 하나에 설정되어 보조기억장치로써 역할을 하는 영역으로 일시적으로 데이터가 저장될 수 있으며, 물리적으로 초기화되어 저장된 데이터가 삭제될 수 있다. 'Storage' is an area that is set in at least one of the main memory device or the auxiliary memory device to serve as an auxiliary memory device, the data may be temporarily stored, the data stored in the physical initialization can be deleted.
위에 정의한 용어 이외에 설명이 필요한 용어는 아래에서 각각 따로 설명한다.In addition to the terms defined above, terms that need explanation are explained separately below.
도 1은 일 실시예에 따른 데이터보호장치(10)를 설명하기 위한 블럭도이다.1 is a block diagram illustrating a
데이터보호장치(10)는 네트워크를 통해 원격지의 서버에 접속하거나, 타 단말 및 서버와 연결 가능한 컴퓨터나 휴대용 단말기, 텔레비전, 웨어러블 디바이스(Wearable Device) 등으로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop)등을 포함하고, 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), GSM(Global System for Mobile communications), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet), 스마트폰(Smart Phone), 모바일 WiMAX(Mobile Worldwide Interoperability for Microwave Access) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다. 또한, 텔레비전은 IPTV(Internet Protocol Television), 인터넷 TV(Internet Television), 지상파 TV, 케이블 TV 등을 포함할 수 있다. 나아가 웨어러블 디바이스는 예를 들어, 시계, 안경, 액세서리, 의복, 신발 등 인체에 직접 착용 가능한 타입의 정보처리장치로서, 직접 또는 다른 정보처리장치를 통해 네트워크를 경유하여 원격지의 서버에 접속하거나 타 단말과 연결될 수 있다.The
도 1 을 참조하면, 일 실시예에 따른 데이터보호장치(10)는, 입출력부(110), 제어부(120), 통신부(130) 및 메모리(140)를 포함할 수 있다.Referring to FIG. 1, the
입출력부(110)는 사용자로부터 입력을 수신하기 위한 입력부와, 작업의 수행 결과 또는 데이터보호장치(10)의 상태 등의 정보를 표시하기 위한 출력부를 포함할 수 있다. 예를 들어, 입출력부(110)는 사용자 입력을 수신하는 조작 패널(operation panel) 및 화면을 표시하는 디스플레이 패널(display panel) 등을 포함할 수 있다.The input /
구체적으로, 입력부는 키보드, 물리 버튼, 터치 스크린, 카메라 또는 마이크 등과 같이 다양한 형태의 사용자 입력을 수신할 수 있는 장치들을 포함할 수 있다. 또한, 출력부는 디스플레이 패널 또는 스피커 등을 포함할 수 있다. 다만, 이에 한정되지 않고 입출력부(110)는 다양한 입출력을 지원하는 구성을 포함할 수 있다.In detail, the input unit may include devices capable of receiving various types of user input such as a keyboard, a physical button, a touch screen, a camera, or a microphone. In addition, the output unit may include a display panel or a speaker. However, the present invention is not limited thereto, and the input /
제어부(120)는 데이터보호장치(10)의 전체적인 동작을 제어하며, CPU 등과 같은 프로세서를 포함할 수 있다. 제어부(120)는 입출력부(110)를 통해 수신한 사용자 입력에 대응되는 동작을 수행하도록 데이터보호장치(10)에 포함된 다른 구성들을 제어할 수 있다.The
예를 들어, 제어부(120)는 메모리(140)에 저장된 프로그램을 실행시키거나, 메모리(140)에 저장된 파일을 읽어오거나, 새로운 파일을 메모리(140)에 저장할 수도 있다.For example, the
이러한 제어부(120)는, 저장소관리부(121), 응용프로그램관리부(122), 가상메모리관리부(123), 파일시스템접근제어부(124)를 포함할 수 있다. The
우선, 저장소관리부(121)는 휘발성 메모리 또는 상기 데이터 보호 장치와 분리가능한 메모리 중 하나를 저장소로 설정할 수 있다. First, the
하나의 실시예에 따라, 저장소관리부(121)는 기 설정된 조건이 유지되는 동안 데이터의 저장이 일시적으로 유지되는 메모리(140)인 주기억장치(141)의 일 영역을 저장소로 설정할 수 있다. According to an embodiment of the present disclosure, the
예를 들어, 저장소관리부(121)는 중앙처리장치에서 처리되는 데이터를 일시적으로 저장하는 휘발성 주기억장치(141)인 RAM의 일 영역을 저장소로 설정할 수 있으며, 저장소를 보조기억장치(142)인 USB와 같이 데이터의 저장 또는 데이터의 리딩이 가능한 보조기억장치와 같은 장치로 설정할 수 있다. For example, the
다른 실시예에 따라, 저장소관리부(121)는 데이터의 저장이 유지되는 메모리(140)인 보조기억장치(142)를 등록할 수 있으며 등록된 보조기억장치(142)를 저장소로 추가 설정할 수 있다. According to another exemplary embodiment, the
예를 들어, 저장소관리부(121)는 데이터보호장치(10)로부터 분리가능한 보조기억장치인 USB, SSD 등을 사용자의 입력에 기초하여 등록할 수 있고, 등록된 보조기억장치를 저장소로 추가 설정할 수 있다.For example, the
그리고 저장소관리부(121)는 저장소로 설정된 메모리를 제외한 타 메모리에 응용프로그램의 응용데이터의 저장을 차단할 수 있다. In addition, the
예를 들어, 저장소관리부(121)는 응용프로그램이 저장소로 설정된 보조기억장치를 제외한 다른 보조기억장치를 파일을 저장경로로 설정하면, 파일에 대응되는 응용데이터의 저장을 차단할 수 있다. 이때, 저장소관리부(121)는 저장이 가능한 저장소로 데이터를 저장하거나 또는 저장소의 위치를 표시할 수 있다. For example, the
한편, 응용프로그램관리부(122)는 저장소에 응용데이터가 저장되도록 보안적용대상 응용프로그램을 식별할 수 있다. On the other hand, the
예를 들어, 응용프로그램관리부(122)는 데이터보호장치(10)에서 실행된 응용프로그램이 응용데이터 저장위치의 변경을 허용하는지 분석할 수 있고, 데이터의 저장위치 변경이 가능하면 보안적용대상으로 응용프로그램을 등록할 수 있다. For example, the
그리고 응용프로그램관리부(122)는 보안적용이 가능하다고 식별된 응용프로그램에서 생성되는 응용데이터 저장위치를 저장소로 설정할 수 있다. In addition, the
실시예에 따라, 응용프로그램관리부(122)는 응용프로그램 상의 파일의 응용데이터 저장위치를 저장소로 설정할 수 있다. According to an embodiment, the
예를 들어, 응용프로그램관리부(122)는 응용프로그램 상에서 생성되는 임시파일의 응용데이터가 저장되는 경로를 저장소로 변경 설정하거나 응용프로그램이 저장하는 파일의 응용데이터가 저장소에만 저장되도록 설정할 수 있다. For example, the
그리고 가상메모리관리부(123)는 데이터보호장치(10)에서 구동되는 운영체제가 설정한 가상메모리의 위치를 저장소로 설정할 수 있다. The
예를 들어, 가상메모리관리부(123)는 운영체제에서 가상메모리로써 설정한 보조기억장치를 저장소관리부(121)가 설정한 저장소로 변경하기 위해 가상메모리의 경로를 변경할 수 있다. For example, the
그리고 가상메모리관리부(123)는 운영체제가 주기억장치(141)에서 페이징처리하는 데이터를 저장소에 저장할 수 있다.In addition, the
예를 들어 가상메모리관리부(123)는 운영체제가 주기억장치(141)에 로딩된 데이터 중 처리된 데이터 또는 기 설정된 시간내에 처리되지 않은 데이터에 대해 가상메모리로 페이징되는 데이터를 저장소에 저장되도록 할 수 있다. For example, the
이때 실시예에 따라, 가상메모리관리부(123)는 운영체제가 기 설정한 가상메모리의 저장위치인 보조기억장치에 데이터의 저장을 차단할 수 있다. At this time, according to an embodiment, the
예를 들어, 그리고 가상메모리관리부(123)는 가상메모리가 설정된 보조기억장치에 기 저장된 데이터를 저장소로 이동시킬 수 있고, 운영체제에 대해 가상메모리 기능이 비활성화되도록 설정할 수 있다.For example, the
그리고 파일시스템접근제어부(124)는 응용프로그램관리부(122)에 의해 보안적용으로 식별된 응용프로그램의 파일 호출에 따른 데이터의 입출력이 저장소를 통해 되도록 할 수 있다.In addition, the file system
하나의 실시예에 따라, 파일시스템접근제어부(124)는 응용프로그램에서 파일 호출에 대한 데이터의 입출력이 저장소에서 되도록 제어할 수 있다. According to an embodiment of the present disclosure, the file system
예를 들어, 응용프로그램이 보조기억장치에 저장된 데이터에 대한 파일을 호출하면, 파일시스템접근제어부(124)는 보조기억장치에 저장된 데이터를 저장소로 복사할 수 있고, 응용프로그램의 파일 호출에 대응하여 저장소에 복사된 데이터를 제공할 수 있다.For example, when an application program calls a file for data stored in the auxiliary memory device, the file system
다른 실시예에 따라, 파일시스템접근제어부(124)는 응용프로그램이 보조기억장치에 저장하는 파일의 데이터를 저장소에 저장되도록 제어할 수 있다. According to another exemplary embodiment, the file system
예를 들어, 응용프로그램이 임시데이터에 대한 파일의 저장경로를 보조기억장치에 선택하는 경우, 파일시스템접근제어부(124)는 응용프로그램에서 저장하려는 데이터를 저장소에 저장시킬 수 있고, 파일이 저장소에 저장된 데이터와 링크를 형성하도록 파일시스템을 제어할 수 있다.For example, when the application program selects a storage path of a file for temporary data in the auxiliary storage device, the file system
그리고 파일시스템접근제어부(124)는 저장소에 저장된 데이터를 별도의 보조기억장치로 복사할 수 있다. In addition, the file system
예를 들어, 파일시스템접근제어부(124)는 저장소에 저장된 데이터를 사용자가 선택한 보조기억장치인 USB에 복사할 수 있다.For example, the file system
통신부(130)는 다른 디바이스 또는 네트워크와 유무선 통신을 수행할 수 있다. 이를 위해, 통신부(130)는 다양한 유무선 통신 방법 중 적어도 하나를 지원하는 통신 모듈을 포함할 수 있다. 예를 들어, 통신 모듈은 칩셋(chipset)의 형태로 구현될 수 있다.The
통신부(130)가 지원하는 무선 통신은, 예를 들어 Wi-Fi(Wireless Fidelity), Wi-Fi Direct, 블루투스(Bluetooth), UWB(Ultra Wide Band) 또는 NFC(Near Field Communication) 등일 수 있다. 또한, 통신부(130)가 지원하는 유선 통신은, 예를 들어 USB 또는 HDMI(High Definition Multimedia Interface) 등일 수 있다.The wireless communication supported by the
메모리(140)에는 파일, 어플리케이션 및 프로그램 등과 같은 다양한 종류의 데이터가 설치 및 저장될 수 있다. 제어부(120)는 메모리(140)에 저장된 데이터에 접근하여 이를 이용하거나, 또는 새로운 데이터를 메모리(140)에 저장할 수도 있다. 또한, 제어부(120)는 메모리(140)에 설치된 프로그램을 실행할 수도 있다. The
이러한 메모리(140)는 주기억장치(141)와 보조기억장치(142)로 구분될 수 있다. The
주기억장치(141)는 중앙처리장치(CPU)에서 이용되는 데이터를 일시적으로 저장할 수 있다.The
예를 들어, 주기억장치(141)는 중앙처리장치와 직접 데이터를 송수신하면서 중앙처리장치에서 처리되는 데이터를 일시적으로 저장할 수 있다. For example, the
이러한 주기억장치(141)는 전원이 공급되는 동안 데이터의 저장이 유지되지만 전원 공급이 중단되면 주기억장치가 물리적으로 초기화되어 데이터가 삭제될 수 있으며, 예를 들어 RAM(Random Access Memory)으로 구현될 수 있다. The
보조기억장치(142)는 중앙처리장치에서 처리되는 프로세스에서 필요로 하는 데이터를 제외한 타 데이터를 저장할 수 있다. The
이러한 보조기억장치(142)는 데이터전원공급이 중단되어도 데이터를 저장하는 HDD(Hard Disk Drive), SSD(Solid State Drive), USB(Universal Serial Bus) 등으로 구현될 수 있으며, 전원공급이 중단되면 데이터가 휘발되는 RAM 으로도 구현될 수 있다. The
도 2 내지 도 4 는 일 실시예에 따른 데이터보안방법을 설명하기 위한 순서도이다. 2 to 4 are flowcharts illustrating a data security method according to an embodiment.
도 2 내지 도 4 에 도시된 실시예에 따른 데이터보안방법은 도 1 에 도시된 데이터보안장치(10)에서 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하에서 생략된 내용이라고 하더라도 도 1 에 도시된 데이터보안장치(10)에 관하여 이상에서 기술한 내용은 도 2 내지 도 4 에 도시된 실시예에 따른 데이터보안방법에도 적용될 수 있다.The data security method according to the embodiment shown in FIGS. 2 to 4 includes steps that are processed in time series in the
도 2 는 데이터보안장치(10)가 응용프로그램의 데이터를 휘발성 저장소에 저장하는 데이터보안방법을 도시한 순서도이다. 2 is a flowchart illustrating a data security method in which the
도 2 를 참조하면, 데이터보안장치(10)는 휘발성 메모리 또는 상기 데이터 보호 장치와 분리가능한 메모리 중 하나를 저장소로 설정할 수 있다(S2001).Referring to FIG. 2, the
하나의 실시예에 따라, 데이터보안장치(10)는 휘발성 메모리인 주기억장치에 저장소를 설정할 수 있다. According to an embodiment, the
예를 들어, 데이터보안장치(10)는 전원공급이 유지되는 동안 데이터를 저장하는 주기억장치인 RAM의 일 영역을 저장소로 설정할 수 있고, 설정된 저장소를 데이터가 저장되는 보조기억장치와 같이 기능하도록 설정할 수 있다.For example, the
그리고 데이터보안장치(10)는 추가적으로 보조기억장치에 저장소를 설정할 수 있다. The
예를 들어, 데이터보안장치(10)는 외부 I/O 포트에 연결되어 데이터보안장치(10)로부터 탈부착가능한 보조기억장치 중 사용자의 선택에 의해 보조기억장치를 등록할 수 있고, 등록된 보조기억장치가 I/O포트에 연결되어 인식되면 인식된 보조기억장치의 일부를 저장소로 설정할 수 있다.For example, the
그리고 데이터보안장치(10)는 보안적용대상 응용프로그램을 식별할 수 있다(S2002).The
예를 들어, 데이터보안장치(10)는 사용자의 입력에 의해 실행되는 응용프로그램 중 임시데이터의 저장위치를 변경할 수 있는 응용프로그램을 식별할 수 있고, 임시데이터의 저장위치가 변경가능한 응용프로그램을 보안적용이 가능한 응용프로그램으로 등록할 수 있다. For example, the
그리고 데이터보안장치(10)는 식별된 응용프로그램에서 생성되는 데이터의 저장위치를 저장소로 설정할 수 있다(S2003).The
즉, 데이터보안장치(10)는 S2002단계에서 보안적용이 가능한 응용프로그램에 대해 S2001단계에서 설정된 저장소로 응용프로그램에서 생성되는 응용데이터의 저장위치를 설정할 수 있다. That is, the
예를 들어, 데이터보안장치(10)는 응용프로그램에서 임시적으로 생성되는 응용데이터를 저장하는 위치를 기존 데이터보안장치(10)의 보조기억장치인 HDD에서 S2001단계에서 설정된 저장소로 변경할 수 있다.For example, the
또는 예를 들어, 데이터보안장치(10)는 응용프로그램에서 응용데이터를 저장할 수 있는 위치를 S2001단계에서 사용자가 등록한 보조기억장치인 USB 의 저장소로 설정할 수 있다. Alternatively, for example, the
이때, 실시예에 따라, 데이터보안장치(10)는 저장소로 설정된 보조기억장치를 제외한 타 보조기억장치에 데이터의 저장을 차단할 수 있다.At this time, according to the embodiment, the
예를 들어, 애플리케이션에서 저장소로 설정된 보조기억장치 외의 타 보조기억장치로 응용데이터의 저장을 시도하면, 데이터보안장치(10)는 선택된 타 보조기억장치로 응용데이터의 저장을 차단하고, 애플리케이션에 저장소로 설정된 보조기억장치로 응용데이터의 저장위치를 설정할 것을 알릴 수 있다. For example, if an application attempts to store application data in another auxiliary memory device other than the auxiliary storage device set as storage, the
그리고 데이터보안장치(10)는 응용프로그램의 데이터가 설정된 저장소에서 입출력되도록 파일시스템을 제어할 수 있다(S2004). In addition, the
하나의 실시예에 따라, 데이터보안장치(10)는 데이터보안장치(10)는 응용프로그램의 파일 호출에 따라 파일에 대한 데이터의 입출력이 저장소에서 되도록 파일시스템을 제어할 수 있다. According to an embodiment of the present disclosure, the
예를 들어, 응용프로그램이 등록되지 않은 보조기억장치에 저장된 데이터에 대한 파일을 호출하면, 데이터보안장치(10)는 응용프로그램이 호출한 파일의 데이터가 저장된 보조기억장치로부터 저장소로 데이터를 복사할 수 있고, 저장소에 복사된 데이터를 응용프로그램으로 제공할 수 있다. For example, when an application program calls a file for data stored in an unregistered auxiliary memory device, the
다른 실시예에 따라, 데이터보안장치(10)는 응용프로그램이 저장하는 파일의 데이터가 저장소에 저장되도록 제어할 수 있다. According to another exemplary embodiment, the
예를 들어, 응용프로그램에서 생성된 임시데이터에 대한 파일의 저장경로가 보조기억장치인 경우, 데이터보안장치(10)는 응용프로그램에서 보조기억장치에 저장하려는 데이터를 저장소에 저장할 수 있고, 파일이 저장소에 저장된 데이터와 링크를 형성하도록 할 수 있다. For example, when the storage path of the file for the temporary data generated by the application is a secondary storage device, the
그리고 데이터보안장치(10)는 저장소에 저장된 데이터를 보조기억장치로 복사할 수 있다. The
예를 들어, 데이터보안장치(10)는 저장소에 저장된 데이터를 사용자의 입력에 따라 보조기억장치로 데이터를 복사할 수 있으며, 저장소에 복사된 데이터와 링크를 형성한 파일을 생성할 수 있다.For example, the
한편, 데이터보안장치(10)는 주기억장치에서 가상메모리로 페이징되는 데이터를 저장소에 저장할 수 있다. Meanwhile, the
도 3 은 가상메모리로 페이징되는 데이터를 저장소에 저장하는 데이터보안방법을 도시한 순서도이다. 3 is a flowchart illustrating a data security method for storing data paged to a virtual memory in a storage.
우선, 데이터보안장치(10)는 가상메모리로 데이터의 페이징(paging) 여부를 감지할 수 있다(S3001). First, the
예를 들어, 데이터보안장치(10)는 운영체제에서 가상메모리를 설정하거나 주기억장치에서 가상메모리가 설정된 보조기억장치로의 이동을 감지할 수 있다. For example, the
그리고 데이터보안장치(10)는 페이징되는 데이터를 설정된 저장소에 저장되도록 할 수 있다(S3002). The
이를 위해, 데이터보안장치(10)는 운영제체의 가상메모리로 설정된 저장위치를 저장소로 설정할 수 있다. To this end, the
예를 들어, S3001단계에서 주기억장치에서 가상메모리의 설정을 감지하면, 데이터보안장치(10)는 운영체제에서 가상메모리로 설정한 저장위치를 저장소로 변경하여 주기억장치에서 가상메모리로 페이징되는 데이터를 저장소에 저장되도록 할 수 있다. For example, when detecting the setting of the virtual memory in the main memory in step S3001, the
한편, 데이터보안장치(10)는 보조기억장치에 설정된 가상메모리로 페이징된 데이터를 저장소로 이동시킬 수 있다. On the other hand, the
도 4 는 가상메모리의 데이터를 저장소로 이동시키는 방법을 도시한 순서도이다. 4 is a flowchart illustrating a method of moving data of a virtual memory to a storage.
데이터보안장치(10)는 운영체제가 가상메모리로 설정한 저장위치를 식별할 수 있다(S4001). The
예를 들어, 데이터보안장치(10)는 운영체제의 설정정보를 획득하여 가상메모리로 설정한 저장위치를 식별할 수 있다. 또는 데이터보안장치(10)는 운영체제의 가상메모리 주소를 변환하는 페이지표를 기초로 가상메모리에 대응되는 저장위치를 식별할 수 있다.For example, the
그리고 데이터보안장치(10)는 식별된 저장위치에 저장된 데이터를 저장소로 이동시킬 수 있다(S4002). And the
예를 들어, 데이터보안장치(10)는 운영체제가 기 설정한 가상메모리의 설정위치인 보조기억장치 상의 데이터를 저장소로 복사하여 이동시킬 수 있다. 그리고 데이터보안장치(10)는 도 3 에서 설명한 바와 같이 추가적으로 운영체제의 가상메모리의 영역을 저장소로 변경할 수 있다. For example, the
이상의 실시예들에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field programmable gate array) 또는 ASIC 와 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램특허 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다.The term '~' used in the above embodiments refers to software or a hardware component such as a field programmable gate array (FPGA) or an ASIC, and '~' serves a part. However, '~' is not meant to be limited to software or hardware. '~ Portion' may be configured to be in an addressable storage medium or may be configured to play one or more processors. Thus, as an example, '~' means components such as software components, object-oriented software components, class components, and task components, and processes, functions, properties, procedures, and the like. Subroutines, segments of program patent code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables.
구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로부터 분리될 수 있다.The functionality provided within the components and 'parts' may be combined into a smaller number of components and 'parts' or separated from additional components and 'parts'.
뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU 들을 재생시키도록 구현될 수도 있다.In addition, the components and '~' may be implemented to play one or more CPUs in the device or secure multimedia card.
도 2 내지 도 4 를 통해 설명된 실시예에 따른 데이터보안방법은 컴퓨터에 의해 실행 가능한 명령어 및 데이터를 저장하는, 컴퓨터로 판독 가능한 매체의 형태로도 구현될 수 있다. 이때, 명령어 및 데이터는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 소정의 프로그램 모듈을 생성하여 소정의 동작을 수행할 수 있다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터 기록 매체일 수 있는데, 컴퓨터 기록 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함할 수 있다.예를 들어, 컴퓨터 기록 매체는 HDD 및 SSD 등과 같은 마그네틱 저장 매체, CD, DVD 및 블루레이 디스크 등과 같은 광학적 기록 매체, 또는 네트워크를 통해 접근 가능한 서버에 포함되는 메모리일 수 있다. The data security method according to the embodiments described with reference to FIGS. 2 to 4 may be implemented in the form of a computer readable medium for storing instructions and data executable by a computer. In this case, the command and data may be stored in the form of program code, and when executed by the processor, a predetermined program module may be generated to perform a predetermined operation. In addition, computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. In addition, the computer readable medium may be a computer recording medium, which is volatile and non-implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Both volatile, removable and non-removable media may be included. For example, computer recording media may be provided via magnetic storage media such as HDDs and SSDs, optical recording media such as CDs, DVDs and Blu-ray discs, or may be accessible via a network. It may be a memory included in the server.
또한 도 2 내지 도 4 를 통해 설명된 실시예에 따른 데이터보안방법은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 컴퓨터 프로그램(또는 컴퓨터 프로그램 제품)으로 구현될 수도 있다. 컴퓨터 프로그램은 프로세서에 의해 처리되는 프로그래밍 가능한 기계 명령어를 포함하고, 고레벨 프로그래밍 언어(High-level Programming Language), 객체 지향 프로그래밍 언어(Object-oriented Programming Language), 어셈블리 언어 또는 기계 언어 등으로 구현될 수 있다. 또한 컴퓨터 프로그램은 유형의 컴퓨터 판독가능 기록매체(예를 들어, 메모리, 하드디스크, 자기/광학 매체 또는 SSD(Solid-State Drive) 등)에 기록될 수 있다. In addition, the data security method according to the embodiments described with reference to FIGS. 2 to 4 may be implemented as a computer program (or computer program product) including instructions executable by a computer. The computer program includes programmable machine instructions processed by the processor and may be implemented in a high-level programming language, an object-oriented programming language, an assembly language, or a machine language. . The computer program may also be recorded on tangible computer readable media (eg, memory, hard disks, magnetic / optical media or solid-state drives, etc.).
따라서 도 2 내지 도 4 를 통해 설명된 실시예에 따른 데이터보안방법은 상술한 바와 같은 컴퓨터 프로그램이 컴퓨팅 장치에 의해 실행됨으로써 구현될 수 있다. 컴퓨팅 장치는 프로세서와, 메모리와, 저장 장치와, 메모리 및 고속 확장포트에 접속하고 있는 고속 인터페이스와, 저속 버스와 저장 장치에 접속하고 있는 저속 인터페이스 중 적어도 일부를 포함할 수 있다. 이러한 성분들 각각은 다양한 버스를 이용하여 서로 접속되어 있으며, 공통 머더보드에 탑재되거나 다른 적절한 방식으로 장착될 수 있다. Accordingly, the data security method according to the embodiment described with reference to FIGS. 2 to 4 may be implemented by executing the computer program as described above by the computing device. The computing device may include at least a portion of a processor, a memory, a storage device, a high speed interface connected to the memory and a high speed expansion port, and a low speed interface connected to the low speed bus and the storage device. Each of these components are connected to each other using a variety of buses and may be mounted on a common motherboard or otherwise mounted in a suitable manner.
여기서 프로세서는 컴퓨팅 장치 내에서 명령어를 처리할 수 있는데, 이런 명령어로는, 예컨대 고속 인터페이스에 접속된 디스플레이처럼 외부 입력, 출력 장치상에 GUI(Graphic User Interface)를 제공하기 위한 그래픽 정보를 표시하기 위해 메모리나 저장 장치에 저장된 명령어를 들 수 있다. 다른 실시예로서, 다수의 프로세서 및(또는) 다수의 버스가 적절히 다수의 메모리 및 메모리 형태와 함께 이용될 수 있다. 또한 프로세서는 독립적인 다수의 아날로그 및(또는) 디지털 프로세서를 포함하는 칩들이 이루는 칩셋으로 구현될 수 있다. Here, the processor may process instructions within the computing device, such as to display graphical information for providing a graphical user interface (GUI) on an external input, output device, such as a display connected to a high speed interface. Instructions stored in memory or storage. In other embodiments, multiple processors and / or multiple buses may be used with appropriately multiple memories and memory types. The processor may also be implemented as a chipset consisting of chips comprising a plurality of independent analog and / or digital processors.
또한 메모리는 컴퓨팅 장치 내에서 정보를 저장한다. 일례로, 메모리는 휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 다른 예로, 메모리는 비휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 또한 메모리는 예컨대, 자기 혹은 광 디스크와 같이 다른 형태의 컴퓨터 판독 가능한 매체일 수도 있다. The memory also stores information within the computing device. In one example, the memory may consist of a volatile memory unit or a collection thereof. As another example, the memory may consist of a nonvolatile memory unit or a collection thereof. The memory may also be other forms of computer readable media, such as, for example, magnetic or optical disks.
그리고 저장장치는 컴퓨팅 장치에게 대용량의 저장공간을 제공할 수 있다. 저장 장치는 컴퓨터 판독 가능한 매체이거나 이런 매체를 포함하는 구성일 수 있으며, 예를 들어 SAN(Storage Area Network) 내의 장치들이나 다른 구성도 포함할 수 있고, 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치, 혹은 테이프 장치, 플래시 메모리, 그와 유사한 다른 반도체 메모리 장치 혹은 장치 어레이일 수 있다. In addition, the storage device can provide a large amount of storage space to the computing device. The storage device may be a computer readable medium or a configuration including such a medium, and may include, for example, devices or other configurations within a storage area network (SAN), and may include a floppy disk device, a hard disk device, an optical disk device, Or a tape device, flash memory, or similar other semiconductor memory device or device array.
상술된 실시예들은 예시를 위한 것이며, 상술된 실시예들이 속하는 기술분야의 통상의 지식을 가진 자는 상술된 실시예들이 갖는 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 상술된 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The above-described embodiments are for illustrative purposes, and those of ordinary skill in the art to which the above-described embodiments belong may easily change to other specific forms without changing the technical spirit or essential features of the above-described embodiments. I can understand. Therefore, it is to be understood that the above-described embodiments are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.
본 명세서를 통해 보호 받고자 하는 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태를 포함하는 것으로 해석되어야 한다.The scope to be protected by the present specification is represented by the following claims rather than the above description, and should be construed to include all changes or modifications derived from the meaning and scope of the claims and their equivalents. .
10: 데이터보안장치
110: 입출려부
120: 제어부
121: 저장소관리부 122: 응용프로그램관리부
123: 가상메모리관리부 124: 파일시스템접근제어부
130: 통신부
140: 메모리
141: 주기억장치 142: 보조기억장치10: data security device
110: entrance and exit
120: control unit
121: storage management unit 122: application management unit
123: virtual memory management unit 124: file system access control unit
130: communication unit
140: memory
141: main memory 142: auxiliary memory
Claims (14)
휘발성 메모리 또는 상기 데이터 보호 장치와 분리가능한 메모리 중 하나를 저장소로 설정하는 저장소관리부;
보안적용대상 응용프로그램을 식별하고, 식별된 응용프로그램에서 생성되는 응용데이터의 저장위치를 상기 저장소로 설정하는 응용프로그램관리부;
상기 응용프로그램의 파일 호출에 따른 데이터가 상기 저장소에서 입출력되도록 파일시스템을 제어하고, 상기 파일 호출에 따라 상기 저장소가 아닌 다른 메모리에 저장된 데이터를 상기 저장소로 복제하며, 상기 저장소에 복제된 데이터를 상기 응용프로그램에 제공하는 파일시스템접근제어부; 및
상기 데이터보호장치에서 구동되는 운영체제가 설정한 가상메모리의 위치를 식별하고, 식별된 위치에 저장된 데이터를 상기 저장소로 이동시키며, 상기 운영체제가 설정한 가상메모리의 위치를 상기 저장소로 변경하여 설정하는 가상메모리관리부를 포함하고,
상기 저장소관리부는,
상기 저장소로 설정된 메모리를 제외한 타 메모리 영역에 상기 응용데이터의 저장을 차단하는, 데이터보호장치.In the data protection device,
A storage manager configured to set one of a volatile memory or a memory detachable from the data protection device as a storage;
An application manager for identifying a security target application program and setting a storage location of application data generated by the identified application program as the storage;
The file system is controlled so that data according to a file call of the application program is inputted and outputted from the storage, the data stored in a memory other than the storage is copied to the storage according to the file call, and the data copied to the storage is stored. File system access control unit provided to the application program; And
Identify a location of a virtual memory set by an operating system running in the data protection device, move data stored in the identified location to the storage, and change the location of the virtual memory set by the operating system to the storage Including a memory management unit,
The storage management unit,
A data protection device for blocking the storage of the application data in the other memory area except the memory set as the storage.
상기 가상메모리관리부는,
상기 운영체제가 가상메모리로 설정한 위치의 메모리에 대한 데이터의 저장을 차단하는, 데이터보호장치.The method of claim 1,
The virtual memory management unit,
A data protection device for blocking the storage of data for the memory of the location set by the operating system to the virtual memory.
휘발성 메모리 또는 상기 데이터 보호 장치와 분리가능한 메모리 중 하나를 저장소로 설정하는 단계;
보안적용대상 응용프로그램을 식별하는 단계;
식별된 응용프로그램에서 생성되는 응용데이터의 저장위치를 상기 저장소로 설정하는 단계;
상기 저장소로 설정된 메모리를 제외한 타 메모리 영역에 상기 응용데이터의 저장을 차단하는 단계;
상기 응용프로그램의 파일 호출에 따른 데이터가 상기 저장소에서 입출력되도록 파일시스템을 제어하는 단계; 및
상기 데이터보호장치에서 구동되는 운영체제가 설정한 가상메모리의 위치를 상기 저장소로 설정하는 단계;
상기 파일시스템을 제어하는 단계는,
상기 파일 호출에 따라 상기 저장소가 아닌 다른 메모리에 저장된 데이터를 상기 저장소로 복제하는 단계 및 상기 저장소에 복제된 데이터를 상기 응용프로그램에 제공하는 단계를 포함하고,
상기 가상메모리의 위치를 상기 저장소로 설정하는 단계는,
상기 운영체제가 설정한 가상메모리의 위치를 식별하고, 식별된 위치에 저장된 데이터를 상기 저장소로 이동시키는 단계 및 상기 운영체제가 설정한 가상메모리의 위치를 상기 저장소로 변경하여 설정하는 단계를 포함하는, 데이터보호방법.In a method of protecting data by a data protection device,
Setting one of the volatile memory or the memory detachable from the data protection device as a storage;
Identifying a security target application program;
Setting a storage location of application data generated in the identified application program as the storage;
Blocking storage of the application data in another memory area except the memory set as the storage;
Controlling a file system such that data according to a file call of the application program is inputted and outputted from the storage; And
Setting a location of a virtual memory set by an operating system running in the data protection device as the storage;
Controlling the file system,
Copying data stored in a memory other than the storage to the storage according to the file call, and providing the data copied in the storage to the application program.
Setting the location of the virtual memory to the storage,
Identifying a location of the virtual memory set by the operating system, moving data stored in the identified location to the storage, and changing and setting the location of the virtual memory set by the operating system to the storage; How to protect.
상기 데이터보호방법은,
상기 운영체제가 가상메모리로 설정한 위치의 메모리에 대한 데이터의 저장을 차단하는 단계를 더 포함하는, 데이터보호방법. The method of claim 7, wherein
The data protection method,
Blocking the storage of data for the memory of the location set by the operating system to the virtual memory, the data protection method.
A computer program carried out by a data protection device and stored in a medium for carrying out the method according to claim 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190079677A KR102033040B1 (en) | 2019-07-02 | 2019-07-02 | Method and apparatus for protecting data using volatile memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190079677A KR102033040B1 (en) | 2019-07-02 | 2019-07-02 | Method and apparatus for protecting data using volatile memory |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102033040B1 true KR102033040B1 (en) | 2019-10-16 |
Family
ID=68421378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190079677A KR102033040B1 (en) | 2019-07-02 | 2019-07-02 | Method and apparatus for protecting data using volatile memory |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102033040B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070046363A (en) * | 2005-10-31 | 2007-05-03 | (주)이노토브 | Apparatus for preventing outflow of data and storage device including the same |
JP2008276456A (en) * | 2007-04-27 | 2008-11-13 | Hitachi Software Eng Co Ltd | File management system and method, and mobile terminal device |
KR20130100395A (en) * | 2012-03-01 | 2013-09-11 | (주)아도닉스 | System for protect ing data in data storage for computer using ram, and protect method using the system |
-
2019
- 2019-07-02 KR KR1020190079677A patent/KR102033040B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070046363A (en) * | 2005-10-31 | 2007-05-03 | (주)이노토브 | Apparatus for preventing outflow of data and storage device including the same |
JP2008276456A (en) * | 2007-04-27 | 2008-11-13 | Hitachi Software Eng Co Ltd | File management system and method, and mobile terminal device |
KR20130100395A (en) * | 2012-03-01 | 2013-09-11 | (주)아도닉스 | System for protect ing data in data storage for computer using ram, and protect method using the system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9852289B1 (en) | Systems and methods for protecting files from malicious encryption attempts | |
US9100440B1 (en) | Systems and methods for applying data loss prevention policies to closed-storage portable devices | |
US9286486B2 (en) | System and method for copying files between encrypted and unencrypted data storage devices | |
US20210266734A1 (en) | Obscuring application windows based on user security permissions | |
KR102033040B1 (en) | Method and apparatus for protecting data using volatile memory | |
KR102038128B1 (en) | Method and system for setting composition using object sensor | |
US11657368B2 (en) | Server and control method thereof | |
KR102116395B1 (en) | Apparatus and method for testing application | |
WO2023179378A1 (en) | Encryption method and apparatus and electronic device | |
US11762985B2 (en) | Systems and methods for protecting files indirectly related to user activity | |
KR102191453B1 (en) | Method and apparatus for providing plug-in to application developed on spring framework | |
CN114153535B (en) | Method, apparatus, medium and program product for jumping pages on an open page | |
CN105528307B (en) | A kind of method and electronic equipment of information processing | |
US20150178509A1 (en) | Trigger based portable device morphing | |
US10318250B1 (en) | Systems and methods for locating functions for later interception | |
US20170094502A1 (en) | Management method, management device and terminal for contacts in terminal | |
US11120169B1 (en) | Systems and methods for identifying malware locations based on analyses of backup files | |
KR102249190B1 (en) | Apparatus and method for providing user interface | |
KR102519373B1 (en) | Apparatus and method for resizing cell in table | |
US10942816B1 (en) | Systems and methods for dynamically adjusting a backup policy | |
US11288361B1 (en) | Systems and methods for restoring applications | |
KR20180120968A (en) | Neural network execution apparatus for memory write reduction and method thereof | |
US11146537B1 (en) | Systems and methods for protecting geolocation information | |
KR101958817B1 (en) | Apparatus and method for providing virtual pad | |
US10867035B1 (en) | Systems and methods for detecting malicious programmatic clicks directed to view elements displayed on touchscreens |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |