KR102285310B1 - 세션 키를 생성하는 방법 및 그 전자장치 - Google Patents

세션 키를 생성하는 방법 및 그 전자장치 Download PDF

Info

Publication number
KR102285310B1
KR102285310B1 KR1020190005055A KR20190005055A KR102285310B1 KR 102285310 B1 KR102285310 B1 KR 102285310B1 KR 1020190005055 A KR1020190005055 A KR 1020190005055A KR 20190005055 A KR20190005055 A KR 20190005055A KR 102285310 B1 KR102285310 B1 KR 102285310B1
Authority
KR
South Korea
Prior art keywords
key
electronic device
signature
signature information
message
Prior art date
Application number
KR1020190005055A
Other languages
English (en)
Other versions
KR20200088595A (ko
Inventor
박종환
Original Assignee
상명대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 상명대학교산학협력단 filed Critical 상명대학교산학협력단
Priority to KR1020190005055A priority Critical patent/KR102285310B1/ko
Publication of KR20200088595A publication Critical patent/KR20200088595A/ko
Application granted granted Critical
Publication of KR102285310B1 publication Critical patent/KR102285310B1/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
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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
    • H04L9/3242Cryptographic 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 involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC

Landscapes

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

Abstract

세션 키(session key)를 생성하는 방법이 개시된다. 세션 키를 생성하는 방법은, 제1 전자장치에 대응하는 제1 ID(identification), 상기 제1 전자장치에 대응하는 제1 임시 서명 키, 상기 제1 전자장치에 대응하는 제1 서명 및 제1 난수에 기초하여 생성된 제1 키를 제2 전자장치로 송신하는 과정, 상기 제1 키에 기초하여 생성된 제2 서명 정보 및 상기 제2 전자장치에 대응하는 제2 ID를 수신하는 과정, 상기 제2 서명 정보에 기초하여, 제2 난수와 관련되는 제2 키를 획득하는 과정, 상기 제1 난수 및 상기 제2 키에 기초하여 제3 키를 생성하는 과정, 상기 제1 키, 상기 제2 키, 상기 제3 키, 상기 제1 ID 및 상기 제2 ID에 기초하여 제1 메시지를 생성하는 과정, 상기 제1 ID 및 상기 제1 메시지에 기초하여 제1 서명 정보를 생성하는 과정, 상기 생성된 제1 서명 정보를 제2 전자장치로 송신하는 과정 및 상기 제1 ID, 상기 제2 ID, 상기 제1 키, 상기 제2 키, 상기 제3 키, 상기 제1 서명 정보 및 상기 제2 서명 정보에 기초하여 세션 키를 생성하는 과정을 포함할 수 있다.

Description

세션 키를 생성하는 방법 및 그 전자장치{METHOD FOR GENERATING SESSION KEY AND ELECTRONIC APPARATUS THEREOF}
본 발명은 세션 키를 생성하는 방법 및 그 전자장치에 대한 것으로, 보다 상세하게는 사물인터넷(Internet of Things; IoT) 환경에서 세션 키(session key)를 효율적으로 생성하는 방법 및 그 전자장치에 대한 것이다.
사물인터넷이란, 각종 사물에 컴퓨터 칩과 통신 기능을 내장하여 인터넷에 연결하는 기술을 의미한다.
사용자는 사용자 단말을 이용하여 사물인터넷 기기를 원격으로 제어할 수 있다. 사용자 단말과 사물인터넷 기기는 무선 통신, 근거리 통신, 홈 네트워크 등 다양한 통신 기술, 통신 프로토콜 등으로 서로 연결될 수 있다.
한편, 사물인터넷 시스템은 통신(또는 무선 통신) 환경을 기초로 하기 때문에 송수신되는 메시지에 대한 신뢰성이 보장되어야 한다. 즉, 사물인터넷 시스템은 보안이 필수적이다. 사물인터넷 시스템에서는 정보 보안을 위해 송신자에서 수신자로 전달되는 메시지를 암호화하게 된다.
이러한 암호화를 위한 방법으로는 암호화와 복호화 시 동일한 키를 사용하는 대칭키 암호화 방법과 암호화를 위한 키(공개 키)와 복호화를 위한 키(비밀 키)를 다르게 사용하는 공개키 암호화 방법이 있다.
특히, 공개 키 암호화 기법은 암호화를 위한 공개 키와 복호화를 위한 비밀 키를 달리하여 사용하는 방법으로 비대칭적 암호화 기법이라고도 지칭된다. 예를 들어, 사용자는 자신의 공개 키를 공개키 디렉토리에 공개할 수 있다. 이 경우, 사용자에게 비밀성이 요구되는 메시지를 보내려는 다른 사용자는 공개 키를 이용하여 메시지를 암호화하여 전송할 수 있다. 공개 키로 암호화된 정보는 이에 대응하는 키, 즉 비밀 키에 의해서만 복호화될 수 있기 때문에 메시지 내용의 비밀성이 확보될 수 있다.
본 발명은 인증 프로세스 및 키 교환 프로세스에 필요한 연산을 최소화하여, 사물인터넷 환경에서의 세션 키 생성 과정을 경량화할 수 있다.
본 발명은 디피-헬만 키 교환(Diffie-Hellman key exchange) 프로토콜 없이도 전자서명 값을 상호간에 교환하는 것만으로 키 교환이 가능한 상호 인증 및 세션 키 생성 과정을 제공할 수 있다.
본 발명은 전방향 안전성(forward secrecy)을 보장할 수 있다.
본 발명은 스테이트 노출 공격(state reveal attack)에 대한 안전성을 보장할 수 있다.
본 발명의 다양한 실시 예에 따른 세션 키를 생성하는 방법은, 제1 전자장치에 대응하는 제1 ID(identification), 상기 제1 전자장치에 대응하는 제1 임시 서명 키, 상기 제1 전자장치에 대응하는 제1 서명 및 제1 난수에 기초하여 생성된 제1 키를 제2 전자장치로 송신하는 과정, 상기 제1 키에 기초하여 생성된 제2 서명 정보 및 상기 제2 전자장치에 대응하는 제2 ID를 수신하는 과정, 상기 제2 서명 정보에 기초하여, 제2 난수와 관련되는 제2 키를 획득하는 과정, 상기 제1 난수 및 상기 제2 키에 기초하여 제3 키를 생성하는 과정, 상기 제1 키, 상기 제2 키, 상기 제3 키, 상기 제1 ID 및 상기 제2 ID에 기초하여 제1 메시지를 생성하는 과정, 상기 제1 ID 및 상기 제1 메시지에 기초하여 제1 서명 정보를 생성하는 과정, 상기 생성된 제1 서명 정보를 제2 전자장치로 송신하는 과정 및 상기 제1 ID, 상기 제2 ID, 상기 제1 키, 상기 제2 키, 상기 제3 키, 상기 제1 서명 정보 및 상기 제2 서명 정보에 기초하여 세션 키를 생성하는 과정을 포함할 수 있다.
본 발명의 다양한 실시 예에 따른 세션 키를 생성하는 제1 전자장치는, 송수신부 및 상기 제1 전자장치에 대응하는 제1 ID(identification), 상기 제1 전자장치에 대응하는 제1 임시 서명 키, 상기 제1 전자장치에 대응하는 제1 서명 및 제1 난수에 기초하여 생성된 제1 키를 제2 전자장치로 송신하도록 상기 송수신부를 제어하고, 상기 제1 키에 기초하여 생성된 제2 서명 정보 및 상기 제2 전자장치에 대응하는 제2 ID를 수신하도록 상기 송수신부를 제어하고, 상기 제2 서명 정보에 기초하여, 제2 난수와 관련되는 제2 키를 획득하고, 상기 제1 난수 및 상기 제2 키에 기초하여 제3 키를 생성하고, 상기 제1 키, 상기 제2 키, 상기 제3 키, 상기 제1 ID 및 상기 제2 ID에 기초하여 제1 메시지를 생성하고, 상기 제1 ID 및 상기 제1 메시지에 기초하여 제1 서명 정보를 생성하고, 상기 생성된 제1 서명 정보를 제2 전자장치로 송신하고, 상기 제1 ID, 상기 제2 ID, 상기 제1 키, 상기 제2 키, 상기 제3 키, 상기 제1 서명 정보 및 상기 제2 서명 정보에 기초하여 세션 키를 생성하는 프로세서를 포함할 수 있다.
본 발명의 다양한 실시 예에 따르면, 인증 프로세스 및 키 교환 프로세스에 필요한 연산을 최소화하여, 사물인터넷 환경에서의 세션 키 생성 과정을 경량화할 수 있다.
본 발명의 다양한 실시 예에 따르면, 전자서명과 디피-헬만 키 교환 프로토콜이 함께 사용되는 일반적인 인증 및 키 교환과는 달리 전자서명만을 이용하여 인증 및 키 교환을 수행할 수 있다.
세션 키 생성 과정에 있어서 디피-헬만 키 교환 프로토콜 없이도 키 교환이 가능하다.
본 발명의 다양한 실시 예에 따르면, 전방향 안전성이 보장될 수 있다.
본 발명의 다양한 실시 예에 따르면, 스테이트 노출 공격에 대한 안전성을 보장할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 사물인터넷 시스템을 도시한다.
도 2는 본 발명의 일 실시 예에 따른 인증 및 키 합의 단계의 흐름도이다.
도 3은 본 발명의 다른 실시 예에 따른 인증 키 합의 단계의 흐름도이다.
도 4는 본 발명의 일 실시 예에 따른 제1 전자장치의 블록도이다.
도 5는 본 발명의 일 실시 예에 따른 제2 전자장치의 블록도이다.
도 6은 본 발명의 일 실시 예에 따른 제1 전자장치 또는 제2 전자장치의 세부 블록도이다.
도 7은 본 발명의 일 실시 예에 따른 세션 키 생성 방법에 대한 순서도이다.
이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예에 대한 동작원리를 상세히 설명한다. 또한, 발명에 대한 실시 예를 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 하기에서 사용되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로써, 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 사용된 용어들의 정의는 본 명세서 전반에 걸친 내용 및 이에 상응한 기능을 토대로 해석되어야 할 것이다.
본 발명의 다양한 실시 예에 따른 세션 키(session key, 또는 secure session key)는 디피-헬만 키 교환(Diffie-Hellman key exchange) 프로토콜, 타원곡선 상의 전자서명(elliptic curve digital signature, ECDSA) 및 ECDSA를 이용한 ID 기반 서명(elliptic curve identity based signature, EC-IBS)에 기초한다.
디피-헬만 키 교환의 이산로그 문제는 위수가 소수
Figure 112019004784939-pat00001
곱셈 군(multiplicative group)
Figure 112019004784939-pat00002
와 임의의 원소
Figure 112019004784939-pat00003
에 대하여
Figure 112019004784939-pat00004
를 만족하는
Figure 112019004784939-pat00005
를 찾는 문제이다. 디피-헬만 키 교환 방법은 제1 전자장치 및 제2 전자장치의 원소
Figure 112019004784939-pat00006
를 각각 선택하여 상대방에게
Figure 112019004784939-pat00007
Figure 112019004784939-pat00008
를 전송하고, 세션 키
Figure 112019004784939-pat00009
를 생성한다. 제1 전자장치는
Figure 112019004784939-pat00010
를 생성하고, 제2 전자장치는
Figure 112019004784939-pat00011
를 생성한다. 여기서, 제1 전자장치 및 제2 전자장치의 채널 상에 송수신되는
Figure 112019004784939-pat00012
Figure 112019004784939-pat00013
를 획득하여
Figure 112019004784939-pat00014
Figure 112019004784939-pat00015
판단하는 것은 이산로그의 문제를 풀어야 하므로 매우 어렵다. 따라서, 제3 자는 추가적인 정보 없이 세션 키를 알아내기 어렵다.
ECDSA는 DSA 전자 서명을 타원 곡선에 적용시킨 알고리즘이다. ECDSA는 소수 q와 함께 정의된 타원 곡선 위에서의 이산 대수 문제에 기반하여 안전성을 제공하고 있다. ECDSA 는 DSA 전자 서명과 비교하여 짧은 키 길이와 짧은 서명 길이를 갖는 장점이 있다. ECDSA는 셋 업(set up), 서명(sign) 및 검증(verify) 알고리즘을 포함한다.
셋업
보안 상수
Figure 112019004784939-pat00016
를 입력으로 하여 검증 키
Figure 112019004784939-pat00017
와 서명 키
Figure 112019004784939-pat00018
가 생성될 수 있다.
먼저, 큰 소수
Figure 112019004784939-pat00019
Figure 112019004784939-pat00020
에서 정의되는 타원 곡선
Figure 112019004784939-pat00021
가 선택되면, 임의의
Figure 112019004784939-pat00022
와 타원곡선 상의 임의의 점
Figure 112019004784939-pat00023
를 선택하여
Figure 112019004784939-pat00024
가 계산될 수 있다. 이 경우,
Figure 112019004784939-pat00025
는 검증 키로,
Figure 112019004784939-pat00026
는 서명키로 설정될 수 있다. 여기서,
Figure 112019004784939-pat00027
는 암호학적 해쉬함수를 의미한다.
서명
서명자는 서명할 메시지
Figure 112019004784939-pat00028
, 서명자의 서명키
Figure 112019004784939-pat00029
를 입력으로 하여 서명
Figure 112019004784939-pat00030
를 출력할 수 있다. 먼저, 서명자는 임의의
Figure 112019004784939-pat00031
를 선택하여
Figure 112019004784939-pat00032
를 계산한다. 서명자는
Figure 112019004784939-pat00033
를 계산하고,
Figure 112019004784939-pat00034
를 계산한다. 서명자는 서명 값
Figure 112019004784939-pat00035
를 출력한다.
검증
검증자는 서명
Figure 112019004784939-pat00036
, 메시지
Figure 112019004784939-pat00037
및 검증키
Figure 112019004784939-pat00038
를 입력으로 하여 서명을 검증한다. 먼저, 검증자는
Figure 112019004784939-pat00039
Figure 112019004784939-pat00040
를 계산한다. 검증자는
Figure 112019004784939-pat00041
이 성립할 경우 T를 출력하고, 아닌 경우 F를 출력한다.
ID 기반 서명은 각 개체가 자신의 ID에 대응하는 서명 키를 이용하여 서명을 생성하는 기술이다 ID 기반 서명 시스템에는 시스템을 세팅하고 ID에 대응하는 키를 발급하는 키 생성 기관(key generation center, KGC), 서명을 생성하는 서명자(signer) 및 서명을 검증하는 검증자(verifier)가 존재한다.
ID 기반 서명은 (IBS.Setup, IBS.KeyGen, IBS.Sign, IBS.Verify)의 네 개의 다항 시간(Polynomial-time) 알고리즘으로 구성된다.
IB.Setup 알고리즘에서는 키 생성기관이 보안 상수를 입력으로 하여 공개 파라미터(Public parameter, pp)와 마스터 비밀키(Master secret key, msk)를 출력하며, pp는 공개되고 msk는 안전하게 보관될 수 있다.
SIBS.KeyGen 알고리즘에서는 키 생성기관이 msk를 이용하여 서명자의 ID에 대응하는 서명키
Figure 112019004784939-pat00042
를 출력한다.
IBS.Sign 알고리즘에서는 서명자가
Figure 112019004784939-pat00043
를 이용하여 메시지 m에 대한 서명
Figure 112019004784939-pat00044
를 생성한다.
IBS.Verify 알고리즘에서는 검증자가 서명자의 ID와 메시지 m을 이용하여
Figure 112019004784939-pat00045
를 검증한다.
EC-IBS는 ECDSA를 이용하여 전자서명을 ID 기반 서명으로 확장한 서명 기법으로 ECDSA의 세 가지 알고리즘 (EC.Setup, EC.Sign, EC.Verify)을 이용하여 설계된다. EC-IBS는 설정, 키 생성, 서명, 검증의 4개의 알고리즘으로 구성되어 있으며 다음과 같이 동작한다.
셋업
키 생성기관은 보안 상수
Figure 112019004784939-pat00046
를 입력으로 하여 공개 파라미터
Figure 112019004784939-pat00047
와 마스터 키 msk를 생성할 수 있다. 구체적으로, 키 생성기관은 EC.Setup 알고리즘을 이용하여
Figure 112019004784939-pat00048
을 출력할 수 있다. 또한, 키 생성기관은
Figure 112019004784939-pat00049
Figure 112019004784939-pat00050
를 설정한다.
키 생성
키 생성기관은 사용자의 ID, 마스터 키
Figure 112019004784939-pat00051
및 공개 파라미터
Figure 112019004784939-pat00052
입력으로 하여 사용자의 개인키
Figure 112019004784939-pat00053
를 출력한다. 구체적으로, 키 생성기관은 임의의
Figure 112019004784939-pat00054
를 선택하여
Figure 112019004784939-pat00055
를 계산한다. 키 생성기관은
Figure 112019004784939-pat00056
으로 설정하고,
Figure 112019004784939-pat00057
를 계산한다. 키 생성기관은
Figure 112019004784939-pat00058
으로 설정한다.
서명
서명자는 서명할 메시지
Figure 112019004784939-pat00059
, 서명키
Figure 112019004784939-pat00060
, 공개 파라미터
Figure 112019004784939-pat00061
Figure 112019004784939-pat00062
를 입력으로 하여 서명
Figure 112019004784939-pat00063
를 출력한다. 구체적으로, 서명자는
Figure 112019004784939-pat00064
를 설정한다. 서명자는
Figure 112019004784939-pat00065
를 계산한다. 서명자는 서명
Figure 112019004784939-pat00066
을 출력한다.
검증
검증자는 서명
Figure 112019004784939-pat00067
, 메시지
Figure 112019004784939-pat00068
, 공개 파라미터
Figure 112019004784939-pat00069
Figure 112019004784939-pat00070
를 입력으로 하여 서명을 검증한다. 구체적으로, 검증자는
Figure 112019004784939-pat00071
를 설정한다. 검증자는
Figure 112019004784939-pat00072
의 출력 값으로 F가 나오면 검증 절차를 종료한다. 또한, 검증자는
Figure 112019004784939-pat00073
의 출력 값으로 F가 나오면 검증 절차를 종료한다. 검증자는
Figure 112019004784939-pat00074
의 출력 값 및
Figure 112019004784939-pat00075
의 출력 값이 F가 아닌 경우, 결과 값으로 T를 출력한다.
이하에서, 사물인터넷 시스템에 대해 상세히 설명한다.
도 1은 본 발명의 일 실시 예에 따른 사물인터넷 시스템을 도시한다.
사물인터넷 시스템(10)은 제1 전자장치(100) 및 제2 전자장치(200)를 포함할 수 있다. 또한, 사물인터넷 시스템(10)은 제1 전자장치(100) 및 제2 전자장치(200) 외에 적어도 하나 이상의 전자장치를 추가적으로 포함할 수 있다.
제1 전자장치(100)는 사물 또는 전자장치일 수 있다. 예를 들어, 제1 전자장치(100)는 냉장고, CCTV, TV, 세탁기, 제습기 등의 각종 가전기기, 전등, 화재 경보기, 댁내 기기일 수 있다. 이 경우, 제1 전자장치(100)는 온도 센서, 습도 센서, 음향 센서, 모션 센서, 근접 센서, 가스 감지 센서, 열 감지 센서 등의 각종 센서를 포함할 수 있다.
제2 전자장치(100)는 스마트폰, 태블릿 컴퓨터와 같은 스마트 기기, 휴대용 전자 기기, 웨어러블 기기(wearable device), 홈 네트워크에 연결 가능한 홈 단말(home terminal), 스마트 TV, 셋톱 박스(set top box) 등 다양한 전자 장치일 수 있다.
제1 전자장치(100) 및 제2 전자장치(200)는 무선 통신, 근거리 통신, 홈 네트워크 등 다양한 통신 기술, 통신 프로토콜 등으로 서로 연결될 수 있다.
일 예로, 제1 전자장치(100) 및 제2 전자장치(200)는 암호화 키인 세션 키를 생성할 수 있다. 제1 전자장치(100) 및 제2 전자장치(200)는 생성된 세션 키에 기초하여 기 정의된 통신 세션 동안 통신을 수행하여 정보(또는 메시지)를 교환할 수 있다.
일 예로, 제1 전자장치(100) 및 제2 전자장치(200)는 세션 키를 생성하기 위한 과정을 수행할 수 있다. 제1 전자장치(100) 및 제2 전자장치(200)는 세션 키를 생성하기 위한 프로토콜에 따라 키를 교환하는 과정, 인증을 수행하는 과정, 세션 키를 생성하는 과정 등을 수행할 수 있다.
이하에서, 세션 키 생성 과정을 상세히 설명한다.
세션 키 생성 과정은 제1 전자장치(100) 및 제2 전자장치(200)에 의해 수행되는 것으로 설명될 것이나, 제1 전자장치(100) 및 제2 전자장치(200)에 포함되는 구성요소(component)에 의해 수행될 수도 있음은 물론이다. 예를 들어, 세션 키 생성 과정은 제1 전자장치(100)에 포함되는 프로세서 및 제2 전자장치(200)에 포함되는 프로세서 각각의 제어에 의해 수행될 수 있다.
일 예로, 세션 키 생성 과정은 키 생성 기관(KGC)(제1 전자장치(100), 제2 전자장치(200) 또는 제3의 전자장치일 수 있음), 제1 전자장치(100) 및 제2 전자장치(200)에 의해 수행될 수 있다.
여기서, 키 생성 기관은 인증 및 키 합의 프로토콜의 초기 시스템을 설정한다. 또한, 제1 전자장치(100) 및 제2 전자장치(200)는 인증 및 키 합의를 수행할 수 있다.
키 생성 기관은 시스템 설정 알고리즘을 수행하여 공개 파라미터와 마스터 비밀 키를 생성한다. 제1 전자장치(100) 및 제2 전자장치(200)는 키 생성기관에게 자신의 ID에 대응하는 개인 키(또는 서명 키)를 발급 받는다. 제1 전자장치(100) 및 제2 전자장치(200)는 EC-IBS 서명을 이용한 질의-응답 프로토콜을 통해 상호 인증을 수행하고 안전한 세션 키(ssk: secure session key)를 공유하게 된다. EC-IBS 서명을 이용한 질의-응답 프로토콜은 EC-IBS.Setup, EC-IBS.Keygen, EC-IBS.Sign, EC-IBS.Verify를 포함한다. 세션 키 생성 과정은 다음과 같다.
셋업(set up)
키 생성기관은 EC-IBS.Setup을 수행하여 공개 파라미터
Figure 112019004784939-pat00076
Figure 112019004784939-pat00077
로,
Figure 112019004784939-pat00078
Figure 112019004784939-pat00079
로 설정할 수 있다. 여기서, 키 생성 장치는 보안 상수
Figure 112019004784939-pat00080
를 입력받아 위수가 소수
Figure 112019004784939-pat00081
인 곱셈 군(multiplicative group)
Figure 112019004784939-pat00082
의 생성원
Figure 112019004784939-pat00083
선택할 수 있다. 또는, 키 생성 장치는 보안 상수
Figure 112019004784939-pat00084
를 입력받아 위수가 소수
Figure 112019004784939-pat00085
인 타원곡선 위 그룹
Figure 112019004784939-pat00086
를 설정하고 생성원 g를 선택할 수 있다. 또한, 키 생성 장치는
Figure 112019004784939-pat00087
를 설정할 수 있다.
키 발급 단계(sign key generation phase)
일 예로, 제1 전자장치(100) 및 제2 전자장치(200)는 제1 전자장치(100)에 대응하는 제1 ID 및 제2 전자장치(200)에 대응하는 제2 ID 각각을 키 생성 기관에 요청할 수 있다. 키 생성 기관은 EC-IBS.Setup 알고리즘을 수행하여 제1 전자장치(100) 및 제2 전자장치(200) 각각의 서명 키
Figure 112019004784939-pat00088
를 생성한다. 여기서, 제1 전자장치(100)에 대응하는 제1 서명 키는
Figure 112019004784939-pat00089
, 제2 전자장치(200)에 대응하는 제2 서명 키는
Figure 112019004784939-pat00090
로 정의될 수 있다. 제1 전자장치(100) 및 제2 전자장치(200)는 생성된 제1 서명 키 및 제2 서명 키 각각을 안전한 채널을 통해 수신할 수 있다.
다른 예로, 제1 전자장치(100) 및 제2 전자장치(200) 각에는 제조 시에 서명 키가 할당될 수 있다.
이하에서, 상술한
Figure 112019004784939-pat00091
Figure 112019004784939-pat00092
로 정의될 수 있다. 또한,
Figure 112019004784939-pat00093
Figure 112019004784939-pat00094
로,
Figure 112019004784939-pat00095
Figure 112019004784939-pat00096
로 정의될 수 있다. 여기서,
Figure 112019004784939-pat00097
는 제1 서브 서명 키로,
Figure 112019004784939-pat00098
는 제2 서브 서명 키로 정의될 수 있다.
인증 및 키 합의 단계(authentication and key agreement phase)
인증 및 키 합의 단계는 이하 도 2를 참조하여 상세히 설명한다.
도 2는 본 발명의 일 실시 예에 따른 인증 및 키 합의 단계의 흐름도이다.
제1 전자장치(100)는 제1 난수(
Figure 112019004784939-pat00099
)를 선택할 수 있다(2001). 또한, 제1 전자장치(100)는 선택된 제1 난수에 기초하여 제1 키(
Figure 112019004784939-pat00100
)를 생성할 수 있다(2002). 제1 전자장치(100)는 생성된 제1 키 및
Figure 112019004784939-pat00101
를 제2 전자장치(200)로 송신할 수 있다(2003). 여기서,
Figure 112019004784939-pat00102
는 제1 전자장치(100)에 대응하는 ID,
Figure 112019004784939-pat00103
는 제1 임시 서명 키
Figure 112019004784939-pat00104
,
Figure 112019004784939-pat00105
는 서명으로 정의될 수 있다.
제2 전자장치(200)는 제2 난수(
Figure 112019004784939-pat00106
)를 선택할 수 있다(2004). 또한, 제2 전자장치(200)는 선택된 제2 난수에 기초하여 제2 키(
Figure 112019004784939-pat00107
)를 생성할 수 있다(2005).
제2 전자장치(200)는 제1 전자장치(100)로부터 수신된 제1 키에 기초하여, 제3 키(
Figure 112019004784939-pat00108
)를 생성한다(2006).
제2 전자장치(200)는 제2 메시지를 생성한다(2007). 여기서, 제2 메시지는 아래의 수학식 1과 같이 정의될 수 있다.
Figure 112019004784939-pat00109
여기서,
Figure 112019004784939-pat00110
는 상기 제2 메시지,
Figure 112019004784939-pat00111
는 상기 제2 키,
Figure 112019004784939-pat00112
는 상기 제2 ID,
Figure 112019004784939-pat00113
는 상기 제1 키,
Figure 112019004784939-pat00114
는 상기 제1 ID,
Figure 112019004784939-pat00115
는 상기 제3 키,
Figure 112019004784939-pat00116
은 결합 연산자로 정의될 수 있다.
제2 전자장치(200)는 아래의 수학식 2 및 EC-IBS.Sign 알고리즘에 기초하여 상기
Figure 112019004784939-pat00117
에 대한 제2 서명
Figure 112019004784939-pat00118
를 생성한다(2008).
Figure 112019004784939-pat00119
또는
Figure 112019004784939-pat00120
여기서,
Figure 112019004784939-pat00121
또는
Figure 112019004784939-pat00122
은 서명 함수,
Figure 112019004784939-pat00123
는 상기 제2 메시지,
Figure 112019004784939-pat00124
는 공개 파라미터(parameter),
Figure 112019004784939-pat00125
는 상기 제2 ID,
Figure 112019004784939-pat00126
는 상기 제2 전자장치(200)에 대응하는 서명 키,
Figure 112019004784939-pat00127
는 상기 제2 서명 정보로 정의될 수 있다.
여기서,
Figure 112019004784939-pat00128
가 생성되는 데 있어, 상술한 과정에서 생성된 난수
Figure 112019004784939-pat00129
가 이용되므로 난수 연산과 관련된 과정을 단축할 수 있다.
제2 전자장치(200)는 제2 전자장치(200)에 대응하는 제2 ID(
Figure 112019004784939-pat00130
) 및 제2 서명 정보를 제1 전자장치(100)로 송신한다(2009).
제1 전자장치(100)는 제2 서명 정보에 기초하여 제2 키를 획득한다(2010). 여기서, 제2 서명 정보(예를 들어, 상술한 서명
Figure 112020069515024-pat00443
)는 제2 키의 검증과 관련되는 타원 곡선상의 X-축 좌표 정보(예를 들어, 상술한
Figure 112020069515024-pat00444
)를 포함하기 때문에, 제1 전자장치(100)는 제2 난수(
Figure 112020069515024-pat00445
)에 대한 정보 없이도 예를 들어, 상술한 '검증'에서 기술된
Figure 112020069515024-pat00446
를 계산하는 검증과정에서 제2 키를 획득할 수 있다.
종래의 프로토콜은 IBS 서명 교환 및 디피-헬만 키 교환을 추가적으로 수행해야 하나, 상술한 본 발명의 일 실시 예에 따르면 IBS 서명 교환만으로 인증 및 키 교환이 함께 이루어질 수 있다. 따라서, 상수한 본 발명의 일 실시 예에 따르면, 디피-헬만 키 교환을 제거하는 만큼 데이터 연산량 및 데이터 전송량의 이득을 확보할 수 있다.
제1 전자장치(100)는 제2 메시지를 생성할 수 있다(2011). 일 예로, 제1 전자장치(100)는 제1 난수 및 제2 키에 기초하여 제3 키를 생성할 수 있다.
제1 전자장치(100)는 제2 메시지를 생성할 수 있다(2012).
제1 전자장치(100)는 제2 서명 정보를 인증할 수 있다(2013). 제1 전자장치(100)는 알고리즘
Figure 112019004784939-pat00132
에 기초하여 제2 서명 정보를 인증할 수 있다. 여기서, 제1 전자장치(100)는
Figure 112019004784939-pat00133
의 출력이 F이면 프로토콜을 중단하고, T이면 프로토콜을 계속 수행한다.
제1 전자장치(100)는 제1 메시지를 생성한다(2014). 여기서, 제1 메시지는 제1 키, 제2 키, 제3 키, 제1 ID 및 제2 ID에 기초하여 생성될 수 있다(아래의 수학식 3 참조).
Figure 112019004784939-pat00134
여기서,
Figure 112019004784939-pat00135
는 상기 제1 메시지,
Figure 112019004784939-pat00136
는 상기 제1 키,
Figure 112019004784939-pat00137
는 상기 제1 ID,
Figure 112019004784939-pat00138
는 상기 제2 키,
Figure 112019004784939-pat00139
는 상기 제2 ID,
Figure 112019004784939-pat00140
는 상기 제3 키,
Figure 112019004784939-pat00141
는 상기 제2 서명 정보이고,
Figure 112019004784939-pat00142
은 결합 연산자로 정의될 수 있다.
제1 전자장치(100)는 제1 서명 정보를 생성한다(2015). 여기서, 제1 서명 정보는 아래의 수학식 4에 기초하여 생성될 수 있다. 일 예로, 제1 서명 정보는 제1 난수에 기초하여 생성될 수 있다.
Figure 112019004784939-pat00143
또는
Figure 112019004784939-pat00144
여기서,
Figure 112019004784939-pat00145
또는
Figure 112019004784939-pat00146
은 서명 함수,
Figure 112019004784939-pat00147
는 상기 제1 메시지,
Figure 112019004784939-pat00148
는 공개 파라미터(parameter),
Figure 112019004784939-pat00149
는 상기 제1 ID,
Figure 112019004784939-pat00150
는 상기 제1 전자장치에 대응하는 서명 키,
Figure 112019004784939-pat00151
는 상기 제1 서명 정보로 정의될 수 있다.
제1 전자장치(100)는 생성된 제1 서명 정보를 제2 전자장치(200)로 송신할 수 있다(2016).
여기서, 제1 서명 정보를 구성하는 서명의 일부 정보
Figure 112019004784939-pat00152
는 상술한 과정에서 이미 전송되었으므로 다시 전송하지 않을 수도 있다.
일 예로, 제1 전자장치(100)는 제1 서명 정보
Figure 112019004784939-pat00153
중에서 새로운 정보인
Figure 112019004784939-pat00154
만을 제2 전자장치(200)으로 송신할 수 있다.
일 예로, 제1 전자장치(100)는 상기 서명의 일부 정보
Figure 112019004784939-pat00155
가 이미 송신되었는지 여부를 가리키는 지시자(indicator) 정보를 추가적으로 송신할 수 있다. 다른 예로, 제1 전자장치(100)는 상기 서명의 일부 정보
Figure 112019004784939-pat00156
가 이미 송신되었는지 여부를 가리키는 지시자(indicator) 정보를 제1 서명 정보에 포함하여 송신할 수도 있다.
제2 전자장치(200)는 제1 메시지를 생성할 수 있다(2017).
제2 전자장치(200)는 알고리즘
Figure 112019004784939-pat00157
에 기초하여 제2 서명 정보를 인증할 수 있다(2018). 여기서, 제2 전자장치(200)는
Figure 112019004784939-pat00158
의 출력이 F이면 프로토콜을 중단하고, T이면 프로토콜을 계속 수행한다.
제1 전자장치(100) 및 제2 전자장치(200)는 아래의 수학식 5에 기초하여 세션 키(
Figure 112019004784939-pat00159
)를 생성할 수 있다(2019-1, 2019-2). 이 경우, 세션 키는 제1 ID, 제2 ID, 제1 키, 제2 키, 제3 키, 제1 서명 정보 및 제2 서명 정보에 기초하여 생성될 수 있다.
Figure 112019004784939-pat00160
여기서,
Figure 112019004784939-pat00161
는 해쉬 함수,
Figure 112019004784939-pat00162
는 상기 제1 ID,
Figure 112019004784939-pat00163
는 상기 제2 ID,
Figure 112019004784939-pat00164
는 상기 제1 키,
Figure 112019004784939-pat00165
는 상기 제2 키,
Figure 112019004784939-pat00166
는 상기 제3 키,
Figure 112019004784939-pat00167
는 상기 제1 서명 정보,
Figure 112019004784939-pat00168
는 상기 제2 서명 정보로 정의될 수 있다.
상술한 본원 발명의 일 실시 예에 따르면, 서명키가 노출되는 경우에도 전 시점에서 생성된 세션 키는 보호됨으로 전방향 안전성을 보장할 수 있다.
도 3은 본 발명의 다른 실시 예에 따른 인증 키 합의 단계의 흐름도이다.
이하에서, 도 3의 실시 예에서 제3 키(
Figure 112019004784939-pat00169
)를 생성하는 방법은 상술한 도 2의 실시 예의 제3 키(
Figure 112019004784939-pat00170
) 생성 방법과 차이가 있다. 이하의 도 3의 실시 예의 제3 키(
Figure 112019004784939-pat00171
) 생성 방법을 통해, 전 방향 안전성을 확보할 뿐만 아니라, 스테이트 노출 공격에도 안전성을 확보할 수 있다.
제1 전자장치(100')는 제1 난수(
Figure 112019004784939-pat00172
)를 선택할 수 있다(3001). 또한, 제1 전자장치(100')는 선택된 제1 난수에 기초하여 제1 키(
Figure 112019004784939-pat00173
)를 생성할 수 있다(3002). 제1 전자장치(100')는 생성된 제1 키 및
Figure 112019004784939-pat00174
를 제2 전자장치(200')로 송신할 수 있다(3003). 여기서,
Figure 112019004784939-pat00175
는 제1 전자장치(100')에 대응하는 ID,
Figure 112019004784939-pat00176
는 제1 서명 키에 포함되는 제1 임시 서명 키,
Figure 112019004784939-pat00177
는 서명으로 정의될 수 있다.
제2 전자장치(200')는 서명
Figure 112019004784939-pat00178
을 인증할 수 있다(3004). 여기서, 제2 전자장치(200')는 서명
Figure 112019004784939-pat00179
인증 과정의 출력이 F이면 프로토콜을 중단하고, T이면 프로토콜을 계속 수행한다. 이러한, 서명 검증 과정은 IBS 서명 인증을 미리 수행하는 것이다.
제2 전자장치(200')는 제2 난수(
Figure 112019004784939-pat00180
)를 선택할 수 있다(3005). 또한, 제2 전자장치(200')는 선택된 제2 난수에 기초하여 제2 키(
Figure 112019004784939-pat00181
)를 생성할 수 있다(3006).
제2 전자장치(200')는 제1 전자장치(100')로부터 수신된 제1 키 및 1 전자장치(100')에 대한 제1 임시 서명 키
Figure 112019004784939-pat00182
와,
Figure 112019004784939-pat00183
Figure 112019004784939-pat00184
에 기초하여, 제3 키(
Figure 112019004784939-pat00185
)를 생성한다(3007).
제2 전자장치(200')는 제2 메시지를 생성한다(3008). 여기서, 제2 메시지는 아래의 수학식 6과 같이 정의될 수 있다.
Figure 112019004784939-pat00186
여기서,
Figure 112019004784939-pat00187
는 상기 제2 메시지,
Figure 112019004784939-pat00188
는 상기 제2 키,
Figure 112019004784939-pat00189
Figure 112019004784939-pat00190
,
Figure 112019004784939-pat00191
는 상기 제2 ID,
Figure 112019004784939-pat00192
는 상기 제1 키,
Figure 112019004784939-pat00193
Figure 112019004784939-pat00194
,
Figure 112019004784939-pat00195
는 상기 제1 ID,
Figure 112019004784939-pat00196
는 상기 제3 키,
Figure 112019004784939-pat00197
은 결합 연산자로 정의될 수 있다.
제2 전자장치(200')는 아래의 수학식 7 및 EC-IBS.Sign 알고리즘에 기초하여 상기
Figure 112019004784939-pat00198
에 대한 제2 서명 정보
Figure 112019004784939-pat00199
를 생성한다(3009).
Figure 112019004784939-pat00200
또는
Figure 112019004784939-pat00201
여기서,
Figure 112019004784939-pat00202
또는
Figure 112019004784939-pat00203
은 서명 함수,
Figure 112019004784939-pat00204
는 상기 제2 메시지,
Figure 112019004784939-pat00205
는 공개 파라미터(parameter),
Figure 112019004784939-pat00206
는 상기 제2 ID,
Figure 112019004784939-pat00207
는 상기 제2 전자장치(200')에 대응하는 서명 키,
Figure 112019004784939-pat00208
는 상기 제2 서명 정보로 정의될 수 있다. 여기서,
Figure 112019004784939-pat00209
는 난수
Figure 112019004784939-pat00210
에 기초하여 생성된다.
여기서,
Figure 112019004784939-pat00211
가 생성되는 데 있어, 상술한 과정에서 생성된 난수
Figure 112019004784939-pat00212
가 이용되므로 난수 연산과 관련된 연산 과정을 단축할 수 있다.
제2 전자장치(200')는 제2 전자장치(200')에 대응하는 제2 ID(
Figure 112019004784939-pat00213
) 및 제2 서명 정보를 제1 전자장치(100')로 송신한다(3010).
제1 전자장치(100')는 제2 서명 정보에 기초하여 제2 키를 획득한다(3011). 여기서, 제2 서명 정보(예를 들어, 상술한 서명
Figure 112020069515024-pat00447
)는 제2 키의 검증과 관련되는 타원 곡선상의 X-축 좌표 정보(예를 들어, 상술한
Figure 112020069515024-pat00448
)를 포함하기 때문에, 제1 전자장치(100')는 제2 난수(
Figure 112020069515024-pat00449
)에 대한 정보 없이도 예를 들어, 상술한 '검증'에서 기술된
Figure 112020069515024-pat00450
를 계산하는 검증과정에서 제2 키를 획득할 수 있다.
종래의 프로토콜은 IBS 서명 교환 및 디피-헬만 키 교환을 추가적으로 수행해야 하나, 상술한 본 발명의 일 실시 예에 따르면 IBS 서명 교환만으로 인증 및 키 교환이 함께 이루어질 수 있다. 따라서, 상술한 본 발명의 일 실시 예에 따르면, 디피-헬만 키 교환을 제거하는 만큼 데이터 연산량 및 데이터 전송량의 이득을 확보할 수 있다.
또한, 제1 전자장치(100')는 제3 키를 생성할 수 있다(3012). 구체적으로, 제1 전자장치(100')는 제1 난수
Figure 112019004784939-pat00215
, 제1 서명 키
Figure 112019004784939-pat00216
에 포함되는 제1 서브 서명 키
Figure 112019004784939-pat00217
, 제2 키 및 제2 서명 정보에 포함된 제2 임시 서명 키
Figure 112019004784939-pat00218
에 기초하여 제3 키
Figure 112019004784939-pat00219
를 생성할 수 있다.
제1 전자장치(100')는 제2 메시지를 생성할 수 있다(3013).
제1 전자장치(100')는 제2 서명 정보를 인증할 수 있다(3014). 제1 전자장치(100')는 알고리즘
Figure 112019004784939-pat00220
에 기초하여 제2 서명 정보를 인증할 수 있다. 여기서, 제1 전자장치(100')는
Figure 112019004784939-pat00221
의 출력이 F이면 프로토콜을 중단하고, T이면 프로토콜을 계속 수행한다.
제1 전자장치(100')는 제1 메시지를 생성한다(3015). 여기서, 제1 메시지는 제1 키, 제2 키, 제3 키, 제1 ID, 제2 ID,
Figure 112019004784939-pat00222
Figure 112019004784939-pat00223
에 기초하여 생성될 수 있다(아래의 수학식 8 참조).
Figure 112019004784939-pat00224
여기서,
Figure 112019004784939-pat00225
는 상기 제1 메시지,
Figure 112019004784939-pat00226
는 상기 제1 키,
Figure 112019004784939-pat00227
Figure 112019004784939-pat00228
,
Figure 112019004784939-pat00229
는 상기 제1 ID,
Figure 112019004784939-pat00230
는 상기 제2 키,
Figure 112019004784939-pat00231
Figure 112019004784939-pat00232
,
Figure 112019004784939-pat00233
는 상기 제2 ID,
Figure 112019004784939-pat00234
는 상기 제3 키,
Figure 112019004784939-pat00235
는 상기 제2 서명 정보,
Figure 112019004784939-pat00236
은 결합 연산자로 정의될 수 있다.
제1 전자장치(100')는 제1 서명 정보를 생성한다(3016). 여기서, 제1 서명 정보는 아래의 수학식 9에 기초하여 생성될 수 있다. 일 예로, 제1 서명 정보는 제1 난수에 기초하여 생성될 수 있다.
Figure 112019004784939-pat00237
또는
Figure 112019004784939-pat00238
여기서,
Figure 112019004784939-pat00239
또는
Figure 112019004784939-pat00240
은 서명 함수,
Figure 112019004784939-pat00241
는 상기 제1 메시지,
Figure 112019004784939-pat00242
는 공개 파라미터(parameter),
Figure 112019004784939-pat00243
는 상기 제1 ID,
Figure 112019004784939-pat00244
는 상기 제1 전자장치에 대응하는 서명 키,
Figure 112019004784939-pat00245
는 상기 제1 서명 정보로 정의될 수 있다.
여기서,
Figure 112019004784939-pat00246
가 생성될 때 사용된 난수
Figure 112019004784939-pat00247
가 서명 생성에도 다시 사용될 수 있다. 난수 연산과 관련된 과정을 단축할 수 있다.
제1 전자장치(100')는 생성된 제1 서명 정보를 제2 전자장치(200')로 송신할 수 있다(3017). 여기서, 제1 서명 정보를 구성하는 서명의 일부 정보
Figure 112019004784939-pat00248
는 상술한 과정에서 이미 전송되었으므로 다시 전송하지 않을 수도 있다.
일 예로, 제1 전자장치(100')는 제1 서명 정보
Figure 112019004784939-pat00249
중에서 새로운 정보인
Figure 112019004784939-pat00250
만을 제2 전자장치(200')으로 송신할 수 있다.
일 예로, 제1 전자장치(100')는 상기 서명의 일부 정보
Figure 112019004784939-pat00251
가 이미 송신되었는지 여부를 가리키는 지시자(indicator) 정보를 추가적으로 송신할 수 있다. 다른 예로, 제1 전자장치(100')는 상기 서명의 일부 정보
Figure 112019004784939-pat00252
가 이미 송신되었는지 여부를 가리키는 지시자(indicator) 정보를 제1 서명 정보에 포함하여 송신할 수도 있다.
제2 전자장치(200')는 제1 메시지를 생성할 수 있다(3018).
제2 전자장치(200')는 알고리즘
Figure 112019004784939-pat00253
에 기초하여 제2 서명 정보를 인증할 수 있다(3019). 여기서, 제2 전자장치(200')는
Figure 112019004784939-pat00254
의 출력이 F이면 프로토콜을 중단하고, T이면 프로토콜을 계속 수행한다.
여기서, 상기 서명의 일부 정보
Figure 112019004784939-pat00255
는 상술한 과정 3004에서 인증이 수행되었으므로, 제2 전자장치(200')는 상기 서명의 일부 정보
Figure 112019004784939-pat00256
에 대한 인증 과정을 생략할 수 있다.
제1 전자장치(100') 및 제2 전자장치(200')는 아래의 수학식 10에 기초하여 세션 키(
Figure 112019004784939-pat00257
)를 생성할 수 있다(3020-1, 3020-2). 이 경우, 세션 키는 제1 ID, 제2 ID, 제1 키, 제2 키, 제3 키, 제1 서명 정보, 제2 서명 정보,
Figure 112019004784939-pat00258
Figure 112019004784939-pat00259
에 기초하여 생성될 수 있다.
Figure 112019004784939-pat00260
여기서,
Figure 112019004784939-pat00261
는 해쉬 함수,
Figure 112019004784939-pat00262
는 상기 제1 ID,
Figure 112019004784939-pat00263
는 상기 제2 ID,
Figure 112019004784939-pat00264
Figure 112019004784939-pat00265
,
Figure 112019004784939-pat00266
는 상기 제1 키,
Figure 112019004784939-pat00267
Figure 112019004784939-pat00268
,
Figure 112019004784939-pat00269
는 상기 제2 키,
Figure 112019004784939-pat00270
는 상기 제3 키,
Figure 112019004784939-pat00271
는 상기 제1 서명 정보,
Figure 112019004784939-pat00272
는 상기 제2 서명 정보로 정의될 수 있다.
상술한 본원 발명의 다양한 실시 예에 따르면, 서명키가 노출되는 경우에도 전 시점에서 생성된 세션 키는 보호됨으로 전방향 안전성을 보장할 수 있다.
또한, 상술한 본원 발명의 다양한 실시 예에 따르면, 제3 키를
Figure 112019004784939-pat00273
로 설정함으로써,
Figure 112019004784939-pat00274
,
Figure 112019004784939-pat00275
,
Figure 112019004784939-pat00276
Figure 112019004784939-pat00277
가 모두 노출되더라도
Figure 112019004784939-pat00278
가 노출되지 않는 이상 제 3자는 서명 인증을 수행할 수 없는 보안상 효과가 있다.
또한, 상술한 본원 발명의 다양한 실시 예에 따르면, EC-DSA를 2회 이용하여 EC-IBS를 구성할 수 있다.
또한, 상술한 본원 발명의 다양한 실시 예에 따르면, 고정된 비밀 키
Figure 112019004784939-pat00279
Figure 112019004784939-pat00280
및 난수
Figure 112019004784939-pat00281
Figure 112019004784939-pat00282
를 대칭적으로 하여
Figure 112019004784939-pat00283
를 획득함으로써, 스테이트 노출 공격을 방어할 수 있다.
이하에서, 도 4 및 도 5를 참조하여 제1 전자장치(100) 및 제2 전자장치(200)의 구성을 상세히 설명한다. 여기서, 상술한 세션 키 생성 과정과 중복되는 내용은 설명의 편의를 위해 생략한다.
도 4는 본 발명의 일 실시 예에 따른 제1 전자장치의 블록도이다.
제1 전자장치(100)는 송수신부(110) 및 프로세서(120)를 포함한다.
송수신부(110)는 통신을 수행할 수 있다. 예를 들어, 송수신부(110)는 제2 전자장치(200)와 통신을 수행할 수 있다. 송수신부(110)는 제 제2 전자장치(200)와 통신을 수행하여 적어도 하나의 키를 교환할 수 있다.
프로세서(120)는 제1 전자장치(100)를 전반적으로 제어한다. 특히, 프로세서(120)는 제2 전자장치(200)와 세션 키 생성 과정을 수행할 수 있다.
도 5는 본 발명의 일 실시 예에 따른 제2 전자장치의 블록도이다.
제2 전자장치(200)는 송수신부(210) 및 프로세서(220)를 포함한다.
송수신부(210)는 통신을 수행할 수 있다. 예를 들어, 송수신부(210)는 제1 전자장치(100)와 통신을 수행할 수 있다. 송수신부(210)는 제 제1 전자장치(100)와 통신을 수행하여 적어도 하나의 키를 교환할 수 있다.
프로세서(220)는 제2 전자장치(200)를 전반적으로 제어한다. 특히, 프로세서(220)는 제1 전자장치(200)와 세션 키 생성 과정을 수행할 수 있다.
도 6은 본 발명의 일 실시 예에 따른 제1 전자장치 또는 제2 전자장치의 세부 블록도이다.
도 6을 참조하면, 제1 전자장치(또는 제2 전자장치)(600)는 통신부(610), 저장부(620) 및 프로세서(630)를 포함한다.
통신부(610)는 통신을 수행한다.
통신부(610)는 유선 또는, BT(BlueTooth), WI-FI(Wireless Fidelity), Zigbee, IR(Infrared), NFC(Near Field Communication) 등과 같은 다양한 통신 방식을 통해 외부의 전자 장치와 통신을 수행할 수 있다.
저장부(620)는 제1 전자장치(또는 제2 전자장치)(600)를 구동시키기 위한 O/S(Operating System) 소프트웨어 모듈, 디스플레이 영역에서 제공되는 다양한 UI 화면을 구성하기 위한 데이터 등을 저장할 수 있다. 일 예로, 저장부(620)는 UX/UI 데이터 등을 포함할 수 있다. 또한, 저장부(620)는 ID,
Figure 112019004784939-pat00284
, 키 값 등을 저장할 수 있다.
프로세서(630)는 저장부(620)에 저장된 각종 프로그램을 이용하여 제1 전자장치(또는 제2 전자장치)(600)의 동작을 전반적으로 제어한다.
구체적으로, 프로세서(630)는 RAM(631), ROM(632), 그래픽 처리부(633), 메인 CPU(634), 제1 내지 n 인터페이스(635-1 ~ 635-n), 버스(637)를 포함한다.
RAM(631), ROM(632), 그래픽 처리부(633), 메인 CPU(634), 제1 내지 n 인터페이스(635-1 내지 635-n) 등은 버스(637)를 통해 서로 연결될 수 있다.
ROM(632)에는 시스템 부팅을 위한 명령어 세트 등이 저장된다. 턴온 명령이 입력되어 전원이 공급되면, 메인 CPU(634)는 ROM(632)에 저장된 명령어에 따라 저장부(620)에 저장된 O/S를 RAM(632)에 복사하고, O/S를 실행시켜 시스템을 부팅시킨다. 부팅이 완료되면, 메인 CPU(634)는 저장부(620)에 저장된 각종 어플리케이션 프로그램을 RAM(631)에 복사하고, RAM(631)에 복사된 어플리케이션 프로그램을 실행시켜 각종 동작을 수행한다.
그래픽 처리부(633)는 연산부 및 렌더링부를 이용하여 아이콘, 이미지, 텍스트 등과 같은 다양한 객체를 포함하는 화면을 생성한다.
메인 CPU(634)는 저장부(620)에 액세스하여, 저장부(620)에 저장된 O/S를 이용하여 부팅을 수행한다. 그리고, 저장부(620)에 저장된 각종 프로그램, 컨텐트, 데이터 등을 이용하여 다양한 동작을 수행한다.
제1 내지 n 인터페이스(635-1 내지 635-n)는 상술한 각종 구성요소들과 연결된다. 일 예로, 인터페이스들 중 하나는 네트워크를 통해 외부 장치와 연결되는 네트워크 인터페이스가 될 수도 있다.
프로세서(630)는 제1 전자장치(600)에 대응하는 제1 ID(identification)와, 제1 난수에 기초하여 생성된 제1 키를 제2 전자장치로 송신하도록 통신부(610)를 제어할 수 있다. 또한, 프로세서(630)는 제1 키에 기초하여 생성된 제2 서명 정보 및 제2 전자장치(600)에 대응하는 제2 ID를 수신할 수 있다. 또한, 프로세서(630)는 제2 서명 정보에 기초하여, 제2 난수와 관련되는 제2 키를 획득할 수 있다. 또한, 프로세서(630)는 제1 난수 및 제2 키에 기초하여 제3 키를 생성할 수 있다. 또한, 프로세서(630)는 제1 키, 제2 키, 제3 키, 제1 ID 및 제2 ID에 기초하여 제1 메시지를 생성할 수 있다. 또한, 프로세서(630)는 제1 ID 및 제1 메시지에 기초하여 제1 서명 정보를 생성할 수 있다. 또한, 프로세서(630)는 제1 ID, 제2 ID, 제1 키, 제2 키, 제3 키, 제1 서명 정보 및 제2 서명 정보에 기초하여 세션 키를 생성할 수 있다.
도 7은 본 발명의 일 실시 예에 따른 세션 키 생성 방법에 대한 순서도이다.
세션 키 생성 방법은, 제1 전자장치에 대응하는 제1 ID, 제1 전자장치에 대응하는 제1 임시 서명 키, 제1 전자장치에 대응하는 제1 서명 및 제1 난수에 기초하여 생성된 제1 키를 제2 전자장치로 송신하는 과정(7010), 제1 키에 기초하여 생성된 제2 서명 정보 및 제2 전자장치에 대응하는 제2 ID를 수신하는 과정(7020), 제2 서명 정보에 기초하여, 제2 난수와 관련되는 제2 키를 획득하는 과정(7030), 제1 난수 및 제2 키에 기초하여 제3 키를 생성하는 과정(7040), 제1 키, 제2 키, 제3 키, 제1 ID 및 제2 ID에 기초하여 제1 메시지를 생성하는 과정(7050), 제1 ID 및 제1 메시지에 기초하여 제1 서명 정보를 생성하는 과정(7060), 생성된 제1 서명 정보를 제2 전자장치로 송신하는 과정(7070) 및 제1 ID, 제2 ID, 제1 키, 제2 키, 제3 키, 제1 서명 정보 및 제2 서명 정보에 기초하여 세션 키를 생성하는 과정(7080)을 포함할 수 있다.
일 예로, 제1 난수는
Figure 112019004784939-pat00285
이고, 제2 난수는
Figure 112019004784939-pat00286
이고, 제1 키는
Figure 112019004784939-pat00287
이고, 제2 키는
Figure 112019004784939-pat00288
이고, 제3 키는
Figure 112019004784939-pat00289
일 수 있다.
다른 예로, 상술한 제3 키는
Figure 112019004784939-pat00290
이고,
Figure 112019004784939-pat00291
는 제2 임시 서명 정보이고,
Figure 112019004784939-pat00292
는 제2 키이고,
Figure 112019004784939-pat00293
는 제1 서명 키에 포함되는 제1 서브 서명 키이고,
Figure 112019004784939-pat00294
는 제1 난수일 수 있다.
인일 예로, 상술한 세션 키 생성 방법은 제1 ID, 상기 제1 임시 서명 키 및 상기 제1 서명 중 적어도 하나가 미리 송신되었는지 여부를 가리키는 지시자를 상기 제2 전자장치로 송신하는 과정을 더 포함할 수 있다.
상술한 제2 서명 정보는 제2 ID 및 제2 메시지에 기초하여 생성되고, 상술한 제2 메시지는 제1 키, 제2 키, 제3 키, 제1 ID 및 제2 ID에 기초하여 생성될 수 있다.
일 예로, 제2 서명 정보는 아래의 수학식에 기초하여 생성될 수 있다.
Figure 112019004784939-pat00295
여기서,
Figure 112019004784939-pat00296
은 서명 함수,
Figure 112019004784939-pat00297
는 상기 제2 메시지,
Figure 112019004784939-pat00298
는 공개 파라미터(parameter),
Figure 112019004784939-pat00299
는 상기 제2 ID,
Figure 112019004784939-pat00300
는 상기 제2 전자장치에 대응하는 서명 키,
Figure 112019004784939-pat00301
는 상기 제2 서명 정보일 수 있다.
일 예로, 제2 메시지는 아래의 수학식에 기초하여 생성될 수 있다.
Figure 112019004784939-pat00302
여기서,
Figure 112019004784939-pat00303
는 상기 제2 메시지,
Figure 112019004784939-pat00304
는 상기 제2 키,
Figure 112019004784939-pat00305
는 상기 제2 ID,
Figure 112019004784939-pat00306
는 상기 제1 키,
Figure 112019004784939-pat00307
는 상기 제1 ID,
Figure 112019004784939-pat00308
는 상기 제3 키,
Figure 112019004784939-pat00309
은 결합 연산자일 수 있다.
또한, 상술한 제2 서명 정보는 제2 키와 관련되는 타원 곡선 상의 X-축 좌표 정보를 포함할 수 있다.
다른 예로, 제1 메시지는 아래의 수학식에 기초하여 생성될 수 있다.
Figure 112019004784939-pat00310
여기서,
Figure 112019004784939-pat00311
는 상기 제1 메시지,
Figure 112019004784939-pat00312
는 상기 제1 키,
Figure 112019004784939-pat00313
는 상기 제1 ID,
Figure 112019004784939-pat00314
는 상기 제2 키,
Figure 112019004784939-pat00315
는 상기 제2 ID,
Figure 112019004784939-pat00316
는 상기 제3 키,
Figure 112019004784939-pat00317
는 상기 제2 서명 정보이고,
Figure 112019004784939-pat00318
은 결합 연산자일 수 있다.
다른 예로, 제1 서명 정보는 아래의 수학식에 기초하여 생성될 수 있다.
Figure 112019004784939-pat00319
여기서,
Figure 112019004784939-pat00320
은 서명 함수,
Figure 112019004784939-pat00321
는 상기 제1 메시지,
Figure 112019004784939-pat00322
는 공개 파라미터(parameter),
Figure 112019004784939-pat00323
는 상기 제1 ID,
Figure 112019004784939-pat00324
는 상기 제1 전자장치에 대응하는 서명 키,
Figure 112019004784939-pat00325
는 상기 제1 서명 정보일 수 있다.
상술한 세션 키 생성 과정의 일 예에서, 세션 키는 아래의 수학식에 기초하여 생성될 수 있다.
Figure 112019004784939-pat00326
여기서,
Figure 112019004784939-pat00327
는 해쉬 함수,
Figure 112019004784939-pat00328
는 상기 제1 ID,
Figure 112019004784939-pat00329
는 상기 제2 ID,
Figure 112019004784939-pat00330
는 상기 제1 키,
Figure 112019004784939-pat00331
는 상기 제2 키,
Figure 112019004784939-pat00332
는 상기 제3 키,
Figure 112019004784939-pat00333
는 상기 제1 서명 정보,
Figure 112019004784939-pat00334
는 상기 제2 서명 정보일 수 있다.
일 예로, 제1 난수 및 상기 제2 난수는 집합
Figure 112019004784939-pat00335
에서 선택될 수 있다.
한편, 상술한 본 개시의 다양한 실시 예들에 따른 세션 키 생성 방법은 컴퓨터로 실행 가능한 프로그램 코드로 구현되어 다양한 비 일시적 판독 가능 매체(non-transitory computer readable medium)에 저장된 상태로 프로세서에 의해 실행되도록 각 서버 또는 기기들에 제공될 수 있다.
일 예로, 제1 전자장치에 대응하는 제1 ID, 제1 전자장치에 대응하는 제1 임시 서명 키, 제1 전자장치에 대응하는 제1 서명, 제1 난수에 기초하여 생성된 제1 키를 제2 전자장치로 송신하는 과정, 제1 키에 기초하여 생성된 제2 서명 정보 및 제2 전자장치에 대응하는 제2 ID를 수신하는 과정, 제2 서명 정보에 기초하여, 제2 난수와 관련되는 제2 키를 획득하는 과정, 제1 난수 및 제2 키에 기초하여 제3 키를 생성하는 과정, 제1 키, 제2 키, 제3 키, 제1 ID 및 제2 ID에 기초하여 제1 메시지를 생성하는 과정, 제1 ID 및 제1 메시지에 기초하여 제1 서명 정보를 생성하는 과정, 생성된 제1 서명 정보를 제2 전자장치로 송신하는 과정 및 제1 ID, 제2 ID, 제1 키, 제2 키, 제3 키, 제1 서명 정보 및 제2 서명 정보에 기초하여 세션 키를 생성하는 과정을 수행하는 프로그램이 저장된 비일시적 판독 가능 매체(non-transitory computer readable medium)가 제공될 수 있다.
비 일시적 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상술한 다양한 어플리케이션 또는 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등과 같은 비일시적 판독 가능 매체에 저장되어 제공될 수 있다.
또한, 이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
사물인터넷 시스템: 10 제1 전자장치: 100, 100'
제2 전자장치: 200, 200' 송수신부: 110, 210
프로세서: 120, 220, 630 통신부: 610
저장부: 620

Claims (24)

  1. 세션 키(session key)를 생성하는 방법에 있어서,
    제1 전자장치에 대응하는 제1 ID(identification), 상기 제1 전자장치에 대응하는 제1 임시 서명 키, 상기 제1 전자장치에 대응하는 제1 서명 및 제1 난수에 기초하여 생성된 제1 키를 제2 전자장치로 송신하는 과정;
    상기 제1 키에 기초하여 생성된 제2 서명 정보 및 상기 제2 전자장치에 대응하는 제2 ID를 수신하는 과정;
    상기 제2 서명 정보에 대한 검증과정에 기초하여, 제2 난수와 관련되는 제2 키를 획득하는 과정;
    상기 제1 난수 및 상기 제2 키에 기초하여 제3 키를 생성하는 과정;
    상기 제1 키, 상기 제2 키, 상기 제3 키, 상기 제1 ID 및 상기 제2 ID에 기초하여 제1 메시지를 생성하는 과정;
    상기 제1 ID 및 상기 제1 메시지에 기초하여 제1 서명 정보를 생성하는 과정;
    상기 생성된 제1 서명 정보를 제2 전자장치로 송신하는 과정; 및
    상기 제1 ID, 상기 제2 ID, 상기 제1 키, 상기 제2 키, 상기 제3 키, 상기 제1 서명 정보 및 상기 제2 서명 정보에 기초하여 세션 키를 생성하는 과정;을 포함하고,
    상기 제3 키는
    Figure 112021003794448-pat00451
    이고, 여기서, 상기
    Figure 112021003794448-pat00452
    는 제2 임시 서명 키이고, 상기
    Figure 112021003794448-pat00453
    는 상기 제2 키이고, 상기
    Figure 112021003794448-pat00454
    는 제1 서브 서명 키이고, 상기
    Figure 112021003794448-pat00455
    는 상기 제1 난수인, 세션 키 생성 방법.
  2. 제1항에 있어서,
    상기 제1 난수는
    Figure 112019004784939-pat00336
    이고, 상기 제2 난수는
    Figure 112019004784939-pat00337
    이고, 상기 제1 키는
    Figure 112019004784939-pat00338
    이고, 상기 제2 키는
    Figure 112019004784939-pat00339
    이고, 상기 제3 키는
    Figure 112019004784939-pat00340
    인, 세션 키 생성 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 제1 ID, 상기 제1 임시 서명 키 및 상기 제1 서명 중 적어도 하나가 미리 송신되었는지 여부를 가리키는 지시자를 상기 제2 전자장치로 송신하는 과정;을 포함하는, 세션 키 생성 방법.
  5. 제1항에 있어서,
    상기 제2 서명 정보는,
    상기 제2 ID 및 제2 메시지에 기초하여 생성되고,
    상기 제2 메시지는,
    상기 제1 키, 상기 제2 키, 상기 제3 키, 상기 제1 ID 및 상기 제2 ID에 기초하여 생성되는, 세션 키 생성 방법.
  6. 제5항에 있어서,
    상기 제2 서명 정보는 아래의 수학식에 기초하여 생성되고,
    Figure 112019004784939-pat00346

    여기서,
    Figure 112019004784939-pat00347
    은 서명 함수,
    Figure 112019004784939-pat00348
    는 상기 제2 메시지,
    Figure 112019004784939-pat00349
    는 공개 파라미터(parameter),
    Figure 112019004784939-pat00350
    는 상기 제2 ID,
    Figure 112019004784939-pat00351
    는 상기 제2 전자장치에 대응하는 서명 키,
    Figure 112019004784939-pat00352
    는 상기 제2 서명 정보인, 세션 키 생성 방법.
  7. 제5항에 있어서,
    상기 제2 메시지는 아래의 수학식에 기초하여 생성되고,
    Figure 112019004784939-pat00353

    여기서,
    Figure 112019004784939-pat00354
    는 상기 제2 메시지,
    Figure 112019004784939-pat00355
    는 상기 제2 키,
    Figure 112019004784939-pat00356
    는 상기 제2 ID,
    Figure 112019004784939-pat00357
    는 상기 제1 키,
    Figure 112019004784939-pat00358
    는 상기 제1 ID,
    Figure 112019004784939-pat00359
    는 상기 제3 키,
    Figure 112019004784939-pat00360
    은 결합 연산자인, 세션 키 생성 방법.
  8. 제1항에 있어서,
    상기 제2 서명 정보는,
    타원 곡선 상의 X-축 좌표 정보를 포함하는, 세션 키 생성 방법.
  9. 제1항에 있어서,
    상기 제1 메시지는 아래의 수학식에 기초하여 생성되고,
    Figure 112019004784939-pat00361

    여기서,
    Figure 112019004784939-pat00362
    는 상기 제1 메시지,
    Figure 112019004784939-pat00363
    는 상기 제1 키,
    Figure 112019004784939-pat00364
    는 상기 제1 ID,
    Figure 112019004784939-pat00365
    는 상기 제2 키,
    Figure 112019004784939-pat00366
    는 상기 제2 ID,
    Figure 112019004784939-pat00367
    는 상기 제3 키,
    Figure 112019004784939-pat00368
    는 상기 제2 서명 정보이고,
    Figure 112019004784939-pat00369
    은 결합 연산자인, 세션 키 생성 방법.
  10. 제1항에 있어서,
    상기 제1 서명 정보는 아래의 수학식에 기초하여 생성되고,
    Figure 112019004784939-pat00370

    여기서,
    Figure 112019004784939-pat00371
    은 서명 함수,
    Figure 112019004784939-pat00372
    는 상기 제1 메시지,
    Figure 112019004784939-pat00373
    는 공개 파라미터(parameter),
    Figure 112019004784939-pat00374
    는 상기 제1 ID,
    Figure 112019004784939-pat00375
    는 상기 제1 전자장치에 대응하는 서명 키,
    Figure 112019004784939-pat00376
    는 상기 제1 서명 정보인, 세션 키 생성 방법.
  11. 제1항에 있어서,
    상기 세션 키는 아래의 수학식에 기초하여 생성되고,
    Figure 112019004784939-pat00377

    여기서,
    Figure 112019004784939-pat00378
    는 해쉬 함수,
    Figure 112019004784939-pat00379
    는 상기 제1 ID,
    Figure 112019004784939-pat00380
    는 상기 제2 ID,
    Figure 112019004784939-pat00381
    는 상기 제1 키,
    Figure 112019004784939-pat00382
    는 상기 제2 키,
    Figure 112019004784939-pat00383
    는 상기 제3 키,
    Figure 112019004784939-pat00384
    는 상기 제1 서명 정보,
    Figure 112019004784939-pat00385
    는 상기 제2 서명 정보인, 세션 키 생성 방법.
  12. 제1항에 있어서,
    상기 제1 난수 및 상기 제2 난수는 집합
    Figure 112019004784939-pat00386
    에서 선택되는, 세션 키 생성 방법.
  13. 세션 키(session key)를 생성하는 제1 전자장치에 있어서,
    송수신부; 및
    상기 제1 전자장치에 대응하는 제1 ID(identification), 상기 제1 전자장치에 대응하는 제1 임시 서명 키, 상기 제1 전자장치에 대응하는 제1 서명 및 제1 난수에 기초하여 생성된 제1 키를 제2 전자장치로 송신하도록 상기 송수신부를 제어하고,
    상기 제1 키에 기초하여 생성된 제2 서명 정보 및 상기 제2 전자장치에 대응하는 제2 ID를 수신하도록 상기 송수신부를 제어하고,
    상기 제2 서명 정보에 대한 검증과정에 기초하여, 제2 난수와 관련되는 제2 키를 획득하고,
    상기 제1 난수 및 상기 제2 키에 기초하여 제3 키를 생성하고,
    상기 제1 키, 상기 제2 키, 상기 제3 키, 상기 제1 ID 및 상기 제2 ID에 기초하여 제1 메시지를 생성하고,
    상기 제1 ID 및 상기 제1 메시지에 기초하여 제1 서명 정보를 생성하고,
    상기 생성된 제1 서명 정보를 제2 전자장치로 송신하도록 상기 송수신부를 제어하고,
    상기 제1 ID, 상기 제2 ID, 상기 제1 키, 상기 제2 키, 상기 제3 키, 상기 제1 서명 정보 및 상기 제2 서명 정보에 기초하여 세션 키를 생성하는 프로세서;를 포함하고,
    상기 제3 키는
    Figure 112021003794448-pat00456
    이고, 여기서, 상기
    Figure 112021003794448-pat00457
    는 제2 임시 서명 키이고, 상기
    Figure 112021003794448-pat00458
    는 상기 제2 키이고, 상기
    Figure 112021003794448-pat00459
    는 제1 서브 서명 키이고, 상기
    Figure 112021003794448-pat00460
    는 상기 제1 난수인, 제1 전자장치.
  14. 제13항에 있어서,
    상기 제1 난수는
    Figure 112019004784939-pat00387
    이고, 상기 제2 난수는
    Figure 112019004784939-pat00388
    이고, 상기 제1 키는
    Figure 112019004784939-pat00389
    이고, 상기 제2 키는
    Figure 112019004784939-pat00390
    이고, 상기 제3 키는
    Figure 112019004784939-pat00391
    인, 제1 전자장치.
  15. 삭제
  16. 제13항에 있어서,
    상기 프로세서는,
    상기 제1 ID, 상기 제1 임시 서명 키 및 상기 제1 서명 중 적어도 하나가 미리 송신되었는지 여부를 가리키는 지시자를 송신하도록 상기 송수신부를 제어하는, 제1 전자장치.
  17. 제13항에 있어서,
    상기 제2 서명 정보는,
    상기 제2 ID 및 제2 메시지에 기초하여 생성되고,
    상기 제2 메시지는,
    상기 제1 키, 상기 제2 키, 상기 제3 키, 상기 제1 ID 및 상기 제2 ID에 기초하여 생성되는, 제1 전자장치.
  18. 제17항에 있어서,
    상기 제2 서명 정보는 아래의 수학식에 기초하여 생성되고,
    Figure 112019004784939-pat00397

    여기서,
    Figure 112019004784939-pat00398
    은 서명 함수,
    Figure 112019004784939-pat00399
    는 상기 제2 메시지,
    Figure 112019004784939-pat00400
    는 공개 파라미터(parameter),
    Figure 112019004784939-pat00401
    는 상기 제2 ID,
    Figure 112019004784939-pat00402
    는 상기 제2 전자장치에 대응하는 서명 키인, 제1 전자장치.
  19. 제17항에 있어서,
    상기 제2 메시지는 아래의 수학식에 기초하여 생성되고,
    Figure 112019004784939-pat00403

    여기서,
    Figure 112019004784939-pat00404
    는 상기 제2 메시지,
    Figure 112019004784939-pat00405
    는 상기 제2 키,
    Figure 112019004784939-pat00406
    는 상기 제2 ID,
    Figure 112019004784939-pat00407
    는 상기 제1 키,
    Figure 112019004784939-pat00408
    는 상기 제1 ID,
    Figure 112019004784939-pat00409
    는 상기 제3 키,
    Figure 112019004784939-pat00410
    은 결합 연산자인, 제1 전자장치.
  20. 제13항에 있어서,
    상기 제2 서명 정보는,
    타원 곡선 상의 X-축 좌표 정보를 포함하는, 제1 전자장치.
  21. 제13항에 있어서,
    상기 제1 메시지는 아래의 수학식에 기초하여 생성되고,
    Figure 112019004784939-pat00411

    여기서,
    Figure 112019004784939-pat00412
    는 상기 제1 메시지,
    Figure 112019004784939-pat00413
    는 상기 제1 키,
    Figure 112019004784939-pat00414
    는 상기 제1 ID,
    Figure 112019004784939-pat00415
    는 상기 제2 키,
    Figure 112019004784939-pat00416
    는 상기 제2 ID,
    Figure 112019004784939-pat00417
    는 상기 제3 키,
    Figure 112019004784939-pat00418
    는 상기 제2 서명 정보이고,
    Figure 112019004784939-pat00419
    은 결합 연산자인, 제1 전자장치.
  22. 제13항에 있어서,
    상기 제1 서명 정보는 아래의 수학식에 기초하여 생성되고,
    Figure 112019004784939-pat00420

    여기서,
    Figure 112019004784939-pat00421
    은 서명 함수,
    Figure 112019004784939-pat00422
    는 상기 제1 메시지,
    Figure 112019004784939-pat00423
    는 공개 파라미터(parameter),
    Figure 112019004784939-pat00424
    는 상기 제1 ID,
    Figure 112019004784939-pat00425
    는 상기 제1 전자장치에 대응하는 서명 키인, 제1 전자장치.
  23. 제13항에 있어서,
    상기 세션 키는 아래의 수학식에 기초하여 생성되고,
    Figure 112019004784939-pat00426

    여기서,
    Figure 112019004784939-pat00427
    는 해쉬 함수,
    Figure 112019004784939-pat00428
    는 상기 제1 ID,
    Figure 112019004784939-pat00429
    는 상기 제2 ID,
    Figure 112019004784939-pat00430
    는 상기 제1 키,
    Figure 112019004784939-pat00431
    는 상기 제2 키,
    Figure 112019004784939-pat00432
    는 상기 제3 키,
    Figure 112019004784939-pat00433
    는 상기 제1 서명 정보,
    Figure 112019004784939-pat00434
    는 상기 제2 서명 정보인, 제1 전자장치.
  24. 제13항에 있어서,
    상기 제1 난수 및 상기 제2 난수는 집합
    Figure 112020069515024-pat00435
    에서 선택되는, 제1 전자장치.
KR1020190005055A 2019-01-15 2019-01-15 세션 키를 생성하는 방법 및 그 전자장치 KR102285310B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190005055A KR102285310B1 (ko) 2019-01-15 2019-01-15 세션 키를 생성하는 방법 및 그 전자장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190005055A KR102285310B1 (ko) 2019-01-15 2019-01-15 세션 키를 생성하는 방법 및 그 전자장치

Publications (2)

Publication Number Publication Date
KR20200088595A KR20200088595A (ko) 2020-07-23
KR102285310B1 true KR102285310B1 (ko) 2021-08-02

Family

ID=71894181

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190005055A KR102285310B1 (ko) 2019-01-15 2019-01-15 세션 키를 생성하는 방법 및 그 전자장치

Country Status (1)

Country Link
KR (1) KR102285310B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113612610B (zh) * 2021-09-15 2024-02-02 深圳市国信量子科技有限公司 一种会话密钥协商方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101802826B1 (ko) * 2016-10-27 2017-11-30 고려대학교 산학협력단 Id 기반 인증 및 키 교환 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101133262B1 (ko) * 2010-04-08 2012-04-05 충남대학교산학협력단 강인한 scada시스템의 하이브리드 키 관리방법 및 세션키 생성방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101802826B1 (ko) * 2016-10-27 2017-11-30 고려대학교 산학협력단 Id 기반 인증 및 키 교환 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
I-PAKE: Identity-Based Password Authenticated Key Exchange draft-kwon-yoon-kim-ipake-01(2013.05.03.) 1부.*
박진영, 등. "ID 기반 서명 기법을 이용한 IP 카메라 인증 및 키 교환 프로토콜." 정보보호학회논문지 28(4), pp.789-801(2018.) 1부.*

Also Published As

Publication number Publication date
KR20200088595A (ko) 2020-07-23

Similar Documents

Publication Publication Date Title
TWI735493B (zh) 在網路系統中使用之登記者裝置/方法及組態器裝置/方法及相關電腦程式產品
EP3318043B1 (en) Mutual authentication of confidential communication
US10015159B2 (en) Terminal authentication system, server device, and terminal authentication method
EP3105904B1 (en) Assisted device provisioning in a network
US11210658B2 (en) Constructing a distributed ledger transaction on a cold hardware wallet
CN109150897B (zh) 一种端到端的通信加密方法及装置
US11057196B2 (en) Establishing shared key data for wireless pairing
KR20170057549A (ko) 해시함수 기반의 대규모 동시 전자서명 서비스 시스템 및 그 방법
EP3602997B1 (en) Mutual authentication system
AU2021271512A1 (en) Constructing a distributed ledger transaction on a cold hardware wallet
CN104094267A (zh) 安全共享来自源装置的媒体内容的方法、装置和系统
CN110402560B (zh) 具有前向安全性的基于身份的认证密钥交换方案中用于计算公有会话密钥的系统和方法
JP5380583B1 (ja) デバイス認証方法及びシステム
US20170353315A1 (en) Secure electronic entity, electronic apparatus and method for verifying the integrity of data stored in such a secure electronic entity
CN106131008B (zh) 视音频监控设备及其安全认证方法、视音频展示设备
CN114125832A (zh) 一种网络连接方法及终端、待配网设备、存储介质
CN110268675B (zh) 可编程硬件安全模块和可编程硬件安全模块上的方法
CN109644127B (zh) 用于获得设备之间的公共会话密钥的系统和方法
CN112602290B (zh) 一种身份验证方法、装置和可读存储介质
CN111654481A (zh) 一种身份认证方法、装置和存储介质
KR102164904B1 (ko) 세션 키를 생성하는 방법 및 그 전자장치
KR102285310B1 (ko) 세션 키를 생성하는 방법 및 그 전자장치
CN104966193A (zh) 一种利用蓝牙的安全传送id的系统和方法
US11153344B2 (en) Establishing a protected communication channel
KR102415628B1 (ko) Dim을 이용한 드론 인증 방법 및 장치

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant