KR100988198B1 - 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템 - Google Patents

분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템 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
Application number
KR1020100050866A
Other languages
English (en)
Inventor
추유광
Original Assignee
주식회사 아이넵
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 아이넵 filed Critical 주식회사 아이넵
Priority to KR1020100050866A priority Critical patent/KR100988198B1/ko
Application granted granted Critical
Publication of KR100988198B1 publication Critical patent/KR100988198B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/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; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • 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 과정; 으로 구성한 것을 특징으로 한다.
본 발명에 의하면, 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서 사용자가 자신들 만의 데이타를 암호화할 수 있게되어 중요정보의 유출을 차단할 수 있게되어 보다 안전하게 분산 컴퓨팅 기반 유틸리티 컴퓨팅을 사용할 수 있도록 하는 효과를 기대할 수 있다.

Description

분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템{Coding method}
본 발명은 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템에 관한 것으로서, 더욱 상세하게는 사용자측 관리자가 IC카드와 보안정책 관리모듈을 이용하여 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 데이타 암호화를 위한 암호화키와보안정책정보를 이중 암/복호화시켜 어플리케이션 서버의 메모리에 저장하고, 그 어플리케이션 서버의 메모리에 저장된 암호화키와보안정책정보를 활용하여 이후 사용자의 유틸리티 컴퓨팅 사용시 입출력되는 데이타를 암호화하도록 하므로서, 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서도 사용자가 자신들과 관련하여 입출력되는 데이타를 암호화하여 저장 및 출력할 수 있게되어 정보의 유출을 방지할 수 있도록 한 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템에 관한 것이다.
분산 컴퓨팅 기반 유틸리티 컴퓨팅이라 함은 서비스 제공자가 여러 곳에 분산되어 있는 데이터 센터를 가상화 기술로 통합하여 사용자에게 제공하고, 사용자는 어플리케이션, 스토리지, 운영체제 등 필요한 IT자원을 원하는 시점에 원하는 만큼 골라서 사용하게되는 것을 말하며, 일명 클라우드 컴퓨팅으로 정의되고 있다.
분산 컴퓨팅 기반 유틸리티 컴퓨팅 서비스가 제공됨에 따라 사용자는 시스템 구축비용을 절약할 수 있으며, 서비스 제공자는 시스템 인프라를 대용량으로 구축하여 여러 사용자에게 임대하는 형식으로 제공하여 수익을 창출할 수 있게되는 것이다.
이러한 분산 컴퓨팅 기반 유틸리티 컴퓨팅 서비스는 사용자측에서 시스템 구축에 소요되는 막대한 비용을 절감할 수 있다는 장점으로 그 사용빈도가 점차 증가하고 있는 추세이다.
그러나, 분산 컴퓨팅 기반 유틸리티 컴퓨팅 서비스는 사용자측에서 시스템에 입출력되는 데이타를 암호화 할 수 없는 단점이 있어서 중요한 정보의 유출에 그대로 노출되어 있는 심각한 문제점을 갖고 있다.
따라서, 상기 문제점을 해결하기 위한 본 발명은 사용자측 관리자가 IC카드와 보안정책 관리모듈을 이용하여 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 데이타 암호화를 위한 암호화키와보안정책정보를 이중 암/복호화시켜 어플리케이션 서버의 메모리에 저장하고, 그 어플리케이션 서버의 메모리에 저장된 암호화키와보안정책정보를 활용하여 이후 사용자의 유틸리티 컴퓨팅 사용시 입출력되는 데이타를 암호화하도록 하므로서, 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서도 사용자가 자신들과 관련하여 입출력되는 데이타를 암호화하여 저장 및 출력할 수 있게되어 정보의 유출을 방지할 수 있도록 한 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템을 제공함을 목적으로 한다.
상기 목적달성을 위한 본 발명은,
분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법에 있어서,
IC카드에 저장되어 있는 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 이중 암호화시켜 어플리케이션서버에 로딩하는 제 1 과정과;
어플리케이션서버에 로딩된 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 복호화하여 어플리케이션메모리에 저장하는 제 2 과정과;
제 2 과정 이후 사용자에 의해 조회 또는 입력 요청되는 쿼리문의 테이블/컬럼에 대한 접근권한 여부를 어플리케이션 메모리에 저장되어 있는 보안정책정보를 이용하여 판단하고, 그 판단결과에 따라 입출력되는 테이블/컬럼을 암호화키를 이용하여 암/복호화하는 제 3 과정; 으로 구성한 것을 특징으로 한다.
본 발명에 의하면, 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서 사용자가 자신들 만의 데이타를 암호화할 수 있게되어 중요정보의 유출을 차단할 수 있게되어 보다 안전하게 분산 컴퓨팅 기반 유틸리티 컴퓨팅을 사용할 수 있도록 하는 효과를 기대할 수 있다.
도 1 은 본 발명의 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 시스템을 보인 블럭도.
도 2 는 본 발명의 암호화 방법에서 암호화키와보안정책을 클라우드 컴퓨팅 서비스영역에 로딩하는 과정을 보인 도면.
도 3 은 본 발명의 암호화 방법에서 클라우드 컴퓨팅 서비스영역에 로딩된 암호화키와보안정책을 어플리케이션 메모리에 로딩하는 과정을 보인 도면.
도 4 는 본 발명에 의해 설정된 암호화키와보안정책을 이용하여 정보조회시 데이타 암호화방법을 보인 도면.
도 5 는 본 발명에 의해 설정된 암호화키와보안정책을 이용하여 정보입력시 데이타 암호화방법을 보인 도면.
이하, 첨부된 도면 도 1 내지 도 5 를 참조하여 본 발명의 바람직한 실시예를 설명하면 다음과 같다.
본 발명을 설명함에 있어서 정의되는 용어들은 본 발명에서의 기능을 고려하여 정의 내려진 것으로, 본 발명의 기술적 구성요소를 한정하는 의미로 이해되어서는 아니 될 것이다.
도 1 은 본 발명의 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 시스템을 보인 블럭도로서,
인터넷을 통해 접속하는 사용자PC(1)와 정보를 교신하는 고객 컴포넌트(51)와, 고객 컴포넌트(51)를 통해 사용자가 요청한 쿼리문에 대한 파싱 작업을 쿼리 아날라이저(53)에 요청하여 판단하고, 조회 또는 입력하고자 하는 테이블/컬럼에 대한 접근권한 여부를 암/복호화 엔진(54)을 통해 판단하는 프레임워크 인터페이스(52)와, 프레임워크 인터페이스(52)의 요청에 따라 쿼리문에 대해 암호화 및 접근제어 보안정책 적용을 위한 구문분석을 수행하여 파싱작업하고, 그 파싱작업 결과를 프레임워크 인터페이스(52)에 출력하는 쿼리 아날라이저(53)와, 어플리케이션서버(5) 내의 어플리케이션 메모리에 저장되는 암호화키와보안정책정보에 따라 조회 또는 입력하고자 하는 테이블/컬럼에 대해 접근권한 여부를 판단하여 프레임워크 인터페이스(52)에 전달하고, 조회 또는 입력하고자 하는 테이블/컬럼 데이타를 어플리케이션 메모리에 저장되어 있는 암호화키와보안정책정보에 따라 암/복호화하며, 어플리케이션 메모리에 저장되는 암호화키와보안정책정보를 헤더키와 세션키(SKey)로 복호화하여 저장시키는 암/복호화엔진(54)과, 암/복호화엔진(54)에서 암호화된 데이타를 데이타베이스 서버(6)에 저장하고, 암/복호화엔진(54)에서 호출요청한 데이타를 데이타베이스 서버(6)로 부터 호출하여 암/복호화엔진(54)에 공급하는 클라우드 프레임워크 인터페이스(55)로 구성된 어플리에케이션 서버(5)와;
다수의 사용자들과 관련한 데이타를 구분하여 저장하는 데이타 베이스 서버(6)와;
사용자가 인터넷을 통해 어플리케이션 서버(5)에 접속하여 정보의 조회 또는 입력이 이루어지도록 동작하는 사용자PC(1)와;
보안정책 관리모듈(3)에서 생성된 솔트(salt)값과 인터레이션 카운트값(Interation Count), 그리고, 데이타 암호화에 적용하기 위한 암호화키와보안정책정보를 저장하는 칩메모리(41)가 내장되어 있는 IC카드(4)와;
관리자가 사용하는 관리자PC(2)와;
암호화키와보안정책정보를 암호화 하기 위한 세션키(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); 로 구성한 것을 특징으로 한다.
상기 구성된 어플리케이션 서버(5)와 데이타베이스 서버(6)는 서비스 제공자측 시스템, 즉, 클라우드 컴퓨팅 서비스 영역이고, 사용자PC(1), 관리자PC(2), IC카드(4), 보안정책관리모듈(3)은 클라우드 컴퓨팅 서비스 영역을 사용하는 서비스 이용자측 영역이다.
기존에는 클라우드 컴퓨팅 서비스 영역 내에서 이루어지는 데이타의 입/출력에 대해 암호화가 어려웠으나 본 발명에서는 클라우드 컴퓨팅 서비스 영역 내에서 이루어지는 데이타에 대해서도 암호화체계를 구축할 수 있도록 하여 클라우드 컴퓨팅 서비스 영역 내에서 보다 안전하게 정보를 입출력할 수 있도록 하면서 중요정보가 유출되지 않도록 한다.
상기 시스템에 의해 구현되는 본 발명의 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법은,
IC카드(4)에 저장되어 있는 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 이중 암호화시켜 어플리케이션서버(1)에 로딩하는 제 1 과정과;
어플리케이션서버(1)에 로딩된 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 복호화하여 어플리케이션메모리에 저장하는 제 2 과정과;
제 2 과정 이후 사용자에 의해 조회 또는 입력 요청되는 쿼리문의 테이블/컬럼에 대한 접근권한 여부를 어플리케이션 메모리에 저장되어 있는 보안정책정보를 이용하여 판단하고, 그 판단결과에 따라 입출력되는 테이블/컬럼을 암호화키를 이용하여 암/복호화하는 제 3 과정; 으로 구성한 것을 특징으로 한다.
그리고, 제 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카드 핀번호 및 패스워드, 상기 생성된 솔트값과 인터페이션 카운트값을 이용하여 PKCS의 PBKDF2에 기술된 절차에 따라 헤더 키(Header Key)를 생성하며, 그 생성된 헤더 키를 이용하여 세션키를 암호화하여 암호화된 세션키(SKey)를 어플리케이션 서버(1)로 전송하는 제 4 단계; 로 구성한 것을 특징으로 한다.
그리고, 제 2 과정은, 관리자PC(2)가 웹브라우저를 통해 어플리케이션서버(5)에서 제공하는 보안정책 관리페이지로 접속하여 보안정책 로드 버튼을 클릭하고, 어플리케이션 서버(5)는 관리자PC(2)에 핀번호와 패스워드의 입력을 요청하는 제 5 단계와;
관리자PC(2)로 부터 입력되는 핀번호와 패스워드를 수신하면서 IC카드(4)의 칩메모리(41)로 부터 전송되는 솔트값과 인터레이션값을 수신하는 제 6 단계와;
어플리케이션서버(5)의 암/복호화엔진(54)이 제 6 단계에서 수신된 핀번호, 패스워드, 솔트값, 인터레이션값을 이용하여 PKCS의 PBKDF2에 기술된 절차에 따라 헤더 키를 생성하고, 그 생성된 헤더 키를 이용하여 암호화된 세션키(SKey)를 복호화하여 세션키(Session Key)를 복원하는 제 7 단계와;
암/복호화엔진(54)이 제 7 단계에서 복원된 세션키(Session Key)를 이용하여 암호화된 암호화키와보안정책정보를 복호화하여 복원시켜 어플리케이션 메모리에 로드시켜 저장하는 제 8 단계; 로 구성한 것을 특징으로 한다.
이와같이 구성되는 본 발명의 제어방법에 대해 상세히 설명하면 다음과 같다.
먼저, 관리자가 관리자PC(2)를 이용하여 보안정책관리모듈(3)에 접속하면, 보안정책관리모듈(3)은 별도의 입력화면을 관리자PC(2)에 제공하고, 관리자는 입력화면을 통해 소정의 패스워드와 IC카드(4)의 핀번호를 입력한다.
이때, 보안정책관리모듈(3)의 제 1 의사난수생성기(31)는 암호화키와보안정책정보를 암호화 하기 위한 세션키(Session Key)를 랜덤하게 생성하고, 암호화처리기(34)는 상기 제 1 의사난수생성기(31)에서 생성된 세션키를 이용하여 IC카드(4)에 저장된 암호화키와보안정책정보를 암호화하여 어플리케이션 서버(1)로 전송한다.
그리고, 보안정책관리모듈(3)의 제 2 의사난수생성기(32)는 솔트값을 랜덤하게 생성하여 칩메모리(41)에 저장시키면서 암호화처리기(34)에 출력하고, 인터레이션 카운트 생성기(33)는 인터레이션 카운트값을 랜덤하게 생성하여 칩메모리(41)에 저장시키면서 암호화처리기(34)에 출력하며, 암호화처리기(34)는 관리자PC(2)를 통해 입력되는 IC카드 핀번호 및 패스워드, 상기 생성된 솔트값과 인터페이션 카운트값을 이용하여 PKCS의 PBKDF2에 기술된 절차에 따라 헤더 키(Header Key)를 생성하며, 그 생성된 헤더 키를 이용하여 세션키를 암호화하여 암호화된 세션키(SKey)를 어플리케이션 서버(1)로 전송한다.
즉, 보안정책관리모듈(3)은 암호화키와보안정책정보를 세션키를 이용하여 1차 암호화하여 어플리케이션 서버(1)로 전송하고, 또한 그 암호화된 암호화키와보안정책정보를 복호화하기 위한 세션키를 헤더키를 이용하여 2차 암호화하여 어플리케이션 서버(1)로 전송하여 업로드하는 것이다.
암호화키와보안정책정보의 업로드가 완료되면, 관리자는 어플리케이션서버(1)에 접속하여 암호화키와보안정책정보를 복호화하여 어플리케이션 메모리에 저장시키는 동작을 수행한다.
관리자PC(2)가 웹브라우저를 통해 어플리케이션서버(5)에서 제공하는 보안정책 관리페이지로 접속하여 보안정책 로드 버튼을 클릭하면, 어플리케이션 서버(5)는 관리자PC(2)에 핀번호와 패스워드의 입력을 요청하는 안내화면을 출력한다.
그 안내화면을 통해 관리자가 핀번호와 패스워드를 입력하면 어플리케이션서버(5)는 사용자가 입력하는 핀번호와 패스워드를 수신하면서 IC카드(4)로 부터 솔트값과 인터레이션 카운트값을 수신받는다.
IC카드(4)의 정보는 별도의 카드리더기를 통해 읽혀져 전송된다.
핀번호, 패스워드, 솔트값, 인터레이션 카운트값이 수신되면, 어플리케이션서버(5)의 암/복호화엔진(54)이 수신된 핀번호, 패스워드, 솔트값, 인터레이션값을 이용하여 PKCS의 PBKDF2에 기술된 절차에 따라 헤더 키를 생성하고, 그 생성된 헤더 키를 이용하여 어플리케이션 서버(5)에 업로드되어 있는 암호화된 세션키(SKey)를 복호화하여 세션키(Session Key)를 복원한다.
세션키(Session Key)가 복원되면, 암/복호화엔진(54)은 복원된 세션키(Session Key)를 이용하여 어플리케이션 서버(5)에 업로드되어 있는 암호화된 암호화키와보안정책정보를 복호화하여 복원시켜 어플리케이션 메모리에 로드시켜 저장하는 것이다.
상기 설명과 같이 암호화키와보안정책정보를 2차 암호화하여 어플리케이션 서버(5)에 업로드하고, 이를 2차 복호화 과정을 거쳐 복원시켜 어플리케이션 메모리에 저장시키게 되면, 그 과정에서 암호화키와보안정책정보가 유출되는 위험을 방지할 수 있게되고, 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경(클라우드 컴퓨팅 환경)에서도 정보유출 방지를 위한 자체적인 암호화 설정을 실시할 수 있게되는 것이다.
한편, 상기 설명과 같이 어플리케이션 메모리에 암호화키와보안정책정보가 저장되면, 이후 부터 소비자측 사용자가 어플리케이션 서버(5)에 접속하여 실행하는 조회 및 입력에 대하여 데이타를 암호화하여 타사용자 또는 클라우드 서비스 제공자에게 정보가 유출되는 위험을 줄여줄 수 있게된다.
여기서, 정보 조회 및 입력에 대한 데이타 암호화 동작을 설명하면 다음과 같다.
클라우드 컴퓨팅 환경을 사용하는 사용자가 사용자 PC(1)를 이용하여 어플리케이션 서버(5)에 접속하면, 고객컴포넌트(51)가 사용자PC(1)와 교신하여 사용자의 조회 요청을 수신하여 프레임워크 인터페이스(52)로 출력하고, 프레임워크 인터페이스(52)는 고객 컴포넌트(51)를 통해 사용자가 요청한 쿼리문에 대한 파싱 작업을 쿼리 아날라이저(53)에 요청한다.
쿼리 아날라이저(53)는 프레임워크 인터페이스(52)의 요청에 따라 사용자가 조회 요청한 쿼리문에 대해 암호화 및 접근제어 보안정책 적용을 위한 구문분석을 수행하여 파싱작업을 실시하여 프레임워크 인터페이스(52)에 출력하고, 프레임워크 인터페이스(52)는 파싱결과를 토대로 사용자가 조회하고자 하는 테이블/컬럼에 대한 접근권한 여부를 암/복호화 엔진(54)에 요청한다.
암/복호화 엔진(54)은 어플리케이션 메모리에 저장되어 있는 보안정책정보를 이용하여 조회 요청된 테이블/컬럼에 대한 접근권한 여부를 판단하고, 그 판단결과 해당 조회 요청된 테이블/컬럼에 대해 접근권한이 부여된 상태이면 해당 사항을 프레임워크 필터 인터페이스(52)로 출력한다.
프레임워크 필터 인터페이스(52)는 조회 요청된 테이블/컬럼이 접근권한 부여된 상태이므로, 조회 요청된 테이블/컬럼에 대한 데이터의 암호화를 암/복호화엔진(54)에 요청하고, 암/복호화엔진(54)은 조회 요청된 데이터를 어플리케이션 메모리에 저장되어 있는 암호화키에 따라 암호화하여 프레임워크 필터 인터페이스(52)에 제공하고, 프레임워크 필터 인터페이스(52)는 암호화된 조회 요청을 데이타베이스서버(6)에 공급한다.
데이타베이스서버(6)는 사용자의 조회 요청 내용에 해당하는 결과를 암호화된 상태로 어플리케이션 서버(5)에 출력하고, 데이타베이스서버(6)에서 출력되는 암호화된 결과 데이타는 암/복호화엔진(54)에 의해 복호화되어 고객컴포넌트(51)를 통해 사용자에게 제공되는 것이다.
한편, 도 5 는 사용자가 입력하고자 하는 데이타를 암호화하여 데이타베이스서버(6)에 저장시키는 과정을 도시한 것으로서, 입력되는 데이타가 암/복호화엔진(54)에 의해 암호화되어 데이타베이스서버(6)에 저장되고, 저장된 데이타가 결과데이타로서 출력될 때에는 암/복호화엔진(54)에 의해 복원되어 출력되는 것이다.
1: 사용자PC, 2: 관리자PC,
3. 보안정책 간리모듈, 4: IC카드
5: 어플리케이션서버, 6: 데이타베이스서버,
31: 제 1 의사난수 생성기, 32: 제 2 의사난수 생성기,
33: 인터레이션 카운트 생성기, 34: 암호화처리기,
41: 칩메모리, 51: 고객컴포넌트,
52: 프레임워크 필터 인터페이스, 53: 쿼리 아날라이저,
54: 암/복호화엔진,
55: 클라우드 프레임워크 인터페이스,

Claims (4)

  1. 인터넷을 통해 접속하는 사용자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); 로 구성한 것을 특징으로 하는 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 시스템.
  2. 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법에 있어서,
    IC카드(4)에 저장되어 있는 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 이중 암호화시켜 어플리케이션서버(1)에 로딩하는 제 1 과정과;
    어플리케이션서버(1)에 로딩된 암호화키와보안정책정보를 세션키와 헤더키를 이용하여 복호화하여 어플리케이션메모리에 저장하는 제 2 과정과;
    제 2 과정 이후 사용자에 의해 조회 또는 입력 요청되는 쿼리문의 테이블/컬럼에 대한 접근권한 여부를 어플리케이션 메모리에 저장되어 있는 보안정책정보를 이용하여 판단하고, 그 판단결과에 따라 입출력되는 테이블/컬럼을 암호화키를 이용하여 암/복호화하는 제 3 과정; 으로 구성한 것을 특징으로 하는 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법.
  3. 제 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 단계; 로 구성한 것을 특징으로 하는 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법.
  4. 제 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 단계; 로 구성한 것을 특징으로 하는 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법.
KR1020100050866A 2010-05-31 2010-05-31 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템 KR100988198B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100050866A KR100988198B1 (ko) 2010-05-31 2010-05-31 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100050866A KR100988198B1 (ko) 2010-05-31 2010-05-31 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템

Publications (1)

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

Family

ID=43135511

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100050866A KR100988198B1 (ko) 2010-05-31 2010-05-31 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템

Country Status (1)

Country Link
KR (1) KR100988198B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101220166B1 (ko) * 2011-01-14 2013-01-11 동국대학교 경주캠퍼스 산학협력단 데이터 접근 권한 관리 방법
US8788846B2 (en) 2011-11-03 2014-07-22 Electronics And Telecommunications Research Institute Cloud computing system and cloud server managing method thereof
KR101442489B1 (ko) 2013-12-16 2014-09-26 주식회사 시큐브 보안키를 이용한 스마트기기의 보안파일 접근 제어 장치 및 방법
KR101479290B1 (ko) * 2014-08-19 2015-01-05 (주)세이퍼존 보안 클라우드 서비스를 제공하기 위한 에이전트 및 보안 클라우드 서비스를위한 보안키장치
KR101619286B1 (ko) 2015-11-19 2016-05-10 (주)세이퍼존 크로스 플랫폼 기반의 보안시스템
KR20210124368A (ko) * 2019-02-05 2021-10-14 크립트 인크. 에폭 키 교환을 이용한 종단간 이중 래칫 암호화

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040007769A (ko) * 2001-07-05 2004-01-24 구로프 게오로기 보리소비치 컴퓨터 네트워크에서의 데이터 분산 처리의 통합 보호방법 및 이 방법을 수행하는 시스템
JP2006185184A (ja) 2004-12-27 2006-07-13 Nomura Research Institute Ltd 権限管理システム、認証サーバ、権限管理方法および権限管理プログラム
US20070143459A1 (en) 2005-12-19 2007-06-21 Lucent Technologies Inc. Protection of privacy-sensitive information through redundancy, encryption and distribution of information
JP2008035234A (ja) 2006-07-28 2008-02-14 Nec Infrontia Corp クライアント・サーバ型分散システム、クライアント装置、サーバ装置及びそれらに用いるメッセージ暗号方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040007769A (ko) * 2001-07-05 2004-01-24 구로프 게오로기 보리소비치 컴퓨터 네트워크에서의 데이터 분산 처리의 통합 보호방법 및 이 방법을 수행하는 시스템
JP2006185184A (ja) 2004-12-27 2006-07-13 Nomura Research Institute Ltd 権限管理システム、認証サーバ、権限管理方法および権限管理プログラム
US20070143459A1 (en) 2005-12-19 2007-06-21 Lucent Technologies Inc. Protection of privacy-sensitive information through redundancy, encryption and distribution of information
JP2008035234A (ja) 2006-07-28 2008-02-14 Nec Infrontia Corp クライアント・サーバ型分散システム、クライアント装置、サーバ装置及びそれらに用いるメッセージ暗号方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101220166B1 (ko) * 2011-01-14 2013-01-11 동국대학교 경주캠퍼스 산학협력단 데이터 접근 권한 관리 방법
US8788846B2 (en) 2011-11-03 2014-07-22 Electronics And Telecommunications Research Institute Cloud computing system and cloud server managing method thereof
KR101442489B1 (ko) 2013-12-16 2014-09-26 주식회사 시큐브 보안키를 이용한 스마트기기의 보안파일 접근 제어 장치 및 방법
KR101479290B1 (ko) * 2014-08-19 2015-01-05 (주)세이퍼존 보안 클라우드 서비스를 제공하기 위한 에이전트 및 보안 클라우드 서비스를위한 보안키장치
KR101619286B1 (ko) 2015-11-19 2016-05-10 (주)세이퍼존 크로스 플랫폼 기반의 보안시스템
KR20210124368A (ko) * 2019-02-05 2021-10-14 크립트 인크. 에폭 키 교환을 이용한 종단간 이중 래칫 암호화
KR102619383B1 (ko) 2019-02-05 2023-12-29 크립트 인크. 에폭 키 교환을 이용한 종단간 이중 래칫 암호화

Similar Documents

Publication Publication Date Title
CN109144961B (zh) 授权文件共享方法及装置
Tong et al. Cloud-assisted mobile-access of health data with privacy and auditability
CN103327002B (zh) 基于属性的云存储访问控制***
US8971535B2 (en) Multi-level key management
US11507683B2 (en) Query processing with adaptive risk decisioning
KR100988198B1 (ko) 분산 컴퓨팅 기반 유틸리티 컴퓨팅 환경에서의 정보유출 방지를 위한 암호화 방법 및 이를 위한 시스템
CA3116405A1 (en) Systems and methods for distributed data storage and delivery using blockchain
US20110191591A1 (en) Transmitting Information Using Virtual Input Layout
US20130230168A1 (en) Information processing device, information processing method, and computer readable medium
US20120254622A1 (en) Secure Access to Electronic Devices
CN112929172A (zh) 基于密钥库动态加密数据的***、方法及装置
CN105991563B (zh) 一种保护敏感数据安全的方法、装置及三方服务***
CN101510888A (zh) 一种SaaS应用下提高数据安全性的方法、装置及***
US9479330B2 (en) Method, information service system and program for information encryption/decryption
Mont et al. The HP time vault service: exploiting IBE for timed release of confidential information
JP2010224655A (ja) データベース処理方法、データベース処理プログラム、および、暗号化装置
CN111339177A (zh) 一种基于sap平台的数据导出方法及***
KR20090070218A (ko) 데이터베이스 보안을 위한 데이터베이스 보안관리장치와 그제어방법
KR20160040399A (ko) 개인정보 관리 시스템 및 개인정보 관리 방법
CN104301102A (zh) Widget通信方法、装置及***
CN112583602B (zh) 信息码数据传输方法、装置、***、计算机设备和介质
CN113193956B (zh) 账号信息处理方法及装置
CN102387181A (zh) 一种登录方法和登录装置
CN114282252A (zh) 基于区块链的信息交互方法、***和计算机设备
CN115804060A (zh) 分发加密的数据对象

Legal Events

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

Payment date: 20131001

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141010

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151013

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161012

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20171012

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 9

R401 Registration of restoration