KR102648499B1 - 기계 학습 기반 키 생성 장치 및 방법 - Google Patents

기계 학습 기반 키 생성 장치 및 방법 Download PDF

Info

Publication number
KR102648499B1
KR102648499B1 KR1020210032053A KR20210032053A KR102648499B1 KR 102648499 B1 KR102648499 B1 KR 102648499B1 KR 1020210032053 A KR1020210032053 A KR 1020210032053A KR 20210032053 A KR20210032053 A KR 20210032053A KR 102648499 B1 KR102648499 B1 KR 102648499B1
Authority
KR
South Korea
Prior art keywords
value
key generation
generation device
commit
hash
Prior art date
Application number
KR1020210032053A
Other languages
English (en)
Other versions
KR20220127587A (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 KR1020210032053A priority Critical patent/KR102648499B1/ko
Priority to US17/518,905 priority patent/US12095908B2/en
Publication of KR20220127587A publication Critical patent/KR20220127587A/ko
Application granted granted Critical
Publication of KR102648499B1 publication Critical patent/KR102648499B1/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/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • G06F18/24143Distances to neighbourhood prototypes, e.g. restricted Coulomb energy networks [RCEN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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)
    • H04L9/0825Key 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) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/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/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/26Testing cryptographic entity, e.g. testing integrity of encryption key or encryption algorithm

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Power Engineering (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)
  • Electrically Operated Instructional Devices (AREA)
  • Numerical Control (AREA)

Abstract

기계학습 기반 키 생성 장치 및 방법이 개시된다. 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법은 기계학습 기반 키 생성 장치들의 기계학습 기반 키 생성 방법에 있어서, 제1 키 생성 장치가, 제1 커밋 값을 생성하고, 제2 키 생성 장치가, 제2 커밋 값을 생성하고, 상기 제1 커밋 값과 상기 제2 커밋 값을 외부 저장소에 업로드하는 단계; 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 기정의된 신경망 학습 알고리즘을 이용하여 상호 간의 가중치 값을 일치시키기 위해 신경망 학습을 수행하는 단계; 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 상호 간에 상기 제1 커밋 값와 상기 제2 커밋 값을 공유하고, 상기 외부 저장소에 업로드된 제1 커밋 값과 제2 커밋 값을 비교하여 커밋 값의 검증을 수행하는 단계 및 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 상기 커밋 값의 검증이 성공인 경우, 상기 일치시킨 가중치 값을 이용하여 해시 값을 생성하고, 상호 간에 생성된 해시 값의 동일 여부를 검증하고, 상기 해시 값을 검증한 결과에 기반하여 세션 비밀 키를 생성하는 단계를 포함한다.

Description

기계 학습 기반 키 생성 장치 및 방법 {APPARATUS AND METHOD FOR GENERATING KEY BASED ON MACHINE LEARNING}
본 발명은 신경망 암호 기술에 관한 것으로, 보다 상세하게는 인공지능 기계 학습에 기반한 키 생성, 키 교환 및 사용자 인증 기술에 관한 것이다.
공개된 통신 환경을 통해 두 사용자 또는 서버와 사용자 사이에 신뢰할 수 있는 비밀키를 공유하는 것은 정보보호 서비스의 안전성을 결정하는 매우 중요한 기술이다.
현재, 사용자 사이의 비밀키를 공유하기 위한 기술로 공개키 암호 원리에 기반한 키교환 기술을 주로 활용하고 있으나, 대수학적인 난제에 안전성을 기반하고 있는 현재의 공개키 암호 기술은 양자컴퓨터 등과 같은 미래의 컴퓨팅 기술 발전에 의해 안전성 기반 문제가 해결되어 안전성이 심하게 훼손될 수 있다는 우려를 지니고 있다.
신경망 암호 기술은 기존의 특정 안전성 기반 문제를 이용하여 암호 알고리즘을 설계하는 대신, 인간의 지능을 모사하는 신경망 학습 모델을 이용해 키교환을 포함한 암호 알고리즘 설계를 연구하는 분야로 특정 안전성 기반 문제의 안전성에 전적으로 의존하는 기존 암호 알고리즘의 태생적 한계를 극복하기 위한 새로운 시도로 여겨지고 있다.
특히, 신경망 암호 기술 중에서 임의의 값으로 초기화된 두 신경망이 공개된 통신 환경을 통해 공유되는 작은 정보에 기반한 학습을 통해 동기화되는 과정을 이용하여 두 사용자 사이에 키를 교환하는 신경망 동기화 기반 키교환 기술은 현재 많은 연구가 진행되어 현실적인 환경에서 사용가능한 수준의 효율성을 보여주고 있다.
키교환 기술에서 키교환 과정의 효율성과 함께 가장 중요한 요구조건으로 고려되는 것이 사용자가 키를 공유한 상대방을 확인할 수 있는 방법을 제공하는 것으로 사용자가 키교환 과정에서 상대방을 정확하게 확인할 수 있는 기술을 인증된 키교환이라고 부른다.
인증되지 않은 키교환 기술의 경우 중간자(man-in-the-middle) 공격에 의해 통신환경을 제어하고 있는 공격자가 두 명의 사용자와 각각의 키를 교환하고 중간에서 사용자의 모든 통신 내역을 전달하는 역할을 수행하여, 키교환 기술의 안전성과 별개로 사용자의 모든 통신 내용을 획득할 수 있게 된다.
한편, 한국공개특허 제 10-2015-0142623 호“안전하게 메시지를 교환하기 위한 방법, 이 방법을 구현하기 위한 장치 및 시스템”는 장치들에 공통인 공유된 비밀 키(K)를 저장하고 있는 적어도 두개의 장치(D1,D2) 사이에서 메시지(M)를 안전하게 교환하는 방법 에 관하여 개시하고 있다.
본 발명은 사용자 간 키 교환에 있어서, 중간자(man-in-the-middle) 공격에 대한 취약성을 극복하고 안전한 비밀 통신을 위한 키 교환 기술과 사용자 인증을 제공하는 것을 목적으로 한다.
상기한 목적을 달성하기 위한 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법은 기계학습 기반 키 생성 장치들의 기계학습 기반 키 생성 방법에 있어서, 제1 키 생성 장치가, 제1 커밋 값을 생성하고, 제2 키 생성 장치가, 제2 커밋 값을 생성하고, 상기 제1 커밋 값과 상기 제2 커밋 값을 외부 저장소에 업로드하는 단계; 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 기정의된 신경망 학습 알고리즘을 이용하여 상호 간의 가중치 값을 일치시키기 위해 신경망 학습을 수행하는 단계; 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 상호 간에 상기 제1 커밋 값와 상기 제2 커밋 값을 공유하고, 상기 외부 저장소에 업로드된 제1 커밋 값과 제2 커밋 값을 비교하여 커밋 값의 검증을 수행하는 단계 및 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 상기 커밋 값의 검증이 성공인 경우, 상기 일치시킨 가중치 값을 이용하여 해시 값을 생성하고, 상호 간에 생성된 해시 값의 동일 여부를 검증하고, 상기 해시 값을 검증한 결과에 기반하여 세션 비밀 키를 생성하는 단계를 포함한다.
이 때, 상기 검증을 수행하는 단계는 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 각각 메시지 인증 코드를 이용하여 상기 신경망 학습 과정에서 출력된 패러티 비트와 상기 커밋 값 생성에 사용된 비밀 값으로부터 MAC 값을 생성할 수 있다.
이 때, 상기 검증을 수행하는 단계는 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 각각 상호 간에 생성된 상기 MAC 값을 공유하고, 공유 받은 상기 MAC 값과, 자신이 생성한 검증용 MAC 값과 비교하여 상기 MAC 값을 검증할 수 있다.
이 때, 상기 세션 비밀 키를 생성하는 단계는 기정의된 일방향 함수를 이용하여 상기 가중치 값으로부터 시드 값을 생성할 수 있다.
이 때, 상기 세션 비밀 키를 생성하는 단계는 기정의된 해시 함수를 이용하여 상기 시드 값과 사전에 공유된 키 생성 정보로부터 해시 값을 생성할 수 있다.
이 때, 상기 세션 비밀 키를 생성하는 단계는 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 각각 상호간에 생성된 해시 값을 공유하고, 공유 받은 해시 값과 자신이 생성한 해시 값을 비교하여 해시 값의 일치 여부를 검증할 수 있다.
이 때, 상기 세션 비밀 키를 생성하는 단계는 상기 해시 값이 일치 하면, 해시 값의 검증이 성공인 것으로 판단하고, 기정의된 키 생성 함수를 이용하여 상기 해시 값과 상기 키 생성 정보로부터 상기 세션 비밀 키를 생성할 수 있다.
또한, 상기한 목적을 달성하기 위한 본 발명의 일실시예에 따른 기계학습 기반 키 생성 장치는 하나 이상의 프로세서 및 상기 하나 이상의 프로세서에 의해 실행되는 적어도 하나 이상의 프로그램을 저장하는 실행메모리를 포함하고, 상기 적어도 하나 이상의 프로그램은 하나 이상의 프로세서; 및 상기 하나 이상의 프로세서에 의해 실행되는 적어도 하나 이상의 프로그램을 저장하는 실행메모리를 포함하고, 상기 적어도 하나 이상의 프로그램은 커밋 값을 생성하고, 상기 커밋 값을 외부 저장소에 업로드하고, 기정의된 신경망 학습 알고리즘을 이용하여 사용자 인증을 수행하기 위한 타 키 생성 장치와 상호 간의 가중치 값을 일치시키기 위해 신경망 학습을 수행하고, 상기 타 키 생성 장치와 상호 간에 커밋 값을 공유하고, 상기 외부 저장소에 업로드된 커밋 값과 공유 받은 커밋 값을 비교하여 커밋 값의 검증을 수행하고, 상기 커밋 값의 검증이 성공인 경우, 상기 일치시킨 가중치 값을 이용하여 해시 값을 생성하고, 상호 간에 생성된 해시 값의 동일 여부를 검증하고, 상기 해시 값을 검증한 결과에 기반하여 세션 비밀 키를 생성한다.
이 때, 상기 적어도 하나 이상의 프로그램은 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 각각 메시지 인증 코드를 이용하여 상기 신경망 학습 과정에서 출력된 패러티 비트와 상기 커밋 값 생성에 사용된 비밀 값으로부터 MAC 값을 생성할 수 있다.
이 때, 상기 적어도 하나 이상의 프로그램은 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 각각 상호 간에 생성된 상기 MAC 값을 공유하고, 공유 받은 상기 MAC 값과, 자신이 생성한 검증용 MAC 값과 비교하여 상기 MAC 값을 검증할 수 있다.
이 때, 상기 적어도 하나 이상의 프로그램은 기정의된 일방향 함수를 이용하여 상기 가중치 값으로부터 시드 값을 생성할 수 있다.
이 때, 상기 적어도 하나 이상의 프로그램은 기정의된 해시 함수를 이용하여 상기 시드 값과 사전에 공유된 키 생성 정보로부터 해시 값을 생성할 수 있다.
이 때, 상기 적어도 하나 이상의 프로그램은 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 각각 상호간에 생성된 해시 값을 공유하고, 공유 받은 해시 값과 자신이 생성한 해시 값을 비교하여 해시 값의 일치 여부를 검증할 수 있다.
이 때, 상기 적어도 하나 이상의 프로그램은 상기 해시 값이 일치 하면, 해시 값의 검증이 성공인 것으로 판단하고, 기정의된 키 생성 함수를 이용하여 상기 해시 값과 상기 키 생성 정보로부터 상기 세션 비밀 키를 생성할 수 있다.
본 발명은 사용자 간 키 교환에 있어서, 중간자(man-in-the-middle) 공격에 대한 취약성을 극복하고 안전한 비밀 통신을 위한 키 교환 기술과 사용자 인증을 제공할 수 있다.
도 1은 본 발명의 일실시예에 따른 기계학습 기반 키 생성 시스템을 나타낸 블록도이다.
도 2는 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법을 나타낸 동작흐름도이다.
도 3은 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법을 나타낸 시퀀스 다이어그램이다.
도 4는 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 도면이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 기계학습 기반 키 생성 시스템을 나타낸 블록도이다. 도 2는 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법을 나타낸 동작흐름도이다.
도 1은 본 발명의 일실시예에 따른 기계학습 기반 키 생성 시스템은 공개 저장소(10), 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)를 포함한다.
제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)는 암호화 기술 분야에서 지칭되는 ALICE와 BOB 으로 표현 될 수 있다.
도 2를 참조하면, 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법은 먼저 커밋 값을 생성할 수 있다(S210).
즉, 단계(S210)는 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가 키 생성 및 키 교환을 위한 복수개의 커밋(commit) 값들을 생성하고, 외부 저장소(스토리지)인 공개 저장소(10)에 커밋 값들을 업로드할 수 있다.
이 때, 단계(S210)는 공개 저장소(10)가, 업로드된 커밋 값을 공개하고, 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)와 업로드된 커밋 값을 공유할 수 있다.
이 때, 단계(S210)는 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가 사전에 생성된 비밀값과 난수를 이용하여 커밋 값을 생성할 수 있다.
이 때, 단계(S210)는 제1 키 생성 장치(100)가 제1 비밀 값 skA 와 제1 난수 rA를 이용하여 제1 커밋 값 cA = commit( skA , rA )을 생성할 수 있다.
이 때, 단계(S210)는 제 2 키 생성 장치(200)가 제2 비밀 값 skB 와 제2 난수 rB를 이용하여 제2 커밋 값 cB = commit( skB , rB )을 생성할 수 있다.
이 때, 단계(S210)는 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가 commit 알고리즘으로 keyed hash 함수를 이용하여 커밋 값을 생성할 수 있다.
이 때, 비밀 값과 난수는 추후 검증을 위해 공개될 수 있다.
또한, 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법은 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가, 기정의된 신경망 학습 알고리즘을 이용하여 상호 간의 가중치 값(weight)을 일치시키기 위해 신경망 학습을 수행할 수 있다(S220).
이 때, 제1 키 생성 장치(100)의 제1 가중치 값은 weightA로 나타낼 수 있고, 제2 키 생성 장치(200)의 제2 가중치 값은 weightB로 나타낼 수 있다.
이 때, 단계(S220)는 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가 기정의된 신경망 학습 알고리즘을 이용하여 제1 가중치 값과 제2 가중치 값을 서로 일치 시킬 수 있다.
이 때, 신경망 학습 알고리즘은 종래 다양한 신경망 알고리즘이 사용될 수 있다.
또한, 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법은 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가 상호 인증을 위해 상호 간에 상기 제1 커밋 값와 상기 제2 커밋 값을 공유하고, 공개 저장소(10)에 업로드된 제1 커밋 값과 제2 커밋 값을 비교하여 커밋 값의 검증을 수행할 수 있다(S230).
이 때, 단계(S230)는 제1 키 생성 장치(100) 및 제2 키 생성 장치(200)가 메시지 인증 코드(message authentication code, MAC)를 이용하여 신경망 학습을 과정에서 생성된 출력 값(패러티 비트)의 집합과 커밋 값 생성에 사용된 비밀 값으로부터 MAC 값을 생성할 수 있다.
이 때, 단계(S230)는 제1 키 생성 장치(100)가 신경망 학습을 과정에서 생성된 출력 값 (제1 패러티 비트)의 집합 pA 과 제1 커밋 값 생성에 사용된 제1 비밀 값 skA 을 이용하여, 제1 MAC 값 mA = mac( skA , pA )을 생성할 수 있다.
이 때, 단계(S230)는 제2 키 생성 장치(200)가 신경망 학습을 과정에서 생성된 출력 값(제2 패러티 비트)의 집합 pB 과 제2 커밋 값 생성에 사용된 제2 비밀 값 skB 을 이용하여, 제2 MAC 값 mB = mac( skB , pB )을 생성할 수 있다.
이 때, 단계(S230)는 제1 키 생성 장치(100)가 제1 MAC 값을 제 2 키 생성 장치(200)에게 전송하고, 이 때, 제2 키 생성 장치(100)는 제2 MAC 값을 제 1 키 생성 장치(100)에게 전송할 수 있다.
이 때, 단계(S230)는 제1 키 생성 장치(100)가 제1 커밋 값, 제1 비밀 값 및 제1 난수를 제2 키 생성 장치(200)에게 전송할 수 있다.
이 때, 단계(S230)는 제2 키 생성 장치(200)가 수신한 제1 커밋 값이 공개 저장소(10)에 업로드된 제1 커밋 값과 일치하는지 확인하고, 수신한 제1 비밀 값 skA 을 이용하여 제1 검증용 MAC 값 mAB = mac( skA , pB )을 생성할 수 있다.
이 때, 단계(S230)는 제2 키 생성 장치(200)가 수신한 제1 MAC 값과 제1 검증용 MAC 값을 비교하여 일치하면 검증이 성공인 것으로 판단하고, 제1 키 생성 장치(100)에게 제2 커밋 값, 제2 비밀 값 및 제2 난수를 제1 키 생성 장치(100)에게 전송할 수 있다.
이 때, 단계(S230)는 제1 키 생성 장치(100)가 수신한 제2 커밋 값이 공개 저장소(10)에 업로드된 제2 커밋 값과 일치하는지 확인하고, 수신한 제2 비밀 값 skB 을 이용하여 제2 검증용 MAC 값 mBA = mac( skB , pA )을 생성할 수 있다.
이 때, 단계(S230)는 제1 키 생성 장치(200)가 수신한 제2 MAC 값과 제2 검증용 MAC 값을 비교하여 일치하면 커밋 값의 검증이 성공인 것으로 판단할 수 있다.
또한, 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법은 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가 상기 일치시킨 가중치 값을 이용하여 각각 제1 해시 값과 제2 해시 값를 생성하고, 상호 간에 상기 제1 해시 값과 상기 제2 해시 값의 동일 여부를 검증한 결과에 기반하여 세션 비밀 키를 생성할 수 있다(S240).
이 때, 단계(S240)는 제1 키 생성 장치(100)가 기정의된 일방향 함수(one way function)를 이용하여 제1 가중치 값 weightA 으로부터 제1 시드 값 seedA=OWF(weightA)을 생성할 수 있다.
이 때, 일방향 함수(one way function)은 종래의 다양한 hash 함수 중 하나가 사용될 수 있다.
이 때, 단계(S240)는 제1 키 생성 장치(100)가 기정의된 해시(hash) 함수를 이용하여 제1 시드값 seedA 으로부터 제1 해시 값 ckA = H(seedA||infoA)을 생성하고, 제2 키 생성 장치(200)에게 제1 해시 값 ckA를 전송할 수 있다.
제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)는 신경망 학습 과정에서, 서로의 가중치 값을 일치시켰기 때문에 weightA = weightB이다.
따라서, 제2 키 생성 장치(200)는 기정의된 일방향 함수(one way function)를 이용하여 제2 가중치 값 weightB 으로부터 제2 시드 값 seedB=OWF(weightB)을 생성할 수 있다.
이 때, 단계(S240)는 제2 키 생성 장치(200)가 기정의된 해시(hash) 함수를 이용하여 제2 시드 값 seedB 으로부터 제2 해시 값 ckB = H(seedB||infoB)을 생성하고, 제1 해시 값과 제2 해시 값이 일치하는지 검증할 수 있다.
이 때, infoA 및 infoB는 해시 값 생성을 위해 1 키 생성 장치(100) 및 제 2 키 생성 장치(200) 사이에 사전에 공유된 키 생성 정보일 수 있다.
이 때, 단계(S240)는 제2 키 생성 장치(200)가 제1 해시 값과 제2 해시 값이 일치하면, 해시 값의 검증이 성공한 것으로 판단하고, 제1 키 생성 장치(100)에게 제2 해시 값 ckB을 전송할 수 있다.
이 때, 단계(S240)는 제1 키 생성 장치(100)가 수신한 제2 해시 값과 기 생성한 제1 해시 값이 일치하는지 검증하고, 제1 해시 값과 제2 해시 값이 일치하면 검증이 성공한 것으로 판단할 수 있다.
이 때, 단계(S240)는 제1 키 생성 장치(100) 및 제2 키 생성 장치(200)가 제1 해시 값 및 제2 해시 값의 검증이 완료되면, 기정의된 키 생성 함수(Key Generation Fuction, KGF)를 이용하여 비밀 통신을 위해 세션 비밀키 sk = KGF(seedA,infosession) = KGF(seedB,infosession)를 생성할 수 있다.
이 때, infosession 는 infoA 및 infoB에 상응할 수 있다.
제1 시드 값 seedA과 제2 시드 값 seedB 은 동일한 가중치 값(weightA = weightB )을 기반으로 생성되었기 때문에 제1 키 생성 장치(100) 및 제2 키 생성 장치(200)는 동일하게 인증된 비밀 세션 키 sk를 공유할 수 있다.
도 3은 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법을 나타낸 시퀀스 다이어그램이다.
도 3을 참조하면, 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)는 키 생성 및 키 교환을 위한 복수개의 커밋(commit) 값들을 생성하고, 외부 저장소(스토리지)인 공개 저장소(10)에 커밋 값들을 업로드할 수 있다(S310, 320).
이 때, 공개 저장소(10)는 업로드된 커밋 값을 공개하고, 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)와 업로드된 커밋 값을 공유할 수 있다.
이 때, 단계(S310, S320)는 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가 비밀값과 난수를 이용하여 커밋 값을 생성할 수 있다.
이 때, 단계(S310, S320)는 제1 키 생성 장치(100)가 제1 비밀 값 skA 와 제1 난수 rA를 이용하여 제1 커밋 값 cA = commit( skA , rA )을 생성할 수 있다.
이 때, 단계(S310, S320)는 제 2 키 생성 장치(200)가 제2 비밀 값 skB 와 제2 난수 rB를 이용하여 제2 커밋 값 cB = commit( skB , rB )을 생성할 수 있다.
이 때, 단계(S310, S320)는 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가 commit 알고리즘으로 keyed hash 함수를 이용하여 커밋 값을 생성할 수 있다.
이 때, 비밀 값과 난수는 추후 검증을 위해 공개될 수 있다.
또한, 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법은 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가, 기정의된 신경망 학습 알고리즘을 이용하여 상호 간의 가중치 값(weight)을 일치시키기 위해 신경망 학습을 수행할 수 있다(S330).
이 때, 제1 키 생성 장치(100)의 제1 가중치 값은 weightA로 나타낼 수 있고, 제2 키 생성 장치(200)의 제2 가중치 값은 weightB로 나타낼 수 있다.
이 때, 단계(S330)는 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가 기정의된 신경망 학습 알고리즘을 이용하여 제1 가중치 값과 제2 가중치 값을 서로 일치 시킬 수 있다.
이 때, 신경망 학습 알고리즘은 종래 다양한 신경망 알고리즘이 사용될 수 있다.
또한, 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법은 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가 상호 인증을 위해 상호 간에 상기 제1 커밋 값와 상기 제2 커밋 값을 공유하고, 공개 저장소(10)에 업로드된 제1 커밋 값과 제2 커밋 값을 비교하여 커밋 값의 검증을 수행할 수 있다(S340, S350).
이 때, 단계(S340, S350)는 제1 키 생성 장치(100) 및 제2 키 생성 장치(200)가 메시지 인증 코드(message authentication code, MAC)를 이용하여 신경망 학습을 과정에서 생성된 출력 값(패러티 비트)의 집합과 커밋 값 생성에 사용된 비밀 값으로부터 MAC 값을 생성할 수 있다.
이 때, 단계(S340, S350)는 제1 키 생성 장치(100)가 신경망 학습을 과정에서 생성된 출력 값 (제1 패러티 비트)의 집합 pA 과 제1 커밋 값 생성에 사용된 제1 비밀 값 skA 을 이용하여, 제1 MAC 값 mA = mac( skA , pA )을 생성할 수 있다.
이 때, 단계(S340, S350)는 제2 키 생성 장치(200)가 신경망 학습을 과정에서 생성된 출력 값(제2 패러티 비트)의 집합 pB 과 제2 커밋 값 생성에 사용된 제2 비밀 값 skB 을 이용하여, 제2 MAC 값 mB = mac( skB , pB )을 생성할 수 있다.
이 때, 단계(S340, S350)는 제1 키 생성 장치(100)가 제1 MAC 값을 제 2 키 생성 장치(200)에게 전송하고, 이 때, 제2 키 생성 장치(100)는 제2 MAC 값을 제 1 키 생성 장치(100)에게 전송할 수 있다.
또한, 단계(S360)는 제1 키 생성 장치(100)가 제1 커밋 값, 제1 비밀 값 및 제1 난수를 제2 키 생성 장치(200)에게 전송할 수 있다.
이 때, 단계(S360)는 제2 키 생성 장치(200)가 수신한 제1 커밋 값이 공개 저장소(10)에 업로드된 제1 커밋 값과 일치하는지 확인하고, 수신한 제1 비밀 값 skA 을 이용하여 제1 검증용 MAC 값 mAB = mac( skA , pB )을 생성할 수 있다.
이 때, 단계(S360)는 제2 키 생성 장치(200)가 수신한 제1 MAC 값과 제1 검증용 MAC 값을 비교하여 일치하면 검증이 성공인 것으로 판단할 수 있다.
이 때, 단계(S370)는 제1 키 생성 장치(100)에게 제2 커밋 값, 제2 비밀 값 및 제2 난수를 제1 키 생성 장치(100)에게 전송할 수 있다.
이 때, 단계(S370)는 제1 키 생성 장치(100)가 수신한 제2 커밋 값이 공개 저장소(10)에 업로드된 제2 커밋 값과 일치하는지 확인하고, 수신한 제2 비밀 값 skB 을 이용하여 제2 검증용 MAC 값 mBA = mac( skB , pA )을 생성할 수 있다.
이 때, 단계(S370)는 제1 키 생성 장치(200)가 수신한 제2 MAC 값과 제2 검증용 MAC 값을 비교하여 일치하면 커밋 값의 검증이 성공인 것으로 판단할 수 있다.
또한, 본 발명의 일실시예에 따른 기계학습 기반 키 생성 방법은 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)가 상기 일치시킨 가중치 값을 이용하여 각각 제1 해시 값과 제2 해시 값를 생성하고, 상호 간에 상기 제1 해시 값과 상기 제2 해시 값의 동일 여부를 검증한 결과에 기반하여 세션 비밀 키를 생성할 수 있다(S380, S390).
이 때, 단계(S380)는 제1 키 생성 장치(100)가 기정의된 일방향 함수(one way function)를 이용하여 제1 가중치 값 weightA 으로부터 제1 시드 값 seedA=OWF(weightA)을 생성할 수 있다.
이 때, 일방향 함수(one way function)은 종래의 다양한 hash 함수 중 하나가 사용될 수 있다.
이 때, 단계(S380)는 제1 키 생성 장치(100)가 기정의된 해시(hash) 함수를 이용하여 제1 시드값 seedA 으로부터 제1 해시 값 ckA = H(seedA||infoA)을 생성하고, 제2 키 생성 장치(200)에게 제1 해시 값 ckA를 전송할 수 있다.
이 때, 제1 키 생성 장치(100) 및 제 2 키 생성 장치(200)는 신경망 학습 과정에서, 서로의 가중치 값을 일치시켰기 때문에 weightA = weightB이다.
따라서, 제2 키 생성 장치(200)는 기정의된 일방향 함수(one way function)를 이용하여 제2 가중치 값 weightB 으로부터 제2 시드 값 seedB=OWF(weightB)을 생성할 수 있다.
이 때, 단계(S390)는 제2 키 생성 장치(200)가 기정의된 해시(hash) 함수를 이용하여 제2 시드 값 seedB 으로부터 제2 해시 값 ckB = H(seedB||infoB)을 생성하고, 제1 해시 값과 제2 해시 값이 일치하는지 검증할 수 있다.
이 때, infoA 및 infoB는 해시 값 생성을 위해 1 키 생성 장치(100) 및 제 2 키 생성 장치(200) 사이에 사전에 공유된 키 생성 정보일 수 있다.
이 때, 단계(S390)는 제2 키 생성 장치(200)가 제1 해시 값과 제2 해시 값이 일치하면, 해시 값의 검증이 성공한 것으로 판단하고, 제1 키 생성 장치(100)에게 제2 해시 값 ckB을 전송할 수 있다.
이 때, 단계(S390)는 제1 키 생성 장치(100)가 수신한 제2 해시 값과 기 생성한 제1 해시 값이 일치하는지 검증하고, 제1 해시 값과 제2 해시 값이 일치하면 검증이 성공한 것으로 판단할 수 있다.
이 때, 단계(S390)는 제1 키 생성 장치(100) 및 제2 키 생성 장치(200)가 제1 해시 값 및 제2 해시 값의 검증이 완료되면, 기정의된 키 생성 함수(Key Generation Fuction, KGF)를 이용하여 비밀 통신을 위해 세션 비밀키 sk = KGF(seedA,infosession) = KGF(seedB,infosession)를 생성할 수 있다.
이 때, infosession 는 infoA 및 infoB에 상응할 수 있다.
제1 시드 값 seedA과 제2 시드 값 seedB 은 동일한 가중치 값(weightA = weightB )을 기반으로 생성되었기 때문에 제1 키 생성 장치(100) 및 제2 키 생성 장치(200)는 동일하게 인증된 비밀 세션 키 sk를 공유할 수 있다.
도 4는 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 도면이다.
도 4를 참조하면, 본 발명의 일실시예에 따른 기계학습 기반 키 생성 장치는 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템(1100)에서 구현될 수 있다. 도 4에 도시된 바와 같이, 컴퓨터 시스템(1100)은 버스(1120)를 통하여 서로 통신하는 하나 이상의 프로세서(1110), 메모리(1130), 사용자 인터페이스 입력 장치(1140), 사용자 인터페이스 출력 장치(1150) 및 스토리지(1160)를 포함할 수 있다. 또한, 컴퓨터 시스템(1100)은 네트워크(1180)에 연결되는 네트워크 인터페이스(1170)를 더 포함할 수 있다. 프로세서(1110)는 중앙 처리 장치 또는 메모리(1130)나 스토리지(1160)에 저장된 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리(1130) 및 스토리지(1160)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체일 수 있다. 예를 들어, 메모리는 ROM(1131)이나 RAM(1132)을 포함할 수 있다.
본 발명의 일실시예에 따른 기계학습 기반 키 생성 장치는 하나 이상의 프로세서(1110); 및 상기 하나 이상의 프로세서(1110)에 의해 실행되는 적어도 하나 이상의 프로그램을 저장하는 실행메모리(1130)를 포함하고, 상기 적어도 하나 이상의 프로그램은 커밋 값을 생성하고, 상기 커밋 값을 외부 저장소에 업로드하고, 기정의된 신경망 학습 알고리즘을 이용하여 사용자 인증을 수행하기 위한 타 키 생성 장치와 상호 간의 가중치 값을 일치시키기 위해 신경망 학습을 수행하고, 상기 타 키 생성 장치와 상호 간에 커밋 값을 공유하고, 상기 외부 저장소에 업로드된 커밋 값과 공유 받은 커밋 값을 비교하여 커밋 값의 검증을 수행하고, 상기 커밋 값의 검증이 성공인 경우, 상기 일치시킨 가중치 값을 이용하여 해시 값을 생성하고, 상호 간에 생성된 해시 값의 동일 여부를 검증하고, 상기 해시 값을 검증한 결과에 기반하여 세션 비밀 키를 생성한다.
이 때, 상기 적어도 하나 이상의 프로그램은 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 각각 메시지 인증 코드를 이용하여 상기 신경망 학습 과정에서 출력된 패러티 비트와 상기 커밋 값 생성에 사용된 비밀 값으로부터 MAC 값을 생성할 수 있다.
이 때, 상기 적어도 하나 이상의 프로그램은 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 각각 상호 간에 생성된 상기 MAC 값을 공유하고, 공유 받은 상기 MAC 값과, 자신이 생성한 검증용 MAC 값과 비교하여 상기 MAC 값을 검증할 수 있다.
이 때, 상기 적어도 하나 이상의 프로그램은 기정의된 일방향 함수를 이용하여 상기 가중치 값으로부터 시드 값을 생성할 수 있다.
이 때, 상기 적어도 하나 이상의 프로그램은 기정의된 해시 함수를 이용하여 상기 시드 값과 사전에 공유된 키 생성 정보로부터 해시 값을 생성할 수 있다.
이 때, 상기 적어도 하나 이상의 프로그램은 상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 각각 상호간에 생성된 해시 값을 공유하고, 공유 받은 해시 값과 자신이 생성한 해시 값을 비교하여 해시 값의 일치 여부를 검증할 수 있다.
이 때, 상기 적어도 하나 이상의 프로그램은 상기 해시 값이 일치 하면, 해시 값의 검증이 성공인 것으로 판단하고, 기정의된 키 생성 함수를 이용하여 상기 해시 값과 상기 키 생성 정보로부터 상기 세션 비밀 키를 생성할 수 있다.
이상에서와 같이 본 발명의 일실시예에 따른 기계학습 기반 키 생성 장치 및 방법은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
1100: 컴퓨터 시스템 1110: 프로세서
1120: 버스 1130: 메모리
1131: 롬 1132: 램
1140: 사용자 인터페이스 입력 장치
1150: 사용자 인터페이스 출력 장치
1160: 스토리지 1170: 네트워크 인터페이스
1180: 네트워크

Claims (14)

  1. 기계학습 기반 키 생성 장치들의 기계학습 기반 키 생성 방법에 있어서,
    제1 키 생성 장치가, 제1 커밋 값을 생성하고, 제2 키 생성 장치가, 제2 커밋 값을 생성하고, 상기 제1 커밋 값과 상기 제2 커밋 값을 외부 저장소에 업로드하는 단계;
    상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 기정의된 신경망 학습 알고리즘을 이용하여 상호 간의 가중치 값을 일치시키기 위해 신경망 학습을 수행하는 단계;
    상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 상호 간에 상기 제1 커밋 값와 상기 제2 커밋 값을 공유하고, 상기 외부 저장소에 업로드된 제1 커밋 값과 제2 커밋 값을 비교하여 커밋 값의 검증을 수행하는 단계; 및
    상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 상기 커밋 값의 검증이 성공인 경우, 상기 일치시킨 가중치 값을 이용하여 해시 값을 생성하고, 상호 간에 생성된 해시 값의 동일 여부를 검증하고, 상기 해시 값을 검증한 결과에 기반하여 세션 비밀 키를 생성하는 단계;
    를 포함하고,
    상기 검증을 수행하는 단계는
    상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 각각 메시지 인증 코드를 이용하여 상기 신경망 학습 과정에서 출력된 패러티 비트와 상기 커밋 값 생성에 사용된 비밀 값으로부터 MAC 값을 생성하는 것을 특징으로 하는 기계학습 기반 키 생성 방법.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 검증을 수행하는 단계는
    상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 각각 상호 간에 생성된 상기 MAC 값을 공유하고, 공유 받은 상기 MAC 값과, 자신이 생성한 검증용 MAC 값과 비교하여 상기 MAC 값을 검증하는 것을 특징으로 하는 기계학습 기반 키 생성 방법.
  4. 청구항 3에 있어서,
    상기 세션 비밀 키를 생성하는 단계는
    기정의된 일방향 함수를 이용하여 상기 가중치 값으로부터 시드 값을 생성하는 것을 특징으로 하는 기계학습 기반 키 생성 방법.
  5. 청구항 4에 있어서,
    상기 세션 비밀 키를 생성하는 단계는
    기정의된 해시 함수를 이용하여 상기 시드 값과 사전에 공유된 키 생성 정보로부터 해시 값을 생성하는 것을 특징으로 하는 기계학습 기반 키 생성 방법.
  6. 청구항 5에 있어서,
    상기 세션 비밀 키를 생성하는 단계는
    상기 제1 키 생성 장치와 상기 제2 키 생성 장치가, 각각 상호간에 생성된 해시 값을 공유하고, 공유 받은 해시 값과 자신이 생성한 해시 값을 비교하여 해시 값의 일치 여부를 검증하는 것을 특징으로 하는 기계학습 기반 키 생성 방법.
  7. 청구항 6에 있어서,
    상기 세션 비밀 키를 생성하는 단계는
    상기 해시 값이 일치 하면, 해시 값의 검증이 성공인 것으로 판단하고, 기정의된 키 생성 함수를 이용하여 상기 해시 값과 상기 키 생성 정보로부터 상기 세션 비밀 키를 생성하는 것을 특징으로 하는 기계학습 기반 키 생성 방법.
  8. 하나 이상의 프로세서; 및
    상기 하나 이상의 프로세서에 의해 실행되는 적어도 하나 이상의 프로그램을 저장하는 실행메모리를 포함하고,
    상기 적어도 하나 이상의 프로그램은
    커밋 값을 생성하고, 상기 커밋 값을 외부 저장소에 업로드하고,
    기정의된 신경망 학습 알고리즘을 이용하여 사용자 인증을 수행하기 위한 타 키 생성 장치와 상호 간의 가중치 값을 일치시키기 위해 신경망 학습을 수행하고,
    상기 타 키 생성 장치와 상호 간에 커밋 값을 공유하고, 상기 외부 저장소에 업로드된 커밋 값과 공유 받은 커밋 값을 비교하여 커밋 값의 검증을 수행하고,
    상기 커밋 값의 검증이 성공인 경우, 상기 일치시킨 가중치 값을 이용하여 해시 값을 생성하고, 상호 간에 생성된 해시 값의 동일 여부를 검증하고, 상기 해시 값을 검증한 결과에 기반하여 세션 비밀 키를 생성하고,
    상기 적어도 하나 이상의 프로그램은
    상기 타 키 생성 장치와, 각각 메시지 인증 코드를 이용하여 상기 신경망 학습 과정에서 출력된 패러티 비트와 상기 커밋 값 생성에 사용된 비밀 값으로부터 MAC 값을 생성하는 것을 특징으로 하는 기계학습 기반 키 생성 장치.
  9. 삭제
  10. 청구항 8에 있어서,
    상기 적어도 하나 이상의 프로그램은
    상기 타 키 생성 장치와, 각각 상호 간에 생성된 상기 MAC 값을 공유하고, 공유 받은 상기 MAC 값과, 자신이 생성한 검증용 MAC 값과 비교하여 상기 MAC 값을 검증하는 것을 특징으로 하는 기계학습 기반 키 생성 장치.
  11. 청구항 10에 있어서,
    상기 적어도 하나 이상의 프로그램은
    기정의된 일방향 함수를 이용하여 상기 가중치 값으로부터 시드 값을 생성하는 것을 특징으로 하는 기계학습 기반 키 생성 장치.
  12. 청구항 11에 있어서,
    상기 적어도 하나 이상의 프로그램은
    기정의된 해시 함수를 이용하여 상기 시드 값과 사전에 공유된 키 생성 정보로부터 해시 값을 생성하는 것을 특징으로 하는 기계학습 기반 키 생성 장치.
  13. 청구항 12에 있어서,
    상기 적어도 하나 이상의 프로그램은
    상기 타 키 생성 장치와, 각각 상호간에 생성된 해시 값을 공유하고, 공유 받은 해시 값과 자신이 생성한 해시 값을 비교하여 해시 값의 일치 여부를 검증하는 것을 특징으로 하는 기계학습 기반 키 생성 장치.
  14. 청구항 13에 있어서,
    상기 적어도 하나 이상의 프로그램은
    상기 해시 값이 일치 하면, 해시 값의 검증이 성공인 것으로 판단하고, 기정의된 키 생성 함수를 이용하여 상기 해시 값과 상기 키 생성 정보로부터 상기 세션 비밀 키를 생성하는 것을 특징으로 하는 기계학습 기반 키 생성 장치.
KR1020210032053A 2021-03-11 2021-03-11 기계 학습 기반 키 생성 장치 및 방법 KR102648499B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210032053A KR102648499B1 (ko) 2021-03-11 2021-03-11 기계 학습 기반 키 생성 장치 및 방법
US17/518,905 US12095908B2 (en) 2021-03-11 2021-11-04 Key generation apparatus and method based on machine learning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210032053A KR102648499B1 (ko) 2021-03-11 2021-03-11 기계 학습 기반 키 생성 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20220127587A KR20220127587A (ko) 2022-09-20
KR102648499B1 true KR102648499B1 (ko) 2024-03-19

Family

ID=83194286

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210032053A KR102648499B1 (ko) 2021-03-11 2021-03-11 기계 학습 기반 키 생성 장치 및 방법

Country Status (2)

Country Link
US (1) US12095908B2 (ko)
KR (1) KR102648499B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101075316B1 (ko) 2004-10-29 2011-10-19 톰슨 라이센싱 안전 인증 채널
KR102164904B1 (ko) 2019-01-15 2020-10-13 상명대학교산학협력단 세션 키를 생성하는 방법 및 그 전자장치
KR102186764B1 (ko) * 2019-01-31 2020-12-04 연세대학교 산학협력단 사이클 일관성 기반 옵티컬플로우 및 디스패리티 추정 장치 및 방법

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100050846A (ko) 2008-11-06 2010-05-14 삼성전자주식회사 키 교환 시스템 및 방법
KR101363290B1 (ko) 2012-08-30 2014-02-18 고려대학교 산학협력단 단말간 경량화된 인증된 키 공유방법
KR101744747B1 (ko) 2013-11-22 2017-06-09 한국전자통신연구원 휴대 단말기, 단말기 및 보안쿠키를 이용한 인증 방법
ES2619613T3 (es) 2014-06-12 2017-06-26 Nagravision S.A. Método criptográfico para intercambiar mensajes de forma segura y dispositivo y sistema para implementar este método
US9721190B2 (en) * 2014-12-19 2017-08-01 Google Inc. Large-scale classification in neural networks using hashing
KR102549272B1 (ko) 2016-05-17 2023-06-30 한국전자통신연구원 패스워드와 id 기반 서명을 이용한 인증 키 합의 방법 및 장치
KR102070248B1 (ko) 2018-02-12 2020-01-28 주식회사 한컴위드 개인키의 안전 보관을 지원하는 사용자 간편 인증 장치 및 그 동작 방법
US11126673B2 (en) * 2019-01-29 2021-09-21 Salesforce.Com, Inc. Method and system for automatically enriching collected seeds with information extracted from one or more websites
US11568062B2 (en) * 2019-10-10 2023-01-31 Baidu Usa Llc Methods to protect neural network models
LT6793B (lt) * 2020-05-18 2020-12-28 Timofey Mochalov Duomenų perdavimo apsaugos būdas naudojant dirbtinį neuroninį tinklą
US11582029B2 (en) * 2020-11-18 2023-02-14 Kabushiki Kaisha Toshiba Secret key generation for wireless channels

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101075316B1 (ko) 2004-10-29 2011-10-19 톰슨 라이센싱 안전 인증 채널
KR102164904B1 (ko) 2019-01-15 2020-10-13 상명대학교산학협력단 세션 키를 생성하는 방법 및 그 전자장치
KR102186764B1 (ko) * 2019-01-31 2020-12-04 연세대학교 산학협력단 사이클 일관성 기반 옵티컬플로우 및 디스패리티 추정 장치 및 방법

