KR100624691B1 - 블록 암호화 데이터의 복호화 처리 장치 및 그 방법 - Google Patents

블록 암호화 데이터의 복호화 처리 장치 및 그 방법 Download PDF

Info

Publication number
KR100624691B1
KR100624691B1 KR1020040072352A KR20040072352A KR100624691B1 KR 100624691 B1 KR100624691 B1 KR 100624691B1 KR 1020040072352 A KR1020040072352 A KR 1020040072352A KR 20040072352 A KR20040072352 A KR 20040072352A KR 100624691 B1 KR100624691 B1 KR 100624691B1
Authority
KR
South Korea
Prior art keywords
policy
decryption
block
plaintext
ciphertext
Prior art date
Application number
KR1020040072352A
Other languages
English (en)
Other versions
KR20060023493A (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 KR1020040072352A priority Critical patent/KR100624691B1/ko
Priority to CNA2005100999238A priority patent/CN1747380A/zh
Priority to US11/221,795 priority patent/US20060050889A1/en
Publication of KR20060023493A publication Critical patent/KR20060023493A/ko
Application granted granted Critical
Publication of KR100624691B1 publication Critical patent/KR100624691B1/ko

Links

Images

Classifications

    • 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
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 블록 암호화 처리된 입력데이터를 파싱하여 암호문과 그 암호문에 적용할 복호화 정책을 지시하는 제 1 평문으로 구분해내는 단계와, 제 1 평문에 의거하여 적어도 하나 이상의 복호화 정책중에서 암호문의 일부 블록을 우선적으로 복호화할 복호화 정책을 선택하는 단계와, 선택된 복호화 정책에 따라 암호문의 일부 블록을 우선적으로 복호화하여 제 2 평문으로 변환하는 단계와, 제 1 평문 및 제 2 평문에 의거하여 변환 평문 제어 정책을 선택하여 그 평문 제어 정책에 따라 암호문중에서 미복호화된 블록에 대한 후속절차를 수행하는 단계를 포함하는 블록 암호화 데이터의 복호화 처리 방법을 제공한다.
본 발명에 의하면, 블록 암호화된 여러 개 블록으로 이루어진 데이터에 대하여 그 일부분을 우선적으로 복호화한 후 이 부분적 복호화 결과만으로 처리할 수 있는 경우, 해당 데이터의 나머지 부분에 대한 복호화 작업을 생략하고 후속 작업을 진행하여 그 결과를 아직 복호화되지 않은 블록까지 포함하는 전체 데이터에 적용하도록 함으로써 보다 높은 성능의 데이터 처리를 가능하게 할 수 있다.
암호화, 복호화, 평문, 파서, ECB, CBC

Description

블록 암호화 데이터의 복호화 처리 장치 및 그 방법{APPARATUS AND METHOD FOR DECRYPTION PROCESSING OF BLOCK ENCRYPTED DATA}
도 1은 종래의 기술에 의해 블록 암호화 데이터를 복호화하는 개념도.
도 2는 본 발명의 일실시예에 따른 블록 암호화 데이터 복호화 장치의 구성도.
도 3은 본 발명의 일실시예에 따른 블록 암호화 데이터를 복호화하는 개념도.
<도면의 주요부분에 대한 부호의 설명>
10 : 메모리 20 : 파서
30 : 복호화부 40 : 복호화 정책 DB
50 : 복호화 정책 선택부 60 : 변환평문 제어정책 DB
70 : 변환 평문 처리부
본 발명은 블록 암호화 데이터의 복호화 처리에 관한 것으로, 상세하게는 복호화할 데이터의 길이가 암호 알고리즘의 블록 크기보다 큰 경우 적용하게 되는 블록 암호화 모드(ECB, CBC, XCBC, OFB, CTR 모드 등)의 특성을 이용하여 암호화된 전체 데이터의 일부 블록을 우선적으로 복호화하고 그 복호화된 부분만을 이용하여 전체 데이터에 적용될 룰을 처리하도록 하여 전체 데이터를 모두 다 복호화하는 경우와 비교할 때 보다 효율적으로 데이터를 처리하도록 하는 블록 암호화 데이터의 복호화 처리장치 및 그 방법에 관한 것이다.
현재 널리 사용되고 있는 DES(Data Encryption Standard), 3DES, AES(Advanced Encryption Standard) 와 같은 블록 암호화 알고리즘들은 입력값으로 받아들이는 데이터의 길이(블록길이)가 정해져 있다. 따라서, 미리 정해진 블록길이보다 작은 데이터는 블록길이에 맞도록 패딩(pading)을 붙여야 하며, 블록길이보다 큰 데이터는 블록길이에 맞춰서 여러 개의 조각으로 나누어서 각각을 암호화 알고리즘의 입력값으로 하여야 한다.
길이가 긴 입력 데이터를 이러한 여러 개의 블록조각들로 나누어서 암호화하는 방법은 각각의 블록들을 어떤 관계로 연결하느냐에 따라 ECB(Electronic Code Book), CBC(Chipher Block chaning), XCBC, OFB(Output FeedBack), CTR(Click Through Rate) 등의 모드들로 구분된다.
특히 CBC, XCBC, OFB 모드에서는 암/복호화된 블록의 결과값이 그 다음 블록 암/복호화의 입력값의 일부로 이용되지만, ECB 나 CTR 모드에서는 각각의 입력블록들의 결과값이 다음 블록의 암/복호화를 처리하는 데 입력값으로 재사용되지는 않 는다는 점에서 차이가 있다.
도 1은 종래의 기술에 의해 블록 암호화 데이터를 복호화하는 개념도이다.
도 1을 참조하면, 종래기술에서는 암호화된 데이터가 입력되면 암호문과 그 암호문을 복호화하기 위한 정책을 지시하는 선택자를 가지고 있는 평문부분으로 파싱하고(S1), 그 선택자을 조건으로 복호화 정책 DB(1)을 검색하여(S2) 해당 암호문을 복호화기 위한 암호화 알고리즘, 블록연결모드, 복호화에 필요한 계수들을 가지고 있는 복호화 정책을 출력해낸다(S3). 그러면 그 복호화 정책에 따라 암호화된 부분 전체를 복호화하여 평문으로 변환한다(S4). 그리고, 변환평문 제어정책 DB(2)에 그 평문에 대한 정책을 검색하여 그에 따라 해당 데이터를 처리한다(S5).
이와 같이 종래에는 여러 개의 블록으로 이루어진 복호화할 데이터는 일단 전부 다 복호화하고 그 이후에 그 데이터에 적용할 후속연산을 진행한다. 예를 들어 IPSec(Internet Protocol Security protocol) 또는 SSL/TLS 프로토콜에 사용되는 3DES 암호알고리즘의 CBC 모드로 암호화된 페이로드를 구성하는 블록들은 일단 모두 다 복호화된 후 그 결과 생성된 데이터 패킷에 대하여 접근제어리스트(Access control list) 나 스팸 필터링 정책 리스트 등을 적용하는 식이다.
종래 기술에서는 여러 개의 블록으로 구성된 암호 데이터를 일단 전부 다 복호화 한 후에야 적용될 후속작업을 진행한다. 그 결과 데이터의 일부분만 복호화하면 적용할 수 있는 작업들도 전체가 다 복호화되기를 기다려서 진행해야 하고 이것은 경우에 따라 비효율적일 수 있다.
예를 들어, IPSec 페이로드 중 접근제어리스트를 적용하기 위해 일반적으로 필요한 부분은 복호화된 모든 블록이 아니라 IP 헤더나 계층 4 (Layer 4) 프로토콜의 프로토콜 번호와 포트번호 등이 존재하는 처음 몇 개의 블록들이고, SSL 페이로드 중 스팸메일 필터링 기능을 위하여 필요한 부분은 '[광고]' 라는 머리글을 써서 광고메일을 표시하기로 미리 약속된 경우, 메일의 제목부분이 존재하는 처음 몇 개의 블록들이다.
이러한 경우, 적용될 접근제어리스트나 스팸메일 필터가 복호화된 데이터를 받아들이도록 정책설정이 되어있다면 결과적으로 모든 암호화 블록들이 복호화되어야 하고, 이 경우는 처음 몇 개의 블록들만 우선적으로 복호화하는 방법이 큰 장점을 가질 수는 없을 것이다.
그러나, 복호화된 데이터를 거부하도록 정책설정이 되어있는 경우에는 결과적으로 바로 버릴 데이터를 컴퓨팅 자원을 들여가며 불필요한 복호화를 진행하는 결과가 초래된다. 이것은 암/복호화가 컴퓨팅 자원을 매우 많이 소모하는 작업이라는 것을 고려해 볼 때 커다란 성능저하요인으로 작용할 수 있다.
본 발명은 이러한 종래의 문제점을 해결하기 위하여 안출된 것으로, 블록 암호화된 여러 개 블록의 집합으로 구성된 데이터의 일부분을 우선적으로 복호화하여 이 부분적 복호화 블록만으로 처리할 수 있는 후속 작업을 진행하여 그 결과를 아직 복호화되지 않은 블록까지 포함하는 전체 데이터에 적용하도록 하여 보다 높은 성능의 데이터처리를 가능하도록 하는 블록 암호화 데이터의 복호화장치 및 그 방 법을 제공하는데 그 목적이 있다.
이러한 목적을 달성하기 위한 본 발명의 일측면에 의하면, 블록 암호화 처리된 입력 데이터를 파싱하여 암호문과 그 암호문에 적용할 복호화 정책을 지시하는 제 1 평문으로 구분해내는 파서와, 파서에 의해 구분된 제 1 평문에 의거하여 적어도 하나 이상의 복호화 정책중에서 암호문의 일부 블록을 우선적으로 복호화할 복호화 정책을 선택하는 복호화 정책 선택부와, 복호화 정책 선택부에 의해 선택된 복호화 정책에 따라 파서에 의해 구분된 암호문의 일부 블록을 우선적으로 복호화하여 제 2 평문으로 변환하는 복호화부와, 제 1 평문 및 제 2 평문에 의거하여 입력 데이터에 적용할 변환 평문 제어 정책을 선택하여 그 평문 제어 정책에 따라 암호문중에서 미복호화된 블록에 대한 후속절차를 수행하는 변환 평문 처리부를 포함하는 블록 암호화 데이터의 복호화 처리 장치를 제공한다.
본 발명의 다른 측면에 의하면, 블록 암호화 처리된 입력데이터를 파싱하여 암호문과 그 암호문에 적용할 복호화 정책을 지시하는 제 1 평문으로 구분해내는 단계와, 파싱에 의해 구분된 제 1 평문에 의거하여 적어도 하나 이상의 복호화 정책중에서 암호문의 일부 블록을 우선적으로 복호화할 복호화 정책을 선택하는 단계와, 선택된 복호화 정책에 따라 파싱에 구분된 암호문의 일부 블록을 우선적으로 복호화하여 제 2 평문으로 변환하는 단계와, 제 1 평문 및 제 2 평문에 의거하여 입력 데이터에 적용할 변환 평문 제어 정책을 선택하여 그 평문 제어 정책에 따라 암호문중에서 미복호화된 블록에 대한 후속절차를 수행하는 단계를 포함하는 블록 암호화 데이터의 복호화 처리 방법을 제공한다.
이하, 첨부된 도면을 참조하여 본 발명의 일실시예에 따른 블록 암호화 데이터의 복호화에 대하여 설명하도록 한다.
도 2는 본 발명의 일실시예에 따른 블록 암호화 데이터 복호화 장치의 구성도이다.
도 2를 참조하면, 본 발명에 의한 암호 복호화 장치는 입력되는 암호 데이터를 저장하는 메모리(10)와, 메모리(10)에 입력된 입력데이터에 대하여 암호문과 그 암호문을 복호화할 정책을 지시하는 선택자로 구분해내는 파서(20)와, 암호문과 그 암호문에 적용될 복호화 정책을 입력값으로 받아들여 평문으로 변환하여 출력하는 복호화부(30)와, 이러한 복호화 정책을 적용하기 위한 구체적인 규칙과 인수값들을 저장하고 있는 복호화 정책 데이터 베이스(40)와, 파서(20)에 의해 구분된 선택자를 조건으로 하여 복호화 정책 데이터 베이스(40)에서 해당 암호문에 적용될 복호화 정책을 포함하는 엔트리를 검색하여 복호화부(30)에 출력하는 복호화 정책 선택부(50)와, 복호화부(30)에 의해 복호화되어 출력된 평문을 적용할 규칙들을 저장하고 있는 변환평문 제어정책 데이터베이스(60)와, 복호화부(30)로부터 출력된 데이터에 대하여 변환평문 제어 정책 데이터베이스(60)에 저장된 정책을 참조하여 미복화화된 블록에 대한 차후 절차를 수행하는 변환 평문 처리부(70)로 구성된다.
메모리(10)는 복호화 처리 장치에 임의의 암호화된 데이터가 입력되는 경우 해당 데이터를 임시적으로 저장한다. 메모리(10)에 암호화된 데이터가 저장되어 있 는 동안 파서(20)와 복호화부(30)에서는 절차에 따라 해당 데이터를 억세스하여 해당 데이터에 대한 파싱과 복호화를 수행한다.
파서(20)는 메모리(10)에 저장된 암호화된 데이터를 억세스하여 IPSec 또는 SSL/TLS 패킷과 같은 입력데이타를 순수한 암호문 부분과 그 암호문을 복호화 할 정책 및 인수값들을 찾게 해주는 평문인 정책 선택자의 두 가지 부분으로 분류해 낼 수 있다.
여기에서, IPSec(Internet Protocol Security protocol)과 SSL/TLS(Secure Socket Layer/Trnasport Laye Security)에 대하여 잠시 설명하도록 한다.
최근 가상 사설망 구축시 개발 업체간에 가상 사설망 게이트웨이의 데이터 패킷, 키 관리 체계 등 보안 프로토콜이 일치하지 않는 경우, 통신이 되지 않기 때문에 이를 해결하기 위해 IETF IPSec 작업반을 중심으로 가상 사설망 시스템과 연관된 표준화 작업이 진행중이다.
IPSec 작업반에서 표준화가 진행중인 권고안은 보안 프로토콜, 암호기술, 그리고 키 관리 기술 등과 같이 네트워크 보안에 관련된 내용을 개발하고 있으며, AH (Authentication Header), ESP (Encapsulating Security Payload), 키 관리 메커니즘을 중심으로 표준화가 진행중이다.
IPSec 에서는 IP 계층 간의 IP 패킷의 전송 및 수신에 대한 안전성을 제공하기 위한 구조로써 종단간 호스트에서의 상위 계층으로부터의 모든 데이터에 대해 보안 서비스를 제공한다. 즉, IP 패킷에 대한 인증, 무결성, 기밀성의 보안 서비스를 제공한다.
이러한 보안 서비스를 제공하기 위하여 IKMP(Internet Key Management Protocol), SA (Security Association), 암호 알고리즘 등에 대해 정의를 하고 있다.
IPSec은 IETF에서 현재 가장 활발한 연구가 이루어지고 있는 분야 가운데 하나인데, 최근에 IPSec과 관련된 작업반 2개가 새롭게 결성되기도 하였다. 그 중 하나는 IP Security Policy 작업반으로 IPSec 정책 제공에 대한 지침을 제공하기 위해 확장 가능한 명세 언어와 정책 교환 프로토콜 및 협상 프로토콜의 개발을 위해 연구를 수행하고 있다.
다른 하나는 IP Security Access 작업반으로 사용자 구성정보 및 사용자 접근통제 정보를 사용자의 사설 네트워크로부터 IPSec이 구현된 네트워크까지 전달하는 메커니즘을 정의하는 연구를 수행중이다.
SSL(Secure Socket Layer)은 웹 브라우저 개발로 잘 알려져 있는 Netscape 사에서 처음으로 제안되었으며, 자사의 웹 어플리케이션에 처음으로 구현하였다. SSL은 현재 WWW 보안의 대명사로 알려져 있는 보안 프로토콜이며, 버전 3.0까지 개발되어 있는 상태이고, Netscape, Internet Explorer 등 대부분의 브라우저에서 널리 사용되고 있다. TLS(Trnasport Laye Security)는 IETF에서 표준화하고 있는 웹 보안 메커니즘으로 SSL과 동일한 기능을 제공하며, SSL 3.0에 기반해서 설계되었다.
SSL/TLS는 인터넷 환경에서 통신을 하는 두 응용 프로그램 사이에 안전한 채널을 형성하여 통신 내용의 보안성을 지켜준다. 즉 WWW 통신을 할 때, 서버와 클라 이언트 사이에 암호화된 채널을 형성함으로써 통신보안을 구축한다.
응용 프로그램과 TCP 사이에서 수행되기 때문에 특정 응용 프로그램에 종속되지 않고, TCP/IP를 사용하는 모든 응용 프로그램을 지원해줄 수 있으며, 두 응용간의 기밀성 서비스, 클라이언트와 서버 인증 서비스, 메시지 무결성 서비스 등의 보안 서비스를 제공한다.
IPSec의 경우, 파서(20)는 파서(20)가 해석할 수 있는 평문 부분은 IP 프로토콜 헤더 부분이 전부이며, 이 IP 헤더를 제외한 나머지 부분 (IP 페이로드 부분)은 암호화 되어 있기 때문에 파서가 정책 선택자로 사용할 수 없다.
이 IP 헤더중에서도 출발지 및 도착지 IP 주소와 보안정책지시자(SPI) 정보는 정책 선택자로서 가장 유용하게 사용될 수 있다.
한편, SSL/TLS의 경우에는 SSL/TLS 세션 ID 가 암호화되지 않은 평문으로서 정책 선택자 정보로서 유용하게 이용할 수 있다.
복호화부(30)는 DES, 3DES, AES 등의 암호학적 알고리즘들을 블록단위로 나누어서 처리할 수 있는 능력을 가지고 있고, 각각의 암호학적 알고리즘마다 받아들일 수 있는 블록의 길이와 블록들을 연결하는 모드는 미리 정해져 있다.
복호화 정책 데이터 베이스(40)는 입력된 암호문 데이터를 평문으로 변환하는데 사용할 암호화 알고리즘, 블록 연결 모드 및 기타 암호문을 평문으로 변환하는 데 필요한 인수값들, 우선적으로 복호화하여 평문화할 블록의 개수 등을 정의한 엔트리의 집합으로 구성되어 있다.
변환평문 제어정책 데이터베이스(60)는 변환된 평문에 적용할 접근제어정책 (ACL policy), 데이터분류정책(classification policy), 품질보장정책(QoS policy) 등을 정의한 엔트리의 집합으로 구성되어 있다.
이와 같이 구성된 본 발명에 따른 암호 데이터 복호화 장치의 동작에 대하여 도 2 및 도 3을 참조하여 설명한다
도 3은 본 발명의 일실시예에 따른 암호 데이터의 복호화 절차를 설명하기 위한 도면이다.
도 2 및 도 3을 참조하면, 복호화 처리 장치에 암호화된 데이터가 입력되면 우선 메모리(10)에 저장된다. 메모리(10)에 저장된 입력 데이터는 우선 파서(20)에 의해 헤더부분 평문의 복호화 정책 선택자, 페이로드부분의 암호문으로 구별된다(S10).
복호화 정책 선택부(50)는 파서(20)에 의해 구분된 평문의 복호화 정책 선택자를 이용하여 복호화 정책 데이터 베이스(40)에서 암호문을 복호화할 복호화 정책 엔트리를 검색한다(S20).
이때, 복호화 정책 DB 엔트리를 검색하기 위한 복호화 정책 선택자는 메세지의 평문 부분 주소정보가 포함된다. 주소 정보의 예로는 발신지 및 도착지의 IP 주소, IPSec 옵션 헤더의 보안 정책 계수(SPI) 또는 SSL/TLS 세션 ID가 해당될 수 있다.
복호화 정책 선택부(50)는 복호화 정책 선택자에 의해 복호화 정책 데이터 베이스(40)에서 해당하는 복호화 엔트리를 검색한 결과 적절한 엔트리가 존재하면 복호화 작업에 필요한 각종 계수들을 그 엔트리 내에서 추출한다(S30).
이 작업은 IPSec을 예로 들면 IP 주소와 SPI 를 복호화 정책 선택자로 이용 하여 Security Association 한 개를 찾아내는 것에 해당하며, SSL/TLS 를 예로 들면 IP 주소와 SSL/TLS 세션 ID 를 복호화 정책 선택자로 이용하여 SSL/TLS 세션 엔트리를 찾아내는 것에 해당한다.
엔트리내에서 추출되는 복호화 작업을 위한 계수에는 암호 알고리즘, 블록간 연결 모드, 블록 연결 복호화 초기 벡터, 우선적으로 복호화할 블록 갯수들이 포함된다.
예를 들면 IPSec 이나 SSL/TLS에서 사용하는 3DES 나 AES 블록 알고리즘, CBC 모드, XCBC 모드, CTR 모드등의 블록간 연결 모드 정보, IPSec 터널의 경우 내부 IP 헤더의 길이를 포함할 수 있을 정도의 블록길이 (40 바이트) 나 SSL/TLS 의 경우 이메일의 헤더부분까지 포함할 수 있을 정도의 블록길이 등으로 설정된 우선적 복호화 블록 개수 등이 계수로서 설정될 수 있다.
복호화부(30)는 복호화 정책 선택부(50)에 의해 복호화 정책 데이터 베이스(40)에서 추출된 복호화를 위한 계수를 반영하여 메모리(10)에 저장되어 있는 데이터에 대한 복호화를 수행한다(S40).
복호화 정책 선택부(50)에 의해 추출된 계수에 우선적으로 복호화할 블록의 갯수가 있음에 따라 복호화부(30)는 직전에 암/복호화된 블록 처리의 결과값이 다음에 처리해야 할 블록의 입력값으로 재사용되는 CBC, XCBC, OFB 모드로 암호화된 경우에는 암호문의 처음부터 우선적으로 복호화할 블록의 개수만큼만 복호화한다.
한편, 블록 처리의 결과값이 다른 블록 처리의 입력값으로 재사용되지 않는 ECB 나 CTR 모드의 경우에는 암호화된 데이터 어느 부분의 블록도 정해진 개수만큼 선택하여 복호화 할 수 있으나 일반적으로 데이터 패킷의 정보는 패킷의 앞쪽에 존재하므로 역시 암호문의 처음부터 정해진 개수만큼의 블록을 우선적으로 복호화하여 그 결과를 메모리(10)에 저장한다.
이제 변환 평문 처리부(70)는 파서(20)에 의해서 분리된 원래 헤더부분의 평문과 우선적으로 복호화된 블록의 평문을 함께 이용하여 변환평문 제어정책 데이터베이스(60)에서 제어정책을 검색한다(S50).
이때에 변환평문 제어정책 데이터 베이스(60)의 엔트리를 검색하는 키에는 메세지의 평문 부분 주소 정보, 메세지의 복호화된 블록의 평문 부분 주소지 정보, 메세지의 복호화된 블록의 평문 부분 데이타값일 수 있다.
특히 메세지의 복호화된 블록의 평문 부분 데이터 값에는 응용계층 프로토콜의 헤더 등이 위치할 수 있으며, 이메일 프로토콜의 메일제목과 같이 상대적으로 더 중요하게 다루어 질 수 있는 데이터 값을 포함한다.
변환평문 제어정책 데이터베이스(60)는 변환된 평문에 적용할 접근제어정책(ACL policy), 데이터분류정책(classification policy), 스팸 필터링 정책, 품질보장정책(QoS policy) 등을 정의한 엔트리의 집합으로 구성되어 있다.
이에 따라 변환평문 제어정책 데이터베이스(60)에는 보안정책에 따른 허용 및 거부 여부, 메세지 품질 보장 정책에 따른 자원 할당 및 우선 순위 적용 여부, 추가적인 부분적 복호화를 더 적용할 지 여부와 추가적 복호화 블록 갯수가 저장될 수 있다.
변환 평문 처리부(70)는 변환 평문 제어정책 데이터 베이스(60)에서 해당하는 엔트리를 검색한 결과 적절한 정책이 발견되면, 그 정책이 정의하고 있는 연산이 암호문의 전부를 복호화해야 할 필요성이 있는 것이면 아직 복호화되지 않은 암호문의 나머지 부분도 복호화 하지만, 만약 그럴 필요가 없이 제어정책을 적용할 수 있다면 암호문의 나머지 부분을 복호화하지 않고 제어정책을 적용한다.
예를 들어 복호화된 IPSec 패킷에 적용할 ACL이 해당 패킷을 거부해야 한다면 복호화되지 않은 암호문의 나머지 부분을 복호화할 필요없이 해당패킷을 버리게 되는 것이다.
또 다른 예로, SSL/TLS 패킷에 적용할 스팸 메일 필터가 광고메일을 버리도록 설정되어 있다면 메일 제목의 '[광고]' 라는 부분만을 해독하여 나머지 부분을 복호화할 필요없이 해당패킷을 버리는 것이다.
또 다른 예로, SSL/TLS 패킷에 적용된 웹페이지 동적 스크립트 보안 정책에 의하여 ActiveX 나 Java 애플릿과 같은 보안상 약점이 있어 해킹에 많이 사용되는 스크립트를 가지고 있는 웹페이지들은 필터링 하도록 메일 서버를 세팅하였다면 첨부화일을 복호화할 필요없이 해당패킷을 버리는 것이다.
본 발명에 의하면, 암호화된 여러 개 블록으로 이루어진 데이터에 대하여 그 일부분을 우선적으로 복호화한 후 이 부분적 복호화 결과만으로 처리할 수 있는 경우, 해당 데이터의 나머지 부분에 대한 복호화 작업을 생략하고 후속 작업을 진행하여 그 결과를 아직 복호화되지 않은 블록까지 포함하는 전체 데이터에 적용하도 록 함으로써 보다 높은 성능의 데이터 처리를 가능하게 할 수 있다.
이에 따라, 과도한 컴퓨팅 자원이 소모되는 암/복호화 연산을 최소한으로 줄여 암/복호화 연산을 수행해야 하는 시스템의 성능을 최대한 높일 수 있는 효과를 제공할 수 있다.

Claims (22)

  1. 블록 암호화 처리된 입력데이터를 파싱하여 암호문과 그 암호문에 적용할 복호화 정책을 지시하는 제 1 평문으로 구분해내는 파서와,
    상기 파서에 의해 구분된 제 1 평문에 의거하여 적어도 하나 이상의 복호화 정책중에서 상기 암호문의 일부 블록을 우선적으로 복호화할 복호화 정책을 선택하는 복호화 정책 선택부와,
    상기 복호화 정책 선택부에 의해 선택된 복호화 정책에 따라 상기 파서에 의해 구분된 암호문의 일부 블록을 우선적으로 복호화하여 제 2 평문으로 변환하는 복호화부와,
    상기 제 1 평문 및 상기 제 2 평문에 의거하여 상기 입력 데이터에 적용할 변환 평문 제어 정책을 선택하여 그 평문 제어 정책에 따라 상기 암호문중에서 미복호화된 블록에 대한 후속절차를 수행하는 변환 평문 처리부를 포함하는 블록 암호화 데이터의 복호화 처리 장치.
  2. 제 1항에 있어서, 상기 복호화부는,
    상기 선택된 복호화 정책에 따라 블록 연결모드에 관한 정보와 우선적으로 복호화할 블록의 개수를 설정받아 상기 암호문 블록을 순차적으로 주어진 개수만큼 복호화 처리하는 블록 암호화 데이터의 복호화 처리 장치.
  3. 제 1항에 있어서,
    상기 복호화 정책 선택부에 의해 선택되는 적어도 하나 이상의 복호화 정책 과, 상기 변환 평문 처리부에 의해 선택되는 평문 제어 정책을 저장하고 있는 데이터 베이스를 더 포함하는 블록 암호화 데이터의 복호화 처리 장치.
  4. 제 1항에 있어서, 상기 데이터 베이스는,
    임의의 암호문에 대하여 해당 암호문의 일부 블록을 우선적으로 복호화하기 위한 적어도 하나 이상의 복호화 정책을 저장하고 있는 제 1 데이터 베이스와,
    상기 복호화부에 의해 복호화되어 출력된 제 2 평문에 적용할 규칙들을 저장하고 있는 제 2 데이터 베이스를 포함하는 블록 암호화 데이터의 복호화 처리 장치.
  5. 제 4항에 있어서, 상기 제 1 데이터 베이스는,
    입력된 암호문 데이터를 평문으로 변환하는데 사용할 암호화 알고리즘, 블록 연결 모드, 블록 연결 복호화 초기 벡터, 암호문을 평문으로 변환하는 데 필요한 인수값, 우선적으로 복호화하여 평문화할 블록의 개수를 정의한 적어도 하나 이상 의 엔트리를 포함하는 블록 암호화 데이터의 복호화 처리 장치.
  6. 제 5항에 있어서, 상기 암호화 알고리즘은 DES(Data Encryption Standard), 3DES, AES(Advanced Encryption Standard) 중 적어도 하나를 포함하는 블록 암호화 데이터의 복호화 처리 장치.
  7. 제 5항에 있어서,
    상기 블록 연결 모드는 블록들간의 연관관계가 존재하는 피드백 블록 모드 또는 블록들간의 연관관계가 존재하지 않는 비피드백 블록 모드를 포함하는 블록 암호화 데이터의 복호화 처리 장치.
  8. 제 7항에 있어서,
    상기 피드백 모드는 OFB(Output FeedBack), CBC(Chipher Block chaning), XCBC 중의 적어도 하나를 포함하는 블록 암호화 데이터의 복호화 처리 장치.
  9. 제 7항에 있어서,
    상기 비피드백 모드는 ECB, CTR 중 적어도 하나를 포함하는 블록 암호화 데이터의 복호화 처리 장치.
  10. 제 4항에 있어서, 상기 제 2 데이터베이스는,
    평문으로 변환된 암호문의 전부 또는 일부를 이용하여 접근제어정책(Access control list), 데이터 분류정책(Classification), 스팸메일 필터링 정책, 이메일 첨부화일 보안정책, 웹페이지 동적 스크립트 보안정책, 품질보장정책(QoS) 중 적어도 하나를 적용하기 위한 적어도 하나 이상의 인수를 저장하는 블록 암호화 데이터의 복호화 처리 장치.
  11. 제 1항에 있어서, 상기 입력 데이터는, 인터넷 프로토콜 패킷으로 IPSec에 의해 암호화된 데이터인 블록 암호화 데이터의 복호화 처리 장치.
  12. 제 1항에 있어서, 상기 입력 데이터에서 제 1 평문은 IP 패킷 헤더부분으로 구성되고, 암호문은 IP 패킷의 페이로드로 구성된 블록 암호화 데이터의 복호화 처리 장치.
  13. 제 1항에 있어서, 상기 제 1 평문은,
    그 일부 또는 전부를 이용하여 상기 복호화 정책을 검색하기 위한 키 정보를 포함하는 블록 암호화 데이터의 복호화 처리 장치.
  14. 제 13항에 있어서, 상기 키 정보는,
    인터넷 프로토콜 헤더의 발신지, 도착지 주소, 4계층 프로토콜 넘버, IPSec 헤더의 보안정책계수, SSL/TLS 세션 ID 중 적어도 하나를 포함하는 블록 암호화 데이터의 복호화 처리 장치.
  15. 블록 암호화 처리된 입력데이터를 파싱하여 암호문과 그 암호문에 적용할 복호화 정책을 지시하는 제 1 평문으로 구분해내는 단계와,
    상기 파싱에 의해 구분된 제 1 평문에 의거하여 적어도 하나 이상의 복호화 정책중에서 상기 암호문의 일부 블록을 우선적으로 복호화할 복호화 정책을 선택하는 단계와,
    상기 선택된 복호화 정책에 따라 상기 파싱에 구분된 암호문의 일부 블록을 우선적으로 복호화하여 제 2 평문으로 변환하는 단계와,
    상기 제 1 평문 및 상기 제 2 평문에 의거하여 상기 입력 데이터에 적용할 변환 평문 제어 정책을 선택하여 그 평문 제어 정책에 따라 상기 암호문중에서 미복호화된 블록에 대한 후속절차를 수행하는 단계를 포함하는 블록 암호화 데이터의 복호화 처리 방법.
  16. 제 15항에 있어서, 상기 복호화 정책을 선택하는 단계는,
    상기 제 1 평문을 조건으로 하여 상기 적어도 하나 이상의 복호화 정책을 저장하고 있는 제 1 데이터 베이스를 검색하여 상기 암호문의 일부 블록을 우선적으로 복호화할 복호화 정책을 선택하는 단계를 포함하는 블록 암호화 데이터의 복호화 처리 방법.
  17. 제 16항에 있어서, 상기 제 1 데이터 베이스는,
    입력된 암호문 데이터를 평문으로 변환하는데 사용할 암호화 알고리즘, 블록 연결 모드, 블록 연결 복호화 초기 벡터, 암호문을 평문으로 변환하는 데 필요한 인수값, 우선적으로 복호화하여 평문화할 블록의 개수를 정의한 적어도 하나 이상의 엔트리를 포함하는 블록 암호화 데이터의 복호화 처리 방법.
  18. 제 15항에 있어서, 상기 제 2 평문으로 변환하는 단계는,
    상기 선택된 복호화 정책에 따라 블록 연결모드에 관한 정보와 우선적으로 복호화할 블록의 갯수를 설정받아 상기 암호문 블록을 순차적으로 주어진 개수만큼 복호화 처리하는 단계를 포함하는 블록 암호화 데이터의 복호화 처리 방법.
  19. 제 15항에 있어서, 상기 후속절차를 수행하는 단계는,
    상기 제 1 평문 및 제 2 평문을 조건으로 하여 상기 평문 제어 정책을 저장하고 있는 제 2 데이터 베이스를 검색하여 상기 입력 데이터에 적용할 변환 평문 제어 정책을 선택하여 그 평문 제어 정책에 따라 상기 암호문중에서 미복호화된 블록에 대한 후속절차를 수행하는 단계를 포함하는 블록 암호화 데이터의 복호화 처리 방법.
  20. 제 19항에 있어서,
    상기 후속절차는 상기 암호문중에서 미복호화된 블록에 대한 추가적인 복호화 절차를 생략하고 상기 제 1 평문, 제 2 평문, 미복호화된 암호문의 블록으로 이루어진 데이터에 대한 후속 처리를 지시하는 단계를 포함하는 블록 암호화 데이터의 복호화 처리 방법.
  21. 제 20항에 있어서, 상기 후속처리는, 상기 데이터를 폐기하는 것을 포함하는 블록 암호화 데이터의 복호화 처리 방법.
  22. 제 15항에 있어서,
    상기 후속절차는 상기 암호문중에서 미복호화된 블록에 대한 일부 또는 전체 블록을 추가적으로 복호화하도록 지시하는 단계를 포함하는 블록 암호화 데이터의 복호화 처리 방법.
KR1020040072352A 2004-09-09 2004-09-09 블록 암호화 데이터의 복호화 처리 장치 및 그 방법 KR100624691B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020040072352A KR100624691B1 (ko) 2004-09-09 2004-09-09 블록 암호화 데이터의 복호화 처리 장치 및 그 방법
CNA2005100999238A CN1747380A (zh) 2004-09-09 2005-09-09 对分组加密数据进行解密
US11/221,795 US20060050889A1 (en) 2004-09-09 2005-09-09 Decrypting block encrypted data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040072352A KR100624691B1 (ko) 2004-09-09 2004-09-09 블록 암호화 데이터의 복호화 처리 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20060023493A KR20060023493A (ko) 2006-03-14
KR100624691B1 true KR100624691B1 (ko) 2006-09-15

Family

ID=36166721

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040072352A KR100624691B1 (ko) 2004-09-09 2004-09-09 블록 암호화 데이터의 복호화 처리 장치 및 그 방법

Country Status (3)

Country Link
US (1) US20060050889A1 (ko)
KR (1) KR100624691B1 (ko)
CN (1) CN1747380A (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7953973B2 (en) * 2006-12-14 2011-05-31 Radware Ltd. Systems, methods, and computer program products for passively routing secure socket layer (SSL) encoded network traffic
US9900347B2 (en) * 2007-09-14 2018-02-20 Telefonaktiebolaget Lm Ericsson (Publ) Handling trust in an IP multimedia subsystem communication network
KR101964229B1 (ko) * 2013-07-26 2019-04-01 한화테크윈 주식회사 감시 서버, 감시 서버의 데이터 처리 방법, 및 감시 시스템
CN105024805B (zh) * 2015-07-24 2018-06-29 东南大学 一种改进的cbc模式3des加密方法
KR102447476B1 (ko) * 2015-08-20 2022-09-27 삼성전자주식회사 암복호 장치, 그것을 포함하는 저장 장치 및 그것의 암복호 방법
CN107203574B (zh) * 2016-03-18 2021-01-01 伊姆西Ip控股有限责任公司 数据管理和数据分析的聚合
KR101809018B1 (ko) * 2016-04-20 2017-12-14 주식회사 이디엄 열 지향 레이아웃 파일의 생성 방법
CN107342964B (zh) 2016-04-28 2019-05-07 华为技术有限公司 一种报文解析方法及设备
CN107248951B (zh) * 2017-08-10 2018-12-04 北京明朝万达科技股份有限公司 一种邮件处理系统、方法及装置
CN109840420B (zh) * 2017-11-24 2023-07-04 广东亿迅科技有限公司 基于内存加解密的数据分析处理方法及装置
US11038856B2 (en) * 2018-09-26 2021-06-15 Marvell Asia Pte, Ltd. Secure in-line network packet transmittal
CN111222152B (zh) * 2020-01-03 2022-10-14 上海达梦数据库有限公司 一种数据写入方法、装置、设备及存储介质
CN118523902A (zh) * 2024-07-22 2024-08-20 之江实验室 一种基于软件定义的多种加解密模式切换方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6996842B2 (en) * 2001-01-30 2006-02-07 Intel Corporation Processing internet protocol security traffic
US7263609B1 (en) * 2003-04-29 2007-08-28 Cisco Technology, Inc. Method and apparatus for packet quarantine processing over a secure connection

Also Published As

Publication number Publication date
KR20060023493A (ko) 2006-03-14
US20060050889A1 (en) 2006-03-09
CN1747380A (zh) 2006-03-15

Similar Documents

Publication Publication Date Title
US20060050889A1 (en) Decrypting block encrypted data
US8468337B2 (en) Secure data transfer over a network
US7398386B2 (en) Transparent IPSec processing inline between a framer and a network component
US9832015B2 (en) Efficient key derivation for end-to-end network security with traffic visibility
US7774593B2 (en) Encrypted packet, processing device, method, program, and program recording medium
EP1466435B1 (en) Secure transport for mobile communication network
US7082477B1 (en) Virtual application of features to electronic messages
US20030196081A1 (en) Methods, systems, and computer program products for processing a packet-object using multiple pipelined processing modules
US20050232277A1 (en) Internet protocol tunnelling using templates
KR20030011837A (ko) 데이터 안전화 통신장치 및 그 방법
JP2005507614A (ja) パケットの順序付けを行う並列パケット変換処理のための方法、システムおよびコンピュータプログラム製品
US20080028210A1 (en) Packet cipher processor and method
US20050198498A1 (en) System and method for performing cryptographic operations on network data
US7644187B2 (en) Internet protocol based encryptor/decryptor two stage bypass device
JP2001203761A (ja) 中継装置、および同装置を備えたネットワークシステム
US7564976B2 (en) System and method for performing security operations on network data
US7680115B2 (en) Internet protocol based encryptor/decryptor bypass device
JP4551112B2 (ja) 暗号化パケット処理装置、方法、プログラム及びプログラム記録媒体
McGregor et al. Performance impact of data compression on virtual private network transactions
JP4933286B2 (ja) 暗号化パケット通信システム
CN117254926A (zh) 一种二层网络包的报文机密性处理方法
KR101584836B1 (ko) 네트워크 보안 방법 및 장치
WO2024198902A1 (zh) 通讯芯片及其运行方法、通信设备以及非暂时性计算机存储介质
JP2004180234A (ja) 暗号パケット処理装置
Pereira et al. RFC2451: The ESP CBC-Mode Cipher Algorithms

Legal Events

Date Code Title Description
A201 Request for 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: 20090827

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee