KR20210131114A - 신경망 동기화에 기반한 비밀키 생성 방법 및 장치 - Google Patents

신경망 동기화에 기반한 비밀키 생성 방법 및 장치 Download PDF

Info

Publication number
KR20210131114A
KR20210131114A KR1020200049508A KR20200049508A KR20210131114A KR 20210131114 A KR20210131114 A KR 20210131114A KR 1020200049508 A KR1020200049508 A KR 1020200049508A KR 20200049508 A KR20200049508 A KR 20200049508A KR 20210131114 A KR20210131114 A KR 20210131114A
Authority
KR
South Korea
Prior art keywords
codeword
counterpart
generating
secret key
blocks
Prior art date
Application number
KR1020200049508A
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 KR1020200049508A priority Critical patent/KR20210131114A/ko
Priority to US17/239,237 priority patent/US11791997B2/en
Publication of KR20210131114A publication Critical patent/KR20210131114A/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/0872Generation of secret information including derivation or calculation of cryptographic keys or passwords using geo-location information, e.g. location data, time, relative position or proximity to other entities
    • 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
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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/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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • 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/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/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • 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/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic 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/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
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/34Encoding or coding, e.g. Huffman coding or error correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Storage Device Security (AREA)

Abstract

동기화된 신경망의 가중치에 대응하는 비트열을 바탕으로 코드워드를 생성하는 단계, 상대방 측에서 코드워드의 일부를 사용하여 재구성된 코드워드의 오류 정정이 수행된 후, 상대방으로부터 상기 오류 정정에 따른 복원 성공 정보를 수신하는 단계, 그리고 복원 성공 정보를 바탕으로 비밀키를 생성하는 단계를 통해 암호화 통신의 비밀키를 생성하는 방법 및 장치가 제공된다.

Description

