KR101886367B1 - 사물 간 통신 네트워크에서의 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 기능 검증 방법 - Google Patents

사물 간 통신 네트워크에서의 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 기능 검증 방법 Download PDF

Info

Publication number
KR101886367B1
KR101886367B1 KR1020170132840A KR20170132840A KR101886367B1 KR 101886367 B1 KR101886367 B1 KR 101886367B1 KR 1020170132840 A KR1020170132840 A KR 1020170132840A KR 20170132840 A KR20170132840 A KR 20170132840A KR 101886367 B1 KR101886367 B1 KR 101886367B1
Authority
KR
South Korea
Prior art keywords
hash value
random number
session key
generated
unit
Prior art date
Application number
KR1020170132840A
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 KR1020170132840A priority Critical patent/KR101886367B1/ko
Application granted granted Critical
Publication of KR101886367B1 publication Critical patent/KR101886367B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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/32Cryptographic 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/3236Cryptographic 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 using cryptographic hash functions

Abstract

본 발명에 따른 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 기능 검증 방법은,상기 제 1기기에서, 제 1난수를 생성하여 제 2기기로 송신하는 제 1난수 전송단계(S100); 상기 제 2기기에서,제 2난수를 생성하는 제 2난수 생성단계(S200); 상기 수신한 제 1난수와 상기 생성한 제 2난수를 이용하여 제 3, 4해쉬값을 생성하는 제 2기기 해쉬값 생성단계(S300); 상기 제 2난수와 제 4해쉬값을 제 1기기로 전송하는 제 2난수 및 제 4해쉬값 전송단계(S400); 를 포함하여 구성되고, 상기 제 1기기에서, 상기 생성한 제 1난수와 상기 수신한 제 2난수를 이용하여 제 1, 2해쉬값을 생성하는 제 1기기 해쉬값 생성단계(S500); 상기 제 2해쉬값과 제 4해쉬값의 일치 여부를 비교하는 제 1비교단계(S600); 상기 제 1비교단계에서 일치하는 것으로 판단된 경우, 제 1해쉬값을 제 2기기로 전송하는 제 1해쉬값 전송단계(S700); 를 포함하여 구성되며, 상기 제 2기기에서, 상기 제 1해쉬값과 제 3해쉬값의 일치 여부를 비교하는 제 2비교단계(S800); 를 통하여, 상기 제 2비교단계에서 일치하는 것으로 판단된 경우, 그 판단 결과를 제 1기기로 전송하고, 상기 판단 결과를 수신한 제 1기기는 제 2기기와의 암호화 및 복호화 기능 검증이 완료된 것으로 판단하는 것을 특징으로 한다.

Description

