KR20010008103A - 디피-헬만형 키 공유 확인이 가능한 인증된 키 합의프로토콜의 구현 방법 - Google Patents

디피-헬만형 키 공유 확인이 가능한 인증된 키 합의프로토콜의 구현 방법 Download PDF

Info

Publication number
KR20010008103A
KR20010008103A KR1020000066178A KR20000066178A KR20010008103A KR 20010008103 A KR20010008103 A KR 20010008103A KR 1020000066178 A KR1020000066178 A KR 1020000066178A KR 20000066178 A KR20000066178 A KR 20000066178A KR 20010008103 A KR20010008103 A KR 20010008103A
Authority
KR
South Korea
Prior art keywords
key
entity
temporary
public key
shared
Prior art date
Application number
KR1020000066178A
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 KR1020000066178A priority Critical patent/KR20010008103A/ko
Publication of KR20010008103A publication Critical patent/KR20010008103A/ko

Links

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
    • 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/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 공개키 암호 시스템을 기반으로 하는 디피-헬만 형 키 합의 프로토콜에 관한 내용으로 키 합의 프로토콜의 안전성 요구사항인 함축적 키 인증성, 명시적 키 인증성, 알려진 키에 대한 안전성, 전향적 보안성, 키 위장에 대한 안전성, 미지의 키 공유에 대한 안전성을 제공하는 특징을 가진 키 공유 확인이 가능한 인증된 키 합의 프로토콜이다.

Description

디피-헬만형 키 공유 확인이 가능한 인증된 키 합의 프로토콜의 구현 방법{METHOD FOR CONSTRUCTING SECURE DIFFIE-HELLMAN TYPE AUTHENTICATED KEY AGREEMENT PROTOCOL WITH KEY CONFIRMATION}
본 발명은 키 합의 프로토콜에 관한 것으로, 보다 상세하게는 공개키 암호 시스템에서 디피-헬만(Diffie-Hellan) 키 합의 프로토콜의 기법을 이용한 키 공유 확인이 가능한 인증된 키 합의 프로토콜들이다.
불안전한 통신로 상에서 메시지를 안전하게 주고받기 위해서는 암호화하는 기법이 필요하다. 암호 알고리즘에는 내부 동작을 지정하는 키가 필요하고 통신하고자 하는 실체들은 사전에 같은 키를 공유하고 있어야 한다. 이처럼 둘 이상의 실체가 암호 통신을 위해 공개된 통신로를 통하여 키를 공유하는 과정을 키 확립 프로토콜이라고 한다. 키 확립 프로토콜은 한 쪽 실체가 키를 생성하여 다른 실체에게 안전하게 전달하는 키 전송 프로토콜과 양쪽 실체가 상호작용해서 주고받은 정보로 키를 생성하는 키 합의 프로토콜로 크게 나눌 수 있다.
대칭키 암호화 기법은 암호화와 복호화 시 같은 키를 사용하는 방법이고, 공개키 암호화 기법(또는 비대칭키 암호화 기법)은 암호화를 위한 키(공개키)와 복호화를 위한 키(비밀키)를 다르게 사용하는 방법으로 키 확립을 위해 공개키 암호 시스템을 이용하면 대칭키 암호 시스템을 이용하는 것보다 키 관리가 용이한 장점이 있다.
키 합의 프로토콜의 궁극적인 목표는 키로 사용할 비밀 정보를 안전하게 공유하기 위함이며 이상적으로는 직접 만나서 키를 합의한 것과 같은 특성을 가지도록 하는 것이다. 키 합의 프로토콜의 요구사항으로는 안전성 요구사항과 성능 요구사항으로 구분하여 기술할 수 있다. 안전성 요구사항은 키 합의 프로토콜이 반드시 제공해야 하는 기본적 안전성 요구사항과 응용분야에 따라서 추가적으로 요구되는 추가적 안전성 요구사항으로 나누어 생각할 수 있다.
A와 B를 프로토콜을 바르게 수행하는 합법적인 두 실체라고 할 때, 기본적 안전성 요구사항에는 함축적 키 인증성(Implicit Key Authentication, 이하 IKA로 표시)과 명시적 키 인증성(Explicit Key Authentication, 이하 EKA로 표시)이 있다. 실체 A가 실체 B 이외에는 어느 누구도 공유키를 생성할 수 없다는 확신을 가질 수 있을 경우에 키 합의 프로토콜은 A에게 B에 대한 IKA을 제공한다고 말한다. 실체 B가 실제로 공유키를 계산해서 소유하는 것을 실체 A가 확신할 수 있을 경우 키 합의 프로토콜은 A에게 B에 대한 EKA를 제공한다고 말한다. EKA는 IKA에 다른 실체가 키를 가지고 있음을 확신하는 키 확인(Key Confirmation) 기능을 더한 것이다.
A에게 B에 대한 IKA를 제공하고 B에게 A에 대한 IKA를 제공하는 키 합의 프로토콜을 AK(Authenticated Key agreement) 프로토콜이라고 하고, A에게 B에 대한 EKA를 제공하고 B에게 A에 대한 EKA를 제공하는 키 합의 프로토콜을 AKC(Authenticated Key agreement with key Confirmation) 프로토콜이라고 한다.
추가적 안전성 요구사항에는 이전의 다른 세션키(실체 A와 B 사이의 키 합의 프로토콜의 각 세션(session)에서 생성하는 유일한 비밀키)들이 공격자에게 노출되었을 경우에도 프로토콜의 안전성이 보장되는 것을 말하는 알려진 키에 대한 안전성(K-KS, Known-Key security), 하나 또는 둘 이상의 실체들의 장기적인 개인키(long-term private key)가 노출되었을 경우에도 이전에 합의한 세션키들에 대해 안전성을 보장한 전향적 보안성(Forward Secrecy, 이하 FS라 약칭함), 실체 A의 장기적인 개인키가 공격자에게 노출되었을 경우 공격자가 A에게 다른 실체 B인 것처럼 위장할 수 없는 안전성인 키 위장(Key-Compromise Impersonation, 이하 K-CI라 약칭함)에 대한 안전성, 실체 A는 실체 B와 키를 공유하고 있다고 믿고 있지만, B는 공격자 E와 동일한 키를 공유하고 있다고 믿게 하는 공격에 대해 안전한 미지의 키 공유(Unknown Key-Share, 이하 UK-S라 약칭함)에 대한 안전성 등이 있다.
성능 요구사항으로는 메시지 교환 횟수를 줄이고, 전송되는 비트 수를 작게 하고, 산술적 계산량을 줄이고, 온라인 계산량이 감소하도록 사전계산을 가능하게 하는 것 등을 포함한다.
AKC 프로토콜은 메시지인증부호(Message Authentication Code, 이하 MAC으로 약칭함)를 AK 프로토콜에 부가함으로 생성할 수 있다. MAC을 통해 상대방 실체가 세션키를 실제로 계산하였다는 것을 검증할 수 있게 된다.
최근 표준안에 제안된 키 합의 프로토콜은 공개키 암호 시스템을 이용하는 두 실체로 구성된 프로토콜로서, 안전성은 디피-헬만 문제의 어려움에 기반을 두고 있다. 디피-헬만 문제는 소수을 위수로 하는 순환군 G에서 생성원에 대하여 G의 원소가 주어졌을 때를 발견하는 문제이다. 이 문제는 널리 연구된 이산 대수 문제와 거의 동일한 문제로 알려져 있다. 이산 대수 문제는 소수을 위수로 하는 순환군 G에서 생성원 g에 대하여가 주어졌을 때를 발견하는 문제로 계산적으로 다루기 어려운 문제이다.
공개키 기반의 키 합의 프로토콜은 디피(Diffie)와 헬만(Hellman)에 의해 1976년에 처음으로 제안되었다. 그 이후, 디피-헬만 키 합의 프로토콜 기법을 이용하고 ANSI, IEEE, ISO/IEC, NIST에 의해 현재 표준화되었거나 표준화되는 과정 중에 있는 키 합의 프로토콜로서 KEA, Unified Model, MQV가 있다.
KEA(Key Exchange Algorithm)는 NSA에서 설계했고 1998년 5월에 기밀 분류에서 해제됐다. KEA AK 프로토콜은 공격자가 두 실체 A와 B의 장기 개인키를 안다면 이전의 모든 세션키들을 계산할 수 있는 약점을 가지고 있다. 즉, FS를 제공하지 않는다. MAC을 부가하여 AKC 프로토콜로 확장하여도 여전히 FS를 만족하지 못한다.
Unified Model은 앵크니(Ankney), 존슨(Johnson), 마뜨야스(Matyas)가 제안했다. Unified Model AK 프로토콜은 공격자 E가 A의 장기 비밀키를 알게 되면 B의 장기 비밀키를 알지 않고도 B인 것처럼 위장할 수 있으므로 K-CI 안전성을 제공하지 않는다. 이를 AKC 프로토콜로 확장하여도 여전히 K-CI 안전성을 만족하지 못한다.
MQV 프로토콜은 1998년 메네즈(Menezes), 큐(Qu), 반스톤(Vanstone) 등에 의해 제안되었으며 이 AK 프로토콜은 UK-S 공격이 가능함을 Kaliski가 발견했다. 이 프로토콜은 AKC 프로토콜로 확장하면 UK-S 안전성을 제공하게 된다.
본 발명은 전술한 키 합의 프로토콜의 안전성 요구사항을 모두 수용할 수 있는 키 합의(AKC) 프로토콜을 구현하는 것을 그 목적으로 한다.
상술한 목적을 달성하기 위한 본 발명에 따라서 디피-헬만 문제의 안전성을 기반으로 하는 키 공유 확인이 가능한 키 합의 프로토콜의 구현방법에 있어서,
상기 프로토콜을 개시하는 실체(A)와 이에 응하는 실체(B)는 공개키 파라미터()(: 충분히 큰 소수,:을 나누는 충분히 큰 소수, g : 곱셈군에서 위수가인 생성원)를 공통적으로 알고 있으며,
상기 실체(A)가 1과사이에서 임시 비밀키()를 선택하고, 임시 공개키를 계산하여, 상기 임시 비밀키()와 상기 임시 공개키()로 구성된 임시키 쌍을 생성하는 단계; 상기 실체(A)가 공개키 증명서()와 함께 상기 임시 공개키()를 상기 실체(B)에게 전송하는 단계; 상기 실체(B)가 상기 실체(A)에게 받은 상기 임시 공개키()의 타당성을 확인하기 위해이고인지를 검증하는 단계; 상기 실체(B)가 1과사이에서 임시 비밀키()를 선택하고, 임시 공개키를 계산하여 상기 임시 비밀키()와 상기 임시 공개키()로 구성된 임시키 쌍을 생성하는 단계; 상기 실체(B)가 공유키()와 세션키()를 생성하는 단계; 상기 실체(B)가 상기 공유키()을 이용하여를 계산하는 단계; 상기 실체(B)가 임시 공개키(), 공개키 증명서(),를 상기 실체(A)에게 전송하는 단계; 상기 실체(A)가 상기 실체(B)에게 받은 임시 공개키()의 타당성을 확인하기 위해이고인지를 검증하는 단계; 상기 실체(A)가 공유키()을 생성하는 단계; 상기 실체(A)가를 계산해서 상기 실체(B)가 보낸와 같은지 확인하는 단계; 상기 실체(A)가와 세션키()를 생성하는 단계; 상기 실체(A)가 상기 계산된를 상기 실체(B)에게 전송하는 단계; 상기 실체(B)가를 계산하고 상기 실체(A)가 보낸와 같은지 확인하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따르는 디피-헬만 문제의 안전성을 기반으로 하는 일방향 키 공유 확인이 가능한 키 합의 프로토콜의 구현방법은:
상기 프로토콜을 개시하는 실체(A)와 이에 응하는 실체(B)는 각기 공개키 파라미터 ()(: 충분히 큰 소수,:을 나누는 충분히 큰 소수, g : 곱셈군에서 위수가인 생성원)를 공통적으로 알고 있으며,
상기 실체(A)가 1과사이에서 임시 비밀키()를 선택하고, 임시 공개키을 계산하여, 상기 임시 비밀키()와 상기 임시 공개키()로 구성된 임시키 쌍을 생성하는 단계; 상기 실체(A)가 상기 임시 공개키()에 대한 서명값()를 계산하는 단계; 상기 실체(A)가 임시 공개키(), 공개키 증명서(), 서명값()을 상기 실체(B)에게 전송하는 단계; 상기 실체(B)가 상기 실체(A)에게 받은 임시 공개키()의 타당성을 확인하기 위해이고인지를 검증하는 단계; 상기 실체(B)가 상기 실체(A)에게 받은 서명값()을 검증하는 단계; 상기 실체(B)가 1과사이에서 임시 비밀키()를 선택하고, 임시 공개키를 계산하여, 상기 임시 비밀키()와 상기 임시 공개키()로 구성된 임시키 쌍을 생성하는 단계; 상기 실체(B)가 공유키()과 세션키()를 생성하는 단계; 상기 실체(B)가 공유키()을 이용하여를 계산하는 단계; 상기 실체(B)가 임시 공유키(), 공개키 증명서(),를 상기 실체(A)에게 전송하는 단계; 상기 실체(A)가 상기 실체(B)에게 받은 임시 공유키()의 타당성을 확인하기 위해이고인지를 검증하는 단계; 상기 실체(A)가 공유키()을 생성하는 단계; 상기 실체(A)가를 계산하고 상기 실체(B)가 보낸와 같은지를 확인하는 단계; 상기 실체(A)가 세션키()를 생성하는 단계를 포함하는 것을 특징으로 한다.
도 1은 본 발명의 디피-헬만형 키 합의 프로토콜을 이용하는 키 합의 프로토콜의 구성을 도시하는 블록 구성도,
도 2는 본 발명에 따른 키 공유 확인이 가능한 인증된 키 합의 프로토콜의 순서도,
도 3은 본 발명에 따른 일방향 키 공유 확인이 가능한 인증된 키 합의 프로토콜의 순서도,
도 4a 및 도 4b는 도 2 및 3의 키 합의 프로토콜에서 각기 실체 A 및 실체 B 가 공유키와 세션키를 생성하는 과정을 설명하는 순서도,
도 5a 및 도 5b는 도 2 및 3의 키 합의 프로토콜에서 각기 실체 A 및 실체 B 가 공유키와 세션키를 생성하는 과정을 설명하는 순서도,
도 6a 및 도 6b는 도 2 및 3의 키 합의 프로토콜에서 각기 실체 A 및 실체 B 가 공유키와 세션키를 생성하는 과정을 설명하는 순서도,
도 7a 및 도 7b는 도 2 및 3의 키 합의 프로토콜에서 각기 실체 A 및 실체 B 가 공유키와 세션키를 생성하는 과정을 설명하는 순서도.
이하 본 발명은 첨부된 도면을 참조하여 다음과 같이 상세히 설명될 것이다.
도 1은 본 발명에 따라 디피-헬만 키 합의 프로토콜 기법을 기반으로 하는 AKC 프로토콜을 구현하는 데 적합한 두 실체로 이루어진 프로토콜의 블록 구성도이다.
디피-헬만 키 합의 프로토콜은 프로토콜을 개시하는 송신 측의 장치와 이에 응하는 수신 측의 장치가 안전하지 않은 매체 상에서 공개키 암호 알고리즘에 의해 생성된 공개키를 서로 교환하고 이를 이용하여 키를 생성하는 것이다. 이를 위하여, 실체(A)와 실체(B)는 랜덤한 비밀키를 생성하고, 공개키 파라미터와 이들 비밀키를 이용하여 각각의 공개키를 생성하고 나서, 서로의 공개키를 교환한다. 이후, 실체(A, B)는 자신들의 비밀키를 이용하여 공통의 비밀정보를 공유하고 있게된다.
하기 설명되는 본 발명의 AKC 프로토콜의 구현방법은 다음과 같은 가정 하에 이루어진다.
1) 충분히 큰 소수,을 나누는 충분히 큰 소수와 곱셈군의 생성원(의 서로 다른 모든 원소가 되게 하는상의 원소)가 공개키 파라미터()로서 모든 실체들(A, B)에게 공통적으로 알려져 있다.
2) 각 실체 I(=A, B)는 장기 비밀키와 장기 공개키로 구성된 장기 키 쌍을 소유하고 있으며, 이후 프로토콜에서 장기 공개키는 공개키 증명서()에 의해 교환한다고 가정한다.
3)는 실체(A)임을 증명하는 ID정보, 실체(A)의 장기 공개키()와 이 정보에 대해 신뢰할 만한 서명기관(CA)의 서명값으로 구성된 공개키 증명서이다. 서명기관(CA)은 실체(A)가 장기 공개키()에 대응하는 비밀키()를 가지고 있음을 검증할 수 있다고 가정한다. 이것은 공격자(E)가 실체(A)의 장기 공개키()를 자신의 것으로 등록하고 실체(A)의 메시지를 공격자(E)가 전송한 것이라고 실체(B)를 속이는 UK-S 공격을 막기 위함이다.
4) 또한 CA가 실체(A)의 장기 공개키의 타당성을 검증했다고 가정한다. 이는이고인지를 확인함으로 가능하고 이를 공개키 확인(public key validation) 과정이라 부른다.
도 2는 본 발명의 바람직한 제 1 실시예에 따라서 도 1에 예시된 공개키 암호 시스템에서 디피-헬만 문제의 어려움에 기반한 키 공유확인 가능한 인증된 키 합의(AKC) 프로토콜의 구현 방법을 설명하는 순서도를 도시한다. 본 발명의 제 1 실시예에 따른 AKC 프로토콜은 실체(B)에게 실체(A)에 대한 명시적 키 인증서(EKA)를 제공하고, 반대로 실체(A)에게 실체(B)에 대한 명시적 키 인증서(EKA)를 제공하는 양방향 AKC 프로토콜로서, 다음과 같이 설명된다.
먼저, 단계(210)에서, 송신 실체(A)는 임시 비밀키()를 1과사이에서 랜덤하게 생성하고, 이 값을 생성원()에 멱승하여 임시 공개키()를 하기 수학식 1과 같이 생성함으로써, 임시 비밀키()와 임시 공개키()로 구성된 임시키 쌍()을 생성한다.
이후, 송신 실체(A)는 임시 공개키()를 공개키 인증서()와 함께 수신 실체(B)에게 전송하고 임시 비밀키()는 안전한 곳에 보관한다(단계 212).
그 다음, 실체(B)는 실체(A)가 보낸 임시 공개키()를 하기 수학식 2로 표현되는 공개키 확인 과정을 통해 검증한다(단계 214).
이때, 검증 결과가 타당하지 않으면, 실체(B)는 상대측인 실체(A)로부터 받은 임시 공개키가 타당하지 않은 것으로 판단하고 본 프로토콜을 종료 또는 거절하거나 실체(A)에게 재전송을 요구한다(단계 242).
그러나, 단계(214)의 검증 결과가 타당하면, 실체(B)는 임시 비밀키()를 1과사이에서 랜덤하게 생성하고, 하기 수학식 3에서와 같이 임시 비밀키 값()을 생성원(g)에 멱승하여 임시 공개키()를 생성함으로써, 임시 비밀키(y)와 임시 공개키()로 구성된 임시키 쌍()을 생성한다(단계 216).
그 다음, 실체(B)는 제 1 해쉬함수()을 사용하여 하기 수학식 4와 같이 공유키()을 생성하고 제 2 해시함수()를 사용하여 하기 수학식 5와 같이 세션키()를 생성한다(단계 218).
이후, 실체(B)는 메시지 번호 2, 실체(B)의 ID, 실체(A)의 ID, 실체(B)의 임시 공개키(), 실체(A)의 임시 공개키를 포함하는를 공유키()를 이용하여 하기 수학식 6과 같이 계산하고(단계 220), 계산된를 임시 공개키(), 공개키 인증서()와 함께 실체(A)에게 전송한다(단계 222). 여기서, 메시지 번호 2라는 것은 AKC 프로토콜에서 실체(A)와 실체(B)가 서로 주고 받은 3번의 메시지 중의 두 번째 메시지를 의미한다.
상기 수학식 6에서, 2는 상술한 두 번째 메시지를 의미하고, A, B는 실체(A)와 B의 ID를 나타낸다.
그 다음 단계(224)에서, 실체(A)는 실체(B)가 보낸 임시 공개키()를 하기 수학식 7에서와 같은 공개키 확인 과정을 통해 검증한다.
이때 검증 결과가 타당하지 않으면, 단계(242)로 진행하여 실체(A)는 상대측인 실체(B)로부터 받은 임시 공개키가 타당하지 않은 것으로 판단하고 본 프로토콜을 종료하거나 실체(B)에게 재전송을 요구한다.
그러나, 단계(224)에서의 검증 결과가 타당하면 실체(A)는 제 1 해쉬함수()을 사용하여 공유키()(수학식 4 참조)를 생성한다(단계 226).
그 다음, 실체(A)는 상술한 공유키()를 사용해서 하기 수학식 8과 같이을 계산한다(단계 228).
이후, 실체(A)는 수학식 8에서 계산된()와 실체(B)로부터 받은 ()를 비교하여(단계 230), 이들이 서로 다른 값이면 단계(242)로 진행하여 프로토콜을 종료한다.
그러나, ()와 ()가 동일하면, 실체(A)는 메시지 번호 3, 실체(A)의 ID, 실체(B)의 ID, 실체(A)의 임시 공개키, 실체(B)의 임시 공개키를 포함하는를 수학식 9와 같이 계산하고(단계 232), 제 2 해쉬함수()를 사용하여 세션키()(수학식 5)를 생성한다(단계 234). 여기서, 메시지 번호 3이라는 것은 AKC 프로토콜에서 실체(A)와 실체(B)가 서로 주고받은 3번의 메시지 중의 세 번째 메시지를 의미한다.
그리고 실체(A)는 수학식 9에 의해 계산된를 실체(B)에게 전송한다(단계 236).
그 다음, 실체(B)는 하기 수학식 10을 이용하여 ()를 계산하고(단계 238), 이를 실체(A)가 보낸의 값과 같은지를 검증한다(단계 240).
단계(240)에서의 검증 결과, 두이 동일하지 않으면, 단계(242)에서와 같이 수신 거절 또는 재전송을 요구한다. 그러나, 두 MAC이 동일하면, 실체(A)와 실체(B)가 두 번의 메시지 교환으로 세션키를 공유하게 되는 키 합의 프로토콜이 이루어진다.
이제, 도 3을 참조하면, 본 발명의 제 2 실시예에 따른 일방향 AKC 프로토콜의 순서도가 도시된다. 여기서, 일방향이라는 것은 도 2의 실시예와 달리 명시적 키 인증성(EKA)가 상호 제공되는 것이 아니라 한 쪽 방향으로만, 즉, 실체(A)에게 실체(B)의 EKA만을 제공하는 것을 의미한다.
먼저, 단계(310)에서, 송신 실체(A)는 임시 비밀키()를 1과사이에서 랜덤하게 생성하고, 이 값을 생성원(g)에 멱승하여 임시 공개키()(수학식 1 참조)를 생성함으로써, 임시키 쌍()을 생성한다.
또한, 실체(A)는 임시 공개키()와 실체(A)의 ID를 포함하는 서명값()을 구하고(단계 312), 이를 임시 공개키(), 공개키 인증서()와 함께 수신 실체(B)에게 전송한다(단계 314).
그 다음, 실체(B)는 실체(A)가 보낸 임시 공개키()를 공개키 확인 과정(수학식 2 참조)으로 검증하고(단계 316), 뒤이어 실체(A)의 서명값()을 검증한다(단계 318).
상술한 공개키 검증과 서명값 검증이 타당하면, 단계(320)로 진행하여, 실체(B)는 임시 비밀키()를 1과사이에서 랜덤하게 생성하여 임시 공개키()(수학식 3 참조)를 생성함으로써, 임시키 쌍()을 생성한다.
그 다음, 실체(B)는 제 1 해쉬함수()를 사용하여 공유키()(수학식 4 참조)를 생성하고 제 2 해쉬함수()를 사용하여 세션키()(수학식 5 참조)를 생성한다(단계 322).
후속하여, 실체(B)는 자신의 ID, 실체(A)의 ID, 실체(B)의 임시 공개키(), 실체(A)의 임시 공개키()를 포함하는(수학식 6 참조)를 공유키()를 이용하여 계산하고(단계 324), 이를 임시 공개키(), 공개키 인증서()와 함께 실체(A)에게 전송한다(단계 326).
그 다음, 실체(A)는 실체(B)가 보낸 임시 공개키()를 상술한 수학식 9를 이용하여 검증한다(단계 328).
검증 결과가 타당하면, 실체(A)는 제 1 해쉬함수()를 사용하여 공유키()를 생성한다(단계 330).
또한, 실체(A)는 공유키()을 이용하여 ()(수학식 8 참조)를 계산하고(단계 332), 실체(B)로부터 받은 ()와 같은 값인지 검증한다(단계 334).
이후, 단계(334)에서의 검증결과가 타당하면, 실체(A)는 제 2 해쉬함수()를 사용하여 세션키()를 생성한다(단계 336).
상술한 과정을 통하여, 메시지 교환을 한 번 줄인 상태에서 실체(A)와 실체(B)가 세션키()를 공유하며, 실체(A)에게 실체(B)에 대한 명시적 키 인증성을 일방향으로 제공하는 키 합의 프로토콜이 이루어진다.
도 4, 도 5, 도 6 및 도 7은 도 2 및 3에서 실체(A) 및 실체(B)에 의해 공유키()와 세션키()를 생성하는 과정을 보다 상세히 설명하는 각기 다른 변형 실시예의 순서도로서, 도 4a, 도 5a, 도 6a 및 도 7a는 각기 실체(A)가 공유키와 세션키를 생성하는 과정을 설명하는 흐름도이고, 도 4b, 도 5b, 도 6b 및 도 7b는 각기 실체(B)가 공유키와 세션키를 생성하는 과정을 설명하는 흐름도이다.
먼저, 도 4a에서, 실체(A)는 실체(B)가 보낸 공개키 증명서()로부터 하기 수학식 11로 표현되는 실체(B)의 장기 공개키()를 추출한다(단계 410).
그 다음, 실체(A)는 수학식 11과 같은 추출된 실체(B)의 장기 공개키()에 실체(A)의 임시 비밀키()를 지수승하여를 계산(단계 412)하고, 실체(A)의 장기 비밀키()와 임시 비밀키()를 더해서 실체(B)의 임시 공개키()에 지수승하여를 계산한다(단계 414).
이후, 실체(A)는 상술한 바와 같이 계산된를 곱해서 하기 수학식 12와 같은 공유 비밀정보(K)를 계산한다(단계 416).
그 다음 단계(418)에서, 실체(A)는 서로 독립적인 해쉬함수()과 ()를 이용하여 공유키와 세션키를 상술한 수학식 4 및 수학식 5을 이용하여 각기 생성한다.
이 때 실체(A)가 생성한 세션키는이다.
도 4b를 참조하면, 실체(B)가 공유키()와 세션키()를 생성하는 과정이 예시된다.
먼저, 실체(B)는 실체(A)가 보낸 공개키 증명서()로부터 하기 수학식 13으로 표현되는 실체(A)의 장기 공개키()를 추출한다(단계 420).
그 다음, 실체(B)는 수학식 13과 같은 추출된 실체(A)의 장기 공개키()에 실체(B)의 임시 비밀키()를 지수승하여를 계산하고(단계 422), 실체(B)의 장기 비밀키()와 임시 비밀키()를 더하고 실체(A)의 임시 공개키()에 지수승하여를 계산한다(단계 424).
이후, 실체(B)는 상술한 바와 같이 계산된를 곱해서 하기 수학식 14와 같은 공유 비밀정보(K)를 계산한다(단계 426).
그 다음 단계(428)에서, 실체(B)는 서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 각기 공유키()와 세션키()를 생성한다.
이 때 실체(B)가 생성한 세션키는이다.
도 5a는 실체(A)가 공유키()와 세션키()를 생성하는 제 2의 변형 실시예의 과정을 설명하는 흐름도이다.
먼저, 실체(A)는 실체(B)가 보낸 공개키 증명서()로부터 실체(B)의 장기 공개키()(수학식 11 참조)를 추출한다(단계 510).
그 다음, 실체(A)는 실체(B)의 장기 공개키()에 실체(A)의 임시 비밀키()를 지수승하여를 계산하고(단계 512), 실체(B)의 임시 공개키()에 실체(A)의 장기 비밀키()와 임시 비밀키()를 각각 지수승하여을 각기 계산한다(단계 514).
이후, 실체(A)는 상술한 바와 같이 계산된는 더하고는 연접해서 공유 비밀정보(K)를 하기 수학식 15와 같이 계산한다(단계 516).
마지막으로, 실체(A)는 서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 공유키()와 세션키()를 생성한다(단계 518).
이 때 실체(A)가 생성한 세션키는이다.
도 5b는 실체(B)가 공유키()와 세션키()를 생성하는 과정을 설명하는 흐름도이다.
먼저, 실체(B)는 실체(A)가 보낸 공개키 증명서()로부터 실체(A)의 장기 공개키()(수학식 13 참조)를 추출한다(단계 520).
그 다음, 실체(B)는 실체(A)의 장기 공개키()에 실체(B)의 임시 비밀키()를 지수승하여를 계산하고(단계 522), 실체(A)의 임시 공개키()에 실체(B)의 장기 비밀키()와 임시 비밀키()를 각각 지수승하여을 계산한다(단계 524).
이후, 실체(B)는 상술한 바와 같이 계산된는 더하고는 연접해서 공유 비밀정보(K)를 하기 수학식 16과 같이 계산한다(단계 526).
마지막으로, 실체(B)는 서로 독립적인 해쉬함수()를 이용하여 공유키()와 세션키()를 생성한다(단계 528).
이 때 실체(A)와 실체(B)가 생성한 세션키는이다.
도 6a는 실체(A)가 공유키()와 세션키()를 생성하는 과정을 설명하는 제 3의 변형 실시예의 흐름도이다.
먼저, 실체(A)는 실체(B)가 보낸 공개키 증명서()로부터 실체(B)의 장기 공개키()(수학식 11 참조)를 추출하고(단계 610), 실체(B)의 장기 공개키()에 실체(A)의 임시 비밀키(x)를 지수승하여를 계산한다(단계 612).
그 다음, 실체(A)는 실체(B)의 임시 공개키()에 실체(A)의 장기 비밀키()와 임시 비밀키()를 각각 지수승하여을 계산한다(단계 614).
이후, 실체(A)는 상술한 바와 같이 계산된는 곱하고는 연접해서 공유 비밀정보(K)를 계산한다(단계 616).
마지막으로, 실체(A)는 서로 독립적인 해쉬함수()를 이용하여 공유키()와 세션키()를 생성한다(단계 618).
이 때 실체(A)가 생성한 세션키는이다.
도 6b는 실체(B)가 공유키()와 세션키()를 생성하는 과정을 설명하는 제 3의 변형 실시예의 흐름도이다.
실체(B)는 실체(A)가 보낸 공개키 증명서()로부터 실체(A)의 장기 공개키()(수학식 13 참조)를 추출하고(단계 620), 실체(A)의 장기 공개키()에 실체(B)의 임시 비밀키(y)를 지수승하여를 계산한다(단계 622).
그 다음, 실체(B)는 실체(A)의 임시 공개키()에 실체(B)의 장기 비밀키()와 임시 비밀키()를 각각 지수승하여을 계산한다(단계 624).
이후, 실체(B)는 상술한 바와 같이 계산된는 곱하고는 연접해서 공유 비밀정보(K)를 계산한다(단계 626).
마지막 단계(628)에서, 실체(B)는 서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 공유키()와 세션키()를 생성한다.
이 때 실체(B)가 생성한 세션키는 도 6a에서 실체(A)가 생성된 것과 동일한이다.
도 7a는 실체(A)가 공유키()와 세션키()를 생성하는 과정을 설명하는 제 3의 변형 실시예의 흐름도이다.
먼저, 실체(A)는 실체(B)가 보낸 공개키 증명서()로부터 실체(B)의 장기 공개키()(수학식 11 참조)를 추출하고(단계 710), 실체(B)의 장기 공개키()에 실체(A)의 임시 비밀키()를 지수승하여를 계산한다(단계 712).
그 다음, 실체(A)는 실체(B)의 임시 공개키()에 실체(A)의 장기 비밀키()와 임시 비밀키()를 각각 지수승하여을 계산한다(단계 714).
이후, 실체(A)는 하기 수학식 19와 같이를 연접해서 공유 비밀정보(K)를 계산한다(단계 716).
마지막 단계(718)에서, 실체(A)는 서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 공유키()와 세션키()를 생성한다.
이 때 실체(A)가 생성한 세션키는이다.
도 7b는 실체(B)가 공유키()와 세션키()를 생성하는 과정을 설명하는 제 4의 변형 실시예의 흐름도이다.
먼저, 실체(B)는 실체(A)가 보낸 공개키 증명서()로부터 실체(A)의 장기 공개키()(수학식 11 참조)를 추출하고(단계 720), 실체(A)의 장기 공개키()에 실체(B)의 임시 비밀키()를 지수승하여를 계산한다(단계 722).
그 다음, 실체(B)는 실체(A)의 임시 공개키()에 실체(B)의 장기 비밀키()와 임시 비밀키()를 각각 지수승하여을 계산한다(단계 724).
이후, 실체(B)는 상술한 바와 같이 계산된를 연접해서 하기 수학식 20과 같은 공유 비밀정보(K)를 계산한다(단계 726).
마지막 단계(728)에서, 실체(B)는 서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 공유키()와 세션키()를 생성한다.
이 때 실체(B)가 생성한 세션키는이다.
본 발명은 종래의 디피-헬만 키 합의 프로토콜 기법을 이용한 AKC 프로토콜로서 세션키를 생성할 때 양 실체가 공유하게 되는 비밀정보로 임시 개인키와 장기 개인키의 결합, 임시 개인키끼리의 결합을 사용하여() 앞에서 기술한 안전성 요구사항을 모두 만족하는 특징을 가지게 된다. 즉, 상호 IKA와 EKA, 그리고 K-KS, FS, K-CI, UK-S 안전성을 제공한다. 본 발명의 다른 실시예에 따른 일방향 AKC 프로토콜은 AKC 프로토콜로부터 메시지를 하나 줄이고 서명값을 추가한 프로토콜이다. 성능 면에서는 부하에 가장 영향을 주는 메시지 수를 줄일 수 있다. 서명값을 추가적으로 계산해야 하지만 이는 사전 계산(자신의 장기키 쌍과 임시키 쌍을 포함하는 계산량은 오프 라인에서 계산 가능)이 가능하므로 온라인 상에서는 서명을 검증하는 계산량만 증가한다. 안전성 면에서는 실체(B)에게 실체(A)에 대한 EKA를 제공하지 않지만 서명값을 통해 실체(B)에게 실체(A)에 대한 실체 인증을 제공하고, 또 이후 암호 통신에서 세션키로 암호문을 전송하고 복호하는 과정을 통해 자연스럽게 실체(B)에게 실체(A)에 대한 EKA를 제공하게 되므로 키 합의 프로토콜에서 일방향으로만 EKA를 제공하는 것이 안전성에 큰 손실을 가져오지 않는다. 즉, 본 발명의 다른 실시예인 일방향 AKC 프로토콜은 AKC와 안전성에 있어서는 큰 차이가 없고 보다 효율적인 프로토콜이다.

Claims (6)

  1. 프로토콜을 개시하는 실체(A)와 이에 응하는 실체(B)를 갖는 디피-헬만 문제의 안전성을 기반으로 하는 키 공유 확인이 가능한 인증된 키 합의 프로토콜의 구현방법에 있어서,
    상기 실체(A)와 실체(B)는 공개키 파라미터()(: 충분히 큰 소수,:을 나누는 충분히 큰 소수, g : 곱셈군에서 위수가인 생성원)를 공통적으로 알고 있으며,
    상기 실체(A)가 1과사이에서 임시 비밀키()를 선택하고, 임시 공개키를 계산하여, 상기 임시 비밀키()와 상기 임시 공개키()로 구성된 임시키 쌍()을 생성하는 단계;
    상기 실체(A)가 공개키 증명서()와 함께 상기 임시 공개키()를 상기 실체(B)에게 전송하는 단계;
    상기 실체(B)가 상기 실체(A)에게 받은 상기 임시 공개키()의 타당성을 확인하기 위해 수학식[]을 만족하는지를 검증하는 단계;
    상기 실체(B)가 1과사이에서 임시 비밀키()를 선택하고, 임시 공개키()를 수학식[]과 같이 계산하여 상기 임시 비밀키()와 상기 임시 공개키()로 구성된 임시키 쌍()을 생성하는 단계;
    상기 실체(B)가 공유키()와 세션키()를 생성하는 단계;
    상기 실체(B)가 상기 공유키()을 이용하여를 계산하는 단계;
    상기 실체(B)가 임시 공개키(), 공개키 증명서(),를 상기 실체(A)에게 전송하는 단계;
    상기 실체(A)가 상기 실체(B)에게 받은 임시 공개키()의 타당성을 확인하기 위해 수학식[]을 만족하는 지를 검증하는 단계;
    상기 실체(A)가 공유키()을 생성하는 단계;
    상기 실체(A)가를 계산해서 상기 실체(B)가 보낸와 같은지 확인하는 단계;
    상기 실체(A)가와 세션키()를 생성하는 단계;
    상기 실체(A)가 상기 계산된를 상기 실체(B)에게 전송하는 단계;
    상기 실체(B)가를 계산하고 상기 실체(A)가 보낸같은지 확인하는 단계를 포함하는 것을 특징으로 하는 키 공유 확인이 가능한 인증된 키 합의 프로토콜 구현방법.
  2. 프로토콜을 개시하는 실체(A)와 이에 응하는 실체(B)를 갖는 디피-헬만 문제의 안전성을 기반으로 하는 일방향 키 공유 확인이 가능한 인증된 키 합의 프로토콜의 구현방법에 있어서,
    상기 실체(A)와 실체(B)는 각기 공개키 파라미터 ()(: 충분히 큰 소수,:을 나누는 충분히 큰 소수, g : 곱셈군에서 위수가인 생성원)를 공통적으로 알고 있으며,
    상기 실체(A)가 1과사이에서 임시 비밀키()를 선택하고, 임시 공개키()를 수학식[]과 같이 계산하여, 상기 임시 비밀키()와 상기 임시 공개키()로 구성된 임시키 쌍()을 생성하는 단계;
    상기 실체(A)가 상기 임시 공개키()에 대한 서명값 ()를 계산하는 단계;
    상기 실체(A)가 상기 임시 공개키(), 공개키 증명서(), 서명값()을 상기 실체(B)에게 전송하는 단계;
    상기 실체(B)가 상기 실체(A)에게 받은 임시 공개키()의 타당성을 확인하기 위해 수학식[]을 만족하는 지를 검증하는 단계;
    상기 실체(B)가 상기 실체(A)에게 받은 서명값()을 검증하는 단계;
    상기 실체(B)가 1과사이에서 임시 비밀키()를 선택하고, 임시 공개키()를 수학식[]과 같이 계산하여, 상기 임시 비밀키()와 상기 임시 공개키()로 구성된 임시키 쌍()을 생성하는 단계;
    상기 실체(B)가 공유키()과 세션키()를 생성하는 단계;
    상기 실체(B)가 공유키()을 이용하여를 계산하는 단계;
    상기 실체(B)가 임시 공유키(), 공개키 증명서를 상기 실체(A)에게 전송하는 단계;
    상기 실체(A)가 상기 실체(B)에게 받은 임시 공유키()의 타당성을 확인하기 위해 수학식[]을 만족하는 지를 검증하는 단계;
    상기 실체(A)가 공유키()을 생성하는 단계;
    상기 실체(A)가를 계산하고 상기 실체(B)가 보낸와 같은지 확인하는 단계;
    상기 실체(A)가 세션키()를 생성하는 단계를 포함하는 것을 특징으로 하는 키 공유 확인이 가능한 인증된 키 합의 프로토콜 구현방법.
  3. 제 1 항 또는 2 항에 있어서,
    상기 실체(A)가 공유키()와 세션키()를 생성하는 단계는:
    상기 실체(B)가 보낸 공개키 증명서()로부터 상기 실체(B)의 장기 공개키()인 수학식[]을 추출하는 단계;
    상기 실체(B)의 장기 공개키()에 상기 실체(A)의 임시 비밀키()를 지수승하여를 계산하는 단계;
    상기 실체(A)의 장기 비밀키()와 임시 비밀키()를 더해서 상기 실체(B)의 임시 공개키()에 지수승하여를 계산하는 단계;
    상기 계산된를 곱해서 공유 비밀정보(K)를 수학식[]을 이용하여 계산하는 단계;
    서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 상기 공유키()와 세션키()를 각기 수학식[]와 []을 이용하여 생성하는 단계를 구비하며;
    상기 실체(B)가 상기 공유키()와 세션키()를 생성하는 단계는:
    상기 실체(A)가 보낸 공개키 증명서()로부터 상기 실체(A)의 장기 공개키()인 수학식[]을 추출하는 단계;
    상기 실체(A)의 장기 공개키()에 상기 실체(B)의 임시 비밀키()를 지수승하여를 계산하는 단계;
    상기 실체(B)의 장기 비밀키()와 임시 비밀키()를 더해서 상기 실체(A)의 임시 공개키()에 지수승하여를 계산하는 단계;
    상기 계산된를 곱해서 공유 비밀정보(K)를 수학식[]을 이용하여 계산하는 단계;
    서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 상기 공유키()와 세션키()를 각기 수학식[]와 []을 이용하여 생성하는 단계를 구비하는 것을 특징으로 하는 키 공유 확인이 가능한 인증된 키 합의 프로토콜 구현방법.
  4. 제 1 항 또는 제 2 항에 있어서,
    상기 실체(A)가 상기 공유키()와 세션키()를 생성하는 단계는:
    상기 실체(B)가 보낸 공개키 증명서()로부터 상기 실체(B)의 장기 공개키()인 수학식[]을 추출하는 단계;
    상기 실체(B)의 장기 공개키()에 상기 실체(A)의 임시 비밀키()를 지수승하여를 계산하는 단계;
    상기 실체(B)의 임시 공개키()에 상기 실체(A)의 장기 비밀키()와 임시 비밀키()를 각각 지수승하여을 계산하는 단계;
    상기 계산된는 더하고는 연접해서 공유 비밀정보(K)를 수학식[]을 이용하여 계산하는 단계;
    서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 상기 공유키()와 세션키()를 각기 수학식[]와 []을 이용하여 생성하는 단계를 구비하며;
    상기 실체(B)가 상기 공유키()와 세션키()를 생성하는 단계는:
    상기 실체(A)가 보낸 공개키 증명서()로부터 상기 실체(A)의 장기 공개키인 수학식[]을 추출하는 단계;
    상기 실체(A)의 장기 공개키()에 상기 실체(B)의 임시 비밀키()를 지수승하여를 계산하는 단계;
    상기 실체(A)의 임시 공개키()에 상기 실체(B)의 장기 비밀키()와 임시 비밀키()를 각각 지수승하여을 계산하는 단계;
    상기 계산된는 더하고는 연접해서 공유 비밀정보(K)를 수학식[]을 이용하여 계산하는 단계;
    서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 상기 공유키()와 세션키()를 각기 수학식[]와 []을 이용하여 생성하는 단계를 구비하는 것을 특징으로 하는 키 공유 확인이 가능한 인증된 키 합의 프로토콜 구현방법.
  5. 제 1 항 또는 제 2 항에 있어서,
    상기 실체(A)가 상기 공유키()와 세션키()를 생성하는 단계는:
    상기 실체(B)가 보낸 공개키 증명서()로부터 상기 실체(B)의 장기 공개키()인 수학식[]을 추출하는 단계;
    상기 실체(B)의 장기 공개키()에 상기 실체(A)의 임시 비밀키()를 지수승하여를 계산하는 단계;
    상기 실체(B)의 임시 공개키()에 상기 실체(A)의 장기 비밀키()와 임시 비밀키()를 각각 지수승하여을 계산하는 단계;
    상기 계산된는 곱하고는 연접해서 공유 비밀정보(K)를 수학식[]을 이용하여 계산하는 단계;
    서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 상기 공유키()와 세션키()를 각기 수학식[]와 []을 이용하여 생성하는 단계를 구비하며;
    상기 실체(B)가 상기 공유키()와 세션키()를 생성하는 단계는:
    상기 실체(A)가 보낸 공개키 증명서()로부터 상기 실체(A)의 장기 공개키()인 수학식[]을 추출하는 단계;
    상기 실체(A)의 장기 공개키()에 상기 실체(B)의 임시 비밀키()를 지수승하여를 계산하는 단계;
    상기 실체(A)의 임시 공개키()에 상기 실체(B)의 장기 비밀키()와 임시 비밀키()를 각각 지수승하여을 계산하는 단계;
    상기 계산된는 곱하고는 연접해서 공유 비밀정보(K)를 수학식[]을 이용하여 계산하는 단계;
    서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 상기 공유키()와 세션키()를 각기 수학식[]과 []을 이용하여 생성하는 단계를 구비하는 것을 특징으로 하는 키 공유 확인이 가능한 인증된 키 합의 프로토콜 구현방법.
  6. 제 1 항 또는 제 2 항에 있어서,
    상기 실체(A)가 상기 공유키()와 세션키()를 생성하는 단계는:
    상기 실체(B)가 보낸 공개키 증명서()로부터 상기 실체(B)의 장기 공개키()인 수학식[]을 추출하는 단계;
    상기 실체(B)의 장기 공개키()에 상기 실체(A)의 임시 비밀키()를 지수승하여를 계산하는 단계;
    상기 실체(B)의 임시 공개키()에 상기 실체(A)의 장기 비밀키()와 임시 비밀키()를 각각 지수승하여을 계산하는 단계;
    상기 계산된를 연접해서 공유 비밀정보(K)를 수학식[]을 이용하여 계산하는 단계;
    서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 상기 공유키()와 세션키()를 각기 수학식[]와 []을 이용하여 생성하는 단계를 구비하며;
    상기 실체(B)가 상기 공유키()와 세션키()를 생성하는 단계는:
    상기 실체(A)가 보낸 공개키 증명서()로부터 상기 실체(A)의 장기 공개키()인 수학식[]을 추출하는 단계;
    상기 실체(A)의 장기 공개키()에 상기 실체(B)의 임시 비밀키()를 지수승하여를 계산하는 단계;
    상기 실체(A)의 임시 공개키()에 상기 실체(B)의 장기 비밀키()와 임시 비밀키()를 각각 지수승하여을 계산하는 단계;
    상기 계산된를 연접해서 공유 비밀정보(K)를 수학식[]을 이용하여 계산하는 단계;
    서로 독립적인 제 1 및 제 2 해쉬함수()를 이용하여 상기 공유키()와 세션키()를 각기 수학식[]와 []을 이용하여 생성하는 단계를 구비하는 것을 특징으로 하는 키 공유 확인이 가능한 인증된 키 합의 프로토콜 구현방법.
KR1020000066178A 2000-11-08 2000-11-08 디피-헬만형 키 공유 확인이 가능한 인증된 키 합의프로토콜의 구현 방법 KR20010008103A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000066178A KR20010008103A (ko) 2000-11-08 2000-11-08 디피-헬만형 키 공유 확인이 가능한 인증된 키 합의프로토콜의 구현 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000066178A KR20010008103A (ko) 2000-11-08 2000-11-08 디피-헬만형 키 공유 확인이 가능한 인증된 키 합의프로토콜의 구현 방법

Publications (1)

Publication Number Publication Date
KR20010008103A true KR20010008103A (ko) 2001-02-05

Family

ID=19697898

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000066178A KR20010008103A (ko) 2000-11-08 2000-11-08 디피-헬만형 키 공유 확인이 가능한 인증된 키 합의프로토콜의 구현 방법

Country Status (1)

Country Link
KR (1) KR20010008103A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030079141A (ko) * 2002-04-02 2003-10-10 이창우 키합의 프로토콜 구현방법
KR100456624B1 (ko) * 2002-08-09 2004-11-10 한국전자통신연구원 이동 통신망에서의 인증 및 키 합의 방법
KR20130082331A (ko) * 2012-01-11 2013-07-19 한양대학교 에리카산학협력단 Nfc에서의 정보 보호 방법 및 그 방법을 이용한 nfc 통신 장치
KR20210130840A (ko) * 2016-02-05 2021-11-01 엔사이퍼 시큐리티 리미티드 데이터 전송 방법, 데이터의 사용 제어 방법 및 암호 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4200770A (en) * 1977-09-06 1980-04-29 Stanford University Cryptographic apparatus and method
US5633933A (en) * 1994-06-10 1997-05-27 Sun Microsystems, Inc. Method and apparatus for a key-management scheme for internet protocols
US5907618A (en) * 1997-01-03 1999-05-25 International Business Machines Corporation Method and apparatus for verifiably providing key recovery information in a cryptographic system
JP2000244476A (ja) * 1999-02-19 2000-09-08 Nippon Telegr & Teleph Corp <Ntt> 非寄託型鍵回復方法、その装置及びプログラム記録媒体
KR20010090167A (ko) * 2000-03-23 2001-10-18 윤종용 패스워드를 기반으로 한 상호 인증 및 키 교환방법과 그장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4200770A (en) * 1977-09-06 1980-04-29 Stanford University Cryptographic apparatus and method
US5633933A (en) * 1994-06-10 1997-05-27 Sun Microsystems, Inc. Method and apparatus for a key-management scheme for internet protocols
US5907618A (en) * 1997-01-03 1999-05-25 International Business Machines Corporation Method and apparatus for verifiably providing key recovery information in a cryptographic system
JP2000244476A (ja) * 1999-02-19 2000-09-08 Nippon Telegr & Teleph Corp <Ntt> 非寄託型鍵回復方法、その装置及びプログラム記録媒体
KR20010090167A (ko) * 2000-03-23 2001-10-18 윤종용 패스워드를 기반으로 한 상호 인증 및 키 교환방법과 그장치

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030079141A (ko) * 2002-04-02 2003-10-10 이창우 키합의 프로토콜 구현방법
KR100456624B1 (ko) * 2002-08-09 2004-11-10 한국전자통신연구원 이동 통신망에서의 인증 및 키 합의 방법
KR20130082331A (ko) * 2012-01-11 2013-07-19 한양대학교 에리카산학협력단 Nfc에서의 정보 보호 방법 및 그 방법을 이용한 nfc 통신 장치
KR20210130840A (ko) * 2016-02-05 2021-11-01 엔사이퍼 시큐리티 리미티드 데이터 전송 방법, 데이터의 사용 제어 방법 및 암호 장치
US11849029B2 (en) 2016-02-05 2023-12-19 Ncipher Security Limited Method of data transfer, a method of controlling use of data and cryptographic device

