KR20050050257A - 데이터 통신 암호화 방법 - Google Patents

데이터 통신 암호화 방법 Download PDF

Info

Publication number
KR20050050257A
KR20050050257A KR1020030083959A KR20030083959A KR20050050257A KR 20050050257 A KR20050050257 A KR 20050050257A KR 1020030083959 A KR1020030083959 A KR 1020030083959A KR 20030083959 A KR20030083959 A KR 20030083959A KR 20050050257 A KR20050050257 A KR 20050050257A
Authority
KR
South Korea
Prior art keywords
key
server
session key
data
client
Prior art date
Application number
KR1020030083959A
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 KR1020030083959A priority Critical patent/KR20050050257A/ko
Publication of KR20050050257A publication Critical patent/KR20050050257A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명에 따른 데이터 통신 암호화 방법은, 서버와 클라이언트가 네트워크로 연결된 시스템에 있어서, (a) 상기 서버와 클라이언트간 보유한 고정키를 사용하여 데이터를 암/복호화하여 인가된 노드임을 확인하고, 노드 인증 확인후에는 서버에서 생성된 세션키를 사용하여 상기 서버와 클라이언트 상호간의 데이터 암/복호화하여 소켓 세션이 이루어지는 단계와, (b) 상기 (a) 단계에서 소켓 세션 후 재연결시에는 상기 (a) 단계를 새로 진행하는 방식으로 모든 세션에 대하여 서로 다른 세션 키를 생성하여 소켓 세션이 이루어지는 단계를 포함하는 것을 특징으로 한다.

Description

데이터 통신 암호화 방법{ENCODING METHOD FOR DATA COMMUNICATION}
본 발명은 서버-클라이언트 간 데이터 통신시 안전한 데이터 통신을 위하여 세션 연결시 랜덤한 데이터 암호화 키 생성 및 교환을 하고, 매 소켓 세션별로 서로 다른 암호화 키를 생성하여 통신하는 데이터 통신 암호화 방법에 관한 것이다.
일반적으로 클라이언트-서버로 연결된 시스템 데이터 통신은, 클라이언트 PC는 서버쪽으로 접속요청을 하고, 요청을 받은 서버가 이를 받아들임으로써 데이터 통신이 이루어진다.
이 때 서버와 클라이언트 간에 소켓(Socket) 연결 후 클라이언트에서 서버로 데이터 송수신시 동일한 암호화 키를 사용하여 통신함으로써, 데이터 전송시의 보안을 유지할 수 있었다.
그러나, 통상적으로 암호화되지 않은 데이터 통신시 통신 데이터의 유출 가능성이 존재하는데, 이를 해결하기 위하여 동일한 암호화 키를 사용하여 암호화된 데이터를 송수신하더라도 고정 암호화키 유출시 통신 데이터의 유출 가능성이 존재하는 문제점이 있었다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 서버-클라이언트 간 데이터 통신시 안전한 데이터 통신을 위하여 세션 연결시 랜덤한 데이터 암호화 키 생성 및 교환을 하고, 매 소켓 세션별로 서로 다른 암호화 키를 생성하여 통신하는 데이터 통신 암호화 방법을 제공하는 것을 목적으로 한다.
상기와 같은 목적을 달성하기 위하여, 본 발명에 따른 데이터 통신 암호화 방법은,
서버와 클라이언트가 네트워크로 연결된 시스템에 있어서,
(a) 상기 서버와 클라이언트 간 소켓 연결 후 인증이 확인되기까지 상기 서버와 클라이언트 간에 보유한 고정키를 사용하여 전송 데이터를 암/복호화하는 단계와;
(b) 상기 (a) 단계에서 인증 확인 후 난수로 생성된 세션키를 생성하고 상기 세션키를 고정키로 암호화하여 상기 클라이언트에 전송하면, 다시 상기 서버에서 상기 클라이언트로부터 상기 세션키 확인 요청을 받아 이를 확인하고 상기 세션키로 데이터의 송/수신이 이루어지는 단계와;
(c) 상기 (b) 단계의 통신 연결이 해제되고 재연결시에는 상기 (a), (b)의 단계를 다시 반복하여 새로운 세션키를 생성하여 통신하는 단계를 포함하는 것을 특징으로 한다.
또한, 상기 (a) 단계에서 인증확인을 위한 클라이언트로부터 인증 요청은,
(a-1) 초기 암/복호화를 위한 고정키를 상기 서버와 클라이언트에 정의하고 이를 읽어들이는 단계와,
(a-2) 상기 클라이언트가 인증 요청 데이터를 상기 (a-1) 단계에서 읽어들인 고정키로 암호화하여 상기 서버에 전송하는 단계를 포함하는 것을 특징으로 한다.
또한, 상기 인증 요청 데이터를 고정키로 암호화하는 과정은,
유효 데이터 값으로서 서버의 Mac 주소를 구하는 제1단계와,
상기 제1단계에서 구한 서버의 Mac 주소와 그 길이를 유효 길이 범위내에서 값을 구하는 제2단계와,
상기 제2단계에서 구한 서버의 Mac 주소에 대해 해쉬값을 생성하는 제3단계와,
상기 제1, 제2, 제3 단계에서 구한 서버의 Mac 주소와 그 길이, 해쉬값을 고정키로 암호화한 값을 구하는 제4단계와,
상기 제4단계에서 구한 암호화한 값으로부터 인증 요청 데이터를 생성하는 제5단계를 포함하는 것을 특징으로 한다.
또한, 상기 (a) 단계에서 클라이언트로부터 인증 요청에 대한 인증 확인은,
(a-3) 상기 서버가 클라이언트 IP, 고정키를 읽어와서 상기 클라이언트가 인증 요청한 노드가 등록된 IP 인지 확인하여 등록된 IP이면 고정키로 암호화되어진 인증 요청 데이터를 수신하는 단계와,
(a-4) 상기 (a-3) 단계에서 수신된 인증 요청 데이터를 고정키로 복호화하는 단계와,
(a-5) 상기 (a-4) 단계에서 복호화된 값이 유효 데이터인지 여부를 확인하여 유효 데이터이면 상기 복호화된 값으로부터 암호화된 Mac 주소를 수신하는 단계와,
(a-6) 상기 (a-5) 단계에서 수신된 Mac 주소를 고정키로 복호화한 후 상기 복호화된 Mac 주소를 서버의 Mac 주소와 비교하는 단계
를 포함하는 것을 특징으로 한다.
또한, (a-7) 상기 (a-3) 단계에서 인증을 요청한 노드가 등록된 IP가 아니거나, 상기 (a-5) 단계에서 복호화된 값이 유효 데이터가 아니거나, 상기 (a-6) 단계에서 복호화된 Mac 주소와 서버의 Mac 주소가 일치하지 않으면 클라이언트의 서버와의 연결을 거부하는 단계가 더 포함되는 것을 특징으로 한다.
또한, 상기 (b) 단계에서 세션키를 생성하는 과정은,
상기 (a) 단계에서 등록된 클라이언트로서 연결이 성립되고 인가되어진 노드이면 난수를 생성하는 제1단계와,
상기 제1단계에서 생성된 난수를 이용하여 비트 연산된 키 값을 저장하고 세션키를 생성하는 제2단계
를 포함하는 것을 특징으로 한다.
또한, 상기 (b) 단계에서 세션키를 생성하여 클라이언트에 전송하는 과정은,
(b-1) 복호화된 Mac 주소와 서버의 Mac 주소를 비교하여 상기 복호화된 Mac 주소와 서버의 Mac 주소가 일치하면 서버가 세션 ID, 세션키를 생성하는 단계와,
(b-2) 상기 (b-1) 단계에서 세션 ID 및 세션키를 생성한 후 이를 고정키로 암호화하여 키 전송 데이터로서 클라이언트에 전송하는 단계를 포함하는 것을 특징으로 한다.
또한, 상기 (b-2) 단계에서 세션키를 암호화 하는 과정은,
유효 데이터 값으로서 세션키를 구하는 제1단계와,
상기 제1단계에서 구한 세션키와 그 길이를 유효 길이 범위내에서 값을 구하는 제2단계와,
상기 제2단계에서 구한 서버의 세션키에 대해 해쉬값을 생성하는 제3단계와,
상기 제1, 제2, 제3단계에서 구한 서버의 세션키와 그 길이, 해쉬값을 고정키로 암호화한 값을 구하는 제4단계와,
상기 제4단계에서 구한 상기 암호화한 값으로부터 키 전송 데이터를 생성하는 제5단계를 포함하는 것을 특징으로 한다.
또한, 상기 (b) 단계에서 세션키 확인 과정은,
(b-3) 클라이언트가 수신된 키 전송 데이터를 고정키로 복호화한 후 유효 데이터로서 세션키를 얻는 단계와,
(b-4) 상기 (b-3) 단계에서 유효한 세션키로 확인되면 세션키 수신 데이터를 세션키로 암호화하여 생성하여 서버에 전송하는 단계를 포함하는 것을 특징으로 하는 데이터 통신 암호화 방법.
또한, 상기 세션키 수신 데이터를 생성하는 과정은,
유효 데이터 값으로서 세션키 수신 데이터를 구하는 제1단계와,
상기 제1단계에서 구한 세션키 수신 데이터와 그 길이를 유효 길이 범위내에서 값을 구하는 제2단계와,
상기 제2단계에서 구한 세션키 수신 데이터에 대해 해쉬값을 생성하는 제3단계와,
상기 제1, 제2, 제3단계에서 구한 세션키 수신 데이터와 그 길이, 해쉬값을 세션키로 암호화한 값을 구하는 제4단계와,
상기 제4단계에서 암호화한 값으로부터 세션키 수신 데이터를 생성하는 제5단계를 포함하는 것을 특징으로 한다.
다른 바람직한 실시예는, 서버와 클라이언트가 네트워크로 연결된 시스템에 있어서,
(a) 상기 서버와 클라이언트간 보유한 고정키를 사용하여 데이터를 암/복호화하여 인가된 노드임을 확인하고, 노드 인증 확인후에는 서버에서 생성된 세션키를 사용하여 상기 서버와 클라이언트 상호간의 데이터 암/복호화하여 소켓 세션이 이루어지는 단계와;
(b) 상기 (a) 단계에서 소켓 세션 후 재연결시에는 상기 (a) 단계를 새로 진행하는 방식으로 모든 세션에 대하여 서로 다른 세션 키를 생성하여 소켓 세션이 이루어지는 단계를 포함하는 것을 특징으로 한다.
또한, 상기 (a) 단계에서 세션키 생성은, 등록된 클라이언트로서 연결이 성립되고 인가되어진 노드이면 난수를 생성하는 제1단계와, 상기 제1단계에서 생성된 난수를 이용하여 비트 연산된 키 값을 저장하고 세션키를 생성하는 제2단계를 포함하는 것을 특징으로 한다.
이하에서 첨부된 도면을 참조하여 본 발명의 바람직한 실시예가 상세히 설명된다.
도 1은 본 발명에 따른 데이터 통신 암호화 방법에서 클라이언트와 서버간의 통신 과정을 보여주는 도면이다.
도 1에 도시된 바와 같이, 클라이언트가 서버로 연결을 시도하면(connect), 서버가 이를 받아들여(accept), 서버와 클라이언트간에 소켓(socket)연결이 이루어진다(S11)(S12).
이후, 클라이언트는 인가된 노드임을 확인하기 위하여 서버의 맥 어드레스(Mac Address)를 포함한 암호화된 데이터를 서버에 전송하여 인증 요청하면(S13), 서버는 인가된 노드인지 확인한다(S14).
즉, 서버-클라이언트 간 소켓 연결 후 인증이 확인되기까지는 양단간에 보유한 고정 암호화키를 사용하여 데이터를 암/복호화한다.
이후, 서버가 클라이언트의 인증을 확인한 후 난수(random number)로 생성된세션 키(session key)를 생성하고 고정키로 암호화하여 클라이언트에 전송한다(S15).
이후, 다시 클라이언트에서 세션 키 확인 요청을 하고 서버에서 이를 확인한다(S16).
소켓 세션 연결, 인증 확인 과정, 세션키 확인 과정이 모두 이루어지면 비로소 연결세션이 끊어질 동안 생성된 세션키 값에 의하여 통신 데이터를 암호화하고 복호화하는 과정으로 데이터의 송/수신이 이루어진다(S17).
또한, 세션 키는 소켓 세션이 이루어진 상태에서는 유효하나 통신 연결 해제 후 재연결시에는 위의 과정(S11 내지 S17)을 새로 진행하여 새로운 세션 키를 생성하여 안전한 데이터 통신을 하게 된다.
즉, 모든 세션에 대하여 서로 다른 세션 키가 생성되어 통신하게 된다(S18).
이하에서 도 2 내지 도 5를 참조하여, 본 발명에 따른 소켓 세션별 암호화 키 생성을 통한 데이터 통신 과정 중 인증요청(S13), 인증확인(S14), 세션키 전송(S15), 세션키 확인(S16)의 과정을 자세히 설명한다.
여기서, 각각 sk는 고정키(Static Key), ssk는 세션 키, Enc()sk는 고정키(sk)를 가지고 암호화하는 함수, Dec()sk는 고정키를 가지고 복호화하는 함수, Enc()ssk는 세션키(ssk)를 가지고 암호화하는 함수, Dec()ssk는 세션키를 가지고 복호화하는 함수, Hash()는 해쉬 알고리즘을 가지고 무결성 값을 얻는 함수, (%nd)는 n-바이트 디지트(n-Bytes Digit), (%ns)는 n-바이트 스트링(n-Bytes String)을 의미한다.
또한, 표 1은 통신 데이터 구조를 설명하는 도표이다.
표 1
도 2는 본 발명에 따른 데이터 통신 암호화 방법에서 인증 요청 과정을 나타낸 플로우차트이다.
먼저, 초기 암/복호화를 위한 고정 암호화키를 서버와 클라이언트에 정의하고 이를 읽어들인다(S21).
이후, 클라이언트로부터 서버로의 인증 요청을 위해 클라이언트가 인증 요청 데이터를 고정키로 암호화하여 서버에 전송한다(S22a 내지 S22f).
여기서, 인증 요청 데이터를 고정키로 암호화하는 과정을 살펴보면, 먼저 유효 데이터 값으로서 서버의 Mac 주소(A)를 구한다(S22a).
또한, 구한 서버의 Mac 주소와 그 길이를 유효 길이 범위내에서 값(B)을 구하고(S22b), 구한 서버의 Mac 주소에 대해 해쉬값(C)을 생성한다(S22c).
이후, 구한 서버의 Mac 주소(A)와 그 길이(B), 해쉬값(C)을 고정키로 암호화한 값(D)을 구한다(S22d).
이후, 상기 암호화한 값(D)으로부터 인증 요청 데이터를 생성하고(S22e), 서버에 생성된 인증 요청 데이터를 전송함으로써(S22f) 종료된다.
도 3은 본 발명에 따른 데이터 통신 암호화 방법에서 노드 인증 및 생성된 세션키 전송 과정을 나타낸 플로우차트이다.
도 3에 도시된 바와 같이, 클라이언트로부터 접속 후(socket session 생성)서버는 설정정보에서 클라이언트 IP, 고정키를 읽어와서(S31), 인증을 요청한 노드가 등록된 IP 인지 여부를 확인한다(S32a).
여기서, 등록된 IP이면 서버는 클라이언트로부터 고정키로 암호화되어진 인증 요청 데이터를 수신한다(S33).
또한, 수신된 인증 요청 데이터(A)를 고정키로 복호화하고(S34a, S34b), 이 복호화된 값(B)이 유효 데이터인지 여부를 확인하여 유효 데이터이면 복호화된 값(B)으로부터 암호화된 Mac 주소(Mac Address)를 받는다(S36).
이후, 수신된 Mac 주소를 고정키로 복호화한 후, 상기 복호화된 Mac 주소를 서버의 Mac 주소와 비교하여 다시 인가 여부를 확인한다(S37).
여기서, 상기 복호화된 Mac 주소와 서버의 Mac 주소가 일치하면 세션 ID, 세션키를 생성한다(S38).
그러나, 인증을 요청한 노드가 등록된 IP가 아니거나, 복호화된 값(B)이 유효 데이터가 아니거나, 복호화된 Mac 주소와 서버의 Mac 주소가 일치하지 않으면 클라이언트의 서버와의 연결을 거부한다(S32b).
또한, 서버에서 세션 ID 및 세션키를 생성한 후, 이를 고정키로 암호화하여 키 전송 데이터로서 클라이언트에 전송한다(S39a 내지 S39f).
여기서, 세션키를 암호화 하는 과정을 살펴보면, 먼저 유효 데이터 값으로서 세션키(A)를 구한다(S39a).
또한, 구한 세션키와 그 길이를 유효 길이 범위내에서 값(B)을 구하고(S39b), 구한 서버의 세션키에 대해 해쉬값(C)을 생성한다(S39c).
이후, 구한 서버의 세션키(A)와 그 길이(B), 해쉬값(C)을 고정키로 암호화한 값(D)을 구한다(S39d).
이후, 상기 암호화한 값(D)으로부터 키 전송 데이터를 생성하고(S39e), 서버에 생성된 키 전송 데이터를 클라이언트에 전송함으로써(S39f) 종료된다.
도 4는 본 발명에 따른 데이터 통신 암호화 방법에서 세션키 생성 과정을 나타낸 플로우차트이다.
도 4를 참조하면, 새로운 소켓 생성(클라이언트로부터 서버 엔진으로의 접속 요청으로 인한 노드 확인)이 확인되면, 즉 등록된 클라이언트로서 연결이 성립되고 인가되어진 노드이면, 난수(random number)를 생성한다(S41)(S42)(S43).
이후 생성된 난수를 이용하여 비트(Bit) 연산된 키 값을 저장하는데(S44), 세션키의 값은 16 바이트로 구성될 수 있다.
이후, 향후 데이터 송수신에 사용할 세션키를 생성함으로써(S45), 세션키 생성 과정은 종료된다.
이와 같이, 연결된 세션에 대하여 새로운 키 값을 난수로 생성하여 세션키를 생성하고 고정키로 생성된 세션키를 암호화하며, 암호화된 세션키를 클라이언트에 전달한다.
도 5는 본 발명에 따른 데이터 통신 암호화 방법에서 세션키 확인 과정을 나타낸 플로우차트이다.
도 5를 참조하면, 클라이언트는 서버로부터 생성된 키 전송 데이터를 수신한다(S51).
클라이언트는 수신되어진 키 전송 데이터를 고정키로 복호화한 후 세션키를 얻는다(S52)(S53)(S54)(S55).
여기서, 키 전송데이터(A)를 고정키로 복호화한 값(B)이 유효데이터이면 세션키를 얻을 수 있으나, 그렇지 않은 경우에는 연결을 거부하여 종료시킨다.
이후, 유효한 세션키로 확인되면 세션키로 암호화되어진 세션키 수신 데이터를 생성한다. 즉, 상기 세션키 수신 데이터는 세션키 수신의 의미로 "Key Receive OK" 메시지를 생성하여 서버에 전송한다(S56a 내지 S56f).
여기서, "Key Receive OK" 메시지를 생성하는 과정을 살펴보면 유효 데이터 값으로서 "Key Receive OK"(A)를 구한다(S56a).
또한, 구한 "Key Receive OK"와 그 길이를 유효 길이 범위내에서 값(B)을 구하고(S56b), 구한 "Key Receive OK" 메시지에 대해 해쉬값(C)을 생성한다(S56c).
이후, 구한 "Key Receive OK" 메시지(A)와 그 길이(B), 해쉬값(C)을 세션키로 암호화한 값(D)을 구한다(S56d).
이후, 상기 암호화한 값(D)으로부터 "Key Receive OK" 메시지를 생성하고(S56e), 클라이언트에서 생성된 "Key Receive OK" 메시지를 서버에 전송함으로써(S56f) 종료된다.
이와 같이, 본 발명에 따른 데이터 통신 암호화 방법은 소켓 세션이 이루어진 상태에서는 유효하나 통신 연결 해제 후 재연결시에는 위의 과정(도 2 내지 도 5 참조)을 새로 진행하여 새로운 세션키를 생성하여 안전한 데이터 통신을 하게된다.
이로써 모든 세션에 대하여 서로 다른 세션키가 생성되어 통신하여 통신 데이터의 유출의 문제를 해소할 수 있다.
이상에서 살펴본 바와 같이, 본 발명에 따른 데이터 통신 암호화 방법은 소켓 세션이 이루어진 상태에서는 유효하나 통신 연결 해제 후 재연결시에는 새로운 세션키를 생성함으로써, 모든 세션에 대하여 서로 다른 세션키가 생성되므로 통신시 데이터 유출을 막고 보안성을 향상시킬 수 있게 한다.
도 1은 본 발명에 따른 데이터 통신 암호화 방법에서 클라이언트와 서버간의 통신 과정을 보여주는 도면이다.
도 2는 본 발명에 따른 데이터 통신 암호화 방법에서 인증 요청 과정을 나타낸 플로우차트이다.
도 3은 본 발명에 따른 데이터 통신 암호화 방법에서 노드 인증 및 생성된 세션키 전송 과정을 나타낸 플로우차트이다.
도 4는 본 발명에 따른 데이터 통신 암호화 방법에서 세션키 생성 과정을 나타낸 플로우차트이다.
도 5는 본 발명에 따른 데이터 통신 암호화 방법에서 세션키 확인 과정을 나타낸 플로우차트이다.

