[go: up one dir, main page]

KR100988198B1 - Coding method - Google Patents

Coding method Download PDF

Info

Publication number
KR100988198B1
KR100988198B1 KR1020100050866A KR20100050866A KR100988198B1 KR 100988198 B1 KR100988198 B1 KR 100988198B1 KR 1020100050866 A KR1020100050866 A KR 1020100050866A KR 20100050866 A KR20100050866 A KR 20100050866A KR 100988198 B1 KR100988198 B1 KR 100988198B1
Authority
KR
South Korea
Prior art keywords
encryption
key
security policy
application server
session key
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020100050866A
Other languages
Korean (ko)
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 KR1020100050866A priority Critical patent/KR100988198B1/en
Application granted granted Critical
Publication of KR100988198B1 publication Critical patent/KR100988198B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6227Protecting 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템에 관한 것으로서, 더욱 상세하게는 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법에 있어서, IC카드에 저장되어 있는 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 이중 암호화시켜 어플리케이션서버에 로딩하는 제 1 과정과;
어플리케이션서버에 로딩된 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 복호화하여 어플리케이션메모리에 저장하는 제 2 과정과;
제 2 과정 이후 사용자에 의해 조회 또는 입력 요청되는 쿼리문의 테이블/컬럼에 대한 접근권한 여부를 어플리케이션 메모리에 저장되어 있는 보안정책정보를 이용하여 판단하고, 그 판단결과에 따라 입출력되는 테이블/컬럼을 암호화키를 이용하여 암/복호화하는 제 3 과정; 으로 구성한 것을 특징으로 한다.
본 발명에 의하면, 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서 사용자가 자신들 만의 데이타를 암호화할 수 있게되어 중요정보의 유출을 차단할 수 있게되어 보다 안전하게 분산 컴퓨팅 기반 유틸리티 컴퓨팅을 사용할 수 있도록 하는 효과를 기대할 수 있다.
The present invention relates to an encryption method and system for preventing information leakage in a distributed computing-based utility computing environment, and more particularly, to an encryption method for preventing information leakage in a distributed computing-based utility computing environment. A first step of double-encrypting the encryption key and the security policy information stored in the application server using the session key and the header key and loading the same into the application server;
A second step of decrypting the encryption key and the security policy information loaded in the application server by using the session key and the header key and storing them in the application memory;
After the second process, it is determined whether the access right to the table / column of the query statement that is requested or input by the user using the security policy information stored in the application memory, and encrypts the input / output table / column according to the determination result. A third process of encrypting / decrypting using a key; Characterized in that configured.
According to the present invention, in a distributed computing-based utility computing environment, users can encrypt their own data, thereby preventing the leakage of important information, thereby enabling the use of distributed computing-based utility computing more safely.

Figure R1020100050866
Figure R1020100050866

Description

분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템{Coding method}Encryption method for preventing information leakage in utility computing environment based on distributed computing and system for same {Coding method}

본 발명은 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템에 관한 것으로서, 더욱 상세하게는 사용자측 관리자가 IC카드와 보안정책 관리모듈을 이용하여 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 데이타 암호화를 위한 암호화키와보안정책정보를 이중 암/복호화시켜 어플리케이션 서버의 메모리에 저장하고, 그 어플리케이션 서버의 메모리에 저장된 암호화키와보안정책정보를 활용하여 이후 사용자의 유틸리티 컴퓨팅 사용시 입출력되는 데이타를 암호화하도록 하므로서, 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서도 사용자가 자신들과 관련하여 입출력되는 데이타를 암호화하여 저장 및 출력할 수 있게되어 정보의 유출을 방지할 수 있도록 한 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템에 관한 것이다.
The present invention relates to an encryption method for preventing information leakage in a distributed computing-based utility computing environment and a system therefor. More specifically, a user-side administrator uses an IC card and a security policy management module in a distributed computing-based utility computing environment. Double-encrypt / decrypt encryption key and security policy information for data encryption in the application server's memory, and utilize the encryption key and security policy information stored in the memory of the application server to input / output data when the user uses utility computing. Distributed computing-based utility computing environment that enables users to encrypt, store, and output data input and output related to them even in distributed computing-based utility computing environment to prevent information leakage Encryption methods for a server to prevent information leakage and to a system for them.

분산 컴퓨팅 기반 유틸리티 컴퓨팅이라 함은 서비스 제공자가 여러 곳에 분산되어 있는 데이터 센터를 가상화 기술로 통합하여 사용자에게 제공하고, 사용자는 어플리케이션, 스토리지, 운영체제 등 필요한 IT자원을 원하는 시점에 원하는 만큼 골라서 사용하게되는 것을 말하며, 일명 클라우드 컴퓨팅으로 정의되고 있다.Distributed computing-based utility computing means that service providers integrate data centers that are distributed in various places with virtualization technology and provide them to users, and users can select and use as needed IT resources such as applications, storage, and operating systems as desired. It is defined as cloud computing.

분산 컴퓨팅 기반 유틸리티 컴퓨팅 서비스가 제공됨에 따라 사용자는 시스템 구축비용을 절약할 수 있으며, 서비스 제공자는 시스템 인프라를 대용량으로 구축하여 여러 사용자에게 임대하는 형식으로 제공하여 수익을 창출할 수 있게되는 것이다.With the provision of distributed computing-based utility computing services, users can reduce system deployment costs, and service providers can build revenue by providing a large amount of system infrastructure that can be leased to multiple users.

이러한 분산 컴퓨팅 기반 유틸리티 컴퓨팅 서비스는 사용자측에서 시스템 구축에 소요되는 막대한 비용을 절감할 수 있다는 장점으로 그 사용빈도가 점차 증가하고 있는 추세이다.Such distributed computing-based utility computing services are increasingly used due to the advantage that the user side can reduce enormous costs for system construction.

그러나, 분산 컴퓨팅 기반 유틸리티 컴퓨팅 서비스는 사용자측에서 시스템에 입출력되는 데이타를 암호화 할 수 없는 단점이 있어서 중요한 정보의 유출에 그대로 노출되어 있는 심각한 문제점을 갖고 있다.
However, distributed computing-based utility computing services have a serious problem that the user side can not encrypt the data input and output to the system, which is exposed to the leakage of important information.

따라서, 상기 문제점을 해결하기 위한 본 발명은 사용자측 관리자가 IC카드와 보안정책 관리모듈을 이용하여 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 데이타 암호화를 위한 암호화키와보안정책정보를 이중 암/복호화시켜 어플리케이션 서버의 메모리에 저장하고, 그 어플리케이션 서버의 메모리에 저장된 암호화키와보안정책정보를 활용하여 이후 사용자의 유틸리티 컴퓨팅 사용시 입출력되는 데이타를 암호화하도록 하므로서, 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서도 사용자가 자신들과 관련하여 입출력되는 데이타를 암호화하여 저장 및 출력할 수 있게되어 정보의 유출을 방지할 수 있도록 한 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템을 제공함을 목적으로 한다.
Therefore, in order to solve the above problems, the present invention provides an application server by double-encrypting / decrypting encryption keys and security policy information for data encryption in a distributed computing-based utility computing environment by using an IC card and a security policy management module. In the memory of the application server, and encrypts the data input and output when using the user's utility computing by using the encryption key and security policy information stored in the memory of the application server, so that users in the distributed computing-based utility computing environment It is an object of the present invention to provide an encryption method and system for preventing information leakage in a distributed computing-based utility computing environment capable of encrypting, storing, and outputting data to prevent information leakage.

상기 목적달성을 위한 본 발명은,According to an aspect of the present invention,

분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법에 있어서,An encryption method for preventing information leakage in a distributed computing based utility computing environment,

IC카드에 저장되어 있는 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 이중 암호화시켜 어플리케이션서버에 로딩하는 제 1 과정과;A first step of double encrypting the encryption key and the security policy information stored in the IC card by using the session key and the header key;

어플리케이션서버에 로딩된 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 복호화하여 어플리케이션메모리에 저장하는 제 2 과정과;A second step of decrypting the encryption key and the security policy information loaded in the application server by using the session key and the header key and storing them in the application memory;

제 2 과정 이후 사용자에 의해 조회 또는 입력 요청되는 쿼리문의 테이블/컬럼에 대한 접근권한 여부를 어플리케이션 메모리에 저장되어 있는 보안정책정보를 이용하여 판단하고, 그 판단결과에 따라 입출력되는 테이블/컬럼을 암호화키를 이용하여 암/복호화하는 제 3 과정; 으로 구성한 것을 특징으로 한다.
After the second process, it is determined whether the access right to the table / column of the query statement that is requested or input by the user using the security policy information stored in the application memory, and encrypts the input / output table / column according to the determination result. A third process of encrypting / decrypting using a key; Characterized in that configured.

본 발명에 의하면, 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서 사용자가 자신들 만의 데이타를 암호화할 수 있게되어 중요정보의 유출을 차단할 수 있게되어 보다 안전하게 분산 컴퓨팅 기반 유틸리티 컴퓨팅을 사용할 수 있도록 하는 효과를 기대할 수 있다.
According to the present invention, in a distributed computing-based utility computing environment, users can encrypt their own data, thereby preventing the leakage of important information, thereby enabling the use of distributed computing-based utility computing more safely.

도 1 은 본 발명의 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 시스템을 보인 블럭도.
도 2 는 본 발명의 암호화 방법에서 암호화키와보안정책을 클라우드 컴퓨팅 서비스영역에 로딩하는 과정을 보인 도면.
도 3 은 본 발명의 암호화 방법에서 클라우드 컴퓨팅 서비스영역에 로딩된 암호화키와보안정책을 어플리케이션 메모리에 로딩하는 과정을 보인 도면.
도 4 는 본 발명에 의해 설정된 암호화키와보안정책을 이용하여 정보조회시 데이타 암호화방법을 보인 도면.
도 5 는 본 발명에 의해 설정된 암호화키와보안정책을 이용하여 정보입력시 데이타 암호화방법을 보인 도면.
1 is a block diagram showing an encryption system for preventing information leakage in a distributed computing-based utility computing environment of the present invention.
2 is a diagram illustrating a process of loading an encryption key and a security policy into a cloud computing service area in the encryption method of the present invention.
3 is a diagram illustrating a process of loading an encryption key and a security policy loaded in a cloud computing service area into an application memory in the encryption method of the present invention.
4 is a diagram illustrating a data encryption method for information inquiry using an encryption key and a security policy set by the present invention.
5 is a view showing a data encryption method when inputting information using an encryption key and a security policy set by the present invention.

이하, 첨부된 도면 도 1 내지 도 5 를 참조하여 본 발명의 바람직한 실시예를 설명하면 다음과 같다.Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings, FIGS. 1 to 5.

본 발명을 설명함에 있어서 정의되는 용어들은 본 발명에서의 기능을 고려하여 정의 내려진 것으로, 본 발명의 기술적 구성요소를 한정하는 의미로 이해되어서는 아니 될 것이다.The terms defined in describing the present invention have been defined in consideration of the functions of the present invention and should not be construed to limit the technical elements of the present invention.

도 1 은 본 발명의 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 시스템을 보인 블럭도로서,1 is a block diagram showing an encryption system for preventing information leakage in a distributed computing-based utility computing environment of the present invention,

인터넷을 통해 접속하는 사용자PC(1)와 정보를 교신하는 고객 컴포넌트(51)와, 고객 컴포넌트(51)를 통해 사용자가 요청한 쿼리문에 대한 파싱 작업을 쿼리 아날라이저(53)에 요청하여 판단하고, 조회 또는 입력하고자 하는 테이블/컬럼에 대한 접근권한 여부를 암/복호화 엔진(54)을 통해 판단하는 프레임워크 인터페이스(52)와, 프레임워크 인터페이스(52)의 요청에 따라 쿼리문에 대해 암호화 및 접근제어 보안정책 적용을 위한 구문분석을 수행하여 파싱작업하고, 그 파싱작업 결과를 프레임워크 인터페이스(52)에 출력하는 쿼리 아날라이저(53)와, 어플리케이션서버(5) 내의 어플리케이션 메모리에 저장되는 암호화키와보안정책정보에 따라 조회 또는 입력하고자 하는 테이블/컬럼에 대해 접근권한 여부를 판단하여 프레임워크 인터페이스(52)에 전달하고, 조회 또는 입력하고자 하는 테이블/컬럼 데이타를 어플리케이션 메모리에 저장되어 있는 암호화키와보안정책정보에 따라 암/복호화하며, 어플리케이션 메모리에 저장되는 암호화키와보안정책정보를 헤더키와 세션키(SKey)로 복호화하여 저장시키는 암/복호화엔진(54)과, 암/복호화엔진(54)에서 암호화된 데이타를 데이타베이스 서버(6)에 저장하고, 암/복호화엔진(54)에서 호출요청한 데이타를 데이타베이스 서버(6)로 부터 호출하여 암/복호화엔진(54)에 공급하는 클라우드 프레임워크 인터페이스(55)로 구성된 어플리에케이션 서버(5)와;The client component 51 communicating information with the user PC 1 connected through the Internet, and the query analyzer 53 determine the parsing operation for the query statement requested by the user through the customer component 51, The framework interface 52 that determines whether the access right to the table / column to be searched or entered through the encryption / decryption engine 54, and encrypts and accesses the query statement at the request of the framework interface 52. Parse by parsing to apply the control security policy, query analyzer 53 for outputting the parsing result to the framework interface 52, encryption key stored in the application memory in the application server (5); Determining whether or not the access right to the table / column to be viewed or input in accordance with the security policy information to pass to the framework interface 52, Encrypts / decrypts the table / column data to be stored or entered according to the encryption key and security policy information stored in the application memory, and the encryption key and the security policy information stored in the application memory as the header key and the session key (SKey). The encryption / decryption engine 54 which decrypts and stores the data, and the data encrypted by the encryption / decryption engine 54 are stored in the database server 6, and the data requested by the encryption / decryption engine 54 is stored in the database server. An application server 5 composed of a cloud framework interface 55 for calling from (6) and supplying to the encryption / decryption engine 54;

다수의 사용자들과 관련한 데이타를 구분하여 저장하는 데이타 베이스 서버(6)와;A database server 6 for classifying and storing data relating to a plurality of users;

사용자가 인터넷을 통해 어플리케이션 서버(5)에 접속하여 정보의 조회 또는 입력이 이루어지도록 동작하는 사용자PC(1)와;A user PC 1 operable for a user to access the application server 5 via the Internet to inquire or input information;

보안정책 관리모듈(3)에서 생성된 솔트(salt)값과 인터레이션 카운트값(Interation Count), 그리고, 데이타 암호화에 적용하기 위한 암호화키와보안정책정보를 저장하는 칩메모리(41)가 내장되어 있는 IC카드(4)와;A salt memory and an interaction count generated by the security policy management module 3, and a chip memory 41 for storing encryption keys and security policy information for data encryption are built in. An IC card 4;

관리자가 사용하는 관리자PC(2)와;An administrator PC 2 used by the administrator;

암호화키와보안정책정보를 암호화 하기 위한 세션키(Session Key)를 랜덤하게 생성하는 제 1 의사난수생성기(31)와, 솔트값을 랜덤하게 생성하여 칩메모리(41)에 저장시키면서 암호화처리기(34)에 출력하는 제 2 의사난수생성기(32)와, 인터레이션 카운트값을 랜덤하게 생성하여 칩메모리(41)에 저장시키면서 암호화처리기(34)에 출력하는 인터레이션 카운트 생성기(33)와, 상기 제 1 의사난수생성기(31)에서 생성된 세션키를 이용하여 IC카드(4)에 저장된 암호화키와보안정책정보를 암호화하여 어플리케이션 서버(1)로 전송하고, 관리자PC(2)를 통해 입력되는 IC카드 핀번호 및 패스워드, 상기 생성된 솔트값과 인터페이션 카운트값을 이용하여 PKCS의 PBKDF2에 기술된 절차에 따라 헤더 키(Header Key)를 생성하며, 그 생성된 헤더 키를 이용하여 세션키를 암호화하여 암호화된 세션키(SKey)를 어플리케이션 서버(1)로 전송하는 암호화처리기(34)로 구성된 보안정책 관리모듈(3); 로 구성한 것을 특징으로 한다.A first pseudo random number generator 31 for randomly generating a session key for encrypting an encryption key and security policy information, and a salt processor for randomly generating a salt value and storing the random value in the chip memory 41. A second pseudorandom number generator 32 to be outputted), an interpolation count generator 33 to randomly generate an interaction count value and store it in the chip memory 41, and output it to the encryption processor 34; 1 Encrypts the encryption key and the security policy information stored in the IC card (4) using the session key generated by the pseudo random number generator 31 and transmits it to the application server (1), the IC input through the administrator PC (2) A header key is generated according to the procedure described in PBKDF2 of the PKCS using the card pin number and password, the generated salt value and the interface count value, and the session key is encrypted using the generated header key. Your password The session key (SKey) consisting of the encryption processor (34) for sending to an application server (1) security policy management module 3; Characterized in that configured.

상기 구성된 어플리케이션 서버(5)와 데이타베이스 서버(6)는 서비스 제공자측 시스템, 즉, 클라우드 컴퓨팅 서비스 영역이고, 사용자PC(1), 관리자PC(2), IC카드(4), 보안정책관리모듈(3)은 클라우드 컴퓨팅 서비스 영역을 사용하는 서비스 이용자측 영역이다.The configured application server 5 and database server 6 are service provider-side systems, i.e., cloud computing service areas, user PC 1, administrator PC 2, IC card 4, security policy management module. (3) is a service user side area using the cloud computing service area.

기존에는 클라우드 컴퓨팅 서비스 영역 내에서 이루어지는 데이타의 입/출력에 대해 암호화가 어려웠으나 본 발명에서는 클라우드 컴퓨팅 서비스 영역 내에서 이루어지는 데이타에 대해서도 암호화체계를 구축할 수 있도록 하여 클라우드 컴퓨팅 서비스 영역 내에서 보다 안전하게 정보를 입출력할 수 있도록 하면서 중요정보가 유출되지 않도록 한다.In the past, it was difficult to encrypt data input / output in the cloud computing service area. However, in the present invention, it is possible to construct an encryption system for data in the cloud computing service area so that information can be secured in the cloud computing service area. It is possible to input and output data while preventing important information from leaking.

상기 시스템에 의해 구현되는 본 발명의 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법은,Encryption method for preventing information leakage in the distributed computing-based utility computing environment of the present invention implemented by the system,

IC카드(4)에 저장되어 있는 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 이중 암호화시켜 어플리케이션서버(1)에 로딩하는 제 1 과정과;A first step of double-encrypting the encryption key and the security policy information stored in the IC card 4 by using the session key and the header key and loading them into the application server 1;

어플리케이션서버(1)에 로딩된 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 복호화하여 어플리케이션메모리에 저장하는 제 2 과정과;A second step of decrypting the encryption key and the security policy information loaded in the application server 1 using the session key and the header key and storing them in the application memory;

제 2 과정 이후 사용자에 의해 조회 또는 입력 요청되는 쿼리문의 테이블/컬럼에 대한 접근권한 여부를 어플리케이션 메모리에 저장되어 있는 보안정책정보를 이용하여 판단하고, 그 판단결과에 따라 입출력되는 테이블/컬럼을 암호화키를 이용하여 암/복호화하는 제 3 과정; 으로 구성한 것을 특징으로 한다.After the second process, it is determined whether the access right to the table / column of the query statement that is requested or input by the user using the security policy information stored in the application memory, and encrypts the input / output table / column according to the determination result. A third process of encrypting / decrypting using a key; Characterized in that configured.

그리고, 제 1 과정은, 관리자PC(2)를 이용하여 보안정책관리모듈(3)로 접속한 관리자로 부터 패스워드와 IC카드 핀(PIN)번호를 입력받는 제 1 단계와;The first process includes: a first step of receiving a password and an IC card pin (PIN) number from an administrator connected to the security policy management module 3 using the administrator PC 2;

제 1 의사난수 생성기(31)에서 세션키(Session Key)를 생성하고, 제 2 의사난수생성기(32)에서 솔트값을 생성하여 IC카드(4)의 칩메모리(41)에 저장시키면서 암호화처리기(34)에 출력하며, 인터레이션 카운트 생성기(33)에서 인터레이션값을 생성하여 IC카드(4)의 칩메모리(41)에 저장시키면서 암호화처리기(34)에 출력하는 제 2 단계와;A session key is generated in the first pseudo random number generator 31, a salt value is generated in the second pseudo random number generator 32, and stored in the chip memory 41 of the IC card 4. A second step of outputting to the encryption processor 34 while outputting the result of the conversion to the encryption processor 34 by generating the correlation value in the intercount count generator 33 and storing it in the chip memory 41 of the IC card 4;

암호화처리기(34)가 세션키를 이용하여 IC카드(4)에 저장되어 있는 암호화키와보안정책정보를 암호화하여 어플리케이션 서버(5)로 전송하는 제 3 단계와;A third step of the encryption processor 34 encrypting the encryption key and the security policy information stored in the IC card 4 using the session key and transmitting the encrypted key to the application server 5;

암호화처리기(34)가 IC카드 핀번호 및 패스워드, 상기 생성된 솔트값과 인터페이션 카운트값을 이용하여 PKCS의 PBKDF2에 기술된 절차에 따라 헤더 키(Header Key)를 생성하며, 그 생성된 헤더 키를 이용하여 세션키를 암호화하여 암호화된 세션키(SKey)를 어플리케이션 서버(1)로 전송하는 제 4 단계; 로 구성한 것을 특징으로 한다.The encryption processor 34 generates a header key according to the procedure described in PBKDF2 of the PKCS using the IC card pin number and password, the generated salt value and the interface count value, and the generated header key. A fourth step of transmitting the encrypted session key (SKey) to the application server (1) by encrypting the session key; Characterized in that configured.

그리고, 제 2 과정은, 관리자PC(2)가 웹브라우저를 통해 어플리케이션서버(5)에서 제공하는 보안정책 관리페이지로 접속하여 보안정책 로드 버튼을 클릭하고, 어플리케이션 서버(5)는 관리자PC(2)에 핀번호와 패스워드의 입력을 요청하는 제 5 단계와;In the second process, the administrator PC 2 accesses the security policy management page provided by the application server 5 through a web browser and clicks the load security policy button, and the application server 5 accesses the administrator PC 2. A fifth step of requesting input of a pin number and a password into a password);

관리자PC(2)로 부터 입력되는 핀번호와 패스워드를 수신하면서 IC카드(4)의 칩메모리(41)로 부터 전송되는 솔트값과 인터레이션값을 수신하는 제 6 단계와;A sixth step of receiving a salt value and an interaction value transmitted from the chip memory 41 of the IC card 4 while receiving the pin number and password inputted from the manager PC 2;

어플리케이션서버(5)의 암/복호화엔진(54)이 제 6 단계에서 수신된 핀번호, 패스워드, 솔트값, 인터레이션값을 이용하여 PKCS의 PBKDF2에 기술된 절차에 따라 헤더 키를 생성하고, 그 생성된 헤더 키를 이용하여 암호화된 세션키(SKey)를 복호화하여 세션키(Session Key)를 복원하는 제 7 단계와;The encryption / decryption engine 54 of the application server 5 generates a header key according to the procedure described in PBKDF2 of the PKCS using the pin number, password, salt value, and interaction value received in the sixth step. A seventh step of recovering the session key by decrypting the encrypted session key SKey using the generated header key;

암/복호화엔진(54)이 제 7 단계에서 복원된 세션키(Session Key)를 이용하여 암호화된 암호화키와보안정책정보를 복호화하여 복원시켜 어플리케이션 메모리에 로드시켜 저장하는 제 8 단계; 로 구성한 것을 특징으로 한다.An eighth step in which the encryption / decryption engine 54 decrypts the encrypted encryption key and the security policy information by using the session key restored in the seventh step, loads it into the application memory, and stores the encrypted key; Characterized in that configured.

이와같이 구성되는 본 발명의 제어방법에 대해 상세히 설명하면 다음과 같다.Referring to the control method of the present invention configured as described above in detail as follows.

먼저, 관리자가 관리자PC(2)를 이용하여 보안정책관리모듈(3)에 접속하면, 보안정책관리모듈(3)은 별도의 입력화면을 관리자PC(2)에 제공하고, 관리자는 입력화면을 통해 소정의 패스워드와 IC카드(4)의 핀번호를 입력한다.First, when an administrator accesses the security policy management module 3 using the administrator PC 2, the security policy management module 3 provides a separate input screen to the administrator PC 2, and the administrator displays the input screen. By inputting a predetermined password and pin number of the IC card (4).

이때, 보안정책관리모듈(3)의 제 1 의사난수생성기(31)는 암호화키와보안정책정보를 암호화 하기 위한 세션키(Session Key)를 랜덤하게 생성하고, 암호화처리기(34)는 상기 제 1 의사난수생성기(31)에서 생성된 세션키를 이용하여 IC카드(4)에 저장된 암호화키와보안정책정보를 암호화하여 어플리케이션 서버(1)로 전송한다.At this time, the first pseudo random number generator 31 of the security policy management module 3 randomly generates a session key for encrypting the encryption key and the security policy information, and the encryption processor 34 generates the first random key. The encryption key and the security policy information stored in the IC card 4 are encrypted using the session key generated by the pseudo random number generator 31 and transmitted to the application server 1.

그리고, 보안정책관리모듈(3)의 제 2 의사난수생성기(32)는 솔트값을 랜덤하게 생성하여 칩메모리(41)에 저장시키면서 암호화처리기(34)에 출력하고, 인터레이션 카운트 생성기(33)는 인터레이션 카운트값을 랜덤하게 생성하여 칩메모리(41)에 저장시키면서 암호화처리기(34)에 출력하며, 암호화처리기(34)는 관리자PC(2)를 통해 입력되는 IC카드 핀번호 및 패스워드, 상기 생성된 솔트값과 인터페이션 카운트값을 이용하여 PKCS의 PBKDF2에 기술된 절차에 따라 헤더 키(Header Key)를 생성하며, 그 생성된 헤더 키를 이용하여 세션키를 암호화하여 암호화된 세션키(SKey)를 어플리케이션 서버(1)로 전송한다.The second pseudo random number generator 32 of the security policy management module 3 randomly generates a salt value and outputs the salt value to the encryption processor 34 while storing the random value in the chip memory 41. Generates randomly generated interpolation count values and stores them in the chip memory 41, and outputs them to the encryption processor 34. The encryption processor 34 is an IC card pin number and password inputted through the manager PC 2, and Using the generated salt value and the interface count value, a header key is generated according to the procedure described in PBKDF2 of the PKCS, and the encrypted session key is encrypted by using the generated header key. ) Is transmitted to the application server 1.

즉, 보안정책관리모듈(3)은 암호화키와보안정책정보를 세션키를 이용하여 1차 암호화하여 어플리케이션 서버(1)로 전송하고, 또한 그 암호화된 암호화키와보안정책정보를 복호화하기 위한 세션키를 헤더키를 이용하여 2차 암호화하여 어플리케이션 서버(1)로 전송하여 업로드하는 것이다.That is, the security policy management module 3 first encrypts the encryption key and the security policy information using the session key and transmits the encrypted key and the security policy information to the application server 1, and also decrypts the encrypted encryption key and the security policy information. The key is second-encrypted using the header key and transmitted to the application server 1 for upload.

암호화키와보안정책정보의 업로드가 완료되면, 관리자는 어플리케이션서버(1)에 접속하여 암호화키와보안정책정보를 복호화하여 어플리케이션 메모리에 저장시키는 동작을 수행한다.When the upload of the encryption key and the security policy information is completed, the administrator accesses the application server 1 and decodes the encryption key and the security policy information to store in the application memory.

관리자PC(2)가 웹브라우저를 통해 어플리케이션서버(5)에서 제공하는 보안정책 관리페이지로 접속하여 보안정책 로드 버튼을 클릭하면, 어플리케이션 서버(5)는 관리자PC(2)에 핀번호와 패스워드의 입력을 요청하는 안내화면을 출력한다.When the administrator PC 2 accesses the security policy management page provided by the application server 5 through a web browser and clicks the load security policy button, the application server 5 sends a PIN number and password to the administrator PC 2. Print a guide screen requesting input.

그 안내화면을 통해 관리자가 핀번호와 패스워드를 입력하면 어플리케이션서버(5)는 사용자가 입력하는 핀번호와 패스워드를 수신하면서 IC카드(4)로 부터 솔트값과 인터레이션 카운트값을 수신받는다.When the administrator inputs the pin number and password through the guide screen, the application server 5 receives the salt value and the interaction count value from the IC card 4 while receiving the pin number and password input by the user.

IC카드(4)의 정보는 별도의 카드리더기를 통해 읽혀져 전송된다.The information of the IC card 4 is read and transmitted through a separate card reader.

핀번호, 패스워드, 솔트값, 인터레이션 카운트값이 수신되면, 어플리케이션서버(5)의 암/복호화엔진(54)이 수신된 핀번호, 패스워드, 솔트값, 인터레이션값을 이용하여 PKCS의 PBKDF2에 기술된 절차에 따라 헤더 키를 생성하고, 그 생성된 헤더 키를 이용하여 어플리케이션 서버(5)에 업로드되어 있는 암호화된 세션키(SKey)를 복호화하여 세션키(Session Key)를 복원한다.When a pin number, password, salt value, and an interaction count value are received, the encryption / decryption engine 54 of the application server 5 uses the received pin number, password, salt value, and interaction value to PBKDF2 of the PKCS. A header key is generated according to the described procedure, and the encrypted session key SKey uploaded to the application server 5 is decrypted using the generated header key to restore the session key.

세션키(Session Key)가 복원되면, 암/복호화엔진(54)은 복원된 세션키(Session Key)를 이용하여 어플리케이션 서버(5)에 업로드되어 있는 암호화된 암호화키와보안정책정보를 복호화하여 복원시켜 어플리케이션 메모리에 로드시켜 저장하는 것이다.When the session key is restored, the encryption / decryption engine 54 decrypts the encrypted encryption key and security policy information uploaded to the application server 5 by using the restored session key. Load it into the application memory and save it.

상기 설명과 같이 암호화키와보안정책정보를 2차 암호화하여 어플리케이션 서버(5)에 업로드하고, 이를 2차 복호화 과정을 거쳐 복원시켜 어플리케이션 메모리에 저장시키게 되면, 그 과정에서 암호화키와보안정책정보가 유출되는 위험을 방지할 수 있게되고, 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경(클라우드 컴퓨팅 환경)에서도 정보유출 방지를 위한 자체적인 암호화 설정을 실시할 수 있게되는 것이다.As described above, when the encryption key and the security policy information are secondly encrypted and uploaded to the application server 5 and restored through the second decryption process and stored in the application memory, the encryption key and the security policy information are in the process. The risk of leakage can be prevented, and even in a distributed computing-based utility computing environment (cloud computing environment), it is possible to implement its own encryption setting to prevent information leakage.

한편, 상기 설명과 같이 어플리케이션 메모리에 암호화키와보안정책정보가 저장되면, 이후 부터 소비자측 사용자가 어플리케이션 서버(5)에 접속하여 실행하는 조회 및 입력에 대하여 데이타를 암호화하여 타사용자 또는 클라우드 서비스 제공자에게 정보가 유출되는 위험을 줄여줄 수 있게된다.On the other hand, if the encryption key and the security policy information is stored in the application memory as described above, since the data is encrypted for the inquiry and input that the consumer-side user accesses and executes the application server (5) from another user or cloud service provider It can reduce the risk of information leakage.

여기서, 정보 조회 및 입력에 대한 데이타 암호화 동작을 설명하면 다음과 같다.Herein, data encryption operations for information inquiry and input will be described.

클라우드 컴퓨팅 환경을 사용하는 사용자가 사용자 PC(1)를 이용하여 어플리케이션 서버(5)에 접속하면, 고객컴포넌트(51)가 사용자PC(1)와 교신하여 사용자의 조회 요청을 수신하여 프레임워크 인터페이스(52)로 출력하고, 프레임워크 인터페이스(52)는 고객 컴포넌트(51)를 통해 사용자가 요청한 쿼리문에 대한 파싱 작업을 쿼리 아날라이저(53)에 요청한다.When the user using the cloud computing environment connects to the application server 5 using the user PC 1, the customer component 51 communicates with the user PC 1 and receives a user's inquiry request to the framework interface ( 52), the framework interface 52 requests the query analyzer 53 to parse the query statement requested by the user through the customer component 51.

쿼리 아날라이저(53)는 프레임워크 인터페이스(52)의 요청에 따라 사용자가 조회 요청한 쿼리문에 대해 암호화 및 접근제어 보안정책 적용을 위한 구문분석을 수행하여 파싱작업을 실시하여 프레임워크 인터페이스(52)에 출력하고, 프레임워크 인터페이스(52)는 파싱결과를 토대로 사용자가 조회하고자 하는 테이블/컬럼에 대한 접근권한 여부를 암/복호화 엔진(54)에 요청한다.The query analyzer 53 parses the query statement requested by the user according to the request of the framework interface 52 for parsing to apply encryption and access control security policy, and performs parsing to the framework interface 52. The framework interface 52 requests the encryption / decryption engine 54 whether the user has permission to access a table / column to be queried based on the parsing result.

암/복호화 엔진(54)은 어플리케이션 메모리에 저장되어 있는 보안정책정보를 이용하여 조회 요청된 테이블/컬럼에 대한 접근권한 여부를 판단하고, 그 판단결과 해당 조회 요청된 테이블/컬럼에 대해 접근권한이 부여된 상태이면 해당 사항을 프레임워크 필터 인터페이스(52)로 출력한다.The encryption / decryption engine 54 determines whether or not to access the requested table / column using the security policy information stored in the application memory, and as a result of which the access authority to the requested table / column is determined If it is, the corresponding item is output to the framework filter interface 52.

프레임워크 필터 인터페이스(52)는 조회 요청된 테이블/컬럼이 접근권한 부여된 상태이므로, 조회 요청된 테이블/컬럼에 대한 데이터의 암호화를 암/복호화엔진(54)에 요청하고, 암/복호화엔진(54)은 조회 요청된 데이터를 어플리케이션 메모리에 저장되어 있는 암호화키에 따라 암호화하여 프레임워크 필터 인터페이스(52)에 제공하고, 프레임워크 필터 인터페이스(52)는 암호화된 조회 요청을 데이타베이스서버(6)에 공급한다.Since the framework filter interface 52 is granted access to the requested table / column, the encryption / decryption engine 54 requests encryption of data for the requested table / column, and the encryption / decryption engine ( 54) encrypts the requested data according to the encryption key stored in the application memory and provides the framework filter interface 52, the framework filter interface 52 transmits the encrypted query request to the database server (6). To feed.

데이타베이스서버(6)는 사용자의 조회 요청 내용에 해당하는 결과를 암호화된 상태로 어플리케이션 서버(5)에 출력하고, 데이타베이스서버(6)에서 출력되는 암호화된 결과 데이타는 암/복호화엔진(54)에 의해 복호화되어 고객컴포넌트(51)를 통해 사용자에게 제공되는 것이다.
The database server 6 outputs the results corresponding to the contents of the user's inquiry request to the application server 5 in an encrypted state, and the encrypted result data output from the database server 6 is encrypted / decrypted by the engine 54. Decoded by) and provided to the user through the customer component (51).

한편, 도 5 는 사용자가 입력하고자 하는 데이타를 암호화하여 데이타베이스서버(6)에 저장시키는 과정을 도시한 것으로서, 입력되는 데이타가 암/복호화엔진(54)에 의해 암호화되어 데이타베이스서버(6)에 저장되고, 저장된 데이타가 결과데이타로서 출력될 때에는 암/복호화엔진(54)에 의해 복원되어 출력되는 것이다.
Meanwhile, FIG. 5 illustrates a process of encrypting data to be input by a user and storing the data in the database server 6. The input data is encrypted by the encryption / decryption engine 54 so that the database server 6 can be encrypted. Is stored and stored by the encryption / decryption engine 54 when the stored data is output as result data.

1: 사용자PC, 2: 관리자PC,
3. 보안정책 간리모듈, 4: IC카드
5: 어플리케이션서버, 6: 데이타베이스서버,
31: 제 1 의사난수 생성기, 32: 제 2 의사난수 생성기,
33: 인터레이션 카운트 생성기, 34: 암호화처리기,
41: 칩메모리, 51: 고객컴포넌트,
52: 프레임워크 필터 인터페이스, 53: 쿼리 아날라이저,
54: 암/복호화엔진,
55: 클라우드 프레임워크 인터페이스,
1: user PC, 2: administrator PC,
3. Security policy simplified module, 4: IC card
5: application server, 6: database server,
31: first pseudo random number generator, 32: second pseudo random number generator,
33: interpolation count generator, 34: encryption processor,
41: chip memory, 51: customer component,
52: framework filter interface, 53: query analyzer,
54: cancer / decryption engine,
55: cloud framework interface,

Claims (4)

인터넷을 통해 접속하는 사용자PC(1)와 정보를 교신하는 고객 컴포넌트(51)와, 고객 컴포넌트(51)를 통해 사용자가 요청한 쿼리문에 대한 파싱 작업을 쿼리 아날라이저(53)에 요청하여 판단하고, 조회 또는 입력하고자 하는 테이블/컬럼에 대한 접근권한 여부를 암/복호화 엔진(54)을 통해 판단하는 프레임워크 인터페이스(52)와, 프레임워크 인터페이스(52)의 요청에 따라 쿼리문에 대해 암호화 및 접근제어 보안정책 적용을 위한 구문분석을 수행하여 파싱작업하고, 그 파싱작업 결과를 프레임워크 인터페이스(52)에 출력하는 쿼리 아날라이저(53)와, 어플리케이션서버(5) 내의 어플리케이션 메모리에 저장되는 암호화키와보안정책정보에 따라 조회 또는 입력하고자 하는 테이블/컬럼에 대해 접근권한 여부를 판단하여 프레임워크 인터페이스(52)에 전달하고, 조회 또는 입력하고자 하는 테이블/컬럼 데이타를 어플리케이션 메모리에 저장되어 있는 암호화키와보안정책정보에 따라 암/복호화하며, 어플리케이션 메모리에 저장되는 암호화키와보안정책정보를 헤더키와 세션키(SKey)로 복호화하여 저장시키는 암/복호화엔진(54)과, 암/복호화엔진(54)에서 암호화된 데이타를 데이타베이스 서버(6)에 저장하고, 암/복호화엔진(54)에서 호출요청한 데이타를 데이타베이스 서버(6)로 부터 호출하여 암/복호화엔진(54)에 공급하는 클라우드 프레임워크 인터페이스(55)로 구성된 어플리에케이션 서버(5)와;
다수의 사용자들과 관련한 데이타를 구분하여 저장하는 데이타 베이스 서버(6)와;
보안정책 관리모듈(3)에서 생성된 솔트(salt)값과 인터레이션 카운트값(Interation Count), 그리고, 데이타 암호화에 적용하기 위한 암호화키와보안정책정보를 저장하는 칩메모리(41)가 내장되어 있는 IC카드(4)와;
암호화키와보안정책정보를 암호화 하기 위한 세션키(Session Key)를 랜덤하게 생성하는 제 1 의사난수생성기(31)와, 솔트값을 랜덤하게 생성하여 칩메모리(41)에 저장시키면서 암호화처리기(34)에 출력하는 제 2 의사난수생성기(32)와, 인터레이션 카운트값을 랜덤하게 생성하여 칩메모리(41)에 저장시키면서 암호화처리기(34)에 출력하는 인터레이션 카운트 생성기(33)와, 상기 제 1 의사난수생성기(31)에서 생성된 세션키를 이용하여 IC카드(4)에 저장된 암호화키와보안정책정보를 암호화하여 어플리케이션 서버(1)로 전송하고, 관리자PC(2)를 통해 입력되는 IC카드 핀번호 및 패스워드, 상기 생성된 솔트값과 인터페이션 카운트값을 이용하여 패스워드 기반의 암호화 절차에 따라 헤더 키(Header Key)를 생성하며, 그 생성된 헤더 키를 이용하여 세션키를 암호화하여 암호화된 세션키(SKey)를 어플리케이션 서버(1)로 전송하는 암호화처리기(34)로 구성된 보안정책 관리모듈(3); 로 구성한 것을 특징으로 하는 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 시스템.
The client component 51 communicating information with the user PC 1 connected through the Internet, and the query analyzer 53 determine the parsing operation for the query statement requested by the user through the customer component 51, The framework interface 52 that determines whether the access right to the table / column to be searched or entered through the encryption / decryption engine 54, and encrypts and accesses the query statement at the request of the framework interface 52. Parse by parsing to apply the control security policy, query analyzer 53 for outputting the parsing result to the framework interface 52, encryption key stored in the application memory in the application server (5); Determining whether the access right to the table / column to be viewed or input in accordance with the security policy information to pass to the framework interface 52, and Encrypts / decrypts the table / column data to be stored or entered according to the encryption key and security policy information stored in the application memory, and the encryption key and the security policy information stored in the application memory as the header key and the session key (SKey). The encryption / decryption engine 54 which decrypts and stores the data, and the data encrypted by the encryption / decryption engine 54 are stored in the database server 6, and the data requested by the encryption / decryption engine 54 is stored in the database server. An application server 5 composed of a cloud framework interface 55 for calling from (6) and supplying to the encryption / decryption engine 54;
A database server 6 for classifying and storing data relating to a plurality of users;
A salt memory and an interaction count generated by the security policy management module 3, and a chip memory 41 for storing encryption keys and security policy information for data encryption are built in. An IC card 4;
A first pseudo random number generator 31 for randomly generating a session key for encrypting an encryption key and security policy information, and a salt processor for randomly generating a salt value and storing the random value in the chip memory 41. A second pseudorandom number generator 32 to be outputted), an interpolation count generator 33 to randomly generate an interaction count value and store it in the chip memory 41, and output it to the encryption processor 34; 1 Encrypts the encryption key and the security policy information stored in the IC card (4) using the session key generated by the pseudo random number generator 31 and transmits it to the application server (1), the IC input through the administrator PC (2) A header key is generated according to a password-based encryption procedure using a card pin number and password, the generated salt value and an interface count value, and the session key is encrypted using the generated header key to encrypt the password. A security policy management module 3 comprising an encryption processor 34 for transmitting the encrypted session key SKey to the application server 1; An encryption system for preventing information leakage in a distributed computing-based utility computing environment, characterized in that consisting of.
분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법에 있어서,
IC카드(4)에 저장되어 있는 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 이중 암호화시켜 어플리케이션서버(1)에 로딩하는 제 1 과정과;
어플리케이션서버(1)에 로딩된 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 복호화하여 어플리케이션메모리에 저장하는 제 2 과정과;
제 2 과정 이후 사용자에 의해 조회 또는 입력 요청되는 쿼리문의 테이블/컬럼에 대한 접근권한 여부를 어플리케이션 메모리에 저장되어 있는 보안정책정보를 이용하여 판단하고, 그 판단결과에 따라 입출력되는 테이블/컬럼을 암호화키를 이용하여 암/복호화하는 제 3 과정; 으로 구성한 것을 특징으로 하는 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법.
An encryption method for preventing information leakage in a distributed computing based utility computing environment,
A first step of double-encrypting the encryption key and the security policy information stored in the IC card 4 by using the session key and the header key and loading them into the application server 1;
A second step of decrypting the encryption key and the security policy information loaded in the application server 1 using the session key and the header key and storing them in the application memory;
After the second process, it is determined whether the access right to the table / column of the query statement that is requested or input by the user using the security policy information stored in the application memory, and encrypts the input / output table / column according to the determination result. A third process of encrypting / decrypting using a key; An encryption method for preventing information leakage in a distributed computing-based utility computing environment, characterized in that consisting of.
제 2 항에 있어서, 제 1 과정은, 관리자PC(2)를 이용하여 보안정책관리모듈(3)로 접속한 관리자로 부터 패스워드와 IC카드 핀(PIN)번호를 입력받는 제 1 단계와;
제 1 의사난수 생성기(31)에서 세션키(Session Key)를 생성하고, 제 2 의사난수생성기(32)에서 솔트값을 생성하여 IC카드(4)의 칩메모리(41)에 저장시키면서 암호화처리기(34)에 출력하며, 인터레이션 카운트 생성기(33)에서 인터레이션값을 생성하여 IC카드(4)의 칩메모리(41)에 저장시키면서 암호화처리기(34)에 출력하는 제 2 단계와;
암호화처리기(34)가 세션키를 이용하여 IC카드(4)에 저장되어 있는 암호화키와보안정책정보를 암호화하여 어플리케이션 서버(5)로 전송하는 제 3 단계와;
암호화처리기(34)가 IC카드 핀번호 및 패스워드, 상기 생성된 솔트값과 인터페이션 카운트값을 이용하여 패스워드 기반의 암호화 절차에 따라 헤더 키(Header Key)를 생성하며, 그 생성된 헤더 키를 이용하여 세션키를 암호화하여 암호화된 세션키(SKey)를 어플리케이션 서버(1)로 전송하는 제 4 단계; 로 구성한 것을 특징으로 하는 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법.
The method of claim 2, wherein the first step comprises: a first step of receiving a password and an IC card pin (PIN) number from an administrator connected to the security policy management module (3) by using the administrator PC (2);
A session key is generated in the first pseudo random number generator 31, a salt value is generated in the second pseudo random number generator 32, and stored in the chip memory 41 of the IC card 4. A second step of outputting to the encryption processor 34 while outputting the result of the conversion to the encryption processor 34 by generating the correlation value in the intercount count generator 33 and storing it in the chip memory 41 of the IC card 4;
A third step of the encryption processor 34 encrypting the encryption key and the security policy information stored in the IC card 4 using the session key and transmitting the encrypted key to the application server 5;
The encryption processor 34 generates a header key according to a password-based encryption procedure using the IC card pin number and password, the generated salt value and the interface count value, and uses the generated header key. A fourth step of encrypting the session key to transmit the encrypted session key (SKey) to the application server (1); An encryption method for preventing information leakage in a distributed computing-based utility computing environment, characterized in that consisting of.
제 2 항에 있어서, 제 2 과정은,
관리자PC(2)가 웹브라우저를 통해 어플리케이션서버(5)에서 제공하는 보안정책 관리페이지로 접속하여 보안정책 로드 버튼을 클릭하고, 어플리케이션 서버(5)는 관리자PC(2)에 핀번호와 패스워드의 입력을 요청하는 제 5 단계와;
관리자PC(2)로 부터 입력되는 핀번호와 패스워드를 수신하면서 IC카드(4)의 칩메모리(41)로 부터 전송되는 솔트값과 인터레이션값을 수신하는 제 6 단계와;
어플리케이션서버(5)의 암/복호화엔진(54)이 제 6 단계에서 수신된 핀번호, 패스워드, 솔트값, 인터레이션값을 이용하여 패스워드 기반의 암호화 절차에 따라 헤더 키를 생성하고, 그 생성된 헤더 키를 이용하여 암호화된 세션키(SKey)를 복호화하여 세션키(Session Key)를 복원하는 제 7 단계와;
암/복호화엔진(54)이 제 7 단계에서 복원된 세션키(Session Key)를 이용하여 암호화된 암호화키와보안정책정보를 복호화하여 복원시켜 어플리케이션 메모리에 로드시켜 저장하는 제 8 단계; 로 구성한 것을 특징으로 하는 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법.
The method of claim 2, wherein the second process comprises:
The administrator PC 2 accesses the security policy management page provided by the application server 5 through a web browser and clicks the load security policy button. The application server 5 sends a PIN number and password to the administrator PC 2. A fifth step of requesting input;
A sixth step of receiving a salt value and an interaction value transmitted from the chip memory 41 of the IC card 4 while receiving the pin number and password inputted from the manager PC 2;
The encryption / decryption engine 54 of the application server 5 generates a header key according to a password-based encryption procedure using the pin number, password, salt value, and interaction value received in the sixth step. A seventh step of recovering the session key by decrypting the encrypted session key SKey using the header key;
An eighth step in which the encryption / decryption engine 54 decrypts the encrypted encryption key and the security policy information by using the session key restored in the seventh step, loads it into the application memory, and stores the encrypted key; An encryption method for preventing information leakage in a distributed computing-based utility computing environment, characterized in that consisting of.
KR1020100050866A 2010-05-31 2010-05-31 Coding method Active KR100988198B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100050866A KR100988198B1 (en) 2010-05-31 2010-05-31 Coding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100050866A KR100988198B1 (en) 2010-05-31 2010-05-31 Coding method

Publications (1)

Publication Number Publication Date
KR100988198B1 true KR100988198B1 (en) 2010-10-18

Family

ID=43135511

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100050866A Active KR100988198B1 (en) 2010-05-31 2010-05-31 Coding method

Country Status (1)

Country Link
KR (1) KR100988198B1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101220166B1 (en) * 2011-01-14 2013-01-11 동국대학교 경주캠퍼스 산학협력단 How to manage data access permissions
US8788846B2 (en) 2011-11-03 2014-07-22 Electronics And Telecommunications Research Institute Cloud computing system and cloud server managing method thereof
KR101442489B1 (en) 2013-12-16 2014-09-26 주식회사 시큐브 Security file access control apparatus and method of smart terminal using security key
KR101479290B1 (en) * 2014-08-19 2015-01-05 (주)세이퍼존 Agent for providing security cloud service, security token device for security cloud service
KR101619286B1 (en) 2015-11-19 2016-05-10 (주)세이퍼존 Cross-platform based security system
KR20210124368A (en) * 2019-02-05 2021-10-14 크립트 인크. End-to-end double ratchet encryption using epoch key exchange

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040007769A (en) * 2001-07-05 2004-01-24 구로프 게오로기 보리소비치 Method for an integrated protection system of data distributed processing in computer networks and system for carrying out said method
JP2006185184A (en) 2004-12-27 2006-07-13 Nomura Research Institute Ltd Authority management system, authentication server, authority management method, and authority management program
US20070143459A1 (en) 2005-12-19 2007-06-21 Lucent Technologies Inc. Protection of privacy-sensitive information through redundancy, encryption and distribution of information
JP2008035234A (en) 2006-07-28 2008-02-14 Nec Infrontia Corp Client / server distributed system, client device, server device, and message encryption method used therefor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040007769A (en) * 2001-07-05 2004-01-24 구로프 게오로기 보리소비치 Method for an integrated protection system of data distributed processing in computer networks and system for carrying out said method
JP2006185184A (en) 2004-12-27 2006-07-13 Nomura Research Institute Ltd Authority management system, authentication server, authority management method, and authority management program
US20070143459A1 (en) 2005-12-19 2007-06-21 Lucent Technologies Inc. Protection of privacy-sensitive information through redundancy, encryption and distribution of information
JP2008035234A (en) 2006-07-28 2008-02-14 Nec Infrontia Corp Client / server distributed system, client device, server device, and message encryption method used therefor

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101220166B1 (en) * 2011-01-14 2013-01-11 동국대학교 경주캠퍼스 산학협력단 How to manage data access permissions
US8788846B2 (en) 2011-11-03 2014-07-22 Electronics And Telecommunications Research Institute Cloud computing system and cloud server managing method thereof
KR101442489B1 (en) 2013-12-16 2014-09-26 주식회사 시큐브 Security file access control apparatus and method of smart terminal using security key
KR101479290B1 (en) * 2014-08-19 2015-01-05 (주)세이퍼존 Agent for providing security cloud service, security token device for security cloud service
KR101619286B1 (en) 2015-11-19 2016-05-10 (주)세이퍼존 Cross-platform based security system
KR20210124368A (en) * 2019-02-05 2021-10-14 크립트 인크. End-to-end double ratchet encryption using epoch key exchange
KR102619383B1 (en) 2019-02-05 2023-12-29 크립트 인크. End-to-end double ratchet encryption using epoch key exchange

Similar Documents

Publication Publication Date Title
CN109144961B (en) Authorization file sharing method and device
US8484480B2 (en) Transmitting information using virtual input layout
Tong et al. Cloud-assisted mobile-access of health data with privacy and auditability
US8687805B2 (en) Context-aware based cryptography
US11507683B2 (en) Query processing with adaptive risk decisioning
CN112929172A (en) System, method and device for dynamically encrypting data based on key bank
US20130230168A1 (en) Information processing device, information processing method, and computer readable medium
CN105991563B (en) Method and device for protecting security of sensitive data and three-party service system
KR100988198B1 (en) Coding method
US20120254622A1 (en) Secure Access to Electronic Devices
US9479330B2 (en) Method, information service system and program for information encryption/decryption
WO2023005838A1 (en) Data sharing method and electronic device
TWI865290B (en) Method, computer program product, and apparatus for attribute based encryption key based third party data access authorization
CN111339177A (en) SAP platform-based data export method and system
CN106506479A (en) The method of cipher authentication, system and client, server and smart machine
KR20160040399A (en) Personal Information Management System and Personal Information Management Method
CN116684172B (en) Data exchange method, device and system based on secure multiparty calculation and electronic equipment
CN113783835B (en) Password sharing method, device, equipment and storage medium
CN112583602B (en) Information code data transmission method, device, system, computer device and medium
CN109711207A (en) A kind of data ciphering method and device
CN115603958A (en) Login data processing method and device, computer equipment and storage medium
CN111625850A (en) Access control method, device, electronic equipment and storage medium
Mishra et al. Improved cloud security approach with threshold cryptography
US20250219818A1 (en) Content encryption
JP4989996B2 (en) Service use identification information generation apparatus, service use identification information generation system, service use identification information generation method, and program

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PA0302 Request for accelerated examination

St.27 status event code: A-1-2-D10-D17-exm-PA0302

St.27 status event code: A-1-2-D10-D16-exm-PA0302

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

FPAY Annual fee payment

Payment date: 20131001

Year of fee payment: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

FPAY Annual fee payment

Payment date: 20141010

Year of fee payment: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

FPAY Annual fee payment

Payment date: 20151013

Year of fee payment: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

FPAY Annual fee payment

Payment date: 20161012

Year of fee payment: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

FPAY Annual fee payment

Payment date: 20171012

Year of fee payment: 8

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 9

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20191012

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

K11-X000 Ip right revival requested

St.27 status event code: A-6-4-K10-K11-oth-X000

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20191012

PR0401 Registration of restoration

St.27 status event code: A-6-4-K10-K13-oth-PR0401

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

R401 Registration of restoration
PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 11

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 12

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 13

P14-X000 Amendment of ip right document requested

St.27 status event code: A-5-5-P10-P14-nap-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 14

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 15

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 16