Similar Documents

Publication Publication Date Title
Blake-Wilson et al. Authenticated Diffe-Hellman key agreement protocols
CA2335172C (en) Secure mutual network authentication and key exchange protocol
US7814320B2 (en) Cryptographic authentication, and/or establishment of shared cryptographic keys, using a signing key encrypted with a non-one-time-pad encryption, including (but not limited to) techniques with improved security against malleability attacks
JP4781269B2 (ja) 鍵合意および移送プロトコル
Morrissey et al. A modular security analysis of the TLS handshake protocol
Steiner et al. Secure password-based cipher suite for TLS
Byun et al. EC2C-PAKA: An efficient client-to-client password-authenticated key agreement
Ray et al. Establishment of ECC-based initial secrecy usable for IKE implementation
US20090154711A1 (en) Multi-party key agreement method using bilinear map and system therefor
Brzuska et al. An analysis of the EMV channel establishment protocol
Song et al. Two-pass authenticated key agreement protocol with key confirmation
CA2241705C (en) A method for preventing key-share attacks
Dagdelen et al. A cryptographic analysis of OPACITY
Jager et al. Generic compilers for authenticated key exchange
JP2948294B2 (ja) 認証機能付き鍵配送システムにおける端末
Abi-Char et al. A secure authenticated key agreement protocol based on elliptic curve cryptography
KR20010008103A (ko) 디피-헬만형 키 공유 확인이 가능한 인증된 키 합의프로토콜의 구현 방법
Yi et al. ID-Based group password-authenticated key exchange
KR20010008102A (ko) 안전한 디피-헬만형 키 합의 프로토콜 구현 방법
Fiore et al. Identity-based key exchange protocols without pairings
Kim et al. An efficient key agreement protocol for secure authentication
Chatterjee et al. Reusing static keys in key agreement protocols
Yoon et al. An optimizing authenticated key exchange protocol for self-organizing sensor networks
Wang et al. Provably secure identity-based authenticated key agreement protocols without random oracles
Zhang et al. Security analysis on chinese wireless lan standard and its solution

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application