KR101543571B1 - 비밀 통신 방법 - Google Patents
비밀 통신 방법 Download PDFInfo
- Publication number
- KR101543571B1 KR101543571B1 KR1020080093040A KR20080093040A KR101543571B1 KR 101543571 B1 KR101543571 B1 KR 101543571B1 KR 1020080093040 A KR1020080093040 A KR 1020080093040A KR 20080093040 A KR20080093040 A KR 20080093040A KR 101543571 B1 KR101543571 B1 KR 101543571B1
- Authority
- KR
- South Korea
- Prior art keywords
- receiver
- authentication server
- value
- originator
- transmitter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/321—Cryptographic 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 involving a third party or a trusted authority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
이때, 상기 등록하는 단계는 상기 사업자 인증 서버가 상기 발신기로부터 수신된 발신측 제1 암호화값과 발신측 제2 암호화값을 이용하여 상기 발신기를 등록하고, 상기 수신기로부터 수신된 수신측 제1 암호화값과 수신측 제2 암호화값을 수신하여 상기 수신기를 등록하며, 상기 발신측 제1 암호화값은 상기 발신기 식별자와 발신기측 암호를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며, 상기 발신측 제2 암호화값은 상기 발신측 제1 암호화값과 타원곡선 상의 임의의 한 점을 이용하여 산출된 값을 의미하며, 상기 수신측 제1 암호화값은 상기 수신기 식별자와 수신기측 암호를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며, 상기 수신측 제2 암호화값은 상기 수신측 제1 암호화값과 타원 곡선 상의 임의의 한 점을 이용하여 산출된 값을 의미할 수 있다.
이때, 상기 사업자 인증 서버는 상기 발신기 및 상기 수신기로부터 수신된 정보가 암호화된 경우 자신의 공개키를 이용하여 복호화할 수 있다.
아울러, 상기 사업자 인증 서버는 상기 발신기로부터 발신기측 암호가 수신되면, 상기 발신기로부터 상기 수신기로의 비밀 통신 수행 요청이 발생된 것으로 확인할 수 있다.
이때, 상기 사업자 인증 서버는 상기 수신기로부터 상기 발신기의 비밀 통신 요청에 대한 응답으로 수신기측 암호가 수신되면, 상기 사업자 인증 서버가 상기 수신측 암호화값을 이용하여 상기 수신기를 인증할 수 있다.
또한, 상기 수신기를 인증하는 단계는 상기 발신기로부터 상기 수신기로의 비밀 통신 수행 요청에 따라, 상기 사업자 인증 서버가 상기 발신기로부터 발신측 랜덤 암호화값, 발신기 식별자 및 수신기 식별자를 수신하는 단계; 상기 사업자 인증 서버가 상기 수신측 암호화값을 이용하여 수신기간 인증자를 산출하고, 상기 발신측 암호화값을 이용하여 발신기간 인증자를 산출하는 단계; 상기 사업자 인증 서버가 상기 산출된 수신기간 인증자, 상기 발신기로부터 수신된 상기 발신기 식별자 및 상기 발신측 랜덤 암호화값을 상기 수신기에게 전송하는 단계; 상기 사업자 인증 서버가 상기 수신기로부터 수신측 랜덤 암호화값, 수신기간 해쉬 값, 수신기와 발신기간 해쉬 값을 수신하는 단계; 상기 사업자 인증 서버가 상기 수신기로부터 수신된 상기 수신측 랜덤 암호화값을 이용하여 수신기간 세션 키를 산출하는 단계; 상기 사업자 인증 서버가 상기 수신기로부터 수신된 상기 수신기간 해쉬 값을 이용하여 상기 수신기를 인증하는 단계; 및 상기 수신기 인증에 성공하면, 상기 사업자 인증 서버가 상기 산출된 발신기간 인증자, 상기 수신기로부터 수신된 상기 수신기와 발신기간 해쉬 값 및 수신측 랜덤 암호화값을 상기 발신기로 전송하는 단계;를 포함하여 이뤄질 수 있다.
이때, 상기 발신측 랜덤 암호화값은 상기 발신기에 의해 임의의 발신기 랜덤값 및 상기 타원 곡선 상의 임의의 한 점을 이용하여 산출된 값을 의미하며, 상기 수신측 랜덤 암호화값은 상기 수신기에 의해 임의의 수신기 랜덤값 및 상기 타원 곡선 상의 임의의 한 점을 이용하여 산출된 값을 의미하며, 상기 수신기간 해쉬 값은 상기 수신기에 의해 수신기 식별자, 사업자 인증 서버 식별자, 발신측 랜덤 암호화값, 수신측 랜덤 암호화값, 수신기간 인증자, 수신기간 세션키를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며, 상기 수신기와 발신기간 해쉬 값은 상기 수신기에 의해 수신기 식별자, 발신기 식별자, 발신측 랜덤 암호화값, 수신측 랜덤 암호화값, 발신기와 수신기간 세션키를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며, 상기 발신기와 수신기간 세션키는 상기 임의의 수신기 랜덤값과 상기 발신측 랜덤 암호화값을 이용하여 산출된 값을 의미하며, 상기 수신기간 세션키는 수신측 암호화값, 임의의 수신기 랜덤값 및 상기 수신기간 인증자를 이용하여 산출된 값을 의미할 수 있다.
또한, 상기 발신기를 인증하는 단계는 상기 사업자 인증 서버가 상기 발신기로부터 발신기간 해쉬 값, 발신기와 수신기간 해쉬 값을 수신하는 단계; 상기 사업자 인증 서버가 상기 발신기로부터 수신된 상기 발신기간 해쉬 값을 이용하여 상기 발신기를 인증하는 단계; 상기 발신기 인증에 성공하면, 상기 사업자 인증 서버가 사업자 인증 서버와 발신기간 해쉬 값 및 사업자 인증 서버와 수신기간 해쉬 값을 산출하는 단계; 및 상기 사업자 인증 서버가 상기 발신기로 상기 사업자 인증 서버와 발신기간 해쉬값을 전송하고, 상기 수신기로 상기 사업자 인증 서버와 수신기간 해쉬값 및 상기 발신기와 수신기간 해쉬 값을 전송하는 단계;를 포함하여 이뤄질 수 있다.
이때, 상기 사업자 인증 서버와 발신기간 해쉬 값은 사업자 인증 서버 식별자, 발신기 식별자, 발신측 랜덤 암호화값, 수신측 랜덤 암호화값, 상기 발신기간 인증자 및 발신기간 세션키를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며, 상기 사업자 인증 서버와 수신기간 해쉬 값은 사업자 인증 서버 식별자, 수신기 식별자, 발신측 랜덤 암호화값, 수신측 랜덤 암호화값, 수신기간 인증자, 수신기간 세션키를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며, 상기 발신기간 해쉬 값은 상기 발신기에 의해 발신기 식별자, 사업자 인증 서버 식별자, 발신측 랜덤 암호화값, 수신측 랜덤 암호화값, 발신기간 인증자, 발신기간 세션키를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며, 상기 발신기와 수신기간 해쉬 값은 상기 발신기에 의해 발신기 식별자, 수신기 식별자, 발신측 랜덤 암호화값, 수신측 랜덤 암호화값, 발신기와 수신기간 세션키를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며, 상기 발신기와 수신기간 세션키는 상기 임의의 발신기 랜덤값와 상기 수신측 랜덤 암호화값을 이용하여 산출된 값을 의미하며, 상기 발신기간 세션키는 발신측 암호화값, 임의의 발신기 랜덤값 및 상기 발신기간 인증자를 이용하여 산출된 값을 의미할 수 있다.
아울러, 상기 수신기 또는 발신기를 인증하는 단계 이후에, 상기 수신기 또는 발신기 인증에 실패하면, 상기 사업자 인증 서버가 상기 발신기 또는 수신기로 상기 비밀 통신을 중단하기 위한 중단 메시지를 전송하는 단계;를 더 포함하여 이뤄질 수 있다.
또한, 상기 비밀 통신이 수행되도록 제어하는 단계는 상기 발신기에서 상기 사업자 인증 서버와 발신기간 해쉬 값을 기초로 상기 사업자 인증 서버를 인증하여 인증에 성공하면 암호화키를 생성하고, 상기 수신기에서 상기 사업자 인증 서버와 수신기간 해쉬 값을 기초로 상기 사업자 인증 서버를 인증하고 상기 발신기와 수신기간 해쉬 값을 기초로 상기 발신기를 인증하여 인증에 성공하면 상기 발신기에서 생성된 암호화키와 동일한 암호화키를 생성하여 상기 생성된 암호화키를 이용하여 비밀 통신이 수행되도록 제어하는 단계;를 포함하여 이뤄질 수 있다.
또한, 상기 발신기 또는 상기 수신기가 상기 사업자 인증 서버 인증에 실패한 경우 또는 상기 수신기가 상기 발신기 인증에 실패한 경우, 상기 발신기 또는 상기 수신기는 상기 비밀 통신을 중단할 수 있다.
아울러, 상기 등록하는 단계는 상기 사업자 인증 서버가 상기 발신기로부터 수신한 상기 발신측 제1 암호화값과 상기 발신측 제2 암호화값 그리고 상기 수신기로부터 수신한 상기 수신측 제1 암호화값과 상기 수신측 제2 암호화값은 사업자 인증 서버 식별자를 더 이용하여 산출된 값을 의미할 수 있다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 실시 예에 따른 비밀 통신 방법은 발신측 사업자 인증 서버가 발신기측 암호를 기반으로 생성된 발신측 암호화값을 이용하여 발신기를 등록하고, 수신측 사업자 인증 서버가 수신기측 암호를 기반으로 생성된 수신측 암호화값을 이용하여 수신기를 등록하는 단계; 상기 발신기로부터 상기 수신기로의 비밀 통신 수행 요청에 따라, 상기 수신측 사업자 인증 서버가 상기 발신기 및 상기 발신측 사업자 인증 서버로부터 전달되는 정보를 이용하여 상기 수신기를 인증하는 단계; 상기 수신기 인증이 완료됨에 따라, 상기 수신측 사업자 인증 서버로부터 전달되는 정보를 이용하여 상기 발신측 사업자 인증 서버가 상기 수신측 사업자 인증 서버를 인증하는 단계; 상기 수신측 사업자 인증 서버 인증이 완료됨에 따라, 상기 발신측 사업자 인증 서버가 상기 발신기를 인증하는 단계; 상기 발신기 인증이 완료됨에 따라, 상기 수신측 사업자 인증 서버가 상기 발신측 사업자 인증 서버를 인증하는 단계; 및 상기 발신측 사업자 인증 서버 인증이 완료됨에 따라, 상기 발신측 사업자 인증 서버와 상기 수신측 사업자 인증 서버가 상기 발신기와 상기 수신기 각각 동일하게 생성된 암호화키를 이용하여 비밀 통신이 수행되도록 제어하는 단계;를 포함하여 이뤄질 수 있다.
이때, 상기 수신기를 인증하는 단계는 상기 발신기로부터 상기 수신기로의 비밀 통신 수행 요청에 따라, 상기 발신측 사업자 인증 서버가 상기 발신기로부터 발신측 랜덤 암호화값, 발신기 식별자 및 수신기 식별자를 수신하는 단계; 상기 발신측 사업자 인증 서버가 상기 발신측 랜덤 암호화값, 발신기 식별자, 수신기 식별자와 발신측 사업자 인증 서버 식별자를 상기 수신측 사업자 인증 서버로 전송하고, 상기 발신기에 의해 기 등록된 발신측 암호화값을 이용하여 발신측 서버 랜덤 암호화값을 산출하는 단계; 상기 수신측 사업자 인증 서버가 상기 수신기에 의해 기 등록된 수신측 암호화값을 이용하여 수신측 서버 랜덤 암호화값을 산출하는 단계; 상기 수신측 사업자 인증 서버가 상기 산출된 수신측 서버 랜덤 암호화값과, 상기 발신측 사업자 인증 서버로부터 수신된 상기 발신기 식별자 및 발신측 랜덤 암호화값을 상기 수신기로 전송하는 단계; 상기 수신측 사업자 인증 서버가 상기 수신기로부터 수신측 랜덤 암호화값, 수신측 사업자 인증 서버와 수신기간 해쉬 값, 상기 발신기와 수신기간 해쉬값을 수신하는 단계; 상기 수신측 사업자 인증 서버가 상기 수신기로부터 수신된 상기 수신측 사업자 인증 서버와 수신기간 해쉬 값을 이용하여 상기 수신기를 인증하고 인증에 성공하면, 수신측 사업자 인증 서버와 발신측 사업자 인증 서버간 해쉬값을 산출하는 단계; 및 상기 수신측 사업자 인증 서버가 상기 상기 발신측 사업자 인증 서버로 상기 수신기로부터 수신된 수신측 랜덤 암호화값, 상기 발신기와 수신기간 해쉬값 및 상기 산출된 수신측 사업자 인증 서버와 발신측 사업자 인증 서버간 해쉬값을 전송하는 단계;를 포함하여 이뤄질 수 있다.
이때, 상기 수신측 사업자 인증 서버를 인증하는 단계는 상기 발신측 사업자 인증 서버가 상기 수신측 사업자 인증 서버로부터 수신된 상기 수신측 사업자 인증 서버와 발신측 사업자 인증 서버간 해쉬값을 이용하여 상기 수신측 사업자 인증 서버를 인증하는 단계; 및 상기 인증에 성공하면, 상기 발신측 사업자 인증 서버가 상기 발신기로 상기 수신측 사업자 인증 서버로부터 수신된 수신측 랜덤 암호화값 및 발신기와 수신기간 해쉬값과, 상기 산출된 발신측 서버 랜덤 암호화값을 전송하는 단계;를 포함하여 이뤄질 수 있다.
여기서, 상기 발신기를 인증을 수행하는 단계는 상기 발신측 사업자 인증 서버가 상기 발신기로부터 상기 수신기와 발신기간 해쉬값, 상기 발신기와 발신측 사업자 인증 서버간 해쉬값을 수신하는 단계; 상기 발신측 사업자 인증 서버가 상기 발신기로부터 수신된 상기 발신기와 발신측 사업자 인증 서버간 해쉬값을 이용하여 상기 발신기를 인증하는 단계; 상기 인증에 성공하면, 상기 발신측 사업자 인증 서버가 상기 발신측 사업자 인증 서버와 수신측 사업자 인증 서버간 해쉬값을 산출하는 단계; 및 상기 발신측 사업자 인증 서버가 상기 산출된 발신측 사업자 인증 서버와 수신측 사업자 인증 서버간 해쉬값 및 상기 발신기로부터 수신된 수신기와 발신기간 해쉬값을 전송하는 단계;를 포함하여 이뤄질 수 있다.
또한, 상기 발신측 사업자 인증 서버를 인증하는 단계는 상기 수신측 사업자 인증 서버가 상기 발신측 사업자 인증 서버로부터 수신된 상기 발신측 사업자 인증 서버와 수신측 사업자 인증 서버간 해쉬값을 이용하여 상기 발신측 사업자 인증 서버를 인증하는 단계; 및 상기 인증에 성공하면, 상기 수신측 사업자 인증 서버가 수신측 사업자 인증 서버와 수신기간 해쉬 값을 산출하는 단계;를 포함하여 이뤄질 수 있다.
또한, 상기 제어하는 단계는 상기 수신측 사업자 인증 서버가 상기 수신기에게 상기 산출된 수신측 사업자 인증 서버와 수신기간 해쉬값 및 상기 발신측 사업자 인증 서버로부터 수신된 발신기와 수신기간 해쉬값을 전송하여 상기 수신기에서 암호화키를 생성하도록 제어하고, 상기 발신측 사업자 인증 서버가 상기 발신기로 발신측 사업자 인증 서버와 발신기간 해쉬값을 전송하여 상기 발신기에서 상기 수신기에서 생성된 암호화키와 동일한 암호화키가 생성되도록 제어하여 비밀 통신이 수행되도록 제어할 수 있다.
여기서, 발신기측 암호 및 수신기측 암호는 사용자에 의해 지정된 암호(예컨대, 비밀번호)를 의미한다. 즉, 비밀 통신을 위해 사용자에 의해 입력되어 지정되는 암호로, 사용자로부터 비밀통신을 위한 암호가 입력되면, 발신기 및 수신기는 이를 바로 사업자 인증 서버로 전송하여 등록하는 것이 아니라, 발신기측 암호를 기반으로 발신기는 발신측 암호화값을 생성하여 사업자 인증 서버로 전송함으로써 등록을 수행할 수 있으며, 수신기측 암호를 기반으로 수신기는 수신측 암호화값을 생성하여 사업자 인증 서버로 전송함으로써 등록을 수행하게 된다.
보다 구체적으로 설명하면, 먼저, 발신기는 사업자 인증 서버에 등록하기 위해, 사용자에 의해 입력되어 지정된 발신기측 암호를 기반으로 발신측 제1 암호화값과 발신측 제2 암호화값을 산출한 후, 이를 사업자 인증 서버로 전송하여 등록을 수행하게 된다. 여기서, 발신측 제1 암호화값(ωA)은 수학식 ωA=h'(S,A,πA)에 따라 산출되며, 발신측 제2 암호화값(νA)은 수학식 νA=h(S,A,πA)-1P에 따라 산출될 수 있다. 다시 말해, 상기 발신측 제1 암호화값(ωA) 및 발신측 제2 암호화값(νA)은 전술한 바와 같이 발신기측 암호(πA)를 이용하여 해쉬 함수에 따라 산출되는 정보로, 발신측 제1 암호화값(ωA)는 발신기 식별자(A)와 사업자 인증 서버 식별자(S), 발신기측 암호(πA)를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며, 발신측 제2 암호화값(νA)는 발신측 제1 암호화값(ωA)와 타원곡선 상의 임의의 한 점을 이용하여 산출될 수 있는 값을 의미한다.
이러한 과정을 거쳐 발신기는 발신측 제1 암호화값과 발신측 제2 암호화값을 산출하고, 이를 사업자 인증 서버로 전송하여 등록한다. 여기서, 발신측 제2 암호화값(νA)은 νA=h'(S,A,πA)P로 대체하여 사용할 수 있음에 유의한다. 이 경우 후술될 도 변경되어야 함에 유의한다.
수신기 또한 사업자 인증 서버에 등록하기 위해, 사용자에 의해 입력되어 지정된 수신기측 암호를 기반으로 수신측 제1 암호화값(ωB)과 수신측 제2 암호화값(νB)을 산출한 후, 이를 사업자 인증 서버로 전송하여 등록을 수행하게 된다. 여기서, 수신측 제1 암호화값(ωB)은 ωB=h'(S,B,πB)와에 따라 산출되며, 수신측 제2 암호화값(νB)은 νB=h(S,B,πB)-1P에 따라 산출될 수 있다. 다시 말해, 상기 수신측 제1 암호화값(ωB) 및 수신측 제2 암호화값(νB)은 전술한 바와 같이 수신기측 암호(πB)을 이용하여 해쉬 함수에 따라 산출되는 정보로, 수신측 제1 암호화값(ωB)은 수신기 식별자(B), 사업자 인증 서버 식별자(S), 수신기측 암호(πB)를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며, 수신측 제2 암호화값(νB)는 수신측 제1 암호화값(ωB)과 타원곡선 상의 임의의 한 점을 이용하여 산출될 수 있는 값을 의미한다.
이러한 과정을 거쳐 수신기는 수신측 제1 암호화값(ωB)과 수신측 제2 암호화값(νB)을 산출하고, 이를 사업자 인증 서버로 전송하여 등록한다. 여기서 수신측 제2 암호화값(νB)은 νB=h'(S,B,πB)P로 대체하여 사용할 수 있으며, 이 경우 후술될 도 변경되어야 함에 유의한다.
아울러, 발신기 및 수신기가 사업자 인증 서버로 전송하는 발신측 제1 암호화값(ωA), 발신측 제2 암호화값(νA), 수신측 제1 암호화값(ωB) 및 수신측 제2 암호화값(νB)은 공개키 암호화 기법을 사용하여 암호를 전송하여 수행될 수 있으며, 사업자 인증 서버는 상기 발신기 및 수신기로부터 수신된 정보, 즉 발신측 제1 암호화값(ωA), 발신측 제2 암호화값(νA), 수신측 제1 암호화값(ωB) 및 수신측 제2 암호화값(νB)을 자신의 공개키를 이용하여 복호화할 수 있다.
그러나 본 발명은 이에 특별히 한정될 필요는 없으며, 경우에 따라 가입자가 직접 가입기관에 방문하여 사업자 인증 서버로 해당 정보를 전송하여 등록 절차를 수행할 수도 있음에 유의한다
이후, 사업자 인증 서버가 발신기 및 수신기의 암호 등록 단계에서 발신기 암호 및 수신기 암호를 이용하여 생성되어 등록된 발신측 암호화값 및 수신측 암호화값을 검색한다. 즉, 발신측 제1 암호화값(ωA), 발신측 제2 암호화값(νA), 수신측 제1 암호화값(ωB) 및 수신측 제2 암호화값(νB)을 검색하고, 임의의 서버 제1 랜덤값(t)와 임의의 서버 제2 랜덤값(s)를 선택한다.
이후, 사업자 인증 서버는 수신측 제1 암호화값(ωB), 수신측 제2 암호화값(νB)과 임의의 서버 제1 랜덤값(t)을 이용하여 기 정의된 수학식에 따라 수신기간 인증자(XSB)를 산출하게 된다.
다시 말해 사업자 인증 서버가 비트 배타적 논리합을 라 할 때, 수학식 XSB = t(νB)ωB=th(S,B,πB)-1PωB를 계산한다. 그리고, 사업자 인증 서버는 계산된 발신기 식별자(A), 발신측 랜덤 암호화값(XA) 및 상기 계산된 수신기간 인증자(XSB)를 수신자에게 전송하고, 발신기간 인증자(XSA)를 계산한다. 즉, 사업자 인증 서버는 발신측 제1 암호화값(ωA), 발신측 제2 암호화값(νA) 및 임의의 서버 제2 랜덤값(s)을 이용하여, 기 정의된 수학식에 따라, 즉, 수학식 XSA = s(νA)ωA=sh(S,A,πA)-1PωA와 KAS=s(XA)=asP를 계산하여 발신기간 인증자(XSA)를 계산할 수 있다.
이후, 사업자 인증 서버는 수신기로부터 수신측 랜덤 암호화값(XB), 수신기간 해쉬 값(VBS), 수신기와 발신기간 해쉬 값(VBA)을 수신한다.
여기서, 수신측 랜덤 암호화값(XB)은 수신기에 의해 생성되는 것으로, 임의의 수신기 랜덤값(b) 및 상기 타원 곡선 상의 임의의 한 점을 이용하여 산출된 값, 즉 수학식 XB=bP에 따라 산출되는 값을 의미한다.
상기 수신기간 해쉬 값(VBS)은 상기 수신기에 의해 수신기 식별자(B), 사업자 인증 서버 식별자(S), 발신측 랜덤 암호화값(XA), 수신측 랜덤 암호화값(XB), 수신기간 인증자(XSB), 수신기간 세션키()를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값, 즉, 수학식 VBS=h(B,S,XA,XB,XSB,)에 따라 산출되는 값을 의미한다. 여기서, 수신기간 세션키()는 상기 수신측 제1 암호화값(ωB), 임의의 수신기 랜덤값(b) 그리고 상기 수신기간 인증자(XSB)를 이용하여 산출된 값, 즉 수학식 =bh(S,B,πB)(XSBπB)에 따라 산출된 값을 의미한다.
그리고, 상기 수신기와 발신기간 해쉬 값(VBA)은 수신기에 의해 수신기 식별자(B), 발신기 식별자(A), 발신측 랜덤 암호화값(XA), 수신측 랜덤 암호화값(XB), 발신기와 수신기간 세션키()를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값, 즉 수학식 VBA=h(B,A,XA,XB,)에 따라 산출된 값을 의미한다. 여기서, 상기 발신기와 수신기간 세션키()는 상기 임의의 수신기 랜덤값(b)와 상기 발신측 랜덤 암호화값(XA)을 이용하여 산출된 값, 즉, =b(XA)=abP에 따라 산출될 수 있는 값을 의미한다. 한편, 전술된 KBS는 전술된 νB가 h'(S,B,πB)P인 경우에, KBS=bh(S,B,πB)-1(XSB ωB)=btP로 대체되어야 함에 유의한다.
상기 수신기로부터 수신측 랜덤 암호화값(XB), 수신기간 해쉬 값(VBS), 수신기와 발신기간 해쉬 값(VBA)을 수신한 사업자 인증 서버는 먼저, 상기 수신기로부터 수신된 상기 수신측 랜덤 암호화값(XB)와 임의의 서버 제1 랜덤값(t)을 이용하여 상기 수신기간 세션 키()를 산출, 즉 수학식 =t(XB)=btP를 계산한다.
그리고, 사업자 인증 서버가 상기 수신기로부터 수신된 상기 수신기간 해쉬 값(VBS)을 상기 수신기 식별자(B), 상기 사업자 인증 서버 식별자(S), 상기 발신측 랜덤 암호화값(XA), 상기 수신측 랜덤 암호화값(XB), 상기 수신기간 인증자(XSB), 상기 수신기간 세션키()를 충돌이 없는 일방향 해쉬한 값과 동일한 지 비교하여 상기 수신기를 인증하게 된다. 즉, 수학식 VBS h(B,S,XA,XB,XSB,)를 검사하여 두 값이 같은 경우 수신기 인증에 성공하게 된다.
그리고, 사업자 인증 서버는 수신기 인증에 성공함에 따라, 산출된 발신기간 인증자(XSa), 수신기와 발신기간 해쉬 값(VBA) 및 수신측 랜덤 암호화값(XB)를 발신기로 전송한다(S311).
먼저, 사업자 인증 서버가 상기 발신기로부터 발신기간 해쉬 값(), 발신기와 수신기간 해쉬 값()을 수신한다. 여기서, 발신기간 해쉬 값()은 발신기에 의해 발신기 식별자(A), 사업자 인증 서버 식별자(S), 발신측 랜덤 암호화값(XA), 수신측 랜덤 암호화값(XB), 발신기간 인증자(XSa), 발신기간 세션키()를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값, 즉, =h(A,S,XA,XB,XSa,)에 따라 산출된 값을 의미한다. 여기서, 발신기간 세션키()는 =ah(S,A,πA)(XSAωA)=asP를 이용하여 산출될 수 있는 값을 의미한다.
또한, 발신기와 수신기간 해쉬 값()은 발신기 식별자(A), 수신기 식별자(B), 발신측 랜덤 암호화값(XA), 수신측 랜덤 암호화값(XB), 발신기와 수신기간 세션키()를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값, 즉=h(A,B,XA,XB,)에 따라 산출된 값을 의미하며, 상기 발신기와 수신기간 세션키()는 상기 임의의 발신기 랜덤값(a)와 상기 수신측 랜덤 암호화값(XB)를 이용하여 산출, 즉 =a(XB)=abP에 따라 산출되며, 수신기가 산출하는 발신기와 수신기간 세션키와 동일하게 산출될 수 있다.
즉, 발신기는 사업자 인증 서버로부터, 산출된 발신기간 인증자(), 수신기와 발신기간 해쉬 값() 및 수신측 랜덤 암호화값(XB)가 수신되면, 먼저, 상기 수신된 수신기와 발신기간 해쉬 값()이 수신기(B), 발신기(A), 발신측 랜덤 암호화값(XA), 수신측 랜덤 암호화값(XB), 발신기와 수신기간 세션키()를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값과 비교하게 된다. 즉, h(B,A,XA,XB,)를 검사하여 두 값이 같은 경우, 발신기는 발신기와 수신기간 해쉬 값() 및 발신기간 해쉬 값()를 계산하여 사업자 인증 서버로 전송하게 된다.
발신기간 세션키()는 전술된 νA가 h'(S,A,πA)P인 경우에, =ah(S,A,πA)-1(XSAωA)=asP로 대체되어야 함에 유의한다.
이후, 상기 사업자 인증 서버가 상기 발신기로부터 수신된 상기 발신기간 해쉬 값()을 발신기 식별자(A), 사업자 인증 서버 식별자(B), 발신측 랜덤 암호화값(XA), 수신측 랜덤 암호화값(XB), 발신기간 인증자(), 발신기간 세션 키()를 해쉬한 값이 동일한 지 검사, 즉, h(A,S,XA,XB,,)를 검사하여 두 값이 같은 경우 발신기를 인증하고(S321), 발신기 인증에 성공하면, 상기 사업자 인증 서버가 사업자 인증 서버 식별자(S), 발신기 식별자(A), 발신측 랜덤 암호화값(XA), 수신측 랜덤 암호화값(XB), 상기 발신기간 인증자() 및 발신기간 세션키()를 충돌이 없는 일방향 해쉬 함수에 따라 사업자 인증 서버와 발신기간 해쉬 값(), 즉, 수학식 =h(S,A,XA,XB,,)를 산출하고, 상기 사업자 인증 서버가 사업자 인증 서버 식별자(S), 수신기 식별자(B), 발신측 랜덤 암호화값(XA), 수신측 랜덤 암호화값(XB), 수신기간 제2 인증자(), 수신기간 세션키()를 충돌이 없는 일방향 해쉬 함수에 따라 사업자 인증 서버와 수신기간 해쉬 값(), 즉, =h(S,B,XA,XB,,)를 산출하게 된다. 이후, 사업자 인증 서버가 발신기로 사업자 인증 서버와 발신기간 해쉬 값()를 전송(S331)하고 수신기로 사업자 인증 서버와 수신기간 해쉬 값() 및 발신기와 수신기간 해쉬 값()를 전송한다.
서버 인증 단계는 수신기와 발신기가 사업자 인증 서버를 인증하고 수신기와 발신기가 동일한 암호화키를 생성하여 비밀 통신이 수행되도록 제어하는 단계이다(S330).
서버 인증 단계는 발신기가 사업자 인증 서버와 발신기간 해쉬 값()을 기초로 사업자 인증 서버를 인증한다. 즉, h(S,A,XA,XB,,)를 검사하여 두 값이 같은 지를 판단하여 사업자 인증 서버를 인증(S331)한다. 인증에 성공하면, 암호화키(K)=h(A,B,)를 생성한다.
또한 수신기가 사업자 인증 서버와 수신기간 해쉬 값()을 기초로 사업자 인증 서버를 인증한다. 즉, h(S,B,XA,XB,,)를 검사하여 두 값이 같은 지를 판단하여 사업자 인증 서버를 인증하고(S332), 인증에 성공하면, 암호하키(K)=h(A,B,)를 생성한다. 여기서, 생성된 암호화키는 각 인증 과정이 정상적으로 이뤄지게 되면 동일하게 생성될 수 있으며, 발신기 및 수신기는 동일한 암호화키를 이용하여 비밀 통신 단계(S400)를 통해 비밀 통신을 수행할 수 있게 된다.
제4단계, 사업자 인증 서버가 수신기에 '비밀 통신'호를 연결한다.
제5단계, 수신자가 '비밀 통신'버튼을 누른다.
제6단계, 수신자가 수신기측 암호를 입력한다.
제7단계, 발신기와 사업자 인증 서버가 발신기측 암호를 기반으로 상호 인증을 수행한다.
제8단계, 수신기와 사업자 인증 서버가 수신기측 암호를 기반으로 상호 인증을 수행한다.
제9단계, 발신기와 수신기가 동일한 암호화키를 생성한다.
제10단계, 발신기와 수신기가 통신 내용에 대해 생성된 암호화키를 적용하여 암호화 및 복호화를 하여 비밀 통신을 수행한다.
이후, 발신기가 사업자 인증 서버로 자기 인증을 요청한다(S501). 사업자 인증 서버는 VAS h(A,S,XA,XB,XSA,KAS)를 검사하여 두 값이 같은 경우 발신기 인증에 성공한다.
이후, 발신기가 사업자 인증 서버를 인증하고 암호화키를 생성한다(S502). 발신기는 VSA h(S,A,XA,XB,XSA,KAS)를 검사하여 두 값이 같은 경우 사업자 인증 서버를 인증하게 된다.
여기서, 발신기측 암호 및 수신기측 암호는 사용자에 의해 지정된 암호(예컨대, 비밀번호)를 의미한다. 즉, 비밀 통신을 위해 사용자에 의해 입력되어 지정되는 암호로, 사용자로부터 비밀통신을 위한 암호가 입력되면, 발신기 및 수신기는 이를 바로 발신기측 사업자 인증 서버 및 수신기측 사업자 인증 서버로 전송하여 등록하는 것이 아니라, 발신기측 암호를 기반으로 발신기는 발신측 암호화값을 생성하여 발신기측 사업자 인증 서버로 전송함으로써 등록을 수행할 수 있으며, 수신기측 암호를 기반으로 수신기는 수신측 암호화값을 생성하여 수신기측 사업자 인증 서버로 전송함으로써 등록을 수행하게 된다.
보다 구체적으로 설명하면, 먼저, 발신기는 발신기측 사업자 인증 서버에 등록하기 위해, 사용자에 의해 입력되어 지정된 발신기측 암호를 기반으로 발신측 제1 암호화값과 발신측 제2 암호화값을 산출한 후, 이를 발신기측 사업자 인증 서버로 전송하여 등록을 수행하게 된다. 여기서, 발신측 제1 암호화값(ωA)은 수학식 ωA=h'(S,A,πA)에 따라 산출되며, 발신측 제2 암호화값(νA)은 수학식 νA=h(S,A,πA)-1P에 따라 산출될 수 있다. 다시 말해, 상기 발신측 제1 암호화값 및 발신측 제2 암호화값은 전술한 바와 같이 발신기측 암호(πA)를 이용하여 해쉬 함수에 따라 산출되는 정보로, 발신측 제1 암호화값(ωA)은 발신기 식별자(A)와 발신측 사업자 인증 서버 식별자(S), 발신기측 암호(πA)를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며, 발신측 제2 암호화값(νA)는 발신측 제1 암호화값(ωA)와 타원곡선 상의 임의의 한 점을 이용하여 산출될 수 있는 값을 의미한다.
이러한 과정을 거쳐 발신기는 발신측 제1 암호화값과 발신측 제2 암호화값을 산출하고, 이를 발신기측 사업자 인증 서버로 전송하여 등록할 수 있다. 여기서, νA는 νA=h'(S,A,πA)P로 대체하여 사용할 수 있고, νB는 νB=h'(T,B,πB)P로 대체하여 사용할 수 있음에 유의한다. 이 경우 후술될 KAS와 KBT도 변경되어야 함에 유의한다.
수신기 또한 수신측 사업자 인증 서버에 등록하기 위해, 사용자에 의해 입력되어 지정된 수신기측 암호를 기반으로 수신측 제1 암호화값과 수신측 제2 암호화값을 산출한 후, 이를 수신측 사업자 인증 서버로 전송하여 등록을 수행하게 된다. 여기서, 수신측 제1 암호화값(ωB )은 ωB=h'(T,B,πB)와에 따라 산출되며, 수신측 제2 암호화값(νB)은 νB=h(T,B,πB)-1P에 따라 산출될 수 있다. 다시 말해, 상기 수신측 제1 암호화값(ωB) 및 수신측 제2 암호화값(νB)은 전술한 바와 같이 수신기측 암호(πB)을 이용하여 해쉬 함수에 따라 산출되는 정보로, 수신측 제1 암호화값(ωB)은 수신기 식별자(B), 수신측 사업자 인증 서버 식별자(T), 수신기측 암호(πB)를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며, 수신측 제2 암호화값(νB)는 수신측 제1 암호화값(ωB)과 타원곡선 상의 임의의 한 점을 이용하여 산출될 수 있는 값을 의미한다.
이러한 과정을 거쳐 수신기는 수신측 제1 암호화값과 수신측 제2 암호화값을 산출하고, 이를 수신측 사업자 인증 서버로 전송하여 등록한다. 여기서 νB=는 νB=h'(T,B,πB)P로 대체하여 사용할 수 있으며, 이 경우 후술될 KBS도 변경되어야 함에 유의한다.
아울러, 발신기 및 수신기가 사업자 인증 서버로 전송하는 발신측 제1 암호화값(ωA), 발신측 제2 암호화값(νA), 수신측 제1 암호화값(ωB) 및 수신측 제2 암호화값(νB)은 공개키 암호화 기법을 사용하여 암호를 전송하여 수행될 수 있으며, 각각의 사업자 인증 서버는 상기 발신기 및 수신기로부터 수신된 정보, 즉 발신측 제1 암호화값(ωA)), 발신측 제2 암호화값(νA), 수신측 제1 암호화값(ωB) 및 수신측 제2 암호화값(νB)을 자신의 공개키를 이용하여 복호화할 수 있다.
요청 단계(S600)는 발신기가 발신기측 사업자 인증 서버로 비밀 통신을 요청하는 단계이다. 요청 단계(S600)는 발신기에 발신기측 암호가 입력된 경우에 수행되며, 이때, 발신기의 키음이 묵음 상태를 유지하는 것이 바람직하다.
이후, 발신기측 사업자 인증 서버가 수신기측 사업자 인증 서버로 S, A, B, XA를 전송한다.
이를 수신한 수신측 사업자 인증 서버는 기 등록된 수신측 제1 암호화값(ωB) 및 수신측 제2 암호화값(νB)을 검색하고, 임의의 서버 제1 랜덤값(t)을 이용하여 수신측 서버 랜덤 암호화값(XT)을 산출한 후, 산출된 수신측 서버 암호화값, 발신기 식별자, 발신측 랜덤 암호화값을 상기 수신기로 전송한다.
이후, 수신측 사업자 인증 서버는 상기 수신기로부터 수신측 랜덤 암호화값(XB), 수신측 사업자 인증 서버와 수신기간 해쉬 값(), 상기 발신기와 수신기간 해쉬값()를 수신한다.
여기서, 수신측 랜덤 암호화값(XB)은 수신기에 의해 생성되는 것으로, 임의의 수신기 랜덤값(b) 및 상기 타원 곡선 상의 임의의 한 점을 이용하여 산출된 값, 즉 수학식 XB=bP에 따라 산출되는 값을 의미한다.
수신측 사업자 인증 서버와 수신기간 해쉬 값()은 발신기 식별자(B), 수신측 사업자 인증 서버 식별자(T), 발신측 랜덤 암호화값(XA), 수신측 랜덤 암호화값(XB), 수신측 서버 랜덤 암호화값(XT), 수신기와 수신측 사업자 인증 서버간 세션키()를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값, 즉 수학식 =h(B,T,XA,XB,XT,)에 따라 산출된 값을 의미한다.
한편, 수신측 사업자 인증 서버와 수신기간 세션키()는 기 정의된 수학식, 즉, =bh(T,B,πB)(XTωB)=btP에 따라 산출될 수 있다.
아울러, 상기 발신기와 수신기간 해쉬값()는 =h(B,A,XA,XB,)에 따라 산출될 수 있으며, 여기서 는 발신기와 수신기간 세션키()로, 임의의 수신기 랜덤값(B) 및 발신측 랜덤 암호화값을 이용하여 산출될 수 있다.
한편, 전술된 KBT는 전술된 νB가 h'(T,B,πB)P인 경우에, KBT=bh(T,B,πB)-1(XT ωB)=btP로 대체되어야 함에 유의한다.
이후, 수신측 사업자 인증 서버는 상기 수신기로부터 수신된 수신측 사업자 인증 서버와 수신기간 해쉬 값()을 이용하여 수신기를 인증한다. 즉, 수신측 사업자 인증 서버는 상기 해쉬 값()을 Vbt=h(B,T,XA,XB,XT,KBT)에 따라 산출되는 해쉬 값과 비교하여 동일한지 여부를 판단하고, 동일할 경우 인증에 성공한 것으로 판단하게 된다.
그리고, 수신측 사업자 인증 서버는 수신측 사업자 인증 서버와 발신측 사업자 인증 서버간 해쉬 값()를 산출하고, 산출된 수신측 사업자 인증 서버와 발신측 사업자 인증 서버간 해쉬 값()과, 상기 수신기로부터 수신된 발신기와 수신기간 해쉬값(), 수신측 랜덤 암호화값(XB)을 발신측 사업자 인증 서버로 전송하게 된다.
여기서, 수신측 사업자 인증 서버와 발신측 사업자 인증 서버간 해쉬 값()는 기 정의된 수학식 즉, =h(T,S,A,B,XA,XB,)를 이용하여 산출되는 값을 의미한다.
발신기 인증 단계는 발신기측 사업자 인증 서버가 발신기를 인증하는 단계이다(S720).
발신기 인증 단계에서, 발신측 사업자 인증 서버는 상기 수신측 사업자 인증 서버로부터 수신측 사업자 인증 서버와 발신측 사업자 인증 서버간 해쉬 값()을 이용하여 수신측 사업자 인증 서버를 인증한다. 즉, 수학식 h(T,S,A,B,XA,XB,)를 검사하여 두 값이 같은 경우 수신기측 사업자 인증 서버를 성공적으로 인증(S731)하고, 발신기로 발신측 서버 랜덤 암호화값(XS), 수신측 랜덤값(XB), 발신기와 수신기간 해쉬값()을 전송한다.
이를 수신한 발신기는 발신기와 수신기간 세션키 =a(XB)=abP를 계산하고, 상기 발신측 사업자 인증 서버로부터 전송된 발신기와 수신기간 해쉬값()를 기 정의된 수학식에 따라 검사하여, 즉, h(B,A,XA,XB,)를 검사하여 두 값이 같은 경우 발신측 사업자 인증 서버 인증에 성공한 것으로 판단하고, 수신기와 발신기간 해쉬값()를 수학식 =h(A,B,XA,XB,)에 따라 계산하고, 발신기와 발신측 사업자 인증 서버간 세션키=ah(S,A,πA)(XSωA)=asP 및 발신기와 발신측 사업자 인증 서버간 해쉬 값=h(A,S,XA,XB,XS,)를 계산하여 발신기측 사업자 인증 서버로 발신기와 발신측 사업자 인증 서버간 해쉬 값() 및 수신기와 발신기간 해쉬값()를 전송한다. 한편, 전술된 는 전술된 νA가 h'(S,B,πA)P인 경우에, KAS=ah(S,A,πA)-1(XS ωA)=asP로 대체되어야 함에 유의한다.
발신기 인증3단계, 발신기측 사업자 인증 서버가 발신기로부터 전송된 발신기와 발신측 사업자 인증 서버간 해쉬 값()를 기 정의된 수학식, 즉, VASh(A,S,XA,XB,XSA,KAS)를 검사하여 두 값이 같은 경우 발신기를 인증에 성공하고(S721), 발신기측 사업자 인증 서버와 발신기간 해쉬 값()를 수학식, 즉, 수학식 =h(S,A,XA,XB,XS,)에 따라 산출하고, 발신기측 사업자 인증 서버와 수신기측 사업자 인증 서버간 해쉬값()를 수학식, =h(S,T,A,B,XA,XB,KST)에 따라 산출한 후, 발신기로, 발신기측 사업자 인증 서버와 발신기간 해쉬 값()를 전송하고, 수신기측 사업자 인증 서버로 발신기측 사업자 인증 서버와 수신기측 사업자 인증 서버간 해쉬값() 및 수신기와 발신기간 해쉬값()을 전송한다.
서버 인증 단계는 발신기측 인증 서버와 수신기측 인증 서버가 상호 인증하고 수신기와 발신기가 암호화키를 공유하는 단계이다(S730).
서버 인증 단계에서, 서버 인증1단계는 먼저, 발신기가 상기 발신기측 사업자 인증 서버로부터 전송된 발신기측 사업자 인증 서버와 발신기간 해쉬 값을 이용하여, 즉, VSAh(S,A,XA,XB,XSA,KAS)를 검사하여 두 값이 같은 경우 발신기측 사업자 인증 서버 인증에 성공하고, K를 암호화키라 할 때 수학식 K=h(A,B,KAB)를 계산하여 암호화키를 생성한다.
서버 인증2단계, 수신기측 사업자 인증 서버가 VST h(S,T,A,B,XA,XB,KST)를 검사하여 두 값이 같은 경우 발신기측 사업자 인증 서버를 인증하고, 수학식 VTB=h(T,B,XA,XB,XT,KBT)를 계산하여 수신기로 VTB 및 VAB를 전송한다.
서버 인증3단계, 수신기가 VTB h(T,B,XA,XB,XT,KBT)를 검사하여 두 값이 같은 경우 수신기측 사업자 인증 서버를 인증(S732)하고, VAB h(A,B,XA,XB,KAB)를 검사하여 두 값이 같은 경우 수학식 K=h(A,B,KAB)를 계산하여 암호화키를 생성한다.
통신 단계(S800)는 발신기와 수신기가 암호화키를 기반으로 비밀 통신을 수행하는 단계이다.
제4단계, 발신기측 사업자 인증 서버가 수신기측 사업자 인증 서버로 비밀 통신 요청을 중계한다.
제5단계, 수신기측 사업자 인증 서버가 수신기에 '비밀 통신'호를 연결한다.
제6단계, 수신자가 '비밀 통신'버튼을 누른다.
제7단계, 수신자가 수신기측 암호를 입력한다.
제8단계, 발신기와 발신기측 사업자 인증 서버가 발신기측 암호를 기반으로 상호 인증을 수행한다.
제9단계, 수신기와 수신기측 사업자 인증 서버가 수신기측 암호를 기반으로 상호 인증을 수행한다.
제10단계, 발신기측 사업자 인증 서버와 수신기측 사업자 인증 서버가 암호를 기반으로 상호 인증을 수행한다.
제11단계, 발신기와 수신기가 암호화키를 생성한다.
제12단계, 발신기와 수신기가 통신 내용에 대해 생성된 암호화키를 적용하여 암호화 및 복호화를 하여 비밀 통신을 수행한다.
Claims (60)
- 삭제
- 삭제
- 삭제
- 사업자 인증 서버가 발신기측 암호를 기반으로 생성된 발신측 암호화값을 이용하여 발신기를 등록하고, 수신기측 암호를 기반으로 생성된 수신측 암호화값을 이용하여 수신기를 등록하는 단계;상기 발신기로부터 상기 수신기로의 비밀 통신 수행 요청에 따라, 상기 사업자 인증 서버가 상기 수신측 암호화값을 이용하여 상기 수신기를 인증하는 단계;상기 수신기 인증이 완료됨에 따라, 상기 사업자 인증 서버가 상기 발신측 암호화값을 이용하여 상기 발신기를 인증하는 단계; 및상기 발신기 인증이 완료됨에 따라, 상기 사업자 인증 서버가 상기 발신기와 상기 수신기 각각 동일하게 생성된 암호화키를 이용하여 비밀 통신이 수행되도록 제어하는 단계;를 포함하는 비밀 통신 방법.
- 제 4 항에 있어서,상기 등록하는 단계는상기 사업자 인증 서버가상기 발신기로부터 수신된 발신측 제1 암호화값과 발신측 제2 암호화값을 이용하여 상기 발신기를 등록하고, 상기 수신기로부터 수신된 수신측 제1 암호화값과 수신측 제2 암호화값을 수신하여 상기 수신기를 등록하며,상기 발신측 제1 암호화값은 발신기 식별자와 발신기측 암호를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며,상기 발신측 제2 암호화값은 상기 발신측 제1 암호화값과 타원곡선 상의 임의의 한 점을 이용하여 산출된 값을 의미하며,상기 수신측 제1 암호화값은 수신기 식별자와 수신기측 암호를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며,상기 수신측 제2 암호화값은 상기 수신측 제1 암호화값과 타원 곡선 상의 임의의 한 점을 이용하여 산출된 값을 의미하는 것을 특징으로 하는 비밀 통신 방법.
- 제 5 항에 있어서,상기 사업자 인증 서버는 상기 발신기 및 상기 수신기로부터 수신된 정보가 암호화된 경우 자신의 공개키를 이용하여 복호화하는 것을 특징으로 하는 비밀 통신 방법.
- 제 4 항에 있어서,상기 사업자 인증 서버는 상기 발신기로부터 발신기측 암호가 수신되면, 상기 발신기로부터 상기 수신기로의 비밀 통신 수행 요청이 발생된 것으로 확인하는 것을 특징으로 하는 비밀 통신 방법.
- 제 7 항에 있어서,상기 사업자 인증 서버는상기 수신기로부터 상기 발신기의 비밀 통신 요청에 대한 응답으로 수신기측 암호가 수신되면, 상기 사업자 인증 서버가 상기 수신측 암호화값을 이용하여 상기 수신기를 인증하는 것을 특징으로 하는 비밀 통신 방법.
- 제 4 항에 있어서,상기 수신기를 인증하는 단계는상기 발신기로부터 상기 수신기로의 비밀 통신 수행 요청에 따라, 상기 사업자 인증 서버가 상기 발신기로부터 발신측 랜덤 암호화값, 발신기 식별자 및 수신기 식별자를 수신하는 단계;상기 사업자 인증 서버가 상기 수신측 암호화값을 이용하여 수신기간 인증자를 산출하고, 상기 발신측 암호화값을 이용하여 발신기간 인증자를 산출하는 단계;상기 사업자 인증 서버가 상기 산출된 수신기간 인증자, 상기 발신기로부터 수신된 상기 발신기 식별자 및 상기 발신측 랜덤 암호화값을 상기 수신기에게 전송하는 단계;상기 사업자 인증 서버가 상기 수신기로부터 수신측 랜덤 암호화값, 수신기간 해쉬 값, 수신기와 발신기간 해쉬 값을 수신하는 단계;상기 사업자 인증 서버가 상기 수신기로부터 수신된 상기 수신측 랜덤 암호화값을 이용하여 수신기간 세션 키를 산출하는 단계;상기 사업자 인증 서버가 상기 수신기로부터 수신된 상기 수신기간 해쉬 값을 이용하여 상기 수신기를 인증하는 단계; 및상기 수신기 인증에 성공하면, 상기 사업자 인증 서버가 상기 산출된 발신기간 인증자, 상기 수신기로부터 수신된 상기 수신기와 발신기간 해쉬 값 및 수신측 랜덤 암호화값을 상기 발신기로 전송하는 단계;를 포함하는 것을 특징으로 하는 비밀 통신 방법.
- 제 9 항에 있어서,상기 발신측 랜덤 암호화값은 상기 발신기에 의해 임의의 발신기 랜덤값 및 타원 곡선 상의 임의의 한 점을 이용하여 산출된 값을 의미하며,상기 수신측 랜덤 암호화값은 상기 수신기에 의해 임의의 수신기 랜덤값 및 타원 곡선 상의 임의의 한 점을 이용하여 산출된 값을 의미하며,상기 수신기간 해쉬 값은 상기 수신기에 의해 수신기 식별자, 사업자 인증 서버 식별자, 발신측 랜덤 암호화값, 수신측 랜덤 암호화값, 수신기간 인증자, 수신기간 세션키를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며,상기 수신기와 발신기간 해쉬 값은 상기 수신기에 의해 수신기 식별자, 발신기 식별자, 발신측 랜덤 암호화값, 수신측 랜덤 암호화값, 발신기와 수신기간 세션키를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며,상기 발신기와 수신기간 세션키는 상기 임의의 수신기 랜덤값과 상기 발신측 랜덤 암호화값을 이용하여 산출된 값을 의미하며,상기 수신기간 세션키는 수신측 암호화값, 상기 임의의 수신기 랜덤값 및 상기 수신기간 인증자를 이용하여 산출된 값을 의미하는 것을 특징으로 하는 비밀 통신 방법.
- 제 10 항에 있어서,상기 발신기를 인증하는 단계는상기 사업자 인증 서버가 상기 발신기로부터 발신기간 해쉬 값, 발신기와 수신기간 해쉬 값을 수신하는 단계;상기 사업자 인증 서버가 상기 발신기로부터 수신된 상기 발신기간 해쉬 값을 이용하여 상기 발신기를 인증하는 단계;상기 발신기 인증에 성공하면, 상기 사업자 인증 서버가 사업자 인증 서버와 발신기간 해쉬 값 및 사업자 인증 서버와 수신기간 해쉬 값을 산출하는 단계; 및상기 사업자 인증 서버가 상기 발신기로 상기 사업자 인증 서버와 발신기간 해쉬값을 전송하고, 상기 수신기로 상기 사업자 인증 서버와 수신기간 해쉬값 및 상기 발신기와 수신기간 해쉬 값을 전송하는 단계;를 포함하는 것을 특징으로 하는 비밀 통신 방법.
- 제 11 항에 있어서,상기 사업자 인증 서버와 발신기간 해쉬 값은 사업자 인증 서버 식별자, 발신기 식별자, 발신측 랜덤 암호화값, 수신측 랜덤 암호화값, 상기 발신기간 인증자 및 발신기간 세션키를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며,상기 사업자 인증 서버와 수신기간 해쉬 값은 사업자 인증 서버 식별자, 수신기 식별자, 발신측 랜덤 암호화값, 수신측 랜덤 암호화값, 수신기간 인증자, 수신기간 세션키를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며,상기 발신기간 해쉬 값은 상기 발신기에 의해 발신기 식별자, 사업자 인증 서버 식별자, 발신측 랜덤 암호화값, 수신측 랜덤 암호화값, 발신기간 인증자, 발신기간 세션키를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며,상기 발신기와 수신기간 해쉬 값은 상기 발신기에 의해 발신기 식별자, 수신기 식별자, 발신측 랜덤 암호화값, 수신측 랜덤 암호화값, 발신기와 수신기간 세션키를 충돌이 없는 일방향 해쉬 함수에 따라 산출된 값을 의미하며,상기 발신기와 수신기간 세션키는 상기 임의의 발신기 랜덤값와 상기 수신측 랜덤 암호화값을 이용하여 산출된 값을 의미하며,상기 발신기간 세션키는 발신측 암호화값, 상기 임의의 발신기 랜덤값 및 상기 발신기간 인증자를 이용하여 산출된 값을 의미하는 것을 특징으로 하는 비밀 통신 방법.
- 제 4 항에 있어서,상기 수신기 또는 발신기를 인증하는 단계 이후에,상기 수신기 또는 발신기 인증에 실패하면, 상기 사업자 인증 서버가 상기 발신기 또는 수신기로 상기 비밀 통신을 중단하기 위한 중단 메시지를 전송하는 단계;를 더 포함하는 것을 특징으로 하는 비밀 통신 방법.
- 제 12 항에 있어서,상기 비밀 통신이 수행되도록 제어하는 단계는상기 발신기에서 상기 사업자 인증 서버와 발신기간 해쉬 값을 기초로 상기 사업자 인증 서버를 인증하여 인증에 성공하면 암호화키를 생성하고,상기 수신기에서 상기 사업자 인증 서버와 수신기간 해쉬 값을 기초로 상기 사업자 인증 서버를 인증하고 상기 발신기와 수신기간 해쉬 값을 기초로 상기 발신기를 인증하여 인증에 성공하면 상기 발신기에서 생성된 암호화키와 동일한 암호화키를 생성하여 상기 생성된 암호화키를 이용하여 비밀 통신이 수행되도록 제어하는 단계;를 포함하는 것을 특징으로 하는 비밀 통신 방법.
- 제 14 항에 있어서,상기 발신기 또는 상기 수신기가 상기 사업자 인증 서버 인증에 실패한 경우 또는 상기 수신기가 상기 발신기 인증에 실패한 경우,상기 발신기 또는 상기 수신기는 상기 비밀 통신을 중단하는 것을 특징으로 하는 비밀 통신 방법.
- 제 5 항에 있어서,상기 등록하는 단계는상기 사업자 인증 서버가 상기 발신기로부터 수신한 상기 발신측 제1 암호화값과 상기 발신측 제2 암호화값 그리고 상기 수신기로부터 수신한 상기 수신측 제1 암호화값과 상기 수신측 제2 암호화값은 사업자 인증 서버 식별자를 더 이용하여 산출된 값을 의미하는 것을 특징으로 하는 비밀 통신 방법.
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 발신측 사업자 인증 서버가 발신기측 암호를 기반으로 생성된 발신측 암호화값을 이용하여 발신기를 등록하고, 수신측 사업자 인증 서버가 수신기측 암호를 기반으로 생성된 수신측 암호화값을 이용하여 수신기를 등록하는 단계;상기 발신기로부터 상기 수신기로의 비밀 통신 수행 요청에 따라, 상기 수신측 사업자 인증 서버가 상기 발신기 및 상기 발신측 사업자 인증 서버로부터 전달되는 정보를 이용하여 상기 수신기를 인증하는 단계;상기 수신기 인증이 완료됨에 따라, 상기 수신측 사업자 인증 서버로부터 전달되는 정보를 이용하여 상기 발신측 사업자 인증 서버가 상기 수신측 사업자 인증 서버를 인증하는 단계;상기 수신측 사업자 인증 서버 인증이 완료됨에 따라, 상기 발신측 사업자 인증 서버가 상기 발신기를 인증하는 단계;상기 발신기 인증이 완료됨에 따라, 상기 수신측 사업자 인증 서버가 상기 발신측 사업자 인증 서버를 인증하는 단계; 및상기 발신측 사업자 인증 서버 인증이 완료됨에 따라, 상기 발신측 사업자 인증 서버와 상기 수신측 사업자 인증 서버가 상기 발신기와 상기 수신기 각각 동일하게 생성된 암호화키를 이용하여 비밀 통신이 수행되도록 제어하는 단계;를 포함하는 것을 특징으로 하는 비밀 통신 방법.
- 제33항에 있어서,상기 수신기를 인증하는 단계는상기 발신기로부터 상기 수신기로의 비밀 통신 수행 요청에 따라, 상기 발신측 사업자 인증 서버가 상기 발신기로부터 발신측 랜덤 암호화값, 발신기 식별자 및 수신기 식별자를 수신하는 단계;상기 발신측 사업자 인증 서버가 상기 발신측 랜덤 암호화값, 발신기 식별자, 수신기 식별자와 발신측 사업자 인증 서버 식별자를 상기 수신측 사업자 인증 서버로 전송하고, 상기 발신기에 의해 기 등록된 발신측 암호화값을 이용하여 발신측 서버 랜덤 암호화값을 산출하는 단계;상기 수신측 사업자 인증 서버가 상기 수신기에 의해 기 등록된 수신측 암호화값을 이용하여 수신측 서버 랜덤 암호화값을 산출하는 단계;상기 수신측 사업자 인증 서버가 상기 산출된 수신측 서버 랜덤 암호화값과, 상기 발신측 사업자 인증 서버로부터 수신된 상기 발신기 식별자 및 발신측 랜덤 암호화값을 상기 수신기로 전송하는 단계;상기 수신측 사업자 인증 서버가 상기 수신기로부터 수신측 랜덤 암호화값, 수신측 사업자 인증 서버와 수신기간 해쉬 값, 상기 발신기와 수신기간 해쉬값을 수신하는 단계;상기 수신측 사업자 인증 서버가 상기 수신기로부터 수신된 상기 수신측 사업자 인증 서버와 수신기간 해쉬 값을 이용하여 상기 수신기를 인증하고 인증에 성공하면, 수신측 사업자 인증 서버와 발신측 사업자 인증 서버간 해쉬값을 산출하는 단계; 및상기 수신측 사업자 인증 서버가 상기 발신측 사업자 인증 서버로 상기 수신기로부터 수신된 수신측 랜덤 암호화값, 상기 발신기와 수신기간 해쉬값 및 상기 산출된 수신측 사업자 인증 서버와 발신측 사업자 인증 서버간 해쉬값을 전송하는 단계;를 포함하는 것을 특징으로 하는 비밀 통신 방법.
- 제34항에 있어서,상기 수신측 사업자 인증 서버를 인증하는 단계는상기 발신측 사업자 인증 서버가 상기 수신측 사업자 인증 서버로부터 수신된 상기 수신측 사업자 인증 서버와 발신측 사업자 인증 서버간 해쉬값을 이용하여 상기 수신측 사업자 인증 서버를 인증하는 단계; 및상기 인증에 성공하면, 상기 발신측 사업자 인증 서버가 상기 발신기로 상기 수신측 사업자 인증 서버로부터 수신된 수신측 랜덤 암호화값 및 발신기와 수신기간 해쉬값과, 상기 산출된 발신측 서버 랜덤 암호화값을 전송하는 단계;를 포함하는 것을 특징으로 하는 비밀 통신 방법.
- 제35항에 있어서,상기 발신기를 인증을 수행하는 단계는상기 발신측 사업자 인증 서버가 상기 발신기로부터 상기 수신기와 발신기간 해쉬값, 상기 발신기와 발신측 사업자 인증 서버간 해쉬값을 수신하는 단계;상기 발신측 사업자 인증 서버가 상기 발신기로부터 수신된 상기 발신기와 발신측 사업자 인증 서버간 해쉬값을 이용하여 상기 발신기를 인증하는 단계;상기 인증에 성공하면, 상기 발신측 사업자 인증 서버가 상기 발신측 사업자 인증 서버와 수신측 사업자 인증 서버간 해쉬값을 산출하는 단계; 및상기 발신측 사업자 인증 서버가 상기 산출된 발신측 사업자 인증 서버와 수신측 사업자 인증 서버간 해쉬값 및 상기 발신기로부터 수신된 수신기와 발신기간 해쉬값을 전송하는 단계;를 포함하는 것을 특징으로 하는 비밀 통신 방법.
- 제36항에 있어서,상기 발신측 사업자 인증 서버를 인증하는 단계는상기 수신측 사업자 인증 서버가 상기 발신측 사업자 인증 서버로부터 수신된 상기 발신측 사업자 인증 서버와 수신측 사업자 인증 서버간 해쉬값을 이용하여 상기 발신측 사업자 인증 서버를 인증하는 단계; 및상기 인증에 성공하면, 상기 수신측 사업자 인증 서버가 수신측 사업자 인증 서버와 수신기간 해쉬 값을 산출하는 단계;를 포함하는 것을 특징으로 하는 비밀 통신 방법.
- 제37항에 있어서,상기 제어하는 단계는상기 수신측 사업자 인증 서버가 상기 수신기에게 상기 산출된 수신측 사업자 인증 서버와 수신기간 해쉬값 및 상기 발신측 사업자 인증 서버로부터 수신된 발신기와 수신기간 해쉬값을 전송하여 상기 수신기에서 암호화키를 생성하도록 제어하고, 상기 발신측 사업자 인증 서버가 상기 발신기로 발신측 사업자 인증 서버와 발신기간 해쉬값을 전송하여 상기 발신기에서 상기 수신기에서 생성된 암호화키와 동일한 암호화키가 생성되도록 제어하여 비밀 통신이 수행되도록 제어하는 것을 특징으로 하는 비밀 통신 방법.
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080093040A KR101543571B1 (ko) | 2008-09-23 | 2008-09-23 | 비밀 통신 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080093040A KR101543571B1 (ko) | 2008-09-23 | 2008-09-23 | 비밀 통신 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100034094A KR20100034094A (ko) | 2010-04-01 |
KR101543571B1 true KR101543571B1 (ko) | 2015-08-12 |
Family
ID=42212297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080093040A Expired - Fee Related KR101543571B1 (ko) | 2008-09-23 | 2008-09-23 | 비밀 통신 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101543571B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021133074A3 (ko) * | 2019-12-27 | 2021-08-19 | 주식회사 제이에스전자 | 경량 기기 전용 개체 또는 메시지 인증 방법 및 이를 수행하는 장치들 |
-
2008
- 2008-09-23 KR KR1020080093040A patent/KR101543571B1/ko not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021133074A3 (ko) * | 2019-12-27 | 2021-08-19 | 주식회사 제이에스전자 | 경량 기기 전용 개체 또는 메시지 인증 방법 및 이를 수행하는 장치들 |
Also Published As
Publication number | Publication date |
---|---|
KR20100034094A (ko) | 2010-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108650227B (zh) | 基于数据报安全传输协议的握手方法及系统 | |
US6912657B2 (en) | Method and arrangement in a communication network | |
JP4634612B2 (ja) | 改良された加入者認証プロトコル | |
KR100983050B1 (ko) | 네트워크 엔티티들 사이에서 데이터 협정을 인증하기 위한시스템, 방법 및 컴퓨터 프로그램 제품 | |
JP5138858B2 (ja) | データ伝送のセキュリティを確保する方法、通信システム及び通信装置 | |
US8769284B2 (en) | Securing communication | |
CN112566119B (zh) | 终端认证方法、装置、计算机设备及存储介质 | |
KR101706117B1 (ko) | 휴대용 단말기에서 다른 휴대용 단말기를 인증하는 장치 및 방법 | |
CN101742508A (zh) | 一种wapi终端与应用服务器传输文件的系统及方法 | |
ES2316993T3 (es) | Procedimiento y sistema para proteger la informacion intercambiada durante una comunicacion entre usuarios. | |
Hossain et al. | A proposal for enhancing the security system of short message service in GSM | |
CN101466079A (zh) | 电子邮件的传送方法、系统及wapi终端 | |
JP2003522475A (ja) | データの正確性チェックのための方法、システムおよび携帯端末 | |
JP2008060809A (ja) | 車車間通信方法、車車間通信システムおよび車載通信装置 | |
CN100441023C (zh) | 鉴定移动站的方法、通信系统与移动站 | |
WO2018161862A1 (zh) | 私钥生成方法、设备以及系统 | |
KR101485747B1 (ko) | 노드를 구성하는 방법, 관련 노드 및 구성 서버 | |
CN113365264B (zh) | 一种区块链无线网络数据传输方法、装置及系统 | |
JP4827717B2 (ja) | 通信システム及び発信側端末装置及び着信側端末装置 | |
CN107104888B (zh) | 一种安全的即时通信方法 | |
KR101543571B1 (ko) | 비밀 통신 방법 | |
CN106559402B (zh) | 用户终端及其加密语音电话业务的身份认证方法及装置 | |
EP1437024B1 (en) | Method and arrangement in a communications network | |
TWI231681B (en) | Certification and data encryption method of PUSH technology | |
JP2003124919A (ja) | 暗号通信装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20080923 |
|
PG1501 | Laying open of application | ||
A201 | Request for examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20130820 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20080923 Comment text: Patent Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20141028 Patent event code: PE09021S01D |
|
E90F | Notification of reason for final refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Final Notice of Reason for Refusal Patent event date: 20150518 Patent event code: PE09021S02D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20150721 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20150805 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20150805 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
LAPS | Lapse due to unpaid annual fee | ||
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20190516 |