사물 간 통신 네트워크에서의 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 기능 검증 방법{Generation of device individual session key in inter-object communication network and verification of encryption and decryption function between devices using it}
본 발명은 사물 간 보안 통신에 관한 것으로서, 보다 상세하게는 사물 기기간의 보안 통신 전 기기 개별 세션키를 생성하고, 이를 이용하여 기기 간의 암호화 및 복호화 기능을 검증하는 방법에 관한 것이다.
스마트 기기들이 발달함에 따라 스마트폰, 스마트 패드, 스마트센서, 스마트TV, 또는 스마트 자동차 등과 같은 다양한 스마트 기기들을 통해 인터넷 연결이 가능해 지면서 스마트 기기들이 실생활과 더욱 밀접해지고 있다.
현재, 전 세계적으로 약 100억 개의 사물이 인터넷에 연결되어 있으며, 2020년에는 약 500억 개의 사물이 인터넷에 연결될 것으로 추산되고 있다. 이러한 스마트 기기들이 발달함에 따라 M2M(Machine to Machine), loT(Internet of Things) 및 WoT(Web of Things) 등과 같은 사물 간 통신 네트워크에 대한 연구 또한 활발히 이루어지고 있다.
한편, 상기 IoT는 인터넷을 기반으로 한 사물 지능 통신 기술로서 자원 제한적인 센서를 포함한 서로 다른 기종의 스마트 기기 간의 상호 접속 네트워크를 제공하고자 하며, 이를 위해 IoT 환경에서는 컴퓨팅 파워, 메모리의 가용성, 배터리 파워, 통신 대역폭 등의 다양한 환경적 특수성이 고려되어야 한다.
IETF(Internet Engineering Task force) 표준화 기구의 LWIG(Light-Weight Implementation Guidance) 워킹 그룹에서는 IoT 환경을 구성하는 장치들을 자원의 제한적인 정도에 따라 클래스 0부터 클래스 2까지 구분하고 있다. 특히 Class 0에는 메모리가 10KiB 이하이고, 최대 적재 가능한 코드 크기가 100KiB 이하의 초경량화 기기들이 포함된다. Class 0에 포함된 장치들은 비용이나 효율성을 고려하여 LLN(Low Power Lossy Network)으로 분류되는 IEEE 802.15.4나 저 전력(Low Power) Wifi 등의 접속 기술을 사용한다.
서로 다른 기종의 스마트 기기들과 LLN환경이 인터넷과 결합된 IoT는 예를 들어 환경 모니터링, 에너지 관리 등의 다양한 영역에 적용될 수 있으며, 이 때 다양한 영역에 적용되어 서비스를 제공하기 위해서는 IoT 환경을 구성하고 있는 기기 간의 상호 인증, 메시지 송신 인증 및 정보의 기밀성 등이 필수적으로 제공되어야 한다.
이에 따라, IETF CORE 워킹 그룹에서는 IoT 환경을 위해 CoAP(Constrained Application Protocol)을 표준화 하고, 안전한 서비스 제공을 위해 기존 인터넷 환경에서 사용하던 보안 프로토콜인 TLS(Transport Layer Security) 프로토콜, DTLS(Datagram Transport Layer Security), HIP(Host Identify Protocol)등을 자원 제한적인 환경에 맞게 경량화하여 적용하는 방안을 모색하고 있다.
여기서, DTLS 프로토콜은, TLS 프로토콜을 기반으로 하여 암호화된 데이터그램을 전송할 수 있도록 해주는 UDP(User Datagram Protocol)를 위한 보안 프로토콜로서 UDP 프로토콜을 사용하는 사물인터넷 응용 분야에 보안성을 제공해준다.
그러나, 이러한 기존의 TLS(Transport Layer Security) 프로토콜이나 DTLS(Datagram Transport Layer Security) 프로토콜을 적용하는 보안 방식은 사용자 인증을 위한 인증서, 비대칭키 암호 모듈 등의 보안 기능을 제공하는 다양한 모듈이 구비되어야 하고, 기기 간의 세션키 공유를 위한 인증서 교환이나 추가적인 절차 등 많은 핸드쉐이킹을 필요로 하여 경량화 기기의 적용에는 한계가 있다.
본 발명은 상술한 문제점을 해결하기 위한 것으로서, 인증서나 비대칭키 암호 모듈 등 보안 기능을 제공하는 보안 모듈을 추가로 구비하지 않고 단일 보안 모듈만을 구비한 경량화 기기 간의 보안 검증을 수행하는 보안 검증 방법을 제공하고자 한다.
또한, 기기 개별로 세션키를 생성하고, 이를 이용하여 기기 간의 암호화 및 복호화 기능을 검증하는 방법을 제공하고자 한다.
본 발명에 따른 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 검증 시스템은, 상기 제 1기기(200)는, 사물 통신 네트워크를 통하여 제 2기기와 통신 연결하는 제 1 통신부(210); 제 1난수를 생성하는 제 1난수 생성부(220); 상기 제 2기기로부터 수신한 제 2난수와 상기 생성한 제 1난수를 이용하여 제 1, 2 세션키를 생성하는 제 1기기 세션키 생성부(230); 상기 생성한 제 1, 2 세션키를 이용하여 제 1, 2 해쉬값을 생성하는 제 1기기 해쉬값 생성부(240); 상기 생성한 제 2해쉬값과 상기 제 2기기로부터 수신한 제 4해쉬값의 일치 여부를 비교하여, 일치하는 경우 제 2기기로 제 1판단 신호를 전송하는 제 1비교부(250); 를 포함하여 구성되며, 상기 제 2기기는, 사물 통신 네트워크를 통하여 제 1기기와 통신 연결하는 제 2통신부(310); 제 2난수를 생성하는 제 2난수 생성부(320); 상기 제 1기기로부터 수신한 제 1난수와 상기 생성한 제 2난수를 이용하여 제 3, 4 세션키를 생성하는 제 2기기 세션키 생성부(330); 상기 생성한 제 3, 4 세션키를 이용하여 제 3, 4 해쉬값을 생성하는 제 2기기 해쉬값 생성부(340); 상기 생성한 제 3해쉬값과 상기 제 1기기로부터 수신한 제 1해쉬값의 일치 여부를 비교하는 제 2비교부(350); 를 포함하여 구성되며, 상기 제 2비교부의 비교 결과가 일치하는 경우, 제 1기기와 제 2기기 간의 보안 검증이 완료된 것으로 판단하는 것을 특징으로 한다.
한편, 상기 제 1기기는, 상기 제 2기기와의 미리 공유된 공유 비밀키(PSK)를 저장하는 제 1저장부(260); 상기 제 1난수 생성부에서 생성한 제 1난수를 공유 비밀키(PSK)로 암호화하는 제 1난수 암호화부(270); 상기 생성한 제 1해쉬값을 제 1세션키로 암호화하는 제 1해쉬값 암호화부(280); 를 더 포함하여 구성되며, 상기 암호화한 제 1난수 및 제 1해쉬값을 상기 제 1통신부를 통하여 제 2기기로 송신하는 것을 특징으로 한다.
한편, 상기 제 1기기 세션키 생성부는, 상기 제 1통신부를 통하여 제 2기기로부터 수신한 암호화된 제 2난수를 공유 비밀키(PSK)로 복호화하는 제 2난수 복호화부(232);를 포함하여 구성되며, 상기 생성한 제 1난수와 상기 복호화한 제 2난수를 이용하여 제 1, 2 세션키를 생성하는 것을 특징으로 한다.
한편, 상기 제 1비교부(250)는, 상기 제 1통신부를 통하여 제 2기기로부터 수신한 암호화된 제 4해쉬값을 제 2세션키로 복호화하는 제 4해쉬값 복호화부(252); 상기 생성한 제 2해쉬값과 상기 복호화한 제 4해쉬값이 일치하는 경우, 제 2세션키 및 제 4세션키의 동작 검증을 완료하는 제 1검증 신호를 생성하는 제 1검증 신호 생성부(254); 를 포함하여 구성되며, 상기 생성한 제 1검증 신호를 제 2기기로 전송하는 것을 특징으로 한다.
한편, 상기 제 2기기는, 상기 제 1기기와의 미리 공유된 공유 비밀키(PSK)를 저장하는 제 2저장부(360); 상기 제 2난수 생성부에서 생성한 제 2난수를 공유 비밀키(PSK)로 암호화하는 제 2난수 암호화부(370); 상기 생성한 제 4해쉬값을 상기 제 4세션키로 암호화하는 제 4해쉬값 암호화부(380); 를 더 포함하여 구성되며, 상기 암호화한 제 2난수 및 제 4해쉬값을, 상기 제 2통신부를 통하여 제 1기기로 전송하는 것을 특징으로 한다.
한편, 상기 제 2기기 세션키 생성부(330)는, 상기 제 2통신부를 통하여 제 1기기로부터 수신한 암호화된 제 1난수를 공유 비밀키(PSK)로 복호화하는 제 1난수 복호화부(332); 를 포함하여 구성되며, 상기 생성한 제 2난수와 상기 복호화한 제 1난수를 이용하여 제 3, 4 세션키를 생성하는 것을 특징으로 한다.
한편, 상기 제 2비교부(350)는, 상기 제 1기기로부터 제 1검증 신호를 수신하는 제 1검증 신호 수신부(352); 상기 제 1검증 신호를 수신한 경우, 제 2통신부를 통하여 제 1기기로부터 수신한 암호화된 제 1해쉬값을 제 3세션키로 복호화하는 제 1해쉬값 복호화부(354); 상기 생성한 제 3해쉬값과 상기 복호화한 제 1해쉬값이 일치하는 경우, 제 1세션키 및 제 3세션키의 동작 검증을 완료하는 제 2검증 신호를 생성하는 제 2검증 신호 생성부(356); 를 포함하여 구성되며, 상기 생성한 제 2검증 신호를 제 1기기로 전송하는 것을 특징으로 한다.
여기서, 상기 1기기는, 상기 제 2검증 신호를 수신한 경우 제 1기기와 제 2기기 간의 보안 검증이 완료된 것으로 판단하는 것을 특징으로 한다.
또한, 본 발명에 따른 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 검증 방법은, 상기 제 1기기에서, 제 1난수를 생성하여 제 2기기로 송신하는 제 1난수 전송단계(S100); 상기 제 2기기에서, 제 2난수를 생성하는 제 2난수 생성단계(S200); 상기 수신한 제 1난수와 상기 생성한 제 2난수를 이용하여 제 3, 4해쉬값을 생성하는 제 2기기 해쉬값 생성단계(S300); 상기 제 2난수와 제 4해쉬값을 제 1기기로 전송하는 제 2난수 및 제 4해쉬값 전송단계(S400); 를 포함하여 구성되고, 상기 제 1기기에서, 상기 생성한 제 1난수와 상기 수신한 제 2난수를 이용하여 제 1, 2해쉬값을 생성하는 제 1기기 해쉬값 생성단계(S500); 상기 제 2해쉬값과 제 4해쉬값의 일치 여부를 비교하는 제 1비교단계(S600); 상기 제 1비교단계에서 일치하는 것으로 판단된 경우, 제 1해쉬값을 제 2기기로 전송하는 제 1해쉬값 전송단계(S700); 를 포함하여 구성되며, 상기 제 2기기에서, 상기 제 1해쉬값과 제 3해쉬값의 일치 여부를 비교하는 제 2비교단계(S800); 를 통하여, 상기 제 2비교단계에서 일치하는 것으로 판단된 경우, 그 판단 결과를 제 1기기로 전송하고, 상기 판단 결과를 수신한 제 1기기는 제 2기기와의 암호화 및 복호화 기능 검증이 완료된 것으로 판단하는 것을 특징으로 한다.
한편, 상기 제 1기기에서, 상기 제 1난수 전송단계(S100)는, 상기 생성한 제 1난수를 공유 비밀키(PSK)로 암호화하는 제 1난수 암호화단계(S110); 를 포함하여 구성되는 것을 특징으로 한다.
한편, 상기 제 2기기 해쉬값 생성단계(S300)는, 상기 제 1기기로부터 수신한 암호화된 제 1난수를 공유 비밀키(PSK)로 복호화하는 제 1난수 복호화단계(S310); 상기 복호화한 제 1난수와 상기 생성한 제 2난수를 이용하여 제 3, 4세션키를 생성하는 제 2기기 세션키 생성단계(S320); 를 포함하여 구성되고, 상기 제 3, 4세션키를 이용하여 제 3, 4해쉬값을 생성하는 것을 특징으로 한다.
또한, 상기 제 2난수 및 제 4해쉬값 전송단계(S400)는, 상기 생성한 제 2난수를 공유 비밀키(PSK)로 암호화하는 제 2난수 암호화단계(S410); 상기 생성한 제 4해쉬값을 제 4세션키로 암호화하는 제 4해쉬값 암호화단계(S420); 를 포함하여 구성되며, 상기 암호화한 제 2난수 및 제 4해쉬값을 전송하는 것을 특징으로 한다.
한편, 상기 제 1기기 해쉬값 생성단계(S500)는, 상기 수신한 제 2난수를 공유 비밀키(PSK)로 복호화하는 제 2난수 복호화단계(S510); 상기 생성한 제 1난수와 상기 복호화한 제 2난수를 이용하여 제 1, 2세션키를 생성하는 제 1기기 세션키 생성단계(S520); 를 포함하여 구성되며, 상기 1, 2세션키를 이용하여 제 1, 2해쉬값을 생성하는 것을 특징으로 한다.
또한, 상기 제 1비교단계(S600)는, 상기 제 2기기로부터 수신한 암호화된 제 4해쉬값을 상기 제 2세션키로 복호화하는 제 4해쉬값 복호화단계(S610); 를 포함하여 구성되며, 상기 제 2해쉬값과 상기 복호화한 제 4해쉬값의 일치 여부를 비교하는 것을 특징으로 하고, 상기 제 1해쉬값 전송단계는, 상기 제 1해쉬값을 상기 제 1세션키로 암호화하는 제 1해쉬값 암호화단계(S710); 를 포함하여 구성되는 것을 특징으로 한다.
한편, 상기 제 2비교단계(S800)는, 상기 제 1기기로부터 수신한 암호화된 제 1해쉬값을 상기 제 3세션키로 복호화하는 제 1해쉬값 복호화단계(S810); 를 포함하여 구성되며, 상기 제 3해쉬값과 상기 복호화한 제 1해쉬값의 일치 여부를 비교하는 것을 특징으로 한다.
본 발명에 따른 보안 검증 방법을 적용함으로써, 별도의 인증서나 비대칭키 암호 모듈 등 보안 모듈을 추가로 구비하지 않고 단일 보안 모듈만을 탑재한 경량화 기기들로 구성된 IoT 환경에서도 안전한 보안 서비스를 제공할 수 있다.
또한, 본 발명에 따른 보안 검증 방법은, 경량화 기기 간의 상호 인증에 이용되는 난수 값을 이용하여 기기 개별로 세션키를 생성함으로써, 기존의 기기 간에 공통 세션키를 공유하기 위한 인증서 교환이나 추가적인 절차가 요구되지 않아 기기 간의 간소화된 보안 검증 절차를 제공할 수 있다.
또한, 하나의 기기가 생성한 난수와 다른 하나의 기기가 생성한 난수의 조합을 통하여 기기 개별로 세션키를 생성하고, 기기 별로 다른 암호키를 사용하므로 제 3자에 의한 메시지 변조 공격에도 효과적으로 대응할 수 있는 효과를 제공할 수 있다.
도 1은 본 발명에 따른 센서 네트워크의 구성을 개략적으로 보여주는 도면
도 2는 본 발명에 따른 기기 개별 세션키 생성 및 이를 이용한 암호화 및 복호화 기능을 검증하는 시스템 구성을 나타내는 블록도
도 3은 본 발명에 따른 기기 개별 세션키 생성 및 이를 이용한 암호화 및 복호화 기능을 검증하는 방법을 나타내는 동작 흐름도
도 4는 종래의 단일 세션키를 이용한 암호화 방식을 나타내는 도면
도 5는 본 발명에 따른 기기 개별 세션키를 이용한 암호화 방식을 나타내는 도면
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시 예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면부호를 붙였다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예컨대, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
명세서 전체에서, 어떤 부분이 다른 부분과 “연결”되어 있다고 할 때, 이는 “직접적으로 연결”되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 “전기적으로 연결”되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 “포함”한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 본원 명세서 전체에서 사용되는 정도의 용어 “~(하는) 단계” 또는 “~의 단계”는 “~를 위한 단계”를 의미하지 않는다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
1. 본 발명의 시스템 및 방법 개요
우선, 본 발명에 대해 구체적으로 설명하기에 앞서, 본 발명이 적용되는 사물 간 통신 네트워크에 구성에 대하여 참고적으로 간략히 설명하도록 한다.
ETSI(European Telecommunications Standards Institute)는 객체들간의 통신과 관련하여 M2M(Machine to Machine)을 키워드로 표준화 작업을 진행하고 있고, ITU-T(International Telecommunications Union Telecommunication)의 경우 IoT(Internet of Things) 혹은 MOC(Machine Oriented Communication)라는 용어를 사용하고 있으나 대부분 M2M과 유사한 개념을 적용하고 있다.
IoT란 무선 통신이 가능한 각각의 사물들이 연결되어 지능화 통신을 하는 것을 의미한다. IoT는 각종 센서와 모바일 디바이스 등 서로 다른 기종(Heterogeneous) 간의 상호 접속 네트워크라는 특징을 가진다. 그러나 제조사별로 각각의 기기마다 다양한 사설표준이 만들어지고 구현되므로 서로 다른 기종의 디바이스 간에 원활한 상호운영을 하는 데에 어려움이 있다. 따라서 진정한 IoT 개념을 구현하기 위해서는 제조사나 기기 특성에 구애 받지 않는 단일화된 표준 플랫폼이 필요하다.
이러한 문제를 해결하고자 모든 사물을 Web으로 통합하는 WoT(Web of Things)라는 개념이 제안되었다. IETF(Internet Engineering Task force) CoRE(Constrained RESTful Environment) 워킹그룹에서는 WoT 환경에서 메시지 전송의 표준화 방안으로 CoAP(Constrained Application Protocol)라고 불리는 경량화된 웹 프로토콜의 표준화를 진행하고 있다. CoAP는 센서와 같은 제약이 많은 환경에서 웹 서비스를 제공하기 위한 프로토콜로 HTTP와 같이 REST(Representational State Transfer)형식을 기반으로 한다.
도 1은 상술한 바와 같은 WoT 환경의 센서 네트워크의 구성을 간략하게 나타내는 도면이다.
상기 도 1을 참조하면, WoT 환경의 센서 네트워크(100)는 크게 LLN(Low-power, Lossy Network)영역(110)과 인터넷(Internet)영역(120)으로 구분되고, CoAP을 지원하는 센서(130), CoAP을 지원하지 않는 레거시 디바이스(140), 모바일 게이트웨이(150), 인터넷 환경의 서버(160), 및 클라이언트(170)를 포함한다. WoT 환경에서 센서(130, 140)들은 기존 센서 네트워크에 포함된 센서들과는 달리 정보를 요청 받고 제공하는 역할 뿐만 아니라 정보를 요청할 수도 있다.
이 때, 각 센서들(130, 140)은 모바일 게이트웨이(150)와 단일홉(Hop)으로 연결되어 있다.
CoAP 표준에서는 이러한 WoT 환경의 센서 네트워크에서 종단 간 보안을 제공하기 위한 한 방안으로 PSK(Pre-Shared Key)를 이용한 DTLS(Datagram Transport Layer Security) 프로토콜을 제안한 바 있지만, DTLS 프로토콜을 이용한 인증, 세션키 분배과정은 많은 핸드쉐이킹 메시지로 LLN 영역(110)에 적용하기에는 적합하지 않다.
따라서, 본 발명은 도 1에 도시된 WoT 환경의 센서 네트워크에서 LLN 영역(110)과 Internet 영역(120) 중 LLN 영역(110)에서 센서(130, 140)들 간 또는 센서(130, 140)와 모바일 게이트웨이(150) 간의 보안 통신 전 기기의 개별 생성 세션키를 이용하여 암호화 및 복호화 기능 검증 방법을 제안하고자 한다.
이하, 도면을 참조하여 본 발명에 대하여 상세히 설명하도록 한다.
2. 본 발명에 따른 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 기능 검증 시스템
도 2는 본 발명에 따른 기기 간의 보안 검증 시스템 구성을 나타내는 블록도이다.
상기 도 2를 참조하면, 무선 통신 네트워크로 연결되는 제 1기기(200)와 제 2기기(300)로 구성될 수 있다. 여기서, 제 1기기 및 제 2기기 중 하나는 도 1에 도시된 모바일 게이트웨이(170)이고, 다른 하나는 도 1에 도시된 센서(130, 140)일 수 있다.
2.1. 제 1기기(200)
가. 통신부(210)
상기 제 1기기(200)는, 사물 통신 네트워크를 통하여 제 2기기(300)와 통신 연결하는 제 1통신부(210)가 구비되어, 상기 제 1통신부(210)를 통하여 제 2기기(300)와 보안 검증을 위한 각종 데이터 공유가 이루어질 수 있다.
나. 제 1난수 생성부 (220)
제 1난수 생성부(220)는, 제 1난수를 생성하는 구성이다. 상기 제 1난수 생성부(220)는 난수 생성기(random code generator)를 제 1난수 값을 생성할 수 있다.
다. 제 1기기 세션키 생성부 (230)
제 1기기 세션키 생성부(230)는, 제 1기기의 세션키(Session Key)를 생성하는 구성이다. 상기 제 1기기 세션키 생성부(230)는 제 2기기(300)로부터 수신한 제 2난수와 상기 제 1난수 생성부(220)에서 생성한 제 1난수를 이용하여 제 1 세션키(SKey 1)와 제 2세션키(SKey 2)를 생성할 수 있다.
이 때, 제 2기기(300)로부터 수신한 제 2난수는 암호화된 상태로 제 1기기의 세션키를 생성하기 위해서는 상기 암호화된 제 2난수를 복호화해야 하며, 이를 제 1기기 세션키 생성부(230)의 제 2난수 복호화부(232)에서 수행할 수 있다.
상기 제 2난수 복호화부(232)는, 제 1저장부(260)에 저장된 제 1기기와 제 2기기 간의 사전에 공유하는 비밀키 값(pre-shared key, ‘PSK’), 즉 공유 비밀키(PSK)로 제 2난수를 복호화할 수 있다. 따라서, 제 1기기 세션키 생성부(230)는 제 1난수 생성부(220)에서 생성한 제 1난수와 제 2난수 복호화부(232)에서 복호화한 제 2난수를 이용하여 제 1, 2세션키(SKey 1, SKey 2)를 생성할 수 있다.
제 1기기 세션키 생성부(230)에서 제 1, 2세션키를 생성하는 과정을 도식화하면 아래의 식 1, 2로 표현할 수 있다.
식 1: SKey 1 = kdf(n1, n2)
식 2: SKey 2 = kdf(n2, n1)
여기서, kdf(Key Definition Function)는 키 정의 함수를 나타내고, n1는 제 1난수를, n2는 제 2난수를 나타낸다. SKey1는 n1+n2(문자열 덧붙이기)를 공유 비밀키(PSK)로 암호화 후, 첫 16byte(또는 32byte)를 키로 설정하는 것이며, SKey 2는 n2+n1(문자열 덧붙이기)를 공유 비밀키(PSK)로 암호화 후, 첫 16byte(또는 32byte)를 키로 설정하는 것이다.
이 때, 상기 제 1세션키(SKey 1)와 제 2세션키(SKey 2)는 제 1난수(n1)와 제 2난수(n2)로부터 생성되지만, 하나의 키에서 다른 키를 생성하거나 유도해 낼 수는 없다.
라. 제 1기기 해쉬값 생성부 (240)
제 1기기 해쉬값 생성부(240)는, 상기 제 1기기 세션키 생성부(230)를 통하여 제 1기기의 제 1, 2세션키(SKey 1, SKey 2)가 생성되면, 이들을 이용하여 제 1, 2해쉬값(Hash 1, Hash 2)을 생성할 수 있다. 여기서, 상기 해쉬값을 생성하는 방식은 공지의 기술을 사용하여 생성한다.
마. 제 1비교부 (250)
제 1비교부(250)는, 상기 제 1기기 해쉬값 생성부(240)에서 생성한 해쉬값 중 제 2해쉬값(Hash 2)과 제 2기기(300)로부터 수신한 제 4해쉬값(Hash 4)이 동일한지를 비교하여, 그 판단 결과를 산출하는 구성이다.
상기 제 1비교부(250)에서 제 2해쉬값(Hash 2)과 제 4해쉬값(Hash 4)의 일치 여부를 비교하기 위해서는, 제 2기기(300)로부터 수신한 암호화된 제 4해쉬값(Hash 4’)을 복호화해야 하며, 이는 제 4해쉬값 복호화부(252)에 의해 수행될 수 있다.
상기 제 4해쉬값 복호화부(252)는, 상기 제 1기기 세션키 생성부(230)에서 생성된 세션키 중 제 2세션키(SKey 2)로 제 4해쉬값(Hash 4’)을 복호화할 수 있다.
따라서, 제 1비교부(250)는, 상기 제 1기기 해쉬값 생성부(240)에서 생성한 제 2해쉬값(Hash 2)과 상기 제 4해쉬값 복호화부(252)에서 복호화한 제 4해쉬값(Hash 4)의 일치 여부를 비교할 수 있다.
이 때, 상기 제 2해쉬값(Hash 2)과 제 4해쉬값(Hash 4)이 일치하는 경우, 제 2세션키(SKey 2)와 제 4세션키(SKey 4)의 동작이 정상적으로 이루어진 것으로 판단하고, 제 1검증 신호 생성부(254)에서 제 2세션키 및 제 4세션키 동작 검증 완료를 의미하는 제 1검증 신호를 생성할 수 있다.
따라서, 제 1비교부(250)는 제 1검증 신호를 제 1통신부(210)를 통하여 제 2기기(300)로 전송함으로써 제 2세션키 및 제 4세션키의 동작 검증이 완료됨을 제 2기기로 제공할 수 있다.
바. 제 1저장부(260)
제 1저장부(260)는, 제 1기기와 제 2기기 간의 사전에 공유한 공유 비밀키(PSK)를 저장하는 구성이다.
사. 제 1난수 암호화부 (270)
제 1난수 암호화부(270)는, 상기 제 1난수 생성부(220)에서 생성한 제1 난수를 암호화하는 구성이다. 상기 제 1난수 암호화부(270)는 제 1저장부(260)에 저장된 공유 비밀키(PSK)로 제 1난수를 암호화할 수 있다.
아. 제 1해쉬값 암호화부 (280)
제 1해쉬값 암호화부(280)는, 상기 제 1기기 해쉬값 생성부(240)에서 생성한 제 1해쉬값을 암호화하는 구성이다. 상기 제 1해쉬값 암호화부(280)는 제 1기기 세션키 생성부(230)에서 생성한 세션키 중 제 1세션키(SKey 1)로 제 1해쉬값(Hash 1)을 암호화할 수 있다.
상기 제 1난수 암호화부(270)와 제 1해쉬값 암호화부(280)는, 제 1기기에서 생성한 제 1난수와 제 1해쉬값을 제 2기기로 전송하기 위하여 각각 암호화를 수행하는 것이다.
따라서, 이들을 통하여 공유 비밀키(PSK)와 제 1세션키로 각각 암호화한 제 1난수와 제 1해쉬값(Hash 1’)은 제 1통신부(210)를 통하여 제 2기기로 전송하게 된다.
2.2. 제 2기기(300)
가. 제 2통신부(310)
상기 제 2기기(300)는, 제 1기기와 마찬가지로 사물 통신 네트워크를 통하여 제 1기기와의 통신을 연결하는 제 2통신부(310)를 포함하여 구성된다. 따라서, 상기 제 2통신부(310)를 통하여 제 1기기와의 보안 검증을 위한 데이터 공유가 이루어질 수 있다.
나. 제 2난수 생성부 (320)
제 2난수 생성부(320)는, 제 2난수를 생성하는 구성이다. 상기 제 2난수 생성부(320)는, 제 1기기의 제 1난수 생성부(220)와 마찬가지로 난수 생성기(random code generator)를 제 2난수 값을 생성할 수 있다.
다. 제 2기기 세션키 생성부 (330)
제 2기기 세션키 생성부(330)는, 제 2통신부(310)를 통하여 제 1기기로부터 수신한 제 1난수와 상기 제 2난수 생성부(220)에서 생성한 제 2난수를 이용하여 제 2기기의 세션키를 생성하는 제 3, 4세션키(SKey 3, SKey 4)를 생성하는 구성이다.
이 때, 제 1기기(200)로부터 수신한 제 1난수는 암호화된 상태로, 제 2기기의 세션키를 생성하기 위해서는 상기 암호화된 제 1난수를 복호화해야 하며, 이를 제 2기기 세션키 생성부(330)의 제 1난수 복호화부(332)에서 수행할 수 있다.
상기 제 1난수 복호화부(332)는, 제 2저장부(360)에 저장된 제 1기기와 제 2기기 간의 사전에 공유하는 비밀키 값(pre-shared key, ‘PSK’), 즉 공유 비밀키(PSK)로 제 1난수를 복호화할 수 있다. 따라서, 제 2기기 세션키 생성부(330)는 제 2난수 생성부(320)에서 생성한 제 2난수와 제 1난수 복호화부(332)에서 복호화한 제 1난수를 이용하여 제 3, 4세션키(SKey 3, SKey 4)를 생성할 수 있다.
제 2기기 세션키 생성부(330)에서 제 3, 4세션키를 생성하는 과정을 도식화하면 아래의 식 3, 4로 표현할 수 있다.
식 3: SKey 3 = kdf(n1, n2)
식 4: SKey 4 = kdf(n2, n1)
여기서, 제 1기기 세션키 생성부(230)에서 설명한 바와 마찬가지로, kdf(Key Definition Function)는 키 정의 함수를 나타내고, n1는 제 1난수를, n2는 제 2난수를 나타낸다. SKey3은 n1+n2(문자열 덧붙이기)를 공유 비밀키(PSK)로 암호화 후, 첫 16byte(또는 32byte)를 키로 설정하는 것이며, SKey 4는 n2+n1(문자열 덧붙이기)를 공유 비밀키(PSK)로 암호화 후, 첫 16byte(또는 32byte)를 키로 설정하는 것이다.
이 때, 상기 제 3세션키(SKey 3)와 제 4세션키(SKey 4)는 제 1난수(n1)와 제 2난수(n2)로부터 생성되지만, 하나의 키에서 다른 키를 생성하거나 유도해 낼 수는 없다.
라. 제 2기기 해쉬값 생성부 (340)
제 2기기 해쉬값 생성부(340)는, 상기 제 2기기 세션키 생성부(330)를 통하여 제 2기기의 제 3, 4세션키(SKey 3, SKey 4)가 생성되면, 이들을 이용하여 제 3, 4해쉬값(Hash 3, Hash 4)을 생성할 수 있다. 여기서, 상기 해쉬값을 생성하는 방식은 통상의 기술자가 인지하고 있는 공지 기술을 이용하여 생성한다.
마. 제 2비교부 (350)
제 2비교부(350)는, 상기 제 2기기 해쉬값 생성부(340)에서 생성한 해쉬값 중 제 3해쉬값(Hash 2)과 제 1기기(200)로부터 수신한 제 1해쉬값(Hash 1)을 비교하여, 일치 여부를 판단하는 구성이다.
상기 제 2비교부(350)에서 제 1해쉬값(Hash 1)과 제 3해쉬값(Hash 3)의 일치 여부를 비교하기 위해서는, 제 1기기(200)로부터 수신한 암호화된 제 1해쉬값(Hash 1’)을 복호화 해야 하며, 이는 제 1해쉬값 복호화부(354)에 의해 수행될 수 있다.
상기 제 1해쉬값 복호화부(354)는, 상기 제 2기기 세션키 생성부(330)에서 생성된 세션키 중 제 3세션키(SKey 3)로 제 1해쉬값(Hash 1’)을 복호화할 수 있다.
따라서, 제 2비교부(350)는, 상기 제 2기기 해쉬값 생성부(340)에서 생성한 제 3해쉬값(Hash 3)과 상기 제 1해쉬값 복호화부(254)에서 복호화한 제 1해쉬값(Hash 1)의 일치 여부를 비교할 수 있다.
여기서, 상기 제 1해쉬값 복호화부(354)는, 제 1검증 신호 수신부(352)에서 제 1기기로부터 제 2세션키(SKey 2) 및 제 4세션키(SKey 4)의 동작 검증이 완료됨을 알리는 제 1검증 신호를 수신하는 경우 동작한다.
즉, 제 1기기에서 제 2세션키(SKey 2) 및 제 4세션키(SKey 4)의 동작 검증이 완료되면, 제 2기기에서 제 1세션키(SKey 1)와 제3세션키(SKey 3)의 동작 검증을 수행하는 것이다.
이 때, 상기 제 1해쉬값(Hash 1)과 제 3해쉬값(Hash 3)이 일치하는 경우, 제 1세션키(SKey 1) 및 제 3해쉬값(Hash 3)의 동작이 정상적으로 이루어진 것으로 판단하여, 제 2검증 신호 생성부(356)에서 제 1세션키 및 제 3세션키의 동작 검증 완료를 의미하는 제 2검증 신호를 생성할 수 있다.
상기 제 2검증 신호가 생성되면, 제 2비교부(350)는 제 2통신부(310)를 통하여 제 2검증 신호를 제 1기기(200)로 전송함으로써 제 1세션키 및 제 3세션키 의 동작 검증이 완료됨을 제 1기기로 제공할 수 있다.
후에, 상기 제 2검증 신호를 수신한 제 1기기는, 제 1세션키 및 제 3세션키의 동작이 완료되었음을 확인함으로써 기기 개별 세션키가 생성되고, 이를 이용한 제 1기기와 제 2기기 간의 암호화 및 복호화 기능이 정상적으로 동작한 한 것으로 판단한다. 따라서, 도면에는 별도로 도시하지 않았지만 제 1기기와 제 2기기 간의 암호화 및 복호화 기능이 검증된 것으로 판단하여 제 2기기와의 보안 통신을 시작하도록 제어부에 통신 시작 신호를 제공할 수 있다.
바. 제 2저장부(360)
제 2저장부(360)는, 제 1기기와 제 2기기 간의 사전에 공유한 비밀키(PSK)를 저장하는 구성이다.
사. 제 2난수 암호화부 (370)
제 2난수 암호화부(370)는, 상기 제 2난수 생성부(320)에서 생성한 제 2 난수를 암호화하는 구성이다. 상기 제 2난수 암호화부(370)는, 제 1기기와 마찬가지로 제 2저장부(360)에 저장된 공유 비밀키(PSK)로 제 2난수를 암호화할 수 있다.
아. 제 4해쉬값 암호화부 (380)
제 4해쉬값 암호화부(380)는, 제 2기기 해쉬값 생성부(340)에서 생성한 제 4해쉬값을 암호화하는 구성이다. 상기 제 4해쉬값 암호화부(380)는 제 2기기 세션키 생성부(330)에서 생성한 세션키 중 제 4세션키(SKey 4)로 제 4해쉬값(Hash 4)을 암호화할 수 있다.
상기 제 2난수 암호화부(370)와 제 4해쉬값 암호화부(380)는, 제 2기기에서 생성한 제 2난수와 제 4해쉬값을 제 1기기로 전송하기 위하여 각각 암호화를 수행하는 구성으로서, 이를 통하여 공유 비밀키(PSK)와 제 4세션키로 각각 암호화한 제 2난수와 제 4해쉬값(Hash 4’)은 제 2통신부(310)를 통하여 제 1기기로 전송하게 된다.
상기의 설명에서, 제 1기기의 제 1, 2세션키(SKey 1, SKey2) 및 제 2기기의 제 3, 4세션키(SKey 3, SKey 4)는 제 1난수(n1)와 제 2난수(n2)를 조합하여 생성되는 값이다. 즉, 제 1기기와 제 2기기에서 개별로 세션키를 생성하는 것을 설명하기 위하여 제 1, 2 세션키와 제 3, 4세션키로 구분하였지만, 이들은 제 1기기와 제 2기기 간에 서로 공유한 제 1기기에서 생성한 제 1난수(n1)와 제 2기기에서 생성한 제 2난수(n2)를 조합하여 생성한 값이기 때문에 제 1세션키는 제 3세션키와, 제 2세션키는 제 4세션키와 각각 대응하는 동일한 값이어야 한다.
또한, 제 1, 2해쉬값과 제 3, 4해쉬값은 제 1,2세션키와 제 3, 4세션키들로부터 생성된 값이므로 이 또한 제 1기기와 제 2기기에서 각각 해쉬값을 생성하는 것을 설명하기 위하여 그 지칭 숫자를 구분한 것이다. 따라서, 제 1 해쉬값은 제 3해쉬값과, 제 2해쉬값은 제 4해쉬값과 각각 대응하는 동일한 값이어야 한다.
3. 본 발명에 따른 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 기능 검증 방법
도 3을 참조하여, 상기에서 설명한 시스템의 각 구성을 통한 제 1기기와 제 2기기 간의 개별 세션키 생성 및 이를 암호화 및 복호화 기능을 검증하는 절차를 설명하도록 한다,
가. 제 1난수 전송단계(S100)
우선, 제 1기기(200)에서 제 1난수를 생성하고, 이를 제 2기기로 전송하는 제 1난수 전송단계(S100)가 수행된다. 이 때, 상기의 시스템 구성에서 설명한 바와 같이 제 1난수 생성부(220)에서 제 1난수를 생성하며, 제 1통신부(210)를 통하여 제 2기기로 생성한 제 1난수를 전송할 수 있다.
여기서, 상기 제 1난수 전송단계(S100)는, 제 1난수를 공유 비밀키(PSK)로 암호화하는 제 1난수 암호화단계(S110)를 포함하여 구성된다.
따라서, 제 1난수 전송단계(S100)를 통하여 공유 비밀키(PSK)로 암호화한 제 1난수를 제 2기기로 전송한다.
나. 제 2난수 생성단계(S200)
제 1기기(200)에서 제 1난수 전송단계(S100) 동작 후, 제 2기기(300)에서는 제 2통신부(310)를 통하여 암호화된 제 1난수를 수신하고, 제 2난수를 생성하는 제 2난수 생성단계(S200)가 수행된다.
다. 제 2기기 해쉬값 생성단계(S300)
제 2기기는, 제 2난수를 생성하면, 상기 제 1기기로부터 수신한 제 1난수와 상기 생성한 제 2난수를 이용하여 제 3, 4해쉬값을 생성하는 제 2기기 해쉬값 생성단계(S300)가 수행되며, 그 세부적인 단계는 아래와 같이 구성된다.
1) 제 1난수 복호화단계(S310)
우선 해쉬값을 생성하기 위하여 상기 제 1기기로부터 수신한 암호화된 제 1난수를 공유 비밀키(PSK)로 복호화하는 제 1난수 복호화단계(S310)가 동작된다.
2) 제 2세션키 생성단계(S320)
제 1난수를 복호화한 후, 상기 복호화한 제 1난수와 상기 제 2기기에서 생성한 제 2난수를 조합하여 제 2기기의 세션키를 생성하는 제 2기기 세션키 생성단계(S320)가 수행된다. 이 때, 상기 제 1난수(n1)와 제 2난수(n2)의 조합을 통하여 두 개의 세션키 즉, 3, 4세션키(SKey 3, SKey 4)를 생성한다.
상기 제 3, 4세션키를 생성하면, 이들을 이용하여 제 3, 4해쉬값을 생성할 수 있는 것이다. 여기서, 해쉬값을 생성하는 방법은 통상의 기술자가 인지하고 있는 공지의 기술을 이용한다.
라. 제 4해쉬값 전송단계(S400)
제 2기기에서, 상기 제 3, 4해쉬값을 생성하면, 상기 생성한 제 2난수와 제 4해쉬값을 제 1기기로 전송하는 제 2난수 및 제 4해쉬값 전송단계(S400)가 수행된다. 상기 제 2난수와 제 4해쉬값을 제 1기기로 전송하기 위한 각 세부단계로 아래와 같이 구성된다.
1) 제 2난수 암호화단계(S410)
상기 제 2기기에서 생성한 제 2난수를 공유 비밀키(PSK)로 암호화하는 단계이다.
2) 제 4해쉬값 암호화단계(S420)
상기 제 2기기 해쉬값 생성단계(S300)를 통하여 생성된 해쉬값 중 제 4해쉬값을 제 4세션키로 암호화하는 단계이다.
따라서, 상기의 단계를 통하여 공유 비밀키(PSK)와 제 4세션키로 각각 암호화한 제 2난수 및 제 4해쉬값을 제 2통신부(310)를 통하여 제 1기기로 전송할 수 있다.
마. 제 1기기 해쉬값 생성단계(S500)
상기 제 1기기는, 제 1통신부(210)를 통하여 제 2기기로부터 암호화된 제 2난수와 제 4해쉬값을 수신하면, 상기 제 1난수 생성단계(S100)를 통하여 생성한 제 1난수와 상기 수신한 제 2난수를 이용하여 제 1기기의 해쉬값을 생성하는 제 1기기 해쉬값 생성단계(S500)를 수행한다. 상기 제 1기기 해쉬값을 생성하기 위한 그 세부단계는 아래와 같이 구성된다.
1) 제 2난수 복호화단계(S510)
우선, 제 1기기로부터 수신한 암호화된 제 2난수를 복호화하는 제 2난수 복호화단계(S510)를 수행한다. 이는 제 1저장부(260)에 저장되어 있는 제 1기기와 제 2기기 간에 미리 공유된 공유 비밀키(PSK)로 제 2난수를 복호화한다.
2) 제 1기기 세션키 생성단계(S520)
상기 제 2난수를 복호화한 후, 상기 생성한 제 1난수와 상기 복호화한 제 2난수를 이용하여 제 1기기의 세션키를 생성하는 제 1기기 세션키 생성단계(S520)를 수행한다. 상기 세션키는 제 1난수와 제 2난수를 조합하여 두 개의 세션키 즉, 제 1, 2 세션키를 생성한다.
따라서, 상기 생성한 제 1, 2세션키를 이용하여 제 1기기의 제 1, 2해쉬값을 생성할 수 있다. 여기서, 해쉬값을 생성하는 방식은 상기에서 설명한 바와 같이 통상의 기술자가 인지하고 있는 공지의 기술을 이용하여 생성한다.
바. 제 1비교단계(S600)
상기 제 1기기는 제 1, 2해쉬값을 생성하면, 제 2해쉬값과 상기 제 2기기로부터 수신한 제 4해쉬값의 일치 여부를 비교하는 제 1비교단계(S600)를 수행한다.
이를 수행하기 위해서는, 상기 제 2기기로부터 수신한 암호화된 제 4해쉬값을 제 2세션키로 복호화하는 제 4해쉬값 복호화단계(S610) 후, 제 2해쉬값과 복호화한 제 4해쉬값이 동일한지를 비교한다. 그 비교 결과, 제 2해쉬값과 복호화한 제 4해쉬값이 일치하는 것으로 판단되면 제 1기기는 제 2세션키 및 4세션키가 정상적으로 생성 완료되었으며 이에 대한 동작 검증이 완료된 것으로 판단할 수 있다.
사. 제 1해쉬값 전송단계(S700)
따라서, 제 2세션키 및 제 4세션키 생성 및 동작 검증이 완료된 것으로 판단되면, 제 1해쉬값을 제 1세션키로 암호화하는 제 1해쉬값 암호화단계(S710)가 수행되고, 암호화한 제 1해쉬값을 제 2기기로 전송하는 제 1해쉬값 전송단계(S700)가 동작된다.
이는, 제 1기기에서 비교 판단 결과, 제 1기기와 제 2기기에서 각각 생성한 제 2세션키와 제 4세션키의 생성 및 동작 검증이 완료되었으므로 다른 세션키, 즉 제 1세션키와 제 3세션키의 검증을 제 2기기에서 수행하기 위하여 제 1세션키로 암호화한 제 1해쉬값을 제 2기기로 전송하는 것이다.
아. 제 2비교단계(S800)
상기 제 2기기에서는, 상기 제 1기기로부터 제 1해쉬값을 수신하면, 수신한 제 1해쉬값과 생성한 제 3해쉬값의 일치 여부를 비교하는 제 2비교단계(S800)를 수행된다.
이를 위해서, 우선 제 1기기로부터 수신한 암호화된 제 1해쉬값을 복호화하는 제 1해쉬값 복호화단계(S810)를 수행하며, 이는 제 3세션키로 제 1해쉬값을 복호화한다.
복호화 후, 제 3해쉬값과 복호화한 제 1해쉬값이 동일한지를 비교하며, 상기 제 3해쉬값과 제 1해쉬값이 일치하는 경우, 제 2기기는 제 1세션키 및 제 3세션키가 정상적으로 생성되었으며 이에 대한 동작 검증이 완료된 것으로 판단한다. 따라서, 이에 대한 판단 결과를 제 1기기로 제공하고, 이를 제공 받은 제 1기기는 제 2 세션키 및 제 4세션키 뿐만 아니라 제 1세션키 및 제 3세션키 또한 정상적으로 생성되었으며, 기기 개별로 생성한 세션키를 이용한 제 1기기와 제 2기기와의 암호화 및 복호화 기능 검증이 완료된 것으로 판단한다.
따라서, 제 1기기와 제 2기기 간의 보안 통신을 시작하도록 제어부(미도시)에 통신 시작 신호를 제공할 수 있다.
상기의 설명에서, 제 1기기의 제 1, 2세션키(SKey 1, SKey2) 및 제 2기기의 제 3, 4세션키(SKey 3, SKey 4)는 제 1난수(n1)와 제 2난수(n2)를 조합하여 생성되는 값이다. 즉, 제 1기기와 제 2기기에서 개별로 세션키를 생성하는 것을 설명하기 위하여 제 1, 2 세션키와 제 3, 4세션키로 구분하였지만, 이들은 제 1기기와 제 2기기 간에 서로 공유한 제 1기기에서 생성한 제 1난수(n1)와 제 2기기에서 생성한 제 2난수(n2)를 조합하여 생성한 값이기 때문에 제 1세션키는 제 3세션키와, 제 2세션키는 제 4세션키와 각각 대응하는 동일한 값이어야 한다.
또한, 제 1, 2해쉬값과 제 3, 4해쉬값은 제 1,2세션키와 제 3, 4세션키들로부터 생성된 값이므로 이 또한 제 1기기와 제 2기기에서 각각 해쉬값을 생성하는 것을 설명하기 위하여 그 지칭 숫자를 구분한 것이다. 따라서, 제 1 해쉬값은 제 3해쉬값과, 제 2해쉬값은 제 4해쉬값과 각각 대응하는 동일한 값이어야 한다.
도 4는 종래의 기기 간에 공유한 단일 세션키를 이용하여 암호화를 수행 방식을 간략하게 나타내는 도면이다. 이는, 하나의 단일 세션키로 데이터를 암호화 및 복호화하므로 하나의 데이터에서 하나의 암호화 결과만이 산출된다.
즉, 예를 들어 제 1기기에서 ‘ABC’라는 데이터를 단일 세션키(SKey)로 암호화하면 그 암호화 결과는 ‘X#!K’가 되고, 제 2기기에서 암호화된 ‘X#!K’ 데이터를 복호화 후, 다시 단일 세션키(SKey)로 암호화하면 그 암호화 결과 또한 ‘X#!K’가 되는 것이다. 이러한 경우에는 제 3자에 의한 메시지 변조 공격에 대응이 어려운 점이 있다.
도 5는 본 발명에 따른 기기 개별로 생성한 세션키를 이용하여 암호화를 수행 방식을 나타내는 도면으로, 제 1기기와 제 2기기가 개별로 생성한 두 개의 세션키를 이용하여 암호화를 수행한다.
즉, 예를 들어 제 1기기에서 ‘ABC’라는 데이터를 제 1세션키(SKey 1)로 암호화하면 ‘X#!K’의 암호화 결과가 산출된다. 이를 제 2기기로 전송하면, 제 2기기는 이를 제 1세션키(SKey 1)로 복호화하여 원래의 데이터‘ABC’를 산출하고, 이를 제 1세션키가 아닌 제 2세션키(SKey 2)로 암호화한다. 따라서, 제 1세션키 아닌 제 2세션키로 암호화하였으므로, 제 1세션키로 암호화한 결과와는 다른 ‘Y%#a’라는 암호화 결과로 제 1기기로 전송한다.
따라서, 하나의 동일 데이터라도 제 1기기와 제 2기기에서 각각 다른 세션키를 이용하여 암호화하므로 도 4의 방식과 달리 제 3자에 의한 메시지 변조 공격에 효과적으로 대응할 수 있어 향상된 보안성을 제공할 수 있다.
한편, 본 발명의 기술적 사상은 상기 실시 예에 따라 구체적으로 기술되었으나, 상기 실시 예는 그 설명을 위한 것이며, 그 제한을 위한 것이 아님을 주지해야 한다. 또한, 본 발명의 기술분야에서 당업자는 본 발명의 기술 사상의 범위 내에서 다양한 실시 예가 가능함을 이해할 수 있을 것이다.
100: 센서 네트워크 110: LNN 영역
120: 인터넷 영역
130, 140: 센서
150: 모바일 게이트웨이
160: 서버
170; 클라이언트
200: 제 1기기 210: 제 1통신부
220: 제 1난수 생성부
230: 제 1기기 세션키 생성부
240: 제 1기기 해쉬값 생성부
250: 제 1비교부
300: 제 2기기 310: 제 2통신부
320: 제 2난수 생성부
330: 제 2기기 세션키 생성부
340: 제 2기기 해쉬값 생성부
350: 제 2비교부

Claims (15)

  1. 무선 통신으로 링크되는 제 1기기와 제 2기기 간의 암호화 및 복호화 기능 검증 시스템에 있어서,
    상기 제 1기기는,
    사물 통신 네트워크를 통하여 제 2기기와 통신 연결하는 제 1통신부(210);
    제 1난수를 생성하는 제 1난수 생성부(220);
    제 2기기로부터 수신한 제 2난수와 상기 생성한 제 1난수의 조합을 통하여 제 1, 2 세션키를 생성하는 제 1기기 세션키 생성부(230);
    상기 생성한 제 1, 2 세션키를 이용하여 제 1, 2 해쉬값을 생성하는 제 1기기 해쉬값 생성부(240);
    상기 생성한 제 2해쉬값과 제 2기기로부터 수신한 제 4해쉬값의 일치 여부를 비교하여, 일치하는 경우 제 2기기로 제 1검증 신호를 전송하는 제 1비교부(250);
    상기 제2 기기와의 미리 공유된 공유 비밀키(PSK)를 저장하는 제1 저장부(260);
    상기 제1 난수 생성부에서 생성한 제1 난수를 공유 비밀키(PSK)로 암호화하는 제1 난수 암호화부(270);
    상기 제1 기기 해쉬값 생성부에서 생성한 제1 해쉬값을 제1 세션키로 암호화하는 제1 해쉬값 암호화부(280);
    를 포함하여 구성되며,
    상기 제1 비교부(250)는,
    상기 제1 통신부를 통하여 제2 기기로부터 수신한 암호화된 제4 해쉬값을 제2 세션키로 복호화하는 제4 해쉬값 복호화부(252);
    상기 제1 기기 해쉬값 생성부에서 생성한 제2 해쉬값과 상기 제4 해쉬값 복호화부에서 복호화한 제4 해쉬값이 일치하는 경우, 제2 세션키 및 제4 세션키의 동작 검증을 완료하는 제1 검증 신호를 생성하는 제1 검증 신호 생성부(254);
    를 포함하여 구성되고,

    상기 제1 기기 세션키 생성부(230)는,
    상기 제1 통신부를 통하여 제2 기기로부터 수신한 암호화된 제2 난수를 공유 비밀키(PSK)로 복호화하는 제2 난수 복호화부(232);
    를 포함하여 구성되며,

    상기 제1 기기는,
    상기 제1 난수 암호화부에서 암호화한 제1 난수 및 상기 제1 해쉬값 암호화부에서 암호화한 제1 해쉬값을 상기 제1 통신부를 통하여 제2 기기로 전송하며,
    상기 제1 검증 신호 생성부에서 생성한 제1 검증 신호를 제2 기기로 전송하는 것을 특징으로 하고,

    상기 제 2기기는,
    사물 통신 네트워크를 통하여 제 1기기와 통신 연결하는 제 2통신부(310);
    제 2난수를 생성하는 제 2난수 생성부(320);
    제 1기기로부터 수신한 제 1난수와 상기 생성한 제 2난수의 조합을 통하여 제 3, 4 세션키를 생성하는 제 2기기 세션키 생성부(330);
    상기 생성한 제 3, 4 세션키를 이용하여 제 3, 4 해쉬값을 생성하는 제 2기기 해쉬값 생성부(340);
    상기 생성한 제 3해쉬값과 제 1기기로부터 수신한 제 1해쉬값의 일치 여부를 비교하는 제 2비교부(350);
    상기 제1 기기와의 미리 공유된 공유 비밀키(PSK)를 저장하는 제2 저장부(360);
    상기 제2 난수 생성부에서 생성한 제2 난수를 공유 비밀키(PSK)로 암호화하는 제2 난수 암호화부(370);
    상기 제2 기기 해쉬값 생성부에서 생성한 제4 해쉬값을 제4 세션키로 암호화하는 제4 해쉬값 암호화부(380);
    를 포함하여 구성되며,

    상기 제2 비교부(350)는,
    상기 제1 기기로부터 제1 검증 신호를 수신하는 제1 검증 신호 수신부(352);
    상기 제1 검증 신호를 수신한 경우, 상기 제2 통신부를 통하여 제1 기기로부터 수신한 암호화된 제1 해쉬값을 제3 세션키로 복호화하는 제1 해쉬값 복호화부(354);
    상기 제2 기기 해쉬값 생성부에서 생성한 제3 해쉬값과 상기 제1 해쉬값 복호화부에서 복호화한 제1 해쉬값이 일치하는 경우, 제1 세션키 및 제3 세션키의 동작 검증을 완료하는 제2 검증 신호를 생성하는 제2 검증 신호 생성부(356);
    를 포함하여 구성되고,

    상기 제2 기기 세션키 생성부(330)는,
    상기 제2 통신부를 통하여 제1 기기로부터 수신한 암호화된 제1 난수를 공유 비밀키(PSK)로 복호화하는 제1 난수 복호화부(332);
    를 포함하여 구성되며,

    상기 제2 기기는,
    상기 제2 비교부의 비교 결과가 일치하는 경우, 제1 기기와 제2 기기 간의 암호화 및 복호화 기능 검증이 완료된 것으로 판단하는 것을 특징으로 하며,
    상기 제2 검증 신호 생성부에서 생성한 제2 검증 신호를 제1 기기로 전송하는 것을 특징으로 하고,

    상기 제1 기기 세션키 생성부는, 아래의 식(1), (2)에 의해 제1, 2 세션키를 생성하는 것을 특징으로 하며,
    상기 제2 기기 세션키 생성부는, 아래의 식(3), (4)에 의해 제3, 4 세션키를 생성하는 것을 특징으로 하는 암호화 및 복호화 기능 검증 시스템.
    식 (1): SKey 1 = kdf(n1, n2)
    식 (2): SKey 2 = kdf(n2, n1)
    식 (3): SKey 3 = kdf(n1, n2)
    식 (4): SKey 4 = kdf(n2, n1)
    (kdf: Key Definition Function, SKey 1: 제1 세션키, SKey 2: 제2 세션키, SKey 3: 제3 세션키, SKey 4: 제4 세션키, n1: 제1 난수, n2:, 제2 난수, SKey 1 및 SKey 3은 n1+n2(문자열 덧붙이기)를 공유 비밀키(PSK)로 암호화 후, 첫 16byte(또는 32byte)를 키로 설정, SKey 2 및 SKey 4는 n2+n1(문자열 덧붙이기)을 공유 비밀키(PSK)로 암호화 후, 첫 16byte(또는 32byte)를 키로 설정)
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 청구항 1에 있어서,
    상기 제1 기기는, 상기 제2 기기로부터 제 2 검증 신호를 수신한 경우, 제 1기기와 제 2기기 간의 보안 검증이 완료된 것으로 판단하는 것을 특징으로 하는 암호화 및 복호화 기능 검증 시스템.
  9. 무선 통신으로 링크되는 제 1기기와 제 2기기 간의 암호화 및 복호화 기능을 검증하는 방법에 있어서,
    상기 제 1기기에서, 제 1난수를 생성하여 제 2기기로 송신하는 제 1난수 전송단계(S100);
    상기 제 2기기에서,
    제 2난수를 생성하는 제 2난수 생성단계(S200);
    상기 수신한 제 1난수와 상기 생성한 제 2난수를 이용하여 제 3, 4해쉬값을 생성하는 제 2기기 해쉬값 생성단계(S300);
    상기 제 2난수와 제 4해쉬값을 제 1기기로 전송하는 제 2난수 및 제 4해쉬값 전송단계(S400); 를 포함하여 구성되고,
    상기 제 1기기에서,
    상기 생성한 제 1난수와 상기 수신한 제 2난수를 이용하여 제 1, 2해쉬값을 생성하는 제 1기기 해쉬값 생성단계(S500);
    상기 제 2해쉬값과 제 4해쉬값의 일치 여부를 비교하는 제 1비교단계(S600); 상기 제 1비교단계에서 일치하는 것으로 판단된 경우, 제 1해쉬값을 제 2기기로 전송하는 제 1해쉬값 전송단계(S700); 를 포함하여 구성되며,
    상기 제 2기기에서,
    상기 제 1해쉬값과 제 3해쉬값의 일치 여부를 비교하는 제 2비교단계(S800); 를 포함하여 구성되고,

    상기 제1 기기에서,
    상기 제1 난수 전송단계(S100)는, 상기 생성한 제1 난수를 공유 비밀키(PSK)로 암호화하는 제1 난수 암호화단계(S110);
    를 포함하여 구성되며,
    상기 제1 기기 해쉬값 생성단계(S500)는,
    상기 제2 기기로부터 수신한 제2 난수를 공유 비밀키(PSK)로 복호화하는 제2 난수 복호화단계(S510);
    상기 생성한 제1 난수와 상기 복호화한 제2 난수를 이용하여 제1, 2 세션키를 생성하는 제1 기기 세션키 생성단계(S520);
    를 포함하여 구성되며,
    상기 제1 비교단계(S600)는,
    상기 제2 기기로부터 수신한 암호화된 제4 해쉬값을 상기 생성한 제2 세션키로 복호화하는 제4 해쉬값 복호화단계(S610);
    를 포함하여 구성되고,
    상기 제1 해쉬값 전송단계(S700)는,
    상기 생성한 제1 해쉬값을 상기 생성한 제1 세션키로 암호화하는 제1 해쉬값 암호화단계(S710);
    를 포함하여 구성되며,

    상기 제2 기기에서,
    상기 제2 기기 해쉬값 생성단계(S300)는,
    상기 제1 기기로부터 수신한 암호화된 제1 난수를 공유 비밀키(PSK)로 복호화하는 제1 난수 복호화단계(S310);
    상기 복호화한 제1 난수와 상기 생성한 제2 난수를 이용하여 제3, 4 세션키를 생성하는 제2 기기 세션키 생성단계(S320);
    를 포함하여 구성되고,
    상기 제2 난수 및 제4 해쉬값 전송단계(S400)는,
    상기 생성한 제2 난수를 공유 비밀키(PSK)로 암호화하는 제2 난수 암호화단계(S410);
    상기 제2 기기 해쉬값 생성단계를 통하여 생성된 제4 해쉬값을 제4 세션키로 암호화하는 제4 해쉬값 암호화단계(S420);
    를 포함하여 구성되고,
    상기 제2 비교단계(S800)는,
    상기 제1 기기로부터 수신한 암호화된 제1 해쉬값을 상기 생성한 제3 세션키로 복호화하는 제1 해쉬값 복호화단계(S810);
    를 포함하여 구성되고,

    상기 제2 기기는, 상기 제2 비교단계에서 제1 해쉬값과 제3 해쉬값을 비교한 결과, 상기 제1 해쉬값과 제3 해쉬값이 일치하는 것으로 판단된 경우, 그 판단 결과를 제1 기기로 전송하는 것을 특징으로 하며,
    상기 제1 기기에서, 상기 제1 기기 해쉬값 생성단계는, 상기 제1 기기 세션키 생성단계를 통하여 생성된 제1, 2 세션키를 이용하여 제1, 2 해쉬값을 생성하는 것을 특징으로 하고,
    상기 제2 기기에서, 상기 제2 기기 해쉬값 생성단계는, 상기 제2 기기 세션키 생성단계를 통하여 생성된 제3, 4 세션키를 이용하여 제3, 4 세션키를 생성하는 것을 특징으로 하고,
    상기 제1 기기 세션키 생성단계는, 아래의 식(1), (2)에 의해 제1, 2 세션키를 생성하는 것을 특징으로 하며,
    상기 제2 기기 세션키 생성단계는, 아래의 식(3), (4)에 의해 제3, 4 세션키를 생성하는 것을 특징으로 하는 암호화 및 복호화 기능 검증 방법.
    식 (1): SKey 1 = kdf(n1, n2)
    식 (2): SKey 2 = kdf(n2, n1)
    식 (3): SKey 3 = kdf(n1, n2)
    식 (4): SKey 4 = kdf(n2, n1)
    (kdf: Key Definition Function, SKey 1: 제1 세션키, SKey 2: 제2 세션키, SKey 3: 제3 세션키, SKey 4: 제4 세션키, n1: 제1 난수, n2: 제2 난수, SKey 1 및 SKey 3은 n1+n2(문자열 덧붙이기)를 공유 비밀키(PSK)로 암호화 후, 첫 16byte(또는 32byte)를 키로 설정, SKey 2 및 SKey 4는 n2+n1(문자열 덧붙이기)을 공유 비밀키(PSK)로 암호화 후, 첫 16byte(또는 32byte)를 키로 설정)
  10. 청구항 9에 있어서,
    상기 제 1기기는, 상기 제2 기기로부터 상기 제1 해쉬값과 제3 해쉬값이 일치한 것으로 판단된 판단 결과를 수신한 경우, 제2 기기와의 암호화 및 복호화 기능 검증이 완료된 것으로 판단하는 것을 특징으로 하는 암호화 및 복호화 기능 검증 방법.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
KR1020170132840A 2017-10-12 2017-10-12 사물 간 통신 네트워크에서의 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 기능 검증 방법 KR101886367B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170132840A KR101886367B1 (ko) 2017-10-12 2017-10-12 사물 간 통신 네트워크에서의 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 기능 검증 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170132840A KR101886367B1 (ko) 2017-10-12 2017-10-12 사물 간 통신 네트워크에서의 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 기능 검증 방법

Publications (1)

Publication Number Publication Date
KR101886367B1 true KR101886367B1 (ko) 2018-08-09

Family

ID=63251234

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170132840A KR101886367B1 (ko) 2017-10-12 2017-10-12 사물 간 통신 네트워크에서의 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 기능 검증 방법

Country Status (1)

Country Link
KR (1) KR101886367B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220064567A (ko) * 2020-11-12 2022-05-19 주식회사 케이티 양자 난수 기반의 가상 사설망을 구축하기 위한 장치 및 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080105872A (ko) * 2007-06-01 2008-12-04 삼성전자주식회사 세션 키를 이용한 인증 방법 및 이를 위한 장치
KR101284779B1 (ko) * 2006-10-10 2013-08-23 퀄컴 인코포레이티드 상호 인증을 위한 방법 및 장치
JP5405057B2 (ja) * 2008-06-19 2014-02-05 株式会社リコー 情報通信装置および公開鍵認証方法
US20150188704A1 (en) * 2013-12-27 2015-07-02 Fujitsu Limited Data communication method and data communication apparatus
JP2015128230A (ja) * 2013-12-27 2015-07-09 株式会社パレス興業 デバイス間暗号通信方法及びこれを用いたデータ通信方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101284779B1 (ko) * 2006-10-10 2013-08-23 퀄컴 인코포레이티드 상호 인증을 위한 방법 및 장치
KR20080105872A (ko) * 2007-06-01 2008-12-04 삼성전자주식회사 세션 키를 이용한 인증 방법 및 이를 위한 장치
JP5405057B2 (ja) * 2008-06-19 2014-02-05 株式会社リコー 情報通信装置および公開鍵認証方法
US20150188704A1 (en) * 2013-12-27 2015-07-02 Fujitsu Limited Data communication method and data communication apparatus
JP2015128230A (ja) * 2013-12-27 2015-07-09 株式会社パレス興業 デバイス間暗号通信方法及びこれを用いたデータ通信方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220064567A (ko) * 2020-11-12 2022-05-19 주식회사 케이티 양자 난수 기반의 가상 사설망을 구축하기 위한 장치 및 방법
KR102558457B1 (ko) * 2020-11-12 2023-07-20 주식회사 케이티 양자 난수 기반의 가상 사설망을 구축하기 위한 장치 및 방법

Similar Documents

Publication Publication Date Title
US11265709B2 (en) Efficient internet-of-things (IoT) data encryption/decryption
CN105530238B (zh) 用于安全对话建立和数据的加密交换的计算机实现系统和方法
CN107659406B (zh) 一种资源操作方法及装置
JP3816337B2 (ja) テレコミュニケーションネットワークの送信に対するセキュリティ方法
US9668230B2 (en) Security integration between a wireless and a wired network using a wireless gateway proxy
US7716483B2 (en) Method for establishing a communication between two devices
US11736304B2 (en) Secure authentication of remote equipment
CN104660602A (zh) 一种量子密钥传输控制方法及系统
CN107104977B (zh) 一种基于sctp协议的区块链数据安全传输方法
EP3213488A1 (en) End-to-end service layer authentication
KR101762013B1 (ko) Two factor 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법
WO2019178942A1 (zh) 一种进行ssl握手的方法和系统
KR101688118B1 (ko) 사물인터넷 환경에서의 보안 통신 장치 및 그 방법
KR101452124B1 (ko) 사물간 통신 네트워크에서 암호화 기반 기기 인증 및 세션키 생성 방법
CN110401530A (zh) 一种燃气表的安全通信方法、系统、设备和存储介质
KR20180130203A (ko) 사물인터넷 디바이스 인증 장치 및 방법
CN109194701B (zh) 一种数据处理方法及装置
US20220141004A1 (en) Efficient Internet-Of-Things (IoT) Data Encryption/Decryption
CN108353279A (zh) 一种认证方法和认证系统
WO2022161369A1 (zh) 一种光传送网的安全管理信息处理方法及装置
Hassani Karbasi et al. SINGLETON: A lightweight and secure end-to-end encryption protocol for the sensor networks in the Internet of Things based on cryptographic ratchets
CN107431691A (zh) 一种数据包传输方法、装置、节点设备以及系统
KR101886367B1 (ko) 사물 간 통신 네트워크에서의 기기 개별 세션키 생성 및 이를 이용한 기기 간의 암호화 및 복호화 기능 검증 방법
KR20180138349A (ko) 동적 세션키 생성을 위한 사물인터넷 단말 장치 및 동적 세션키 생성 방법
CN115459913A (zh) 一种基于量子密钥云平台的链路透明加密方法及系统

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant