KR102439075B1 - Data managent method for avoiding evasion the retention period set in data through reference time falsification in data storage system - Google Patents
Data managent method for avoiding evasion the retention period set in data through reference time falsification in data storage system Download PDFInfo
- Publication number
- KR102439075B1 KR102439075B1 KR1020190148344A KR20190148344A KR102439075B1 KR 102439075 B1 KR102439075 B1 KR 102439075B1 KR 1020190148344 A KR1020190148344 A KR 1020190148344A KR 20190148344 A KR20190148344 A KR 20190148344A KR 102439075 B1 KR102439075 B1 KR 102439075B1
- Authority
- KR
- South Korea
- Prior art keywords
- time
- data
- retention period
- independent
- elapsed
- 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/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
- G06F21/725—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits operating on a secure reference time value
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- 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
- G06F21/6227—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 where protection concerns the structure of data, e.g. records, types, queries
Abstract
본 발명은 데이터 저장 시스템에서 데이터에 설정된 보존 기간을 기준시간 변조를 통해 회피하는 것을 방지하는 데이터 관리 방법에 관한 것이다. 본 데이터 관리 방법은, 스토리지 장치에 논리적 저장소 생성시, 논리적 저장소 단위로 시스템 시간에 독립적인 독립 시간을 설정하여 운영하는 과정, 논리적 저장소에 저장되는 데이터에 대한 보존 기간을 설정하는 과정, 논리적 저장소에 저장된 데이터에 대한 삭제 요청시, 시스템 시간 대신 독립 시간을 기준으로 보존 기간의 경과 여부를 판단하는 과정, 및 판단 결과, 보존 기간이 경과되지 않은 경우에는 삭제 요청을 불허하고 에러 메시지를 전송하며, 보존 기간이 경과된 경우에는 삭제 요청된 데이터를 삭제하는 과정을 포함한다. 본 발명에 따르면, 시스템 시간의 변경을 통해 설정된 데이터 보존 기간을 무력화하여 저장된 데이터를 삭제하거나 위변조하는 것을 방지할 수 있다.The present invention relates to a data management method for preventing avoidance of a retention period set for data in a data storage system through reference time modulation. In this data management method, when a logical storage is created in a storage device, an independent time independent of the system time is set and operated for each logical storage unit, a process of setting a retention period for data stored in the logical storage, and the logical storage When requesting deletion of stored data, the process of judging whether the retention period has elapsed based on independent time instead of system time, and as a result of the determination, if the retention period has not elapsed, the deletion request is disallowed and an error message is sent; When the period has elapsed, the process of deleting the requested data is included. According to the present invention, it is possible to prevent deletion or falsification of stored data by neutralizing the set data retention period through a change of the system time.
Description
본 발명은 스토리지 장치에 저장된 데이터에 설정된 보존 기간을 기준시간으로 사용되는 시스템 시간 변경을 통해 무력화시켜 데이터를 삭제하거나 위변조하는 것을 방지할 수 있는 데이터 관리 방법에 관한 것이다. The present invention relates to a data management method capable of preventing deletion or falsification of data by neutralizing a retention period set for data stored in a storage device by changing a system time used as a reference time.
업무적인 통신, 회계 자료, 의료 영상 기록 등과 같은 중요한 기록들이 전자적인 형식으로 저장되기 시작하면서, 이러한 기록들을 몰래 불법적으로 파괴하거나 변조하는 경우가 종종 발생하고 있다. 예컨대, 회계부정을 감추기 위해 회계자료를 사후에 변조하는 경우, 오진 기록을 감추기 위해 진료 기록을 변조하는 경우, 해커가 침입 흔적을 감추기 위해 로그를 삭제하는 경우 등이다.As important records such as business communications, accounting data, and medical image records begin to be stored in electronic format, it is often the case that these records are illegally destroyed or tampered with. For example, when accounting data is later altered to hide accounting fraud, when medical records are falsified to hide misdiagnosis records, when hackers delete logs to hide traces of intrusion, etc.
이러한 위·변조 및 임의 삭제를 방지하기 위해, WORM(Write Once Read Many) 저장 장치가 널리 사용되고 있다. WORM 저장 장치는 정보가 일단 한번 기록되면, 수정 및 삭제가 불가능하고, 읽기만 허용되는 데이터 저장 장치를 말한다. 이러한 기록 보호는 CD-R, DVD-R 등의 광디스크와 같이 데이터가 일단 한 번 장치에 기록되고 나면, 데이터를 변조할 수 없다는 것을 보장한다. In order to prevent such forgery, tampering and random deletion, a write once read many (WORM) storage device is widely used. A WORM storage device refers to a data storage device that, once information is written, cannot be modified or deleted, and read only. This write protection ensures that data cannot be tampered with once data has been written to a device, such as an optical disc such as a CD-R, DVD-R, or the like.
그러나, 폭발적으로 증가하는 데이터를 기존의 광디스크 같은 WORM 저장 장치에 저장하는 것은 용량, 성능, 검색 및 활용성 등에 있어서 극히 비효율이고 제한적이다. 이러한 문제점을 해결하기 위해, 하드디스크나 SSD 기반의 대용량 데이터 저장 시스템에 WORM 기능을 구현하여 제공하는 기술들이 등장하였다. 이와 같은 WORM 기능을 구현한 대용량 데이터 저장 시스템은, 보안성을 제공하면서, 하드디스크 기반의 저장장치들이 제공하는 대용량, 사용의 편의성, 고성능을 제공할 수 있다.However, storing explosively increasing data in a WORM storage device such as an existing optical disk is extremely inefficient and limited in capacity, performance, search and utilization, and the like. In order to solve this problem, technologies for implementing and providing a WORM function in a hard disk or SSD-based large-capacity data storage system have emerged. A large-capacity data storage system implementing such a WORM function can provide the large capacity, ease of use, and high performance provided by hard disk-based storage devices while providing security.
그런데, 이와 같은 데이터 저장 시스템은 관리자 권한을 가진 사용자에게 모든 권한이 있다. 따라서, 합법적인 절차나 해킹 등을 통해 관리자 권한을 획득하게 되면, 시스템 시간을 기준시간으로 해서 데이터에 설정된 보존 기간을 시스템 시간의 변경을 통해 무력화하고 데이터를 삭제하거나 변조하는 것이 가능해 질 수 있다. However, in such a data storage system, a user with administrator rights has all rights. Accordingly, if the administrator's authority is obtained through a legal procedure or hacking, the retention period set for data using the system time as the reference time can be neutralized by changing the system time, and data can be deleted or altered.
따라서, WORM 기능을 구현한 데이터 저장 시스템에서 시스템 시간을 변경하여 데이터를 삭제하거나 위변조하는 것을 방지하여, 완벽한 데이터 보존성을 제공하는 방안을 고려해 볼 필요가 있다.Therefore, it is necessary to consider a method of providing perfect data preservation by preventing data deletion or forgery by changing the system time in a data storage system implementing the WORM function.
따라서, 본 발명의 목적은, 스토리지 장치에 저장된 데이터에 설정된 보존 기간을 시스템 시간 변경을 통해 회피하여 데이터를 삭제하거나 위변조하는 것을 방지할 수 있는 데이터 관리 방법을 제공함에 있다.Accordingly, it is an object of the present invention to provide a data management method capable of preventing deletion or forgery of data by avoiding a retention period set for data stored in a storage device through system time change.
상기 목적을 달성하기 위한 본 발명에 따른 데이터 관리 방법은, 스토리지 장치에 논리적 저장소 생성시, 상기 논리적 저장소 단위로 시스템 시간에 독립적인 독립 시간을 설정하여 운영하는 단계, 상기 논리적 저장소에 저장되는 데이터에 대한 보존 기간을 설정하는 단계, 상기 논리적 저장소에 저장된 데이터에 대한 삭제 요청시, 상기 시스템 시간 대신 상기 독립 시간을 기준으로 상기 보존 기간의 경과 여부를 판단하는 단계, 및 상기 판단 결과, 상기 보존 기간이 경과되지 않은 경우에는 상기 삭제 요청을 불허하고 에러 메시지를 전송하며, 상기 보존 기간이 경과된 경우에는 상기 삭제 요청된 데이터를 삭제하는 단계를 포함한다.The data management method according to the present invention for achieving the above object includes the steps of setting and operating an independent time independent of system time in units of the logical storage unit when a logical storage is created in a storage device; setting a retention period for the data stored in the logical storage, determining whether the retention period has elapsed based on the independent time instead of the system time when a deletion request for data stored in the logical storage is requested, and as a result of the determination, the retention period is and disallowing the deletion request and transmitting an error message if it has not elapsed, and deleting the requested data if the retention period has elapsed.
상기 독립 시간은, 미리 설정된 특수 사용자 아이디의 사용 권한을 통해서만 수정되며, 상기 독립 시간은, 소정 단위 주기로 동작하는 타이머 프로세스의 신호에 따라, 상기 소정 단위 주기마다 사용 권한이 상기 특수 사용자 아이디로 전환되어 업데이트될 수 있다. The independent time is modified only through the use right of a preset special user ID, and the independent time is, according to a signal of a timer process operating at a predetermined unit cycle, the usage right is switched to the special user ID at each predetermined unit cycle. may be updated.
또한, 상기 목적을 달성하기 위한 본 발명에 따른 데이터 저장 시스템은, 스토리지 장치, 메모리, 제어부, 및 상기 메모리에 저장되어 상기 제어부에 의해 실행되는 하나 이상의 모듈을 포함하며, 상기 모듈은, 상기 스토리지 장치에 논리적 저장소 생성시, 상기 논리적 저장소 단위로 시스템 시간에 독립적인 독립 시간을 설정하여 운영하는 과정, 상기 논리적 저장소에 저장되는 데이터에 대한 보존 기간을 설정하는 과정, 상기 논리적 저장소에 저장된 데이터에 대한 삭제 요청시, 상기 시스템 시간 대신 상기 독립 시간을 기준으로 상기 보존 기간의 경과 여부를 판단하는 과정, 및 상기 판단 결과, 상기 보존 기간이 경과되지 않은 경우에는 상기 삭제 요청을 불허하고 에러 메시지를 전송하며, 상기 보존 기간이 경과된 경우에는 상기 삭제 요청된 데이터를 삭제하는 과정을 포함한다.In addition, the data storage system according to the present invention for achieving the above object includes a storage device, a memory, a control unit, and one or more modules stored in the memory and executed by the control unit, wherein the module includes the storage device When creating a logical storage in the logical storage unit, the process of setting and operating an independent time independent of the system time in the logical storage unit, the process of setting a retention period for data stored in the logical storage, deletion of data stored in the logical storage Upon request, the process of determining whether the retention period has elapsed based on the independent time instead of the system time, and, as a result of the determination, if the retention period has not elapsed, disallow the deletion request and transmit an error message, and deleting the deleted data when the retention period has elapsed.
상기 모듈은, 현재 독립 시간과 소정 단위 주기 시간을 합산한 시간을 잠정 업데이트 시간으로 설정하는 과정, 상기 잠정 업데이트 시간과 현재 시스템 시간을 비교하는 과정, 상기 잠정 업데이트 시간과 상기 현재 시스템 시간이 같은 경우, 상기 잠정 업데이트 시간을 새로운 독립 시간으로 업데이트하는 과정, 및 상기 잠정 업데이트 시간과 상기 현재 시스템 시간이 다른 경우, 상기 잠정 업데이트 시간에 소정 추가 보정 시간을 가감한 시간을 상기 새로운 독립시간으로 업데이트하는 과정을 더 포함할 수 있다. The module is configured to set a time obtained by adding a current independent time and a predetermined unit cycle time as a provisional update time, comparing the provisional update time with the current system time, and when the provisional update time and the current system time are the same , updating the provisional update time to a new independent time, and when the provisional update time is different from the current system time, updating the provisional update time plus or minus a predetermined additional correction time to the new independent time may further include.
그리고, 상기 목적을 달성하기 위하여 본 발명에서는, 상기 데이터 관리 방법을 프로세서에서 실행시키기 위한 프로그램을 기록한 프로세서로 읽을 수 있는 기록매체를 제공한다.And, in order to achieve the above object, the present invention provides a processor-readable recording medium in which a program for executing the data management method in the processor is recorded.
본 발명에 따르면, 시스템 시간과 독립적으로 운영되는 독립 시간을 이용하여 데이터 보존 기간의 경과 여부를 판단하여, 시스템 시간의 변경을 통해 설정된 데이터 보존 기간을 무력화하여 저장된 데이터를 삭제하거나 위변조하는 것을 방지할 수 있다. 이에 의해, WORM 기능을 구현한 데이터 저장 시스템에서 완벽한 보존성을 제공하면서, 하드디스크 기반의 저장장치들이 제공하는 대용량, 사용의 편의성, 고성능도 제공할 수 있다. According to the present invention, it is possible to prevent deletion or falsification of stored data by judging whether the data retention period has elapsed by using the independent time operated independently of the system time, and neutralizing the data retention period set through the change of the system time. can Accordingly, it is possible to provide perfect preservation in a data storage system implementing the WORM function, while also providing the large capacity, ease of use, and high performance provided by hard disk-based storage devices.
도 1은 본 발명에 따른 데이터 관리 방법이 적용되는 데이터 저장 시스템의 일 예를 나타낸 도면,
도 2 및 도 3은 본 발명의 일실시예에 따른 데이터 관리 방법에 대한 설명에 제공되는 흐름도,
도 4는 본 발명에 따른 데이터 관리 방법에서 독립 시간의 설정 과정에 대한 설명에 제공되는 흐름도, 그리고
도 5는 본 발명에 따른 데이터 관리 방법에서 독립 시간의 업데이트 과정에 대한 설명에 제공되는 흐름도이다.1 is a view showing an example of a data storage system to which a data management method according to the present invention is applied;
2 and 3 are flowcharts provided for explaining a data management method according to an embodiment of the present invention;
4 is a flowchart provided for explaining a process of setting an independent time in a data management method according to the present invention, and
5 is a flowchart provided to explain an independent time update process in a data management method according to the present invention.
본 명세서에서, 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 경우, 어떤 구성요소에 다른 구성요소에 직접적으로 연결되어 있거나 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 또한, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에" 또는 "~에 이웃하는" 등과, 어떤 구성요소가 다른 구성요소로 신호를 "전송한다" 와 같은 표현도 마찬가지로 해석되어야 한다.In this specification, when a component is referred to as being “connected” or “connected” to another component, the component may be directly connected or connected to another component, but another component in between. It should be understood that elements may exist. Also, other expressions describing the relationship between elements, such as "between" or "neighboring", etc., such as that one element "transmits" a signal to another element, should be interpreted similarly. do.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.Hereinafter, the present invention will be described in more detail with reference to the drawings.
도 1은 본 발명에 따른 데이터 관리 방법이 적용되는 데이터 저장 시스템의 일 예를 나타낸 것이다. 1 shows an example of a data storage system to which a data management method according to the present invention is applied.
도 1을 참조하면, 본 데이터 저장 시스템(100)은, 통신부(110), 메모리(120), 스토리지 인터페이스부(130), 스토리지 장치(140), 및 제어부(150)를 포함할 수 있다. 이와 같은 구성요소들은 실제 응용에서 구현될 때 필요에 따라 2 이상의 구성요소가 하나의 구성요소로 합쳐지거나, 혹은 하나의 구성요소가 2 이상의 구성요소로 세분되어 구성될 수 있다.Referring to FIG. 1 , the
통신부(110)는 네트워크를 통해 클라이언트 기기(200)나 기타 다른 기기와 데이터 송수신이 가능하도록 한다. The
메모리(120)는 제어부(150)의 처리 및 제어를 위한 프로그램 코드가 저장될 수 있으며, 입력되거나 출력되는 데이터들을 임시 저장하는 기능을 수행할 수도 있다. 메모리(120)에는 스토리지 장치(140)에 디렉토리 및 파일을 계층적 구조로서 논리적으로 구성하는 파일 시스템 등을 구현하는 스토리지 오페레이팅부(125)가 설치될 수 있다. The
스토리지 인터페이스부(130)는 스토리지 장치(140)와 데이터 송수신을 위한 인터페이스 역할을 수행한다.The
스토리지 장치(140)는 제어부(150)나 기타 컴퓨터 프로세서 등이 접근할 수 있도록 전자기적인 형태로 데이터를 저장하는 장치이며, 하드디스크나 SSD(Solid State Disk) 등으로 구성할 수 있다. The
제어부(150)는 통상적으로 상기 각부의 동작을 제어하여 데이터 저장 시스템(100)의 전반적인 동작을 제어한다. 예를 들어, 제어부(150)는 스토리지 장치(140)에서 디스크의 어레이를 포함하는 하나 이상의 볼륨을 관리하고, 클라이언트 기기(200)나 기타 외부 기기의 요청에 따라, 스토리지 장치(140)에 데이터를 기록하거나 수정, 또는 추가하거나 삭제하는 것과 같은 동작을 수행할 수 있다. The
이와 같은 데이터 저장 시스템에서, 관리자 권한을 가진 사용자는 스토리지 장치(140)에 저장된 어떠한 데이터든지 변경하거나 삭제할 수 있는 권한을 가진다. 그런데, 정상적으로 관리자 권한을 부여받은 관리자가 실수 혹은 의도적으로 데이터를 손상시키는 경우나, 불법적으로 관리자 권한을 획득한 침입자가 데이터를 파괴하는 경우 등이 발생할 수 있다. In such a data storage system, a user having administrator authority has authority to change or delete any data stored in the
이를 방지하기 위해 WORM(Write Once Read Many) 기능을 부가할 수 있는데, WORM 기능이 구현된 데이터 저장 시스템은 어떠한 경로로 관리자 권한을 획득하더라도 데이터를 변조하거나 삭제하는 것을 허용되지 않는 구조를 가진다.In order to prevent this, a write once read many (WORM) function can be added. The data storage system in which the WORM function is implemented has a structure that does not allow tampering or deletion of data no matter what path the administrator acquires.
CD-R, DVD-R 등과 같은 WORM 저장 장치는 레이저를 통해 물리적으로 미디어의 표면에 패턴을 형성함으로써 데이터를 기록하므로, 데이터가 기록되는 순간부터 물리적으로 변조가 불가능한 상태가 된다. 그러나, 대용량, 고성능, 검색 활용성을 지원하기 위해 구현되는 하드디스크 및 SSD를 기반으로 하는 데이터 저장 시스템은 물리적인 속성으로 데이터를 보호하는 장치가 없기 때문에 데이터를 보호하는 기능을 소프트웨어적인 방법을 통해 구현하게 된다. 이때, 소프트웨어는 운영체제 안에 고정된 코드로 구현이 되거나 펌웨어로 구현되어 외부에서 이를 변경할 방법을 원천적으로 차단하여, 어떤 권한으로도 데이터를 변조하거나 삭제하는 것을 방지할 수 있다. WORM storage devices such as CD-R, DVD-R, etc. record data by physically forming a pattern on the surface of the medium through a laser, and thus physically impossible to modulate from the moment the data is recorded. However, data storage systems based on hard disks and SSDs implemented to support large capacity, high performance, and search usability do not have a device that protects data with physical properties. will be implemented In this case, the software is implemented as a code fixed in the operating system or implemented as firmware to fundamentally block the method of changing it from the outside, thereby preventing tampering or deletion of data with any authority.
그리고, WORM 기능을 구현한 데이터 저장 시스템에서 보존 기간을 설정하여, 미리 설정된 보존 기간이 경과된 경우에만 저장된 파일을 삭제거나 수정할 수 있도록 구성할 수 있다. 이때. 보존 기간의 경과 여부는 하드웨어적인 리얼 타임 클럭(RTC)이 제공하는 시간을 기준으로 바이오스(BIOS)나 시스템에 설치된 운영 체제(OS)가 제공하는 시스템 시간을 기준으로 판단할 수 있다. In addition, by setting the retention period in the data storage system implementing the WORM function, it is possible to configure so that the stored files can be deleted or modified only when the preset retention period has elapsed. At this time. Whether or not the retention period has elapsed may be determined based on the system time provided by the BIOS or the operating system installed in the system based on the time provided by the hardware real-time clock (RTC).
그런데, 합법적인 절차 혹은 해킹을 통해 관리자 권한을 획득하면 시스템 시간을 기준으로 파일에 설정된 보존 기간을 시스템 시간의 변경을 통해 무력화 하고 데이터를 삭제하거나 위변조하는 것이 가능해 질 수 있다. 기준시간을 제공해 주는 네트워크 상의 타임서버와 연결된 시스템의 경우에는 외부로부터 기준시간을 받아서 시스템 시간을 최신으로 보정할 수 있어서 이러한 위협을 최소화할 수도 있지만, 타임서버에 접속할 수 없는 폐쇄된 환경에서 독립적으로 운영되는 시스템의 경우에는 이러한 방법을 사용할 수 없다.However, if administrator rights are obtained through legal procedures or hacking, the retention period set for files based on the system time can be neutralized by changing the system time, and data can be deleted or forged. In the case of a system connected to a time server on the network that provides the reference time, this threat can be minimized by receiving the reference time from the outside and correcting the system time up to date. For operational systems, this method cannot be used.
따라서, 본 발명에서는 시스템 시간과 독립적으로 운영되며 임의로 변경할 수 없는 독립 시간을 이용하여 이러한 위협을 방지한다. Therefore, in the present invention, such a threat is prevented by using an independent time that operates independently of the system time and cannot be arbitrarily changed.
도 2는 본 발명의 일실시예에 따른 데이터 관리 방법에 대한 설명에 제공되는 흐름도이다. 2 is a flowchart provided to explain a data management method according to an embodiment of the present invention.
도 2를 참조하면, 제어부(150)는 관리자 권한을 가진 사용자의 명령 등에 따라 스토리지 장치(140)에 볼륨이나 파티션 등과 같이 데이터가 저장되는 논리적 저장소를 생성한다(S300). 그리고, 생성한 논리적 저장소에 저장되는 데이터가 보존되는 보존 기간을 설정한다(S310). 보존 기간은 임의로 설정할 수 있으나, 일단 보존 기간이 설정되면, 그 기간 동안 논리적 저장소에 저장된 파일의 삭제나 수정이 제한된다. Referring to FIG. 2 , the
다음으로, 생성한 논리적 저장소 단위로 데이터 저장 시스템(100)의 바이오스(BIOS)나 운영 체제(OS) 등이 제공하는 시스템 시간과 독립적으로 운영되는 독립 시간을 설정하고(S320), 소정 주기마다 독립 시간을 업데이트한다(S330). 독립 시간은 소프트웨어적으로 설정할 수 있으며, 미리 설정되고 비밀이 보장되는 특수 사용자 아이디의 사용 권한을 통해서만 업데이트되도록 구성된다.Next, an independent time operated independently of the system time provided by the BIOS or the operating system of the
도 3을 참조하면, 만일. 논리적 저장소에 저장된 데이터에 대한 삭제 요청이 있는 경우(S340), 제어부(150)는 시스템 시간 대신 독립 시간을 기준으로 보존 기간의 경과 여부를 판단한다(S350). Referring to Figure 3, if. When there is a request to delete data stored in the logical storage (S340), the
S350 단계의 판단 결과, 독립 시간을 기준으로 미리 설정된 보존 기간이 경과된 경우에는 삭제 요청된 데이터를 삭제하지만(S360), 독립 시간을 기준으로 설정된 보존 기간이 경과되지 않은 경우에는 이러한 삭제 요청은 허용되지 않는다는 것을 나타내는 에러 메시지를 전송하고, 해당 데이터는 삭제되지 않도록 한다(S370). 논리적 저장소에 저장된 데이터에 대한 수정 요청의 경우에도 동일한 방식으로 처리할 수 잇다.As a result of the determination in step S350, if the retention period preset based on the independence time has elapsed, the data requested to be deleted is deleted (S360), but if the retention period set based on the independence time has not elapsed, such a deletion request is allowed It transmits an error message indicating that it is not possible, and prevents the corresponding data from being deleted (S370). Modification requests for data stored in logical storage can be processed in the same way.
데이터 삭제나 수정 외에 기타 다른 동작의 요청이 있는 경우에는(S380), 제어부(150)는 이에 대응하는 동작이 수행되도록 한다(S390). When there is a request for an operation other than data deletion or correction (S380), the
이와 같이 데이터 보존 기간의 경과 여부를 시스템 시간과 별도로 운영되 독립 시간을 기준으로 판단하게 함으로써, 관리자 권한을 가진 사용자라도 시스템 시간의 변경을 통해 정해진 보존 기간을 무시하고 데이터를 삭제하거나 위변조하는 것을 방지할 수 있다. In this way, by determining whether the data retention period has elapsed based on independent time that is operated separately from the system time, even users with administrator rights can avoid deleting or forging data by ignoring the set retention period by changing the system time can do.
도 4는 본 발명에 따른 데이터 관리 방법에서 독립 시간의 설정 과정에 대한 설명에 제공되는 흐름도이다.4 is a flowchart provided to explain a process of setting an independent time in a data management method according to the present invention.
도 4를 참조하면, 먼저, 초기 독립 시간을 현재 시스템 시간으로 설정한다(S321). 그리고, 독립적으로 운영되는 독립 시간을 소정 주기로 업데이트 하는 단위 주기 시간과, 상황에 따라 독립 시간을 미세 보정할 수 있는 추가 보정 시간을 설정한다(S322). 예컨대, 단위 주기 시간은 60초, 추가 보정 시간은 1초와 같이 설정할 수 있다.Referring to FIG. 4 , first, the initial independent time is set as the current system time (S321). Then, a unit cycle time for updating the independently operated independent time at a predetermined cycle and an additional correction time for finely correcting the independent time according to circumstances are set ( S322 ). For example, the unit cycle time may be set to 60 seconds, and the additional correction time may be set to 1 second.
다음으로 소정 단위 주기로 신호를 발생하여 소정 단위 주기가 도래하였음을 알려주는 타이머 프로세스를 설정하고(S323), 설정된 타이머 프로세스를 실행한다, (S324).Next, a timer process for notifying that a predetermined unit period has arrived by generating a signal at a predetermined unit period is set (S323), and the set timer process is executed (S324).
이와 같은 과정에 의해, 시스템 시간과 독립적으로 운영되는 독립 시간을 설정하여 운영할 수 있다. 독립 시간의 업데이트는 미리 설정되고 비밀이 보장되는특수 사용자 아이디의 사용 권한을 통해서만 실행되도록 구성된다.By this process, it is possible to set and operate an independent time that is operated independently of the system time. Independent time updates are configured to run only through the permissions of a special user ID that is preset and confidential.
도 5는 본 발명에 따른 데이터 관리 방법에서 독립 시간의 업데이트 과정에 대한 설명에 제공되는 흐름도이다.5 is a flowchart provided to explain an independent time update process in a data management method according to the present invention.
도 5를 참조하면, 타이머 프로세스를 통해 전달된 신호에 따라 소정 단위 주기가 도래한 것으로 인식되면(S331), 독립 시간을 업데이트할 수 있는 권한을 가진 특수 사용자 아이디(ID)로 사용자 권한을 전환한다(S332). 이 특수 사용자 아이디는 사전에 정의된 비밀 아이디이며, 독립 시간을 운영 관리하는 프로세스 및 업데이트를 수행하는 운영체제 등의 내부 코드에 내장되어 있어, 외부에서 이를 변경할 방법을 원천적으로 차단하도록 구성된다. Referring to FIG. 5 , when it is recognized that a predetermined unit period has arrived according to a signal transmitted through the timer process (S331), the user authority is switched to a special user ID (ID) having the authority to update the independent time. (S332). This special user ID is a pre-defined secret ID, and is built into the internal code of the operating system that performs the update and the process of operating and managing independent time, so it is configured to fundamentally block the way to change it from the outside.
특수 사용자 아이디로 전환한 후, 일단 독립 시간과 단위 주기 시간을 합산한 시간을 잠정 업데이트 시간으로 설정한다(S333).After switching to the special user ID, once the sum of the independent time and the unit cycle time is set as the provisional update time (S333).
그리고, 잠정 업데이트 시간과 현재 시스템 시간을 비교하여, 잠정 업데이트 시간이 현재 시스템 시간보다 큰 경우(S334), 잠정 업데이트 시간은, '현재 독립 시간 + 단위 주기 시간 - 추가 보정 시간'으로 설정한다(S335).Then, by comparing the provisional update time with the current system time, if the provisional update time is greater than the current system time (S334), the provisional update time is set to 'current independent time + unit cycle time - additional correction time' (S335) ).
잠정 업데이트 시간이 현재 시스템 시간보다 작은 경우(S336), 잠정 업데이트 시간은, '현재 독립 시간 + 단위 주기 시간 + 추가 보정 시간'으로 설정한다(S337).When the provisional update time is smaller than the current system time (S336), the provisional update time is set to 'current independent time + unit cycle time + additional correction time' (S337).
그리고, 업데이트 할 새로운 독립 시간은 잠정 업이트 시간으로 설정한다(S338). 즉, 잠정 업데이트 시간이 현재 시스템 시간과 같은 경우에는 새로운 독립 시간은 기존 독립 시간에 단위 주기 시간을 합산한 시간으로 설정하고, 잠정 업데이트 시간이 현재 시스템 시간보다 크거나 작은 경우에는 새로운 독립 시간은 기존 독립 시간에 단위 주기 시간을 합산한 시간에 추가 보정 시간을 가감한 시간으로 설정한다. Then, a new independent time to be updated is set as a provisional update time (S338). That is, if the interim update time is the same as the current system time, the new independent time is set as the sum of the unit cycle time and the existing independent time. If the interim update time is greater or less than the current system time, the new independent time is Set the time by adding or subtracting the additional correction time to the time in which the unit cycle time is added to the independent time.
이와 같은 과정에 의해, 특수 사용자 아이디의 사용자 권한을 통해 독립 시간이 업데이트되며, 추가 보정 시간을 통해 미세 조정도 가능하게 된다. Through this process, the independent time is updated through the user authority of the special user ID, and fine adjustment is also possible through the additional correction time.
그리고, 시스템 시간과 현재 시스템 시간의 차이가 미리 설정된 기준을 벗어나는 경우에는, 시스템 시간이 변조된 것으로 파악하여, 경고 메시지를 표시하거나 미리 설정된 사용자에게 통보하도록 구성할 수도 있다. In addition, when the difference between the system time and the current system time is out of a preset standard, the system time may be determined to be altered, and a warning message may be displayed or a preset user may be notified.
한편, 본 발명에 따른 데이터 관리 방법은 상기한 바와 같이 설명된 실시예들의 구성에 한정되게 적용될 수 있는 것이 아니라, 상기한 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.On the other hand, the data management method according to the present invention can not be applied limitedly to the configuration of the described embodiments as described above, but all or part of each embodiment is selectively applied to the above-described embodiments so that various modifications can be made. It may be configured in combination.
또한, 본 발명은 프로그램 가능한 컴퓨터상에서 컴퓨터 프로그램으로 구현 가능하다. 이러한 컴퓨터는 프로세서, 저장장치, 입력장치, 출력 장치를 포함할 수 있다. 본 발명에서 설명한 내용을 구현하기 위해 프로그램 코드는 마우스 또는 키보드 입력장치로 입력될 수 있다. 이러한 프로그램들은 고차원적인 언어나, 객체지향적인 언어로 구현될 수 있다. 또한 어셈블리나 기계어 코드로 구현된 컴퓨터 시스템으로도 구현될 수 있다. In addition, the present invention can be implemented as a computer program on a programmable computer. Such a computer may include a processor, a storage device, an input device, and an output device. In order to implement the contents described in the present invention, the program code may be input with a mouse or keyboard input device. These programs can be implemented in a high-level language or an object-oriented language. It can also be implemented as a computer system implemented in assembly or machine code.
또한, 본 발명의 내용은 하드웨어나 소프트웨어 사용에만 국한되지는 않으며, 다른 어떤 컴퓨팅 또는 처리 환경에 대해서도 적용 가능하다. 본 발명에서 설명하는 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 본 발명은 회로를 사용하여 구현될 수 있다. 즉, 한 개 이상의 프로그램 가능한 논리회로, 즉 ASIC(application specific integrated circuit) 또는 논리회로(AND, OR NAND gates) 또는 프로세싱 장치(예컨대, 마이크로 프로세서, 콘트롤러)로 구현가능하다. In addition, the content of the present invention is not limited to the use of hardware or software, and is applicable to any other computing or processing environment. It may be implemented by hardware, software, or a combination of hardware and software described in the present invention. The present invention can be implemented using circuits. That is, it may be implemented as one or more programmable logic circuits, that is, an application specific integrated circuit (ASIC) or logic circuits (AND, OR NAND gates) or a processing device (eg, a microprocessor, a controller).
본 발명은 프로세서가 읽을 수 있는 기록매체에 프로세서가 읽을 수 있는 코드로서 구현하는 것도 가능하다. 프로세서가 읽을 수 있는 기록매체는 프로세서에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 프로세서가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한 프로세서가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 프로세서가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can also be implemented as processor-readable codes on a processor-readable recording medium. The processor-readable recording medium includes all types of recording devices in which data readable by the processor is stored. Examples of the processor-readable recording medium include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage device. In addition, the processor-readable recording medium is distributed in a network-connected computer system, so that the processor-readable code can be stored and executed in a distributed manner.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.In addition, although preferred embodiments of the present invention have been illustrated and described above, the present invention is not limited to the specific embodiments described above, and the technical field to which the present invention belongs without departing from the gist of the present invention as claimed in the claims In addition, various modifications may be made by those of ordinary skill in the art, and these modifications should not be individually understood from the technical spirit or perspective of the present invention.
100 : 데이터 저장 시스템 110 : 통신부
120 : 메모리 130 : 스토리지 인터페이스부
140 : 스토리지 장치 150 : 제어부
200 : 클라이언트 기기100: data storage system 110: communication unit
120: memory 130: storage interface unit
140: storage device 150: control unit
200: client device
Claims (10)
상기 논리적 저장소에 저장되는 데이터에 대한 보존 기간을 설정하는 단계;
상기 논리적 저장소에 저장된 데이터에 대한 삭제 요청시, 상기 시스템 시간 대신 상기 독립 시간을 기준으로 상기 보존 기간의 경과 여부를 판단하는 단계; 및
상기 판단 결과, 상기 보존 기간이 경과되지 않은 경우에는 상기 삭제 요청을 불허하고 에러 메시지를 전송하며, 상기 보존 기간이 경과된 경우에는 상기 삭제 요청된 데이터를 삭제하는 단계를 포함하며,
상기 독립 시간은, 소정 단위 주기로 동작하는 타이머 프로세스의 신호에 따라, 상기 소정 단위 주기마다 사용 권한이 미리 설정된 특수 사용자 아이디로 전환되어 업데이트되는 것을 특징으로 하는 데이터 관리 방법. When a logical storage is created in a storage device, setting and operating an independent time independent of the system time in units of the logical storage;
setting a retention period for data stored in the logical storage;
determining whether the retention period has elapsed based on the independent time instead of the system time when a deletion request for data stored in the logical storage is requested; and
As a result of the determination, if the retention period has not elapsed, disallowing the deletion request and transmitting an error message, and deleting the requested deletion data if the retention period has elapsed;
The independent time period is updated by switching to a special user ID whose usage right is set in advance at each predetermined unit period according to a signal of a timer process operating in a predetermined unit period.
상기 독립 시간의 업데이트 과정은,
현재 독립 시간과 상기 단위 주기 시간을 합산한 시간을 잠정 업데이트 시간으로 설정하는 단계;
상기 잠정 업데이트 시간과 현재 시스템 시간을 비교하는 단계;
상기 잠정 업데이트 시간과 상기 현재 시스템 시간이 같은 경우, 상기 잠정 업데이트 시간을 새로운 독립 시간으로 업데이트하는 단계; 및
상기 잠정 업데이트 시간과 상기 현재 시스템 시간이 다른 경우, 상기 잠정 업데이트 시간에 소정 추가 보정 시간을 가감한 시간을 상기 새로운 독립시간으로 업데이트하는 단계를 포함하는 데이터 관리 방법. According to claim 1,
The independent time update process is
setting a sum of the current independent time and the unit cycle time as a provisional update time;
comparing the provisional update time with a current system time;
updating the provisional update time to a new independent time when the provisional update time and the current system time are the same; and
and updating a time obtained by adding or subtracting a predetermined additional correction time to the provisional update time to the new independent time when the provisional update time is different from the current system time.
상기 논리적 저장소에 저장된 데이터에 대한 수정 요청시, 상기 시스템 시간 대신 상기 독립 시간을 기준으로 상기 보존 기간의 경과 여부를 판단하여, 상기 보존 기간이 경과되지 않은 경우에는 상기 수정 요청을 불허하고, 에러 메시지를 전송하는 단계를 더 포함하는 데이터 관리 방법.According to claim 1,
When a modification request for data stored in the logical storage is requested, it is determined whether the retention period has elapsed based on the independent time instead of the system time, and if the retention period has not elapsed, the modification request is rejected, and an error message Data management method further comprising the step of transmitting.
메모리;
제어부; 및
상기 메모리에 저장되어 상기 제어부에 의해 실행되는 하나 이상의 모듈을 포함하며, 상기 모듈은
상기 스토리지 장치에 논리적 저장소 생성시, 상기 논리적 저장소 단위로 시스템 시간에 독립적인 독립 시간을 설정하여 운영하는 과정;
상기 논리적 저장소에 저장되는 데이터에 대한 보존 기간을 설정하는 과정;
상기 논리적 저장소에 저장된 데이터에 대한 삭제 요청시, 상기 시스템 시간 대신 상기 독립 시간을 기준으로 상기 보존 기간의 경과 여부를 판단하는 과정; 및
상기 판단 결과, 상기 보존 기간이 경과되지 않은 경우에는 상기 삭제 요청을 불허하고 에러 메시지를 전송하며, 상기 보존 기간이 경과된 경우에는 상기 삭제 요청된 데이터를 삭제하는 과정을 포함하는 데이터 저장 시스템.storage device;
Memory;
control unit; and
one or more modules stored in the memory and executed by the control unit, the modules comprising:
setting and operating an independent time independent of system time in units of the logical storage unit when the logical storage is created in the storage device;
setting a retention period for data stored in the logical storage;
determining whether the retention period has elapsed based on the independent time instead of the system time when a deletion request for data stored in the logical storage is requested; and
and disallowing the deletion request and transmitting an error message when the retention period has not elapsed, as a result of the determination, and deleting the requested data when the retention period has elapsed.
상기 메모리에는 상기 스토리지 장치에 디렉토리 및 파일을 계층적 구조로서 논리적으로 구성하는 파일 시스템을 구현하는 스토리지 오페레이팅부가 설치되는 것을 특징으로 하는 데이터 저장 시스템. 8. The method of claim 7,
The data storage system according to claim 1, wherein a storage operating unit for implementing a file system logically configuring directories and files in the storage device as a hierarchical structure is installed in the memory.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190148344A KR102439075B1 (en) | 2019-11-19 | 2019-11-19 | Data managent method for avoiding evasion the retention period set in data through reference time falsification in data storage system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190148344A KR102439075B1 (en) | 2019-11-19 | 2019-11-19 | Data managent method for avoiding evasion the retention period set in data through reference time falsification in data storage system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210060852A KR20210060852A (en) | 2021-05-27 |
KR102439075B1 true KR102439075B1 (en) | 2022-09-01 |
Family
ID=76135576
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190148344A KR102439075B1 (en) | 2019-11-19 | 2019-11-19 | Data managent method for avoiding evasion the retention period set in data through reference time falsification in data storage system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102439075B1 (en) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101954421B1 (en) * | 2016-10-11 | 2019-03-06 | 임장식 | Method for preventing real-time alteration of the data in WORM storage device based on hard disk or SSD |
-
2019
- 2019-11-19 KR KR1020190148344A patent/KR102439075B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR20210060852A (en) | 2021-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11334562B2 (en) | Blockchain based data management system and method thereof | |
EP1946238B1 (en) | Operating system independent data management | |
US9165155B2 (en) | Protecting the integrity and privacy of data with storage leases | |
US20130179649A1 (en) | Offload Read and Write Offload Provider | |
WO2015074512A1 (en) | Method and apparatus for accessing physical resources | |
US10783041B2 (en) | Backup and recovery of data files using hard links | |
US11403180B2 (en) | Auxiliary storage device having independent recovery area, and device applied with same | |
CN108351922B (en) | Method, system, and medium for applying rights management policies to protected files | |
US9646170B2 (en) | Secure endpoint file export in a business environment | |
KR20180017028A (en) | Technologies for data monitoring to mitigate migration problems in object-oriented contexts | |
CN107729777A (en) | A kind of safety encryption solid-state storage method | |
KR101954421B1 (en) | Method for preventing real-time alteration of the data in WORM storage device based on hard disk or SSD | |
KR102439075B1 (en) | Data managent method for avoiding evasion the retention period set in data through reference time falsification in data storage system | |
KR102338774B1 (en) | Data protection method to prevent data leakage and corruption by preventing file contents from being read and written at the kernel level of the storage operating system | |
US11630809B2 (en) | Method and system for using micro objects | |
US11762806B2 (en) | Hardening system clock for retention lock compliance enabled systems | |
KR100911345B1 (en) | Method and apparatus for contents security | |
CN114626084A (en) | Secure smart container for controlling access to data | |
KR102403127B1 (en) | Data protection method to fundamentally prevent the reading and writing of file contents during the read time limit specified in the file at the kernel level of the storage operating system | |
US20110010559A1 (en) | Method for encrypting digital file, method for decrypting digital file, apparatus for processing digital file and apparatus for converting encryption format | |
CN108063771B (en) | Method and device for monitoring encrypted compressed file | |
KR20200077935A (en) | An apparatus for assuring integrity of log data and method thereof | |
KR102412979B1 (en) | Data managent method for preventing alteration of the data in real-time video data storage system | |
KR100901014B1 (en) | Apparatus and method for running application in virtual environment | |
US20240020396A1 (en) | System and method for securing diagnostic data collection using dual encryption |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |