KR102474901B1 - 양자 내성 암호화 알고리즘에 기초하여 생성된 인증 코드를 통해 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템 - Google Patents
양자 내성 암호화 알고리즘에 기초하여 생성된 인증 코드를 통해 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템 Download PDFInfo
- Publication number
- KR102474901B1 KR102474901B1 KR1020220110909A KR20220110909A KR102474901B1 KR 102474901 B1 KR102474901 B1 KR 102474901B1 KR 1020220110909 A KR1020220110909 A KR 1020220110909A KR 20220110909 A KR20220110909 A KR 20220110909A KR 102474901 B1 KR102474901 B1 KR 102474901B1
- Authority
- KR
- South Korea
- Prior art keywords
- key
- generating
- bluetooth network
- capsule
- message
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 24
- 239000002775 capsule Substances 0.000 claims abstract description 68
- 238000012795 verification Methods 0.000 claims abstract description 63
- 238000004891 communication Methods 0.000 claims abstract description 17
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 7
- 239000013598 vector Substances 0.000 claims description 28
- 239000011159 matrix material Substances 0.000 claims description 16
- 238000007789 sealing Methods 0.000 claims description 9
- 238000005070 sampling Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011017 operating method Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013498 data listing Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/043—Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
- H04W12/0431—Key distribution or pre-distribution; Key agreement
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/50—Secure pairing of devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/0822—Key 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 key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/0825—Key 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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/3242—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/03—Protecting confidentiality, e.g. by encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/041—Key generation or derivation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/043—Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
- H04W12/0433—Key management protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/047—Key management, e.g. using generic bootstrapping architecture [GBA] without using a trusted network node as an anchor
- H04W12/0471—Key exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
- H04W12/069—Authentication using certificates or pre-shared keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
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
본 발명의 기술적 사상은 양자 내성 암호화 알고리즘에 기초하여 생성된 인증 코드를 통해 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템에 관한 것이다. 본 개시의 일 실시예에 따른 슬레이브 장치와 블루투스 통신을 수행하기 위해 마스터 장치가 수행하는 블루투스 네트워크 형성 방법은 상기 블루투스 네트워크를 스캔함으로써 상기 슬레이브 장치의 어드레스를 획득하는 단계, 공개 키 및 비밀 키를 생성하는 단계, 상기 공개 키를 스캔한 슬레이브 장치에 전송하는 단계, 상기 공개 키에 대응하는 키 캡슐 및 인증 코드를 수신하는 단계, 상기 키 캡슐을 활용하여 검증 코드를 생성하는 단계, 상기 검증 코드 및 상기 인증 코드를 비교함으로써 대칭 키를 생성하는 단계, 상기 대칭 키를 활용하여 상기 블루투스 네트워크를 통한 통신을 수행하는 단계를 포함할 수 있다.
Description
본 발명은 양자 내성 암호화 알고리즘에 기초하여 블루투스 네트워크를 형성함으로써 데이터를 송수신하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템에 관한 것이다.
블루투스(Bluetooth)는 좁은 범위 내에서 휴대용 PC 또는 휴대폰을 비롯한 이동 가능한 장치들을 무선으로 연결하여 주는 기술 규격이다. 블루투스(Bluetooth)는 예를 들면 245MHZ의 ISM(Industrial Scientific Medical) 밴드의 무선 주파수를 이용하여 각종 디지털 장비들이 물리적인 케이블 없이 음성과 데이터를 송수신할 수 있도록 지원한다. 예컨대, 블루투스(Bluetooth) 통신용 모듈은 이동 통신 단말과 랩탑 컴퓨터 안에 내장되어 무선 통신이 가능하도록 지원한다. 이러한 편리성 때문에, 블루투스 (Bluetooth)는 스마트 폰, 데스크탑, FAX, 키보드, 또는 조이스틱은 물론 거의 모든 디지털 장비들에 사용되고 있다.
한편, 양자 컴퓨터의 발전으로 기존의 암호 체계에서 활용되던 암호화 알고리즘의 보안성이 약화되었고, 이에 따라서 양자 컴퓨터에 의해서도 보안성이 유지되는 암호화 알고리즘인 양자 내성 알고리즘(Post Quantum Crytography)의 필요성이 대두되었으며, 블루투스 네트워크 역시 양자 컴퓨터에 의해서도 보안성이 유지되는 양자 내성 알고리즘에 대한 적용이 필요해졌다.
본 발명의 목적은, 블루투스 네트워크를 형성하는 과정에서 양자 내성 암호화 알고리즘을 활용하여 생성된 인증 코드를 이용하여 슬레이브 장치에 대한 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템에 관한 것이다.
본 개시의 일 실시예에 따른 슬레이브 장치와 블루투스 통신을 수행하기 위해 마스터 장치가 수행하는 블루투스 네트워크 형성 방법은 상기 블루투스 네트워크를 스캔함으로써 상기 슬레이브 장치의 어드레스를 획득하는 단계, 공개 키 및 비밀 키를 생성하는 단계, 상기 공개 키를 스캔한 슬레이브 장치에 전송하는 단계, 상기 공개 키에 대응하는 키 캡슐 및 인증 코드를 수신하는 단계, 상기 키 캡슐을 활용하여 검증 코드를 생성하는 단계, 상기 검증 코드 및 상기 인증 코드를 비교함으로써 대칭 키를 생성하는 단계, 상기 대칭 키를 활용하여 상기 블루투스 네트워크를 통한 통신을 수행하는 단계를 포함할 수 있다.
일 실시예에서, 상기 키 캡슐은, 랜덤하게 생성된 키 메시지를 상기 공개 키를 이용해 봉인함으로써 생성되는 것을 특징으로 할 수 있다.
일 실시예에서, 상기 인증 코드는 제1 인증 메시지 및 제2 인증 메시지에 대한 해쉬를 통해 생성되고, 상기 제1 인증 메시지는 상기 블루투스 네트워크에 의해 교환된 키 코드를 활용하여 생성되고, 상기 제2 인증 메시지는 상기 키 캡슐, 상기 슬레이브 장치의 어드레스 및 상기 마스터 장치의 어드레스를 활용하여 생성되는 것을 특징으로 할 수 있다.
일 실시예에서, 상기 검증 코드를 생성하는 단계는, 상기 블루투스 네트워크에 의해 교환된 키 코드를 활용하여 제1 검증 메시지를 생성하는 단계, 상기 키 캡슐, 상기 슬레이브 장치의 어드레스 및 상기 마스터 장치의 어드레스를 활용하여 제2 검증 메시지를 생성하는 단계 및 상기 제1 검증 메시지 및 상기 제2 검증 메시지에 대한 해쉬를 통해 상기 검증 코드를 생성하는 단계를 포함할 수 있다.
일 실시예에서, 상기 대칭 키를 생성하는 단계는, 상기 검증 코드와 상기 인증 코드를 비교하는 단계, 상기 검증 코드와 상기 인증 코드가 동일한 경우, 상기 키 캡슐을 활용하여 상기 대칭 키를 생성하는 단계 및 상기 검증 코드와 상기 인증 코드가 동일하지 않은 경우 검증 실패로 블루투스 연결을 중단하는 단계를 포함할 수 있다.
일 실시예에서, 상기 키 캡슐을 활용하여 상기 대칭 키를 생성하는 단계는, 상기 비밀 키를 활용하여 상기 키 캡슐을 개봉함으로써 키 메시지를 추출하는 단계, 상기 키 메시지와 상기 공개 키에 대한 해쉬를 통해 프리 키를 생성하는 단계 및 상기 키 캡슐과 프리 키에 대한 해쉬를 통해 대칭 키를 생성하는 단계를 포함할 수 있다.
일 실시예에서, 상기 공개 키 및 비밀 키를 생성하는 단계는, 랜덤 다항식 링에 대응하는 키 행렬을 정의하는 단계, 격자에 대응하는 제1 키 벡터 및 상기 제1 키 벡터와 제1 거리를 갖는 제2 키 벡터를 샘플링하는 단계, 상기 키 행렬, 상기 제1 키 벡터 및 상기 제2 키 벡터를 활용하여 상기 공개 키 및 상기 비밀 키를 생성하는 단계를 포함할 수 있다.
본 개시의 일 실시예에 따른 마스터 장치와 블루투스 통신을 수행하기 위해 슬레이브 장치가 수행하는 블루투스 네트워크 형성 방법은 상기 마스터 장치로부터 상기 마스터 장치의 어드레스 및 공개 키를 수신하는 단계, 상기 공개 키를 활용하여 키 캡슐을 생성하는 단계, 상기 키 캡슐과 상기 블루투스 네트워크에 의해 교환된 키 코드를 활용하여 인증 코드를 생성하는 단계, 상기 키 캡슐을 활용하여 대칭 키를 생성하는 단계, 상기 대칭 키를 활용하여 상기 블루투스 네트워크를 통한 통신을 수행하는 단계를 포함할 수 있다.
일 실시예에서, 상기 키 캡슐을 생성하는 단계는, 난수 생성기를 활용하여 키 메시지를 생성하는 단계, 상기 공개 키를 활용하여 상기 키 메시지를 봉인함으로써 상기 키 캡슐을 생성하는 단계를 포함할 수 있다.
일 실시예에서, 상기 키 캡슐을 활용하여 대칭 키를 생성하는 단계는, 상기 키 메시지와 상기 공개 키에 대한 해쉬를 통해 프리 키를 생성하는 단계 및 상기 프리 키와 상기 키 캡슐을 해싱함으로써 상기 대칭 키로서 생성하는 단계를 포함할 수 있다.
일 실시예에서, 상기 인증 코드를 생성하는 단계는, 상기 블루투스 네트워크에 의해 교환된 키 코드를 활용하여 제1 인증 메시지를 생성하는 단계, 상기 키 캡슐, 상기 슬레이브 장치의 어드레스 및 상기 마스터 장치의 어드레스를 활용하여 제2 인증 메시지를 생성하는 단계 및 상기 제1 인증 메시지 및 상기 제2 인증 메시지에 대한 해쉬를 통해 상기 인증 코드를 생성하는 단계를 포함할 수 있다.
본 발명의 기술적 사상에 따르면, 블루투스 네트워크를 제공하기 위해 초기 세팅을 수행하는 과정에서 슬레이브 장치에 대한 인증을 수행할 때 양자 내성 암호화 알고리즘을 활용하여 생성한 인증 코드를 이용함으로써 높은 보안성을 갖출 수 있고, 이에 따라서 양자 컴퓨터에도 해킹되지 않는 안전한 블루투스 네트워크를 제공할 수 있다.
도 1은 본 개시의 예시적 실시예에 따른 블루투스 네트워크 운영 시스템을 나타내는 블록도이다.
도 2는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 운용 시스템의 동작방법을 나타내는 순서도이다.
도 3는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 형성 방법을 나타내는 순서도이다.
도 4는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 형성 방법을 나타내는 순서도이다.
도 5는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 형성 방법을 나타내는 순서도이다.
도 6는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 형성 방법을 나타내는 순서도이다.
도 7은 본 개시의 예시적 실시예에 따른 양자 내성 키 생성 방법을 나타내는 순서도이다.
도 8은 본 개시의 예시적 실시예에 따른 양자 내성 키 생성 방법을 나타내는 순서도이다.
도 9는 본 개시의 예시적 실시예에 따른 양자 내성 키 생성 방법을 나타내는 순서도이다.
도 10은 본 개시의 예시적 실시예에 따른 컴퓨팅 시스템을 나타내는 블록도이다.
도 2는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 운용 시스템의 동작방법을 나타내는 순서도이다.
도 3는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 형성 방법을 나타내는 순서도이다.
도 4는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 형성 방법을 나타내는 순서도이다.
도 5는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 형성 방법을 나타내는 순서도이다.
도 6는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 형성 방법을 나타내는 순서도이다.
도 7은 본 개시의 예시적 실시예에 따른 양자 내성 키 생성 방법을 나타내는 순서도이다.
도 8은 본 개시의 예시적 실시예에 따른 양자 내성 키 생성 방법을 나타내는 순서도이다.
도 9는 본 개시의 예시적 실시예에 따른 양자 내성 키 생성 방법을 나타내는 순서도이다.
도 10은 본 개시의 예시적 실시예에 따른 컴퓨팅 시스템을 나타내는 블록도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명의 기술적 사상은 이하의 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 발명의 기술적 사상을 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 기술적 사상은 청구항의 범주에 의해 정의될 뿐이다.
각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
본 발명에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
어느 하나의 실시예에 포함된 구성요소와, 공통적인 기능을 포함하는 구성 요소는, 다른 실시예에서 동일한 명칭을 사용하여 설명될 수 있다. 반대되는 기재가 없는 이상, 어느 하나의 실시예에 기재된 설명은 다른 실시예에도 적용될 수 있으며, 중복되는 범위 또는 당해 기술 분야에 속한 통상의 기술자가 자명하게 이해할 수 있는 범위 내에서 구체적인 설명은 생략될 수 있다.
이하, 본 발명의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.
이하, 본 발명의 바람직한 실시예 및 첨부한 도면을 참조하여 본 발명에 대해 상세히 설명한다.
도 1은 본 개시의 예시적 실시예에 따른 블루투스 네트워크 운영 시스템을 나타내는 블록도이다.
도 1을 참조하면, 블루투스 네트워크 운영 시스템(10)은 슬레이브 장치(100), 마스터 장치(200)를 포함할 수 있다. 일 실시예에서, 슬레이브 장치(100) 및 마스터 장치(200)는 블루투스 네트워크를 통해 서로 통신하고자 하는 장치 일 수 있고, 셀룰러 폰(Cellular Phone), 스마트 폰(Smart phone), 랩탑(Laptop), PC(Personal Computer), 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트 패드(Smartpad), 타블렛 PC(Tablet PC), 무선 이어폰, 무선 스피커, 키보드, 마우스 등 통신 가능한 각종 단말 장치를 포함할 수 있다.
마스터 장치(200)는 블루투스 네트워크 내에서 슬레이브 장치(100)를 연결함으로써 슬레이브 장치(100)와의 각종 통신을 수행할 수 있다. 일 예시에서, 마스터 장치(200)는 블루투스 네트워크를 통해 페어링된 슬레이브 장치(100)에 제어 신호를 전송하고, 슬레이브 장치(100)는 제어 신호에 기초하여 각종 동작을 수행할 수 있다. 또 다른 예시에서, 슬레이브 장치(100)는 블루투스 네트워크를 통해 페어링된 마스터 장치(200)에 슬레이브 장치(100)가 수집한 데이터를 전송할 수 있다.
일 실시예에서, 슬레이브 장치(100)는 마스터 장치(200)로부터 격자 기반으로 생성된 적어도 하나의 키를 수신할 수 있고, 키를 이용하여 슬레이브 장치(100)와 마스터 장치(200)가 블루투스 네트워크를 형성하기 위한 각종 동작을 수행할 수 있다.
일 실시예에서, 슬레이브 장치(100)는 마스터 장치(200)로부터 수신한 키를 활용하여 인증 코드를 생성할 수 있고, 마스터 장치(200)는 인증 코드를 활용하여 슬레이브 장치(100)에 대한 인증을 수행할 수 있다.
본 명세서에서 블루투스 네트워크 운용 시스템(10) 및 이에 포함된 구성의 동작은 각 구성에 포함된 저장 장치에 저장된 적어도 하나의 명령어를 포함하는 컴퓨터 프로그램에 기초하여, 각 구성에 포함된 프로세서가 수행하는 동작을 의미할 수 있고, 상기 저장 장치는 비휘발성 메모리, 휘발성 메모리, 플래시메모리(flash-memory), 하드디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD) 등을 포함할 수 있다. 또한, 상기 프로세서는 CPU(Central Processing Unit), GPU(Graphic Processing Unit), NPU(Neural Processing Unit), 램(RAM), 롬(ROM), 시스템 버스 및 애플리케이션 프로세서 중 적어도 하나를 포함할 수 있다.
도 2는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 운용 시스템의 동작방법을 나타내는 순서도이다.
도 2를 참조하면, 마스터 장치(200)는 블루투스 네트워크 내의 블루투스 장치를 스캔함으로써(T110) 슬레이브 장치(100)를 발견하고, 슬레이브 장치(100)에 대한 각종 정보를 수집할 수 있다. 일 예시에서, 마스터 장치(200)는 슬레이브 장치(100)의 어드레스(예를 들면, MAC Address), 슬레이브 장치(100)가 활용하는 블루투스 프로토콜의 키 코드를 수집할 수 있다.
마스터 장치(200)는 슬레이브 장치(100)와의 블루투스 네트워크 연결을 위해 공개 키 및 비밀 키를 생성할 수 있다(T120). 일 실시예에서 마스터 장치(200)는 격자 기반 알고리즘을 활용하여 공개 키 및 비밀 키를 생성할 수 있으며, 이에 관해서는 도 7 내지 도 9에서 상세하게 후술한다.
마스터 장치(200)는 생성된 공개 키를 슬레이브 장치(100)에 전송할 수 있다(T210). 슬레이브 장치(100)는 수신한 공개 키를 활용하여 키 캡슐 및 대칭 키를 생성할 수 있다(T220). 본 명세서에서 봉인은 공개 키를 활용하여 공개 키를 가진 주체만이 접근할 수 있는 데이터 통로를 생성함으로써 외부에 노출할 필요가 없는 정보들을 캡슐처럼 감싸서 은닉하는 동작을 말하며, 개봉은 공개 키 또는 공개 키에 대응하는 비밀 키를 활용하여 봉인된 정보들을 확인하는 동작을 말한다. 슬레이브 장치(100)는 랜덤한 값에 대응하는 키 메시지 등을 공개 키를 활용하여 봉인함으로써 키 캡슐을 생성할 수 있으며, 상세한 내용은 도 3에서 상세하게 후술한다.
슬레이브 장치(100)는 생성한 키 캡슐을 마스터 장치(200)에 전송할 수 있고(T230), 생성한 키 캡슐과 키 코드를 활용하여 인증 코드를 생성할 수 있다(T240). 또한, 슬레이브 장치(100)는 생성한 인증 코드를 마스터 장치(200)에 전송할 수 있다(T250). 일 실시예에서, 슬레이브 장치(100)는 블루투스 프로토콜에 대응하는 키 코드를 사전에 획득할 수 있고, 키 캡슐과 키 코드를 활용하여 인증 코드를 생성함으로써 인증 코드의 길이를 양자 컴퓨팅에도 해킹되지 않을 정도로 충분히 복잡한 암호를 생성할 수 있다. 슬레이브 장치가 인증 코드를 생성하는 과정에 대해서는 도 4에서 상세하게 후술한다.
마스터 장치(200)는 키 캡슐과 키 코드를 활용하여 검증 코드를 생성할 수 있다(T2560). 일 실시예에서, 마스터 장치(200)는 블루투스 프로토콜에 대응하는 키 코드를 사전에 획득할 수 있고, 인증 코드와 마찬가지 방법으로 키 캡슐과 키 코드를 활용하여 검증 코드를 생성함으로써 인증 코드를 정확하게 검증할 수 있다. 마스터 장치가 검증 코드를 생성하는 과정에 대해서는 도 6에서 상세하게 후술한다.
마스터 장치(200)는 인증 코드와 검증 코드를 비교함으로써 슬레이브 장치(100)를 검증하고, 대칭 키를 생성할 수 있다(T270). 마스터 장치(200)와 슬레이브 장치(100)는 키 교환이 완료된 후 대칭 키를 활용하여 블루투스 네트워크를 이용한 통신을 수행할 수 있다(T300).
본 개시의 기술적 사상에 따르면, 격자 기반으로 생성된 공개 키 및 비밀 키를 활용하여 키 교환을 수행함으로써 슬레이브 장치(100)와 마스터 장치(200) 사이에 키 교환 과정에서 공격자가 키 교환을 공격하더라도, 키에 대한 정보를 누출시키지 않을 수 있다.
또한, 본 개시의 기술적 사상에 따르면, 랜덤한 값에 대해 다시 봉인을 수행하여 이중으로 보안성이 증대된 키 캡슐을 송수신하여 대칭 키를 생성함으로써, 대칭 키 자체의 송수신 없이 키 캡슐의 송수신 만으로도 대칭 키에 대한 교환이 이루어질 수 있다. 그 결과 키 캡슐이 노출되더라도 대칭 키에 대한 정보가 노출되지 않고 키 교환이 마무리됨에 따라서 보안성이 증대될 수 있다.
또한, 본 개시의 기술적 사상에 따르면, 충분히 복잡성이 확보된 키 캡슐과 블루투스 네트워크에 대응하는 키 코드를 활용하여 인증 코드를 생성하고, 생성한 인증 코드를 통해 슬레이브 장치(100)를 검증함으로써 같은 키 코드를 공유하는 정당한 슬레이브 장치(100)인지 확인할 수 있고, 이에 따라서 블루투스 네트워크 통신의 보안성이 증대될 수 있다.
도 3은 본 개시의 예시적 실시예에 따른 블루투스 네트워크 형성 방법을 나타내는 순서도이다. 상세하게는, 도 3은 도 2의 슬레이브 장치(100)의 키 캡슐 생성 단계(T220)을 나타낸다.
도 3을 참조하면, 슬레이브 장치(100)는 난수 생성기를 활용하여 키 메시지(m)를 생성할 수 있다(S221). 난수 발생기는 엔트로피에 근거하여 이론적으로 예측을 할 수 없는 무작위의 숫자나 심볼을 생성하는 장치를 의미하고, 사용되는 잡음원에 따라 비결정론적 난수발생기(non-deterministic random bit generator, NRBG)와 결정론적 난수발생기(deterministic random bit generator, DRBG)를 포함할 수 있다. 또한, 키 메시지(m)는 난수 생성기를 활용하여 생성된 복수의 비트들을 나열한 데이터로서 일 예시에서, 256bit로 생성될 수 있다.
슬레이브 장치(100)는 키 메시지(m)를 공개 키를 활용하여 봉인함으로써 키 캡슐(KC)을 생성할 수 있다(S222). 본 개시의 일 실시예에 따르면, 슬레이브 장치(100)는 랜덤한 값으로 생성된 키 메시지(m)를 다시 한번 공개 키를 활용하여 봉인함으로써, 생성된 키 캡슐(KC)의 보안성을 극대화할 수 있다.
슬레이브 장치(100)는 난수 발생기를 활용하여 생성한 키 메시지(m)와 공개 키에 대한 해쉬를 통해 프리 키(preK)를 생성할 수 있다(S223). 슬레이브 장치(100)는 프리 키(preK)와 키 캡슐(KC)을 다시 해싱함으로써 대칭 키를 생성할 수 있다(S224).
본 개시의 일 실시예에 따르면, 슬레이브 장치(100)는 마스터 장치(200)와 공유된 키 메시지(m), 공개 키를 활용하여 프리 키(preK)를 생성할 수 있고, 마스터 장치(200)와 공유된 키 캡슐(KC)과 프리 키(preK)를 활용하여 대칭 키인 키 해쉬 값(KH)을 생성함으로써, 마스터 장치(200)와 동일한 대칭 키를 생성하는 과정에서 양자 컴퓨팅을 활용한 공격자에게 키 캡슐(KC)을 노출하더라도 공격자에게 노출되지 않은 프리 키(preK)를 함께 활용하여 대칭 키를 생성하기 때문에 대칭 키가 공격자에게 노출되지 않을 수 있고, 키 교환의 안정성이 증대될 수 있다. 또한, 슬레이브 장치(100)는 256bit 이상의 키 메시지를 활용하여 대칭 키를 생성함으로써 양자 컴퓨팅에도 불구하고 보안성이 보장되는 안전한 대칭 키를 생성할 수 있다.
도 4는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 형성 방법을 나타내는 순서도이다. 상세하게는, 도 4는 도 2의 슬레이브 장치(100)의 인증 코드 생성 방법(T240)을 나타낸다.
도 4를 참조하면, 슬레이브 장치(100)는 블루투스 프로토콜에 의해 교환된 키 코드를 활용하여 제1 인증 메시지를 생성할 수 있다(T241). 일 실시예에서, 슬레이브 장치(100)는 마스터 장치(200)와의 스캐닝을 통해 블루투스 프로토콜에 대응하는 키 코드를 수신할 수 있고, 수신한 키 코드를 메시지 생성 함수(예를 들면, 해쉬 함수)에 대입함으로써 제1 인증 메시지를 생성할 수 있다. 일 예시에서, 제1 인증 메시지는 256bit 이상으로 생성될 수 있다.
슬레이브 장치(100)는 T220 단계에서 생성한 키 캡슐, 슬레이브 장치(100)의 어드레스(예를 들면, MAC Address), 마스터 장치(200)의 어드레스(예를 들면, MAC Address)를 활용하여 제2 인증 메시지를 생성할 수 있다(S242). 일 실시예에서, 슬레이브 장치(100)는 마스터 장치(200)와의 스캐닝을 통해 마스터 장치(200)의 어드레스를 수신하고, 키 캡슐, 슬레이브 장치(100)의 어드레스(예를 들면, MAC Address), 마스터 장치(200)의 어드레스(예를 들면, MAC Address)를 메시지 생성 함수에 대입함으로써 제2 인증 메시지를 생성할 수 있다. 일 예시에서, 제2 인증 메시지는 256bit 이상으로 생성될 수 있다.
슬레이브 장치(100)는 제1 인증 메시지 및 제2 인증 메시지에 대한 해쉬를 통해 인증 코드를 생성할 수 있다(S243).
본 개시의 일 실시예에 따르면, 슬레이브 장치(100)는 블루투스 프로토콜의 고유 값인 키 코드를 활용하여 인증 코드를 생성함으로써 마스터 장치(200)와 같은 블루투스 네트워크에 있음을 인증 코드를 이용하여 인증할 수 있다. 본 개시의 일 실시예에 따르면, 슬레이브 장치(100)는 양자 내성 알고리즘을 활용하여 생성된 키 캡슐을 활용하여 인증 코드를 생성함으로써 인증 코드에 대한 복잡성을 충분히 확보하여 양자 컴퓨팅에도 불구하고 보안성을 향상시킬 수 있다. 본 개시의 일 실시예에 따르면, 슬레이브 장치(100)는 슬레이브 장치(100)의 어드레스 및 마스터 장치(200)의 어드레스를 활용하여 인증 코드를 생성함으로써 블루투스 네트워크의 참여자를 인증 코드를 통해 인증할 수 있다.
도 5는 본 개시의 예시적 실시예에 따른 블루투스 네트워크 형성 방법을 나타내는 순서도이다. 상세하게는, 도 5는 도 2의 마스터 장치(100)의 검증 코드 생성 단계(T250)을 나타낸다.
도 5를 참조하면, 마스터 장치(200)는 블루투스 프로토콜에 의해 교환된 키 코드를 활용하여 제1 검증 메시지를 생성할 수 있다(T251). 일 실시예에서, 마스터 장치(200)는 마스터 장치(200)의 블루투스 프로토콜에 대응하는 키 코드를 메시지 생성 함수(예를 들면, 해쉬 함수)에 대입함으로써 제1 검증 메시지를 생성할 수 있다. 일 예시에서, 제1 인증 메시지는 256bit 이상으로 생성될 수 있다.
마스터 장치(200)는 T230 단계에서 슬레이브 장치(100)로부터 수신한 키 캡슐, 슬레이브 장치(100)의 어드레스(예를 들면, MAC Address), 마스터 장치(200)의 어드레스(예를 들면, MAC Address)를 활용하여 제2 검증 메시지를 생성할 수 있다(S242). 일 실시예에서, 마스터 장치(200)는 슬레이브 장치(100)와의 스캐닝을 통해 슬레이브 장치(100)의 어드레스를 수신하고, 키 캡슐, 슬레이브 장치(100)의 어드레스(예를 들면, MAC Address), 마스터 장치(200)의 어드레스(예를 들면, MAC Address)를 메시지 생성 함수에 대입함으로써 제2 검증 메시지를 생성할 수 있다. 일 예시에서, 제2 검증 메시지는 256bit 이상으로 생성될 수 있다.
슬레이브 장치(100)는 제1 검증 메시지 및 제2 검증 메시지에 대한 해쉬를 통해 검증 코드를 생성할 수 있다(S243).
본 개시의 일 실시예에 따르면, 마스터 장치(200)는 블루투스 프로토콜의 고유 값인 키 코드, 키 캡슐, 슬레이브 장치(100)의 어드레스, 마스터 장치(200)의 어드레스를 활용하여 생성된 인증 코드를, 동일한 방법으로 생성된 검증 코드를 활용하여 검증함으로써 슬레이브 장치(100)에 대한 정확한 검증이 가능하다.
도 6은 본 개시의 예시적 실시예에 따른 블루투스 네트워크 형성 방법을 나타내는 순서도이다. 상세하게는, 도 6은 도 2의 마스터 장치(100)의 검증 및 대칭 키 획득 단계(T270)을 나타낸다.
도 6을 참조하면, 마스터 장치(200)는 생성한 검증 코드와 수신한 인증 코드를 비교함으로써 슬레이브 장치(100)를 인증할 수 있다(S271). 마스터 장치(200)는 검증 코드와 인증 코드가 동일한 경우(S272), 대칭 키를 생성할 수 있다(S273~S275). 공개 키와 키 캡슐에 대한 공격자의 공격이 이루어지지 않은 경우에만 검증 코드와 인증 코드가 동일할 수 있고, 검증 코드와 인증 코드이 동일하면 슬레이브 장치(100)가 가지고 있는 키 캡슐(KC)과 마스터 장치(200)가 가지고 있는 키 캡슐(KC)이 동일한 것이 보증될 수 있다.
대칭 키 생성 과정에서, 마스터 장치(200)는 비밀 키를 활용하여 키 캡슐(KC)을 개봉함으로써 키 메시지(m)를 추출할 수 있다(S273). 키 캡슐(KC)은 공개 키로 인해 봉인됐으므로, 공개 키에 대응되는 비밀 키를 이용하면 키 메시지(m)를 정상적으로 추출할 수 있다. 마스터 장치(200)는 도 3에서 상술한 슬레이브 장치(100)의 대칭 키 생성 방법과 동일하게 키 메시지(m)와 공개 키에 대한 해쉬를 통해 프리 키(preK)를 생성하고(S274), 키 캡슐(KC)과 프리 키(preK)에 대한 해쉬를 통해 대칭 키를 생성할 수 있다(S274).
또한, 마스터 장치(200)는 검증 코드와 인증 코드가 동일하지 않은 경우, 마스터 장치(200)는 검증 실패로 블루투스 연결을 종료할 수 있다(S276).
본 개시의 일 실시예에 따르면, 키 캡슐(KC)을 활용한 인증 코드와 검증 코드를 활용하여 슬레이브 장치(100)에 대한 검증을 수행함으로써 공격자로부터의 데이터 변형 공격을 사전에 감지할 수 있고, 블루투스 네트워크의 보안성이 증대될 수 있다.
본 개시의 일 실시예에 따르면, 슬레이브 장치(100)와 동일한 대칭 키를 생성하는 과정에서 양자 컴퓨팅을 활용한 공격자에게 키 캡슐(KC)을 노출하더라도 공격자에게 노출되지 않은 프리 키(preK)를 함께 활용하여 대칭 키를 생성하기 때문에 대칭 키가 공격자에게 노출되지 않을 수 있고, 키 교환의 안정성이 증대될 수 있다.
도 7은 본 개시의 예시적 실시예에 따른 양자 내성 키 생성 알고리즘을 나타내는 순서도이다. 상세하게는, 도 7은 도 2의 키 생성 방법(T100)을 상세하게 나타내는 도면이다.
도 7을 참조하면, 마스터 장치(200)은 랜덤 다항식 링에 대응하는 키 행렬을 정의할 수 있다(S110). 다항식 링은 실수, 복소수를 계수로 하고 미지수가 하나인 다항식에 대한 추상대수학적 관점에서 본 링을 말하며, 랜덤 다항식 링은 계수가 랜덤하게 결정된 다항식 링을 의미할 수 있다. 또한, 이에 대응하는 키 행렬은 랜덤 다항식 링의 계수를 행렬로 나타낸 것을 의미할 수 있다.
마스터 장치(200)은 격자 기반 알고리즘을 활용하여 제1 키 벡터 및 제2 키 벡터를 샘플링할 수 있다(S120). 격자 기반 알고리즘은 격자 문제(Lattice Problem)이라 불리는 격자 상의 수학적 난제들을 기반으로 한 암호 알고리즘을 의미하는 것으로서 격자 문제는 SVP(Shortest Vector Problem), SIVP(Shortest Independent Vectors Problem), CVP(Closest Vector Problem)을 포함한다. 격자 기반 알고리즘의 보안성은 상술한 격자 문제가 해결되기 어렵다는 점에 근거하고 있는데, 수백 차원의 격자에서 임의의 위치에서 가장 가까운 격자점을 찾기 어렵기 때문에, 해당 격자점에 키를 대응시킨다면 그 위치에 대응되는 비밀 키를 양자 컴퓨팅으로도 찾아낼 수 어렵기 때문에 양자 내성 알고리즘의 대안이 될 수 있다. 일 예시에서, 격자상의 임의의 위치를 공개 키에 대응시키고, 공개 키에 가까운 특정 위치를 비밀 키에 대응시킨다면, 비밀 키는 다차원 격자의 교차점에 숨겨질 수 있고, 비밀 키에 대한 최단 벡터(shortest vector)의 가능성 수는 무한하고, 양자 컴퓨터에 있어서 순열의 수와 가능성의 범위를 훑어보는 과정이 복잡한 성질 상 기존 컴퓨터에 비해 양자 컴퓨터의 이점을 활용할 수 없다. 즉, 암호 키는 공격자가 격자를 통해 자신의 길을 알고 있는 경우에만 결정할 수 있으며, 즉 공격자는 경로를 계산할 방법이 없기 때문에 비밀 키를 공격자가 계산해 내는 방법은 이론적으로 불가능하다고 할 수 있다. 일 실시예에서, 격자 기반 알고리즘을 활용하여 생성한 복수의 벡터들중 키 벡터들을 샘플링 하는 과정은 가우시안 분포 방법과 기각 샘플링 방법이 활용될 수 있다.
마스터 장치(200)은 생성한 키 행렬, 제1 키 벡터 및 제2 키 벡터를 활용하여 공개 키와 비밀 키를 생성할 수 있다(S130).
본 개시의 기술적 사상에 따르면, 블루투스 네트워크를 위한 키를 생성하기 위한 과정에서 격자 기반 알고리즘을 활용함으로써 양자 컴퓨팅에 의한 해킹 시도를 막을 수 있고, 이에 따라서 블루투스 네트워크의 보안성이 높아질 수 있다.
도 8은 본 개시의 예시적 실시예에 따른 양자 내성 키 생성 알고리즘을 나타내는 순서도이다. 상세하게는 도 8은 도 7의 키 행렬 정의 단계(S100)를 상세하게 나타내는 도면이다.
도 8를 참조하면, 마스터 장치(200)은 난수 발생기를 이용하여 키 난수를 생성할 수 있다(S111). 마스터 장치(200)은 키 난수를 해시 함수에 대입함으로써 시드를 생성하고(S112), 시드를 이용하여 랜덤 다항식 링을 생성할 수 있다(S113). 또한, 마스터 장치(200)은 랜덤 다항식 링에 대응하는 키 행렬을 정의할 수 있다(S114).
본 개시의 일 실시예에 따르면, 키 행렬을 정의할 때, 난수 발생기, 해시 함수, 랜덤 다항식 링을 활용함으로써 키 행렬에 대한 무작위성을 극대화 할 수 있고, 결과적으로 키의 무작위성이 극대화할 수 있다.
도 9는 본 개시의 예시적 실시예에 따른 양자 내성 키 생성 알고리즘을 나타내는 순서도이다. 상세하게는 도 9는 도 7의 공개 키 및 비밀 키 생성 단계(S300)를 상세하게 나타내는 도면이다.
도 9를 참조하면, 마스터 장치(200)은 키 행렬, 제1 키 벡터, 및 제2 키 벡터를 이용하여 키 벨류를 정의할 수 있다(S131). 일 예시에서, 키 행렬(A), 제1 키 벡터(v1), 제2 키 벡터(v2)에 대해서 키 벨류(k)는 아래 수학식 1과 같이 정의될 수 있다.
마스터 장치(200)은 키 행렬과 키 벨류를 공개 키로 생성하고(S132), 키 행렬, 키 벨류, 제1 키 벡터 및 제2 키 벡터를 비밀 키로 생성할 수 있다(S133). 일 예시에서, 공개 키(pk), 비밀 키(sk)는 아래 수학식 2와 같이 생성될 수 있다.
본 개시의 일 실시예에 따른 마스터 장치(200)은 격자 기반 알고리즘을 이용하여 정의된 키 벨류를 활용하여 공개 키와 비밀 키를 생성하고, 키 벡터를 비밀 키에 포함시킴으로써 공개 키의 보안성을 증대시키고, 비밀 키를 활용하여 데이터가 온전하게 복호화될 수 있다.
도 10은 본 개시의 예시적 실시예에 따른 컴퓨팅 시스템을 나타내는 블록도이다.
도 10을 참조하면, 컴퓨팅 시스템(1000)은 마스터 장치(200), 클라이언트(200) 및 서버(300) 중 어느 하나를 구성할 수 있고, 프로세서(1100), 메모리 장치(1200), 스토리지 장치(1300), 파워 서플라이(1400) 및 디스플레이 장치(1500)를 포함할 수 있다. 한편, 도 10에는 도시되지 않았지만, 컴퓨팅 시스템(1000)은 비디오 카드, 사운드 카드, 메모리 카드, USB 장치 등과 통신하거나, 또는 다른 전자 기기들과 통신할 수 있는 포트(port)들을 더 포함할 수 있다.
이와 같이, 컴퓨팅 시스템(1000)에 포함된 프로세서(1100), 메모리 장치(1200), 스토리지 장치(1300), 파워 서플라이(1400) 및 디스플레이 장치(1500)는, 본 발명의 기술적 사상에 의한 실시예들에 따른 마스터 장치(200), 클라이언트(200) 및 서버(300) 중 어느 하나를 구성하여 블루투스 네트워크 형성 방법을 수행할 수 있다. 구체적으로, 프로세서(1100)는 메모리 장치(1200), 스토리지 장치(1300), 파워 서플라이(1400) 및 디스플레이 장치(1500)를 제어함으로써 도 1 내지 도 9에서 상술한 블루투스 네트워크 운용 시스템(10)의 동작 방법을 수행할 수 있다.
프로세서(1100)는 특정 계산들 또는 태스크(task)들을 수행할 수 있다. 실시예에 따라, 프로세서(1100)는 마이크로프로세서(micro-processor), 중앙 처리 장치(Central Processing Unit; CPU)일 수 있다. 프로세서(1100)는 어드레스 버스(address bus), 제어 버스(control bus) 및 데이터 버스(data bus) 등과 같은 버스(1600)를 통하여 메모리 장치(1200), 스토리지 장치(1300) 및 디스플레이 장치(1500)와 통신을 수행할 수 있다. 실시예에 따라, 프로세서(1100)는 주변 구성요소 상호연결(Peripheral Component Interconnect; PCI) 버스와 같은 확장 버스에도 연결될 수 있다.
메모리 장치(1200)는 컴퓨팅 시스템(1000)의 동작에 필요한 데이터를 저장할 수 있다. 예를 들어, 메모리 장치(1200)는 디램(DRAM), 모바일 디램, 에스램(SRAM), 피램(PRAM), 에프램(FRAM), 알램(RRAM) 및/또는 엠램(MRAM)으로 구현될 수 있다. 스토리지 장치(1300)는 솔리드 스테이트 드라이브(solid state drive), 하드 디스크 드라이브(hard disk drive), 씨디롬(CD-ROM) 등을 포함할 수 있다. 스토리지 장치(1300)는 도 1 내지 도 9에서 상술한 블루투스 네트워크 형성 방법에 관한 프로그램, 응용 프로그램 데이터, 시스템 데이터, 운영 체제 데이터 등을 저장할 수 있다.
디스플레이 장치(1500)는 사용자에 대한 알림을 수행하는 출력 수단으로서 블루투스 네트워크 형성 방법에 대한 정보를 사용자 등에게 표시하여 알릴 수 있다. 전원 장치(1400)는 컴퓨팅 시스템(1000)의 동작에 필요한 동작 전압을 공급할 수 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 발명되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 발명의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 청구범위의 기술적 사상에 의해 정해져야 할 것이다.
Claims (11)
- 슬레이브 장치와 블루투스 통신을 수행하기 위해 마스터 장치가 수행하는 블루투스 네트워크 형성 방법에 있어서,
상기 블루투스 네트워크를 스캔함으로써 상기 슬레이브 장치의 어드레스를 획득하는 단계;
공개 키 및 비밀 키를 생성하는 단계;
상기 공개 키를 스캔한 슬레이브 장치에 전송하는 단계;
상기 공개 키에 대응하는 키 캡슐 및 인증 코드를 수신하는 단계;
상기 키 캡슐을 활용하여 검증 코드를 생성하는 단계;
상기 검증 코드 및 상기 인증 코드를 비교함으로써 대칭 키를 생성하는 단계;
상기 대칭 키를 활용하여 상기 블루투스 네트워크를 통한 통신을 수행하는 단계;를 포함하고,
상기 인증 코드는 제1 인증 메시지 및 제2 인증 메시지에 대한 해쉬를 통해 생성되고,
상기 제1 인증 메시지는 상기 블루투스 네트워크에 대응하는 프로토콜에 의해 교환된 키 코드를 활용하여 생성되고,
상기 제2 인증 메시지는 상기 키 캡슐, 상기 슬레이브 장치의 어드레스 및 상기 마스터 장치의 어드레스를 활용하여 생성되는 것을 특징으로 하고,
상기 대칭 키를 생성하는 단계는,
상기 검증 코드와 상기 인증 코드를 비교하는 단계;
상기 검증 코드와 상기 인증 코드가 동일한 경우, 상기 키 캡슐을 활용하여 상기 대칭 키를 생성하는 단계;및
상기 검증 코드와 상기 인증 코드가 동일하지 않은 경우 검증 실패로 블루투스 연결을 중단하는 단계;를 포함하고,
상기 키 캡슐을 활용하여 상기 대칭 키를 생성하는 단계는,
상기 비밀 키를 활용하여 상기 키 캡슐을 개봉함으로써 키 메시지를 추출하는 단계;
상기 키 메시지와 상기 공개 키에 대한 해쉬를 통해 프리 키를 생성하는 단계;및
상기 키 캡슐과 프리 키에 대한 해쉬를 통해 대칭 키를 생성하는 단계;를 포함하고,
상기 공개 키 및 비밀 키를 생성하는 단계는,
랜덤 다항식 링에 대응하는 키 행렬을 정의하는 단계;
격자 기반 알고리즘에 의해 생성된 제1 키 벡터 및 상기 제1 키 벡터와 제1 거리를 갖는 제2 키 벡터를 샘플링하는 단계;
상기 키 행렬, 상기 제1 키 벡터 및 상기 제2 키 벡터를 활용하여 상기 공개 키 및 상기 비밀 키를 생성하는 단계;를 포함하는 블루투스 네트워크 형성 방법.
- 제1 항에 있어서,
상기 키 캡슐은,
랜덤하게 생성된 키 메시지를 상기 공개 키를 이용해 봉인함으로써 생성되는 것을 특징으로 하는 블루투스 네트워크 형성 방법.
- 삭제
- 제1 항에 있어서,
상기 검증 코드를 생성하는 단계는,
상기 블루투스 네트워크에 대응하는 프로토콜에 의해 교환된 키 코드를 활용하여 제1 검증 메시지를 생성하는 단계;
상기 키 캡슐, 상기 슬레이브 장치의 어드레스 및 상기 마스터 장치의 어드레스를 활용하여 제2 검증 메시지를 생성하는 단계;및
상기 제1 검증 메시지 및 상기 제2 검증 메시지에 대한 해쉬를 통해 상기 검증 코드를 생성하는 단계;를 포함하는 블루투스 네트워크 형성 방법.
- 삭제
- 삭제
- 삭제
- 마스터 장치와 블루투스 통신을 수행하기 위해 슬레이브 장치가 수행하는 블루투스 네트워크 형성 방법에 있어서,
상기 마스터 장치로부터 상기 마스터 장치의 어드레스 및 격자 기반 알고리즘에 의해 생성된 제1 키 벡터 및 상기 제1 키 벡터와 제1 거리를 갖는 제2 키 벡터를 활용하여 생성된 공개 키를 수신하는 단계;
상기 공개 키를 활용하여 키 캡슐을 생성하는 단계;
상기 키 캡슐과 상기 블루투스 네트워크에 대응하는 프로토콜에 의해 교환된 키 코드를 활용하여 인증 코드를 생성하는 단계;
상기 키 캡슐을 활용하여 대칭 키를 생성하는 단계;
상기 대칭 키를 활용하여 상기 블루투스 네트워크를 통한 통신을 수행하는 단계;를 포함하고,
상기 키 캡슐을 활용하여 대칭 키를 생성하는 단계는,
키 메시지와 상기 공개 키에 대한 해쉬를 통해 프리 키를 생성하는 단계;및
상기 프리 키와 상기 키 캡슐을 해싱함으로써 상기 대칭 키로서 생성하는 단계;를 포함하고,
상기 인증 코드를 생성하는 단계는,
상기 블루투스 네트워크에 대응하는 프로토콜에 의해 교환된 키 코드를 활용하여 제1 인증 메시지를 생성하는 단계;
상기 키 캡슐, 상기 슬레이브 장치의 어드레스 및 상기 마스터 장치의 어드레스를 활용하여 제2 인증 메시지를 생성하는 단계;및
상기 제1 인증 메시지 및 상기 제2 인증 메시지에 대한 해쉬를 통해 상기 인증 코드를 생성하는 단계;를 포함하는 블루투스 네트워크 형성 방법.
- 제8 항에 있어서,
상기 키 캡슐을 생성하는 단계는,
난수 생성기를 활용하여 상기 키 메시지를 생성하는 단계;
상기 공개 키를 활용하여 상기 키 메시지를 봉인함으로써 상기 키 캡슐을 생성하는 단계;를 포함하는 블루투스 네트워크 형성 방법.
- 삭제
- 삭제
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220110909A KR102474901B1 (ko) | 2022-09-01 | 2022-09-01 | 양자 내성 암호화 알고리즘에 기초하여 생성된 인증 코드를 통해 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템 |
KR1020220165806A KR20240031847A (ko) | 2022-09-01 | 2022-12-01 | 양자 내성 암호화 알고리즘에 기초하여 생성된 인증 코드를 통해 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템 |
US18/080,691 US11665540B1 (en) | 2022-09-01 | 2022-12-13 | Method for generating Bluetooth network authenticating through authentication code generated based on post-quantum cryptography and Bluetooth network operating system performing same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220110909A KR102474901B1 (ko) | 2022-09-01 | 2022-09-01 | 양자 내성 암호화 알고리즘에 기초하여 생성된 인증 코드를 통해 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220165806A Division KR20240031847A (ko) | 2022-09-01 | 2022-12-01 | 양자 내성 암호화 알고리즘에 기초하여 생성된 인증 코드를 통해 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102474901B1 true KR102474901B1 (ko) | 2022-12-06 |
Family
ID=84407308
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220110909A KR102474901B1 (ko) | 2022-09-01 | 2022-09-01 | 양자 내성 암호화 알고리즘에 기초하여 생성된 인증 코드를 통해 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템 |
KR1020220165806A KR20240031847A (ko) | 2022-09-01 | 2022-12-01 | 양자 내성 암호화 알고리즘에 기초하여 생성된 인증 코드를 통해 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220165806A KR20240031847A (ko) | 2022-09-01 | 2022-12-01 | 양자 내성 암호화 알고리즘에 기초하여 생성된 인증 코드를 통해 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11665540B1 (ko) |
KR (2) | KR102474901B1 (ko) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220038269A1 (en) * | 2020-07-29 | 2022-02-03 | John A. Nix | Device Securing Communications Using Two Post-Quantum Cryptography Key Encapsulation Mechanisms |
KR20220012851A (ko) * | 2019-05-30 | 2022-02-04 | 김봉만 | 대칭 키 암호화/교환을 위한 양자 내성 암호화 및 진보된 암호화 및 키 교환(aeke) 방법 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9374369B2 (en) * | 2012-12-28 | 2016-06-21 | Lookout, Inc. | Multi-factor authentication and comprehensive login system for client-server networks |
US20160012465A1 (en) * | 2014-02-08 | 2016-01-14 | Jeffrey A. Sharp | System and method for distributing, receiving, and using funds or credits and apparatus thereof |
KR20180041532A (ko) * | 2016-10-14 | 2018-04-24 | 삼성전자주식회사 | 전자 장치들 간 연결 방법 및 장치 |
CN110073356B (zh) * | 2016-12-06 | 2023-12-15 | E·马伊姆 | 使用安全装置的尤其是具有交易性质的方法和实体 |
WO2019097450A1 (fr) * | 2017-11-15 | 2019-05-23 | Enrico Maim | Terminaux et procédés pour transactions sécurisées |
US10535062B1 (en) * | 2019-03-20 | 2020-01-14 | Capital One Services, Llc | Using a contactless card to securely share personal data stored in a blockchain |
WO2020210990A1 (en) * | 2019-04-16 | 2020-10-22 | Huawei Technologies Co., Ltd. | System and method for authenticating a connection between a user device and a vehicle using bluetooth low energy technology |
US11751049B2 (en) * | 2019-05-01 | 2023-09-05 | John A. Nix | Distributed EAP-TLS authentication for wireless networks with concealed user identities |
KR20210052620A (ko) * | 2019-10-29 | 2021-05-11 | 삼성전자주식회사 | 근거리 무선 통신을 사용하는 사용자 장치, 인증 시스템 및 그것의 동작 방법 |
US11882223B2 (en) * | 2020-04-28 | 2024-01-23 | Qualcomm Incorporated | Methods of using certificate-based security with drone identity and broadcasting |
US11582607B2 (en) * | 2020-07-10 | 2023-02-14 | Western Digital Technologies, Inc. | Wireless security protocol |
US11496892B2 (en) * | 2021-01-22 | 2022-11-08 | Dell Products L.P. | Secure infrastructure onboarding system |
US20220237601A1 (en) * | 2021-01-27 | 2022-07-28 | Michael Thomas Duffy | WebAuthn+JSON DLT ˜the internet of value |
-
2022
- 2022-09-01 KR KR1020220110909A patent/KR102474901B1/ko active IP Right Grant
- 2022-12-01 KR KR1020220165806A patent/KR20240031847A/ko unknown
- 2022-12-13 US US18/080,691 patent/US11665540B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220012851A (ko) * | 2019-05-30 | 2022-02-04 | 김봉만 | 대칭 키 암호화/교환을 위한 양자 내성 암호화 및 진보된 암호화 및 키 교환(aeke) 방법 |
US20220038269A1 (en) * | 2020-07-29 | 2022-02-03 | John A. Nix | Device Securing Communications Using Two Post-Quantum Cryptography Key Encapsulation Mechanisms |
Non-Patent Citations (1)
Title |
---|
양유진 외5, 양자 내성 암호를 적용한 블루투스 모델 제안, 한국정보처리학회 추계학술대회논문, 2021.11.04 * |
Also Published As
Publication number | Publication date |
---|---|
KR20240031847A (ko) | 2024-03-08 |
US11665540B1 (en) | 2023-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110492990B (zh) | 区块链场景下的私钥管理方法、装置及系统 | |
US12041189B2 (en) | Method for storing and recovering key for blockchain-based system, and device therefor | |
US20240187249A1 (en) | Provisioning trusted execution environment based on chain of trust including platform | |
CN113691502B (zh) | 通信方法、装置、网关服务器、客户端及存储介质 | |
CN108769027B (zh) | 安全通信方法、装置、移动终端和存储介质 | |
US8095977B2 (en) | Secure PIN transmission | |
CN113821835B (zh) | 密钥管理方法、密钥管理装置和计算设备 | |
KR20210017083A (ko) | 퓨즈된 키에 기반하여 증명 인증서를 생성하는 전자 장치 및 방법 | |
US20240259217A1 (en) | Provisioning trusted execution environment(s) based on chain of trust including platform | |
CN111475832B (zh) | 一种数据管理的方法以及相关装置 | |
CN115336230B (zh) | 用于使用气隙系统硬件协议进行安全数据传输的系统和方法 | |
Prada-Delgado et al. | Physical unclonable keys for smart lock systems using Bluetooth Low Energy | |
CN113821821B (zh) | 安全架构系统、安全架构系统的密码运算方法和计算设备 | |
CN105678165A (zh) | 一种移动端的沙盒化键盘系统及其数据传输方法 | |
KR102474897B1 (ko) | 양자 내성 암호화 알고리즘에 기초한 봉인 키 교환을 통해 가상 사설 네트워크를 제공하는 가상 사설 네트워크 형성 방법 및 이를 수행하는 가상 사설 네트워크 운용 시스템 | |
CN109960935B (zh) | 确定tpm可信状态的方法、装置及存储介质 | |
CN113127844A (zh) | 一种变量访问方法、装置、系统、设备和介质 | |
KR102474901B1 (ko) | 양자 내성 암호화 알고리즘에 기초하여 생성된 인증 코드를 통해 인증을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템 | |
CN108154037B (zh) | 进程间的数据传输方法和装置 | |
KR102474902B1 (ko) | 어플리케이션 레벨에서 양자 내성 암호화 알고리즘에 기초한 통신을 수행하는 블루투스 네트워크 형성 방법 및 이를 수행하는 블루투스 네트워크 운용 시스템 | |
CN114896180A (zh) | 资讯安全集成电路模组 | |
KR102474899B1 (ko) | 양자 내성 암호화 알고리즘에 기초한 가상 사설 네트워크 형성 방법 및 이를 수행하는 가상 사설 네트워크 운용 시스템 | |
Sen et al. | Security-and privacy-aware computing in cloud with user mobility: an extensive review | |
KR102474891B1 (ko) | 양자 내성 암호화 알고리즘에 기초하여 생성한 키를 활용하여 가상 사설 네트워크를 제공하는 가상 사설 네트워크 형성 방법 및 이를 수행하는 가상 사설 네트워크 운용 시스템 | |
KR102474894B1 (ko) | 양자 내성 암호화 알고리즘에 기초한 서명과 인증을 수행함으로써 가상 사설 네트워크를 제공하는 가상 사설 네트워크 형성 방법 및 이를 수행하는 가상 사설 네트워크 운용 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
A107 | Divisional application of patent | ||
GRNT | Written decision to grant |