Also Published As

Publication number Publication date
US12095908B2 (en) 2024-09-17
KR20220127587A (ko) 2022-09-20
US20220294620A1 (en) 2022-09-15

Similar Documents

Publication Publication Date Title
Wazid et al. Design of secure key management and user authentication scheme for fog computing services
US9887976B2 (en) Multi-factor authentication using quantum communication
CN112425136B (zh) 采用多方计算(mpc)的物联网安全性
US8694778B2 (en) Enrollment of physically unclonable functions
Chatterjee et al. An Enhanced Access Control Scheme in Wireless Sensor Networks.
US11991274B2 (en) Authenticated lattice-based key agreement or key encapsulation
Zhang et al. Efficient and privacy-preserving blockchain-based multifactor device authentication protocol for cross-domain IIoT
US12047519B2 (en) Physical unclonable function based mutual authentication and key exchange
US10374802B2 (en) Multi-factor simple password exponential key exchange (SPEKE) authentication
US20200195446A1 (en) System and method for ensuring forward & backward secrecy using physically unclonable functions
Cui et al. Chaotic map-based authentication scheme using physical unclonable function for internet of autonomous vehicle
De Smet et al. Lightweight PUF based authentication scheme for fog architecture
Ali et al. Enhanced lightweight and secure certificateless authentication scheme (ELWSCAS) for internet of things environment
Long et al. Blockchain-Based Anonymous Authentication and Key Management for Internet of Things With Chebyshev Chaotic Maps
Priyadharshini et al. Efficient Key Management System Based Lightweight Devices in IoT.
Aghili et al. Pakit: Proactive authentication and key agreement protocol for internet of things
WO2018047132A1 (en) A system and method for authentication and secure communication
TWI853415B (zh) 安全金鑰產生
KR102648499B1 (ko) 기계 학습 기반 키 생성 장치 및 방법
Ghaemi et al. Novel blockchain-integrated quantum-resilient self-certified authentication protocol for cross-industry communications
Nair et al. A post-quantum secure PUF based cross-domain authentication mechanism for Internet of drones
Ambareen et al. Secured Wireless Sensor Network Protocol using Rabin-assisted Multifactor Authentication
Sharma et al. Enhancing Security in Wireless Sensor Networks: A Broadcast/Multicast Authentication Framework with Identity-Based Signature Schemes
Zhang Authenticated Key Exchange Protocols with Unbalanced Computational Requirements
Prajwal et al. Quantum-Safe Authentication Protocol leveraging qPUF for Industrial Internet of Things

Legal Events

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