Claims (12)

  1. 서버와 클라이언트가 네트워크로 연결된 시스템에 있어서,
    (a) 상기 서버와 클라이언트 간 소켓 연결 후 인증이 확인되기까지 상기 서버와 클라이언트 간에 보유한 고정키를 사용하여 전송 데이터를 암/복호화하는 단계와;
    (b) 상기 (a) 단계에서 인증 확인 후 난수로 생성된 세션키를 생성하고 상기 세션키를 고정키로 암호화하여 상기 클라이언트에 전송하면, 다시 상기 서버에서 상기 클라이언트로부터 상기 세션키 확인 요청을 받아 이를 확인하고 상기 세션키로 데이터의 송/수신이 이루어지는 단계와;
    (c) 상기 (b) 단계의 통신 연결이 해제되고 재연결시에는 상기 (a), (b)의 단계를 다시 반복하여 새로운 세션키를 생성하여 통신하는 단계를 포함하는 것을 특징으로 하는 데이터 통신 암호화 방법.
  2. 제1항에 있어서,
    상기 (a) 단계에서 인증확인을 위한 클라이언트로부터 인증 요청은,
    (a-1) 초기 암/복호화를 위한 고정키를 상기 서버와 클라이언트에 정의하고 이를 읽어들이는 단계와,
    (a-2) 상기 클라이언트가 인증 요청 데이터를 상기 (a-1) 단계에서 읽어들인 고정키로 암호화하여 상기 서버에 전송하는 단계를 포함하는 것을 특징으로 하는 데이터 통신 암호화 방법.
  3. 제2항에 있어서,
    상기 인증 요청 데이터를 고정키로 암호화하는 과정은,
    유효 데이터 값으로서 서버의 Mac 주소를 구하는 제1단계와,
    상기 제1단계에서 구한 서버의 Mac 주소와 그 길이를 유효 길이 범위내에서 값을 구하는 제2단계와,
    상기 제2단계에서 구한 서버의 Mac 주소에 대해 해쉬값을 생성하는 제3단계와,
    상기 제1, 제2, 제3 단계에서 구한 서버의 Mac 주소와 그 길이, 해쉬값을 고정키로 암호화한 값을 구하는 제4단계와,
    상기 제4단계에서 구한 암호화한 값으로부터 인증 요청 데이터를 생성하는 제5단계를 포함하는 것을 특징으로 하는 데이터 통신 암호화 방법.
  4. 제1항에 있어서,
    상기 (a) 단계에서 클라이언트로부터 인증 요청에 대한 인증 확인은,
    (a-3) 상기 서버가 클라이언트 IP, 고정키를 읽어와서 상기 클라이언트가 인증 요청한 노드가 등록된 IP 인지 확인하여 등록된 IP이면 고정키로 암호화되어진 인증 요청 데이터를 수신하는 단계와,
    (a-4) 상기 (a-3) 단계에서 수신된 인증 요청 데이터를 고정키로 복호화하는 단계와,
    (a-5) 상기 (a-4) 단계에서 복호화된 값이 유효 데이터인지 여부를 확인하여 유효 데이터이면 상기 복호화된 값으로부터 암호화된 Mac 주소를 수신하는 단계와,
    (a-6) 상기 (a-5) 단계에서 수신된 Mac 주소를 고정키로 복호화한 후 상기 복호화된 Mac 주소를 서버의 Mac 주소와 비교하는 단계
    를 포함하는 것을 특징으로 하는 데이터 통신 암호화 방법.
  5. 제4항에 있어서,
    (a-7) 상기 (a-3) 단계에서 인증을 요청한 노드가 등록된 IP가 아니거나, 상기 (a-5) 단계에서 복호화된 값이 유효 데이터가 아니거나, 상기 (a-6) 단계에서 복호화된 Mac 주소와 서버의 Mac 주소가 일치하지 않으면 클라이언트의 서버와의 연결을 거부하는 단계가 더 포함되는 것을 특징으로 하는 데이터 통신 암호화 방법.
  6. 제1항에 있어서,
    상기 (b) 단계에서 세션키를 생성하는 과정은,
    상기 (a) 단계에서 등록된 클라이언트로서 연결이 성립되고 인가되어진 노드이면 난수를 생성하는 제1단계와,
    상기 제1단계에서 생성된 난수를 이용하여 비트 연산된 키 값을 저장하고 세션키를 생성하는 제2단계
    를 포함하는 것을 특징으로 하는 데이터 통신 암호화 방법.
  7. 제1항에 있어서,
    상기 (b) 단계에서 세션키를 생성하여 클라이언트에 전송하는 과정은,
    (b-1) 복호화된 Mac 주소와 서버의 Mac 주소를 비교하여 상기 복호화된 Mac 주소와 서버의 Mac 주소가 일치하면 서버가 세션 ID, 세션키를 생성하는 단계와,
    (b-2) 상기 (b-1) 단계에서 세션 ID 및 세션키를 생성한 후 이를 고정키로 암호화하여 키 전송 데이터로서 클라이언트에 전송하는 단계를 포함하는 것을 특징으로 하는 데이터 통신 암호화 방법.
  8. 제7항에 있어서,
    상기 (b-2) 단계에서 세션키를 암호화 하는 과정은,
    유효 데이터 값으로서 세션키를 구하는 제1단계와,
    상기 제1단계에서 구한 세션키와 그 길이를 유효 길이 범위내에서 값을 구하는 제2단계와,
    상기 제2단계에서 구한 서버의 세션키에 대해 해쉬값을 생성하는 제3단계와,
    상기 제1, 제2, 제3단계에서 구한 서버의 세션키와 그 길이, 해쉬값을 고정키로 암호화한 값을 구하는 제4단계와,
    상기 제4단계에서 구한 상기 암호화한 값으로부터 키 전송 데이터를 생성하는 제5단계를 포함하는 것을 특징으로 하는 데이터 통신 암호화 방법.
  9. 제1항에 있어서,
    상기 (b) 단계에서 세션키 확인 과정은,
    (b-3) 클라이언트가 수신된 키 전송 데이터를 고정키로 복호화한 후 유효 데이터로서 세션키를 얻는 단계와,
    (b-4) 상기 (b-3) 단계에서 유효한 세션키로 확인되면 세션키 수신 데이터를 세션키로 암호화하여 생성하여 서버에 전송하는 단계를 포함하는 것을 특징으로 하는 데이터 통신 암호화 방법.
  10. 제9항에 있어서,
    상기 세션키 수신 데이터를 생성하는 과정은,
    유효 데이터 값으로서 세션키 수신 데이터를 구하는 제1단계와,
    상기 제1단계에서 구한 세션키 수신 데이터와 그 길이를 유효 길이 범위내에서 값을 구하는 제2단계와,
    상기 제2단계에서 구한 세션키 수신 데이터에 대해 해쉬값을 생성하는 제3단계와,
    상기 제1, 제2, 제3단계에서 구한 세션키 수신 데이터와 그 길이, 해쉬값을 세션키로 암호화한 값을 구하는 제4단계와,
    상기 제4단계에서 암호화한 값으로부터 세션키 수신 데이터를 생성하는 제5단계를 포함하는 것을 특징으로 하는 데이터 통신 암호화 방법.
  11. 서버와 클라이언트가 네트워크로 연결된 시스템에 있어서,
    (a) 상기 서버와 클라이언트간 보유한 고정키를 사용하여 데이터를 암/복호화하여 인가된 노드임을 확인하고, 노드 인증 확인후에는 서버에서 생성된 세션키를 사용하여 상기 서버와 클라이언트 상호간의 데이터 암/복호화하여 소켓 세션이 이루어지는 단계와;
    (b) 상기 (a) 단계에서 소켓 세션 후 재연결시에는 상기 (a) 단계를 새로 진행하는 방식으로 모든 세션에 대하여 서로 다른 세션 키를 생성하여 소켓 세션이 이루어지는 단계를 포함하는 것을 특징으로 하는 데이터 통신 암호화 방법.
  12. 제11항에 있어서,
    상기 (a) 단계에서 세션키 생성은, 등록된 클라이언트로서 연결이 성립되고 인가되어진 노드이면 난수를 생성하는 제1단계와, 상기 제1단계에서 생성된 난수를 이용하여 비트 연산된 키 값을 저장하고 세션키를 생성하는 제2단계를 포함하는 것을 특징으로 하는 데이터 통신 암호화 방법.
KR1020030083959A 2003-11-25 2003-11-25 데이터 통신 암호화 방법 KR20050050257A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030083959A KR20050050257A (ko) 2003-11-25 2003-11-25 데이터 통신 암호화 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030083959A KR20050050257A (ko) 2003-11-25 2003-11-25 데이터 통신 암호화 방법

Publications (1)

Publication Number Publication Date
KR20050050257A true KR20050050257A (ko) 2005-05-31

Family

ID=38665763

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030083959A KR20050050257A (ko) 2003-11-25 2003-11-25 데이터 통신 암호화 방법

Country Status (1)

Country Link
KR (1) KR20050050257A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100940525B1 (ko) * 2007-11-21 2010-02-10 한국전자통신연구원 소켓 레벨 가상 사설망 통신 장치 및 방법
KR100956482B1 (ko) * 2005-07-07 2010-05-07 노키아 코포레이션 알려지지 않은 두 통신 당사자 간의 신뢰성 있는 관계의 확립 방법, 그 관계 확립의 개시와 완성 방법, 통신 장치 및 컴퓨터 판독가능한 기록매체

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100956482B1 (ko) * 2005-07-07 2010-05-07 노키아 코포레이션 알려지지 않은 두 통신 당사자 간의 신뢰성 있는 관계의 확립 방법, 그 관계 확립의 개시와 완성 방법, 통신 장치 및 컴퓨터 판독가능한 기록매체
KR100940525B1 (ko) * 2007-11-21 2010-02-10 한국전자통신연구원 소켓 레벨 가상 사설망 통신 장치 및 방법
US8011004B2 (en) 2007-11-21 2011-08-30 Electronics And Telecommunications Research Institute Apparatus and method for VPN communication in socket-level

Similar Documents

Publication Publication Date Title
JP5345675B2 (ja) トークンとベリファイアとの間の認証のためのネットワーク・ヘルパー
RU2406251C2 (ru) Способ и устройство для установления безопасной ассоциации
US8144874B2 (en) Method for obtaining key for use in secure communications over a network and apparatus for providing same
JP2005510184A (ja) 機密保護インターネット・プロトコル権利管理アーキテクチャ用の鍵管理プロトコルおよび認証システム
KR20050072508A (ko) 홈 네트워크를 구성하는 기기들에 대한 인증 장치 및 방법
CA2463034A1 (en) Method and system for providing client privacy when requesting content from a public server
US8144875B2 (en) Method and system for establishing real-time authenticated and secured communications channels in a public network
CN1716953B (zh) 会话初始协议认证的方法
CN110808829A (zh) 一种基于密钥分配中心的ssh认证方法
JP2005348164A (ja) クライアント端末、ゲートウエイ装置、及びこれらを備えたネットワークシステム
CA2561644C (en) A method to leverage a secure device to grant trust and identity to a second device
CN116709325B (zh) 一种基于高速加密算法的移动设备安全认证方法
CN115865520B (zh) 移动云服务环境中具有隐私保护的认证和访问控制方法
KR20060032602A (ko) 패스워드를 분배하기 위한 방법
CN108282456A (zh) 网络摄像机授权访问的方法
US20090055917A1 (en) Authentication method and authentication system using the same
JPH08335208A (ja) 代理認証方法及びシステム
CN114826593B (zh) 量子安全的数据传输方法及数字证书认证系统
KR20050050257A (ko) 데이터 통신 암호화 방법
CN117395652B (zh) 无线网络两端通信的双向身份认证方法及系统
CN114531235B (zh) 一种端对端加密的通信方法及系统
CN112954679B (zh) 基于DH算法的LoRa终端安全接入方法
CN113886781B (zh) 基于区块链的多重认证加密方法、系统、电子设备及介质
JP3721176B2 (ja) 認証システムおよび暗号化通信システム
CN116318637A (zh) 设备安全入网通信的方法和系统

Legal Events

Date Code Title Description
N231 Notification of change of applicant
WITN Withdrawal due to no request for examination