KR950015185B1 - Personal computer data protection method using automatic encryption/decryption - Google Patents

Personal computer data protection method using automatic encryption/decryption Download PDF

Info

Publication number
KR950015185B1
KR950015185B1 KR1019930024137A KR930024137A KR950015185B1 KR 950015185 B1 KR950015185 B1 KR 950015185B1 KR 1019930024137 A KR1019930024137 A KR 1019930024137A KR 930024137 A KR930024137 A KR 930024137A KR 950015185 B1 KR950015185 B1 KR 950015185B1
Authority
KR
South Korea
Prior art keywords
decryption
encryption
file
user
unit
Prior art date
Application number
KR1019930024137A
Other languages
Korean (ko)
Other versions
KR950015077A (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 KR1019930024137A priority Critical patent/KR950015185B1/en
Publication of KR950015077A publication Critical patent/KR950015077A/en
Application granted granted Critical
Publication of KR950015185B1 publication Critical patent/KR950015185B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring

Abstract

The data protecting method of a personal computer using an automatic coding/decoding comprises the steps of: performing a mandatory access control to determine if it is related to coding/decoding if a user inputs a command in a user command standby state; determining the coding/decoding to permit a read access to a corresponding file only when a secret grade of a user is higher than or equal to the secret grade of to-be-accessed file and the secret range of a user contains the secret range of the to-be-accessed file; generating a coding key by using the size of the file as a coding initial vector or generating a decoding key by using it as a decoding initial vector; and decoding corresponding file by inserting the decoding key and the decoding initial vector into a coding file to tout a decoded file to the user and performing a coding by the generated coding key to output a coding file.

Description

자동 암/복호화를 이용한 퍼스널 컴퓨터의 데이타 보호 방법Data protection method of personal computer using automatic encryption / decryption

제1도는 본 발명이 적용되는 하드웨어 시스템의 구성도.1 is a block diagram of a hardware system to which the present invention is applied.

제2도는 자동 암/복호와 방법의 소프트웨어 블럭의 구성도.2 is a block diagram of a software block of automatic encryption / decryption and method.

제3도는 자동 암/복호화부의 세부 구성도.3 is a detailed configuration diagram of an automatic encryption / decryption unit.

제4도는 본 발명에 의한 자동 암/복호화 방법에 대한 처리 흐름도.4 is a process flow diagram for an automatic encryption / decryption method according to the present invention.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

1 : 보조 기억장치 2 : 주 기억 장치1: auxiliary memory 2: main memory

3 : 액세스 제어부 4 : 명령어 해석기3: access control unit 4: command interpreter

5 : 자동 암/복호화부 6 : 암/복호화 키 생성부5: automatic encryption / decryption unit 6: encryption / decryption key generation unit

21 : 암/복호화 판독부 22 : 암호화부21: encryption / decryption reading unit 22: encryption unit

23 : 복호화부23: decoder

본 발명은 데이타를 저장하고 처리하는 퍼스널 컴퓨터(Personal Computer) 시스템에서 퍼스널 컴퓨터가 지니고 있는 고유의 특성으로 인하여 악의있는 사용자의 시스템 자원 특히 화일에 대한 정보의 누출을 막는 방법으로, 액세스 제어와 연동한 자동 암/복호화 시스템에 의거하여 퍼스널 컴퓨터 내의 중요 자료에 대한 누출을 막기 위한 자동 암/복호화를 이용한 퍼스널 컴퓨터의 데이타 보호 방법에 관한 것이다.The present invention provides a method of preventing leakage of system resources of a malicious user, especially information about a file, due to the inherent characteristics of a personal computer in a personal computer system that stores and processes data. A data protection method of a personal computer using automatic encryption / decryption to prevent leakage of important data in the personal computer based on an automatic encryption / decryption system.

일반적으로 기존의 퍼스널 컴퓨터의 불법적인 정보누출의 방지책은 각 화일에 대한 프로화일링(Profiling) 리스트를 유지함으로써 단순히 화일의 임의적 액세스 제어에만 의존을 하거나, 사용자의 명령어 입력에 의한 화일의 암호화에 의존하고 있다. 그런데, 임의적인 액세스 제어(DAC : Discretionary Access Control)는 그 속성상 시스템 자원에 대한 액세스를 사용자의 식별자(Identification : ID)에 전적으로 근거를 두고 있으므로 DAC 메카니즘은 데이타의 다중 비밀 등급을 위한 정보 유지 방법을 가지고 있지 못하여 이러한 데이타의 다중 비밀 등급에 근거한 액세스 제어를 수행하지 못한다.In general, the prevention of illegal information leakage of an existing personal computer relies only on random access control of a file by maintaining a profiling list for each file, or relies on encryption of a file by a user's command input. have. However, since discretionary access control (DAC) is based solely on access to system resources based on the user's identifier (ID), the DAC mechanism is a method of maintaining information for multiple levels of confidentiality of data. It does not have access control based on multiple secret classes of such data.

또한, 상기와 같이 사용자의 식별자가 매우 중요하므로 만약 악의를 가진 임의의 사용자가 다른 사용자의 식별자를 사용하여 퍼스널 컴퓨터 내의 중요자료에 대한 어떤 액세스 행위가 이루어질 수 있다면, DAC에 의한 액세스 제어는 안전성을 보장하지 못하게 된다. 또한, 퍼스널 컴퓨터가 가지는 고유한 특성으로 인하여 이러한 액세스 제어를 우회하는 메카니즘이 존재하여 직접적으로 보조 기억장치에 존재하는 중요화일을 액세스 할 수 있다. 이러한 문제점을 보완하기 위해서 제공되는 사용자의 명령어 입력에 의한 암/복호화 방법도 사용자가 암/보호화 키(key) 및 명령어를 직접 입력해야 하는 번거로움과 암/복호화 키를 분실했을 경우에는 암호화된 화일을 다시 복호화할 수 없는 문제점 그리고 사용자의 실수로 인한 두번의 암호화등이 발생할 수 있는 문제점이 있었다.In addition, since the user's identifier is very important as described above, if any malicious user can use the identifier of another user to access certain material in the personal computer, the access control by the DAC is not secure. There is no guarantee. In addition, due to the inherent characteristics of the personal computer, there is a mechanism for bypassing such access control to directly access important files existing in the auxiliary storage. To solve this problem, the encryption / decryption method provided by the user's command input is also encrypted when the user has to enter the encryption / protection key and the command and the encryption / decryption key is lost. There was a problem in that the file could not be decrypted again and a double encryption could occur due to a user error.

따라서, 상기 종래 기술에 대한 제반 문제점들을 해결하기 위하여 안출된 본 발명은 사용자의 비밀 레이블(비밀등급+비밀범주)과 화일에 포함된 데이타의 비밀성에 근거하여 화일에 대한 강제적 액세스 제어(MAC : Mandatorly Access Control)를 수행한 후에 자동 암/복호화와 연동하여 악의있는 사용자로부터의 정보의 불법 누출을 막을 수 있도록 한 자동 암/복호화를 이용한 퍼스널 컴퓨터의 데이타 보호 방법을 제공하는데 그 목적이 있다.Therefore, the present invention devised to solve all the problems of the prior art is based on the mandatory access control (MAC: Mandatorly) for the file based on the user's secret label (secret class + secret category) and the confidentiality of the data contained in the file The purpose of the present invention is to provide a data protection method of a personal computer using automatic encryption / decryption to prevent illegal leakage of information from malicious users by interlocking with automatic encryption / decryption after performing Access Control.

상기 목적을 달성하기 위해 본 발명은, 주 기억장치, 상기 주 기억장치에 연결된 명령어 해석기, 상기 명령어 해석기에 연결된 액세스 제어부(Access Control Unit), 상기 액세스 제어부, 보조 기억장치 및 주 기억장치에 연결된 자동 암/복호화부, 상기 자동 암/복호화부에 연결된 자동 암/복호화 키 생성부, 상기 자동 암/복호화부 및 주 기억장치에 연결된 보호 기억장치를 포함하여 구성된 퍼스널 컴퓨터의 데이타 보호 방법에 있어서, 사용자가 쉘 프로세스가 실행되는 사용자 명령어 대기상태에서 명령어를 입력하면, 모든 시스템 호출을 액세스 제어와 연동되는 상기 자동 암/복호화부에서 가로채어 암/복호화의 관련 여부를 판단하는 강제적 액세스 제어(Mandatory Access Control)를 수행하는 제1단계 ; 상기 액세스 제어를 통과한 것에 대하여 액세스 대상화일의 비밀등급보다 사용자의 비밀등급이 높거나 같고 사용자의 비밀범주가 액세스 대상 화일의 비밀범주를 포함할시에만 해당 화일에 대한 판독 액세스가 허용되도록 암/복호화를 판단하는 제2단계 ; 상기 암/복호화 판단에 의거하여 화일을 강제로 폐쇄시켜 화일의 크기를 얻은 후에 이 화일의 크기를 암호화 초기벡터로 이용하여 암호화 키를 생성하거나 복호화 키 및 복호화 초기 벡터값으로 이용하여 복호화 키를 생성하는 제3단계 ; 및 상기 생성된 복호화 키 및 복호화 초기 벡터를 암호 화일에 주입하여 해당 화일에 대한 복호화를 수행하여 복호화된 평문화일을 사용자에 출력하고, 상기 생성된 암호화키로 화일의 암호화를 수행하여 암호 화일을 출력하는 제4단계를 포함하는 것을 특징으로 한다.In order to achieve the above object, the present invention provides a main memory device, a command interpreter connected to the main memory device, an access control unit connected to the command interpreter, an access control unit, an auxiliary memory device and an automatic device connected to the main memory device. A data protection method of a personal computer comprising an encryption / decryption unit, an automatic encryption / decryption key generation unit connected to the automatic encryption / decryption unit, and a protection storage unit connected to the automatic encryption / decryption unit and a main memory device. Access when a user enters a command while waiting for a user command to execute a shell process, and intercepts all system calls in the automatic encryption / decryption unit linked with access control to determine whether encryption / decryption is involved. The first step of performing; If the user's secret level is higher than or equal to the secret level of the file to be accessed and the user's secret category contains the secret category of the file to be accessed, the read / write access to the file is allowed. A second step of determining decryption; Based on the encryption / decryption judgment, the file is forcibly closed to obtain a file size, and then an encryption key is generated using the file size as an encryption initial vector or a decryption key is used as a decryption key and decryption initial vector value. Third step to do; And injecting the generated decryption key and decryption initial vector into an encryption file to decrypt the corresponding file, outputting the decrypted plain text file to the user, and encrypting the file with the generated encryption key to output the encrypted file. And a fourth step.

이하, 첨부된 도면을 참조하여 본 발명에 따른 일실시예를 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described an embodiment according to the present invention;

제1도는 본 발명이 적용되는 하드웨어 시스템의 구성도로서, 도면에서 1은 보조 기억장치, 2는 주 기억 장치, 3은 액세스 제어부, 4는 명령어 해석기, 5는 자동 암/복호화부, 6은 암/복호화 키 생성부를 각각 나타낸다.1 is a configuration diagram of a hardware system to which the present invention is applied, in which 1 is an auxiliary storage device, 2 is a main memory device, 3 is an access control unit, 4 is a command interpreter, 5 is an automatic encryption / decryption unit, and 6 is an arm. / Decryption key generator respectively.

본 발명이 적용되는 하드웨어 시스템은 도면에 도시한 바와 같으며, 사용자의 액세스 제어 정보를 저장하는 저장소, 화일의 액세스 제어 정보를 저장하는 저장소, 명령어를 저장하는 저장소 및 암/복호화를 위한 데이타를 저장하는 저장소를 통합하여 구성된 주기억장치(2), 상기 주기억장치(2)에 연결되어 판독 액세스 요청의 허가 결정을 내리는 명령어 해석기(4), 상기 명령어 해석기(4)에 연결되어 사용자의 비밀등급과 화일의 비밀등급을 참조하여 이들간의 값들을 비교하고, 사용자의 비밀등급이 화일의 비밀등급과 같으면 기록 액세스를 허가하는 액세스 제어부(3), 상기 액세스 제어부(3)와 주 기억장치(2)에 연결되며 판독과 기록의 요구에 의한 암/복호화 판단을 하여 판독 요청일시에는 복호화, 기록 요청일시에는 암호화를 수행하는 자동 암/복호화부(5), 상기 자동 암/복호화부(5), 상기 자동 암/복호화부(5)에 연결되어 암호화 및 복호화를 위해 사용되는 키를 생성하고 저장하는 암/복호화 키 생성부(6), 상기 자동 암/복호화부(5) 및 주기억장치(2)에 연결되어 데이타 화일의 비밀 등급 정보 암/복호화된 데이타를 저정하고 있는 보조 기억장치(1)를 구비한다.Hardware system to which the present invention is applied is as shown in the drawings, a storage for storing the access control information of the user, a storage for storing the access control information of the file, a storage for storing instructions and data for encryption / decryption A main memory (2) configured by integrating a storage device, a command interpreter (4) connected to the main memory (2) to make a permission decision for a read access request, and a command secret (4) connected to the command interpreter (4). Compares the values between them by referring to the secret class of < RTI ID = 0.0 > and < / RTI > Automatic encryption / decryption that performs encryption / decryption by reading and recording request, and decrypts at the read request date and encrypts at the write request date. An encryption / decryption key generation unit 6 connected to the automatic encryption / decryption unit 5 and the automatic encryption / decryption unit 5 to generate and store a key used for encryption and decryption; A secondary storage device 1 is connected to the automatic encryption / decryption unit 5 and the main memory device 2, which stores secret grade information encrypted / decrypted data of a data file.

상기와같이 구성된 하드웨어 시스템의 동작을 설명하면 다음과 같다.The operation of the hardware system configured as described above is as follows.

사용자의 식별자와 사용자 비밀 레이블은 상기 주 기억장치(2)의 저장소에 저장하고, 화일의 소유자(Owner) 식별자와 액세스 허가권한 프로화일링(Profiling) 리스트 및 화일의 비밀 레이블은 상기 보조 기억장치(1)의 디렉토리 엔트리(Directory Entry)로부터 상기 주 기억장치(2)의 저장소로 옮겨 저장된다. 사용자 명령어는 상기 주 기억장치(2)의 명령어 저장소로부터 상기 명령어 해석기(4)로 보내져서 먼저 상기 액세스 제어부(3)의 제어를 받게 된다. 보내진 명령어가 기록(Write) 요청이면 먼저 기록 액세스 권한이 있는지를 조사한다.The identifier of the user and the user secret label are stored in the storage of the main storage device 2, and the owner identifier of the file and the access permission profiling list and the secret label of the file are stored in the auxiliary storage device 1. Is stored in the storage of the main storage device 2 from the directory entry of the " The user command is sent from the command store of the main storage 2 to the command interpreter 4 and is first controlled by the access control unit 3. If the command sent is a write request, it first checks whether it has write access.

상기 액세스 제어부(3)는 사용자의 비밀 레이블과 화일의 비밀 레이블을 참조하여 이들간의 값들을 비교, 사용자의 비밀등급이 화일의 비밀등급과 같고, 화일의 비밀범주가 사용자의 비밀범주를 포함하면 기록 액세스가 허가된다. 상기와 비슷한 방법으로, 사용자가 중요화일에 대하여 판독(Read) 액세스 요청을 할때, 상기 액세스 제어부(3)는 사용자의 비밀등급이 화일의 비밀등급보다 크거나 같고 사용자의 비밀범주가 화일의 비밀범주를 포함하면 판독 액세스 요청을 허가한다.The access control unit 3 compares the values between the user's secret label and the file's secret label, and records if the user's secret level is equal to the file's secret level and the file's secret category contains the user's secret category. Access is granted. In a manner similar to the above, when a user requests read access to an important file, the access control unit 3 determines that the user's secret level is greater than or equal to the file's secret level and that the user's secret category is the file's secret. Including a category allows read access requests.

상기와 같이 사용자가 중요화일을 액세스하려고 할시 액세스제어부에 의하여 액세스 허가가 이루어지면 최종적으로 자동암/복호화가 이루어진다. 즉, 자동 암/복호화부에서는 사용자의 중요화일에 대한 판독과 기록 요구에 따른 암/복호화를 판단하여 판독 요청일때는 복호화, 기록 요청일때는 암호화를 수행하게 된다. 이때, 암/복호화에 사용되는 키는 암/복호화 키 생성부에 의해서 생성되며 생성된 키를 사용하여 화일의 암호화/복호화를 수행하게 된다. 암호화 키는 암/복호화부에서 난수(random number)를 이용하여 퍼스널 컴퓨터당 1개의 기본키를 유지하되 모든 화일을 한개의 키로 암/복호화시켜 암호학적 비도가 감쇄되는 영향을 줄이기 위해 각 화일의 크기를 암/복호화의 초기 벡터값으로 사용한다. 만약, 키의 변경요구가 발생하면 암/복호화 키 생성부(17)내의 난수 발생 루틴을 구동하여 암/복호화 키를 변경한다.When the user attempts to access the important file as described above, if the access is granted by the access control unit, automatic encryption / decryption is finally made. That is, the automatic encryption / decryption unit determines the encryption / decryption according to the read and write request of the user's important file, and decrypts the read request and encrypts the write request. At this time, the key used for encryption / decryption is generated by the encryption / decryption key generator and performs encryption / decryption of the file using the generated key. The encryption key maintains one primary key per personal computer using a random number in the encryption / decryption section, but encrypts / decrypts all files with one key to reduce the impact of the cryptographic secretity being attenuated. Is used as the initial vector value of encryption / decoding. If a key change request is generated, a random number generation routine in the encryption / decryption key generation unit 17 is driven to change the encryption / decryption key.

제2도는 본 발명에 의한 자동 암/복호화 방법의 소프트웨어 블럭간 구성도로서, 도면에서 11,11a,11b는 사용자, 12,12a,12b는 응용 프로그램, 13은 소프트웨어 라이브러리 인터페이스 함수, 14는 시스템 호출 인터페이스, 15는 액세스 제어부, 16는 비밀등급 관리부, 17은 암/복호화 키 생성부, 18은 자동 암/복호화부, 19는 기본 입/출력 시스템, 20은 보조 기억장치를 각각 나타낸다.2 is a block diagram of software blocks of the automatic encryption / decryption method according to the present invention, in which 11, 11a and 11b are users, 12, 12a and 12b are application programs, 13 are software library interface functions, and 14 are system calls. An interface, 15 is an access control unit, 16 is a secret class management unit, 17 is an encryption / decryption key generation unit, 18 is an automatic encryption / decryption unit, 19 is a basic input / output system, and 20 is an auxiliary storage device.

본 발명에 의한 자동 암/복호화 방법의 소프트웨어는 도면에 도시한 바와 같이 사용자의 소프트웨어 라이브러리 인터페이스 함수(13) 및 시스템 호출 인터페이스(14)를 통한 자원(화일)의 액세스 요청시에 사용자의 요구가 정당한지를 판정하여 사용자의 요구가 정당할 시에만 액세스 제어부(15)와 연동되는 자동 암/복호화부(18) 및 암/복호화에 필요한 키를 생성하고 저장하는 암/복호화 키생성부(17)로 이루어진다. 퍼스널 컴퓨터의 사용자(11,11a,11b)들은 그들의 운용 프로그램(12,12a,12b), 소프트웨어 라이브러리 인터페이스 함수(13) 시스템 호출 인터페이스(14) 또는 기본 입/출력 시스템(19)을 통하여 보호하고자 하는 중요 데이타가 수록되어 있는 보조기억장치에 도달하게 되는데, 이때 기본 입/출력 시스템(19)을 통한 직접적인 화일의 액세스를 제외한 모든 액세스 요구는 먼저 액세스 제어부(15)의 제어를 받게 된다.As shown in the figure, the software of the automatic encryption / decryption method according to the present invention has a legitimate user's request when requesting access to a resource (file) through the software library interface function 13 and the system call interface 14 of the user. The automatic encryption / decryption unit 18 interworking with the access control unit 15 and the encryption / decryption key generation unit 17 which generates and stores a key necessary for encryption / decryption only when the user's request is justified. . The users 11, 11a and 11b of the personal computer wish to protect via their operating programs 12, 12a and 12b, the software library interface function 13 system call interface 14 or the basic input / output system 19. A secondary memory device containing important data is reached, wherein all access requests except the direct file access through the basic input / output system 19 are first controlled by the access control unit 15.

상기 액세스 제어부(15)에서는 사용자가 중요화일에 대해서 액세스하고자 할 경우 먼저 사용자의 시스템 호출을 가로채어서(hooking) 중요화일에 대한 판독 혹은 기록 요청인지를 판별한다. 이때, 판독 혹은 기록 요청에 대한 판별은 중요화일을 액세스하기 위해 발생시키는 시스템 호출의 파라메터(parameter)를 보고 구별하게 된다. 즉, 중요화일에 액세스하기 위하여 중요화일을 오픈(open)할시 판독(Read) 모드인지 기록(Write) 모드인지를 조사하여 먼저 판독 모드일시는 사용자의 비밀등급이 중요화일에 설정되어 있는 비밀 등급보다 크거나 같고 사용자의 비밀범주가 화일의 비밀범주를 포함할때 판독을 허용하게 되며, 이때 자동 암/복호화부(18)를 호출하여 화일의 복호화를 수행하게 된다.When the user wants to access an important file, the access control unit 15 first intercepts a user's system call and determines whether the user requests a read or write request for the important file. At this time, the determination of the read or write request is made by looking at the parameters of the system call generated to access the important file. In other words, when accessing an important file, it is checked whether it is in read mode or write mode when the important file is opened. When the secret category of the user is greater than or equal to and includes the secret category of the file, reading is allowed. At this time, the automatic encryption / decryption unit 18 is called to decrypt the file.

화일의 복호화는 암/복호화 키 생성부(17)에서 난수 발생 루틴을 구동하여 얻어진 값을 암/복호화 키로 이용하고 화일의 크기를 초기벡터 값으로 사용하여 화일의 복호화를 수행하게 된다.Decryption of a file is performed using a value obtained by driving a random number generation routine in the encryption / decryption key generation unit 17 as an encryption / decryption key and using a file size as an initial vector value.

사용자가 중요화일을 기록 모드로 오픈(open)하면 액세스제어부(15)는 사용자의 비밀등급이 화일의 비밀 등급과 같고 화일의 비밀범주가 사용자의 비밀범주를 포함하면 중요화일에 대한 기록액세스를 허용하게 된다. 이때 액세스제어부(15)는 사용자의 요구가 기록 모드임을 암/복호화 판독부(21)에 알리고 화일의 복호화를 수행한다. 이때, 화일이 처음 생성되는 경우라면 복호화의 과정은 생략하게 되며, 암호화된 화일의 복호화 키 취득방법은 상기와 같이 처리되며, 복호화된 화일에 대하여 사용자가 임의의 조작(갱신, 첨가등)을 가한 후 화일을 저장하기 위해 오픈(open)된 화일을 폐쇄(close)할시 자동암/복호화부(18)를 호출하게 된다.When the user opens the important file in the recording mode, the access control unit 15 allows the record access to the important file if the user's secret level is equal to the file's secret level and the file's secret category contains the user's secret category. Done. At this time, the access control unit 15 notifies the encryption / decryption reading unit 21 that the user's request is in the recording mode, and decodes the file. At this time, if the file is created for the first time, the process of decryption is omitted, and the decryption key acquisition method of the encrypted file is processed as described above, and the user applies an arbitrary operation (update, addition, etc.) to the decrypted file. Afterwards, the automatic encryption / decryption unit 18 is called when the opened file is closed to store the file.

자동 암/복호화부(18)는 화일의 폐쇄(close)를 강제적으로 수행하여 암호화에 필요한 정보(즉, 화일의 크기)를 얻어내어 암호화의 초기벡터값으로 이용하여 암/복호화 키 생성부(17)에 저장되어 있는 키를 사용하여 암호화를 수행한다.The automatic encryption / decryption unit 18 forcibly closes the file to obtain the information necessary for encryption (that is, the size of the file) and uses the encryption as an initial vector value of the encryption / decryption key generator 17 Encryption is performed using the key stored in

여기서, 기본 입/출력 시스템(19)을 통하여 보조 기억장치(20)에 저장되어 있는 보호하고자 하는 화일에 대하여 직접 엑세스하는 불법적인 액세스 시도는 본 발명에서 적용된 자동 암/복호화부를 거치지 않게 되므로 액세스하고자 하는 화일에 대한 암/복호화가 이루어지지 않으므로 원하는 화일을 제대로 볼 수 없게 된다. 상기와 같이 사용자의 중요화일에 대한 액세스 요청시 종래의 임의적 액세스 제어가 지니고 있는 취약성을 보강한 강제적 액세스 제어로 액세스 요구를 제어함과 동시에 자동 암/복호화를 수행함으로써 퍼스널 컴퓨터가 지니고 있는 취약점을 보완함으로써 기밀성 있는 데이타를 안전하게 보호함과 동시에 불법적인 자료의 누출을 방지할 수 있게 된다.Here, the illegal access attempt to directly access the file to be protected stored in the auxiliary storage device 20 through the basic input / output system 19 does not go through the automatic encryption / decryption unit applied in the present invention. Since the encryption / decryption is not performed on the file, the desired file cannot be viewed properly. As described above, the compulsory access control that reinforces the vulnerability of the conventional discretionary access control when the user requests access to the important file is controlled to compensate for the weakness of the personal computer by controlling the access request and performing automatic encryption / decryption. This ensures the security of confidential data and prevents the leakage of illegal data.

제3도는 자동 암/복호화부의 상세 구성도로서, 21은 암/복호화 판독부, 22는 암호화부, 23은 복호화부를 각각 나타낸다.3 is a detailed configuration diagram of an automatic encryption / decryption unit, where 21 is an encryption / decryption reading unit, 22 is an encryption unit, and 23 is a decryption unit.

자동 암/복호화부(18)는 도면에 도시한 바와 같이 일단 액세스 제어부(15)를 거친 모든 합벅적인 액세스 요구에 대하여 먼저 암/복호화 판독을 수행하는 암/복호화 판독부(21), 암호화와 복호화를 수행하는 암호화부(22) 및 복호화부(23)를 포함하여 이루어진다.As shown in the figure, the automatic encryption / decryption unit 18 includes an encryption / decryption reader 21, an encryption / decryption reader 21 which first performs encryption / decryption readout for every strict access request that has passed through the access control unit 15 as shown in the figure. And an encryption unit 22 and a decryption unit 23 that perform decryption.

상기 암/복호화 판독부(21)는 사용자가 시스템 호출 인터페이스를 통하여 화일을 액세스하려 할때 시스템 호출을 가로채어서 시스템 호출의 파라메터(read 혹은 write)에 따라 암호화 또는 복호화가 필요한지를 판단하게 되며, 상기 암호화부(22)는 상기 암/복호화 판독부(21)에서 판독한 결과가 화일에 대한 기록 액세스일때 상기 암/복호화 키 생성부(17)로부터 암호화 키를 입력받고 화일의 크기를 암호화의 초기 벡터값으로 이용하여 액세스하고자 하는 대상 화일에 대하여 암호화를 수행하게 되며, 상기 암/복호화 판독부(21)에서 판독한 결과가 화일에 대한 판독 액세스일때 암/복호화 키 생성부(17)에 저장되어 있는 복호화 키를 이용하고 화일의 크기를 복호화의 초기 벡터값으로 이용하여 상기 복호화부(23)에서 해당 화일을 복호화한다.The encryption / decryption reader 21 intercepts the system call when the user tries to access the file through the system call interface, and determines whether encryption or decryption is necessary according to the parameter (read or write) of the system call. The encryption unit 22 receives an encryption key from the encryption / decryption key generation unit 17 when the result read by the encryption / decryption reading unit 21 is a write access to the file, and initializes the size of the file. Encryption is performed on the target file to be accessed using the vector value, and is stored in the encryption / decryption key generation unit 17 when the result read by the encryption / decryption reading unit 21 is read access to the file. The decryption unit 23 decrypts the file using the decryption key and the size of the file as the initial vector value of decryption.

제4도는 본 발명에 의한 자동 암/복호화 방법에 대한 처리 흐름도이다.4 is a process flow diagram for an automatic encryption / decryption method according to the present invention.

먼저, 퍼스널 컴퓨터를 사용하고자 하는 사용자는 셀 프로세스가 실행되는(31) 사용자 명령어 대기상태에서 명령어를 입력 하게 되는데 이때 입력되는 사용자 명령어 입력에 대한 모든 시스템 호출을 액세스 제어와 연동되는 자동 암/복호화부(5)에서 가로채게 된다(32).First, a user who wants to use a personal computer enters a command in a standby state of a user command in which a cell process is executed (31). In this case, an automatic encryption / decryption unit that interlocks all system calls for input of the user command input with access control. Intercepted at (5) (32).

자동 암/복호화부(5)는 사용자의 시스템 호출이 화일의 암/복호화에 관계가 되는 것(오픈(open), 생성(creat), 폐쇄(close)) 인지를 판단하여 관계가 없으면 제어를 시스템에게로 이양하며, 만약 암/복호화와 관련이 있을때는 해당되는 동작을 취하게 된다. 자동 암/복호화부(5)에서는 먼저 액세스하고자 하는 대상 화일에 대한 액세스 권한을 조사하는데(33) 액세스 권한이 판독 액세스일 경우 액세스 대상화일의 비밀등급보다 사용자의 비밀등급이 높거나 같고 사용자의 비밀범주가 액세스 대상 화일의 비밀범주를 포함할시에만 해당 화일에 대한 판독 액세스가 허용되며 이것은 암/복호화 판단의 근거로 사용된다(34). 즉, 액세스 요구가 화일에 대한 판독일시 상기 암/복호화 판독부(21)에서는 사용자의 요구대로 상기 제1도의 보조기억장치(1)에 저장되어 있는 암호화된 데이타를 판독하기 위하여 복호화 키를 요청하게 되며 상기 제1도의 암/복호화 키생성부(6)에서는 이곳에 저장되어 있는 복호화 키 및 복호화 초기 벡터값으로 사용되는 화일의 크기를 취득한다(39). 상기 제1도의 자동 암/복호화부(5)에서는 상기 보조기억장치(1)에 저장되어 있는 암호화 화일을 상기 주기억 장치(2)내의 자동 암/복호화 영역으로 읽어들여(40) 상기에서 얻어진 복호화 키 및 초기 벡터를 암호 화일에 주입하여 해당 화일에 대한 복호화를 실행하고(41) 복호화된 평문화일을 사용자에 출력하게 된다(42).The automatic encryption / decryption unit 5 determines whether the user's system call is related to the encryption / decryption of the file (open, create, or close). If it is related to encryption / decryption, the corresponding action is taken. The automatic encryption / decryption unit 5 first examines the access right to the target file to be accessed (33). If the access right is read access, the user's secret level is higher than or equal to the secret level of the access target file, and the user's secret is checked. Read access to the file is allowed only if the category contains the secret category of the file to be accessed, which is used as the basis for the encryption / decryption decision (34). That is, when the access request is read from the file, the encryption / decryption reading unit 21 requests a decryption key to read the encrypted data stored in the auxiliary storage device 1 of FIG. 1 as requested by the user. The encryption / decryption key generation unit 6 of FIG. 1 acquires the size of the file used as the decryption key and decryption initial vector value stored therein (39). The automatic encryption / decryption unit 5 of FIG. 1 reads the encryption file stored in the auxiliary storage device 1 into the automatic encryption / decryption area in the main storage device 40, and the decryption key obtained above. And injecting the initial vector into the cipher file to perform decryption on the file (41) and outputting the decrypted plain text to the user (42).

또한, 사용자가 어떤 화일에 대하여 기록 액세스를 요구할시 상기와 같이 먼저 사용자 시스템 호출을 가로채어서 액세스 권한 여부를 조사받게 되는데, 기록 액세스 요구는 이미 존재하는 화일에 대한 기록 액세스 요구와 새로이 생성되는 화일에 대한 기록(즉 생성후 기록) 액세스 요구 두가지로 분류되는데, 먼저 존재하는 화일에 대한 기록 액세스 요구에 대한 처리는 먼저 존재하고 있는 화일에 대하여 상기에서 기술한바와 같이 복호화를 수행한다. 복호화된 화일에 대하여 사용자의 적절한 조작(갱신, 변경등)이 가해진 후 사용자가 화일을 폐쇄하면 자동 암/복호화부가 이 시스템 호출을 가로챈다. 자동 암/복호화부는 화일을 강제로 폐쇄시켜 화일의 크기를 얻어내어 이것을 암호화 초기벡터로 이용한다(35).In addition, when a user requests write access for a file, first, the user system call is intercepted as above to be examined for access rights. The write access request includes a write access request for a file that already exists and a newly created file. There are two types of write access requests (i.e., post-production) write requests. First, the write access request for the existing file is decoded as described above with respect to the existing file. If the user closes the file after proper manipulation (update, change, etc.) of the decrypted file is made, the automatic encryption / decryption unit intercepts this system call. The automatic encryption / decryption unit forcibly closes the file to obtain the file size and uses it as the encryption initial vector (35).

상기에서 얻어진 초기벡터 및 암/복호화 키 생성부에 저장되어 있는 암호화키를 취득하여(35) 보조기억장치에 있는 화일을 주기억장치의 암/복호화 영역으로 읽어들여(36) 화일의 암호화를 수행하게 되며(37) 암호화된 화일은 주기억장치의 암/복호화 영역에서 보조기억장치로 쓰여지게 된다(38). 그리고, 새로이 생성되는 화일에 대한 기록 액세스 요구시에는 사용자의 생성시스템 호출시 자동 암/복호화부에서 시스템 호출을 가로채어 새로이 생성되는 화일이라는 표시를 한 후 복호화 과정을 생략한다. 이후 사용자가 새로이 생성되는 화일에 대하여 적절한 조작을 마무리지으면 상기와 마찬가지로 화일의 폐쇄(close) 시스템 호출을 가로채어서 화일의 암호화를 수행하게 된다.Obtain the encryption key stored in the initial vector and the encryption / decryption key generation unit obtained above (35) and read the file in the secondary storage device into the encryption / decryption area of the main memory device (36) to perform encryption of the file. (37) The encrypted file is used as an auxiliary memory in the encryption / decryption area of the main memory (38). In addition, when a write access request for a newly created file is requested, an automatic encryption / decryption unit intercepts a system call when a user calls a generated system, displays a newly generated file, and skips the decoding process. After that, when the user finishes the proper operation on the newly created file, the file is encrypted by intercepting the close system call of the file as described above.

상기와 같이 구성되어 동작하는 본 발명은 종래의 퍼스널 컴퓨터 시스템에서 제공하고 있는 DAC 기능의 단점을 보완한 MAC 기법의 도입과 더불어 일일이 사용자가 암호화를 위한 명령어 및 키를 입력하던 것과는 크게 다르게 액세스 제어부의 액세스 결과에 따른 자동 암/복호화를 수행함으로써 사용자의 편리성 증대, 암호화 키 분실로 인한 데이타 복구의 불가 제거 및 중요정보의 불법누출을 막을 수 있으며, 또한 퍼스널 컴퓨터가 가지고 있는 고유의 특성으로 인한 보조기억장치에의 직접적인 판독/기록 액세스시에도 정보의 누출을 막을 수 있으므로 중요 정보의 불법복제, 사용등과 같은 여러가지 보안 관련사고를 방지할 수 있는 효과가 있다.The present invention, which is configured and operated as described above, is significantly different from the user's input of an instruction and a key for encryption, with the introduction of a MAC technique that compensates for the shortcomings of the DAC function provided in the conventional personal computer system. By performing automatic encryption / decryption according to the access result, it is possible to increase user's convenience, eliminate data recovery due to loss of encryption key, prevent illegal leakage of important information, and assist with personal characteristics of personal computer. Since information leakage can be prevented even when direct read / write access to the memory device, various security-related accidents such as illegal copying and use of important information can be prevented.

Claims (1)

주기억장치(2), 상기 주 기억장치(2)에 연결되어 판독 액세스 요청의 허가 결정을 내리는 명령어 해석기(4), 상기 명령어 해석기(4)에 연결되어 사용자의 비밀등급과 화일의 비밀등급을 비교하여 기록 액세스를 제어하는 액세스 제어부(3), 상기 액세스 제어부(3)와 주 기억장치(2)에 연결되며 암/복호화 판독부(21)와 암호화와 복호화를 수행하는 암호화부(22)와 복호화부(23)를 구비하는 자동 암/복호화부(5), 상기 자동 암/복호화부(5)에 연결되어 암호화 및 복호화를 위해 사용되는 키를 생성하고 저장하는 암/복호화 키 생성부(6), 상기 자동 암/복호화부(5) 및 주기억장치(2)에 연결되어 데이타 화일의 비밀 등급 정보, 암/복호화된 데이타를 저장하고 있는 보조 기억장치(1)를 구비하는 하드웨어에 적용되는 데이타 보호 방법에 있어서, 사용자가 쉘 프로세스가 실행되는 사용자 명령어 대기상태에서 명령어를 입력하면, 모든 시스템 호출을 액세스 제어와 연동되는 상기 자동 암/복호화부(5)에서 가로채어 암/복호화의 관련 여부를 판단하는 강제적 액세스 제어(Mandatory Access Control)를 수행하는 제1단계(31 내지 33) ; 상기 액세스 제어를 통과한것에 대하여 액세스 대상화일의 비밀등급 보다 사용자의 비밀등급이 높거나 같고 사용자의 비밀범주가 액세스 대상 화일의 비밀범주를 포함할시에만 해당 화일에 대한 판독 액세스가 허용되도록 암/복호화를 판단하는 제2단계(34) ; 상기 암/복호화 판단에 의거하여 화일을 강제로 폐쇄시켜 화일의 크기를 얻은 후에 이 화일의 크기를 암호화 초기벡터로 이용하여 암호화 키를 생성하거나 복호화 키 및 복호화 초기 벡터값으로 이용하여 복호화 키를 생성하는 제3단계(35,39) ; 및 상기 생성된 복호화 키 및 복호화 초기 벡터를 암호화일에 주입하여 해당 화일에 대한 복호화를 수행하여 복호화된 평문화일을 사용자에 출력하고, 상기 생성된 암호화키로 화일의 암호화를 수행하여 암호 화일을 출력하는 제4단계(36 내지 38,40 내지 42)를 포함하는 것을 특징으로 하는 자동 암/복호화를 이용한 퍼스널 컴퓨터의 데이타 보호 방법.A command interpreter (4) connected to the main memory (2), the main memory (2) to make a decision to grant a read access request, and a command interpreter (4) to compare the user's secret level with the file's secret level. An access control unit 3 for controlling write access, an access control unit 3 and a main storage unit 2, an encryption / decryption reading unit 21 and an encryption unit 22 that performs encryption and decryption, and decryption. An automatic encryption / decryption unit 5 having a unit 23, and an encryption / decryption key generation unit 6 connected to the automatic encryption / decryption unit 5 to generate and store a key used for encryption and decryption. And data protection applied to hardware having a secondary storage device (1) connected to the automatic encryption / decryption unit (5) and the main memory device (2) for storing secret grade information of the data file and storing encrypted / decrypted data. Method, a shell process When a command is input in a waiting state of a user command to be executed, mandatory access control for intercepting all system calls by the automatic encryption / decryption unit 5 linked with access control to determine whether encryption / decryption is related. First steps 31 to 33 to perform; If the user's secret level is higher than or equal to the secret level of the file to be accessed and the user's secret category includes the secret category of the file to be accessed, the read access to the file is allowed. A second step 34 of determining decryption; Based on the encryption / decryption judgment, the file is forcibly closed to obtain a file size, and then an encryption key is generated using the file size as an encryption initial vector or a decryption key is used as a decryption key and decryption initial vector value. Third step (35,39) to make; And injecting the generated decryption key and decryption initial vector into an encryption date, decrypting the corresponding file, outputting the decrypted plain text file to the user, and encrypting the file with the generated encryption key to output an encrypted file. And a fourth step (36 to 38, 40 to 42). The data protection method of the personal computer using automatic encryption / decryption.
KR1019930024137A 1993-11-13 1993-11-13 Personal computer data protection method using automatic encryption/decryption KR950015185B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019930024137A KR950015185B1 (en) 1993-11-13 1993-11-13 Personal computer data protection method using automatic encryption/decryption

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019930024137A KR950015185B1 (en) 1993-11-13 1993-11-13 Personal computer data protection method using automatic encryption/decryption

Publications (2)

Publication Number Publication Date
KR950015077A KR950015077A (en) 1995-06-16
KR950015185B1 true KR950015185B1 (en) 1995-12-23

Family

ID=19368000

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930024137A KR950015185B1 (en) 1993-11-13 1993-11-13 Personal computer data protection method using automatic encryption/decryption

Country Status (1)

Country Link
KR (1) KR950015185B1 (en)

Also Published As

Publication number Publication date
KR950015077A (en) 1995-06-16

Similar Documents

Publication Publication Date Title
KR0138770B1 (en) Electronic keying scheme for locking data
US6889210B1 (en) Method and system for managing security tiers
CA2253585C (en) Cryptographic file labeling system for supporting secured access by multiple users
US7330981B2 (en) File locker and mechanisms for providing and using same
USRE41546E1 (en) Method and system for managing security tiers
US5224166A (en) System for seamless processing of encrypted and non-encrypted data and instructions
US4262329A (en) Security system for data processing
US7577838B1 (en) Hybrid systems for securing digital assets
US6976167B2 (en) Cryptography-based tamper-resistant software design mechanism
KR100596135B1 (en) Control system for access classified by application in virtual disk and Controling method thereof
EP1596269A2 (en) A system and method for rendering selective presentation of documents
JPH1185622A (en) Protection memory for core data secret item
JP5040859B2 (en) Information leakage prevention program and information leakage prevention method
US20080010686A1 (en) Confidential Information Processing Device
JPH07295892A (en) Secure system
CN104778954B (en) A kind of CD subregion encryption method and system
JP2007011511A (en) Method for preventing information leak
CN110213051B (en) Encryption and decryption method and system for fine granularity of directory
CN114547648A (en) Data hiding trace query method and system
KR20070052073A (en) Digital document preservation system having a share memory for user access function and document transaction method used the system
CN113806785B (en) Method and system for carrying out security protection on electronic document
KR950015185B1 (en) Personal computer data protection method using automatic encryption/decryption
Chen et al. Hardware-assisted application-level access control
KR100523843B1 (en) Apparatus for ACL-based control mechanism for access control in DRM client software
CN111523129A (en) TPM-based data leakage protection method

Legal Events

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

Payment date: 19980929

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee