KR20080047235A - 블록암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법,이를 이용한 패킷 암/복호화 서비스 제공 방법 - Google Patents

블록암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법,이를 이용한 패킷 암/복호화 서비스 제공 방법 Download PDF

Info

Publication number
KR20080047235A
KR20080047235A KR1020070028099A KR20070028099A KR20080047235A KR 20080047235 A KR20080047235 A KR 20080047235A KR 1020070028099 A KR1020070028099 A KR 1020070028099A KR 20070028099 A KR20070028099 A KR 20070028099A KR 20080047235 A KR20080047235 A KR 20080047235A
Authority
KR
South Korea
Prior art keywords
packet
encryption
initial vector
salt
module
Prior art date
Application number
KR1020070028099A
Other languages
English (en)
Other versions
KR100864092B1 (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 한국전자통신연구원
Publication of KR20080047235A publication Critical patent/KR20080047235A/ko
Application granted granted Critical
Publication of KR100864092B1 publication Critical patent/KR100864092B1/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/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]
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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

Landscapes

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

Abstract

본 발명은 비연결형 패킷 통신망에서 별도의 암호모듈을 이용하여 블록 암호의 블록 체이닝(Block Chaining) 모드를 사용시 암/복호화 서비스를 제공하는 방법에 관한 것으로, 본 발명은 송신측에서 공유한 초기벡터(Initial Vector)와 별도의 암호모듈 내부에서 생성한 솔트를 XOR연산하여 패킷마다 새로운 패킷용 초기벡터를 생성하고, 생성한 패킷용 초기벡터와 공유한 키를 사용하여 분할한 패킷을 암호화하여 전송함으로써 수신측에서 수신되는 암호화된 패킷을 암호화된 블록 순서에 관계없이 복호화할 수 있어 암호통신 성능의 효율성을 제공하고, 또한 초기벡터 노출에 의한 위협으로부터 패킷 암호의 안전성을 제공한다.
블록 체이닝(Block Chaining) 모드, 비연결형 패킷 통신, 초기벡터

Description

블록암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법, 이를 이용한 패킷 암/복호화 서비스 제공 방법{PACKET ENCRYPTION METHOD USING BLOCK CHAINING MODE OF BLOCK CIPHER}
도 1은 종래의 블록 암호(Block Cipher)의 블록 체이닝(Block Chaining) 모드를 사용하여 평문 데이터를 암호화한 후 패킷을 분할하여 전송하는 암호 통신 순서를 나타낸 도,
도 2는 종래의 블록 암호의 블록 체이닝 모드를 사용하여 평문 데이터를 패킷 분할한 후 암호화하여 전송하는 암호 통신 순서를 나타낸 도,
도 3은 본 발명에 따른 비연결형 패킷 통신망에서 별도의 암/복호모듈을 이용하여 블록 암호의 블록 체이닝 모드 사용시 패킷을 암/복호화하는 시스템의 전체 구성을 나타낸 도,
도 4는 본 발명에 따른 비연결형 패킷 통신망에서 별도의 암/복호모듈을 이용하여 블록 암호의 블록 체이닝 모드 사용시 암/복호화 서비스를 제공하는 과정을 나타낸 순서도이다.
<도면의 주요 부호에 대한 설명>
301. 송신측 303. 수신측
302. 암호모듈 304. 복호모듈
본 발명은 비연결형 패킷 통신망에서 별도의 암/복호모듈을 이용한 블록 암호(Block Cipher)의 블록 체이닝(Block Chaining) 모드를 사용하여 패킷 암/복호화 서비스를 제공함으로써 패킷 암호의 안정성 및 암호통신 성능의 효율성을 제공할 수 있는 패킷 암/복호화 서비스 제공 방법에 관한 것이다.
종래에는 일반적으로 블록 암호의 블록 체이닝 모드를 사용한 암호 서비스 제공시 전송하고자 하는 데이터를 암호화한 후 패킷 분할하여 전송하거나, 패킷 분할을 수행한 후 각 패킷별로 암호화하여 전송한다.
즉, 암호화시 세션별 초기벡터를 사용하면 패킷의 도착순서나 패킷 유실로 인한 성능 저하가 발생하게 되고, 또한, 초기벡터를 패킷별로 설정하여 페이로드에 첨부하여 보내면 초기벡터 노출에 따른 위협에 노출되게 된다.
또한, 블록 체이닝(Block Chaining) 모드에서는 암호화된 데이터의 정상적인 복호화를 위해서 암호화된 블록의 순서대로 복호화가 이루어져야 하지만, 비연결형 패킷 통신망은 패킷의 순서나 패킷의 전송 자체를 보장하지 않기 때문에 복호화시 암호화 순서를 맞추기 위해 지연이 필연적으로 발생하여 암호 통신의 성능 및 효율성이 저하된다.
구체적으로, 일반적인 비연결형 패킷 통신망에서 블록 암호의 블록 체이닝 모드를 사용한 암호 서비스 제공 방법을 도 1과 도 2를 참조하여 간략히 설명하도록 한다.
도 1은 데이터를 암호화한 후 패킷을 분할하여 전송하는 과정에 대해 도시한 것으로, 먼저 평문 데이터(10)를 암호화(101)하여 암호문(11)을 생성하고, 그런 다음 암호문(11)을 패킷 분할(102)하여 전송한다(103). 하나의 평문 데이터(10)에 하나의 초기벡터를 사용하기 때문에 수신측에서는 복호화시 송신측에서의 전송 순서대로 복호화가 이루어져야 한다.
그러나 비연결형 패킷 통신망은 송신측에서 패킷의 송수신 순서를 보장하지 않은 채 패킷을 전송하므로 패킷 유실이 발생할 수도 있다. 또한, 수신측에서는 송신순서를 확인하여 그 순서대로 복호화하여야 하므로 패킷이 도착한 즉시 복호화할 수 없어, 필연적으로 지연이 발생하여 암호 통신의 성능이 저하된다.
도 2는 평문 데이터를 패킷 분할한 후 암호화하여 전송하는 과정에 대해 도 시한 것으로 먼저 평문 데이터(20)를 패킷 분할(201)할 후, 각 패킷별로 암호화(202)하여 전송한다(203).
도 2에 나타낸 바와 같이 수신측에서는 각 패킷별 초기벡터를 사용함으로써 송신측에서의 패킷 송신 순서와 관계없이 패킷 도착 즉시 복호화할 수 있으나, 각 패킷이 초기벡터 정보를 평문으로 담고 있어야하므로 초기벡터 노출에 의한 위협에 노출되게 된다.
따라서 본 발명은 상기한 종래 기술의 문제점을 해결하기 위해 이루어진 것으로서, 본 발명의 목적은 비연결형 패킷 통신망에서 송신측이 별도의 암호모듈을 이용해 블록 암호의 블록 체이닝 모드를 사용하여 패킷 암호화 서비스를 제공하고, 수신측에서는 별도의 복호모듈을 이용해 수신되는 암호화된 패킷을 도착 즉시 복호화 가능함으로써 암호 통신의 성능 및 효율성 저하를 막고, 초기벡터 노출에 의한 위협으로부터 안전성을 확보할 수 있는 패킷 암호화 방법, 이를 이용한 패킷 암/복호화 서비스 제공 방법을 제공한다.
상기와 같은 목적을 달성하기 위한 본 발명의 블록 암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법은, 비연결형 패킷 통신망에서 암호모듈의 블록 암호의 블록 체이닝(Block Chaining) 모드 사용시 패킷을 암호화하는 방법에 있어서, 송신측으로부터 암호화 요청과 분할된 패킷을 전달받는 단계와, 상기 암호화 요청에 따라 난수 생성 함수를 통해 솔트를 생성하는 단계와, 상기 생성한 솔트와 공유한 초기 벡터를 이용하여 분할된 패킷마다 새로운 패킷용 초기 벡터를 생성하는 단계와, 상기 생성한 패킷용 초기 벡터와 공유한 키를 사용하여 상기 분할된 패킷을 암호화하여 상기 솔트와 암호화된 패킷(암호문)을 상기 송신측에 전달하는 단계를 포함하여 이루어지는 것을 특징으로 한다.
한편, 본 발명의 블록 암호의 블록 체이닝 모드를 사용한 패킷 암호화 서비스 제공 방법은, 비연결형 패킷 통신망에서 송신측이 별도의 암호모듈을 이용하여 블록 암호의 블록 체이닝(Block Chaining) 모드 사용시 패킷 암호화 서비스를 제공하는 방법에 있어서, 전송할 평문 데이터를 패킷 분할하는 단계와, 상기 암호모듈에 상기 분할된 패킷에 대한 암호화를 요청하는 단계와, 상기 암호모듈로부터 솔트와 암호화된 패킷(암호문)을 전달받는 단계와, 상기 전달받은 솔트와 상기 암호화된 패킷(암호문)을 페이로드를 통해 수신측에 전송하는 단계를 포함하여 이루어지는 것을 특징으로 한다.
한편, 본 발명의 비연결형 패킷 통신망에서 수신측이 별도의 복호모듈을 이용하여 블록 암호의 블록 체이닝(Block Chaining) 모드 사용시 패킷 복호화 서비스를 제공하는 방법에 있어서, 수신되는 암호화된 패킷에 대한 복호화를 상기 복호모 듈에 요청하는 단계와, 상기 수신된 암호화된 패킷에 포함된 솔트와 공유한 키를 이용해 복호화된 평문 데이터를 상기 복호모듈로부터 전달받는 단계와, 상기 전달받은 평문 데이터를 제공하는 단계를 포함하는 것을 특징으로 한다.
한편, 본 발명의 비연결형 패킷 통신망에서 송수신측이 각각 별도의 암/복호모듈을 이용하여 블록 암호의 블록 체이닝(Block Chaining) 모드 사용시 패킷 암/복호화 서비스를 제공하는 방법에 있어서, 송수신측이 키 공유를 통해 키와 초기벡터를 공유하고 저장하는 1단계와, 송신측에서 패킷을 분할하고, 상기 분할된 각 패킷에 대해 상기 암호모듈에 암호화를 요청하는 2단계와, 상기 암호모듈이 난수 생성 함수를 이용해 솔트를 내부에서 생성하는 3단계와, 상기 암호모듈 내부에서 생성한 솔트와 상기 공유한 초기벡터를 이용하여 패킷용 초기벡터를 계산하는 4단계와, 상기 패킷용 초기벡터와 상기 공유된 키를 사용하여 상기 분할된 패킷을 암호화하여 상기 솔트와 상기 암호화된 패킷을 전송하는 5단계와, 수신측에서 상기 전송되는 솔트와 암호화된 패킷을 수신하여 상기 공유한 키를 이용해 상기 복호 모듈에서 복호화하는 6단계를 포함하여 구성되는 것을 특징으로 한다.
이하, 본 발명에 따른 비연결형 패킷 통신망에서 별도의 암/복호모듈을 이용하여 블록 암호의 블록 체이닝 모드를 사용시 패킷 암/복호화 서비스를 제공하는 방법 및 시스템을 첨부된 도면에 의거하여 상세하게 설명한다.
도 3은 본 발명에 따른 패킷 암/복호화 시스템의 전체 구성도를 나타낸 것으로, 본 발명의 패킷 암/복호화 시스템은 송수신측(301, 303)과 각각 별도의 암/복호모듈(302, 304)을 포함한다.
송수신측(301, 303)은 키(K)와 초기벡터(IV)를 생성하여 서로 공유한 후, 키 공유 과정을 통해 공유한 키(K)와 초기벡터(IV)를 별도의 암/복호모듈(302, 304)에 각각 저장한다.
그런 다음, 송신측(301)은 전송할 데이터를 패킷 분할하고, 페이로드 전송을 통해 분할한 데이터에 대한 패킷 암호화를 암호모듈(302)에 요청한다.
송신측(302)에서 패킷 암호화를 요청받은 암호모듈(302)은 난수 생성 함수를 통해 난수를 생성한 후, 이 생성된 난수를 솔트로 이용해 패킷용 초기벡터(PacketIV)를 생성한다. 그런 다음, 생성한 패킷용 초기벡터(PacketIV)와 공유한 키를 사용해 패킷 암호를 수행한 후, 솔트와 패킷 암호화된 암호문을 송신측(301)에 전달한다.
즉, 암호모듈(302)은 자신의 내부에서 생성한 난수를 솔트로 이용해, 솔트와 송수신측이 공유한 초기벡터(IV)를 XOR 연상을 하여 패킷별 초기벡터(PacketIV)를 구성하고, 구성한 패킷별 초기벡터(PacketIV)를 사용하여 분할된 데이터를 블록 암 호화한다.
이러한 암호화 과정은 아래 수학식 1과 같이 표현된다.
[수학식 1]
Figure 112007022742402-PAT00001
여기서, 솔트는 이전에 생성한 난수와 겹치지 않는 것을 원칙으로 하나, 난수값에 따라 겹칠 수 있다. 이와 같이 패킷 암호화된 암호문과 솔트를 송신측(301)에 전달한다.
송신측(301)은 암호모듈(302)로부터 전달받은 솔트와 패킷 암호화된 암호문을 수신측(303)에 패킷 전송한다.
수신측(303)은 별도의 복호모듈(304)에 송신측(301)으로부터 전송받은 솔트와 패킷 암호화된 암호문을 전달하여 패킷 복호화를 요청한다.
복호모듈(304)은 전달받은 솔트와 송수신측(301, 303)이 서로 공유한 초기벡터(IV)를 XOR 연산하여 패킷용 초기벡터(PacketIV)를 생성한다. 그런 다음, 전달받 은 암호문을 송수신측(301, 303)이 서로 공유한 키와 생성한 패킷용 초기벡터(PacketIV)를 가지고 패킷 복호화한 후 페이로드 전송을 통해 수신측(303)에 복호화된 평문 데이터를 전달한다.
도 4는 본 발명에 따른 비연결형 패킷 통신망에서 별도의 암/복호모듈을 이용하여 블록 암호의 블록 체이닝 모드 사용시 암/복호 서비스를 제공하는 과정을 나타낸 순서도이다.
우선 송수신측(301, 303)에서는 키 공유 과정을 통하여 키(K)와 초기벡터(IV)를 공유하고, 이를 각각의 암/복호모듈(302, 304)에 저장한다(S401). 그런 다음, 송신측(301)에서는 데이터를 패킷 분할하고, 페이로드를 통해 각 분할한 데이터를 외부의 암호모듈(302)에 전달하여 패킷 암호화를 요청한다(S402).
패킷 암호화 요청을 받은 별도의 암호모듈(302)은 난수 생성 함수를 이용해 난수를 내부에서 생성하고, 이 생성한 난수를 솔트로 이용하여 패킷용 초기벡터(PacketIV)를 생성한다. 그런 다음, 생성한 패킷용 초기벡터(PacketIV)와 공유한 키(K)를 이용하여 패킷을 암호화한 후, 송신측(301)에 솔트와 암호화된 패킷(암호문)을 전달한다(S403).
솔트와 암호화된 패킷(암호문)을 암호모듈(302)로부터 전달받은 송신측(301) 은 암호화된 패킷(암호문)을 수신측(303)에 전송한다(S404).
별도의 암호모듈(302)의 내부에서 생성한 솔트로 이용되는 난수는 초기벡터보다 작은 크기, 즉, 하나의 세션에서 반복될 확률이 거의 없을 정도의 크기를 가진다.
암호모듈(302)의 암호화 과정을 수학식으로 표현하면 아래 수학식 1과 같다.
[수학식 1]
Figure 112007022742402-PAT00002
수학식 1을 참조하면, 암호모듈(302)은 난수 생성 함수(RNG())를 이용해 난수를 생성하고, 생성된 난수를 솔트(salt)로 하여, 초기벡터(IV)와 동일한 크기로 맞추기 위해 난수에 (IV 크기 - 솔트 크기)개수만큼 '0'을 연접(concatenate)하여 확장된 난수를 구하다. 이 확장된 난수와 IV를 XOR 연산하여 패킷용 초기 벡터(PacketIV)를 구한다. 그런 다음, 키 교환시 공유한 키(Ekey)와 패킷용 초기 벡터(PacketIV)를 이용하여 평문(PT; Plain Text)를 암호화하여 암호문(CT; Cipher Text)을 생성한다.
또한, 송신측(301)에서는 수학식 2와 같이 페이로드에 솔트와 암호문을 포함 한 패킷을 생성하여 수신측(303)에 전송한다. 즉, 솔트가 전송되므로 암호화에 사용된 초기벡터는 공격자에 노출되지 않는다.
[수학식 2]
Figure 112007022742402-PAT00003
수신측(303)에서는 암호화된 패킷(암호문)이 수신될 때, 별도의 복호모듈(304)에 패킷 복호화를 요청하고(S405), 복호모듈(304)은 암호화된 패킷에 포함된 솔트와 공유한 키(K)를 사용하여 암호화된 패킷에 대해 복호화를 수행한다.
그런 다음, 복호모듈(304)은 복호화된 평문 데이터를 수신측(303)에 전달한다(S406). 복호모듈(304)로부터 평문 데이터를 전달받은 수신측(303)은 이를 출력한다(S407).
상기 수신측(303)에서의 복호화 과정을 수학식으로 표현하면 아래 수학식 3과 같다.
[수학식 3]
Figure 112007022742402-PAT00004
수학식 3을 참조하면, 수신한 솔트를 초기벡터(IV)와 동일한 크기로 맞추기 위해 난수에 (IV 크기 - 솔트 크기)개수만큼 '0'을 연접(concatenate)하여 확장된 난수를 구하고, 이 확장된 난수와 초기벡터(IV)를 xor 연산하여 패킷용 초기 벡터(PacketIV)를 구한다. 그런 다음, 수신한 암호문(CT)을 키 교환시 공유한 키(Dkey)와 패킷용 초기 벡터를 이용하여 복호화하여 평문(PT)을 생성한다.
이상에서 실시예를 들어 본 발명을 더욱 상세하게 설명하였으나, 본 발명은 반드시 이러한 실시예로 국한되는 것이 아니고, 본 발명의 기술사상을 벗어나지 않는 범위 내에서 다양하게 변형실시될 수 있다.
상술한 바와 같이, 본 발명에 의한 비연결형 패킷 통신망에서 별도의 암호모듈을 이용하여 블록암호(Block Cipher)의 블록 체이닝(Block Chainging) 모드를 사용한 패킷 암/복호화 서비스 제공 방법은 암호화 순서에 관계없는 패킷의 복호화를 지원하고, 초기벡터 노출에 의한 위협으로부터 안전성을 확보하여 암호통신의 성능 및 효율성을 제공하는 효과가 있다.

Claims (11)

  1. 비연결형 패킷 통신망에서 암호모듈의 블록 암호의 블록 체이닝(Block Chaining) 모드 사용시 패킷을 암호화하는 방법에 있어서,
    송신측으로부터 암호화 요청과 분할된 패킷을 전달받는 단계;
    상기 암호화 요청에 따라 난수 생성 함수를 통해 솔트를 생성하는 단계;
    상기 생성한 솔트와 공유한 초기 벡터를 이용하여 분할된 패킷마다 새로운 패킷용 초기 벡터를 생성하는 단계;
    상기 생성한 패킷용 초기 벡터와 공유한 키를 사용하여 상기 분할된 패킷을 암호화하여 상기 솔트와 암호화된 패킷(암호문)을 상기 송신측에 전달하는 단계
    를 포함하여 이루어지는 것을 특징으로 하는 블록 암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법.
  2. 제1항에 있어서,
    상기 솔트는 초기 벡터보다 작은 크기로 생성되는 것을 특징으로 하는 블록 암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법.
  3. 제2항에 있어서,
    상기 솔트는 상기 난수 생성 함수로부터 이전에 생성한 솔트와 겹치지 않는 것을 특징으로 하는 블록 암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법.
  4. 비연결형 패킷 통신망에서 송신측이 별도의 암호모듈을 이용하여 블록 암호의 블록 체이닝(Block Chaining) 모드 사용시 패킷 암호화 서비스를 제공하는 방법에 있어서,
    전송할 평문 데이터를 패킷 분할하는 단계;
    상기 암호모듈에 상기 분할된 패킷에 대한 암호화를 요청하는 단계;
    상기 암호모듈로부터 솔트와 암호화된 패킷(암호문)을 전달받는 단계;
    상기 전달받은 솔트와 상기 암호화된 패킷(암호문)을 페이로드를 통해 수신측에 전송하는 단계
    를 포함하여 이루어지는 것을 특징으로 하는 블록 암호의 블록 체이닝 모드를 사용한 패킷 암호화 서비스 제공 방법.
  5. 제4항에 있어서,
    송신측이 키와 초기 벡터를 수신측과 공유하여 상기 암호모듈에 저장하는 단계를 이전에 포함하는 것을 특징으로 하는 블록 암호의 블록 체이닝 모드를 사용한 패킷 암호화 서비스 제공 방법.
  6. 제4항에 있어서,
    상기 암호모듈에서 아래의 수학식1과 같은 과정으로 패킷을 암호화하는 것을 특징으로 하는 블록 암호의 블록 체이닝 모드를 사용한 패킷 암호화 서비스 제공 방법.
    [수학식 1]
    Figure 112007022742402-PAT00005
    (여기서, RNG()는 솔트(salt)를 생성하기 위한 난수 생성 함수, IV는 초기 벡터, PcaketIV는 패킷용 초기 벡터, CT는 암호문, Ekey는 공유한 키, PT는 평문을 나타낸다.)
  7. 비연결형 패킷 통신망에서 수신측이 별도의 복호모듈을 이용하여 블록 암호의 블록 체이닝(Block Chaining) 모드 사용시 패킷 복호화 서비스를 제공하는 방법에 있어서,
    수신되는 암호화된 패킷에 대한 복호화를 상기 복호모듈에 요청하는 단계;
    상기 수신된 암호화된 패킷에 포함된 솔트와 공유한 키를 이용해 복호화된 평문 데이터를 상기 복호모듈로부터 전달받는 단계; 및
    상기 전달받은 평문 데이터를 제공하는 단계
    를 포함하여 이루어지는 것을 특징으로 하는 블록 암호의 블록 체이닝 모드를 사용한 패킷 복호화 서비스 제공 방법.
  8. 제7항에 있어서,
    상기 수신측이 키와 초기 벡터를 송신측과 공유하여 상기 복호모듈에 저장하는 단계를 이전에 포함하는 것을 특징으로 하는 패킷 복호화 서비스 제공 방법.
  9. 제7항에 있어서,
    상기 복호모듈에서 아래 수학식3을 통해 복호화가 이루어지는 것을 특징으로 하는 블록 암호의 블록 체이닝 모드를 사용한 패킷 복호화 서비스 제공 방법.
    [수학식 3]
    Figure 112007022742402-PAT00006
    (여기서, IV는 초기 벡터, PcaketIV는 패킷용 초기 벡터, CT는 암호문, Dkey는 공유한 키, PT는 평문을 나타낸다.)
  10. 제9항에 있어서,
    상기 복호모듈은 상기 송신측에서 전달되는 암호화된 패킷(암호문)의 암호화 순서와 상관없이 복호화하는 것을 특징으로 하는 블록 암호의 블록 체이닝 모드를 사용한 패킷 복호화 서비스 제공 방법.
  11. 비연결형 패킷 통신망에서 송수신측이 각각 별도의 암/복호모듈을 이용하여 블록 암호의 블록 체이닝(Block Chaining) 모드 사용시 패킷 암/복호화 서비스를 제공하는 방법에 있어서,
    송수신측이 키 공유를 통해 키와 초기벡터를 공유하고 저장하는 1단계;
    송신측에서 패킷을 분할하고, 상기 분할된 각 패킷에 대해 상기 암호모듈에 암호화를 요청하는 2단계;
    상기 암호모듈 내부에서 난수 생성 함수를 이용해 솔트를 생성하는 3단계;
    상기 암호모듈 내부에서 생성한 솔트와 상기 공유한 초기벡터를 이용하여 패킷용 초기벡터를 계산하는 4단계;
    상기 패킷용 초기벡터와 상기 공유된 키를 사용하여 상기 분할된 패킷을 암호화하여 상기 솔트와 상기 암호화된 패킷을 전송하는 5단계;
    수신측에서 상기 전송되는 솔트와 암호화된 패킷을 수신하여 상기 공유한 키를 이용해 상기 복호모듈에서 복호화하는 6단계
    를 포함하여 구성되는 것을 특징으로 하는 블록 암호의 블록 체이닝 모드를 사용한 패킷 암/복호화 서비스 제공 방법.
KR1020070028099A 2006-11-23 2007-03-22 블록암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법,이를 이용한 패킷 암/복호화 서비스 제공 방법 KR100864092B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20060116507 2006-11-23
KR1020060116507 2006-11-23

Publications (2)

Publication Number Publication Date
KR20080047235A true KR20080047235A (ko) 2008-05-28
KR100864092B1 KR100864092B1 (ko) 2008-10-16

Family

ID=39663895

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070028099A KR100864092B1 (ko) 2006-11-23 2007-03-22 블록암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법,이를 이용한 패킷 암/복호화 서비스 제공 방법

Country Status (1)

Country Link
KR (1) KR100864092B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102192394B1 (ko) * 2020-03-13 2021-01-14 유니셈(주) 인증 코드를 이용한 데이터 위변조 여부 판별 시스템

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030083327A (ko) * 2002-04-20 2003-10-30 엘지전자 주식회사 암호화 방법
KR100551992B1 (ko) * 2003-03-25 2006-02-20 소프트포럼 주식회사 어플리케이션 데이터의 암호화 및 복호화 방법
US6996233B2 (en) 2003-06-19 2006-02-07 International Business Machines Corporation System and method for encrypting and verifying messages using three-phase encryption
US8155306B2 (en) * 2004-12-09 2012-04-10 Intel Corporation Method and apparatus for increasing the speed of cryptographic processing

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102192394B1 (ko) * 2020-03-13 2021-01-14 유니셈(주) 인증 코드를 이용한 데이터 위변조 여부 판별 시스템

Also Published As

Publication number Publication date
KR100864092B1 (ko) 2008-10-16

Similar Documents

Publication Publication Date Title
KR100838556B1 (ko) 보안 실시간 프로토콜에서 암호정보의 효율적 전송
EP0998799B1 (en) Security method and system for transmissions in telecommunication networks
US7693278B2 (en) Data distribution apparatus and data communications system
CN111052672B (zh) 无证书或预共享对称密钥的安全密钥传输协议
US6289451B1 (en) System and method for efficiently implementing an authenticated communications channel that facilitates tamper detection
EP3476078B1 (en) Systems and methods for authenticating communications using a single message exchange and symmetric key
EP2979421B1 (en) Key distribution in a satellite system
US20150043730A1 (en) Streaming one time pad cipher using rotating ports for data encryption
JP7353375B2 (ja) エポック鍵交換を用いたエンドツーエンドの二重ラチェット暗号化
CN102131188A (zh) 用户身份信息传输的方法、用户设备、网络侧设备及系统
EP3163835A1 (en) System and method for efficient and semantically secure symmetric encryption over channels with limited bandwidth
US20150229621A1 (en) One-time-pad data encryption in communication channels
CN102469173A (zh) 基于组合公钥算法的IPv6网络层可信传输的方法和系统
CN113726725A (zh) 一种数据加解密方法、装置、电子设备及存储介质
KR20160020866A (ko) 폐쇄형 네트워크에서 암복호화 서비스 제공 시스템 및 방법
KR20200067265A (ko) 실시간 데이터 전송을 위한 블록 암호 장치 및 방법
CN111555879A (zh) 一种卫星通信网管信道报文加解密方法及系统
CN109462480B (zh) 基于rsa与aes的卫星通信系统加密方法
CN108111515B (zh) 一种适用于卫星通信的端到端安全通信加密方法
KR100864092B1 (ko) 블록암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법,이를 이용한 패킷 암/복호화 서비스 제공 방법
WO2003049363A1 (en) System and method for symmetrical cryptography
JP2005167635A (ja) 装置、及び、データ送受信方法
CN108737093B (zh) 一种加密的方法、装置及系统
KR20200028782A (ko) 실시간 데이터 전송을 위한 패턴 암호 블록 모드에 기초한 암호화 방법 및 장치
CN114553420B (zh) 基于量子密钥的数字信封封装方法及数据保密通信网络

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: 20120928

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130930

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140916

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20161004

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170918

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20181002

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190925

Year of fee payment: 12