KR101110293B1 - 파일 저장 장치의 파티션 액세스 제어 방법 및 제어 장치, 그 기록매체 - Google Patents

파일 저장 장치의 파티션 액세스 제어 방법 및 제어 장치, 그 기록매체 Download PDF

Info

Publication number
KR101110293B1
KR101110293B1 KR1020110099286A KR20110099286A KR101110293B1 KR 101110293 B1 KR101110293 B1 KR 101110293B1 KR 1020110099286 A KR1020110099286 A KR 1020110099286A KR 20110099286 A KR20110099286 A KR 20110099286A KR 101110293 B1 KR101110293 B1 KR 101110293B1
Authority
KR
South Korea
Prior art keywords
partition
information
storage device
file storage
user
Prior art date
Application number
KR1020110099286A
Other languages
English (en)
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 KR1020110099286A priority Critical patent/KR101110293B1/ko
Application granted granted Critical
Publication of KR101110293B1 publication Critical patent/KR101110293B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • 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/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 파일 저장 장치의 파티션 액세스 제어 방법 및 제어 장치, 그 기록매체에 관한 것이다.
본 발명은 일실시예에 따를 때, 컴퓨터에 내장 또는 외장 방식으로 연결되며, 적어도 2 이상의 파티션으로 분할된 파일 저장 장치의 파티션 액세스를 컴퓨터에서 제어하는 방법으로서, (a) 마스터 부트 레코드의 파티션 테이블에 저장된 주 파티션에 관한 파티션 정보와, 상기 파일 저장 장치의 소정 섹터에 저장된 다른 파티션에 관한 파티션 정보를 사용자가 액세스 및 변경이 가능한 상태로 유지하는 단계- 상기 파티션 정보는 파티션의 시작 주소 및 마지막 주소, 크기 중 적어도 하나를 포함하는 정보임-; (b) 주 파티션을 변경하는 것으로 사용자의 파티션 액세스 변경 정보가 입력된 경우, 주 파티션으로 선택된 파티션에 대한 파티션 정보를 상기 파일 저장 장치의 소정 섹터로부터 로드하고, 이전의 주 파티션 정보를 대체하여 마스터 부트 레코드의 파티션 테이블에 저장 및 유지하는 단계; 및 (c) 상기 파일 저장 장치의 소정 섹터에 상기 (b) 단계에서 주 파티션으로 선택된 파티션 이외의 다른 파티션에 관한 파티션 정보를 저장하고 유지하는 단계;를 포함하여 구성된다.

Description

파일 저장 장치의 파티션 액세스 제어 방법 및 제어 장치, 그 기록매체 {Partition Access Control Method and Device for File Storage Device and Recording medium therefor}
본 발명은 파일 저장 장치의 파티션 액세스 제어 방법 및 제어 장치, 그 기록매체에 관한 것으로서, 다수개의 파티션으로 분할된 하드디스크 드라이브와 같은 파일 저장 장치에 있어서, 액세스 가능하도록 지정된 파티션 만이 파일 저장 장치에 존재하는 것처럼 일반 사용자에게 인식될 수 있도록 마스터 부트 레코드(MBR)의 파티션 정보를 제어하여, 파티션 별로 저장된 파일에 대한 접근 보안성을 높일 수 있도록 구성된 파일 저장 장치의 파티션 액세스 제어 방법 및 제어 장치, 그 기록매체에 관한 것이다.
컴퓨터에서 사용되는 하드디스크 드라이브와 같은 파일 저장 장치는 일반적으로 2개 이상의 서로 다른 파티션(partition)으로 분할되어 특정 데이터나 프로그램의 파일이 구분되어 저장된다. 예를 들면, 마이크로소프트 WINDOWS 운영체계를 이용하는 컴퓨터의 경우, 하나의 하드디스크 드라이브가 복수의 파티션으로 분할되어, 하나의 파티션은 WINDOWS 운영체계를 포함하는 프라이머리 파티션으로 사용되고, 다른 파티션은 다양한 유틸리티나 기타 응용 프로그램, 각종 데이터 파일을 포함하는 유틸리티 파티션으로 사용될 수 있다.
이러한 파티션은 하나의 물리적 디스크를 몇 개의 영역으로 나누어 관리할 수 있도록 하는 것으로서, 상기와 같이 파일별 특성에 따라 분리 저장할 수 있도록 사용되기도 하고, 운영체제가 여러 가지인 경우 각각의 고유 파일 시스템(예를 들어, FAT16, FAT32, NTFS 등)을 고유의 영역에 독립적으로 유지할 수 있도록 사용되기도 한다. 이러한 경우, 하나의 파티션이 손실되더라도 다른 파티션 영역은 손실로부터 보호할 확률이 높다는 장점을 갖게 된다.
도 1은 일반적인 파일 저장 장치의 구조를 나타낸 개념도, 도 2는 일반적인 마스터 부트 레코드와 파티션 테이블의 구조를 나타낸 개념도이다.
마스터 부트 레코드(MBR, 100)는 운영체계(OS)가 어디에, 어떻게 위치해 있는지를 식별하여 컴퓨터의 주기억장치(RAM)에 적재될 수 있도록 하기 위한 정보로서, 하드디스크 드라이브나 부팅 디스켓의 첫 번째 섹터(Sector)에 저장된다.
마스터 부트 레코드(100)는 또한 "파티션 섹터" 라고도 불리는데, 이는 하드디스크가 포맷될 때 나뉘어지는 각 파티션(300, 400, 500)의 위치 및 크기에 관한 정보를 파티션 테이블(Partion Table, 104)에 저장하고 있기 때문이다.
한편, 마스터 부트 레코드(100)는 주기억장치에 적재될 운영체계가 저장되어 있는 프라이머리 파티션의 파티션 부트 레코드(PBR, 302 또는 402, 502)를 읽을 수 있는 프로그램(Bootloader, 102)을 포함하고 있는데, 파티션 부트 레코드(302 또는 402, 502)에는 다시 운영체계의 나머지 부분들을 메모리에 적재시키는 프로그램을 저장하고 있다.
마스터 부트 레코드(100)는 MBR 파티션 테이블 스키마에 따라 파티션 테이블(104)의 파티션(300, 400, 500)들 중에서 액티브 플래그가 있는 1개의 파티션을 찾아서 그 파티션의 부트 레코드를 읽고 실행한다.
마스터 부트 레코드와 파티션 테이블의 구조를 도 2를 참조하여 보다 상세하게 살펴 본다.
마스터 부트 레코드는 1개의 섹터로 보통 구성되는데, 그 크기는 통상 512 바이트이다. 이 512 바이트 중에서 처음 446 바이트는 운영체제를 읽어들이기 위한 프로그램(Bootloader)이 저장되어 있으며, 나머지 64 바이트가 파티션에 대한 정보를 담아두는 파티션 테이블이다. 마지막 2 바이트는 마스터 부트 레코드가 맞는지 확인하기 위한 예약값으로 기록되어 있다. 즉, 446 + 64 + 2 의 구조를 가지고 있다. 파티션 1개의 정보를 저장하기 위하여 16 바이트의 영역이 소요되는데, 총 64 바이트가 파티션 테이블로 할당되므로, 확장 파티션이 사용되지 않는 일반적인 경우에는 총 4 개(=64/16)의 파티션으로 분할될 수 있다.
도 2의 'Partion flag'는 해당 파티션이 액티브 상태인지 여부를 나타내는 플래그이며, 'CHS' 부분은 실린더/헤드/섹터에 의한 주소 매핑 영역을 나타내고, 'LBA' 부분은 논리 블록 주소 지정(Logical Block Addressing) 방식에 의한 주소 매핑 영역을 나타낸다.
그러나, 종래의 하드디스크 드라이브의 경우, 파티션된 각 영역들이 컴퓨터를 사용하는 불특정의 사용자에게 노출되기 때문에- 여기서, 노출이란, 컴퓨터에서 하드디스크 드라이브의 파티션된 전체 영역들을 특별한 제한 없이 액세스할 수 있다는 것을 의미함-, 제3자의 악의적인 파일 접근을 방지하는데 한계가 있었다.
예를 들어, 하나의 하드디스크 드라이브가 두 개의 영역으로 파티션 되어 있는 경우, 각각의 영역은 C:드라이브 및 D:드라이브로 인식되는데, 이때 두 영역은 특별한 보호 장치가 없이 노출되어 있으므로, 컴퓨터에서 디렉토리 명령어를 사용하여 두 영역을 탐색하는 것이 가능하다.
비록 두 영역 중의 하나의 속성을 읽기 불능 혹은 쓰기 불능으로 설정할 수 있다고 하더라도, 해당 하드디스크 드라이브의 파티션 분할 상태는 여전히 파악될 수 있으므로, 해킹 등을 통한 제3자의 악의적인 파일 접근을 근본적으로 차단하는데에는 여전히 한계가 있었다.
본 발명은 상기와 같은 종래의 문제점을 감안하여 안출한 것으로서, 다수개의 파티션으로 분할된 하드디스크 드라이브와 같은 파일 저장 장치에 있어서, 액세스 가능하도록 지정된 파티션 만이 파일 저장 장치에 존재하는 것처럼 일반 사용자에게 인식될 수 있도록 마스터 부트 레코드(MBR)의 파티션 정보를 제어하여, 파티션 별로 저장된 파일에 대한 접근 보안성을 높일 수 있도록 구성된 파일 저장 장치의 파티션 액세스 제어 방법 및 제어 장치, 그 기록매체를 제공하는 것을 그 목적으로 한다.
상기와 같은 목적을 달성하기 위한 본 발명의 일실시예는, 컴퓨터에 내장 또는 외장 방식으로 연결되며, 적어도 2 이상의 파티션으로 분할된 파일 저장 장치의 파티션 액세스를 컴퓨터에서 제어하는 방법으로서, (a) 마스터 부트 레코드의 파티션 테이블에 저장된 주 파티션에 관한 파티션 정보와, 상기 파일 저장 장치의 소정 섹터에 저장된 다른 파티션에 관한 파티션 정보를 사용자가 액세스 및 변경이 가능한 상태로 유지하는 단계- 상기 파티션 정보는 파티션의 시작 주소 및 마지막 주소, 크기 중 적어도 하나를 포함하는 정보임-; (b) 주 파티션을 변경하는 것으로 사용자의 파티션 액세스 변경 정보가 입력된 경우, 주 파티션으로 선택된 파티션에 대한 파티션 정보를 상기 파일 저장 장치의 소정 섹터로부터 로드하고, 이전의 주 파티션 정보를 대체하여 마스터 부트 레코드의 파티션 테이블에 저장 및 유지하는 단계; 및 (c) 상기 파일 저장 장치의 소정 섹터에 상기 (b) 단계에서 주 파티션으로 선택된 파티션 이외의 다른 파티션에 관한 파티션 정보를 저장하고 유지하는 단계;를 포함하여 구성된다.
본 발명의 다른 측면에 따르면, 상기 파일 저장 장치의 파티션 액세스 제어 방법의 각 단계를 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 제공된다.
본 발명의 또 다른 측면에 따른 일실시예는, 컴퓨터에 내장 또는 외장 방식으로 연결되며, 적어도 2 이상의 파티션으로 분할된 파일 저장 장치의 파티션 액세스를 제어하는 장치로서, 마스터 부트 레코드의 파티션 테이블에 저장된 주 파티션에 관한 파티션 정보와, 상기 파일 저장 장치의 소정 섹터에 저장된 다른 파티션에 관한 파티션 정보를 사용자가 액세스 및 변경이 가능한 상태로 유지하는 제1 수단; 주 파티션을 변경하는 것으로 사용자의 파티션 액세스 변경 정보가 입력된 경우, 주 파티션으로 선택된 파티션에 대한 파티션 정보를 상기 파일 저장 장치의 소정 섹터로부터 로드하고, 이전의 주 파티션 정보를 대체하여 마스터 부트 레코드의 파티션 테이블에 저장 및 유지하는 제2 수단; 및 상기 파일 저장 장치의 소정 섹터에 상기 제2 수단에서 주 파티션으로 선택된 파티션 이외의 다른 파티션에 관한 파티션 정보를 저장하고 유지하는 제3 수단;을 포함하여 구성된다.
본 발명에 따르면, 다수개의 파티션으로 분할된 하드디스크 드라이브와 같은 파일 저장 장치에서, 액세스 가능하도록 지정된 파티션 만이 일반 사용자에게 인식될 수 있도록 제어하므로, 파티션 별로 저장된 파일에 대한 접근 보안성을 높일 수 있다.
특히, 액세스 가능하도록 지정된 파티션에 관한 파티션 정보만을 마스터 부트 레코드(MBR)의 파티션 테이블에 유지하는 방식을 취하므로, 악의적인 사용자에 의해 마스터 부트 레코드 상의 파티션 테이블 내용이 노출되더라도, 액세스 가능한 파티션 이외의 다른 파티션 정보에 대하여는 접근 자체가 근원적으로 방지되는 장점이 있다.
또한, 파티션 테이블에 유지되는 주 파티션 이외의 파티션 정보는 사용자 인증을 통한 암호 해제에 의해서만 접근이 가능하고, 그 저장 위치도 액세스 제어 프로그램에서 지정한 소정 섹터가 되므로, 악의적인 사용자에 의한 접근을 더욱 차단하는 장점이 있다.
도 1은 일반적인 파일 저장 장치의 구조를 나타낸 개념도,
도 2는 일반적인 마스터 부트 레코드와 파티션 테이블의 구조를 나타낸 개념도,
도 3은 본 발명의 일실시예에 의한 파티션 액세스 제어 방법이 적용되어 파티션 액세스 제어 장치의 기능을 구현하는 컴퓨터의 구성도,
도 4a는 본 발명의 일실시예에 의한 파티션 액세스 제어 방법의 흐름도,
도 4b는 본 발명의 일실시예에 의한 최초 액세스 설정 과정에서의 파티션 액세스 제어 방법의 흐름도,
도 5는 본 발명의 일실시예에 의한 파티션 액세스 제어 방법이 적용된 파일 저장 장치의 구성도,
도 6은 본 발명의 또 다른 실시예에 의한 파티션 액세스 제어 방법이 적용되는 컴퓨터의 구성도,
도 7은 본 발명의 일실시예에 의한 액세스 제어 프로그램의 사용자 인터페이스의 화면 예,
도 8은 본 발명의 일실시예의 파티션 액세스 제어에 의한 특정 파티션 감춤 처리가 이뤄지지 않은 드라이브 상태를 나타낸 화면 예,
도 9는 본 발명의 일실시예의 파티션 액세스 제어에 의한 특정 파티션 감춤 처리가 이뤄진 드라이브 상태를 나타낸 화면 예,
도 10은 본 발명의 일실시예에 의하여 소정 섹터에 파티션 정보가 암호화되어 기록된 예를 나타낸 화면 예,
도 11은 본 발명의 일실시예에 의한 액세스 제어 프로그램의 구현을 위한 프로그램 코딩의 일부 예이다.
본 발명은 그 기술적 사상 또는 주요한 특징으로부터 벗어남이 없이 다른 여러가지 형태로 실시될 수 있다. 따라서, 본 발명의 실시예들은 모든 점에서 단순한 예시에 지나지 않으며 한정적으로 해석되어서는 안 된다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구비하다", "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 3은 본 발명의 일실시예에 의한 파티션 액세스 제어 방법이 적용되어 파티션 액세스 제어 장치의 기능을 구현하는 컴퓨터의 구성도이다.
본 발명의 일실시예가 적용되는 컴퓨터(100)는 프로세서(102), 주기억장치(RAM, 106), 유저 인터페이스(108), 파일 저장 장치(104) 등의 컴퓨팅 요소를 구비한 통상의 컴퓨터 시스템이 될 수 있으며, 본 실시예의 설명에 필요한 내용 이외에 이러한 컴퓨터 시스템의 통상적 구성에 대한 설명은 편의상 생략한다.
상기 파일 저장 장치(104)는 통상의 하드디스크 드라이브가 될 수 있으며, 동일한 원리의 마스터 부트 레코드 및 파티션 테이블 구조와 파일 시스템이 적용되는 파일 저장 장치라면, 도 6에 도시된 바와 같이, USB 등의 인터페이스를 통하여 외장형으로 연결된 외장형 하드디스크 드라이브 또는 USB 플래쉬 드라이브 등도 될 수 있다.
상기와 같은 통상의 컴퓨터(100)에 본 발명의 실시예를 구현하기 위한 파티션 액세스 제어 프로그램이 실행될 수 있으며, 이러한 액세스 제어 프로그램이 실행되는 상태의 컴퓨터(100)는 기능적 관점에서 파일 저장 장치에 대한 파티션 액세스 제어 장치로서 이해될 수 있다.
이러한 기능 관점의 구성에 따르면, 컴퓨터가 구비되고, 상기 컴퓨터에 내장 또는 외장 방식으로 연결되며 적어도 2 이상의 파티션으로 분할된 파일 저장 장치가 구비되며, 상기 파일 저장 장치의 파티션 액세스를 제어하는 제어 장치가 구비된 것으로 볼 수 있다.
상기 파티션 액세스 제어장치는, 마스터 부트 레코드의 파티션 테이블에 저장된 주 파티션에 관한 파티션 정보와, 상기 파일 저장 장치의 소정 섹터에 저장된 다른 파티션에 관한 파티션 정보를 사용자가 액세스 및 변경이 가능한 상태로 유지하는 제1 수단을 구비한다.
또한, 상기 파티션 액세스 제어장치는, 주 파티션을 변경하는 것으로 사용자의 파티션 액세스 변경 정보가 입력된 경우, 주 파티션으로 선택된 파티션에 대한 파티션 정보를 상기 파일 저장 장치의 소정 섹터로부터 로드하고, 이전의 주 파티션 정보를 대체하여 마스터 부트 레코드의 파티션 테이블에 저장 및 유지하는 제2 수단을 구비한다.
또한, 상기 파티션 액세스 제어장치는, 상기 파일 저장 장치의 소정 섹터에 상기 제2 수단에서 주 파티션으로 선택된 파티션 이외의 다른 파티션에 관한 파티션 정보를 저장하고 유지하는 제3 수단을 구비한다.
상기 각 수단에 따른 파티션 액세스 제어방법에 대하여 상세하게 설명한다. 도 4a는 본 발명의 일실시예에 의한 파티션 액세스 제어 방법의 흐름도, 도 5는 본 발명의 일실시예에 의한 파티션 액세스 제어 방법이 적용된 파일 저장 장치의 구성도, 도 6은 본 발명의 또 다른 실시예에 의한 파티션 액세스 제어 방법이 적용되는 컴퓨터의 구성도이다.
컴퓨터에 전원이 인가되면, 통상의 부팅 절차를 따라 파일 저장 장치의 마스터 부트 레코드의 파티션 테이블에 주 파티션으로 저장된 파티션을 통해 운영체계의 부팅이 이뤄진다.
부팅이 이뤄진 후, 컴퓨터에 내장된 프라이머리 파일 저장 장치(예, 하드디스크)의 파티션 액세스를 제어하고자 하거나, USB 인터페이스를 통해 접속된 별도의 외장형 파일 저장 장치(예, USB 하드디스크 드라이브, USB 플래쉬 드라이브)의 파티션 액세스를 제어하고자 하는 사용자는 액세스 제어 프로그램을 실행한다.
상기 액세스 제어 프로그램은 프라이머리 파일 저장 장치의 액세스 가능한 드라이브에 저장되어 있을 수 있으며, USB 인터페이스를 통해 접속된 별도의 외장형 파일 저장 장치, 또는 네트워크 인터페이스를 통해 연결된 외부 저장 장치에 저장되어 있을 수도 있다.
액세스 제어 프로그램이 실행되면, 파티션 액세스 제어를 요청하는 사용자에 대하여 정당한 사용자인지 여부를 인증하는 인증 처리(S100)가 이뤄진다. 이때, 사용자는 기 설정된 ID와 패스워드(또는 패스워드만)를 입력하는 방식으로 인증 처리를 할 수 있다. 파티션 액세스 제어를 처음 사용하는 사용자는 통상의 사용자 등록 절차를 통해 ID와 패스워드(또는 패스워드만)를 액세스 제어 프로그램의 사용자 인터페이스를 통해 등록할 수 있다. 사용자 등록 절차에 관한 설명은 후술한다.
한편, 상기 ID와 패스워드는 예를 들어, 특정 파티션에 할당되지 않은 상기 파일 저장 장치의 소정 섹터에 저장될 수 있다.
도 7은 본 발명의 일실시예에 의한 액세스 제어 프로그램의 사용자 인터페이스의 화면 예이다.
액세스 제어 프로그램의 실행(또는 실행 및 인증)에 의해, 마스터 부트 레코드의 파티션 테이블에 저장된 주 파티션에 관한 파티션 정보와, 상기 파일 저장 장치의 소정 섹터에 저장된 다른 파티션에 관한 파티션 정보를 사용자가 액세스 및 변경이 가능한 상태로 유지한다(S200).
여기서, 상기 주 파티션은 사용자 인증이 없는 일반적 사용 상태에서 액세스 가능한 상태로 유지되는 파티션으로 볼 수 있다. 또한, 상기 파티션 정보는 바람직하게는 파티션의 시작 주소 및 마지막 주소, 크기 중 적어도 하나를 포함하는 정보이다. 이러한 파티션 정보는 바람직하게는 논리 블록 주소 지정(Logical Block Addressing) 방식에 의한 주소 매핑 방식으로 정의될 수 있다.
주 파티션이 드라이브 C에 해당하는 파티션으로 설정되어 있는 경우, 파일 저장 장치는 도 5의 (A)와 같은 데이터 저장 상태를 갖는다. 즉, 마스터 부트 레코드(100)의 파티션 테이블(104)에는 주 파티션에 해당하는 C 드라이브 영역 파티션(300)에 관한 파티션 정보가 저장되어 있고, 파일 저장 장치의 소정 섹터(200)에는 다른 파티션(D,E 드라이브 영역 파티션, 400, 500)에 관한 정보가 저장 및 유지되고 있다.
상기 소정 섹터(200)는 액세스 제어 프로그램의 실행에 의해 지정될 수 있으며, 바람직하게는 마스터 부트 레코드 또는 특정 파티션에 할당되지 않은 파일 저장 장치의 소정 영역(섹터)이 될 수 있다.
윈도우 기반의 운영체계를 예로 들면, 마스터 부트 레코드는 통상적으로 0번 섹터에 해당하며, 파티션 분할 설정 시에 63번 섹터 및 그 이후 섹터가 파티션 영역으로 할당된다. 그러므로, 주 파티션이 아닌 다른 파티션에 관한 파티션 정보를 저장하는 상기 소정 섹터는 1~62번 섹터 중 엑세스 제어 프로그램(또는 그 사용자)에 의해 선택된 소정 섹터가 될 수 있다. 다만, 반드시 1~62번 섹터 내에서 상기 소정 섹터가 설정되는 것은 아니며, 실제 파일 저장이 이뤄지지 않는 파일 저장 장치의 가장 후단부 영역의 섹터가 상기 소정 섹터로 설정될 수도 있다. 마스터 부트 레코드가 위치한 0번 섹터가 아닌 통상적인 비 사용 영역 중 일부 섹터 영역을 상기 소정 섹터로 사용하게 되면, 악의적인 사용자에 의해 마스터 부트 레코드의 내용이 노출되더라도 다른 파티션 정보가 노출될 가능성이 거의 없다는 장점이 있다.
한편, 주 파티션이 아닌 다른 파티션이 2 이상인 경우에는 각 파티션 별 정보가 각각 별도의 섹터에 저장될 수 있다. 예를 들어, 주 파티션이 드라이브 C에 해당하는 파티션으로 설정되어 있고, 다른 파티션이 드라이브 D,E 영역의 파티션으로 설정되어 있다면, 드라이브 D의 파티션 정보는 2번 섹터, E의 파티션 정보는 3번 섹터에 저장될 수 있는 것이다. 이러한 섹터는 반드시 연속적인 주소를 가질 필요는 없다.
각 파티션 별 파티션 정보가 어느 섹터에 저장될 것인지는 엑세스 제어 프로그램(또는 그 사용자)에 의해 제어될 수 있다. 이렇게, 각 파티션 별 파티션 정보가 상기와 같이 각각의 섹터에 분리 저장되는 경우, 악의적인 사용자에 의한 파티션 정보 노출 가능성은 더욱 낮아지는 장점이 있다.
도 10은 본 발명의 일실시예에 의하여 소정 섹터에 파티션 정보가 암호화되어 기록된 예를 나타낸 화면 예로서, 파티션 정보가 암호화되어 첫 8 byte에 기록된 상태를 예시한다.
다음으로, 주 파티션을 변경하는 것으로 사용자의 파티션 액세스 변경 정보가 입력된 경우(S300), 주 파티션으로 선택된 파티션에 대한 파티션 정보를 상기 파일 저장 장치의 소정 섹터로부터 로드하고(S400), 이전의 주 파티션 정보를 대체하여 마스터 부트 레코드의 파티션 테이블에 저장 및 유지한다(S500).
이때, 바람직하게는, 액세스 제어 프로그램에 구비된 암호화/해제 루틴에 의해, 소정 섹터로부터 로드하는 파티션 정보는 암호 해제하여 로드하게 된다(S450). 이러한 암호화 알고리즘은 공지의 암호화 알고리즘(예, LZ(Lempel Ziv) 알고리즘) 또는 그 변형 알고리즘이 사용될 수 있으며, 상세한 설명은 생략한다.
다음으로, 상기 파일 저장 장치의 소정 섹터에 주 파티션으로 선택된 파티션 이외의 다른 파티션에 관한 파티션 정보를 저장하고 유지한다(S600).
이때, 주 파티션이 드라이브 D에 해당하는 파티션으로 새롭게 변경 설정되는 경우, 파일 저장 장치는 도 5의 (B)와 같은 데이터 저장 상태를 갖는다. 즉, 마스터 부트 레코드(100)의 파티션 테이블(104)에는 주 파티션에 해당하는 D 드라이브 영역 파티션(400)에 관한 파티션 정보가 저장되고, 파일 저장 장치의 소정 섹터(200)에는 다른 파티션(C,E 드라이브 영역 파티션, 300, 500)에 관한 정보가 저장 및 유지된다.
또한 이때, 바람직하게는, 액세스 제어 프로그램에 구비된 암호화/해제 루틴에 의해, 상기 파일 저장 장치의 소정 섹터에 저장되는 파티션 정보는 암호화하여 저장된다(S650).
이러한 과정 후에, 상기 파일 저장 장치의 물리적 또는 논리적 리플러깅, 또는 리부팅이 이뤄지게 되며(S700), 이후 상기 변경 선택된 주 파티션이 사용자에게 액세스 가능 상태로 유지된다(S800).
상기 파일 저장 장치의 리플러깅, 또는 리부팅은 사용자가 파일 저장 장치 또는 컴퓨터를 물리적으로 조작하여 이뤄질 수도 있으며, 바람직하게는 상기 파일 저장 장치의 논리적 리플러깅, 또는 리부팅은 액세스 제어 프로그램에 구비된 자동 리플러깅 또는 리부팅 루틴에 의해 이뤄질 수 있다. 이때, 리플러깅 또는 리부팅 전에 사용자의 확인 절차가 선택적으로 마련될 수도 있다.
한편, 상기와 같은 액세스 제어 프로그램은 예를 들어, 하드 디스크 드라이브와 같은 파일 저장 장치의 기록 내용을 읽어들이거나 또는 새로운 내용으로 기록 생성하기 위하여 운영체계에서 제공하는 공지의 API 레벨의 함수 또는 어플리케이션 레벨의 함수(예, 윈도우 운영체계의 CreateFile , ReadFile 함수 등)를 이용하여 구현될 수 있으며, 이에 대한 상세한 설명은 생략한다. 상기와 같이 API 레벨의 함수 또는 어플리케이션 레벨의 함수를 이용하여 액세스 제어 프로그램을 구현하는 경우, 하드웨어에 의존적인 드라이버 파일과 무관하게 액세스 제어가 이뤄질 수 있다는 장점이 있게 된다. 도 11은 본 발명의 일실시예에 의한 액세스 제어 프로그램의 구현을 위한 프로그램 코딩의 일부(파일 액세스) 예이다.
한편, 특정 파티션이 이미 주 파티션으로 설정된 상태를 기준으로 다른 파티션을 새로운 주 파티션으로 설정하는 경우는 상기 도 4a에 따른 실시예를 통해 설명되었다.
이하에서는 도 4b를 참조하여, 액세스 제어 프로그램의 구동에 의해 주 파티션을 최초 설정하는 과정을 설명한다. 도 4b는 본 발명의 일실시예에 의한 최초 액세스 설정 과정에서의 파티션 액세스 제어 방법의 흐름도이다.
액세스 제어 프로그램이 사용자의 조작에 의해 구동되면(S10), 사용자 UI를 통해 사용자는 전체 파일 저장 장치에서 분할하고자 하는 파티션 개수 및 크기를 설정하고(S20), 이에 따라 액세스 제어 프로프램의 실행에 의해 파티션 생성 및 운영체계(OS) 설치 또는 파일시스템 포맷을 분할 크기만큼 생성하는 단계가 이뤄진다(S30).
한편, 상기 S10 단계 이후에, 사용자가 ID와 패스워드(또는 패스워드만)를 설정 입력 및 등록하는 단계가 더 포함될 수 있으며, 이러한 입력 및 등록에 의해 이후의 파티션 액세스 설정 변경 조작 시에 상기 S100 단계의 인증 처리가 이뤄질 수 있다.
이후, 상기 생성된 파티션의 정보를 암호화하고 소정 섹터에 저장하며(S40), 파티션(또는 OS) 설치가 끝났는 지를 확인하면서(S50), 또 다른 파티션의 정보를 암호화하여 또 다른 소정 섹터에 저장하고(S80), 또 다른 파티션을 생성하여 운영체계(OS) 설치 또는 파일시스템 포맷을 하는 단계가 이뤄진다(S90).
이후, 원하는 부트(BOOT) 파티션 정보를 해당 소정 섹터에서 선택해 가져와서 마스터 부트 레코드의 첫번째 파티션 테이블에 쓰고 재 부팅하는 단계가 이뤄지고 종료된다(S60~S70).
상기 과정을 통해, 마스터 부트 레코드의 예를 들어, 첫번째 파티션 테이블에 주 파티션이 설정 및 저장되며, 하나 또는 둘 이상의 소정 섹터에 그 이외 파티션의 정보가 암호화하여 저장되어 유지되는 상태가 된다.
한편, 상기 단계 중 S20과 S30에서는 액세스 제어 프로그램에 의해 파티션 설정 및 운영체계(OS) 설치, 파일시스템 포맷이 새로이 이뤄지는 것으로 설명되었지만, 기존에 설정되어 있는 파티션 설정 자체를 변경하지 않거나 운영체계(OS) 설치 등을 새로이 하지 않으면서, S40 이하의 단계만 이뤄지도록 하는 것도 물론 가능하다.
한편, 상기 S60 단계는 상기 도 4a의 실시예와 유사한 형태의 세부 단계를 통해 이뤄질 수 있다.
도 8은 본 발명의 일실시예의 파티션 액세스 제어에 의한 특정 파티션 감춤 처리가 이뤄지지 않은 드라이브 상태를 나타낸 화면 예, 도 9는 본 발명의 일실시예의 파티션 액세스 제어에 의한 특정 파티션 감춤 처리가 이뤄진 드라이브 상태를 나타낸 화면 예이다.
도 8에서는 F 드라이브의 전체 용량이 3.73 GB인 것으로 사용자가 인식하게 되지만, 특정 파티션 감춤 처리가 이뤄진 후에는 F 드라이브의 전체 용량이 2.75 GB인 것으로 인식되어, 일반 사용자 입장에서는 감춤 처리된 영역의 파티션은 근원적으로 인식할 수 없으며, 파일 저장 장치의 용량 자체가 더 작은 것으로 인식된다는 것을 알 수 있다.
한편, 상기 실시예는 하드디스크를 예로 하여 설명되었지만, 운영체계(OS)가 논리적 관점에서 동일한 파일 저장 장치로 인식할 수 있다면, USB 플래쉬 드라이브 등 물리적으로 다른 특성을 갖는 파일 저장 장치도 상시 실시예와 동일한 원리로 파티션 액세스 제어가 이뤄질 수 있다.
본 발명의 실시예 들은 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터 판독가능 매체를 포함한다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
100: 마스터 부트 레코드
104: 파티션 테이블
200: 파티션 정보가 저장되는 소정 섹터
300, 400, 500: 파티션

Claims (10)

  1. 컴퓨터에 내장 또는 외장 방식으로 연결되며, 적어도 2 이상의 파티션으로 분할된 파일 저장 장치의 파티션 액세스를 컴퓨터에서 제어하는 방법으로서,
    (a) 마스터 부트 레코드의 파티션 테이블에 저장된 주 파티션에 관한 파티션 정보와, 상기 파일 저장 장치의 소정 섹터에 저장된 다른 파티션에 관한 파티션 정보를 사용자가 액세스 및 변경이 가능한 상태로 유지하는 단계- 상기 파티션 정보는 파티션의 시작 주소 및 마지막 주소, 크기 중 적어도 하나를 포함하는 정보임-;
    (b) 주 파티션을 변경하는 것으로 사용자의 파티션 액세스 변경 정보가 입력된 경우, 주 파티션으로 선택된 파티션에 대한 파티션 정보를 상기 파일 저장 장치의 소정 섹터로부터 로드하고, 이전의 주 파티션 정보를 대체하여 마스터 부트 레코드의 파티션 테이블에 저장 및 유지하는 단계; 및
    (c) 상기 파일 저장 장치의 소정 섹터에 상기 (b) 단계에서 주 파티션으로 선택된 파티션 이외의 다른 파티션에 관한 파티션 정보를 저장하고 유지하는 단계;를 포함하여 구성된 것을 특징으로 하는 파일 저장 장치의 파티션 액세스 제어 방법.
  2. 제1항에 있어서,
    상기 (a) 단계 이전에,
    (pa) 파티션 액세스 제어를 요청하는 사용자에 대하여 정당한 사용자인지 여부를 인증하는 단계;가 더 구비되며, 정당한 사용자인 것으로 인증된 경우에 상기 (a) 내지 (c) 단계가 실행되는 것을 특징으로 하는 파일 저장 장치의 파티션 액세스 제어 방법.
  3. 제2항에 있어서,
    상기 파일 저장 장치의 소정 섹터에 파티션 정보를 저장하는 경우에는 암호화하여 저장하며, 로딩하는 경우에는 암호 해제하여 로드하는 것을 특징으로 하는 파일 저장 장치의 파티션 액세스 제어 방법.
  4. 제1항에 있어서,
    상기 (c) 단계 이후에,
    상기 파일 저장 장치의 물리적 또는 논리적 리플러깅, 또는 리부팅이 이뤄진 후에, 상기 (b) 단계에서 변경 선택된 주 파티션이 사용자에게 액세스 가능 상태로 유지되는 것을 특징으로 하는 파일 저장 장치의 파티션 액세스 제어 방법.
  5. 제1항에 있어서,
    상기 소정 섹터는 마스터 부트 레코드 또는 특정 파티션에 할당되지 않은 파일 저장 장치의 소정 섹터인 것을 특징으로 하는 파일 저장 장치의 파티션 액세스 제어 방법.
  6. 제5항에 있어서,
    상기 소정 섹터는,
    상기 다른 파티션에 관한 파티션 정보가 2 이상인 경우에는 각 파티션 별 정보가 각각 별도의 섹터에 저장되도록 설정되는 것을 특징으로 하는 파일 저장 장치의 파티션 액세스 제어 방법.
  7. 제6항에 있어서,
    상기 2 이상의 소정 섹터는 연속적인 주소를 갖지 않는 것을 특징으로 하는 파일 저장 장치의 파티션 액세스 제어 방법.
  8. 제1항에 있어서,
    별도의 파일 저장 장치가 더 구비되며, 상기 (a) 내지 (c) 단계는 상기 별도의 저장 장치에 저장된 액세스 제어 프로그램에 의해 실행되는 것을 특징으로 하는 파일 저장 장치의 파티션 액세스 제어 방법.
  9. 제1항 내지 제8항 중의 어느 한 항에 따른 파티션 액세스 제어 방법을 컴퓨터에서 실행하기 위한 컴퓨터 프로그램이 기록된, 컴퓨터로 판독 가능한 기록 매체.
  10. 컴퓨터에 내장 또는 외장 방식으로 연결되며, 적어도 2 이상의 파티션으로 분할된 파일 저장 장치의 파티션 액세스를 제어하는 장치로서,
    마스터 부트 레코드의 파티션 테이블에 저장된 주 파티션에 관한 파티션 정보와, 상기 파일 저장 장치의 소정 섹터에 저장된 다른 파티션에 관한 파티션 정보를 사용자가 액세스 및 변경이 가능한 상태로 유지하는 제1 수단;
    주 파티션을 변경하는 것으로 사용자의 파티션 액세스 변경 정보가 입력된 경우, 주 파티션으로 선택된 파티션에 대한 파티션 정보를 상기 파일 저장 장치의 소정 섹터로부터 로드하고, 이전의 주 파티션 정보를 대체하여 마스터 부트 레코드의 파티션 테이블에 저장 및 유지하는 제2 수단; 및
    상기 파일 저장 장치의 소정 섹터에 상기 제2 수단에서 주 파티션으로 선택된 파티션 이외의 다른 파티션에 관한 파티션 정보를 저장하고 유지하는 제3 수단;을 포함하여 구성된 것을 특징으로 하는 파일 저장 장치의 파티션 액세스 제어 장치.
KR1020110099286A 2011-09-29 2011-09-29 파일 저장 장치의 파티션 액세스 제어 방법 및 제어 장치, 그 기록매체 KR101110293B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110099286A KR101110293B1 (ko) 2011-09-29 2011-09-29 파일 저장 장치의 파티션 액세스 제어 방법 및 제어 장치, 그 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110099286A KR101110293B1 (ko) 2011-09-29 2011-09-29 파일 저장 장치의 파티션 액세스 제어 방법 및 제어 장치, 그 기록매체

Publications (1)

Publication Number Publication Date
KR101110293B1 true KR101110293B1 (ko) 2012-02-15

Family

ID=45839995

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110099286A KR101110293B1 (ko) 2011-09-29 2011-09-29 파일 저장 장치의 파티션 액세스 제어 방법 및 제어 장치, 그 기록매체

Country Status (1)

Country Link
KR (1) KR101110293B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101409175B1 (ko) 2013-12-16 2014-06-20 주식회사 시큐브 스마트기기의 보안파일 접근 제어 장치 및 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050082064A (ko) * 2004-02-17 2005-08-22 삼성전자주식회사 하드디스크 드라이브의 분할 방법 및 이에 적합한하드디스크 드라이브
JP2007080105A (ja) 2005-09-15 2007-03-29 Ricoh Co Ltd システム起動方法、プログラム及びコンピュータシステム
KR20100040440A (ko) * 2008-10-10 2010-04-20 순천향대학교 산학협력단 이동형 저장 장치의 데이터 보호를 위한 보안 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050082064A (ko) * 2004-02-17 2005-08-22 삼성전자주식회사 하드디스크 드라이브의 분할 방법 및 이에 적합한하드디스크 드라이브
JP2007080105A (ja) 2005-09-15 2007-03-29 Ricoh Co Ltd システム起動方法、プログラム及びコンピュータシステム
KR20100040440A (ko) * 2008-10-10 2010-04-20 순천향대학교 산학협력단 이동형 저장 장치의 데이터 보호를 위한 보안 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101409175B1 (ko) 2013-12-16 2014-06-20 주식회사 시큐브 스마트기기의 보안파일 접근 제어 장치 및 방법

Similar Documents

Publication Publication Date Title
US9026683B1 (en) Command portal for executing non-standard storage subsystem commands
US8745277B2 (en) Command portal for securely communicating and executing non-standard storage subsystem commands
EP2335181B1 (en) External encryption and recovery management with hardware encrypted storage devices
JP4685038B2 (ja) 隠蔽領域管理装置および方法
JP5184041B2 (ja) ファイルシステム管理装置およびファイルシステム管理プログラム
US8417969B2 (en) Storage volume protection supporting legacy systems
JP7187362B2 (ja) ストレージ装置及び制御方法
JP2006236193A (ja) 起動プログラム実行方法、デバイス、記憶媒体及びプログラム
JP2007207239A (ja) セキュリティ応用のための柔軟性を有し保護されたアクセスを与える記憶装置
JP4620158B2 (ja) コンテンツ保護装置およびコンテンツ保護方法
US20130191636A1 (en) Storage device, host device, and information processing method
JP2013506910A (ja) ライトワンスリードメニー(worm)メモリデバイスの認証およびセキュアリング
JP2011086026A (ja) 情報記憶装置、情報記憶プログラム、そのプログラムを記録した記録媒体及び情報記憶方法
US8001348B2 (en) Method to qualify access to a block storage device via augmentation of the device's controller and firmware flow
US6961833B2 (en) Method and apparatus for protecting data in computer system in the event of unauthorized data modification
JP2014071887A (ja) 安全なリムーバブル大容量記憶装置
CN113316761B (zh) 自格式化数据存储设备
US20060085629A1 (en) Mapping a reset vector
US8001357B2 (en) Providing a single drive letter user experience and regional based access control with respect to a storage device
KR101110293B1 (ko) 파일 저장 장치의 파티션 액세스 제어 방법 및 제어 장치, 그 기록매체
US11132134B2 (en) Flexible over-provisioning of storage space within solid-state storage devices (SSDs)
WO2015162717A1 (ja) 計算機
CN105528307A (zh) 一种信息处理的方法及电子设备
ES2917252T3 (es) Establecimiento dinámico de una compatibilidad de sistemas de archivos en tiempo real
JP2008009503A (ja) データ保護方法及びデータ保護プログラム

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20141218

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180112

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190114

Year of fee payment: 8