KR100549644B1 - 저장공간의 운영효율성을 높인 가상 디스크를 이용한 응용프로그램 별 접근 통제시스템과 그 통제방법 - Google Patents

저장공간의 운영효율성을 높인 가상 디스크를 이용한 응용프로그램 별 접근 통제시스템과 그 통제방법 Download PDF

Info

Publication number
KR100549644B1
KR100549644B1 KR1020040097464A KR20040097464A KR100549644B1 KR 100549644 B1 KR100549644 B1 KR 100549644B1 KR 1020040097464 A KR1020040097464 A KR 1020040097464A KR 20040097464 A KR20040097464 A KR 20040097464A KR 100549644 B1 KR100549644 B1 KR 100549644B1
Authority
KR
South Korea
Prior art keywords
module
file
vsd
function
image file
Prior art date
Application number
KR1020040097464A
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 KR1020040097464A priority Critical patent/KR100549644B1/ko
Application granted granted Critical
Publication of KR100549644B1 publication Critical patent/KR100549644B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 로컬 네트워크(LAN) 또는 공용 PC 상에서 통합관리되는 데이터(프로그램 소스 또는 설계도 등이 담긴 파일)가 내부 인가자에 의해 유출되는 것을 방지하는 한편, 외부인의 접근은 차단되도록 된 접근 통제시스템에 관한 것으로, 하드디스크 상에 데이터저장을 위한 물리적인 지정이 이루어지지 않아 상기 하드디스크를 논리적으로 운영하는 파일시스템모듈에 의해 모든 데이터저장이 가능한 반면, 운영체제는 하드디스크 상에 일정공간만큼 데이터가 지정된 것으로 인식하여 인가된 어플리케이션모듈에 의해서만 상기 공간에 데이터를 물리적으로 지정할 수 있도록 하드디스크를 가상으로 점유하는 용량가변식 VSD이미지파일모듈과; 상기 용량가변식 VSD이미지파일모듈 내의 보안파일을 처리하는 VSD드라이브와; 상기 용량가변식 VSD이미지파일모듈과 VSD드라이브 간의 데이터 입출력을 암복호화 처리하는 암복호화모듈과; 상기 VSD드라이브를 통해 운영체제가 별도의 디스크볼륨이 생성된 것으로 인식시켜 상기 용량가변식 VSD이미지파일모듈 내 보안파일로의 접근을 처리하는 VSD파일시스템모듈과; 상기 어플리케이션 모듈에 의한 상기 디스크드라이브 및 VSD드라이브 내 파일로의 접근 시, 해당 작업이 진행되는 공간이 상기 디스크드라이브인가 VSD드라이브인가를 확인하고, 해당 파일로의 접근허가에 대한 어플리케이션 모듈의 인가여부를 판별하여 접근을 결정하는 접근통제장치가 포함된 것이다.

Description

저장공간의 운영효율성을 높인 가상 디스크를 이용한 응용 프로그램 별 접근 통제시스템과 그 통제방법{Control system for access classified application in virtual disk and Controling method thereof}
도 1은 본 발명에 따른 접근 통제시스템의 구동관계를 도시한 블럭도,
도 2는 본 발명에 따른 접근 통제시스템의 구성에 대한 일실시예를 도시한 블럭도,
도 3은 본 발명에 따른 접근 통제시스템의 가상 디스크 설정과정을 도시한 블럭도,
도 4a는 종래 시스템 서비스 테이블의 구동관계를 도시한 블럭도,
도 4b는 본 발명에 따른 접근 통제시스템에서 적용되는 시스템 서비스 테이블의 구동관계를 도시한 블럭도,
도 5는 도 4b의 구성에 따라 응용 프로그램(어플리케이션 모듈)에 의한 해당 파일의 접근 허가여부가 진행되는 플로우를 도시한 예제,
도 6a는 본 발명에 따른 접근 통제시스템에서 응용 프로그램을 통한 해당 파일의 읽기과정을 도시한 플로우차트,
도 6b는 본 발명에 따른 접근 통제시스템에서 응용 프로그램을 통한 해당 파일의 쓰기과정을 도시한 플로우차트,
도 7a는 본 발명에 따른 접근 통제시스템의 인스톨 이전 상태를 보이는 '내 컴퓨터' 창,
도 7b는 본 발명에 따른 접근 통제시스템의 인스톨 이후 상태를 보이는 '내 컴퓨터' 창.
도 8은 본 발명에 따른 접근 통제시스템의 가상 디스크가 파일로 인식되어지는 모습을 보이는 창,
도 9은 비인가된 어플리케이션 모듈을 통한 가상 디스크로의 접근시 그 시도가 거부됨을 보이는 창이다.
본 발명은 로컬 네트워크(LAN) 또는 공용 PC 상에서 통합관리되는 데이터(프로그램 소스 또는 설계도 등이 담긴 파일)가 내부 인가자에 의해 유출되는 것을 방지하는 한편, 외부인의 접근은 차단하도록 된 접근 통제시스템과 접근 통제방법에 관한 것이다.
기업 또는 공공기관 등은 외부로부터의 비인가된 접속을 통한 불법적인 정보유출을 차단하고 내부의 중요한 기밀과 정보를 보호하기 위하여 외부망과의 접속시 일정 요건을 갖추지 않은 사람의 접근을 막거나 데이터의 침입을 사전에 방지하기 위한 방화벽등을 설치하고 있다. 이러한 방화벽은 단순히 네트워크를 통한 외부침입을 차단하거나 외부 침입에 의해 방화벽이 해킹되면 침입사실을 탐지해 이에 대 응하기 위한 솔루션으로서, 각종 해킹 수법을 이미 자체적으로 내장하여 침입행동을 실시간으로 감지/제어할 수 있는 IDS(Intrusion Delection System, 침입탐지시스템)와 같은 수동적인 방어개념의 방화벽과, IDS와는 달리 지능적인 기능과 적극적으로 자동 대처하는 능동적인 기능이 합쳐진 개념으로서 공격 시그니처를 찾아내 네트워크에 연결된 기기에서 수상한 활동이 이뤄지는지를 감시하며 자동으로 모종의 조취를 취하여 중단시키는 IPS(Intrusion Prevention System)와 같은 공격적인 개념의 방화벽등이 있다. 하지만, 이러한 방화벽은 로컬 네트워크(LAN) 또는 PC로의 외부 침입자에 대한 응용일 뿐 내부 인가자가 정보를 유출하고자 하는 경우에는 막을 수 있는 방법은 아니었다.
따라서, 내부 인가자로부터 기업 또는 공공기관 내 중요한 정보의 공개를 차단하고 불법적인 유출을 막기 위해 상기 방화벽과는 다른 개념의 보안 시스템이 요구되었다.
이에, 종래에는 OS부팅과정 전의 바이오스(BIOS)에서 수행되는 패스워드 인증을 이용하여 해당 PC의 사용권한이 있는 자만이 패스워드 입력을 통해 부팅과정을 계속 진행시켜 이를 사용할 수 있도록 하거나, 로컬 네트워크(LAN)를 통한 메인서버로의 접근 시, 해당 DB에서는 보안이 요구되는 데이터만을 별도로 묶어 관리하면서 상기 DB로의 접근을 요청하는 클라이언트 PC가 상기 DB로의 접근이 인가된 것인가를 확인하여 접속여부를 결정하도록 하였다.
이외에도, 지문인식 및 홍채인식과 같은 별도의 생체인식장치를 통해 정당사용권자만이 보안이 요구되는 데이터가 저장된 DB에 접근할 수 있도록 하거나, PC 등을 사용할 수 있도록 하였다.
하지만, 내부 인가자에 대한 상술된 종래 기술은 사용이 허가된 인가자 스스로가 보안이 요구되는 데이터유출을 목적으로 하여 해당 DB 및 PC등을 사용할 수도 있으므로, 이들에 대한 데이터유출에 있어서는 무방비 상태로 남아있는 것이 현실이다. 또한, 기술의 복잡화, 세분화, 및 전문화가 진행되면서, 하나의 기술에 관련된 다수의 인가자에 의한 해당 데이터로의 접근 및 편집이 요구되므로, 근래에는 관련 데이터가 저장된 DB로의 접근에 제한을 두지않고 모든 내부 인가자가 상기 DB로 접근할 수 있도록 되거나, 보안이 요구되는 데이터와 그렇지 않은 데이터가 하나의 DB에 통합/관리되도록 하고 있다.
따라서, 내부 인가자에 의한 데이터유출을 방지하는 기술들의 요구와 더불어, 상기 생체인식장치와 같은 별도의 고가장비 추가 또는 패스워드입력 및 사용자인증과 같은 번거로운 확인절차 없이도 DB 또는 하드디스크에 통합관리되고 있는 데이터의 접근 및 편집과정이 간편하게 이루어질 수 있는 통제시스템과 통제방법이 필요시 되었다.
한편, 종래에는 기존 문서보안의 암호화 혹은 사용권한 부여의 경우 파일의 확장명에 의존하여 CAD나 프로그램 컴파일러처럼 여러 확장자와 임시파일을 생성하는 프로그램의 경우 해당 파일에 대한 암호화나 사용권한을 부여하기가 어렵다는 단점이 있었다.
이러한 종래 문제점을 해소하기 위해 하나의 하드디스크 내에 별도로 관리되는 보안공간을 두어 이곳에서 보안대상 파일만을 취급하도록 하는 발명이 본 출원 인에 의해 선출원(출원번호 ; 10-2004-0012380 ; 미공개)된 바 있다.
하지만, 상기 종래 발명은 한정된 디스크 공간에 별도의 보안공간을 두고, 인가된 응용프로그램 이외에는 상기 보안공간에 위치한 보안대상 파일을 처리할 수 없도록 하는 한편, 상기 비 인가된 응용프로그램은 상기 보안공간을 전혀 활용할 수 없도록 됨으로서, 비 인가된 응용프로그램이 실제로 활용할 수 있는 하드디스크 공간은 상기 보안공간을 제외한 나머지에 한정될 수 밖에 없는 문제가 있었다. 이는 하드디스크 저장공간에 대한 운영효율을 떨어뜨리는 문제를 낳았다.
이에 본 발명은 상기와 같은 문제를 해소하기 위해 안출된 것으로, 로컬 네트워크(LAN) 차원에서 하나의 DB를 통해 보안이 요구되는 데이터와 그렇지 않은 데이터가 통합관리되거나, 일반 PC 차원에서 하드디스크에 대한 물리적인 초기분할 없이 하나의 하드디스크를 통해 통합관리되는 데이터들 중, 상기 보안이 요구되는 데이터에 대한 접근 및 편집이 내부 인가자에게 요구하는 별도의 암호입력 또는 인증확인절차 없이도 자유롭게 이루어질 수 있고, 외부 침입자에 의한 해당 데이터의 유출 봉쇄는 물론, 내부 인가자를 통한 데이터 유출 또한 차단하여, 데이터로의 접근 및 이를 이용한 작업에는 지장을 주지 않으면서도 내부자에 의한 유출은 방지되는 가상 디스크를 이용한 응용 프로그램 별 접근 통제시스템과 그 통제방법을 제공함에 목적이 있다.
또한, 상술된 목적과 더불어 보안이 요구되는 파일을 개별적으로 암호화 또는 사용권한을 부여할 필요가 없는 접근 통제시스템과 그 통제방법을 제공함에 또 다른 목적이 있다.
또한, 상기 가상 디스크의 저장공간활용에 효율성을 높임으로서, PC 또는 네크워크 내에 각각 구성된 하드디스크 또는 데이터베이스의 운영효율을 높일 수 있는 접근 통제시스템과 그 통제방법을 제공함에 또 다른 목적이 있다.
상기의 목적을 달성하기 위한 본 발명은,
하드디스크 상에 데이터저장을 위한 물리적인 지정이 이루어지지 않아 상기 하드디스크를 논리적으로 운영하는 파일시스템모듈에 의해 모든 데이터저장이 가능한 반면, 운영체제는 하드디스크 상에 일정공간만큼 데이터가 지정된 것으로 인식하여 인가된 어플리케이션모듈에 의해서만 상기 공간에 데이터를 물리적으로 지정할 수 있도록 하드디스크를 가상으로 점유하는 용량가변식 VSD이미지파일모듈과;
상기 용량가변식 VSD이미지파일모듈 내의 보안파일을 처리하는 VSD드라이브와;
상기 용량가변식 VSD이미지파일모듈과 VSD드라이브 간의 데이터 입출력을 암복호화 처리하는 암복호화모듈과;
상기 VSD드라이브를 통해 운영체제가 별도의 디스크볼륨이 생성된 것으로 인식시켜 상기 용량가변식 VSD이미지파일모듈 내 보안파일로의 접근을 처리하는 VSD파일시스템모듈과;
상기 어플리케이션 모듈에 의한 상기 디스크드라이브 및 VSD드라이브 내 파일로의 접근 시, 해당 작업이 진행되는 공간이 상기 디스크드라이브인가 VSD드라이 브인가를 확인하고, 해당 파일로의 접근허가에 대한 어플리케이션 모듈의 인가여부를 판별하여 접근을 결정하는 접근통제장치;
가 포함된 저장공간의 운영효율성을 높인 가상 디스크를 이용한 응용 프로그램 별 접근 통제시스템이다.
상기의 목적을 달성하기 위하여 본 발명은,
하드디스크와, 디스크드라이브와, 파일시스템 모듈과, 어플리케이션 모듈과, 용량가변식 VSD이미지파일모듈과, VSD드라이브와, 암복호화모듈과, VSD파일시스템모듈과, 확장된 시스템 서비스 테이블과 확장된 서비스 테이블을 포함하는 접근통제장치로 된 접근 통제시스템을 통하여,
(a) 상기 어플리케이션 모듈이 선택적으로 인가되는 단계;
(b) 상기 어플리케이션 모듈에 의한 해당 파일로의 접근을 위해 운영체제로 함수가 호출되는 단계;
(c) 상기 운영체제에 의해 상기 함수가 상기 확장된 서비스 테이블로 제공되는 단계;
(d) 상기 확장된 서비스 테이블에서 상기 함수의 연산이 중지되도록 임의로 지정된 함수로 변경되는 단계;
(e) 상기 확장된 서비스 테이블에서 어플리케이션 모듈에 의한 상기 파일로의 접근공간이 상기 디스크드라이브인지 VSD드라이브인지가 확인되는 단계;
(f) 상기 (e)단계에서 디스크드라이브로 확인될 경우, 변경된 상기 함수가 연산이 가능하도록 복귀되어 상기 확장된 시스템 서비스 테이블로 제공되는 단계;
(g) 상기 (e)단계에서 VSD드라이브로 확인될 경우, 상기 어플리케이션 모듈의 접근이 인가된 것인가가 확인되는 단계;
(h) 상기 (g)단계에서 상기 어플리케이션 모듈이 인가된 것으로 확인될 경우, 변경된 상기 함수가 연산이 가능하도록 복귀되어 상기 확장된 시스템 서비스 테이블로 제공되는 단계;
(i) 상기 (g)단계에서 상기 어플리케이션 모듈이 비인가된 것으로 확인될 경우, 해당 함수의 연산이 중지되는 단계;
가 포함된 것을 특징으로 하는 가상 디스크를 이용한 응용 프로그램 별 접근 통제방법이다.
이하 본 발명을 첨부된 예시도면에 의거하여 상세히 설명한다.
도 1은 본 발명에 따른 접근 통제시스템의 구동관계를 도시한 블럭도인바, 이를 참조하여 설명한다.
본 발명에 따른 접근 통제시스템은, 내부 인가자의 접속 시 별도의 패스워드입력 또는 인증확인 절차와 같은 본인 확인과정없이도, 보안이 요구되는 데이터(이하 파일)에 대한 엑세스(여기서는 열기, 읽기, 쓰기 등의 작업수행을 위한 해당 파일에 대한 일렬의 연산처리 ; 이하 접근)가 가능한 응용 프로그램(이하 어플리케이션 모듈 ; A, A')을 선택적으로 인가시킴으로서, 인가된 어플리케이션모듈(A)에 의해서는 상기 파일에 대한 접근이 자유롭도록 하는 것이다.
한편, 하드디스크(서버급에서는 DB로 명명되지만, 여기서는 일반 PC의 하드디스크와 더불어 DB까지 포괄하는 상위 개념으로 통칭)를 물리적으로 분할하지 않고도 운영체제(OS)가 새로운 디스크드라이브가 생성된 것으로 인식하도록 하는 가상디스크(VD)를 설치하여, 인가된 어플리케이션 모듈(A ; 인가된 응용프로그램)과 비인가된 어플리케이션 모듈(A' ; 비인가된 응용프로그램)이 접근할 수 있는 디스크의 위치를 구분하였다. 상기 가상디스크(VD)에 대한 개념은 이하에서 보다 상세히 기술하겠다.
따라서, 도시된 바와 같이, 인가된 어플리케이션 모듈(A)은 보안이 요구되는 파일(이하 보안파일)만 저장된 상기 가상디스크(VD)로 접근하여 읽기 및 쓰기(R/W ; Read/Write)를 실행할 수 있는 반면, 비인가된 어플리케이션 모듈(A')의 경우에는 가상디스크(VD)에 저장된 보안파일에 대한 읽기 및 쓰기 모두 불가능하고(X), 가상디스크(VD) 이외의 일반디스크(ND)에 저장된 파일에 대해서는 읽기 및 쓰기를 실행할 수 있다.
한편, 인가된 어플리케이션 모듈(A)의 경우, 일반디스크(ND)에 저장된 파일에 대해 읽기는 가능하지만 쓰기는 실행할 수 없다. 이는 가상디스크(VD)에 저장되어 있는 보안파일이 외부로 유출되는 것을 막기 위함이다.
상기한 기능을 수행하기 위해 본 발명은 다음과 같은 구성을 이루고 있으며, 본 발명에 따른 접근 통제시스템의 구성에 대한 일실시예를 도시한 도 2를 통해 이를 좀더 상세히 기술한다.
본 발명에 따른 접근 통제시스템은, 하드디스크(10)와, 디스크드라이브(20) 와, 파일시스템 모듈(30)과, 어플리케이션 모듈(60)과, 용량가변식 VSD이미지파일모듈(41)과, VSD드라이브(42)와, 암복호화모듈(45)과, VSD파일시스템모듈(43)과, 접근통제장치(44)가 포함된 구조를 갖는다.
상기 하드디스크(10)는, 기본적으로 PC 또는 로컬 네트워크(LAN) 기반 하에 구동되는 각종 응용프로그램과 이 응용프로그램으로 처리되는 데이터들이 저장되며, 상기 데이터는 운영체제를 통해 파일형식으로 열람, 삭제 및 편집되어 관리된다. 해당 하드디스크(10)의 구체적인 물리적/화학적 구조 및 운영체제와의 작동관계에 있어서는 공지된 기술이므로 이에 대한 상세한 설명은 피하기로 한다.
상기 디스크 드라이브(20)는 하드디스크(20)와 운영체제(OS)를 매개한다. 필요에 따라 상기 하드디스크(20)를 분할해야할 때가 있다. 이때, 상기 디스크 드라이브(20)는 하드디스크(20)의 포맷을 통해 운영체제(OS)에서 인식하게 되는 하나이상의 디스크볼뮴을 포함하게 되며, 운영체제(OS)는 상기 디스크볼륨을 개별 디스크로 인식하여 관리하게 된다.
상기 디스크 드라이브(20) 또한 공지된 구성이므로 이에 대한 상세한 설명은 피하기로 한다.
상기 파일시스템 모듈(30)은, 상기 하드디스크(10)의 물리적 특성을 추상화하여 논리적인 저장단위(클러스터)로 정리하고 파일로의 접근을 처리하는 것으로, 디스크 포맷으로 형성된 디스크볼륨과 더불어 설치되며 이를 통해 운영체제(OS)가 디스크 드라이브(20)를 인식한다.
참고로, 상기 파일시스템 모듈(30)에는 마이크로소프트사에서 개발된 컴퓨터 운영체제(OS)인 윈도우즈(WINDOWS)의 FAT16, FAT32, NTFS와, 리눅스의 ext2, raiserFS, ext3 등이 있다. 본 발명에 따른 통제시스템의 일실시예는 상기 윈도우즈(WINDOWS)를 기반으로 하여 구현되므로, 파일시스템 모듈(30)로 FAT 시리즈, NTFS가 적용되었다. 그런데, 본 발명에서 상기 용량가변식 VSD이미지파일모듈(41)은 상기 가상디스크(VD)의 저장공간에 대하여 정형화된 것이 아닌 가변적으로 이루어지도록 되었으며, 이를 지원하는 파일시스템모듈(30)은 NTFS에 한하므로, 본 발명에 따른 통제시스템의 일실시예는 NTFS 기반에서만 구동될 수 있다 할 것이다. 그러나, 이는 수많은 실시예 중 하나에 불과하며 이하의 청구범위를 벗어나지 않는 한도 내에서 다양하게 변형실시될 수 있다.
상기 어플리케이션 모듈(60)은, 디스크볼륨에 저장된 파일을 불러와 구동시킬 수 있도록 된 일반적인 프로그램으로, 본 발명에서는 상기 가상디스크(VD)로의 접근여부를 인가받은 경우와 인가받지 못한 경우로 나뉘며, 이에 따라 보안파일에 대한 처리과정이 다르게 이루어진다.
어플리케이션 모듈(60)은 고유한 정보(프로그램 이름, 헤더, Check sum, 또는 인증서)를 통해 구분되며, 상기 접근통제장치(50)는 이 정보로서 실행되고 있는 어플리케이션 모듈(60)의 인가여부를 확인한다.
상기 용량가변식 VSD이미지파일모듈(41)은, 상기 파일시스템 모듈(30)을 통해 디스크볼륨 내에 별도의 파일을 생성시킴으로서 이루어지며, 상기 디스크볼륨과 같이 하드디스크(10) 상의 일정 공간을 파티션하여 상기 디스크볼륨 위에 또다른 가상 디스크볼륨을 형성시키는 것이다.
즉, 기존의 디스크분할과 같이 운영체제(OS)가 구현되기 전 하드디스크의 물리적인 분할을 통해 각각의 디스크볼륨을 형성하고 상기 디스크볼륨을 포함한 해당 디스크드라이브에 따라 운영체제(OS)에서 파일시스템 모듈을 설정하는 방식과는 달리, 본 발명에 따른 통제시스템은 운영체제(OS)를 통해 구현되어지고 있는 PC 및 로컬 네트워크(LAN) 상에서 사용자의 필요에 따라 하드디스크를 분할한 것과 같은 효과를 얻는 것이다.
그런데, 본 발명에 따른 용량가변식 VSD이미지파일모듈(41)은, 본원 출원인이 선출원한 바 있는 '가상 디스크를 이용한 응용 프로그램 별 접근 통제시스템과 그 통제방법(출원번호 ; 10-2004-0012380)'의 VSD이미지파일모듈과는 달리, 그 사용공간의 용량을 유동적으로 가변할 수 있다.
일례로, 종래 VSD이미지파일모듈의 경우 물리적인 전체용량이 40GB인 하드디스크에 보안파일을 별도로 관리하기 위한 10GB의 상기 VSD이미지파일모듈을 형성시키면, 보안이 필요하지 않은 일반파일은 남은 30GB에만 저장되며, 상기 VSD이미지파일모듈에 1GB짜리 보안파일만이 저장되어 9GB의 여유공간이 남는다고 하더라도 일반파일은 상기 하드디스크에서 30GB 이상 채울 수 없었다.
하지만, 본 발명에 따른 용량가변식 VSD이미지파일모듈(41)의 경우 물리적인 전체용량이 40GB인 하드디스크에 보안파일을 별도로 관리하기 위한 10GB의 상기 용량가변식 VSD이미지파일모듈(41)을 형성시키면, 실제로 10GB를 점유하고 있는 상기 용량가변식 VSD이미지파일모듈(41)에 1GB짜리 보안파일만이 저장되고 있다면, 일반파일은 최대 39GB까지 채울 수 있는 것이다.
이를 위해, 본 발명에서는 NTFS(NT file system) 기반에서 적용되는 스파스파일(Sparse File)이 응용되었다.
상기 스파스 파일이란, 임의로 거대 파일을 만들 필요가 있을 때 모든 바이트를 위한 디스크 공간을 지정하지 않고도 이를 가능하도록 하는 것이다.
즉, 42GB의 거대 파일을 만들어야 할 경우, 디스크의 42GB 공간을 모두 지정하지 않고 파일의 처음이 될 64KB와 마지막이 될 64KB에만 데이터를 쓴다. NTFS는 사용자가 데이터를 쓰는 파일 부분에만 물리적 디스크 공간을 할당하게 되며, 이를 통해 스파스 파일은 디스크에서 128KB의 공간만을 사용하게 된다. 그러나 다른 측면에서 볼 때 운영체제에서는 42GB의 파일인 것처럼 작동한다.
본 발명에 따른 용량가변식 VSD이미지파일모듈(41)은 상술된 스파스 파일이 응용되었으며, 상기 VSD드라이브(42)를 설명하면서 좀더 상세히 설명한다.
이때, 상기 VSD는 Virtual Secure Disk의 약자로, 여기서는 본 발명에서 보안파일을 저장하기 위해 형성시킨 가상디스크를 의미하며, 기존 하드디스크와의 구분을 위해 사용된다.
한편, 상기 용량가변식 VSD이미지파일모듈(41)에서의 '이미지'란, 실체하지는 않으면서 겉으로는 표현되어짐을 뜻하며, 여기서는 기존의 파일시스템모듈(30) 및 디스크드라이브(20)와 상기 가상디스크(VD)를 이루는 구성을 명명하기 위해 사용된다.
상기 VSD드라이브(42)는, 상기 용량가변식 VSD이미지파일모듈(41)의 드라이브로써 상기 디스크 드라이브(20)에 대응되는 구성이다. 즉, 용량가변식 VSD이미 지파일모듈(41)이 실질적으로는 일반파일(41')과 같은 파일의 개념으로 형성되었지만, 운영체제(OS) 상에서는 용량가변식 VSD이미지파일모듈(41)이 별도로 디스크분할된 디스크볼륨으로 인식되어야 하므로 이에 저장된 파일들을 처리하는 VSD드라이브(42)가 요구된다 하겠다.
상기 VSD드라이브(42)는 상기 용량가변식 VSD이미지파일모듈(41)의 형성을 위한 포맷과 더불어 설치되고, 이를 통해 인가된 어플리케이션 모듈(A)은 상기 용량가변식 VSD이미지파일모듈(41)에 위치한 보안파일로 접근하게 된다.
상기 VSD파일시스템모듈(43)은, 상기 용량가변식 VSD이미지파일모듈(41)과 VSD드라이브(42)의 생성으로 인해 운영체제(OS)에서는 새로운 디스크볼륨의 발생으로 인식되어 상기 용량가변식 VSD이미지파일모듈(41) 내 파일로의 접근을 처리하도록 설정된 것이다.
따라서, VSD파일시스템모듈(43)은 상기 파일시스템 모듈(30)에 대응되는 구성이다.
도 3은 본 발명에 따른 접근 통제시스템의 가상 디스크 설정과정을 도시한 블럭도인바 이를 참조하여 설명한다.
별도의 VSD설치프로그램(1)을 해당 PC 또는 로컬 네트워크(LAN) 상의 클라이언트 PC에 각각 인스톨하며, 상기 VSD설치프로그램(1)에 구성된 가상디스크볼륨생성수단(미도시됨)을 통해 상기 디스크볼륨 내 일정공간에 파일형식으로 공간을 점유하여 가상디스크볼륨을 생성시키고(2), VSD드라이브설정수단(미도시됨)을 통해 가상디스크볼륨에 해당하는 디바이스로 VSD드라이브(42)를 설정하는 한편, 상기 가 상디스크볼륨에 대한 정보(DISK_GEOMETRY 정보, 파티션 정보 등)를 수신받는다.(3)
일반적으로, 상기 VSD설치프로그램(1) 인스톨 시, 가상디스크볼륨에 대한 정보를 결정된 상태이므로, 이에 따라 가상디스크볼륨이 생성되며, 상기 VSD드라이브(42)는 이에 대한 정보를 입력받게 될 것이다.
계속해서, VSD드라이브(42)가 설정되면, 운영체제(OS)에서는 해당 가상디스크볼륨에 대한 정보를 요청하게 되고(4), 이에 대응하여 VSD드라이브(42)에서는 앞서 수신된 가상디스크볼륨 정보를 생성한 후, 운영체제(OS)에 전달한다(5). 또한, 상기 운영체제(OS)는 당해 정보를 받아 이에 대한 범위에 상응하는 VSD파일시스템모듈(43)을 설정하여 포맷하고, 새로운 디스크볼륨을 인식하게 된다.(6)
용량가변식 어플리케이션모듈(41)에 대한 특징을 살려 보다 구체적으로 설명한다.
물리적인 하드디스크(10)의 포맷을 통해 운영체제(OS)는 상기 하드디스크를 관리할 수 있는 논리적인 수단인 디스크드라이브(20)와 파일시스템모듈(30)을 설치하게 되고, 상기 운영체제(OS) 또는 어플리케이션모듈(A, A')은 이를 통해 하드디스크(10)에 데이터를 저장하거나 편집 및 검색을 하게 된다.
한편, 본 발명에 따른 접근통제시스템을 설치할 목적으로 상기 용량가변식 VSD이미지파일모듈(41)을 데이터파일(스파스 파일)의 형태로 상기 디스크드라이브(20) 및 파일시스템모듈(30)을 통해 하드디스크(10)에 저장시킨다. 이때, 상기 용량가변식 VSD이미지파일모듈(41)은 인가된 어플리케이션모듈(A)에서 별도의 디스크볼륨으로 인식되어 활용되므로, 상기 VSD드라이브(42)는 용량가변식 VSD이미지파일 모듈(41)에 대한 가상디스크볼륨을 운영체제(OS)에 전달한다.
이때, 상기 가상디스크볼륨 정보는 종래 VSD이미지파일모듈과 같이 하드디스크(10) 상에 실제로 지정된 일정한 크기가 아닌 가상의 크기로서, 실제 하드디스크(10) 상에는 스파스파일 형식으로 저장되어 상기 가상디스크볼륨 정보에 포함된 크기와는 다르게 된다. 한편, 상기 가상디스크볼륨 정보를 받은 운영체제(OS)는 이에 대한 범위에 상응하는 VSD파일시스템모듈(43)을 설정하여 포맷하고 새로운 디스크볼륨을 인식하게 된다.
따라서, 인가된 어플리케이션모듈(A)과 비인가된 어플리케이션모듈(A')에서의 각각의 파일저장 과정은 다음과 같이 이루어지게 된다.
인가된 어플리케이션모듈(A)의 실행으로 보안파일이 발생되면, 이 보안파일을 하드디스크(10)에 저장한다. 그런데, 인가된 어플리케이션모듈(A) 내에서는 도 7b에서와 같이 용량가변식 VSD이미지파일모듈(41)을 독립된 디스크볼륨으로 인식하므로, 사용자는 당해 디스크볼륨을 지정하여 상기 보안파일을 상기 용량가변식 VSD이미지파일모듈(41)의 범위 안에 저장할 수 있게 된다. 물론, 실제 하드디스크(10)는 상기 파일시스템모듈(30)에 의해 제어되므로, 독립된 디스크볼륨으로서의 상기 용량가변식 VSD이미지파일모듈(41)의 포맷범위 내에서 상기 보안파일이 하드디스크(10)의 해당 위치에 지정된다.
반면, 비인가된 어플리케이션모듈(A')의 실행으로 일반파일이 발생되면, 이 일반파일을 하드디스크(10)에 저장한다. 그런데, 비인가된 어플리케이션모듈(A') 내에서는 도 7a에서와 같이 상기 용량가변식 VSD이미지파일모듈(41)을 인식하지 못 하고 있으므로, 사용자는 상기 일반파일을 상기 용량가변식 VSD이미지파일모듈(41) 내에 위치시킬 수 없게 된다.
그런데, 전체 디스크용량이 40GB가 있다 하고 상기 용량가변식 VSD이미지파일모듈(41)이 이중 10GB를 차지한다고 가정할 때, 일반파일이 많이 저장되어 그 용량이 남은 30GB를 초과하게 되는 경우가 있다. 하지만 본 발명에 따른 접근통제시스템은 VSD드라이브(42)를 통해 운영체제(OS)에서 상기 용량가변식 VSD이미지파일모듈(41)을 10GB로 인식하고 있을 뿐, 하드디스크(10)에 물리적으로 상기 용량가변식 VSD이미지파일모듈(41)이 지정되어 있지 않으므로 상기 파일시스템모듈(30)은 하드디스크(10) 상에 잔여공간이 있는 것으로 보아 30GB 이상의 일반파일을 저장할 수 있게 된다.
상기 암복호화모듈(45)은, 상기 용량가변식 VSD이미지파일모듈(41)과 VSD드라이브(42) 간의 데이터 입출력을 암복호화 처리하는 것으로서, 만약 VSD드라이브(42)에서 입출력 데이터를 그대로 용량가변식 VSD이미지파일모듈(41)에 저장한다면 용량가변식 VSD이미지파일모듈(41)을 해당 파일시스템모듈(30) 포멧으로 처리하여 그 속에 있는 보안파일들에 대한 정보가 모두 유출될 수 있기 때문에 VSD드라이브(42)가 용량가변식 VSD이미지파일모듈(41)에 입출력을 수행할 때는 암복호화를 수행해야 된다. 즉, 상기 보안파일은 상기 용량가변식 VSD이미지파일모듈(41) 내에 암호화되어 있지 않기 때문에 정보의 위치를 알 수만 없을 뿐이며 정보는 그대로 들어있어 완전한 보안을 이룰 수 없다.
예를 들어, VSD드라이브(42)에 VSD파일시스템모듈(43)의 WRITE 명령이 전달 되면, WRITE할 데이터를 SECTOR 단위의 크기로 암호화를 수행한 후 용량가변식 VSD이미지파일모듈(41)에 기록하게 되고, READ 명령이 전달되면 용량가변식 VSD이미지파일모듈(41)에서 SECTOR 단위로 읽어서 복호화를 수행한 후 VSD파일시스템모듈(43)로 전달하게 된다.
이렇게 하면 용량가변식 VSD이미지파일모듈(41)이 유출된다 하더라도 파일의 내용이 암호화 되어 있으므로 용량가변식 VSD이미지파일모듈(41) 내의 보안파일이 공개될 수 없게 된다.
본 발명에서는 대칭키방식의 암복호화 방식을 채택하였으며, 대칭키방식에서도 특히 블록방식을 채용하였다. 이러한 블록방식은 디스크의 일섹터(512B) 단위로 블록화하여 암복호화가 수행되도록 된 것이다.
한편, 상기 보안파일(44)은 상기 용량가변식 VSD이미지파일모듈(41)에 저장되는 파일로, 보안이 요구되는 파일이라 하여 보안파일(44)로 명명된 것이다.
또한, 가상디스크라 함은 상기 용량가변식 VSD이미지파일모듈(41)과, VSD드라이브(42)를 아울러 명명된 것이다.
계속해서, 상기 접근통제장치(50)는, 상기 어플리케이션 모듈(60)에 의한 상기 디스크드라이브(20) 및 VSD드라이브(42) 내 저장파일로의 접근 시, 해당 작업이 진행되는 공간이 상기 디스크드라이브(20)인가 VSD드라이브(42)인가를 확인하고, 해당 파일로의 접근허가에 대한 어플리케이션 모듈(60)의 인가여부를 판별하여 접근을 결정하는 것이다.
일반적으로, 윈도우즈(WINDOWS ; 여기서는 NT 계열로 NT3.5, 4.0, 2000, XP 등이 있음)은 어플리케이션 모듈이 어떤 서비스를 요청 받았을 때 시스템 서비스 테이블(SST)을 통하여 서비스를 제공한다. 예를 들어, 어떤 어플리케이션 모듈이 파일을 오픈하거나 레지스트리 키를 오픈할 적에 그 어플리케이션 모듈은 CreateFile()이라는 Win32 API를 사용할 것이다. 이러한 API는 Kernel32.dll에 속해있는 가장 기본적인 함수로 구현되는데, 어플리케이션 모듈(A, A')로부터 CreateFile()(Kernel32.dll)이 호출되면, 운영체제(OS)는 NtCreateFile()(NTDLL.dll)을 거쳐 시스템 서비스 테이블(SST)로 ZwCreateFile()을 제공한다.
도 4a(종래 시스템 서비스 테이블의 구동관계를 도시한 블럭도)를 통해 보이는 바와같이, 어플리케이션 모듈(A, A')이 실행에 필요한 파일로의 접근을 위해 운영체제(OS)로 필요한 함수를 호출하면, 운영체제(OS)는 시스템 서비스 테이블(SST)에 해당 함수를 제공하여 디스크립터(D)를 통해 포인팅되도록 한다. 따라서, 어플리케이션 모듈(A, A')은 운영체제(OS) 하에 호환을 이루며 구현된다.
한편, 본 발명에 따른 접근 통제시스템은, 도 4b(본 발명에 따른 접근 통제시스템에서 적용되는 시스템 서비스 테이블의 구동관계를 도시한 블럭도)에 도시된 바와 같이, 기존의 시스템 서비스 테이블(SST)이 확장된 시스템 서비스 테이블(NSST)로 대체되고, 이에 확장된 서비스 테이블(NST)이 더 포함되면서 도 5(도 4b의 구성에 따라 응용 프로그램(어플리케이션 모듈)에 의한 해당 파일의 접근 허가여부가 진행되는 플로우를 도시한 예제)에 도시된 바에 따른 과정이 수행된다.
어플리케이션 모듈(A, A')이 실행에 필요한 파일로의 접근을 위해 운영체제 (OS)로 필요한 함수를 호출하면, 운영체제(OS)는 해당 함수를 상기 확장된 서비스 테이블(NST)로 제공하여 다음과 같은 연산이 수행되도록 한다.
우선 어플리케이션 모듈(A, A')에서, CreateFile()에 대한 함수를 호출하면, 운영체제(OS)는 NtCreateFile()(ntdll.dll)을 거쳐 확장된 서비스 테이블(NST)로 ZwCreateFile()을 제공한다. 이때, 상기 확장된 서비스 테이블(NST)은 ZwCreateFile()을 OnZwCreateFile()(해당 함수가 진행되지 못하도록 본 발명에서 임의로 설정한 함수)로 일단 변경한 후, 논리를 통해 상기 확장된 시스템 서비스 테이블(NSST)에서의 해당 함수에 대한 연산여부를 결정짓게 된다.
이때, 본 발명에 따른 실시예에서, 상기 OnZwCreateFile() 함수는 어플리케이션 모듈(A, A')이 해당 함수인 CreateFile()을 요청할 경우 상기 확장된 시스템 서비스 테이블(NSST)에 ZwCreateFile()가 곧바로 제공되면서 디스크립터(D)가 포인팅하지 못하도록, 해당 함수인 CreateFile()을 요청할 경우 다음 진행이 상기 확장된 서비스 테이블(NST)의 OnZwCreateFile()로 되도록 번지를 변경한 후, 상기 논리가 진행되도록 하여 상기 논리가 완성되기 전에는 디스크립터(D)에 의한 포인팅이 이루어지지 못하도록 하였다. 여기서 상기 임의로 생성된 OnZwCreateFile()라 함은 본 발명에서 상기 확장된 서비스 테이블(NST)이 더 설치되면서 종래 시스템 서비스 테이블(SST)에 있던 함수가 이미 변경/대체된 것이다.
한편, 상기 논리는 호출되는 상기 함수의 목적이 되는 파일의 위치가 가상디스크(VD)인가 일반디스크(ND)인가에 대한 확인과, 상기 함수를 호출하는 어플리케이션 모듈(A, A')의 인가여부 확인으로써, 예제를 통해 보인 바와 같이, 가상디스 크(VD)로 확인되면, 인가된 어플리케이션 모듈(A)인가를 확인하여 인가된 것일 경우, 상기 확장된 시스템 서비스 테이블(NSST)로 변경 이전의 함수인 ZwCreateFile()를 제공하고, 그렇지 않을 경우에는 해당 함수의 연산을 중지한다.(False) 또한, 앞 단계에서 일반디스크(ND)로 확인되면, 어플리케이션 모듈(A, A')의 인가여부 확인은 생략하고 상기 확장된 시스템 서비스 테이블(NSST)로 변경 이전의 함수인 ZwCreateFile()를 제공한다.
한편, 상기 디스크립터(D)는 상기 시스템 서비스 테이블(SST)이 아닌, 상기 확장된 시스템 서비스 테이블(NSST)로 포인팅 된다.
도 4b에서 시스템 서비스 테이블(SST)과 확장된 시스템 서비스 테이블(NSST)을 연결하고 있는 파선의 화살표는 상기 파일접근에 실질적으로 관여되는 상기 함수들 이외에 어플리케이션 모듈(A, A')의 구현에 필요한 다른 종류의 함수호출 시, 상기 확장된 서비스 테이블(NST)에서의 논리과정없이 해당 함수를 상기 확장된 시스템 서비스 테이블(NSST)에 곧바로 제공하여 함수의 연산을 진행시킬 수 있다.
이상, 상기 접근통제장치(50)는 상술된 과정을 통해 가상디스크(VD) 내에 존재하는 파일에 대한 보안기능을 수행하게 된다.
한편, 상술된 바와 같이, 함수에 의한 보안파일로의 접근이 인가된 어플리케이션 모듈(A) 이외에는 허용되지 않으므로, 본 발명에 따른 가상디스크(VD)는 비인가된 어플리케이션 모듈(A')에 의한 접근시도 시, 도 7a에서와 같이 드라이브 자체가 확인이 되지 않아 애초부터 불가할 뿐만아니라, 도 8(본 발명에 따른 접근 통제시스템의 가상 디스크가 파일로 인식되어지는 모습을 보이는 창)에서와 같이 상기 용량가변식 VSD이미지파일모듈(41)은 열 수 없는 파일형식으로 존재되어 비인가된 어플리케이션 모듈(A')으로는 그 접근이 불가능하게 된다.
도 9는 허가되지 않은 어플리케이션을 통한 가상 디스크로의 접근시 그 시도가 거부됨을 보이는 창으로, 비인가된 어플리케이션 모듈(A') 또는 운영체제(OS) 상에서 파일형식으로 존재하는 상기 용량가변식 VSD이미지파일모듈(41)에 대한 열기를 시도할 경우, 접근이 거부되고 있음을 보이고 있다.
이상, 본 발명에 따른 접근 통제시스템의 구성을 보았으며, 이하에서는 이를 통한 통제 방법에 대해 설명한다.
이하에서 기재되는 함수인 ReadFile() 및 WriteFile()은, 상기 CreateFile() 함수가 읽기모드 또는 쓰기모드로 전환/실행될 때 호출되는 함수로서, 본 발명에 따른 접근 통제시스템 하에서 보안파일에 대한 읽기 및 쓰기의 통제방법이 각각 명확히 구분되도록 각 모드별로 해당 함수를 구분하여 기술하였다.
참고로, 어플리케이션 모듈을 통해 임의의 파일로 접근하기 위해서는 파일 핸들러인 CreateFile()을 우선적으로 호출하게 되며, CreateFile() 호출에 의해 제공되는 ZwCreateFile()가 상기 ReadFile() 또는 WriteFile()를 각각 호출하면서 읽기모드 또는 쓰기모드로 실행되고, 이로인해 어플리케이션 모듈에서 해당 파일의 읽기 또는 쓰기가 진행된다.
상기 어플리케이션 모듈을 선택적으로 인가하는 단계(1);
가상디스크(VD)에 접근할 수 있는 어플리케이션 모듈(60)을 지정하여 인가하는 단계이다. 어플리케이션 모듈(60)의 인가방식에 대한 실시예는 상술된 바 있으므로 여기서는 그 설명을 생략하기로 한다.
상기 어플리케이션 모듈(60)이 해당 파일로의 접근을 위해 함수를 호출하는 단계(2);
도 6a(본 발명에 따른 접근 통제시스템에서 응용 프로그램을 통한 해당 파일의 읽기과정을 도시한 플로우차트)에서, 시작(어플리케이션 모듈의 디스크 읽기 시도) 부분에 해당하는 것으로, 어플리케이션 모듈(60)이 구현에 필요한 파일의 읽기를 요청하고 이를 위해 ReadFile() 함수를 호출하는 단계이다.
상기 함수를 변경하여 대기상태로 하는 단계(3);
상기 단계(2)가 진행되면, 상기 접근통제장치(50)에 포함된 확장된 서비스 테이블(NST)로 상기 함수가 제공되되, 확장된 서비스 테이블(NST)은 상기 ReadFile()함수를 OnZwReadFile()로 변경하여 어플리케이션 모듈(60)의 실행에 요구되는 논리를 진행한다.
상기 파일로의 접근공간이 상기 디스크드라이브인지 VSD드라이브인지를 확인하는 단계(4);
여기서는 가상디스크인지 여부를 확인하는 과정으로, 도 6a 상의 (S1)에 해당된다.
상기 단계(4)에서 디스크드라이브로 확인될 경우, 연산이 불가능하도록 변경된 함수를 원래의 함수로 복귀시켜 제공하는 단계(5);
상기 파일이 위치하는 공간이 디스크드라이브(20)로 확인되면, 상기 확장된 서비스 테이블(NST)은 OnZwReadFile() 함수의 변경 전 함수인 ZwReadFile()를 상기 확장된 시스템 서비스 테이블(NSST)로 제공하여 해당 함수의 연산을 속행하게 되고, 이로인해 해당 파일에 대한 읽기를 허용한다.(S4)
상기 단계(4)에서 VSD드라이브로 확인될 경우, 상기 어플리케이션 모듈의 접근이 인가된 것인가를 확인하는 단계(6);
반면, VSD드라이브(42)로 확인되면, 그 다음 논리로서 상기 어플리케이션 모듈(60)이 인가된 어플리케이션 모듈인지 여부를 확인한다.(S2)
상기 단계(6)에서 인가된 것으로 확인될 경우, 연산이 불가능하도록 변경된 함수를 원래의 함수로 복귀시켜 제공하는 단계(7);
상기 어플리케이션 모듈(60)이 인가된 어플리케이션 모듈으로 확인되면, 상기 확장된 서비스 테이블(NST)은 OnZwReadFile() 함수의 변경 전 함수인 ZwReadFile()를 상기 확장된 시스템 서비스 테이블(NSST)로 제공하여 해당 함수의 연산을 속행하게 되고, 이로인해 해당 파일에 대한 읽기를 허용한다.(S4)
상기 단계(6)에서 비인가된 것으로 확인될 경우, 해당 함수의 연산을 중지하는 단계(8);
반면, 어플리케이션 모듈이 비인가된 것으로 확인되면, 상기 확장된 시스템 서비스 테이블(NSST)에서의 해당함수에 대한 연산이 중지되어 읽기가 불허된다.(S3)
계속해서, 상기 함수가 WriteFile()일 경우에는 상기 단계(5)의 과정에 있어 서, 이하의 단계가 더 포함된다. 이는 도 6b(본 발명에 따른 접근 통제시스템에서 응용 프로그램을 통한 해당 파일의 쓰기과정을 도시한 플로우차트)와 더불어 설명한다. 이때, 상기 함수인 WriteFile()는 확장된 서비스 테이블(NST)에서 OnZwWriteFile() 변경된다.
상기 어플리케이션 모듈의 인가여부를 확인하는 단계(5-1);
디스크드라이브(20)로 확인된 상태에서, 해당 함수를 호출하는 어플리케이션 모듈(60)이 인가된 어플리케이션 모듈인지 여부를 확인한다.(S30)
상기 단계(5-1)에서 인가된 것으로 확인될 경우, 해당 함수의 연산을 중지하는 단계(5-2);
상기 단계(5-1)에서 인가된 어플리케이션 모듈으로 확인되면, 상기 확장된 서비스 테이블(NST)은 확장된 시스템 서비스 테이블(NSST)에서의 해당 함수에 대한 연산이 중지되어 쓰기가 불허된다.(S31)
상기 단계(5-2)에서 비인가된 것으로 확인될 경우, 연산이 불가능하도록 변경된 함수를 원래의 함수로 복귀시켜 제공하는 단계(5-3);
상기 단계(5-1)에서 비인가된 어플리케이션 모듈으로 확인되면, 상기 확장된 서비스 테이블(NST)은 OnZwWriteFile()의 변경 전 함수인 ZwWriteFile()로 복귀시켜 상기 확장된 시스템 서비스 테이블(NSST)로 제공하고, 이를 디스크립터(D)가 포인팅함으로서, 해당 함수의 연산을 통한 쓰기가 허용된다.(S40)
읽기 함수에 대한 통제 방법에 쓰기 함수에 대한 통제 방법의 상기 단계가 더 포함되어야 하는 이유는 상술한 바 있으므로 여기서는 생략하기로 한다.
한편, 상술한 바와 같이, 상기 용량가변식 VSD이미지파일모듈(41)은 기존 디스크볼륨에 파일형식으로 위치되고 있으므로, 용량가변식 VSD이미지파일모듈(41) 만을 카피하거나 잘라내기를 한 후 기존의 파일시스템모듈(30)을 통해 접근하여 유출시킬 수도 있으므로, 상기 암복호화모듈(45)을 통해 상기 용량가변식 VSD이미지파일모듈(41)과 VSD드라이브(42) 간의 데이터 입출력을 암복호화 하는 단계가 더 포함되어야 한다.
이상 상기와 같은 본 발명에 따르면, 기존의 하드디스크를 물리적으로 분할 할 필요없이 현재 운영체제에 의해 운영되는 시스템 내에 별도의 가상디스크를 생성시켜 별도의 파일시스템을 통해 새로운 드라이브로써 관리되는 한편, 이 드라이브에 저장된 보안파일로의 접근 시 인가된 응용프로그램(어플리케이션 모듈)에 대해서만 허용되므로, 내부 인가자에 대한 개별적인 확인절차 없이도 상기 응용프로그램(어플리케이션 모듈)이 설치된 PC라면 번거로운 절차없이도 보안파일로의 접근을 이룰 수 있는 반면, 인가된 응용프로그램(어플리케이션 모듈) 상에서만이 보안파일에 대한 접근이 가능하므로, 보안파일를 복사하거나 잘라내기를 통해 외부로 유출시킬 수도 없으며, 외부로부터 침입되는 불법적인 접근은 애초부터 불가능하게 된다.
또한, 보안파일에 각각 암호화 또는 사용권한 부여작업을 하지 않아도 상기 가상디스크 상에 별도로 저장되어 보호되므로, 파일보안에 필요한 작업이 보다 용이해지는 효과가 있다.
또한, 가상디스크의 용량에 가변성을 줌으로서, 일반파일과 보안파일을 저장함에 있어 하드디스크를 융통적으로 활용할 수 있게 된다.
또한, 대용량의 가상디스크를 설치할 경우 결정된 용량에 대한 디스크볼륨을 만들기 위해 상기 용량에 해당하는 하드디스크의 범위를 모두 지정해야하는 시간소요를 피할 수 있어, 가상디스크의 최초 설치시간을 크게 단축할 수 있다.

Claims (5)

  1. 하드디스크의 물리적인 일정공간의 시작위치와 끝위치에 데이터를 채워 운영체제가 상기 일정공간을 하나의 파일형식으로 점유하여 인식하도록 하면서도, 상기 일정공간으로는 다른 데이터를 입력해 넣을 수 있는 용량가변식 VSD이미지파일모듈;
    상기 VSD이미지파일모듈을 제어하면서 상기 VSD이미지파일모듈 내에 보안이 요구되는 데이터를 보안파일로서 저장 및 처리하는 VSD드라이버;
    상기 VSD드라이버에 의한 상기 VSD이미지파일모듈 내 보안파일의 입출력 시, 입력되는 보안파일은 암호화하고, 출력되는 보안파일은 복호화하는 암복호화모듈;
    상기 VSD드라이버를 통해 운영체제가 상기 VSD이미지파일모듈을 별도의 생성 디스크볼륨으로 인식하면서 설정하는 것으로, 어플리케이션 모듈이 상기 VSD이미지파일모듈에 저장된 보안파일로 접근하는 것을 관리하면서, 비인가된 어플리케이션 모듈이 상기 VSD이미지파일모듈에 저장된 보안파일로 접근하는 것을 제한하는 VSD파일시스템모듈; 및,
    인가된 어플리케이션 모듈이 보안파일로 접근하여 해당 파일을 처리하기 위한 함수를 요청할 경우, 디스크립터가 포인팅할 수 있도록 운영체제가 상기 함수를 제공하게 되는 시스템 서비스 테이블을 대체하는 확장된 시스템 서비스 테이블과, 상기 인가된 어플리케이션 모듈이 상기 확장된 시스템 서비스 테이블로 제공될 상기 함수를 연산하지 못하도록 상기 함수를 임시로 변경한 후 상기 인가된 어플리케이션 모듈의 작업공간이 상기 VSD이미지파일모듈이 아니면서 상기 함수가 쓰기에 대한 내용일 경우에는 임시로 변경한 함수의 연산을 중지시키고, 작업공간이 상기 VSD이미지파일모듈일 경우에는 임시로 변경한 함수를 변경 이전의 함수로 복원하여 상기 확장된 시스템 서비스 테이블에 제공하는 확장된 서비스 테이블로 된 접근통제장치;
    를 포함하는 것을 특징으로 하는 접근 통제시스템.
  2. 삭제
  3. 하드디스크의 물리적인 일정공간의 시작위치와 끝위치에 데이터를 채워 운영체제가 상기 일정공간을 하나의 파일형식으로 점유하여 인식하도록 하면서 상기 일정공간으로는 다른 데이터를 입력해 넣을 수 있고 VSD드라이버에 의해 제어되는 용량가변식 VSD이미지파일모듈로 접근가능한 인가된 어플리케이션 모듈이, 상기 VSD이미지파일모듈에 위치한 보안파일로 접근하기 위해 운영체제로 함수를 호출하는 단계;
    함수를 호출한 상기 인가된 어플리케이션 모듈의 실행위치가 VSD이미지파일모듈 인지를 확인하여 해당 함수의 제공 여부를 처리하는 접근통제장치의 확장된 서비스 테이블로, 운영체제가 제공한 함수가 제공되는 단계;
    상기 확장된 서비스 테이블이 상기 함수의 연산이 중지되도록, 지정된 함수로 변경하는 단계;
    상기 확장된 서비스 테이블이 인가된 어플리케이션 모듈의 작업공간을 확인하여 VSD이미지파일모듈인지 여부를 확인하는 단계;
    상기 인가된 어플리케이션 모듈의 작업공간이 VSD이미지파일모듈일 경우, 변경된 함수를 복원시켜 상기 접근통제장치의 확장된 시스템 서비스 테이블로 제공하고, VSD이미지파일모듈이 아니면서 상기 함수가 쓰기에 대한 내용일 경우, 변경된 함수의 복원을 중지하는 단계; 및,
    상기 확장된 시스템 서비스 테이블에 해당 함수가 제공되면, 이를 포인팅하여 상기 함수의 실행을 진행하는 단계;
    를 포함하는 것을 특징으로 하는 가상 디스크를 이용한 응용 프로그램 별 접근 통제방법.
  4. 삭제
  5. 제 3 항에 있어서,
    인가된 어플리케이션 모듈이 보안파일로 접근하여 상기 보안파일을 실행할 경우, 상기 보안파일이 상기 VSD이미지파일모듈에 저장될 경우에는 암호화되고, 상기 보안파일이 인가된 어플리케이션 모듈을 통해 실행될 경우에는 복호화되는 단계를 더 포함하는 것을 특징으로 하는 가상 디스크를 이용한 응용 프로그램 별 접근 통제방법.
KR1020040097464A 2004-11-25 2004-11-25 저장공간의 운영효율성을 높인 가상 디스크를 이용한 응용프로그램 별 접근 통제시스템과 그 통제방법 KR100549644B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040097464A KR100549644B1 (ko) 2004-11-25 2004-11-25 저장공간의 운영효율성을 높인 가상 디스크를 이용한 응용프로그램 별 접근 통제시스템과 그 통제방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040097464A KR100549644B1 (ko) 2004-11-25 2004-11-25 저장공간의 운영효율성을 높인 가상 디스크를 이용한 응용프로그램 별 접근 통제시스템과 그 통제방법

Publications (1)

Publication Number Publication Date
KR100549644B1 true KR100549644B1 (ko) 2006-02-06

Family

ID=37178663

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040097464A KR100549644B1 (ko) 2004-11-25 2004-11-25 저장공간의 운영효율성을 높인 가상 디스크를 이용한 응용프로그램 별 접근 통제시스템과 그 통제방법

Country Status (1)

Country Link
KR (1) KR100549644B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010030133A2 (ko) * 2008-09-10 2010-03-18 소프트캠프(주) 실행파일 형태의 에이피아이를 이용한 보안파일 전송시스템과 전송방법
KR101446326B1 (ko) * 2013-03-28 2014-10-07 소프트캠프(주) 보안데이터 관리장치와 관리방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010030133A2 (ko) * 2008-09-10 2010-03-18 소프트캠프(주) 실행파일 형태의 에이피아이를 이용한 보안파일 전송시스템과 전송방법
WO2010030133A3 (ko) * 2008-09-10 2010-07-15 소프트캠프(주) 실행파일 형태의 에이피아이를 이용한 보안파일 전송시스템과 전송방법
KR101016615B1 (ko) * 2008-09-10 2011-02-22 소프트캠프(주) 실행파일 형태의 에이피아이를 이용한 보안파일 전송시스템과 전송방법
KR101446326B1 (ko) * 2013-03-28 2014-10-07 소프트캠프(주) 보안데이터 관리장치와 관리방법

Similar Documents

Publication Publication Date Title
KR100596135B1 (ko) 가상 디스크를 이용한 응용 프로그램 별 접근통제시스템과 그 통제방법
US9881013B2 (en) Method and system for providing restricted access to a storage medium
US8402269B2 (en) System and method for controlling exit of saved data from security zone
US7840750B2 (en) Electrical transmission system in secret environment between virtual disks and electrical transmission method thereof
JP4089171B2 (ja) 計算機システム
EP1946238B1 (en) Operating system independent data management
US7536524B2 (en) Method and system for providing restricted access to a storage medium
US7925894B2 (en) System and method for delivering versatile security, digital rights management, and privacy services
US20050066191A1 (en) System and method for delivering versatile security, digital rights management, and privacy services from storage controllers
US20030221115A1 (en) Data protection system
US20070271472A1 (en) Secure Portable File Storage Device
KR101227187B1 (ko) 보안영역 데이터의 반출 제어시스템과 그 제어방법
US11941264B2 (en) Data storage apparatus with variable computer file system
RU2207619C2 (ru) Система разграничения доступа к ресурсам
US7694154B2 (en) Method and apparatus for securely executing a background process
WO2000072200A1 (en) Method and apparatus for securing files
KR100549644B1 (ko) 저장공간의 운영효율성을 높인 가상 디스크를 이용한 응용프로그램 별 접근 통제시스템과 그 통제방법
RU2067313C1 (ru) Устройство защиты от несанкционированного доступа к информации, хранимой в персональной эвм
KR102338774B1 (ko) 스토리지 운영체제의 커널 수준에서 파일 내용 읽기 및 쓰기를 방지하여 데이터 유출 및 훼손을 방지하는 데이터 보호 방법
KR102232919B1 (ko) 가상화 및 cow 파일 시스템 기술을 이용한 자가 변이 시스템
KR20070116397A (ko) 컴퓨터 보안 시스템
JP2022535075A (ja) 補助記憶装置でのファイルシステム保護装置および方法
CN112784263A (zh) 位元锁磁盘处理程序管理系统与方法
Loidl Operating System Security

Legal Events

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

Payment date: 20121129

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140203

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150130

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170109

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190116

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20200106

Year of fee payment: 15