신경망 동기화에 기반한 비밀키 생성 방법 및 장치{METHOD AND APPARATUS FOR GENERATING SECRET KEY BASED ON NEURAL NETWORK SYNCHRONIZATION}
본 기재는 동기화된 신경망을 사용하여 비밀키를 생성하는 장치 및 방법에 관한 것이다.
현대의 암호화 알고리즘은 키 교환 기술로서 RSA 문제 또는 디피-헬만(Diffie-Hellman) 문제와 같은 수학적 난제의 안정성에 기반하는 방식을 사용하고 있다. 하지만 양자 컴퓨터가 발전함에 따라 현대 암호화 체계의 안정성을 보장하는 수학적 난제가 해결될 것으로 예상되어서, 특정한 수학적 난제의 안정성에 더 이상 의존할 수 없게 되었다. 신경망 동기화에 기반하는 키 교환 기술은 양자 컴퓨터의 위협으로부터 자유로운, 새로운 암호화 기술로서 주목 받고 있다.
한 실시예는, 동기화된 신경망을 사용하여 비밀키를 생성하는 방법을 제공한다.
다른 실시예는 동기화된 신경망을 사용하여 비밀키를 생성하는 장치를 제공한다.
또 다른 실시예는 동기화된 신경망을 사용하여 비밀키를 생성하는 장치를 제공한다.
한 실시예에 따르면, 동기화된 신경망을 사용하여 암호화 통신의 비밀키를 생성하는 방법이 제공된다. 상기 비밀키 생성 방법은, 동기화된 신경망의 가중치에 대응하는 비트열을 바탕으로 코드워드를 생성하고, 코드워드의 일부를 상대방에게 전달하는 단계, 상대방으로부터 상대방의 부분 코드워드를 수신하고, 상대방의 부분 코드워드 및 코드워드를 바탕으로 코드워드를 재구성하는 단계, 재구성된 코드워드에 대해 오류 정정을 수행하고, 오류 정정에 따른 복원 성공 정보를 상대방에게 전달하는 단계, 그리고 상대방으로부터 상대방의 복원 성공 정보를 수신하고, 상대방의 복원 성공 정보를 바탕으로 비밀키를 생성하는 단계를 포함한다.
상기 비밀키 생성 방법에서 동기화된 신경망의 가중치에 대응하는 비트열을 바탕으로 코드워드를 생성하고, 코드워드의 일부를 상대방에게 전달하는 단계는, 비트열을 각각이 k비트 길이인 복수의 블록으로 분할하는 단계, 그리고 복수의 블록 각각에 대해 코드워드를 생성하는 단계를 포함할 수 있고, 복수의 블록의 개수는 2의 배수일 수 있다.
상기 비밀키 생성 방법에서 코드워드의 길이가 n일 때, 코드워드의 일부인 부분 코드워드의 길이는 n-k비트일 수 있다.
상기 비밀키 생성 방법에서 복수의 블록 각각에 대해 코드워드를 생성하는 단계는, 복수의 블록 중 처음 절반의 블록 각각에 대해 코드워드를 생성하는 단계를 포함할 수 있다.
상기 비밀키 생성 방법에서 상대방으로부터 상대방의 부분 코드워드를 수신하고, 상대방의 부분 코드워드 및 코드워드를 바탕으로 코드워드를 재구성하는 단계는, 가중치의 길이가 M비트이고 M이 2의 배수일 때, 상대방으로부터 n-k비트 길이의 M/2개의 부분 코드워드를 수신하는 단계를 포함할 수 있다.
상기 비밀키 생성 방법에서 상대방으로부터 상대방의 부분 코드워드를 수신하고, 상대방의 부분 코드워드 및 코드워드를 바탕으로 코드워드를 재구성하는 단계는, n-k비트 길이의 부분 코드워드와 k비트의 블록을 결합하여 코드워드를 재구성하는 단계를 더 포함할 수 있다.
상기 비밀키 생성 방법에서 상대방으로부터 상대방의 복원 성공 정보를 수신하고, 상대방의 복원 성공 정보를 바탕으로 비밀키를 생성하는 단계는, 복원 성공 정보를 바탕으로 복수의 블록 중 복원 실패인 블록을 식별하는 단계, 그리고 복수의 블록 중에서 복원 실패인 블록을 제외한 나머지 블록으로부터 비트 정보를 복원하는 단계를 포함할 수 있다.
상기 비밀키 생성 방법에서 상대방으로부터 상대방의 복원 성공 정보를 수신하고, 상대방의 복원 성공 정보를 바탕으로 비밀키를 생성하는 단계는, 복원된 비트 정보를 바탕으로 시드(seed)를 생성하고, 시드를 해시 함수에 입력함으로써 비밀키를 생성하는 단계를 포함할 수 있다.
다른 실시예에 따르면, 동기화된 신경망을 사용하여 암호화 통신의 비밀키를 생성하는 장치가 제공된다. 상기 비밀키 생성 장치는 프로세서, 메모리, 및 통신 장치를 포함하고, 프로세서는 메모리에 저장된 프로그램을 실행하여, 동기화된 신경망의 가중치에 대응하는 비트열을 바탕으로 코드워드를 생성하고, 통신 장치를 통해 코드워드의 일부를 상대방에게 전달하는 단계, 통신 장치를 통해 상대방으로부터 상대방의 부분 코드워드를 수신하고, 상대방의 부분 코드워드 및 코드워드를 바탕으로 코드워드를 재구성하는 단계, 재구성된 코드워드에 대해 오류 정정을 수행하고, 오류 정정에 따른 복원 성공 정보를 통신 장치를 통해 상대방에게 전달하는 단계, 그리고 통신 장치를 통해 상대방으로부터 상대방의 복원 성공 정보를 수신하고, 상대방의 복원 성공 정보를 바탕으로 비밀키를 생성하는 단계를 수행한다.
상기 비밀키 생성 장치에서 프로세서는 동기화된 신경망의 가중치에 대응하는 비트열을 바탕으로 코드워드를 생성하고, 통신 장치를 통해 코드워드의 일부를 상대방에게 전달하는 단계를 수행할 때, 비트열을 각각이 k비트 길이인 복수의 블록으로 분할하는 단계, 그리고 복수의 블록 각각에 대해 코드워드를 생성하는 단계를 수행할 수 있고, 복수의 블록의 개수는 2의 배수일 수 있다.
상기 비밀키 생성 장치에서 코드워드의 길이가 n일 때, 코드워드의 일부인 부분 코드워드의 길이는 n-k비트일 수 있다.
상기 비밀키 생성 장치에서 프로세서는 복수의 블록 각각에 대해 코드워드를 생성하는 단계를 수행할 때, 복수의 블록 중 처음 절반의 블록 각각에 대해 코드워드를 생성하는 단계를 수행할 수 있다.
상기 비밀키 생성 장치에서 프로세서는 통신 장치를 통해 상대방으로부터 상대방의 부분 코드워드를 수신하고, 상대방의 부분 코드워드 및 코드워드를 바탕으로 코드워드를 재구성하는 단계를 수행할 때, 가중치의 길이가 M비트이고 M이 2의 배수일 때, 상대방으로부터 n-k비트 길이의 M/2개의 부분 코드워드를 수신하는 단계를 수행할 수 있다.
상기 비밀키 생성 장치에서 프로세서는 통신 장치를 통해 상대방으로부터 상대방의 부분 코드워드를 수신하고, 상대방의 부분 코드워드 및 코드워드를 바탕으로 코드워드를 재구성하는 단계를 수행할 때, n-k비트 길이의 부분 코드워드와 k비트의 블록을 결합하여 코드워드를 재구성하는 단계를 더 수행할 수 있다.
상기 비밀키 생성 장치에서 프로세서는, 통신 장치를 통해 상대방으로부터 상대방의 복원 성공 정보를 수신하고, 상대방의 복원 성공 정보를 바탕으로 비밀키를 생성하는 단계를 수행할 때, 복원 성공 정보를 바탕으로 복수의 블록 중 복원 실패인 블록을 식별하는 단계, 그리고 복수의 블록 중에서 복원 실패인 블록을 제외한 나머지 블록으로부터 비트 정보를 복원하는 단계를 수행할 수 있다.
상기 비밀키 생성 장치에서 프로세서는, 통신 장치를 통해 상대방으로부터 상대방의 복원 성공 정보를 수신하고, 상대방의 복원 성공 정보를 바탕으로 비밀키를 생성하는 단계를 수행할 때, 복원된 비트 정보를 바탕으로 시드(seed)를 생성하고, 시드를 해시 함수에 입력함으로써 비밀키를 생성하는 단계를 더 수행할 수 있다.
또 다른 실시예에 따르면, 동기화된 신경망을 사용하여 암호화 통신의 비밀키를 생성하는 장치가 제공된다. 상기 비밀키 생성 장치는 프로세서, 메모리, 및 통신 장치를 포함하고, 프로세서는 메모리에 저장된 프로그램을 실행하여, 동기화된 신경망의 가중치에 대응하는 비트열을 바탕으로 코드워드를 생성하는 단계, 상대방 측에서 코드워드의 일부를 사용하여 재구성된 코드워드의 오류 정정이 수행된 후, 상대방으로부터 오류 정정에 따른 복원 성공 정보를 통신 장치를 통해 수신하는 단계, 그리고 복원 성공 정보를 바탕으로 비밀키를 생성하는 단계를 수행한다.
일정 수준의 오류를 포함하고 있는 동기화 정보로부터, 오류 정정 부호를 사용하여 효과적으로 안전하게, 오류 정보가 제거될 수 있으며, 이를 바탕으로 비밀키 생성에 참여한 송신단 및 수신단이 동일한 비밀키를 공유할 수 있다. 또한 키교환을 위한 신경망의 동기화 수준을 높이기 위해 요구되던 비효율성이 제거될 수 있다.
도 1은 한 실시예에 따른 신경망 동기화에 기반한 키 교환 방식의 TPM을 나타낸 개념도이다.
도 2는 한 실시예에 따른 신경망 동기화 프로세스 중 하나의 라운드의 진행 방법을 나타낸 개념도이다.
도 3은 동기화된 신경망을 사용하여 암호화 통신의 비밀키를 생성하는 방법을 나타낸 흐름도이다.
도 4는 다른 실시예에 따른 비밀키 생성 장치를 나타낸 블록도이다.
아래에서는 첨부한 도면을 참고로 하여 본 기재의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 기재는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 기재를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 명세서에서 단수로 기재된 표현은 "하나" 또는 "단일" 등의 명시적인 표현을 사용하지 않은 이상, 단수 또는 복수로 해석될 수 있다.
본 명세서에서 "및/또는"은 언급된 구성 요소들의 각각 및 하나 이상의 모든 조합을 포함한다.
본 명세서에서, 제1, 제2 등과 같이 서수를 포함하는 용어들은 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 개시의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
본 명세서에서 도면을 참고하여 설명한 흐름도에서, 동작 순서는 변경될 수 있고, 여러 동작들이 병합되거나, 어느 동작이 분할될 수 있고, 특정 동작은 수행되지 않을 수 있다.
도 1은 한 실시예에 따른 비밀키 생성을 위한 신경망의 TPM을 나타낸 개념도이고, 도 2는 한 실시예에 따른 신경망 동기화 프로세스 중 하나의 라운드의 진행 방법을 나타낸 개념도이다.
신경망 동기화에 기반하는 키 교환 기술에서, 송신단 및 수신단은 각각 동일한 구조를 갖는 신경망을 구성하고, 상호 학습 과정을 통해 각 신경망의 동기화를 달성하며, 동기화된 신경망을 사용하여 동일한 비밀키를 생성해낼 수 있다. 예를 들어, 송신단 및 수신단의 각 신경망은 n개(예를 들어, 3개)의 중간 유닛을 갖는 이계층 퍼셉트론 구조를 포함할 수 있고, 1비트의 출력 값을 갖는 트리 패리티 머신(tree parity machine, TPM)을 포함할 수 있다. 송신단 및 수신단은 각 신경망의 TPM의 리프 노드(leaf node)에 임의의 가중치(weight)를 설정하고 초기화할 수 있다. 여기서 각 리프 노드에 설정되는 가중치는 송신단 및 수신단 사이에 미리 공유된 정수 L에 의해 결정되는 범위 [-L, L] 이내에 포함된 임의의 정수일 수 있다. 송신단 및 수신단은 초기화 이후, 학습 단계(round)를 반복함으로써 두 신경망 간의 동기화를 달성할 수 있다. 각 학습 단계에서 공개된 동일한 입력 값이 송신단과 수신단에게 전달되고, 송신단 및 수신단은 전달된 입력 값과 가중치를 바탕으로 신경망의 TPM의 패리티(parity) 값을 결정할 수 있다. 송신단 및 수신단은 자신의 신경망의 패리티 값을 상대방에게 전송하고, 송신단 및 수신단은 자신의 신경망의 패리티 값과 상대방의 신경망의 패리티 값을 비교함으로써, TPM에 포함된 가중치에 대한 업데이트 여부를 결정할 수 있다. 여기서 가중치의 업데이트 방법은 학습 규칙(learning rule)이라고 하고, 현재 다양한 학습 규칙이 알려져 있다. 신경망 동기화를 위해 사용되는 학습 규칙에 따라서, 신경망 동기화의 효율성 및 안정성이 결정될 수 있다.
한 실시예에 따른 신경망 동기화 기반 비밀키 생성 방법에서, 송신단 및 수신단의 장치는 신경망 구성 단계, 신경망 동기화 단계, 및 비밀키 생성 단계를 통해 비밀키를 생성하고 교환할 수 있다. 비밀키 생성 단계는 동기화된 신경망을 사용하여 비밀키를 생성하는 단계이다. 한 실시예에 따른 신경망 동기화 기반 비밀키 생성 방법에서 송신단 및 수신단은 동등하다.
신경망 구성 단계에서 송신단 및 수신단은 각각 자신의 신경망을 구성할 수 있다. 신경망에 포함되는 TPM을 구성하기 위해 송신단 및/또는 수신단은 신경망 구성 파라미터를 결정하고 공유할 수 있다. 신경망 구성 파라미터는, 가중치의 범위에 관한 L, 중간 노드의 개수에 관한 h, 및 중간 노드에 연결되는 리프 노드의 개수에 관한 n을 포함할 수 있다. 예를 들어, L=40, h=3, n=1000 일 수 있다. 동일한 신경망 구성 파라미터를 바탕으로 구성된 신경망은 송신단 및 수신단에서 동일하다. 송신단 및 수신단은 TPM을 구성한 후, 자신의 TPM의 리프 노드에 임의의 가중치 값을 할당할 수 있다. 가중치 값의 범위는 -L≤가중치 값≤L 일 수 있다. TPM의 가중치 값은 가중치 값을 할당한 송신단 또는 수신단만 알고 있다.
동기화 단계에서, 송신단 및 수신단은 동기화의 종료를 위한 변수 T를 공유하고, 동기화의 진행을 위한 학습 규칙을 공유할 수 있다. 동기화는 복수의 라운드(round)의 반복을 통해 진행되고, 하나의 라운드마다 임의의 공개된 입력 값이 결정될 수 있다. 입력 값은 TPM의 리프 노드마다 결정되는 1비트의 정보이고, 입력 값과 TPM에 설정된 가중치 값 간의 연산을 통해 σ 및 τ가 결정될 수 있다.
도 1을 참조하면, 첫 번째 리프 노드의 값 σ1는, 수학식 1과 같이, 입력 x1,1, x1,2, x1,3 및 가중치 w1,1, w1,2, w1,3 각각의 곱의 합에 대한 시그넘 함수의 결과로 표현될 수 있다.
Figure pat00001
도 1에서 각 입력 xi는 1비트일 수 있다. 그리고 중간 노드의 값 τ는 각 리프 노드의 값의 곱으로 결정될 수 있다.
Figure pat00002
도 1에서 중간 노드에 연결된 리프 노드의 개수는 3개이다.
송신단 및 수신단은 계산된 τ값을 상대방에게 전달하고, 학습 규칙에 따라 각 TPM의 가중치 값을 증가시키거나 감소시킬 수 있다. 학습 규칙은 다음 수학식 3 내지 5가 참조된다.
Figure pat00003
Figure pat00004
Figure pat00005
수학식 3 내지 5에서 Θ(x) 함수는 x가 양수일 때 1을 출력하고 x가 음수일 때 0을 출력하는 함수이다. 즉, τAB일 때, σi=τ를 만족하는 중간 노드에 연결된 리프 노드의 가중치가 업데이트될 수 있다. 동기화가 진행되는 동안, 연속적으로 T회의 라운드 동안 τAB 발생하면 동기화가 종료되고, 송신단 및 수신단은 각 TPM에 저장된 가중치 값을 바탕으로 비밀키 생성 단계를 수행할 수 있다.
도 3은 동기화된 신경망을 사용하여 암호화 통신의 비밀키를 생성하는 방법을 나타낸 흐름도이다.
한 실시예에 따르면, 동기화된 양측 신경망의 가중치는 e% 미만의 오류를 포함하고, 여기서 e는 미리 설정된 변수이다. 예를 들어, 하나의 가중치가 10비트이고, 각 신경망에 1,000개의 가중치가 포함될 때, 동기화의 종료 시점에, 전체 가중치인 10,000비트의 정보 중에서 10,000×e/100개 미만의 정보에서 오류가 발생할 수 있다.
그리고 암호화 통신의 각 주체(즉, 송신단의 송신 장치 및 수신단의 수신 장치)는 오류 정정 코드(error correction code, ECC) ECC(n,k,t)를 미리 결정하고 공유할 수 있다. ECC(n,k,t)는 k비트의 초기 입력 정보를 바탕으로 n비트의 코드워드가 생성될 때, n비트의 코드워드 내에 t비트의 오류가 발생하더라도 k비트의 초기 입력 정보가 정확히 복원될 수 있음을 보장하는 오류 정정 코드이다. ECC(n,k,t)를 사용하는 송신 장치 및 수신 장치는 코드워드 내에 t비트를 초과하는 오류가 발생하면, 복원 성공 정보를 '복원 실패'로 결정할 수 있다.
도 3을 참조하면, 암호화 통신의 각 주체는 동기화된 신경망의 가중치에 대응하는 비트열을 바탕으로 코드워드를 생성한다(S110). 먼저, 송신 장치 및 수신 장치는 동기화된 신경망의 가중치의 비트열(M비트)을 블록으로 분할할 수 있다. 각 블록의 길이는 k비트이고, 블록의 개수는 2b개이다. M이 2의 배수가 아닐 때 송신 장치 및 수신 장치는 M이 2의 배수가 되도록 가중치의 비트열에 제로를 패딩할 수 있다(즉, 비트열에 0을 연속적으로 부가함). 그리고 송신 장치 또는 수신 장치 중 하나는 2b개의 블록 중 전반 b개(또는 M/2개)의 블록(1번 내지 b번 블록) 각각에 대해 n비트의 코드워드를 생성하고, 송신 장치 또는 수신 장치 중 다른 하나는 2b개의 블록 중 후반 b개의 블록(b+1번 내지 2b번 블록) 각각에 대해 n비트의 코드워드를 생성할 수 있다. ECC(n,k,t)가 사용되므로, k비트의 블록으로부터 생성되는 코드워드의 길이는 n비트이다(즉, 블록의 부호화율은 k/n이다). 예를 들어, 송신 장치가 1번 내지 b번 블록에 대해 코드워드를 생성하면, 수신 장치는 b+1번 내지 2b번 블록에 대해 코드워드를 생성할 수 있다. 예를 들어, 송신 장치 및 수신 장치에서 생성되는 코드워드는 아래 수학식 6과 같다.
Figure pat00006
송신 장치 및 수신 장치는 b개의 코드워드 각각의 일부를 상대방에게 전달한다(S120). 송신 장치 및 수신 장치에 의해 생성된 b개의 코드워드는 각각 n비트이고, 송신 장치 및 수신 장치는 n비트의 코드워드 중에서 초기 입력 정보에 해당하는 k비트를 제외한 나머지 n-k비트의 부분 코드워드를 상대방에게 전달할 수 있다. 예를 들어, 송신 장치는 1번 내지 b번 블록에 대응하는 b×(n-k)비트의 정보를 수신 장치에게 전달하고, 수신 장치는 b+1번 블록 내지 2b번 블록에 대응하는 b×(n-k)비트의 정보를 송신 장치에게 전달할 수 있다.
송신 장치 및 수신 장치는 상대방의 부분 코드워드와 자신의 코드워드를 바탕으로 코드워드를 재구성한다(S130). 예를 들어, 송신 장치는 b+1번 블록 내지 2b번 블록에 대해, 송신 장치의 가중치의 k비트의 블록과, 수신 장치로부터 전송된 n-k비트의 부분 코드워드를 결합하여 n비트의 코드워드를 재구성할 수 있다. 또한 수신 장치는 1번 블록 내지 b번 블록에 대해, 수신 장치의 가중치의 k비트의 블록과, 수신 장치로부터 전송된 n-k비트의 부분 코드워드를 바탕으로 n비트의 코드워드를 재구성할 수 있다.
송신 장치 및 수신 장치는 재구성된 코드워드에 대해 오류 정정을 수행하고, 초기 입력 정보의 복원 성공 정보를 상대방에게 전달한다(S140). 예를 들어, 송신 장치는 b+1번 블록 내지 2b번 블록의 재구성된 코드워드에 대해 오류 정정을 수행하고, 수신 장치는 1번 블록 내지 b번 블록의 재구성된 코드워드에 대해 오류 정정을 수행할 수 있다. 송신 장치 및 수신 장치에서 오류 정정은 아래 수학식 7과 같이 수행될 수 있다.
Figure pat00007
예를 들어, 오류 정정에 성공하여 초기 입력 정보가 복원되면, 복원 성공 정보는 1로 결정되고, 오류 정정에 실패하면 복원 성공 정보는 0으로 결정될 수 있다. 이후 송신 장치는 b+1번 블록 내지 2번 블록에 대응하는 b비트의 복원 성공 정보를 수신 장치에게 전달하고, 수신 장치는 1번 블록 내지 b번 블록에 대응하는 b비트의 복원 성공 정보를 송신 장치에게 전달할 수 있다.
마지막으로, 송신 장치 및 수신 장치는 상대방으로부터 전달된 복원 성공 정보를 바탕으로 비밀키를 생성할 수 있다(S150). 송신 장치 및 수신 장치는 상대방의 복원 성공 정보를 바탕으로 복원되지 않는 블록과 복원가능한 블록을 식별할 수 있다. 예를 들어, b가 10이고 수신 장치가 송신 장치에게 '1111011110'을 복원 성공 정보로서 전달했을 때, 송신 장치는 5번 블록 및 10번 블록의 복원 실패를 식별할 수 있다.
이후 송신 장치 및/또는 수신 장치는 2b개의 블록 중 복원 실패인 블록을 제외한 나머지 블록으로부터 비트 정보를 복원하고, 복원된 비트 정보를 사용하여 비밀키를 생성할 수 있다.
예를 들어, 송신 장치 및/또는 수신 장치는 2b개의 블록 중에서 복원 실패인 a개의 블록을 제외한 나머지 2b-a개의 블록으로부터 복원된 (2b-a)×k비트의 정보를 바탕으로 비밀키를 생성할 수 있다. 즉, 송신 장치 및 수신 장치는 상대방의 복원 성공 정보로부터 a개의 블록의 복원 실패를 식별하면, 나머지 2b-a개의 블록으로부터 (2b-a)×k비트의 정보를 복원하고, 복원된 (2b-a)×k비트의 정보를 바탕으로 비밀키를 생성할 수 있다. 송신 장치 및 수신 장치는 비밀키를 생성하기 위해 (2b-a)×k비트의 정보를 바탕으로 비밀키를 생성하기 위한 시드(seed)를 생성하고, H(seed)를 비밀키로서 생성할 수 있다. 여기서 H()는 암호학적인 해시 함수일 수 있다.
Figure pat00008
위에서 설명한 대로, 한 실시예에 따르면, 일정 수준의 오류를 포함하고 있는 동기화 정보로부터, 오류 정정 부호를 사용하여 효과적으로 안전하게, 오류 정보가 제거될 수 있으며, 이를 바탕으로 비밀키 생성에 참여한 송신단 및 수신단이 동일한 비밀키를 공유할 수 있다. 또한 키교환을 위한 신경망의 동기화 수준을 높이기 위해 요구되던 비효율성이 제거될 수 있다.
도 4는 다른 실시예에 따른 비밀키 생성 장치를 나타낸 블록도이다.
한 실시예에 따른 비밀키 생성 장치는, 컴퓨터 시스템, 예를 들어 컴퓨터 판독 가능 매체로 구현될 수 있다. 도 4를 참조하면, 컴퓨터 시스템(400)은, 버스(470)를 통해 통신하는 프로세서(410), 메모리(430), 입력 인터페이스 장치(450), 출력 인터페이스 장치(460), 및 저장 장치(440) 중 적어도 하나를 포함할 수 있다. 컴퓨터 시스템(400)은 또한 네트워크에 결합된 통신 장치(420)를 포함할 수 있다. 프로세서(410)는 중앙 처리 장치(central processing unit, CPU)이거나, 또는 메모리(430) 또는 저장 장치(440)에 저장된 명령 또는 프로그램을 실행하는 반도체 장치일 수 있다. 메모리(430) 및 저장 장치(440)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체를 포함할 수 있다. 예를 들어, 메모리는 ROM(read only memory) 및 RAM(random access memory)를 포함할 수 있다. 본 기재의 실시예에서 메모리는 프로세서의 내부 또는 외부에 위치할 수 있고, 메모리는 이미 알려진 다양한 수단을 통해 프로세서와 연결될 수 있다. 메모리는 다양한 형태의 휘발성 또는 비휘발성 저장 매체이며, 예를 들어, 메모리는 읽기 전용 메모리(read-only memory, ROM) 또는 랜덤 액세스 메모리(random access memory, RAM)를 포함할 수 있다.
따라서, 실시예는 컴퓨터에 구현된 방법으로서 구현되거나, 컴퓨터 실행 가능 명령이 저장된 비일시적 컴퓨터 판독 가능 매체로서 구현될 수 있다. 한 실시예에서, 프로세서에 의해 실행될 때, 컴퓨터 판독 가능 명령은 본 기재의 적어도 하나의 양상에 따른 방법을 수행할 수 있다.
통신 장치(420)는 유선 신호 또는 무선 신호를 송신 또는 수신할 수 있다.
한편, 실시예는 지금까지 설명한 장치 및/또는 방법을 통해서만 구현되는 것은 아니며, 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 상술한 실시예의 기재로부터 본 발명이 속하는 기술 분야의 통상의 기술자라면 쉽게 구현할 수 있는 것이다. 구체적으로, 실시예에 따른 방법(예, 네트워크 관리 방법, 데이터 전송 방법, 전송 스케줄 생성 방법 등)은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어, 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은, 실시예를 위해 특별히 설계되어 구성된 것이거나, 컴퓨터 소프트웨어 분야의 통상의 기술자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체는 프로그램 명령을 저장하고 수행하도록 구성된 하드웨어 장치를 포함할 수 있다. 예를 들어, 컴퓨터 판독 가능 기록 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 롬(ROM), 램(RAM), 플래시 메모리 등일 수 있다. 프로그램 명령은 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라, 인터프리터 등을 통해 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 실시예에 대하여 상세하게 설명하였지만 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 권리범위에 속하는 것이다.

Claims (17)

  1. 동기화된 신경망을 사용하여 암호화 통신의 비밀키를 생성하는 방법으로서,
    동기화된 신경망의 가중치에 대응하는 비트열을 바탕으로 코드워드를 생성하고, 상기 코드워드의 일부를 상대방에게 전달하는 단계,
    상기 상대방으로부터 상기 상대방의 부분 코드워드를 수신하고, 상기 상대방의 부분 코드워드 및 상기 코드워드를 바탕으로 코드워드를 재구성하는 단계,
    재구성된 코드워드에 대해 오류 정정을 수행하고, 상기 오류 정정에 따른 복원 성공 정보를 상기 상대방에게 전달하는 단계, 그리고
    상기 상대방으로부터 상기 상대방의 복원 성공 정보를 수신하고, 상기 상대방의 복원 성공 정보를 바탕으로 상기 비밀키를 생성하는 단계
    를 포함하는 비밀키 생성 방법.
  2. 제1항에서,
    상기 동기화된 신경망의 가중치에 대응하는 비트열을 바탕으로 코드워드를 생성하고, 상기 코드워드의 일부를 상대방에게 전달하는 단계는,
    상기 비트열을 각각이 k비트 길이인 복수의 블록으로 분할하는 단계, 그리고
    상기 복수의 블록 각각에 대해 상기 코드워드를 생성하는 단계
    를 포함하고, 상기 복수의 블록의 개수는 2의 배수인, 비밀키 생성 방법.
  3. 제2항에서,
    상기 코드워드의 길이가 n일 때, 상기 코드워드의 일부인 부분 코드워드의 길이는 n-k비트인, 비밀키 생성 방법.
  4. 제2항에서,
    상기 복수의 블록 각각에 대해 상기 코드워드를 생성하는 단계는,
    상기 복수의 블록 중 처음 절반의 블록 각각에 대해 상기 코드워드를 생성하는 단계를 포함하는, 비밀키 생성 방법.
  5. 제3항에서,
    상기 상대방으로부터 상기 상대방의 부분 코드워드를 수신하고, 상기 상대방의 부분 코드워드 및 상기 코드워드를 바탕으로 코드워드를 재구성하는 단계는,
    상기 가중치의 길이가 M비트이고 상기 M이 2의 배수일 때, 상기 상대방으로부터 n-k비트 길이의 M/2개의 부분 코드워드를 수신하는 단계
    를 포함하는, 비밀키 생성 방법.
  6. 제5항에서,
    상기 상대방으로부터 상기 상대방의 부분 코드워드를 수신하고, 상기 상대방의 부분 코드워드 및 상기 코드워드를 바탕으로 코드워드를 재구성하는 단계는,
    상기 n-k비트 길이의 부분 코드워드와 상기 k비트의 블록을 결합하여 상기 코드워드를 재구성하는 단계
    를 더 포함하는, 비밀키 생성 방법.
  7. 제1항에서,
    상기 상대방으로부터 상기 상대방의 복원 성공 정보를 수신하고, 상기 상대방의 복원 성공 정보를 바탕으로 상기 비밀키를 생성하는 단계는,
    상기 복원 성공 정보를 바탕으로 상기 복수의 블록 중 복원 실패인 블록을 식별하는 단계, 그리고
    상기 복수의 블록 중에서 상기 복원 실패인 블록을 제외한 나머지 블록으로부터 비트 정보를 복원하는 단계
    를 포함하는, 비밀키 생성 방법.
  8. 제7항에서,
    상기 상대방으로부터 상기 상대방의 복원 성공 정보를 수신하고, 상기 상대방의 복원 성공 정보를 바탕으로 상기 비밀키를 생성하는 단계는,
    복원된 비트 정보를 바탕으로 시드(seed)를 생성하고, 상기 시드를 해시 함수에 입력함으로써 상기 비밀키를 생성하는 단계
    를 포함하는, 비밀키 생성 방법.
  9. 동기화된 신경망을 사용하여 암호화 통신의 비밀키를 생성하는 장치로서,
    프로세서, 메모리, 및 통신 장치를 포함하고, 상기 프로세서는 상기 메모리에 저장된 프로그램을 실행하여,
    동기화된 신경망의 가중치에 대응하는 비트열을 바탕으로 코드워드를 생성하고, 상기 통신 장치를 통해 상기 코드워드의 일부를 상대방에게 전달하는 단계,
    상기 통신 장치를 통해 상기 상대방으로부터 상기 상대방의 부분 코드워드를 수신하고, 상기 상대방의 부분 코드워드 및 상기 코드워드를 바탕으로 코드워드를 재구성하는 단계,
    재구성된 코드워드에 대해 오류 정정을 수행하고, 상기 오류 정정에 따른 복원 성공 정보를 상기 통신 장치를 통해 상기 상대방에게 전달하는 단계, 그리고
    상기 통신 장치를 통해 상기 상대방으로부터 상기 상대방의 복원 성공 정보를 수신하고, 상기 상대방의 복원 성공 정보를 바탕으로 상기 비밀키를 생성하는 단계
    를 수행하는, 비밀키 생성 장치.
  10. 제9항에서,
    상기 프로세서는 상기 동기화된 신경망의 가중치에 대응하는 비트열을 바탕으로 코드워드를 생성하고, 상기 통신 장치를 통해 상기 코드워드의 일부를 상대방에게 전달하는 단계를 수행할 때,
    상기 비트열을 각각이 k비트 길이인 복수의 블록으로 분할하는 단계, 그리고
    상기 복수의 블록 각각에 대해 상기 코드워드를 생성하는 단계
    를 수행하고, 상기 복수의 블록의 개수는 2의 배수인, 비밀키 생성 장치.
  11. 제10항에서,
    상기 코드워드의 길이가 n일 때, 상기 코드워드의 일부인 부분 코드워드의 길이는 n-k비트인, 비밀키 생성 장치.
  12. 제10항에서,
    상기 프로세서는 상기 복수의 블록 각각에 대해 상기 코드워드를 생성하는 단계를 수행할 때,
    상기 복수의 블록 중 처음 절반의 블록 각각에 대해 상기 코드워드를 생성하는 단계를 수행하는, 비밀키 생성 장치.
  13. 제11항에서,
    상기 프로세서는 상기 통신 장치를 통해 상기 상대방으로부터 상기 상대방의 부분 코드워드를 수신하고, 상기 상대방의 부분 코드워드 및 상기 코드워드를 바탕으로 코드워드를 재구성하는 단계를 수행할 때,
    상기 가중치의 길이가 M비트이고 상기 M이 2의 배수일 때, 상기 상대방으로부터 n-k비트 길이의 M/2개의 부분 코드워드를 수신하는 단계
    를 수행하는, 비밀키 생성 장치.
  14. 제13항에서,
    상기 프로세서는 상기 통신 장치를 통해 상기 상대방으로부터 상기 상대방의 부분 코드워드를 수신하고, 상기 상대방의 부분 코드워드 및 상기 코드워드를 바탕으로 코드워드를 재구성하는 단계를 수행할 때,
    상기 n-k비트 길이의 부분 코드워드와 상기 k비트의 블록을 결합하여 상기 코드워드를 재구성하는 단계
    를 더 수행하는, 비밀키 생성 장치.
  15. 제9항에서,
    상기 프로세서는, 상기 통신 장치를 통해 상기 상대방으로부터 상기 상대방의 복원 성공 정보를 수신하고, 상기 상대방의 복원 성공 정보를 바탕으로 상기 비밀키를 생성하는 단계를 수행할 때,
    상기 복원 성공 정보를 바탕으로 상기 복수의 블록 중 복원 실패인 블록을 식별하는 단계, 그리고
    상기 복수의 블록 중에서 상기 복원 실패인 블록을 제외한 나머지 블록으로부터 비트 정보를 복원하는 단계
    를 수행하는, 비밀키 생성 장치.
  16. 제15항에서,
    상기 프로세서는, 상기 통신 장치를 통해 상기 상대방으로부터 상기 상대방의 복원 성공 정보를 수신하고, 상기 상대방의 복원 성공 정보를 바탕으로 상기 비밀키를 생성하는 단계를 수행할 때,
    복원된 비트 정보를 바탕으로 시드(seed)를 생성하고, 상기 시드를 해시 함수에 입력함으로써 상기 비밀키를 생성하는 단계
    를 더 수행하는, 비밀키 생성 장치.
  17. 동기화된 신경망을 사용하여 암호화 통신의 비밀키를 생성하는 장치로서,
    프로세서, 메모리, 및 통신 장치를 포함하고, 상기 프로세서는 상기 메모리에 저장된 프로그램을 실행하여,
    동기화된 신경망의 가중치에 대응하는 비트열을 바탕으로 코드워드를 생성하는 단계,
    상대방 측에서 상기 코드워드의 일부를 사용하여 재구성된 코드워드의 오류 정정이 수행된 후, 상기 상대방으로부터 상기 오류 정정에 따른 복원 성공 정보를 상기 통신 장치를 통해 수신하는 단계, 그리고
    상기 복원 성공 정보를 바탕으로 상기 비밀키를 생성하는 단계
    를 수행하는, 비밀키 생성 장치.
KR1020200049508A 2020-04-23 2020-04-23 신경망 동기화에 기반한 비밀키 생성 방법 및 장치 KR20210131114A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200049508A KR20210131114A (ko) 2020-04-23 2020-04-23 신경망 동기화에 기반한 비밀키 생성 방법 및 장치
US17/239,237 US11791997B2 (en) 2020-04-23 2021-04-23 Method and apparatus for generating secret key based on neural network synchronization

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200049508A KR20210131114A (ko) 2020-04-23 2020-04-23 신경망 동기화에 기반한 비밀키 생성 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20210131114A true KR20210131114A (ko) 2021-11-02

Family

ID=78223004

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200049508A KR20210131114A (ko) 2020-04-23 2020-04-23 신경망 동기화에 기반한 비밀키 생성 방법 및 장치

Country Status (2)

Country Link
US (1) US11791997B2 (ko)
KR (1) KR20210131114A (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11599773B2 (en) 2018-12-27 2023-03-07 Micron Technology, Inc. Neural networks and systems for decoding encoded data
US11424764B2 (en) 2019-11-13 2022-08-23 Micron Technology, Inc. Recurrent neural networks and systems for decoding encoded data
US11973513B2 (en) 2021-04-27 2024-04-30 Micron Technology, Inc. Decoders and systems for decoding encoded data using neural networks
US11563449B2 (en) * 2021-04-27 2023-01-24 Micron Technology, Inc. Systems for error reduction of encoded data using neural networks
US11755408B2 (en) 2021-10-07 2023-09-12 Micron Technology, Inc. Systems for estimating bit error rate (BER) of encoded data using neural networks

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL184399A0 (en) * 2007-07-03 2007-10-31 Yossi Tsuria Content delivery system
KR20140088437A (ko) 2013-01-02 2014-07-10 한국전자통신연구원 암호화 및 인증 기반 네트워크 관리방법 및 그 장치
DK2955871T3 (en) 2014-06-12 2017-05-01 Nagravision Sa Cryptographic method for securely exchanging messages and apparatus and system for performing this method
US11157901B2 (en) * 2016-07-18 2021-10-26 Dream Payments Corp. Systems and methods for initialization and activation of secure elements
KR102587254B1 (ko) 2016-10-31 2023-10-13 한국전자통신연구원 Cnn과 rnn을 이용한 얼굴인식 기반 키 생성 방법 및 장치
US11108627B2 (en) * 2016-12-30 2021-08-31 Intel Corporation Object identification for groups of IoT devices
US11210586B1 (en) * 2018-04-20 2021-12-28 Perceive Corporation Weight value decoder of neural network inference circuit
US11375404B2 (en) * 2018-07-16 2022-06-28 Revokind, Inc. Decentralized infrastructure methods and systems

Also Published As

Publication number Publication date
US11791997B2 (en) 2023-10-17
US20210336779A1 (en) 2021-10-28

Similar Documents

Publication Publication Date Title
KR20210131114A (ko) 신경망 동기화에 기반한 비밀키 생성 방법 및 장치
US9503257B2 (en) Quantum key distribution device, quantum key distribution system, and quantum key distribution method
RU2680350C2 (ru) Способ и система распределенного хранения восстанавливаемых данных с обеспечением целостности и конфиденциальности информации
JP5424008B2 (ja) 共有情報の管理方法およびシステム
CN112769558B (zh) 一种码率自适应的qkd后处理方法及系统
JP4346929B2 (ja) 量子鍵配送方法および通信装置
KR20150031245A (ko) 보안 통신
US10885814B2 (en) Share recovery system, share recovery apparatus, share recovery method, and program
Schlegel et al. CodedPaddedFL and CodedSecAgg: Straggler mitigation and secure aggregation in federated learning
JP6588048B2 (ja) 情報処理装置
CN112715016B (zh) 密钥封装协议
Yang et al. Efficient information reconciliation for energy-time entanglement quantum key distribution
WO2022110691A1 (zh) 编码方法、译码方法、电子设备及存储介质
EP3416332B1 (en) Quantum communication device, quantum communication system and quantum communication method
US20170288704A1 (en) Accelerated erasure coding for storage systems
US11128445B2 (en) Method for creating and distributing cryptographic keys
Chen Fundamental limits of Byzantine agreement
KR20200009974A (ko) 부호-암호 화폐 시스템
Ambainis et al. The minimum distance problem for two-way entanglement purification
WO2021106143A1 (ja) シャッフルシステム、シャッフル方法及びプログラム
Karamačoski et al. Blockchain for reliable and secure distributed communication channel
WO2021106133A1 (ja) シャッフルシステム、シャッフル方法及びプログラム
Sengupta et al. An efficient secure distributed cloud storage for append-only data
WO2024148464A1 (zh) 数据存储方法及相关设备
Das et al. A New Error Correction Technique in Quantum Cryptography using Artificial Neural Networks

Legal Events

Date Code Title Description
A201 Request for examination